Herself's Artificial Intelligence

Humans, meet your replacements.

Evolving 3d virtual creature software and papers

I’ve been catching up reading AI papers on my Sony Reader, it’s very nice to have all these books and papers with you all the time, and I ran across a paper on 3d creatures that evolve and battle. The software is open source and there is extensive information explaining the project.

Evolving Virtual Creatures

I evolve virtual creatures. That is, instead of designing the creatures myself, I let Darwinian evolution do the work for me. Starting with a bunch of completely random creatures, I evaluate them, select the “best” (where the definition of “best” depends on what you are trying to obtain: distance covered, outcome of a fight, etc.), allow these “good” creatures to “reproduce” (that is, generate new creatures based on recombination and mutations of these “good” creatures), and start this cycle again with the new population. After a while, increasingly efficient behaviours appear spontaneously.

Both the morphology (body) and behaviour (neural network) of the creatures are fully evolved: I only specify the evaluation function (that is, how to determine the “score” of a creature), and evolution takes care of the design, slowly turning random creatures into highly efficient machines.

This research builds upon the seminal work of Karl Sims; in fact, this was the first successful reimplementation of Karl Sims’ system. I improved the genetic encoding and the developmental system. I also chose to use standard, McCulloch-Pitts neurons instead of the complex functional neurons used by Sims (which makes the problem harder, but more interesting: creatures can’t rely on complex neurons to directly provide useful behaviours, they need come up with their own coordinated neural systems).

I also managed to evolve “fighting” creatures: creatures evolve to smash each other out. I believe this is a first (previous attempts used simplistic forms of “combat”).