Evolving three-dimensional objects with a generative encoding inspired by developmental biology

This paper introduces an algorithm for evolving 3D objects with a generative encoding that abstracts how biological morphologies are produced. Evolving interesting 3D objects is useful in many disciplines, including artistic design (e.g. sculpture), engineering (e.g. robotics, architecture, or product design), and biology (e.g. for investigating morphological evolution). A critical element in evolving 3D objects is the representation, which strongly influences the types of objects produced. In 2007 a representation was introduced called Compositional Pattern Producing Networks (CPPN), which abstracts how natural phenotypes are generated. To date, however, the ability of CPPNs to create 3D objects has barely been explored. Here we present a new way to create 3D objects with CPPNs. Experiments with both interactive and target-based evolution demonstrate that CPPNs show potential in generating interesting, complex, 3D objects. We further show that changing the information provided to CPPNs and the functions allowed in their genomes biases the types of objects produced. Finally, we validate that the objects transfer well from simulation to the real-world by printing them with a 3D printer. Overall, this paper shows that evolving objects with encodings based on concepts from biological development can be a powerful way to evolve complex, interesting objects, which should be of use in fields as diverse as art, engineering, and biology. Motivation and Previous Work The diversity, complexity, and function of natural morphologies is awe-inspiring. Evolution has created bodies that can fly, run, and swim with amazing agility. It would be desirable to harness the power of evolution to create synthetic physical designs and morphologies. Doing so would benefit a variety of fields. For example, artists, architects and engineers could evolve sculptures, buildings, product designs, and sophisticated robots. Evolution should be especially helpful in the design of complex objects with many interacting parts made of non-linear materials. In such challenging problem domains, evolution excels while human intuition is limited. Being able to evolve sophisticated morphologies also furthers biological research because it enables the investigation of how and why certain natural designs were produced. Evolving 3D objects is thus worthwhile both as a Figure 1: Examples of evolved objects that were transferred to reality via a 3D printer. basic science and for its innumerable potential applications. This paper describes how 3D shapes can be evolved and then transferred to reality via 3D printing technology (Figure 1). Previous research in digital morphological evolution has typically involved encodings that were either highly biologically detailed, or highly-abstract with less biological accuracy. The former camp frequently simulates the low-level processes that govern biological development, such as the diffusing morphogen chemicals and proteins that determine the identity of embryonic cells (Bongard and Pfeifer 2001, Eggenberger 1997, Miller 2004). While this approach facilitates studying the mechanisms of developmental biology, the computational cost of simulating chemistry in such detail greatly limits the complexity of the evolved phenotypes. The most complex forms typically evolved in such systems are simple geometric patterns (such as three bands) (Miller 2004) or groups of shapes resembling the earliest stages of animal development (Eggenberger 1997). The second camp employs high-level abstractions that enable the evolution of more elaborate forms with many parts, but these abstractions tend not to reflect the way that organisms actually develop (Wolpert and Tickle 2010, Bentley 1996). An example is Lindenmayer Systems (L-Systems), which iteratively replace symbols in strings with other symbols until a termination criteria is reached (Lindenmayer 1968, Hornby et al. 2003). While L-Systems can reproduce a wide variety of organismal shapes, especially those of branching plants, they do not model plant developmental processes (Wolpert and Tickle 2010). Another example is the work of Sims (1994), who evolved morphologies that resembled some biological creatures, although with an abstract encoding based on parameterized recursion that does not resemble natural developmental processes (Sims 1994). A third option is possible, wherein a high-level abstraction is based on the developmental processes that give rise to natural forms. An example of this approach is Compositional Pattern Producing Networks (CPPNs) (Stanley 2007), which are used to evolve 3D objects in this paper and are described in Methods. Two groups have previously evolved 3D objects with CPPNs, although neither conducted an openended exploration of 3D objects. One group evolved CPPN objects that were composed of variable-sized spheres and were evaluated on two tasks: falling (Auerbach and Bongard 2010b) or moving rapidly (Auerbach and Bongard 2010a). Most of the evolved forms resembled clubs. A second group evolved soft-bodied robots to move quickly (Hiller and Lipson 2010). These studies demonstrate that CPPNs can create functional shapes, but leave open the question of what types of 3D objects CPPNs can produce with fewer constraints and without specific objectives. 2D pictures are evolved with CPPNs on picbreeder.org, where humans perform selection (Secretan et al. 2011). The complexity and natural appearance of the resulting images often support claims regarding the legitimacy of CPPNs as an abstraction of biological development (Stanley 2007). A demonstration in 3D would significantly strengthen these claims, however, because the natural world is 3D. It is possible that CPPNs are unable to frequently make sensible forms with the added difficulty of another dimension, and when objects must be one contiguous unit (which aids in transfers to reality). A recent paper by Bansagi Jr et al. (Science 2011) highlights the need to verify that generative encodings that produce complex patterns in 2D also can do so in 3D. By evolving CPPN objects in the natural 3D setting, this paper conducts a critical test of the hypothesis that generative encodings based on geometric abstractions of development capture some of the complexity-generating power of natural morphological development. Doing so also provides a visually intuitive testbed for studying how variants of such generative encodings behave. It also reveals the utility of CPPNs as a representation for 3D object design.