Abstract

Evolutionary design targets systems of continuously increasing complexity. Thus, indirect developmental mappings are often a necessity. Varying the amount of genotype information changes the cardinality of the mapping, which in turn affects the developmental process. An open question is how to find the genotype size and representation in which a developmental solution would fit. A restricted pool of genes may not be large enough to encode a solution or may need complex heuristics to find a realistic size. On the other hand, using the whole set of possible regulatory combinations may be intractable. In nature, the genomes of biological organisms are not fixed in size; they slowly evolve and acquire new genes by random gene duplications. Such incremental growth of genome information can be beneficial also in the artificial domain. For an evolutionary and developmental (evo-devo) system based on cellular automata, we investigate an incremental evolutionary growth of genomes without any a priori knowledge on the necessary genotype size. Evolution starts with simple solutions in a low-dimensional space and incrementally increases the genotype complexity by means of gene duplication, allowing the evolution of scalable genomes that are able to adapt genetic information content while compactness and efficiency are retained. The results are consistent when the target phenotypic complexity, the geometry size, and the number of cell states are scaled up.

1 Introduction

Evolutionary developmental biology (evo-devo) looks into the interplay between evolution, development, and embryonics. Evo-devo links together evolutionary processes (e.g., mutation and selection) and the processes leading from genotype to phenotype [18]. Artificial evolutionary and developmental systems share many principles with their natural counterparts (e.g., embryogenesis, self-organization, plasticity, genotype-to-phenotype mapping) and range from systems that aim to be true to biology [31] to computer models that borrow principles at a high abstraction level [24, 25, 27]. However, there are differences between the natural and artificial domains, such as the definition and choice of the right genotype encoding (e.g., size and number of genes) to represent a developing phenotype solution of increasing complexity. Scalability in nature is achieved by different mechanisms, such as the gene regulation machinery with regulatory site mutations [64] and self-organization. Self-organization is part of the emergence of life itself [14], the evolution of species and biological diversity [21], and the complex physicochemical self-organization of matter supporting biological development [3]. Development is a primary source of scalability. Self-organization on the developmental level includes scalability by core processes in multicellular organisms supporting formation of structure and function [23]. Self-organizing in a developmental setting also includes environmental factors influencing the formation of the organism, e.g., plasticity [62]. Another important aspect is the possibility to acquire new genes by random gene additions during evolution [42, 54]. In other words, the genome of biological organisms is not fixed in size; it has evolved in such a way that genes that potentially contribute to increased fitness (e.g., by interacting with other genes) are more likely to be kept and integrated in the genome; however, those that result in decreased fitness are less likely to be inherited by natural selection. In the artificial domain, evolutionary systems often rely on fixed genotypes for representation, size or encoding, and thus lack the necessary scalability to unleash their inherent complexity.

While the correlation between biological phenotype complexity and genotype size is rather irregular [17], the latter is still clearly an important evolutionary fact [42, 54]. In this article, we argue that incremental growth of genome size can be beneficial also for artificial systems, providing a strategy to avoid speculating on the proper genotype size beforehand by the system designer. Evolution can be initialized by very simple genomes, e.g., containing only a single gene. Evolution would then be allowed to clone genes and systematically elaborate based on the newly added degrees of freedom. Each genome addition would result in increased dimensionality of the search space, thus opening the possibility of finding new potential solutions. Evolution would search and optimize candidates in a simple search space and increase it when needed, therefore providing the necessary system scalability.

Natural development exploits compact representations of phenotypes by encoding regulatory information in genomes that, starting from a single cell (i.e., the zygote) will develop the desired organism through morphogenesis. For example, an organism like the human body, which consists of roughly 3.72 × 1013 cells, has a genome with an estimate of 22,000 to 25,000 genes [4]. An open question for artificial systems is how to find a genotype size and representation in which a potential solution would fit. One possibility is to use a one-to-one mapping between genotype and phenotype, i.e., direct encoding. Unfortunately, this does not scale well, especially considering the extremely large number of entities composing the phenotype. Another possibility is to fix the genome size a priori, thus reducing the available search space. The system designer would then make assumptions on the necessary genome pool or use heuristics to estimate it. In such a case, evolvability would be predetermined and constrained to the space available to encode solutions. For several artificial systems, such as cellular automata or neural networks, many solutions to the same problem may exist. Thus, it is not trivial to estimate the exact number of necessary genes. One may then decide to use a very large genotype to represent what is likely to be a large enough search space so that a possible solution may be available. Again scalability is an issue here. With a fixed genotype representation, the maximum evolvable complexity is fixed, and that does not comply well with open-ended evolution problems. Moreover, even if the defined genotype encoding allows possible solutions in the resulting search space, those may be not easily accessible if neutrality is not guaranteed by the chosen genotype-to-phenotype mapping. Neutrality makes it possible to have a many-to-one mapping, where neutral genome mutations have no observable phenotype effects. However, they allow moving in advantageous areas of the search space and reduce the chances of getting trapped in local optima, thus favoring diversity. Neutrality can be achieved by having redundant representations, at a price of less efficient encoding, where the additional genes do not increase the relevant information represented [45].

In the present work, an artificial cellular system based on cellular automata (CAs) is used as a test bed. This model may be placed within abstract computational models of development. Therefore, we do not aim at a truly biological model of development. Evo-devo in our model should be considered as the interplay between genotype and developing organism, and the developmental effects on evolution. CAs share many principles with natural biological systems, where the key element is a cell. The cell is an autonomous unit that serves as construct and constructor for the emerging organism. Every cell contains an evolved transition table that acts as a regulation mechanism and is in charge of controlling cellular actions, such as growth, differentiation, and apoptosis. Such a cellular model depends on autonomous cellular processes influencing the developmental path and the behavior and form of the resulting artificial organism. The dynamics of the developing organism can be traced down to the information and representation of the genome and gene regulation. What information must be present? And what size is required to encode the desired emergent organism? For the described developmental system we would like to be able to incrementally evolve and optimize the regulatory information, that is, the transition table, making it compact and effective. A better knowledge of what creates scalable solutions and scalable systems within the field of cellular evo-devo will be beneficial for the understanding of large and complex artificial cellular systems with indirect encodings.

The article is structured as follows: Section 2 provides background information, and Section 3 gives a motivation for this work. In Section 4 an abstract framework is proposed, and in Section 5 scalability issues are investigated. Section 6 presents the cellular developmental model, and Section 7 introduces the evolutionary growth of genomes. Section 8 describes the experimental setup, and Section 9 presents the experimental results. A discussion and future work is given in Section 10, and Section 11 concludes the article.

2 Background

To be able to restrict and address scalability issues, the principles of natural biological systems are reviewed from the perspective of achieving a framework for scalability in the artificial counterpart. We begin by reviewing how nature solves scalability problems by development and by making genomes incrementally more complex. Then we present how scalability is addressed for artificial developmental systems (with direct encodings, fixed-length encodings, and indirect encodings).

2.1 Scalability and Complexity in Biological Organisms

Biological organisms are the best example of scalability, ranging from simple unicellular organisms to multicellular organisms, where trillions of cells develop from a single cell that holds the complete genome, roughly 3 GB of information to encode the necessary base pairs for a fully sequenced human genome [61]. Obviously, the optimization of the genetic plan is the result of evolution by natural selection. The means of genome optimization are genetic operators such as mutation and crossover. Biological development is the first source of scalability in nature. It is regarded as a very complex process that converts the genome into a multicellular organism, the details of which are subject to past and ongoing biological research [6, 7, 21, 22, 63]. However, genomes of different species have different lengths. There is scientific evidence that all species have evolved and diverged from a common ancestor [53, 55], the last universal ancestor (LUA), which was most likely a unicellular organism that lived some 3.5 to 3.8 billion years ago [9, 16]. The mechanism of gene duplication [54] played an important role in genome expansion through evolution. This process allowed the addition of new genes to offspring genomes. In fact, some parental genes are not only copied but duplicated more than once. This leads to an offspring with larger genome than the parents, which allows genetic novelty and potential evolutionary innovation [42]. When a gene is duplicated, it creates a redundant gene with less selection pressure. This means that the duplicated gene can undergo mutations without having deleterious effects and eventually lead to a new functionality that produces a fitness increase. The natural and biological process of incremental genome growth and elaboration [35] is known as complexification. Complexification allows evolution to start with simple solutions and incrementally elaborate on them [13], as opposed to evolving elaborate solutions from the beginning [51]. In addition to reducing the search space, complexification with indirect encodings needs to discover important substructures only once [22, 63], even if they appear in the phenotype multiple times [50]. Reuse of genetic material is inherent in the underlying development that has already evolved. Thus, complexification through gene duplication is a plausible explanation of how efficient and robust genomes may have evolved incrementally [44]. The opportunities for mutation increase through gene duplication because duplication creates more points at which mutations can occur; in this way, developmental processes can be refined and allow more complex phenotypes to emerge. Gene duplication must not be considered alone, but in the bigger context of evo-devo and the evolution of development.

Martin [35] investigated the impact of gene duplication in the origin of vertebrates. He claimed that such a duplication process produced an increased genome complexity before the origin of fishes. Such duplication events happened at relatively high rates. Moreover, not only beneficial duplications become fixed in the genome, but also neutral duplications in respect to fitness. In some cases, also when the original gene faces negative mutations, the duplicated gene becomes fixed. Key factors for gene expansion by gene duplication and optimization are then mutation and fixation. Zhang [65] studied the process of acquisition of new functions in duplicated genes. He argued that gene duplication is an extremely important factor for evolution, providing new genetic material for evolution to exploit with mutation, drift, and selection, which leads to new gene functions or specialization of existing ones. In fact, in the three domains of life, viz., bacteria, archaea, and eukarya, there is strong evidence that large portions of genes appeared by gene duplication (data from sequenced genomes). As an example, around 38% of the Homo sapiens genome is the result of gene duplication [33], and around 1800 duplication events have taken place since humans diverged from chimpanzees roughly 6 million years ago. This produces evidence that such a mechanism contributes to plasticity and thus adaptation to changing environments and speciation, as well as the emergence of complex regulatory mechanisms in gene regulatory networks.

However, the same degree of scalability, complexity, and evolvability is not achieved in evolved artificial developmental systems, partly because of the complex genotype-to-phenotype mapping and relative encoding (direct encoding or fixed-length encoding), which leads to an extremely high dimensionality of the search space. With direct encodings this incremental approach is difficult to achieve, because each gene maps to a specific phenotypic functionality/structure and duplicating it would result in significant alterations of the phenotype [50]. In this article, we argue that in order to retain the advantages of biological complexification, it is necessary to exploit indirect encodings, where duplication would not have a disruptive effect. Newly added genes, once incorporated in the genome, would have time to be gradually modified without too severe consequences on development and eventually being optimized.

2.2 Scalability within Context

Scalability within the boundaries of cellular evolutionary and developmental systems (e.g., cellular automata) strongly relate to some definition of spaces. These spaces are interconnected, which makes the scalability aspect also interconnected.

  • • 

    State space: Each entity composing the system (e.g., cell or node) can hold a finite number of states. The state space is the set of all the possible combinations of states the system—a developing organism—can show. Allowing for more states would scale up not only the state space but also the genotype-to-phenotype mapping and their related spaces.

  • • 

    Rule space: Interactions of system components occur on a local basis among neighboring entities. The rule space is the set containing the permutations of the states of the entities in a neighborhood. Scaling the state space would affect the rule space exponentially. Allowing for more neighboring interactions (e.g., changing the neighborhood size) would scale up the rule space.

  • • 

    Search space: By this we mean the set of all possible genotypes that can be composed with the chosen encoding and discovered by evolutionary search. It is strongly affected by the state space and rule space. The search space, or genotype space, is a key factor for the success of evolutionary search and depends on the defined encoding, genotype size, and number of genes allowed (for a fixed genotype encoding).

  • • 

    Solution space: This is the set of all possible phenotypes. The solution space is different from the search space due to the genotype-to-phenotype mapping. It is strongly influenced by the available phenotypic resources, for example, the geometry in a cellular system or the topology in a neural network. Scaling up the phenotypic resources would increase the solution space exponentially.

This means that a system designer faces a challenge when deciding upon issues such as the right genotype encoding, size, and states, since a small change in one of the above-mentioned spaces has a cascade effect on the other spaces, which will be scaled accordingly. The cardinality of those spaces changes with the complexity of the problem.

2.3 Scalability in Evo-devo Systems

In the field of evolutionary computation, each problem is represented as a genotype, and a specific fitness function is designed to evaluate qualities of the wanted solutions. Evolutionary algorithms (EAs) often use a one-to-one genotype-to-phenotype mapping, which means that a candidate solution generated by the EA can be directly mapped to the medium the solution was designed for. Thus, each property and characteristic of the phenotype needs to be encoded in the genotype. Figure 1 presents a direct mapping where each phenotypic property (network connection) is represented by a gene in the genome. If the phenotype were allowed to have more connections, the genotype would become more complex and consequently enlarge the EA search space. Typical examples of EAs with direct mappings are evolved artificial neural networks for robot controllers [41]. Here the size of the network is predefined and thus the available number of genes (to represent connections among them and connection weights) is also predefined. The more complex the phenotype is, the more complex the genotype becomes.

Figure 1. 

Example of direct mapping between genotype and phenotype. Each connection between two nodes in the network is represented by a specific gene.

Figure 1. 

Example of direct mapping between genotype and phenotype. Each connection between two nodes in the network is represented by a specific gene.

Another possibility is to allow for a redundant genotype-phenotype mapping [47] where the cardinality of the genotype space is larger than the cardinality of the phenotype space—that is, a many-to-one mapping. Such a mapping allows neutral genotype mutations [48] that do not alter the phenotypic characteristics but enable moving through the search space more easily and reducing chances of getting trapped in local optima [49]. Redundant representations are less efficient encodings that rely on additional genes that do not encode relevant information [45]. In nature, ontogeny allows “shrinking” complex organisms into compact genomes.

EAs are very resource-demanding, and if one-to-one direct mapping (or redundant mapping) is used, they suffer from an inherent scalability problem. In general, a solution or an algorithm is said to be scalable if it is able to provide acceptable performances when the instance of the problem increases in size. Acceptable or tolerable performance may be characterized as non-exponential resource demand for a linear increase in the problem size. This is not the case for EAs, where an increase of the problem size does not reflect a proportional increase in the search space. One solution for the resource-demanding trait of EAs is to take inspiration from nature and somehow shrink the genotype, that is, use indirect mapping. This reduces the overall complexity of the genotype (and the search space magnitude) while adding more complexity to the genotype-to-phenotype mapping and the underlying development process. Thus the challenges are finding an efficient developmental mechanism and a suitable indirect representation that is able to exploit such a development process.

Even though developmental systems are widely used [10, 20, 36, 51, 58], the challenge of genotype representation scalability still exists. For several developmental systems it would not be feasible to fully specify all the possible regulatory combinations in the genotype; for example, complete regulatory information for Tufte's CA-based model [57] would require the specification of 545 transitions; Miller and Banzhaf's cellular developmental Cartesian genetic programming (CGP) model [36], a total of 7689 entries; and von Neumann's universal constructor [37], 295 combinations. For many systems, using fixed-length genotypes containing only a subset of all the possible regulatory combinations is a necessity. In cellular models the total possible number of regulatory combinations (i.e., the size of a fully specified transition table) is NK, where N is the number of possible states each cell can hold, and K is the neighborhood. Bidlo [5], for his instruction-based cellular model with four possible cell states and neighborhood of size 5, used a restricted transition function of only 10 entries; Tufte [56] had a model with 13 possible cell states and five neighbors where the available regulatory rule set was restricted to 64. Tufte and Thomassen [60] investigated scaling of genomes with fixed-length representation and allowed 4, 5, 6, and 32 regulation rules out of the possible number based on three cell types and five neighbors (13 cell types for genomes of size 32). In all such cases, the maximum representation was predefined and could not change during evolution. The available regulatory information (CA transition tables) was designed a priori by trial and error or by estimation and did not guarantee that a possible solution could be found at all or that the same solutions could be achieved with a smaller genotype representation. Nonetheless, the maximum complexity of the system was predetermined, in the sense that the reachable search space was shrunk by the chosen representation. If one wanted to scale up the system by allowing a larger neighborhood or more available cell states, the chosen genotypes might not have been large enough to represent a candidate solution, as the cardinality of the mapping would be changed.

An alternative that can scale both genotype and phenotype information is to allow for a variable-length genome. An example of variable-length general encoding that can be applied for indirect construction of phenotypes [46] is genetic programming [30]. If a mechanism of adding genes through gene duplication is allowed, it is possible to incrementally grow the genome size. This complexification strategy may help to solve the genotype representation scalability problem. Work has been done towards achieving genome size expansion, for example, [8, 19, 29, 34]. Federici and Downing [12] investigated neutral gene duplication in a cellular model with environmental chemicals. They studied genome scalability with direct encoding and embryonal stages, using a gene regulatory model based on recursive neural networks (RNNs). Stanley and Miikkulainen [52] introduced neuro-evolution of augmenting topologies (NEAT), a complexification method for the incremental evolution of neural network architectures. Their main goal was to evolve robot controllers with direct encodings through gene duplication. They argued that incremental evolution of complex neural network genomes relies on three main technical components: meaningful crossover by means of historical markings for gene alignment, innovation through speciation which enables optimization, and the ability to start from minimal genomes and allow incremental size increase. Taking inspiration from the presented research on complexification of developmental systems with direct encodings, we investigate the basic idea using indirect encodings [50]. An incremental evolution of genome representations may have the potential for exploration of developmental systems with an indirect genotype-to-phenotype mapping.

3 Framework for Incremental Evolution of Genome Representations

This section presents a possible framework for incremental evolution of genome representations for artificial cellular organisms with indirect encodings. Using indirect encodings is a necessity, since for highly complex systems (potentially at biological complexity levels), the search in the space of final solutions would be intractable [50].

Conventional genetic algorithms consist of few steps, which can be summarized as follows:

  • 1. 

    Initialize random population.

  • 2. 

    Compute fitness.

  • 3. 

    Perform proportionate selection.

  • 4. 

    Perform crossover and mutation.

  • 5. 

    Generate new population.

  • 6. 

    Jump to step 2 and repeat until the convergence criterion is satisfied.

For embryomorphic systems, the fitness evaluation cannot be performed directly on the individuals in the population, due to the indirect mapping between genotype and phenotype. Thus, each genotype is developed starting from a single cell, the zygote, to a multicellular organism (phenotype), which is subject to fitness evaluation. Altenberg [1] presented a theoretical method for selective genome growth where new degrees of freedom in the genome representation are added incrementally. When a new gene is incorporated into the existing genome, it not only produces immediate phenotypic effects, but carries with it new kinds of variants that can arise in the future. In Altenberg's methodology, the growth of genotype size is not accomplished through the generations by means of natural selection, but is brute-forced to produce an increase of fitness or else rejected. The gene addition is based on a repetitive structure that tries adding a gene until it successfully increases the fitness of the individual. In contrast, we argue that exaptation is a key component of evolution, where the phenotypic response to a genetic operator (e.g., mutation or gene addition) is not obvious and not necessarily instantaneous. It may need some generations before some genetic traits are expressed in the phenotype, and development may not be able yet to exploit it, but when such genetic information becomes optimized and integrated in the genome, it can finally produce larger phenotypic improvements than a single gene could do. Exaptation is the ability to let evolution shift the function of a genetic trait, which was previously evolved to serve another function, to provide a new function. We propose the following framework, which allows gene addition by gene duplication and exaptation promoted by natural selection.

3.1 Genome Growth Regulation Mechanisms

A conventional genetic algorithm is modified with the introduction of four regulation mechanisms to control genome growth:

  • 1. 

    There is an upper bound on the maximum number of genes that can be added, which coincides with the size of the maximum rule space for the considered neighborhood and possible cell states, namely, the maximum number of combinations that can be generated by permutation of all the neighborhood configurations with the available number of cell states.

  • 2. 

    There is a duplication rate that guarantees that a new gene is added with a certain probability to each individual in the population (duplication is not deterministic but stochastic).

  • 3. 

    Added genes are guaranteed time for optimization, before a new addition can occur. In other words, there is a counter with a threshold that specifies that growth can occur only after x generations without an increase in the overall best fitness in the population. This means that as soon as an increase in the fitness occurs, the counter resets, ensuring that duplication happens when there is no room for further genotype optimization.

  • 4. 

    There is an elitism mechanism. This is included to guarantee that genotypes with compact and effective genomes will be kept in the population no matter what. This enables speciation and survival of species with smaller genomes.

3.2 Gene Addition

Gene addition is a simple operation per se. If the four above-mentioned regulation properties hold for a given genotype (upper bound not reached; genotype selected for gene addition; no overall fitness increase during the last x generations; genotype not in elite), a gene addition occurs. As depicted in Figure 2, a genotype that consisted of n genes at a given generation acquires a new gene that is an exact copy of a randomly selected gene already present in the genome. The selected gene is copied and appended; the genotype consists now of n + 1 genes.

Figure 2. 

Genotype before and after gene addition. A random gene is cloned and appended.

Figure 2. 

Genotype before and after gene addition. A random gene is cloned and appended.

3.3 Crossover and Mutation

Since the population will consist of genotypes with different numbers of genes, crossover has to support the crossing of different-size genotypes. This is done by choosing a crossover point from the smaller genome. Then a swap is performed between the chosen genotypes. This is shown in Figure 3c. If the genotypes have equal size as in Figure 3a, single-point crossover is performed, which produces the result shown in Figure 3b.

Figure 3. 

Crossover scheme. Left: parents of equal size before crossover (a) and after crossover (b). Right: parents of different sizes (c).

Figure 3. 

Crossover scheme. Left: parents of equal size before crossover (a) and after crossover (b). Right: parents of different sizes (c).

Each gene in a genotype is represented within a bit string, and every bit has an equal chance of mutating, that is, bit flipping. Since the genotype is growing in size, the mutation rate is calculated for each genotype, keeping an equal mutation rate relative to the size of the genotype. The mutation rate is linearly adaptive, meaning it decreases with increased fitness on a genotype, ranging from 100% to 5% of the defined mutation probability. This gives fewer mutations for fit individuals (typically with larger genomes), which avoids large jumps in the fitness landscape and encourages location of fitness peaks.

3.4 Selection

In the process of selecting individuals either for offspring generation or for gene addition, a weighted selection is implemented, which consists of the sum of the three following weighting contributions:

  • 1. 

    The actual fitness of the phenotype, which is a standard objective measure of an individual's fitness.

  • 2. 

    The genotype exploitation parameter, which consists of the fraction of gene regulatory combinations actually triggered during phenotype development, that is, the ratio between used genes and total genes in the considered genotype. This promotes the emergence of effective and efficient genomes, by rewarding individuals that exploit a large number of the available genes.

  • 3. 

    The innovation parameter, which rewards genotypes with larger genomes. This is included to promote innovation by genome growth, and it is tightly coupled with the inherent regulation of active genes. This parameter is needed because gene duplication does not guarantee an immediate innovation and fitness increase, but is most likely to have a neutral or negative effect, thus being discarded too often. To calculate the parameter, for each individual we find the percentage of the population's collective genotype size that the individual's genotype size covers. Further, we scale this percentage to a selected ratio to achieve a suitable influence on the fitness. Elitism guarantees that fit individuals with smaller genomes will survive and genomes with newly added genes, but not yet optimized, will still be allowed to evolve.

3.5 Summary

The regulation mechanisms, crossover of different size genotypes, weighted selection, and gene addition are incorporated in the GA, as shown in the flow chart presented in Figure 4. The population is initialized with genotypes with a single gene; thus the available search space is minimal. This implicit process is omitted from the flow chart to improve readability. The first step is development of genotypes due to the nature of evo-devo with indirect encodings. Phenotype fitness is then evaluated in the second step, and if a solution is found, the algorithm ends. If the fitness condition is not satisfied, elitism is performed. Note that the fitness calculation includes the above-mentioned mechanisms and weightings, and, in particular, it checks if there has been a fitness improvement over the best fitness recorded so far. This is the criterion for resetting the counter that determines the theoretical minimum optimization time for each previously added gene and controls whether a stochastic gene addition may be performed. If it may, the “Add gene” block clones a random gene and resets the optimization counter. Then crossovers and mutations occur until the population is restored to the required size.

Figure 4. 

Flow chart of the proposed framework for incremental evolution of genome representations.

Figure 4. 

Flow chart of the proposed framework for incremental evolution of genome representations.

The gradual increase in search space provided by the presented framework could theoretically reduce the likelihood of evolution getting stuck in local optima, since when a new degree of freedom is added, the previous local optima are replaced by a new set of a higher dimension [15]. Such gradual evolution and exploration would allow a gradual increase in complexity, which is not limited by a fixed representation.

4 Motivation

The main motivation behind this work is not achieving a speed-up in evolutionary search. Rather, we propose a framework for cellular evo-devo systems with indirect encodings that is scalable and independent from the chosen fitness metric. We investigate if it is possible to find solutions without any specification on the genotype size and let evolution find the necessary representation and genome length for the target solution. Our work is designed to obtain compact and effective genotypes for: (a) systems where it would not be possible to estimate a priori the necessary genome length to contain a candidate solution; (b) systems where it would not be possible to specify all the regulatory combinations. This may provide the necessary system scalability, leading to increasingly complex solutions. To test the hypothesis, we propose a cellular developmental model based on cellular automata. Artificial cellular systems share some common properties with biological cellular systems, where the key component is a cell. Cells interact on a very local level without any knowledge of the overall state of the system. The only information available on each cell is its own state and the state of a few neighbors that are physically close. Computation is executed in parallel on all the cells in the systems, and it is regulated by a genotype that specifies cellular regulatory inputs and relative cellular actions, such as cell growth, differentiation, and apoptosis. The available regulatory information is the same for every cell. For a simple developmental system, the number of regulatory input combinations is not extremely large and can be fully specified in the genome. This is important, since we want to compare evolution with a static fully specified genotype and evolution with a growing genotype.

In this work we look closer at the correlations between the genome length and genome exploitation on one hand, and evolutionary results on the other. We evolve different cellular behavior and structures using a large genome (fully specified, i.e., all the possible regulatory input combinations), a growing genotype, and a small genome (a restricted genome pool out of all the possible regulatory input combinations). By comparing these methods with each other, we can get an understanding of how restraints affect the evolved organism. We consider the genome usage for the evolved solutions at different complexities. Further, we pose some answers to questions such as: Are we going to find that growing a genotype produces compact and effective genotypes? Or will the results be similar to those of an organism evolved with a large genotype? How will this type of evolution scale? Could a cellular evo-devo system that evolves organisms with a growing genotype exhibit emergent or implicit behavior not found in organisms evolved with a static large genotype? Will this kind of evolution actually be able to produce results at all?

Once the proposed framework is found to be able to evolve a solution with a minimalistic developmental system, we scale up the system complexity and available resources. A simple way of making cellular systems capable of very complex behavior is to increase the number of cell states, which in turn increases the regulatory rule space, the evolutionary search space, and the system state space exponentially. If the proposed framework is able to achieve results while changing the number of cell states, it will mean that the framework could support growing evolution in both search and state space, which means it would ideally allow one to tackle problems of increasing complexity. The presented experiments are mainly to investigate if the growth evolution function is able to create solutions with more cell states. We also investigate if the growing evolution function is able to find solutions in cellular spaces with different-size geometries. By increasing the geometry, the solution space (i.e., the number of states the system can exhibit) is expanded considerably.

5 Scalability

In today's society, we often use computers to solve very large problems. For instance, extensive problems with a vast number of variable parameters can be tackled with an EA, but even so, it requires much computational power and/or time and often produces large solutions (“solution” here refers to the specification of a candidate solution in the genotype). Having a good understanding of scalability can help both the usage of computational power and the size of the solutions, and it might even be able to shrink the size of the problem. To increase EA scalability to large problems, development has been widely used, which creates small solutions to problems that normally require larger solutions. This again makes the solutions manageable, making scaling a valuable tool. Evo-devo systems are often applied within the field of cellular development (e.g., CA), which makes cellular systems already a method that scales well [46]. One way in which scalability can be increased is by reducing the state or search space for a wanted solution, which essentially reduces the size of the fitness landscape, making systems scale to solve larger problems. Knowing what makes algorithms create solutions that are scalable in geometry (or resources) can reduce the problem, making the resource consumption manageable. Having a good understanding of scalability gives better utilization of resources, and makes it possible to create solutions to problems that one normally does not have enough resources to solve, or makes running times of currently solvable problems faster. There are of course many other ways to reduce the real running time of an EA, for instance, massively distributed or parallelized algorithms. But these will also benefit from a smaller search space and state space, which can be achieved by scaling in efficiency. By understanding how solutions scale in geometry, it can become possible to evolve small solutions that scale up to larger geometries with linear increase, or without the loss of functionality.

At the design stage of a cellular evo-devo system, the choices of the genotype size and encoding, the number of system states, and the available resources have an effect on the search space, state space, and solution space [2]. In the next subsections, all three of these relevant scalability aspects are addressed.

5.1 Scalability in Effectiveness (Search Space)

Effectiveness with regard to an EA is the measure of the number of genes used in an evolved solution compared to the minimum number needed for the solution to work—also, the number of genes used in an evolved solution compared to the number available for each individual in a population during evolutionary search. With regard to a cellular system, effectiveness is the measure of used regulatory input combinations (i.e., neighborhood configurations) compared to the theoretical maximum regulatory information. This is a key factor for scalability, since reducing the genotype size greatly decreases the search space.

In the first set of experiments we fix the target phenotypic complexity and behavior and the CA geometry, and evolve solutions with a full genotype; that is, all the possible regulatory information is fully specified (maximum genome length for the chosen cellular model). The results are compared with solutions obtained with a restricted gene pool where only a limited number of regulatory combinations can be specified. Finally we evolve solutions with our proposed framework on incremental growth of genome representations, which automatically increases the size of the genotypes. We evaluate the genotypes of the found solutions in terms of compactness (i.e., the size of the whole genotype) and effectiveness (i.e., the number of triggered genes during development in contrast to the total of available genes in the genotype solutions).

5.2 Scalability of States (State Space)

In the second set of experiments we investigate if the proposed framework is able to evolve solutions when the state space increases. For a cellular system, this means scaling up the number of available states each cell can hold. This exponentially increases the total number of regulatory input combinations (rule space). The number of necessary genes to encode a solution is not known in advance, and thus the choice of incremental growth of genome size seems realistic.

5.3 Scalability in Geometry (Solution Space)

In the last set of experiments we scale up the available phenotypic resources, that is, increase the cellular geometry size. Having a larger world to develop solutions increases the solution space exponentially and changes the indirect genotype-to-phenotype mapping. This intuitively makes it harder to estimate a priori the necessary genome representation. Again, incremental genome growth could bypass the issue.

6 Cellular Developmental Model

Our test-bed model is a cellular developmental system based on cellular automata, with a synchronized cellular cycle, parallel operation, and discrete cell states, similar to cellular models used in [28, 36, 57]. The system here is close to the field of morphogenetic engineering [11], where the goal is “self-architecturing” systems. In embryomorphic systems, the approach is based on embryogenesis: the self-assembly of myriads of cells starting from a single zygote that holds the complete genotype information.

A CA can be considered as a developing organism, where the genome specifications and the gene regulation information control growth and differentiation of the cells. The behavior of the CA is then represented by the emerging phenotype, which is subject to size and shape modifications, according to the cellular changes along the developmental process. Such a dynamic developmental system can show adaptation, self-modification, plasticity [62], or self-replication properties [32]. The model is based on a two-dimensional cellular automaton with cyclic boundary conditions, as illustrated in Figure 5. Thus, the totality of regulative inputs can be coded completely in the genome. This does not imply that all of the genome information is expressed in the phenotype. To ensure that cells will not materialize where there are no other cells around, a restriction has been set: If all the neighbors of an empty cell are empty, the cell will also be empty in the following development step. The organisms develop starting from a single cell placed in the grid—the zygote. The placement of the first cell is of no importance, as the grid is wrapped around as a torus. The local cellular communication is based on the von Neumann neighborhood (five neighbors) and includes only cell types, both intracellular (i.e., the cell's own state) and extracellular (i.e., the neighboring cells' state). Intracellular and extracellular information regulates actions of the developmental processes. Figure 6 illustrates the relation between regulatory information and development as a quasi finite state machine (FSM). The state regulatory Decoding takes regulatory information from a local cellular neighborhood (extracellular information) and information from the cell itself (intracellular information) as input to a gene regulation process defined by the genome. Cellular action, indicated by state Cell Actions 0 to n − 1, is promoted out of the outcome of the gene regulation process. In this example the cell can express a change (e.g., in an intracellular state), or no change if the regulatory information codes for a jump to the No Action state. The No Action state is also the state the cell will be in for all input regulatory information that does not explicitly regulate a cellular action; e.g., input information may be the total of extracellular and intracellular. This implies that all regulatory input combinations not covered in the genome will indirectly regulate the cell into the No Action state. Thus, a genome of a size that does not cover all regulatory possibilities will have a given part that indirectly codes the developmental process of No Action in Figure 6. As the model under investigation includes no environmental influence in the gene regulation (i.e., no possibility to deviate from the trajectory given by the initial configuration and genome information), there are no effects on development caused by dynamic attractor landscapes and environmental perturbation.

Figure 5. 

Geometry, neighborhood, and genome developmental table of the cellular developmental model.

Figure 5. 

Geometry, neighborhood, and genome developmental table of the cellular developmental model.

Figure 6. 

Intracellular and extracellular regulation.

Figure 6. 

Intracellular and extracellular regulation.

The presented developmental model allows for an arbitrary number of possible cell states and cellular actions. If a minimalistic setting where only three cell states is considered (viz., a quiescent cell type plus two other cell types to guarantee cell differentiation and the concept of multicellular organism), the gene regulatory information that covers all the possible cellular actions will consist of 35 = 243 combinations. Then a developing organism will consist of different constructs of the three cell types. In general, nnk possible transition functions are available, where n is the number of cell states and k is the neighborhood size. Figure 7 shows an example of a developing organism using the described minimalistic setting. Here the grid size is set to 5 × 5 cells and different colors indicate the different cell types. The change in phenotypic structure can be observed along the developmental path.

Figure 7. 

Example of developing cellular organism.

Figure 7. 

Example of developing cellular organism.

Having defined genetic information for the cellular model, a quantifiable measure has to be defined for the developed organisms. Properties that can be used need to provide information on the developing organism as a whole and the occurring phenotypic changes [26]. For a given organism, the initial cell (zygote) follows a developmental trajectory and, after a transient phase, reaches an attractor, that is, a final stable state (point attractor) or a self-reorganizing cycle (cyclic attractor). Previous work investigated the relation between developmental genomes and resulting attractors [39, 40]. For this reason, the attractor length is the chosen metric of phenotypic complexity.

7 Evolutionary Growth of Genomes

The genotype information is composed of a set of genes that represent the regulatory information (neighborhoods L, R, U, D, and C in Figure 5) and relative cellular action (Ct+1 in Figure 5). This is specified as a developmental table, as shown in Figure 5. In our model each developmental rule (gene) is a 32-bit field where n bits are reserved for a neighbor site (based on the number of cell states). For example, two states require 1 bit, three states require 2 bits, four states also require 2 bits, and so on. Thus, not all the bits in the field are necessarily used; this depends on the chosen number of available cell states. In the growing genome function there is no restriction on duplicate genes, and copies can appear through gene duplication, mutation, or crossover. As a regulation mechanism for redundant genes (equal neighborhood configuration) that may be active at the same time if the conditions in the regulatory decoding hold, modular arithmetic is used for unambiguous cellular actions and rule firing. This means that all the possible actions for a given neighborhood are summed and moduloed against the maximum number of cell states. Such a genetic regulation mechanism ensures a deterministic outcome.

There are three different ways of representing and evolving the GA population, that is, genomes:

  • • 

    Full evolution function: The initial population consists of full genotypes, that is, a number of genes equal to the possible regulatory input combinations, where the neighborhood configurations are fully specified and the next value of the central cell in the neighborhood is initialized as the quiescent state.

  • • 

    Restricted evolution function: Here the size of the genotypes is reduced and only a small set out of all the regulatory combinations is specified. The genotype cannot change size for the whole evolutionary run. The next value of the central cell in the neighborhood (for the available genes) is initialized as the quiescent state.

  • • 

    Growing evolution function: The population is uniform and composed of single-gene genotypes. The only neighborhood configuration that is specified consists entirely of quiescent states, and the next value of the central cell in the neighborhood is also initialized as the quiescent state. The genotype builds up according to the growth mechanism described earlier.

8 Experimental Setup

The initial population for all the experiments is set to 100 individuals, and each configuration is averaged over 20 evolutionary runs. Each individual is developed for 2000 development steps. The GAs have the following settings: mutation rate 2.6 mutations per individual (adaptive), elitism of one individual, crossover rate 0.02, add-gene rate 0.02 with threshold of 10 generations without increase in overall best fitness. Three different sets of experiments are presented.

In the first set of experiments we investigate how the growing evolution function performs, compared to full or restricted evolution. In order to be able to fully specify the regulatory input combinations, the number of available cell states is set to three. With a von Neumann neighborhood of radius 5, a full genotype would consist of 35 = 243 regulatory combinations. If a different configuration had been chosen (say, with hundreds of cell types), the full genotype size would become so large that it would be infeasible to define the entire rule space. The first experimental setup is designed to compare full, restricted, and growing evolution functions with a setting where the whole genome can be explicitly specified. The chosen array size is 4 × 4 = 16 cells, which leads to a theoretical maximum attractor length of 316 development steps. Different attractor targets are considered, as given in Table 1, together with the maximum number of generations the GA is allowed run in order to find the wanted attractor. The attractor length is measured as the number of development steps that occurred between two repetitions of the same state, that is, when the same state is encountered twice. Previous work has shown that attractor length is a plausible measure of phenotypic complexity [26, 38, 39, 40, 59]. The chosen metric of complexity—the attractor length—is an abstract measure that does not code for any specific problem or computational task, such as majority, synchronization, or a specific phenotypic structure. For the scope of this research, no specific computational task is implied, since we want to capture general properties of the developing organism as a whole and the phenotypic changes that occur during development.

Table 1. 

Attractor length targets and relative generations allowed.

Attractors 10 20 40 80 160 200 400 
Generations 4000 4000 4000 6000 6000 8000 8000 10000 
Attractors 10 20 40 80 160 200 400 
Generations 4000 4000 4000 6000 6000 8000 8000 10000 
First the full evolution function and the growing evolution function are executed for all the wanted attractors. Statistics on the effectiveness of the resulting genomes are collected: total number of genes and number of genes used. The total number of genes for the growing evolution function is used to determine plausible genotype sizes for the restricted evolution function. The fitness weightings used are 0.6 for the actual fitness, 0.2 for the genotype exploitation parameter, and 0.2 for the innovation parameter. The resulting fitness F is calculated as
formula
Here, f represents the normalized actual fitness, that is, how close the individual is to the wanted attractor length; e is the exploitation parameter, that is, the normalized ratio of genes triggered during development to the total number of genes in the considered genotype; and i is the innovation parameter, that is, the normalized value of the genotype size.

In the second set of experiments, we evolve different attractor lengths (7, 10, 20, and 40 development steps) with more available cell states. For each of the chosen attractors, the state space is scaled up to allow 5, 6, or 7 cell types. The number of available generations is the same as in the first set of experiments. Using a setting with 7 available cell types and 5 neighbors would not be practical for a full evolution function. Such a genotype would need to specify 75 regulatory combinations, and the search space size would be 716807. Again, statistics on the effectiveness of the resulting genomes are collected: total number of genes and number of genes used.

The third set of experiments consists of evolving different attractors with the growing evolution function, when the cellular world geometry scales up. By increasing the geometry, the solution space is expanded considerably. The tested CA geometries are 4 × 4 = 16 cells, 6 × 6 = 36 cells, 8 × 8 = 64 cells, and 16 × 16 = 256 cells. Three cell states are allowed, and the target attractors considered are 5, 7, and 10 development steps. The maximum number of generations the GA is allowed to run is 8000. The fitness weightings used are 0.8 for the actual fitness, 0.05 for the genotype exploitation parameter, and 0.15 for the innovation parameter. A new negative weighting is also introduced, namely the border condition parameter, which could weigh up to −0.25. The border condition parameter measures how much the development of the organism relies on border conditions, namely, the ratio of the number of border cells exploited to the total number of border cells. This was done to promote organisms that exploited border conditions as little as possible, developing self-organizing attractors based on genome regulations rather than collisions.

9 Results

9.1 Scalability in Effectiveness—Genome Comparison

Three evolutionary strategies are tested and compared: full evolution function, restricted evolution function, and growing evolution function. Each of the strategies is executed 20 times, and the results are averaged over the runs, for each of the target attractor lengths. The main motive is to evaluate how well genome utilization is achieved by the growing strategy compared to the full and restricted strategies. Having good utilization with a growing evolution would mean that such a strategy is able to find solutions of arbitrary complexity using a reduced search space and making the process of deciding the genotype representation size unnecessary.

Figure 8 depicts the average gene usage and genome size for successful runs targeting different attractor lengths, comparing full and growing evolution functions. It is clearly observable that evolutionary growth of genotype representation gives both a smaller genotype size and a better utilization of the available genes. The full evolution function has a genotype size of 243 genes (all the possible regulatory input combinations, 35), while the growing evolution starts with a genotype consisting of a single gene. For example, the results for attractor target 10 are analyzed in Figure 8. The full evolution function evolves fixed-size genomes of 243 genes (red bar). The number of genes triggered during development is 38.8 on average (gray bar). On the other hand, the growing evolution function produces genomes of 13.6 genes (blue bar) with 6.3 genes triggered on average (green bar). The results on the average genotype size for growing evolution are used to find appropriate values for the restricted evolution genotype size. Three sizes are chosen: one equal to that achieved by the growing evolution function, one slightly smaller, and one slightly larger (differences for low and high restriction are relative to the size). Genome sizes for the restricted genotype pool are summarized in Table 2.

Figure 8. 

Genotype size and number of activated genes during development of organisms with different attractor lengths. Full evolution function on the left, and growing evolution function on the right. Averages are calculated over successful evolutions of 20 runs.

Figure 8. 

Genotype size and number of activated genes during development of organisms with different attractor lengths. Full evolution function on the left, and growing evolution function on the right. Averages are calculated over successful evolutions of 20 runs.

Table 2. 

Parameter values for the evolutionary computation.

AttractorSize
Low restrictionMid restrictionHigh restriction
12 16 20 
10 11 13 15 
20 10 12 
40 10 13 16 
80 12 15 18 
160 20 24 28 
200 21 25 29 
400 30 35 40 
AttractorSize
Low restrictionMid restrictionHigh restriction
12 16 20 
10 11 13 15 
20 10 12 
40 10 13 16 
80 12 15 18 
160 20 24 28 
200 21 25 29 
400 30 35 40 

Figure 9 compares the growing evolution function and restricted evolution function with the defined fixed representations. The mid restriction has similar results to those obtained by the growing evolution function, in terms of the total number of genes (this was fixed a priori for the restricted evolution, based on the average results obtained by the growing evolution function) and in terms of number of genes used during development.

Figure 9. 

Comparison of growing evolution function and restricted evolution function with the defined fixed representations (low, mid, and high).

Figure 9. 

Comparison of growing evolution function and restricted evolution function with the defined fixed representations (low, mid, and high).

The overall results over the successful runs are summarized in Table 3. For each different attractor length, the average genotype size and average genes usage are calculated, together with the standard deviation. The growing evolution function performs better for all the tested attractor lengths in terms of genome effectiveness (total genome usage highlighted in yellow).

Table 3. 

Comparison of the three different evolution functions (full, growing, and restricted) with respect to average and standard deviation over successful evolutions of 20 runs (— means 0 or n.a.).

AttractorFullGrowRestricted (mid)
UsedTotalUsedTotalUsedTotal
AvgStdDevAvgStdDevAvgStdDevAvgStdDevAvgStdDevAvgStdDev
59.9 23.6  — 7.3 1.3  4.8 8.9 1.2 16 — 
10 38.8 19.1 — 6.3 1.4 3.5 6.7 1.2 13 — 
20 26.0 10.5 — 5.6 0.7 1.9 6.6 1.5 12 — 
40 46.1 10.9 — 8.0 1.7 2.9 8.3 1.4 13 — 
80 66.4 17.1 — 10.3 1.3 2.9 10.1 1.6 15 — 
160 84.1 17.5 — 15.7 3.5 7.5 16.3 2.1 24 — 
200 100.0 13.3 — 16.2 4.0 7.5 17.9 2.9 25 — 
400 134.2 16.5 — 26 — — 27.3 4.6 35 — 
AttractorFullGrowRestricted (mid)
UsedTotalUsedTotalUsedTotal
AvgStdDevAvgStdDevAvgStdDevAvgStdDevAvgStdDevAvgStdDev
59.9 23.6  — 7.3 1.3  4.8 8.9 1.2 16 — 
10 38.8 19.1 — 6.3 1.4 3.5 6.7 1.2 13 — 
20 26.0 10.5 — 5.6 0.7 1.9 6.6 1.5 12 — 
40 46.1 10.9 — 8.0 1.7 2.9 8.3 1.4 13 — 
80 66.4 17.1 — 10.3 1.3 2.9 10.1 1.6 15 — 
160 84.1 17.5 — 15.7 3.5 7.5 16.3 2.1 24 — 
200 100.0 13.3 — 16.2 4.0 7.5 17.9 2.9 25 — 
400 134.2 16.5 — 26 — — 27.3 4.6 35 — 

The success rate was predicted to be higher for the full evolution function than for the restricted and growing evolution functions, since a full genotype representation does not need to simultaneously grow the genotype and increase the fitness. Looking at the success rate summarized in Table 4, it is observable that the prediction was reasonably accurate. The success rate is very dependent on the number of generations available to discover solutions and the number of given development steps, which are not the main goal here. The number of available generations was predefined, and it is intuitive that growing evolution relies on the number of available generations to incrementally build up the genotype.

Table 4. 

Comparison of success rates for different attractor lengths.

AttractorGrowFullRest (low)Rest (mid)Rest (high)
18/20 15/20 18/20 19/20 18/20 
10 20/20 20/20 19/20 20/20 20/20 
20 20/20 20/20 20/20 20/20 20/20 
40 20/20 20/20 19/20 20/20 20/20 
80 15/20 20/20 10/20 14/20 14/20 
160 14/20 20/20 9/20 9/20 14/20 
200 16/20 20/20 13/20 10/20 12/20 
400 1/20 20/20 1/20 4/20 3/20 
AttractorGrowFullRest (low)Rest (mid)Rest (high)
18/20 15/20 18/20 19/20 18/20 
10 20/20 20/20 19/20 20/20 20/20 
20 20/20 20/20 20/20 20/20 20/20 
40 20/20 20/20 19/20 20/20 20/20 
80 15/20 20/20 10/20 14/20 14/20 
160 14/20 20/20 9/20 9/20 14/20 
200 16/20 20/20 13/20 10/20 12/20 
400 1/20 20/20 1/20 4/20 3/20 

Figure 10,1 (top) presents a comparison of the different evolutionary functions for attractor length of 20 development steps. The growing evolution function climbs incrementally towards the wanted attractor, which is because it needs to build up the genotype iteratively. It is important to highlight once more that the goal here was not analyzing the convergence speed but the effectiveness of the obtained genotypes. Having a closer look at the growing evolution function in Figure 10 (bottom), which shows the genotype growing (green line) while evolving attractor length (blue line), it is possible to see that such a strategy has an inherent growth regulation mechanism. In the first phase the genotype grows more, whereas once the achieved fitness is close to the wanted attractor, the algorithm optimizes the available genes more without the need of extra additions.

Figure 10. 

Top: comparison of the different evolutionary functions for attractor length of 20 development steps. Bottom: growing evolution function and relative genome size. Average over 20 runs.

Figure 10. 

Top: comparison of the different evolutionary functions for attractor length of 20 development steps. Bottom: growing evolution function and relative genome size. Average over 20 runs.

In Figure 11 the wanted attractor is 200 development steps. While for organisms with shorter attractor lengths (10, 20, 40 development steps) the given generation span was enough to discover solutions in all the runs, with longer attractors (80, 160, 200, 400 development steps) more generations were needed. However, in all the runs the genotype is growing as the relative phenotype complexity grows. In all the experiments it is possible to notice faster growth in the early generations and slower growth later when genotypes get optimized.

Figure 11. 

Top: comparison of the different evolutionary functions for an attractor length of 200 development steps. Bottom: growing evolution function and relative genome size. Average over 20 runs.

Figure 11. 

Top: comparison of the different evolutionary functions for an attractor length of 200 development steps. Bottom: growing evolution function and relative genome size. Average over 20 runs.

Note that solutions were found for all target attractor lengths. The success rates are shown in Table 4. Figures 10 and 11 represent averages over 20 runs.

Table 5 summarizes the statistical significance of the comparisons, using the Student t-test, between obtained genotype sizes and between average gene usage. For all the wanted attractor lengths, the differences between growing evolution function and full evolution function is significant (p < 0.001), in terms of both genotype size and genes activated during development. This means that the growing evolution function is able to evolve better genotype representations, with more compact and effective genomes.

Table 5. 

Statistical significance, 2-tail Student t-test.

AttractorUsed (grow vs full)Total (grow vs full)Used (grow vs rest)Total (grow vs rest)
p < 0.0001 p < 0.0001 p = 0.0004 p = 0.5805 
10 p < 0.0001 p < 0.0001 p = 0.3370 p = 0.4867 
20 p < 0.0001 p < 0.0001 p = 0.0061 p < 0.0001 
40 p < 0.0001 p < 0.0001 p = 0.4629 p = 0.7633 
80 p < 0.0001 p < 0.0001 p = 0.8198 p = 0.8625 
160 p < 0.0001 p < 0.0001 p = 0.06426 p = 0.9776 
200 p < 0.0001 p < 0.0001 p = 0.9731 p = 0.9793 
400 p < 0.0001∗ p < 0.0001 p = 0.2652∗ p = 0.1778∗ 
AttractorUsed (grow vs full)Total (grow vs full)Used (grow vs rest)Total (grow vs rest)
p < 0.0001 p < 0.0001 p = 0.0004 p = 0.5805 
10 p < 0.0001 p < 0.0001 p = 0.3370 p = 0.4867 
20 p < 0.0001 p < 0.0001 p = 0.0061 p < 0.0001 
40 p < 0.0001 p < 0.0001 p = 0.4629 p = 0.7633 
80 p < 0.0001 p < 0.0001 p = 0.8198 p = 0.8625 
160 p < 0.0001 p < 0.0001 p = 0.06426 p = 0.9776 
200 p < 0.0001 p < 0.0001 p = 0.9731 p = 0.9793 
400 p < 0.0001∗ p < 0.0001 p = 0.2652∗ p = 0.1778∗ 

Notes: ∗Not enough successful runs; closest result to the wanted attractor length is also considered.

When the growing evolution function and restricted evolution function were compared (fixed representation with the same genotype size as the one produced by the growing evolution function), no statistical significance between the averages was found. The only difference was a higher success rate for the growing evolution function, on average, than for the restricted evolution function. Obviously, if a restricted pool of genes is considered, there is the problem of estimating the exact number of genes that are likely to represent a wanted solution. There is no such problem with incremental genome growth, where the necessary size is evolved.

Overall, the growing evolution function was able to outperform the full evolution function and the restricted evolution function in genotype efficiency, which was the main goal here. An example of an evolved solution is shown in Figure 12; it produced a compact genotype composed of only 6 genes (a fully specified genotype would consist of 243 genes). The evolved solution is particularly efficient in that all six genotype rules are actively used during development.

Figure 12. 

Example of developed solution for geometry of 4 × 4 cells, 3 cell states, target attractor = 7 development steps (DS), evolved with growing evolution function. Top row shows the evolved transition table composed of six genes (initialized with a single gene), obtained after 308 generations. All six genes are triggered during development.

Figure 12. 

Example of developed solution for geometry of 4 × 4 cells, 3 cell states, target attractor = 7 development steps (DS), evolved with growing evolution function. Top row shows the evolved transition table composed of six genes (initialized with a single gene), obtained after 308 generations. All six genes are triggered during development.

9.2 Scalability—State Space

Increasing the state space, that is, letting the system allow more cell types, gives rise to a genotype scalability problem. The more cell states are available for the system to exploit, the more regulatory combinations become possible, and thus representing all the neighboring configurations in the genotype may not be feasible. Moreover, the search space the GA has to explore grows exponentially. Using a growing evolution function seems a good solution to this problem. In this set of experiments 5, 6, and 7 cell states are available. When more states are available, evolution needs more generations to allow optimization of existing genes, since it is more likely to have gene additions and mutations that are fitness-neutral. The main goals here are to achieve an incremental growth of complexity while genotypes grow in size, that is, the growth evolution function still works for an increased state space, and the found genotypes (matching the solution or close by, where the genotype is already of a suitable size but needs more optimization time) are compact and effective.

Figure 13 compares the growing complexity for different attractor lengths. In all the four cases, having 7 states makes evolution require more generations than having 6 or 5. Nevertheless, the system is still evolvable.

Figure 13. 

Comparison of evolution of various attractor lengths when increasing the number of possible states per cell. Average of successful evolutions over 20 runs.

Figure 13. 

Comparison of evolution of various attractor lengths when increasing the number of possible states per cell. Average of successful evolutions over 20 runs.

The compactness and effectiveness of the resulting genotypes are shown in Figure 14. It is possible to see that increasing the state space does not reflect in an increase of genotype size. If all the regulatory combinations were explicitly expressed in a full genotype, there would be an exponential increase of genome length for a linear increase of the available states.

Figure 14. 

Comparison of genotype size and genes activated during development, for a growing evolution function when the number of possible states per cell increases. Average of successful evolutions over 20 runs. No exact solution was found with 6 cell types for attractor 7 or with 7 cell types for attractors 7 and 10.

Figure 14. 

Comparison of genotype size and genes activated during development, for a growing evolution function when the number of possible states per cell increases. Average of successful evolutions over 20 runs. No exact solution was found with 6 cell types for attractor 7 or with 7 cell types for attractors 7 and 10.

Further studying the genotype growth shows that gene duplication is regulated by having a higher growth rate in the early generations. Figure 15 presents an example where the considered organism's attractor length is 40 development steps. As hypothesized, the more cell states are available, the more generations are needed. It is clearly visible that more gene additions happen in the beginning in all the three cases. This is not reflected in the same sudden fitness increase, and the more states are available, the longer is the transient before a fitness increase is noticeable. With 7 available states, several genes are added at the beginning, producing lower impact on the overall fitness. While the duplication rate slows down and genotypes get optimized, the fitness starts to improve.

Figure 15. 

Growing evolution function for attractor length of 40 development steps and 5, 6, and 7 cell types. Average of successful evolutions over 20 runs.

Figure 15. 

Growing evolution function for attractor length of 40 development steps and 5, 6, and 7 cell types. Average of successful evolutions over 20 runs.

The presented experiments reveal that the growing evolution function scales well when the state space scales up. Overall, the growing evolution function produces compact and effective genomes that would not be achievable by specifying all the gene regulatory combinations.

9.3 Scalability—Geometry

Scaling of the phenotype resources, that is, the available number of cells in the grid world, changes the genotype-to-phenotype mapping. This means that for the same genotype representation, the possible number of emergent phenotypes would grow exponentially. Having a large geometry size gives a higher offset for the average evolved attractor length from the wanted attractor. Developing attractors that are relatively shorter than the geometry length makes an attractor that regulates based on boundary conditions difficult to evolve. It would also need some structural setup in the form of a complex transient phase. Table 6 displays the success rate for the different grid sizes. As hypothesized, the geometry with 16 × 16 cells has a lower success rate. Nevertheless, successful solutions are evolved for all the attractor lengths on all geometries.

Table 6. 

Success rate for increased geometry size.

4 × 46 × 68 × 816 × 16
Attractor 5 20/20 20/20 14/20 5/20 
Attractor 7 20/20 20/20 20/20 8/20 
Attractor 10 20/20 20/20 19/20 9/20 
4 × 46 × 68 × 816 × 16
Attractor 5 20/20 20/20 14/20 5/20 
Attractor 7 20/20 20/20 20/20 8/20 
Attractor 10 20/20 20/20 19/20 9/20 

Figure 16 compares the evolved genome size and number of genes used during development for the genotypes evolved with a growing evolution function. Since the organisms use a regulation that exploits border conditions, there is a dependence between attractor length and geometry. That is why it is not possible to identify a specific trend. As an example, an organism that develops an attractor of 5 development steps requires fewer genes on an 8 × 8 geometry than on a 6 × 6 geometry. For that reason, it would be extremely difficult to estimate the necessary genome representation size when the phenotype space increases.

Figure 16. 

Comparison of genotype size and number of activated genes during development when the size of the geometry increases. Average of successful evolutions over 20 runs.

Figure 16. 

Comparison of genotype size and number of activated genes during development when the size of the geometry increases. Average of successful evolutions over 20 runs.

The average of the evolutionary runs is plotted in Figure 17 for target attractor lengths of 5, 7, and 10 development steps. Each line represents a different geometry. It is possible to see that for some specific combinations of geometry size and wanted attractor, evolution approaches the target value by incrementing the attractor length with additions and optimizations. In some other cases, the number of available genes is enough to develop organisms with longer attractors than the wanted length. In such cases, evolution would have to optimize the available genes to obtain a shorter attractor. This happens because none of the attractor lengths is a multiple of the geometry side and because the simplest way to regulate an attractor is taking advantage of the boundary conditions. It is extremely important that in such a case, growth does not get out of control.

Figure 17. 

Comparison of growing evolution: different attractors with increased geometry. Average over 20 runs.

Figure 17. 

Comparison of growing evolution: different attractors with increased geometry. Average over 20 runs.

Figure 18 illustrates an example of an evolved attractor of size 10 development steps on the four different geometries (average over 20 runs). The growing evolution function is able to find compact and effective genotypes when the geometry size is scaled up. Moreover, the growth rate tends to slow down during evolution, and the number of available genes does not keep growing.

Figure 18. 

Evolved attractors and genotypes size for different geometries of size. Average over 20 runs. (a) 4 × 4 and 6 × 6; (b) 8 × 8 and 16 × 16.

Figure 18. 

Evolved attractors and genotypes size for different geometries of size. Average over 20 runs. (a) 4 × 4 and 6 × 6; (b) 8 × 8 and 16 × 16.

10 Discussion and Future Work

The main idea behind this work is that a growing genotype evolution function would essentially create genotypes that did not explore an unnecessary area of the search space. Thus, it can be a valid alternative to the process of deciding upon a static representation that is large enough to contain a solution to the desired problem. A static representation is often bloated compared to the needed representation, because finding a size that is large enough to contain a solution but small enough not to be bloated is difficult. According to the results, the idea of growing an effective genotype is plausible. The growing evolution starts with a population of small and simple genotypes and grows their size incrementally. This is done by increasing the search space with gene duplications and further optimizing them with mutations and crossovers. Each iteration of the process changes the fitness landscape, since new possible genes may emerge, making previous local optima disappear and creating new optima. Getting a growing genotype evolution function to work was not so trivial as for a full genotype or a restricted evolution function. There are many parameters, and the tuning involved in the configuration can lead to different results. The optimization of parameters was outside the scope of this report, and the same configuration was used for all the experiments (with a few exceptions, described in the previous sections). Nevertheless, most of the experiments performed well, which tells us that the setup was most likely adequate for the scope of this research. The used setup and configuration are by no means optimal, but are adequate for the purpose of proving a point. The presented results are persistent throughout changes in complexity, geometry size, and number of cell states, indicating that a growing evolution function is able to achieve effective solutions with automatically created representations.

Another key point to discuss is elitism, which is often used with fixed-size genotypes. With a growing evolution function, it could have some drawbacks for evolvability. Elitism works like an anchor fastening a generation to the currently best individual, which for the growing evolution function anchors also the amount of genes in the genotype. Elitism imposes on the fitness landscape exploration a limit on how far from the current fitness and genotype size it can go. Elitism may be removed (or reduced, as in this work with only one elite) and rather another genotype size regulation may be implemented. For example, in [52] speciation is used to allow mating only between individuals in the same group, and newly added genes have a better ability to avoid getting rooted out by natural selection.

The solutions found in all the different sets of experiments are successful, and the resulting genotypes are compact and effective. Growing a genotype is a valid alternative to defining a static representation or using a full representation with all the possible regulatory combinations. Comparing the result of the growing evolution function with that of the restricted evolution function shows that the performance is similar. This means that the growing genomes are reasonably optimized.

An inherent result of the growing evolution function to target organisms that develop an attractor of a specific number of development steps is a rather small transient. This is consistent with other work [5, 43] where there is no instruction sequence or construction arm and the construction of structures is a fission-like process with high parallel processing.

The goal in this work was to evolve organisms that produced attractors of different lengths, instead of simply achieving a given structure. This means that the resulting solutions take advantage of geometry regulation, that is, they actively use the geometry to build structures that achieve the required attractor size. These structures have directional movement, but because of periodic boundary conditions, they cycle around the grid and return to sites that they have previously occupied. This way, structures can either move at a certain speed that, combined with the geometry, results in an appropriate attractor, or move and leave behind structures with which they can interact when cycling around the boundary, essentially creating an environment for themselves to evolve within. In this way, repeating patterns within an attractor may emerge. For larger geometries, having attractors that do not rely on boundary conditions would mean having a larger set of genes regulating a developing mechanism and a stopping mechanism. A location-fixed attractor that stays within a fixed geometric space even if the total geometry is limitless is very difficult to achieve. That is why most of the solutions take advantage of geometry regulations.

Evolutionary and developmental systems and artificial intelligence rely on efficient search of optimized structures, most likely very large structures that suffer from an inherent scalability problem. Evolutionary growth of genome representations is the tool that allows such scaling up, starting from the very simple and incrementally elaborating. As a consequence, it may be advantageous to explore it in domains where scalability is a goal.

As future work, it may be interesting to investigate evolutionary growth of genome representations not only in the search space but also in the state space. Essentially, let the growth happen in terms of both the genotype size, (i.e., the number of genes) and the states that each cell can hold (i.e., the number of possible cell states). This would achieve true complexification, meaning that the boundaries are not fixed by the state space (which is more or less fixed in every artificial system). This would allow systems to evolve for arbitrary complexity levels and find solutions to arbitrarily complex problems.

11 Conclusion

The experiments presented in this article show that the evolutionary growth of genotype representations for evo-devo systems with indirect encodings produces compact and effective genomes. This is without the need of fully specifying all the regulatory combinations or estimating a priori the necessary genetic pool with complex heuristics. Three types of scalability issues are discussed:

  • (1) 

    The scalability of the search space: The growing evolution function outperforms restricted evolution and full evolution in terms of genome size and genome exploitation by complexification of simple genotypes with the incremental addition and optimization of new genes. The result is that complexity of achieved solutions grows while evolution progresses.

  • (2) 

    The scalability of the state space: The growing evolution function is effective when the number of available cell states is scaled up and a fully specified genome would not be possible.

  • (3) 

    The scalability of phenotypic resources: Developmental systems take advantage of an indirect genotype-to-phenotype mapping, and scaling up the phenotype resources increases the complexity of the mapping. The growing evolution function provides the necessary genotype scalability to elaborate solutions with compact and effective genomes when the grid world where organisms develop is increased in size.

Overall, the key aspect of evolutionary growth of genotype representations is the ability to solve difficult problems by starting with simple solutions in a low-dimensional space and incrementally increasing the genotype complexity, disregarding how large a genotype would be to encode a solution. Thus, it is a powerful strategy in the field of evolutionary and developmental systems with indirect encodings, where nature-like levels of complexity are targeted.

Note

1 

See  Appendix 1 for a description of the figure labels.

References

1
Altenberg
,
L.
(
1995
).
Genome growth and the evolution of the genotype-phenotype map
. In
W.
Banzhaf
&
F. H.
Eeckman
(Eds.),
Evolution and biocomputation
(pp.
205
259
).
London
:
Springer
.
2
Ashby
,
W. R.
(
1956
).
An introduction to cybernetics
.
London
:
Chapman & Hall
.
3
Babloyantz
,
A.
(
1986
).
Molecules, dynamics, and life: An introduction to self-organization of matter. Nonequilibrium problems in the physical sciences and biology
.
Indianapolis
:
Wiley
.
4
Bianconi
,
E.
,
Piovesan
,
A.
,
Facchin
,
F.
,
Beraudi
,
A.
,
Casadei
,
R.
,
Frabetti
,
F.
,
Vitale
,
L.
,
Pelleri
,
M. C.
,
Tassani
,
S.
,
Piva
,
F.
,
Perez-Amodio
,
S.
,
Strippoli
,
P.
, &
Canaider
,
S.
(
2013
).
An estimation of the number of cells in the human body
.
Annals of Human Biology
,
40
(
6
),
463
471
.
5
Bidlo
,
M.
, &
Vasicek
,
Z.
(
2012
).
Evolution of cellular automata using instruction-based approach
. In
H.
Abbass
,
D.
Essam
, &
R.
Sarker
(Eds.),
2012 IEEE Congress on Evolutionary Computation (CEC)
(pp.
1
8
).
Washington
:
IEEE Press
.
6
Carroll
,
S. B.
(
2005
).
Endless forms most beautiful: The new science of evo devo and the making of the animal kingdom
(
No. 54
).
New York
:
W. W. Norton & Company
.
7
Carroll
,
S.
,
Grenier
,
J.
, &
Weatherbee
,
S.
(
2004
).
From DNA to diversity: Molecular genetics and the evolution of animal design
.
Indianapolis
:
Wiley
.
8
Cliff
,
D.
,
Husbands
,
P.
, &
Harvey
,
I.
(
1993
).
Explorations in evolutionary robotics
.
Adaptive Behaviour
,
2
(
1
),
73
110
.
9
Doolittle
,
W. F.
(
2000
).
Uprooting the tree of life
.
Scientific American
,
282
(
2
),
90
95
.
10
Doursat
,
R.
(
2008
).
Organically grown architectures: Creating decentralized, autonomous systems by embryomorphic engineering
. In
R.
Wurtz
(Ed.),
Organic Computing
(pp.
167
199
).
Berlin, Heidelberg
:
Springer
.
11
Doursat
,
R.
,
Sayama
,
H.
, &
Michel
,
O.
(
2012
).
Morphogenetic engineering: Toward programmable complex systems
.
London
:
Springer
.
12
Federici
,
D.
, &
Downing
,
K.
(
2006
).
Evolution and development of a multicellular organism: Scalability, resilience, and neutral complexification
.
Artificial Life
,
12
(
3
),
381
409
.
13
Force
,
A.
,
Lynch
,
M.
,
Pickett
,
F. B.
,
Amores
,
A.
,
Yan
,
Y. L.
, &
Postlethwait
,
J.
(
1999
).
Preservation of duplicate genes by complementary, degenerative mutations
.
Genetics
,
151
(
4
),
1531
1545
.
14
Gánti
,
T.
(
1971/2003
).
The principles of life
.
Oxford, UK
:
Oxford University Press
.
[First published in Hungary in 1971]
.
15
Giskeødegård
,
A.
(
2013
).
Inkrementell vekst av genomet for evolusjon av genotype representasjoner for kunstige cellulære organismer
.
Master thesis. Trondheim: Institutt for datateknikk og informasjonsvitenskap
.
16
Glansdorff
,
N.
,
Xu
,
Y.
, &
Labedan
,
B.
(
2008
).
The last universal common ancestor: Emergence, constitution and genetic legacy of an elusive forerunner
.
Biology Direct
,
3
(
29
),
1
35
.
17
Gregory
,
T. R.
(
2005
).
The C-value enigma in plants and animals: A review of parallels and an appeal for partnership
.
Annals of Botany
,
95
(
1
),
133
146
.
18
Hall
,
B. K.
,
Pearson
,
R. D.
, &
Müller
,
G. B.
(
2004
).
Environment, development, and evolution: Toward a synthesis
.
Cambridge, MA
:
MIT Press
.
19
Harvey
,
I.
,
Husbands
,
P.
, &
Cliff
,
D.
(
1994
).
Seeing the light: Artificial evolution, real vision
(pp.
392
401
).
Falmer
:
School of Cognitive and Computing Sciences, University of Sussex
.
20
Hornby
,
G. S.
(
2004
).
Functional scalability through generative representations: The evolution of table designs
.
Environment and Planning B: Planning and Design
,
31
(
4
),
569
588
.
21
Kauffman
,
S. A.
(
1993
).
The origins of order: Self organization and selection in evolution
.
Oxford, UK
:
Oxford University Press
.
22
Kirschner
,
M.
, &
Gerhart
,
J.
(
1998
).
Evolvability
.
Proceedings of the National Academy of Sciences
,
95
(
15
),
8420
8427
.
23
Kirschner
,
M.
, &
Gerhart
,
J.
(
2006
).
The plausibility of life: Resolving Darwin's dilemma
.
New Haven
:
Yale University Press
.
24
Kitano
,
H.
(
1990
).
Designing neural networks using genetic algorithms with graph generation system
.
Complex Systems
,
4
,
461
476
.
25
Kitano
,
H.
(
1998
).
Building complex systems using developmental process: An engineering approach
. In
M.
Sipper
,
D.
Mange
, &
A.
Perez-Uribe
(Eds.),
Evolvable systems: From biology to hardware
(pp.
218
229
).
Berlin, Heidelberg
:
Springer
.
26
Kowaliw
,
T.
(
2008
).
Measures of complexity for artificial embryogeny
. In
C.
Ryan
&
M.
Keijzer
(Eds.),
Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation
(pp.
843
850
).
New York
:
ACM
.
27
Kowaliw
,
T.
, &
Banzhaf
,
W.
(
2009
).
Augmenting artificial development with local fitness
. In
A.
Tyrrell
&
P.
Haddow
(Eds.),
IEEE Congress on Evolutionary Computation, 2009
(pp.
316
323
).
Washington
:
IEEE Press
.
28
Kowaliw
,
T.
,
Grogono
,
P.
, &
Kharma
,
N.
(
2007
).
Environment as a spatial constraint on the growth of structural form
. In
H.
Lipson
(Ed.),
Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation
(pp.
1037
1044
).
New York
:
ACM
.
29
Koza
,
J. R.
(
1995
).
Gene duplication to enable genetic programming to concurrently evolve both the architecture and work-performing steps of a computer program
. In
C.
Mellish
(Ed.),
IJCAI-95, Proceedings of the 14th International Joint Conference on Artificial Intelligence
(pp.
734
740
).
Burlington, MA
:
Morgan Kaufmann
.
30
Koza
,
J. R.
,
Andre
,
D.
,
Bennett
,
F. H.
, &
Keane
,
M. A.
(
1999
).
Genetic programming III: Darwinian invention and problem solving
.
Burlington, MA
:
Morgan Kaufmann
.
31
Kumar
,
S.
, &
Bentley
,
P. J.
(
2003
).
Biologically inspired evolutionary development
. In
A.
Tyrrell
,
P.
Haddow
, &
J.
Torresen
(Eds.),
Evolvable systems: From biology to hardware
(pp.
99
106
).
Berlin, Heidelberg
:
Springer
.
32
Langton
,
C. G.
(
1984
).
Self-reproduction in cellular automata
.
Physica D: Nonlinear Phenomena
,
10
(
1
),
135
144
.
33
Li
,
W.-H.
,
Gu
,
Z.
,
Wang
,
H.
, &
Nukrutenko
,
A.
(
2001
).
Evolutionary analyses of the human genome
.
Nature
,
409
(
6822
),
847
849
.
34
Lindgren
,
K.
, &
Johansson
,
J.
(
2003
).
Coevolution of strategies in n-person prisoner's dilemma
. In
J. P.
Crutchfield
&
P.
Schuster
(Eds.),
Evolutionary dynamics: Exploring the interplay of selection, accident, neutrality, and function
(pp.
341
360
).
Oxford, UK
:
Oxford University Press
.
35
Martin
,
A. P.
(
1999
).
Increasing genomic complexity by gene duplication and the origin of vertebrates
.
The American Naturalist
,
154
(
2
),
111
128
.
36
Miller
,
J. F.
, &
Banzhaf
,
W.
(
2003
).
Evolving the program for a cell: From French flags to Boolean circuits
. In
S.
Kumar
&
P. J.
Bentley
(Eds.),
On growth, form and computers
(pp.
278
301
).
Waltham, MA
:
Academic Press
.
37
von Neumann
,
J.
, &
Burks
,
A. W.
(
1966
).
Theory of self-reproducing automata
. Edited and completed by
A. W.
Burks
.
Champaign
:
Illinois University Press
.
38
Nichele
,
S.
, &
Tufte
,
G.
(
2010
).
Trajectories and attractors as specification for the evolution of behaviour in cellular automata
. In
G.
Fogel
(Ed.),
2010 IEEE Congress on Evolutionary Computation (CEC)
(pp.
4441
4448
).
Washington
:
IEEE Press
.
39
Nichele
,
S.
, &
Tufte
,
G.
(
2012
).
Genome parameters as information to forecast emergent developmental behaviors
. In
J.
Durand-Lose
&
N.
Jonoska
(Eds.),
Unconventional computation and natural computation
(pp.
186
197
).
London
:
Springer
.
40
Nichele
,
S.
, &
Tufte
,
G.
(
2013
).
Evolution of incremental complex behavior on cellular machines
. In
P.
Liò
,
O.
Miglino
,
G.
Nicosia
,
S.
Nolfi
, &
M.
Pavone
(Eds.),
Advances in artificial life, ECAL
,
Vol. 12
(pp.
63
70
).
Cambridge, MA
:
MIT Press
.
41
Nolfi
,
S.
, &
Floreano
,
D.
(
2000
).
Evolutionary robotics: The biology, intelligence, and technology of self-organizing machines
.
Cambridge, MA
:
MIT Press
.
42
Ohno
,
S.
(
1970
).
Evolution by gene duplication
.
New York
:
Springer-Verlag
.
43
Pan
,
Z.
, &
Reggia
,
J. A.
(
2010
).
Computational discovery of instructionless self-replicating structures in cellular automata
.
Artificial Life
,
16
(
1
),
39
63
.
44
Pross
,
A.
(
2005
).
On the emergence of biological complexity: Life as a kinetic state of matter
.
Origins of Life and Evolution of Biospheres
,
35
(
2
),
151
166
.
45
Rothlauf
,
F.
, &
Goldberg
,
D. E.
(
2003
).
Redundant representations in evolutionary computation
.
Evolutionary Computation
,
11
(
4
),
381
415
.
46
Sekanina
,
L.
, &
Bidlo
,
M.
(
2005
).
Evolutionary design of arbitrarily large sorting networks using development
.
Genetic Programming and Evolvable Machines
,
6
(
3
),
319
347
.
47
Shackleton
,
M.
,
Shipman
,
R.
, &
Ebner
,
M.
(
2000
).
An investigation of redundant genotype-phenotype mappings and their role in evolutionary search
. In
A.
Zalzala
(Ed.),
Proceedings of the 2000 Congress on Evolutionary Computation
(pp.
493
500
).
Washington
:
IEEE Press
.
48
Shipman
,
R.
(
1999
).
Genetic redundancy: Desirable or problematic for evolutionary adaptation?
In
A.
Dobnikar
,
N.
Steele
,
D.
Pearson
, &
R.
Albrecht
(Eds.),
Proceedings of the 1999 International Conference on Artificial Neural Nets and Genetic Algorithms
(pp.
337
344
).
Vienna
:
Springer
.
49
Shipman
,
R.
,
Shackleton
,
M.
,
Ebner
,
M.
, &
Watson
,
R.
(
2000
).
Neutral search spaces for artificial evolution: A lesson from life
. In
M.
Bedau
,
J.
McCaskill
,
N.
Packard
, &
S.
Rasmussen
(Eds.),
Proceedings of the Seventh International Conference on Artificial Life
(pp.
162
169
).
Cambridge, MA
:
MIT Press
.
50
Stanley
,
K. O.
, &
Miikkulainen
,
R.
(
2003
).
Achieving high-level functionality through evolutionary complexification
. In
H.
Lipson
,
E.
Antonsson
, &
R.
Koza
(Eds.),
Proceedings of the AAAI-2003 Spring Symposium on Computational Synthesis
(pp.
226
232
).
Stanford, CA
:
AAAI Press
.
51
Stanley
,
K. O.
, &
Miikkulainen
,
R.
(
2003
).
A taxonomy for artificial embryogeny
.
Artificial Life
,
9
(
2
),
93
130
.
52
Stanley
,
K. O.
, &
Miikkulainen
,
R.
(
2004
).
Competitive coevolution through evolutionary complexification
.
Journal of Artificial Intelligence Research
,
21
,
63
100
.
53
Steel
,
M.
, &
Penny
,
D.
(
2010
).
Origins of life: Common ancestry put to the test
.
Nature
,
465
(
7295
),
168
169
.
54
Taylor
,
J. S.
, &
Raes
,
J.
(
2004
).
Duplication and divergence: The evolution of new genes and old ideas
.
Annual Review of Genetics
,
38
(
1
),
615
643
.
55
Theobald
,
D. L.
(
2010
).
A formal test of the theory of universal common ancestry
.
Nature
,
465
(
7295
),
219
222
.
56
Tufte
,
G.
(
2008
).
Discovery and investigation of inherent scalability in developmental genomes
. In
G.
Hornby
,
L.
Sekanina
, &
P. C.
Haddow
(Eds.),
Evolvable systems: From biology to hardware
(pp.
189
200
).
Berlin, Heidelberg
:
Springer
.
57
Tufte
,
G.
(
2008
).
Evolution, development and environment toward adaptation through phenotypic plasticity and exploitation of external information
. In
S.
Bullock
,
J.
Noble
,
R. A.
Watson
, &
M. A.
Bedau
(Eds.),
Artificial life XI
(pp.
624
631
).
Cambridge, MA
:
MIT Press
.
58
Tufte
,
G.
(
2008
).
Phenotypic, developmental and computational resources: Scaling in artificial development
. In
C.
Ryan
&
M.
Keijzer
(Eds.),
Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation
(pp.
859
866
).
New York
:
ACM
.
59
Tufte
,
G.
, &
Nichele
,
S.
(
2011
).
On the correlations between developmental diversity and genomic composition
. In
N.
Krasnogor
&
P. L.
Lanzi
(Eds.),
Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation
(pp.
1507
1514
).
New York
:
ACM
.
60
Tufte
,
G.
, &
Thomassen
,
J.
(
2006
).
Size matters: Scaling of organism and genomes for development of emergent structures
. In
M.
Cattolico
(Ed.),
Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation
(
CODESOAR
).
New York
:
ACM
.
61
Venter
,
J. C.
,
Adams
,
M. D.
,
Myers
,
E. W.
,
Li
,
P. W.
,
Mural
,
R. J.
,
Sutton
,
G. G.
,
Smith
,
H. O.
,
Yandell
,
M.
,
Evans
,
C. A.
,
Holt
,
R. A.
,
Gocayne
,
J. D.
,
Amanatides
,
P.
,
Ballew
,
R. M.
,
Huson
,
D. H.
,
Wortman
,
J. R.
,
Zhang
,
Q.
,
Kodira
,
C. D.
,
Zheng
,
X. H.
,
Chen
,
L.
,
Skupski
,
M.
,
Subramanian
,
G.
,
Thomas
,
P. D.
,
Zhang
,
J.
,
Gabor Miklos
,
G. L.
,
Nelson
,
C.
,
Broder
,
S.
,
Clark
,
A. G.
,
Nadeau
,
J.
,
McKusick
,
V. A.
,
Zinder
,
N.
,
Levine
,
A. J.
,
Roberts
,
R. J.
,
Simon
,
M.
,
Slayman
,
C.
,
Hunkapiller
,
M.
,
Bolanos
,
R.
,
Delcher
,
A.
,
Dew
,
I.
,
Fasulo
,
D.
,
Flanigan
,
M.
,
Florea
,
L.
,
Halpern
,
A.
,
Hannenhalli
,
S.
,
Kravitz
,
S.
,
Levy
,
S.
,
Mobarry
,
C.
,
Reinert
,
K.
,
Remington
,
K.
,
Abu-Threideh
,
J.
,
Beasley
,
E.
,
Biddick
,
K.
,
Bonazzi
,
V.
,
Brandon
,
R.
,
Cargill
,
M.
,
Chandramouliswaran
,
I.
,
Charlab
,
R.
,
Chaturvedi
,
K.
,
Deng
,
Z.
,
Francesco
,
V. D.
,
Dunn
,
P.
,
Eilbeck
,
K.
,
Evangelista
,
C.
,
Gabrielian
,
A. E.
,
Gan
,
W.
,
Ge
,
W.
,
Gong
,
F.
,
Gu
,
Z.
,
Guan
,
P.
,
Heiman
,
T. J.
,
Higgins
,
M. E.
,
Ji
,
R.-R.
,
Ke
,
Z.
,
Ketchum
,
K. A.
,
Lai
,
Z.
,
Lei
,
Y.
,
Li
,
Z.
,
Li
,
J.
,
Liang
,
Y.
,
Lin
,
X.
,
Lu
,
F.
,
Merkulov
,
G. V.
,
Milshina
,
N.
,
Moore
,
H. M.
,
Naik
,
A. K.
,
Narayan
,
V. A.
,
Neelam
,
B.
,
Nusskern
,
D.
,
Rusch
,
D. B.
,
Salzberg
,
S.
,
Shao
,
W.
,
Shue
,
B.
,
Sun
,
J.
,
Wang
,
Z. Y.
,
Wang
,
A.
,
Wang
,
X.
,
Wang
,
J.
,
Wei
,
M.-H.
,
Wides
,
R.
,
Xiao
,
C.
,
Yan
,
C.
,
Yao
,
A.
,
Ye
,
J.
,
Zhan
,
M.
,
Zhang
,
W.
,
Zhang
,
H.
,
Zhao
,
Q.
,
Zheng
,
L.
,
Zhong
,
F.
,
Zhong
,
W.
,
Zhu
,
S. C.
,
Zhao
,
S.
,
Gilbert
,
D.
,
Baumhueter
,
S.
,
Spier
,
G.
,
Carter
,
C.
,
Cravchik
,
A.
,
Woodage
,
T.
,
Ali
,
F.
,
An
,
H.
,
Awe
,
A.
,
Baldwin
,
D.
,
Baden
,
H.
,
Barnstead
,
M.
,
Barrow
,
I.
,
Beeson
,
K.
,
Busam
,
D.
,
Carver
,
A.
,
Center
,
A.
,
Cheng
,
M. L.
,
Curry
,
L.
,
Danaher
,
S.
,
Davenport
,
L.
,
Desilets
,
R.
,
Dietz
,
S.
,
Dodson
,
K.
,
Doup
,
L.
,
Ferriera
,
S.
,
Garg
,
N.
,
Gluecksmann
,
A.
,
Hart
,
B.
,
Haynes
,
J.
,
Haynes
,
C.
,
Heiner
,
C.
,
Hladun
,
S.
,
Hostin
,
D.
,
Houck
,
J.
,
Howland
,
T.
,
Ibegwam
,
C.
,
Johnson
,
J.
,
Kalush
,
F.
,
Kline
,
L.
,
Koduru
,
S.
,
Love
,
A.
,
Mann
,
F.
,
May
,
D.
,
McCawley
,
S.
,
McIntosh
,
T.
,
McMullen
,
I.
,
Moy
,
M.
,
Moy
,
L.
,
Murphy
,
B.
,
Nelson
,
K.
,
Pfannkoch
,
C.
,
Pratts
,
E.
,
Puri
,
V.
,
Qureshi
,
H.
,
Reardon
,
M.
,
Rodriguez
,
R.
,
Rogers
,
Y.-H.
,
Romblad
,
D.
,
Ruhfel
,
B.
,
Scott
,
R.
,
Sitter
,
C.
,
Smallwood
,
M.
,
Stewart
,
E.
,
Strong
,
R.
,
Suh
,
E.
,
Thomas
,
R.
,
Tint
,
N. N.
,
Tse
,
S.
,
Vech
,
C.
,
Wang
,
G.
,
Wetter
,
J.
,
Williams
,
S.
,
Williams
,
M.
,
Windsor
,
S.
,
Winn-Deen
,
E.
,
Wolfe
,
K.
,
Zaveri
,
J.
,
Zaveri
,
K.
,
Abril
,
J. F.
,
Guigó
,
R.
,
Campbell
,
M. J.
,
Sjolander
,
K. V.
,
Karlak
,
B.
,
Kejariwal
,
A.
,
Mi
,
H.
,
Lazareva
,
B.
,
Hatton
,
T.
,
Narechania
,
A.
,
Diemer
,
K.
,
Muruganujan
,
A.
,
Guo
,
N.
,
Sato
,
S.
,
Bafna
,
V.
,
Istrail
,
S.
,
Lippert
,
R.
,
Schwartz
,
R.
,
Walenz
,
B.
,
Yooseph
,
S.
,
Allen
,
D.
,
Basu
,
A.
,
Baxendale
,
J.
,
Blick
,
L.
,
Caminha
,
M.
,
Carnes-Stine
,
J.
,
Caulk
,
P.
,
Chiang
,
Y.-H.
,
Coyne
,
M.
,
Dahlke
,
C.
,
Mays
,
A. D.
,
Dombroski
,
M.
,
Donnelly
,
M.
,
Ely
,
D.
,
Esparham
,
S.
,
Fosler
,
C.
,
Gire
,
H.
,
Glanowski
,
S.
,
Glasser
,
K.
,
Glodek
,
A.
,
Gorokhov
,
M.
,
Graham
,
K.
,
Gropman
,
B.
,
Harris
,
M.
,
Heil
,
J.
,
Henderson
,
S.
,
Hoover
,
J.
,
Jennings
,
D.
,
Jordan
,
C.
,
Jordan
,
J.
,
Kasha
,
J.
,
Kagan
,
L.
,
Kraft
,
C.
,
Levitsky
,
A.
,
Lewis
,
M.
,
Liu
,
X.
,
Lopez
,
J.
,
Ma
,
D.
,
Majoros
,
W.
,
McDaniel
,
J.
,
Murphy
,
S.
,
Newman
,
M.
,
Nguyen
,
T.
,
Nguyen
,
N.
,
Nodell
,
M.
,
Pan
,
S.
,
Peck
,
J.
,
Peterson
,
M.
,
Rowe
,
W.
,
Sanders
,
R.
,
Scott
,
J.
,
Simpson
,
M.
,
Smith
,
T.
,
Sprague
,
A.
,
Stockwell
,
T.
,
Turner
,
R.
,
Venter
,
E.
,
Wang
,
M.
,
Wen
,
M.
,
Wu
,
D.
,
Wu
,
M.
,
Xia
,
A.
,
Zandieh
,
A.
, &
Zhu
,
X.
(
2001
).
The sequence of the human genome
.
Science
,
291
(
5507
),
1304
1351
.
62
West-Eberhard
,
M. J.
(
2003
).
Developmental plasticity and evolution
.
New York
:
Oxford University Press
.
63
Wolpert
,
L.
,
Tickle
,
C.
, &
Arias
,
A. M.
(
1998
).
Principles of development
.
Oxford, UK
:
Oxford University Press
.
64
Wray
,
G. A.
(
2007
).
The evolutionary significance of cis-regulatory mutations
.
Nature Reviews Genetics
,
8
(
3
),
206
216
.
65
Zhang
,
J.
(
2003
).
Evolution by gene duplication: An update
.
Trends in Ecology & Evolution
,
18
(
6
),
292
298
.

Appendix 1 – Figure Labeling

This appendix describes the labeling template and abbreviations used for the following figures: 10, 11, 13, 15, and 17.

  • fu = full evolution function;

  • gr = growing evolution function;

  • re = restricted evolution function (th = threshold, number of available genes in the fixed restricted representation).

  • al = target attractor length;

  • st = number of cell states;

  • gs = geometry size (the size of the CA grid world where organisms are developed, x-by-x cells).

Example 1. fu_al200 = Full evolution function, target attractor length of 200 development steps.

Example 2. re_al20_th10 = Restricted evolution function with maximum 10 genes, target attractor of 20 development steps.

Example 3. Gr_al7_st6 = growing evolution function, target attractor length of 7 development steps, 6 possible states per cell.

Example 4. Gr_al10_gs16 = growing evolution function, target attractor length of 10 development steps, cellular automaton geometry of 16 by 16 cells.

Author notes

Contact author.

∗∗

Norwegian University of Science and Technology, Department of Computer and Information Science, Sem Selandsvei 7-9, 7491, Trondheim, Norway. E-mail: nichele@idi.ntnu.no (S.N.); andregis@stud.ntnu.no (A.G.); gunnart@idi.ntnu.no (G.T.)