Evolutionary Robotics
Introduction
• Evolutionary Robotics is a method for the
automatic creation of autonomous robots.
• Inspired by the Darwinian principle of
selective reproduction of the fittest captured
by evolutionary algorithms.
Ref: Handbook of Robotics - Chapter 61: Evolutionary Robotics
Dario Floreano, Phil Husbands, and Stefano Nolfi
Evolutionary Robotics
and Open-Ended Design Automation
Hod Lipson
Cornell University
Systematic Synthesis
• A rational approach to synthesis is needed.
• The process of successive adaptation by
improvement and recombination of basic
building blocks.
• It is open ended, unlike classical genetic
algorithms.
Optimization vs Synthesis
Optimization
• We tune the values of a set of
parameters in order to
maximize a target function.
The set of parameters, their
meaning and their ranges are
predetermined.
• E.g. To design a circuit, we
manually provide a basic
layout of resistors, capacitors,
and coils, and then try to
automatically tweak their
values so as to maximize
performance.
Synthesis
• An open-ended process where
we can add more and more
components, possibly each
with their own set of
parameters.
• E.g. To design a circuit, we
could start with a bucket of
components, and use an
algorithm to automatically
compose them into a circuit
that performs the target
function.
A Simple Model of Evolutionary
Adaptation
• Initial Population: a large set of initial candidate designs.
• Perform repeated selection and variation:
– To perform selection, we first measure the performance
(fitness) of each solution in the population.
• The fitness metric needs to be solution-neutral, i.e measure the
extent to which the target task has been achieved, regardless of how
it was achieved.
– We select better solutions (parents) and use them to create a
new generation of solutions (offspring).
• Offspring: are variations of the parents, created through
variation operators like mutation and recombination.
• The process is repeated generation after generation until
good solutions are found.
Robot Body & Brain
• Body  Morphology  Hardware
• Brain  Controller Software
– Evolving Controller (fixed morphology)
• Legged robot simulation and physical experiment
– Evolving Bodies and Brains
• 3D cubes and oscillators experiment
• With design automation, we could reverse
engineer the evolved controller to find out
exactly how it works
Morphology Representations
• Genotype: encodes information for growing,
or developing, a phenotype.
• Tree Representation
• Developmental Representation
• Regulatory Network Representations
Tree Representation
• A set of operations to construct a
phenotype in a top-down or bottom-up
manner.
– Top-down representation starts with an initial
structure (an embryo) and specifies a sequence
of operations that progressively modify it into
its final form.
– Bottom-up construction of a one-DoF
mechanism begins at the leaves of the tree
with atomic building blocks and hierarchically
assembles them into components.
How could a tree-representation be
used to describe robot morphologies?
• Top-down construction of a mechanism starts
with an embryonic kinematic basis with the
desired number of degrees of freedom
(DoF’s).
• A tree of operators then recursively modifies
that mechanism by replacing single links (DoF
= -1) with assemblies of links with an
equivalent DoF, so that the total number of
DoF remains unchanged.
Developmental Representation
• Allows the robot’s morphology to develop from a
basic “seed” and a set of context-free
development rules.
• L-system is a set of rules like the “AB” and
“BAB”. These “rewrite” rules are parametric
(i.e. may pass parameters), and have conditions
(are executed only when the parameters meet
some conditions).
• An evolutionary algorithm was used to evolve
individual L-systems, that when executed
produced a build sequence which produced the
machine.
Regulatory Network Representations
• Robot elements; such as actuators and
sensors, are connected through a neural
network, but the specific connectivity of the
network is determined by an evolved
regulatory network.
Evolving Machines in Physical Reality
• Evolving controllers for physical morphologies:
– To make a perfect simulator, that whatever works
in simulation will work in reality equally well.
– To use a crude simulator that captures the salient
features of the search space.
– Co-evolve simulators so that they are increasingly
predictive.
• Exploration phase: evolving the controller.
• Estimation phase: creating the simulator.
Evolving Machines in Physical Reality
• Making morphological changes in hardware:
– Reconfigurable Robots: are composed of many
modules that can be connected, disconnected and
rearranged in various topologies to create machines
with variable body plans.
• Self-reconfigurable robots are able to rearrange their own
morphology, and thus adapt in physical reality.
• Producing the entire robot morphology automatically using
3D printers. This “printer”, when coupled to an evolutionary
design process, can produce complex geometries that are
difficult to produce any other way, and thus allow the
evolutionary search much greater design flexibility.
Similar Topics
Modular
Self-Reconfigurable Robots
• A robot that changes its geometry based on
task.
• Daniela Rus, MIT.
– Origami Robot – MIT:
http://newsoffice.mit.edu/2014/mobile-folding-
robots-0807
– Robo-Cubes – MIT:
http://techcrunch.com/2013/10/04/m-blocks/
Self-Replicating Repairing Robots
• A machine that can build copies of itself.
• Hod Lipson, Cornell.
– http://www.news.cornell.edu/stories/2005/05/re
searchers-build-robot-can-reproduce
Now, he is working on Evolutionary Robotics!
But, this one…
Robots Use 3D Printing and
Simulations to Evolve
• Oslo University:
http://www.ign.com/articles/2014/11/13/rob
ots-use-3d-printing-and-simulations-to-evolve
We need to start with…
Evolutionary Algorithms (EA)
• EA are stochastic search
and optimization
heuristics derived from
the classic evolution
theory, which are
implemented on
computers in the
majority of cases.
Classification of EA Methods
Tools
GEATbx
Genetic and Evolutionary Algorithm
Toolbox for Matlab
Darwin2k
• Simulation and Automated Synthesis for
Robotics
– http://darwin2k.sourceforge.net/
Thank You!
Q & A

Evolutionary Robotics

  • 1.
  • 2.
    Introduction • Evolutionary Roboticsis a method for the automatic creation of autonomous robots. • Inspired by the Darwinian principle of selective reproduction of the fittest captured by evolutionary algorithms. Ref: Handbook of Robotics - Chapter 61: Evolutionary Robotics Dario Floreano, Phil Husbands, and Stefano Nolfi
  • 3.
    Evolutionary Robotics and Open-EndedDesign Automation Hod Lipson Cornell University
  • 4.
    Systematic Synthesis • Arational approach to synthesis is needed. • The process of successive adaptation by improvement and recombination of basic building blocks. • It is open ended, unlike classical genetic algorithms.
  • 5.
    Optimization vs Synthesis Optimization •We tune the values of a set of parameters in order to maximize a target function. The set of parameters, their meaning and their ranges are predetermined. • E.g. To design a circuit, we manually provide a basic layout of resistors, capacitors, and coils, and then try to automatically tweak their values so as to maximize performance. Synthesis • An open-ended process where we can add more and more components, possibly each with their own set of parameters. • E.g. To design a circuit, we could start with a bucket of components, and use an algorithm to automatically compose them into a circuit that performs the target function.
  • 6.
    A Simple Modelof Evolutionary Adaptation • Initial Population: a large set of initial candidate designs. • Perform repeated selection and variation: – To perform selection, we first measure the performance (fitness) of each solution in the population. • The fitness metric needs to be solution-neutral, i.e measure the extent to which the target task has been achieved, regardless of how it was achieved. – We select better solutions (parents) and use them to create a new generation of solutions (offspring). • Offspring: are variations of the parents, created through variation operators like mutation and recombination. • The process is repeated generation after generation until good solutions are found.
  • 7.
    Robot Body &Brain • Body  Morphology  Hardware • Brain  Controller Software – Evolving Controller (fixed morphology) • Legged robot simulation and physical experiment – Evolving Bodies and Brains • 3D cubes and oscillators experiment • With design automation, we could reverse engineer the evolved controller to find out exactly how it works
  • 8.
    Morphology Representations • Genotype:encodes information for growing, or developing, a phenotype. • Tree Representation • Developmental Representation • Regulatory Network Representations
  • 9.
    Tree Representation • Aset of operations to construct a phenotype in a top-down or bottom-up manner. – Top-down representation starts with an initial structure (an embryo) and specifies a sequence of operations that progressively modify it into its final form. – Bottom-up construction of a one-DoF mechanism begins at the leaves of the tree with atomic building blocks and hierarchically assembles them into components.
  • 10.
    How could atree-representation be used to describe robot morphologies? • Top-down construction of a mechanism starts with an embryonic kinematic basis with the desired number of degrees of freedom (DoF’s). • A tree of operators then recursively modifies that mechanism by replacing single links (DoF = -1) with assemblies of links with an equivalent DoF, so that the total number of DoF remains unchanged.
  • 11.
    Developmental Representation • Allowsthe robot’s morphology to develop from a basic “seed” and a set of context-free development rules. • L-system is a set of rules like the “AB” and “BAB”. These “rewrite” rules are parametric (i.e. may pass parameters), and have conditions (are executed only when the parameters meet some conditions). • An evolutionary algorithm was used to evolve individual L-systems, that when executed produced a build sequence which produced the machine.
  • 12.
    Regulatory Network Representations •Robot elements; such as actuators and sensors, are connected through a neural network, but the specific connectivity of the network is determined by an evolved regulatory network.
  • 13.
    Evolving Machines inPhysical Reality • Evolving controllers for physical morphologies: – To make a perfect simulator, that whatever works in simulation will work in reality equally well. – To use a crude simulator that captures the salient features of the search space. – Co-evolve simulators so that they are increasingly predictive. • Exploration phase: evolving the controller. • Estimation phase: creating the simulator.
  • 14.
    Evolving Machines inPhysical Reality • Making morphological changes in hardware: – Reconfigurable Robots: are composed of many modules that can be connected, disconnected and rearranged in various topologies to create machines with variable body plans. • Self-reconfigurable robots are able to rearrange their own morphology, and thus adapt in physical reality. • Producing the entire robot morphology automatically using 3D printers. This “printer”, when coupled to an evolutionary design process, can produce complex geometries that are difficult to produce any other way, and thus allow the evolutionary search much greater design flexibility.
  • 15.
  • 16.
    Modular Self-Reconfigurable Robots • Arobot that changes its geometry based on task. • Daniela Rus, MIT. – Origami Robot – MIT: http://newsoffice.mit.edu/2014/mobile-folding- robots-0807 – Robo-Cubes – MIT: http://techcrunch.com/2013/10/04/m-blocks/
  • 17.
    Self-Replicating Repairing Robots •A machine that can build copies of itself. • Hod Lipson, Cornell. – http://www.news.cornell.edu/stories/2005/05/re searchers-build-robot-can-reproduce Now, he is working on Evolutionary Robotics!
  • 18.
  • 19.
    Robots Use 3DPrinting and Simulations to Evolve • Oslo University: http://www.ign.com/articles/2014/11/13/rob ots-use-3d-printing-and-simulations-to-evolve
  • 20.
    We need tostart with…
  • 21.
    Evolutionary Algorithms (EA) •EA are stochastic search and optimization heuristics derived from the classic evolution theory, which are implemented on computers in the majority of cases.
  • 22.
  • 23.
  • 24.
    GEATbx Genetic and EvolutionaryAlgorithm Toolbox for Matlab
  • 25.
    Darwin2k • Simulation andAutomated Synthesis for Robotics – http://darwin2k.sourceforge.net/
  • 26.

Editor's Notes

  • #5 Combination or composition