Evolved Virtual Creatures

A brief summary of Evolved Virtual Creatures by Karl Sims.

Creatures are made and evolved to perform simple tasks. These include jumping, swimming or following. "the optimization determines the creatures morphologies as well as their control systems" i.e. they have both a physical and mental representation in DNA.

Physically they are made of cuboid blocks of varying dimensions with joints connecting them. Each block can have sensors or effectors. The effectors are simply a force applied to a specific joint causing motion. The sensors include the angle of a joint, photo-detectors or contact sensors.

This physical structure is stored as a directed graph. E.g. if the body node was connected to itself 10 times it would make a snake like creature. Each node of the graph has its own brain so that body parts can learn to have their own controls. In addition to that there is the centralized control which can link any of the parts to any other.

I would love to see a distributed computing version of this program. You could imagine each computer as a segregated island (galapagos island) where different species can develop. By downloading new creatures from other computers you can see how they cope in this new habitat.

To make it more interesting as an end user it would be good to be able to direct the evolution. Give the control to treat them like pets: providing training grounds, change food scarcity, introduce or remove predators.

If that gained interest as a free version then the paid one could be the genetics lab where you can make your own creatures. Additional sensors and effectors could be added (and sold) and the spread through the population (both intro and inter island/computer) would be a wonderful piece of research.

Blocks of brains could be made that perform certain tasks and introduced in the way that new sensors and effectors are added. To reduced computational load thinking (i.e. computation) could use up energy.