Title: Embedded Systems for Evolutionary Robotics
1Embedded Systems forEvolutionary Robotics
Hod Lipson Mechanical Aerospace
Engineering Computing Information
Science Cornell University
2The design process of nature
- Biology provides inspiring designs
- We can mimic these principles in machines
- Vision, Control, Sensing, Actuation, Structure
- But these principles are a result of unique
biological constraints - Instead, mimic the design process itself
- The evolutionary process that lead to these
designs
3Evolutionary Robotics
- Evolutionary Computation methods applied to
design of autonomous machines - Morphology control
- Why?
- Augment human design process
- Automate autonomous adaptation
- design in-situ
- May shed light on animal adaptation
4A simple evolutionary process
Genotype (e.g. DNA)
Phenotype (body brain)
- Initialize a population of machines
- Repeat
- Evaluate (test)
- Select (e.g. by fitness)
- Replicate (e.g. duplication)
- Vary (e.g. mutation)
- Until good solutions found
01011010010
10010101010
11101011101
10101001000
00100101001
00010111101
11111001001
11010101001
5Example Evolving brains
6A gradient-Following brain
Bongard et al (2002)
7(No Transcript)
8Camera View
Camera
9Nonaped
Zykov Lipson (2004)
10Nonaped
Zykov Lipson (2004)
11Alternative Body Plans
12Compare Evolvability of Body Plans
13Evolving controllers with some morphological
parameters
Paul et al (2001)
Paul Bongard (2002)
14Evolving Bodies and Brains
- Genetic operators small mutations
- Connect/remove small bar or unconnected neuron
- Change bar length or neuron synapse
- Split bar/vertex
- Connect/disconnect neuron to bar (actuator)
15Evolving for Locomotion
- Population Starts with empty/null designs. Size
200 1000 machines - Genotype/phenotype bars/actuators, and neurons
- Fitness function distance center of mass moved
during 12 cycles of the neural net - Selection function fitness proportionate
- Genetic operators small mutations
- Connect/remove small bar or unconnected neuron
- Change bar length or neuron synapse
- Split bar/vertex
- Connect/disconnect neuron to bar (actuator)
- Replacement function random.
- Evolution dynamics Steady state 100 10000
generations. Various dynamics of convergence and
divergence. Parallel implementation yields
natural evolution drive for simplicity
16Phylogenetic Trees
Hod Lipson Evolutionary Design
17Evolved Bodies Brains
Lipson Pollack (2001)
18Evolved Bodies Brains
19Transfer to realityUsing 3D Printer
20Evolving in simulation
Simulator
Evolve Controller In Simulation
Download
Try it in reality!
21Evolving in simulation
Evolve Controller In Reality
Try it !
22Evolving in simulation
Simulator
Co-Evolution
Evolve Controller
Evolve Simulator
Download
Try it in reality!
Collect Sensor Data
23Analysis for Synthesis
With Victor Zykov, Josh Bongard and Nicolas
Esteves
24Autonomous diagnosis repair
Recovery Actions
Diagnosti
c
Models
Diagnostic Actions
Initialize
candid
ate
Initialize
diagnosis
Initialize
candidate
recovery actions
with
model pool
with
diagnosis actions
with
possible actions
available models
possible actions
Test model predictions
Update
Models
Test model predictions
for each candidate action
Using
Data
for each candidate action
Update actions to achieve
Make Predictions
Update actions to
recovery
in
consensus
generate
disagreement
among model predictions
among model predictions
Collect Sensor Data
Select action with
Select action with
acceptable worst
-
case
acceptable worst
-
case
safety
safety
Compare to predictions
to actual data, eliminate
and refine models
Perform action on target
Perform action on target
system
system
25More diagnostics Environment
With Josh Bongard
26Parametric morphological estimation
27PC104 Embedded legged platform
28Evolutionary Robotics
- Evolutionary search for
- Evolve bodies brains
- Design automation
- In-Situ adaptation
- Understanding biological adaptation
- Challenges
- Crossing the reality gap
- Approach
- Co-evolve simulator with controller
- Enabled by sufficient on-board CPU for
self-simulation