The Deva Project

The Deva Project is an experiment in Artificial Embryogeny (AE). Deva is a family of algorithms, capable of mapping from genotype to phenotype in a manner inspired by biological embryogenesis. The growth process looks somewhat like this: example (mp4, gif); another example (mp4, gif).

illustration of deva growth

Illustration of deva growth. A representation is a program, telling individual cells what to do over time. The organism grows from a single cell into an organism.

In an effort to make our results more meaningful, that is, to better measure the ability of an artificial metaphor of development to exploit its desirable properties, we created a design-based interpretation of our organisms. Organisms are mapped to plane trusses, a classic problem from engineering design. A plane truss is good if, among other factors, it can support its shape under external force.

Illustration of the conversion from a Deva image to a plane truss

Illustration of the conversion from a Deva image to a plane truss.

An exemplar plane truss from early experiments

An exemplar plane truss from early experiments.

Indeed, we can evolve program which are good at growing trusses. They look somewhat like this: pyramid example (mp4, gif); or weird example (mp4, gif).

We showed that heuristics can be included at the growth stage. For instance, for the truss problem, forcing the system to grow symmetrically (as opposed to allowing the system to choose which direction to grow in at each stage) allowed for better and more efficient trusses.

Next, we tried to exploit the adaptive stage of growth for further control over the organism. We were particularly inspired by the ability of natural organisms to "add information" to their phenotype from their external environment. In this case, we specified an extrnal geometric environment and evolved programs to grow trusses in this new context. It looks something like this: environmental growth (gif)

Much like in the Bluenome project, we showed that trusses would scale to new sizes. That is, if we chose a genome evolved to grow at, say, 40 m, we could regrow that truss at 30 m or 60 m, and the resulting truss would retain much of its fitness.

More interestingly, we found a few genomes which were capable of growing in any of the environmental configurations. That is, a genome evolved to grow in one particular environment was, without modification, able to re-express itself in many different environmental configurations. Here's one we named Zelig, after the Woody Allen character: Zelig in original environment (gif), Zelig in different environment (gif)

Zelig. Click to see larger version.

Zelig: a single genome expressed in several different environments. This genome shows a sort of artificial polymorphism, where it can assume many different shapes and sizes with high fitness. Click to see larger version

A short introduction to the general Deva approach, and some evolved trusses can be found in our SSCI 2007 paper. An example of the phenotypic robustness of the evolved organisms can be seen in our GECCO 2007. A ginormous synthesized version of these materials and others (TCAs and complexity) can be found in my Ph.D. thesis.