Foundation
Evolving Virtual Life
Evolutionary algorithms
Physics based simulation
Kenneth Holmlund,
[email protected] VRlab/HPC2N, Umeå University
Scientific (what is life, evolution, GA, etc.?) Engineering (evolutionary and implicit design) Art and entertainment (beautiful images, animations, interactivity)
Cult (watch out!)
Expectations are very high – but not that incredibly much has happened since 1994 when the area was born! As usual, short term expectations unrealistic, while long term effect and under estimated.
Sims’ SIGGRAPH 1994 Video
Rigid body dynamics with contacts, joints, constraints and friction
Sensors and effectors
Control mechanism
Visualization and computer graphics (and physical implementation)
Why, what, where?
Language, digital DNA, hyperspace for optimization
Real-time and/or off-line rendering
Requires quite a machinery!
Karl Sims “Evolving Virtual Creatures”
SIGGRAPH 1994, Alife IV Proceedings 1994 Was working for Thinking Machines at the time. Several previous publications in genetic art. Inspired by e.g. Koza (who proposed an L-system like methodology, with repeating structures)
Sim’s method and results
Two main papers. First on basic method and different selections (previous video). Second on coevolution, i.e. competing creatures.
"Evolving Virtual Creatures" , K.Sims, Computer Graphics (Siggraph '94 Proceedings), July 1994, pp.15-22
"Evolving 3D Morphology and Behavior by Competition“, K.Sims, Artificial Life IV Proceedings, ed.by Brooks & Maes, MIT Press, 1994, pp.28-39.
1
System representation
Directed graph for representation
Genotype (directed graph)
Starting at root node Nodes
Phenotype (hierarchy of 3d parts)
Information
Control Brain is also a directed graph of neurons that can do sum, product, divide, sum-threshold, greater than, sogn-of, abs, max, min, cos, sin, oscillate, etc for input/output processing
Dimensions Joint-type Joint-limits Recursive-limit Neurons Connections Child Node Position Orientation Scale Reflection
Combining morphology and control Applied as forces and torques
Joint angle Contacts (self/environment) Photo sensors
Combining morphology and control
Nested graph Blocks of neural circuitry are replicated with each instanced part (otherwise phase space wille be too big and unconstrained)
Physical simulation
Rigid-body simulation
Collision detection (bounding box hierarchies) Collision response (projection at high v + penalty at low v) Contacts Friction and viscosity Forces Torques Mass and inertia Featherstone’s algorithm
Creatures exploit all bugs! This includes violated conservation of energy and momentum, as well as numerical errors! (self slapping, rotating paddle, falling over on box, etc.)
2
Selection – genetic pressure
Behaviour
Swimming ”Walking” Jumping Follow
Fitness function computed at each step. Interactive selection based on e.g. aesthetics
Evolving the system
Evolving the graph (”DNA”)
Compute survival ratio Compute fitness value and select the fittest Reproduce Evolve and recompute fitness value etc.
Mating graphs
Internal node parameters Add random node Connection parameters altered randomly (small) Add/remove connections randomly Remove unconnected elements Mutation frequency for each parameter type
Crossover point for copying From parents to child.
Scale mutation frequency with inverse graph size (otherwise evolution easily becomes spurious)
Running the simulation
Minimalistic, random Pre-evolved creatures (also based on completely different fitness functions) User designed creatures
Directed graph mutation
Start configuration
Connection Machine CM-5 with 32 processors – 3 Hours
Population of 300 Survival ratio 1/5 100 Generations 1-5 time steps per frame of 1/30 s
A node of a parent connected to a node of the other parent.
Method choosen randomly for each child. 40% asexual 30% crossover 30% grafting
Results
Homogeneity Swimmers Paddlers Tail-waggers Walkers Lizard-like Pushers/Pullers Hoppers Followers Steering Fins Paddlers
3
Co-evolution
Co-evolution
Second paper (Alife IV) Two creatures compete about possesion about a block
Co-evolution
Co-evolution
Co-evolution
Follow up by Tom Ray
Zoology professor Lots’a spare time in the jungle… Developed Tierra (http://www.his.atr.jp/~ray/tierra/) Did Alife 1990-2001 (digital evolution) Virtual Aesthetic Creatures project
Variations in selection pressure (aesthetic, emotional, empathetic. Love, …etc) Prettier rendering and commercial movie Based on Mathengine 1.x physics toolkit (co-developed by Claude Lacoursiere that works with us). See http://www.his.atr.jp/~ray/ Software: VirtualLife (still works, but needs Mathengine license file. Ask me if you need help fixing it..).
4
Ray’s Creatures
Conclusions
How far can we take this? Not entirely understood Robotics researchers have created simulations that are based on real self-repeating and varying building blocks, such that the final result actually can be manufactured. Very interesting, but not really conclusive. Marriages between computing science, physics and biology are fruitful! It seems that not many are able to integrate evolutionary algorithms, robust physics based simulation and computer graphics – and at the same time also ask the relevant scientific questions.
For some recent research in the area see the work of e.g. Chris Adami: http://www.krl.caltech.edu/~adami/ and Richard Lenski: http://www.msu.edu/user/lenski/ They have published lots of ground breaking results, but as far as I know nothing where they also do physics simulation.
Also see this book: Evolutionary Robotics - The Biology, Intelligence, and Technology of SelfOrganizing Machines Stefano Nolfi and Dario Floreano http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=3684
Some recent examples following up Sims’ work: http://163.152.22.77/shim/research.htm Tim Taylor and Colm Massey at Mathengine also did some follow up on Sims’ work: http://homepages.inf.ed.ac.uk/timt/demos/mathengine/index.html
5