You are on page 1of 12

Evolving Virtual

Creatures
By: Group-5

Karl Sims
Thinking Machines Corporation 245 First
Street, Cambridge, MA 02142
Introduction

● FOCUS ON CREATING VIRTUAL CREATURES IN SIMULATED 3D WORLD.

● DIFFERENT FITNESS EVOLUTION FOR DIFFERENT ENVIRONMENT LIKE

LAND,AIR,WATER ETC

● DIRECTED GRAPHS FOR MORPHOLOGY AND NEURAL CIRCUITS.

● GENETIC ALGORITHM & DARWIN’S “SURVIVAL OF THE FITTEST”

● GENOTYPE

● PHENOTYPE
Creature Morphology

● DIRECTED GRAPH OF NODES AND CONNECTIONS.


● EACH GRAPH CONTAIN DEVELOPMENT INSTRUCTION FOR
GROWING CREATURES.
● NODES CAN BE CONNECTED TO THEMSELVES OR IN
CYCLES TO FORM FRACTURE LIKE STRUCTURES.
● EACH NODE CONTAIN INFO. OF RIGID BODY PART.
● JOINTS ARE MADE FOR RELATIVE MOTION.
● DIFFERENT JOINTS : RIGID,REVOLVE,TWIST,BEND-TWIST
ETC.
Creature Control
● VIRTUAL BRAIN THAT ACCEPT
SENSOR VALUES AND PROVIDES
OUTPUT EFFECTOR VALUES.
● WE CAN ASSIGN VALUES TO THE
EFFECTOR SO THAT IT MAY HAVE AN
EFFECT OF PUSH OR PULL. ● SENSORS: JOINT ANGLE,
● EFFECTOR CONTAIN A CONTACT,PHOTOSENSORS
● NEURONS
CONNECTION TO A NEURON OR A
SENSOR FROM WHICH TO RECEIVE ● EFFECTORS
THE VALUE.
Combining Morphology and Control
The genotype descriptions of virtual brains and the actual phenotype brains are both directed
graphs of nodes and connections. The nodes contain the sensors, neurons, and effectors, and the
connections define the flow of signals between these nodes.

Evolved nested graph genotype


● The outer graph in bold describes a creatures
morphology.
● The inner graph describes its neural circuitry.
● J0 and J1 are joint angle sensors, and E0 and E1 are
effector outputs.
● Saw,wav,itp,mem,abs are activation functions of neural
nodes(2 types).
● Dashed node contains centralised neurons that are not
associated with any part.
The phenotype “brain”
generated from the
evolved genotype

Phenotype morphology generated


from the evolved genotype

The effector outputs of


this control system
cause paddling motions
in the four flippers of the
Phenotype morphology.
Physical simulation
There are several components of the physical simulation used in this work:

Articulated body dynamics: Collision Response: Friction:


Featherstone’s recursive It is accompanied by a hybrid model using This is applied when the
method is used to calculate the both impulses and spring forces. character is walking/
accelerations from velocities At high velocity, instantaneous impulse following on the ground.
and external forces of each forces are used.
hierarchy of connected rigid At low velocities, springs are used to
parts. simulate collisions. Viscous Fluid Effect:
A viscosity effect is used
for the simulations in
Numerical Integration: Collision Detection: underwater environment.
The resulting motion from The shapes of parts are represented here For each exposed moving
these accelerations and is by simple rectangular solids. Bounding surface, a viscous force
performed by box hierarchies are used to reduce the resists the normal
Runge-Kutta-Fehlberg number of collision tests between parts. component of its velocity,
method(4th order Pairs whose world-space bounding boxes proportional to its surface
Runge-Kutta). The adaptive intersect are tested for penetrations, and area and normal velocity
timestep typically 1-5 steps per collisions with a ground plane are also magnitude.
1/30 second. tested if one exists.
Behaviour Selection
Swimming:
After a certain duration of virtual time (perhaps 10 seconds),
a fitness value is assigned that corresponds to the success Simulation of water
level of that behavior. If a creature has a high fitness relative environment is achieved by
to the rest of the population, it will be selected for survival and turning off gravity and adding
reproduction as described in the next section. the viscous water resistance
effect. Swimming speed is
Walking: Following: used as the fitness value.

Indicates any form of land Adaptively follow a light


locomotion. This environment is source. Photosensors are
simulated by adding gravity, enabled, so effector output
forces and resulting Jumping:
turning off viscous water
resistance and adding a static behaviour can depend on
relative direction of the light Jumping behaviour can be
ground plane with friction. selected for by measuring
Speed is used as the selection source to the creature.
Average speed with which it the maximum height above
criteria but vertical component the ground of the lowest part
of velocity is ignored. moves towards the source
are taken as fitness value. of the creature.
Creature Evolution
A new directed graph can be produced by two mating methods, or asexually by using only
mutations.

Mutating Directed Graphs


● The internal parameters of each node are subjected to possible a
alterations and then values are clamped to their legal bounds.

A new random node is added to the graph. This allows the


complexity of the graph to grow as an evolution proceeds.

New random connections are added and existing ones are


removed. Unconnected elements are garbage collected.

Mutation of nested directed graphs, is performed by first mutating the outer graph
and then mutating the inner layer of graphs. The inner graphs are mutated last
because legal values for some of their parameters (inter-node neural input sources)
can depend on the topology of the outer graph.
Mating Directed Graphs

This permits features to evolve independently and later be merged into a single individual. Two
different methods for mating directed graphs are presented.

1. Crossover operation 2. Grafting


Two genotypes are grafted together by
The nodes of two parents connecting a node of one parent to a node of
are each aligned in a row, another.
with one or more
crossover points
determining when the
copying source should
switch to the other
parent.

Offspring from matings are sometimes subjected to mutations afterwards, but with reduced mutation
frequencies. As this cycle of variation and selection continues, the population is directed towards creatures
with higher and higher fitness.
Results
Evolutions were performed for each of the behavior selection methods:-
WALKING
LIGHT FOLLOWING SWIMMING - Shuffling or hobbling at high
-Simple paddling and tail speeds.
-Swim or walk towards a light - Lizard-like gaits using corners.
wagging creatures.
source. -Push or pull themselves along,
-Creatures with specialized
-In the water environment, steering inchworm style.
sculling appendages &
fins that turn towards the light using - Leg-like appendages to
flippers.
photo sensor inputs. successfully crawl or walk.
-Multi-segmented
-Others adjust the angle of their -Hopping creatures that raise
watersnake creatures with
paddles appropriately as they and lower arm-like structures.
sinusoidal motions.
oscillate along.
FUTURE WORK To experiment with additional types of fitness evaluation.

Adjusting the genetic language of creatures that could be built as real robots.

Dressing up virtual creatures to give them different shapes and improved rendered looks
such as scales, hair, fur, eyes, or tentacles.

CONCLUSION
● A system has been described that can generate autonomous three-dimensional virtual creatures without
requiring cumbersome user specifications, design efforts, or knowledge of algorithmic details,
Connection Machine® CM-5 in a master/slave message passing model.
A single processing node performs the genetic algorithm. It farms out genotypes to the other nodes to be
fitness tested and gathers back the fitness values after they have been determined.
To prevent idle processors from just waiting for others to finish, new generations are started before the
fitness tests have been completed for all individuals

● A genetic language for representing virtual creatures with directed graphs of nodes and connections.
These methods have potential as a powerful tool for the creation of desirable complexity for use in virtual
worlds and computer animation.

You might also like