evolve — Evolved Virtual Creatures
About

A re-implementation of Karl Sims' Evolved Virtual Creatures (SIGGRAPH '94). Each creature grows from a directed-graph genotype: nodes describe blocks, joints and local neural circuits, and connections place child blocks (with recursion, reflection and terminal-only flags). Brains combine joint-angle, contact and photo sensors with neurons computing sums, products, thresholds, memories and oscillators; effectors apply torques bounded by the cross-section of the parts they join.

The population is tested in parallel Web Workers with the Rapier physics engine. The best fifth survive, and offspring come from mutation (40%), crossover (30%) and grafting (30%), in proportion to fitness. Drag to orbit, scroll to zoom. Progress is saved in this browser for each behaviour.

Evolution
Behaviour
Run
Generation
0
Best fitness
—
Survivor mean
—
Workers
—
Throughput
—
Creatures

Top of population

    Champions

      Genotype
      connectionreflectedterminal-only×n recursive limit