Evolutionary Robotics

21
Evolutionary Robotics Gabriela Ochoa

description

Evolutionary Robotics. Gabriela Ochoa. Robotics - Introduction. Robots in the movies (C3P0, Terminator): fantastic, intelligent, even dangerous forms of artificial life Robots of today are not walking, talking intelligent machines - PowerPoint PPT Presentation

Transcript of Evolutionary Robotics

Page 1: Evolutionary Robotics

Evolutionary Robotics

Gabriela Ochoa

Page 2: Evolutionary Robotics

Robotics - Introduction

Robots in the movies (C3P0, Terminator): fantastic, intelligent, even dangerous forms of artificial life

Robots of today are not walking, talking intelligent machines

Today, we find most robots working for people in factories, warehouses, and laboratories

In the future, robots may show up in other places: our schools, our homes, even our bodies.

Page 3: Evolutionary Robotics

Mainstream Robotics Most robots: a helping hand. Help

people with tasks that would be difficult, unsafe, or boring for a real person

A robot have 5 main components Controller Arm Drive End-Effector Sensor

Page 4: Evolutionary Robotics

Autonomous Robotics

Robot: A versatile mechanical device equipped with effectors and sensors under the control of a computing system

Human: eyes, ears (sensors); hands, legs, mouth (effectors)

Robot: cameras, infrared range finders (sensors); various motors (effectors)

Autonomous Robots: those that make decisions on their own, guided by the feedback they get from their physical sensors

Page 5: Evolutionary Robotics

Classic AI Approach

PERCEPTION

REPRESENTATION

IN

WORLD MODEL

-- REASONING

ACTION

Divide & Conquer: a complex problem is decomposed into separate, less daunting subproblems

Clasical approaches tu robotics, assume a primary decomposition into Perception, Planning and Action Modules

Page 6: Evolutionary Robotics

Subsumtion Architecture (Rodney Brooks) Problems with the classical approach:

It is not clear how a robot control system should be decomosed

Complex Interactions between subsystems, not only direct links, also mediated via the environment

Subsumtion Architecture: slow and and careful building up of a robot control system layer by layer Get something simple working (debugged) first Then try and add extra 'behaviours'

Page 7: Evolutionary Robotics

The Evolutionary Approach

Brooks' subsumption architecture is 'design-by-hand', but inspired by an incremental, evolutionary approach

Alternative: explicitly use evolutionary techniques to incrementally evolve increasingly complex robot control systems

When evolving robot 'nervous systems' with some form of GA, then the genotype ('artificial DNA') will have to encode: The architecture of the robot control system Also maybe some aspects of its body/motors/sensors

Page 8: Evolutionary Robotics

Evolutionary Robotics

The use of evolutionary (genetic) algorithms to develop `artificial nervous systems' for robots.

ER can be done for Engineering purposes - to build useful robotsfor Scientific purposes - to test scientific theories

It can be donefor Real orin Simulation

Page 9: Evolutionary Robotics

Approaches to Evolutionary Robotics

R. D. Beer: Agent control using NNs (continuous-time recurrent NNs) Tasks: Chemotaxis, locomotion control 6-legged insect-like

M. Colombeti, M. Dorigo: Classifier Systems D. Floreano: Kephera robots, simple recurrent NNs J. Koza, C. Raynolds: GP to develop S. Arch. R. Watson: Embodied Evolution I. Harvey, P. Husband U. Sussex: continuous-time

recurrent NNs CTRNN

Page 10: Evolutionary Robotics

Sussex Approach to ER

Robot as a whole: body, sensors, motor and control system (or “nervous system”) – as a dynamical system coupled with a dynamic environment

Continuos time recurrent NN, with temporal delays on links

Genotypes: specify the architecture of the NN

Page 11: Evolutionary Robotics

A top-down view of the simulated agent, showing bilaterally symmetric sensors (“photoreceptors”). Reversing the sensor connections will initially have a similar effect to moving the light source as shown.

Page 12: Evolutionary Robotics

Dynamic Recurrent Neural Networks DRNNs

This is just ONE possible DRNN, which ONE specific genotype specified.

DRNNs, or CTRNNs

• Convenient way of specifying a class of dynamical systems

• Different genotypes will specify different DSs, giving robots different behaviours.

Page 13: Evolutionary Robotics

DRNN Basics

The basic components of a DRNN are these(1 to 4 definite, 5 optional)

Page 14: Evolutionary Robotics

NNs Equations

)()(1

tIywydt

dyijj

n

jjii

ii

CTRNNs (continuous-time recurrent NNs), where for each node (i = 1 to n) in the network the following equation holds:

yi = activation of node ii = time constant, wji = weight on connection from node j to node i(x) = sigmoidal = (1/1+e-x)

i= bias, Ii = possible sensory input.

Page 15: Evolutionary Robotics

Genotypes

Finite number of nodes Thresholds or details of non linear activatation

function Links and connections between nodes: sepecifying

weights and time-delays on the links Optional: Weight-changing rules Subset of the nodes, designed as input nodes,

receiving sensory inputs Output or motor nodes Other nodes (“hidden”) arbitrary number

Page 16: Evolutionary Robotics

Genetic Encoding Scheme

Page 17: Evolutionary Robotics

Example of an Experiment Simulation: round, two-wheeled, mobile robot with

touch sensors and two visual sensors Task: robot need to reach the centre of a simulated

circular arena (white walls and black floor and ceiling)

Fitness function: robots are rated on the basis of how much time they spent

at or near the centre. Measuring the distance d of the robot from the centre, and

weighting this distance by a Gaussian G Over 100 time steps, G is summed to give a final score Robot starts near the perimeter, facing in a random

direction

Page 18: Evolutionary Robotics

Evaluating a robotWhen you evaluate each robot genotype, youDecode it into the network architecture and parametersPossibly decode part into body/sensor/motor parametersCreate the specified robotPut it into the test environmentRun it for n seconds, scoring it on the task.

Any evolutionary approach needs a selection process, whereby the different members of the population have different chances of producing offspring according to their fitness

Page 19: Evolutionary Robotics

ResultsTypical path of a succesfully evolved robot wich heads fairly directly for the centre of the room and circles there, using input from 2 photoreceptors.

The direction the robot is facing is indicated by arrows for each time step

Page 20: Evolutionary Robotics

Real Robot vs. Simulation

Evaluate on a real robot, or Use a Simulation ?

On a real robot it is expensive, time-consuming -- andfor evolution you need many many evaluations.

On a simulation it should be much faster

BUT AI (and indeed Alife) has a history of toy, unvalidated simulations, that 'assume away' all the genuine problems that must be faced.

Eg: grid worlds "move one step North“, Magic sensors "perceive food"

Page 21: Evolutionary Robotics

Principled Simulations ?

How do you know whether you have included all that is necessary in a simulation?

-- only ultimate test, validation, is whether what works in simulation ALSO works on a real robot.

How can one best insure this, for Evolutionary Robotics ?

Noise: put an envelope-of-noise, (through variations driven by random numbers), around crucial parameters whose real values you are unsure of.

“Evolve for more robustness than strictly necessary"