marc schoenauer projet tao – inria futur et lri orsay

133
Robotique Évolutionnaire Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay [email protected] http://tao.lri.fr/ Robotique ´ Evolutionnaire – p.1/133

Upload: others

Post on 24-Jun-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Robotique ÉvolutionnaireMarc Schoenauer

Projet TAO – INRIA Futur et LRI Orsay

[email protected]

http://tao.lri.fr/

Robotique Evolutionnaire – p.1/133

Page 2: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Robotique évolutionnaire

La biologie est une source d’inspiration inépuisableVoir aussi les réseaux de neurones

Modèle d’évolution Darwinienne des espècesLes plus adaptés survivent et se reproduisent

Conjonction de la sélection naturelle et des variationsapparemment non dirigées durant la reproduction

−→ “Émergence” d’espèces adaptées à leurenvironnement

Évolution artificielle : le programmeur crée l’environnement

Robotique Evolutionnaire – p.2/133

Page 3: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Robotique évolutionnaire (2)

.

..

Gen. 1

Test

Gen. 2

Gen. N

ReproductionSelection

Robotique Evolutionnaire – p.3/133

Page 4: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Contexte

Robot autonome

Variables d’état inaccessiblesPosition dans l’espace

Environnement changeant et/ou inconnu LabyrinthesObstacles mobiles, autres robots, . . .

Capteurs bruités

Plusieurs tâches différentesÉviter les obstacles et rassembler des objets et . . .

Interaction avec l’environnement

Robotique Evolutionnaire – p.4/133

Page 5: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Approches

But : Identifier la relation fonctionnelle capteurs – moteurspour obtenir le comportement désiré Optimisation

Approches descendantes Connaissance parfaite du monde

Contrôle optimal connaître une trajectoire dans le “bon”espace

Approche symbolique IA “classique”

Approches ascendantes Basées sur le comportement

Robotique comportementale Décomposition en sous-tâches

Robotique évolutionnaire Émergence de la décomposition

Robotique Evolutionnaire – p.5/133

Page 6: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage d’un contrôleur

Design direct Monde complètement connu

Apprentissage sans modèle du mondeEn situation, i.e. en interaction avec l’environnement

Mais

Exemples capteurs/actions en général non disponibles

Dynamique du système souvent mal connue

Besoin de généralisation

Robotique Evolutionnaire – p.6/133

Page 7: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un problème d’identification de fonction

Trouver un espace de recherche pour les contrôleursUne représentation, un modèle

Trouver une fonction de performancecomportement attendu = perfomance maximale

Optimiser la performance dans l’espace de recherchechoisi

Robotique Evolutionnaire – p.7/133

Page 8: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Une solution

Les r eseaux de neurones artificiels

Approximateurs universels

dotés de bonnes capacités de généralisation

Une performance mesur ee en situation

Réelle ou simulée

Dépendant fortement du problème

L’ evolution artificielle

Des algorithmes d’optimisation souples et efficaces

Mais processus encore mal compris Théorie balbutiante

Robotique Evolutionnaire – p.8/133

Page 9: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Identification de fonctions

Il faut dans tous les cas un modèle pour la fonction àidentifier.

Modèles paramétriques : un nombre fixe de paramètresréels (e.g. les polynomes de degré d).

Modèles non-paramétriques : un espace décrit par unnombre variable de paramètres (e.g. les polynômes à n

variables).

Les réseaux de neurones et la programmation génétiquesont des modèles intermédiaires:paramètrique pour une structure fixe, non-paramétriquesi l’on cherche aussi la structure.

Robotique Evolutionnaire – p.9/133

Page 10: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Modèles de contrôleurs

De réactifs à symboliques, avec ou sans états internes

Braitenbergs’ vehicles (1984)

+ +

Purement réactif

Robotique Evolutionnaire – p.10/133

Page 11: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Modèles de contrôleurs (2)

Contrôleurs flous Réactifs ou rebouclant

Réseaux de règles symboliques Systèmes de classeursif (true) then leftSpeed=2; rightSpeed=2;

if (leftSensor>threshold) then rightSpeed=0;

if (rightSensor>threshold) then leftSpeed=0;

if (leftSensor>threshold) and (rightSensor>threshold) then

leftSpeed=-2; rightSpeed=-2;

Peuvent simuler des états internes

Robotique Evolutionnaire – p.11/133

Page 12: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Modèles de contrôleurs (3)

Réseaux de neurones artificielsPurement réactifs pour les réseaux feedforward

Les réseaux récurrents ont des états internes

Automates à états finis

Programmation génétique 1 programme = 1 arbre

Robotique Evolutionnaire – p.12/133

Page 13: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Régression (data fitting)

On dispose d’exemples (valeurs de la fonction):

( ~Xi, Yi)i=1,...P

on cherche p.ex. F de IRN dans IR qui minimise

i=P∑

i=1

[F ( ~Xi)− Yi]2

Approximation et d’interpolation Fonctions Splines

Interpolation polynomiale, fractions rationellesRéseaux de neurones, Machines à vecteur de support (SVM)

Le point-clé est la généralisation: que se passe-t-il pourles points non pris en compte durant l’apprentissage ?

Robotique Evolutionnaire – p.13/133

Page 14: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Une mesure empirique de généralisation

Validation crois ee

Choisir un modèle Un espace de recherche pour la fonction

Pour chaque exemple ( ~Xi, Yi) apprendre Fi sur( ~X1, Y1), . . . , ( ~Xi−1, Yi−1), ( ~Xi+1, Yi+1), . . . ( ~XP , YP )Une mesure de généralisation est

i=P∑

i=1

[Fi( ~Xi)− Yi]2

Robotique Evolutionnaire – p.14/133

Page 15: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Réseaux de neurones

Neurones artificiels

Perceptron (Rosenblatt 59, Widrow & Hoff 60, Minsky &Papert 69)

Parallel Distributed Proessing (Rumelhart et McClelland86)

Tutoriel interactif de l’EPFL en ligne localement :

http://www.lri.fr/ marc/EEAAX/Neurones/tutorial/

Robotique Evolutionnaire – p.15/133

Page 16: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un neuroneX

X

X

1

2

n

Y

W

W

W

1

2

n

.

.

.

Connections : des entrées et une sortie

Poids sur les connections entrantes Mémoire locale

Une fonction de transfert σ

Typiquement, la fonction sigmoide 1

1+ex

L’activation du neurone, pour des entrées xi, est∑n

i=1wiXi

La sortie du neurone est Y = σ(∑n

i=1wiXi)

Robotique Evolutionnaire – p.16/133

Page 17: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les neurones en réseau

Les sorties de certains neurones sont connectées auxentrées d’autres neurones.

Les entrées non connectées sont les entrées du réseau

Les sorties de certains neurones particuliers sont lessorties du réseau.

Les paramètres de contrôle sontl’architecture du réseau (le graphe des connections)les poids des connections

Le but recherché, le type des valeurs desentrées/sorties, le graphe des connections etl’algorithme d’optimisation des poids déterminent le typedu réseau de neurones formels.

Robotique Evolutionnaire – p.17/133

Page 18: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Types de réseaux

En l’absence de boucles dans le graphe de sesconnections, un RN définit une fonction de IRn dans IRm

réseaux dits à propagation directe – feed-forward

Dans le cas contraire, Réseaux récurrentson calcule les sorties de chaque neurone

De manière synchrone, ouDans un ordre donné

Robotique Evolutionnaire – p.18/133

Page 19: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exemples de réseaux

X

X

X

X

X

X

X

X

X

X

X

Y

Y

Y

Y

Y

Y

Y

1

2

3

1

2

3

1

1

2

2

3

4

1

1

2

2

3

4

"Feed-forward" network

Muti-layer perceptron

Robotique Evolutionnaire – p.19/133

Page 20: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Des outils d’approximation

Perceptrons multi-couches :

L’ensemble des RN multi-couches à fonction de transfertsigmoïdale, à n entrées et m sorties (et même à 3couches) est dense dans L2([0, 1]n, [0, 1]m).

Pour un réseau à 3 couches (m = 1), majoration del’erreur d’approximation / du nombre de neurones de lacouche cachée.

De même, pour les réseaux à fonction de transfertgaussienne (RBF).

Robotique Evolutionnaire – p.20/133

Page 21: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage supervisé classique

Apprentissage des poids d’un RN de topologie fixée.

Un ensemble d’exemples d’entrées/sorties du réseau(i.e. de (n + m)uplets X1, . . . , Xn, Y1, . . . , Ym est disponiblePlusieurs variantes, dont la plus célèbre est uneméthode de gradient stochastique, la rétro-propagationdu gradient.

Un oracle est disponible, qualifiant un réseauApprentissage par renforcement Barto et Sutton

Règle de HebbRenforce les poids entre deux neurones actifs simultanément

Robotique Evolutionnaire – p.21/133

Page 22: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Optimisation de réseaux de neurones

Optimisation des poids d’un réseau à architecture fixéeÉventuellement, point de départ pour le RPG

Optimisation de la règle d’apprentissage

∆wij = Φ(xj , yi, wij)

xj et yi : activités des neurones amont et aval de la connection

Optimisation simultanée de la topologie (et des poids)

Robotique Evolutionnaire – p.22/133

Page 23: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les algorithmes évolutionnaires

Paradigme Darwinien grossierSélection naturelle

Les plus adaptés survivent et se reproduisent

Variations aveugles Indépendamment de l’adaptation

Source inépuisable d’inspiration sans obligation de réalisme!

Algorithmes d’optimisation stochastiquesOrdre 0 (cas continu) Pas de calculs de gradient

Robustesse face aux optima locaux, souplesse d’utilisation

Robotique Evolutionnaire – p.23/133

Page 24: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un algorithme “évolutionnaire”

Fonction F (performance, fitness) définie sur une espace Ω

Individus, population ←→ points de Ω, tuple de points de Ω

Evaluation

Initialisation

Stop ? Sélection

Mutation, ...Evaluation

Génération

Croisement,Enfants

Remplacement

Meilleur individu

Opérateurs stochastiques: Dépendent de la représentation

"Darwinisme" (stochastique ou déterministe)

Coût calcul

Critère d’arrêt, statistiques, ...

Géniteurs

Parents

Robotique Evolutionnaire – p.24/133

Page 25: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La feuille de papier qui tombe P. Bentley

Le probl eme

Trouver la forme d’un morceau de papier

qui met le plus de temps possible à tomber

Difficult es

Pas de simulation

Pas d’a priori sur la forme de la solutionQuoique . . .

Robotique Evolutionnaire – p.25/133

Page 26: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un algorithme sans ordinateur

Materiel n ecessaire

Une ramette de feuilles A4

Des ciseaux

Un bac à sable format A4

Une dizaine de petites cailloux numérotés

Un chronomètre

Une fléchette

. . . de la patience

Robotique Evolutionnaire – p.26/133

Page 27: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Représentation

Initialisation

Lancer les petits cailloux en l’air au dessus du bac àsable

Reporter les positions des cailloux tombés dans le bacsur une feuille A4

Genotype : Liste ordonnée des points

12

3

6

7

4

5

Robotique Evolutionnaire – p.27/133

Page 28: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Du génotype au phénotype

Morphog enese : passage du génotype au phénotype

Tracer le polygone rempli correspondant à la MacPaint

Découper la forme obtenue

Phenotype : La forme de papier

Robotique Evolutionnaire – p.28/133

Page 29: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La fonction performance

Evaluation

Pour chaque forme

Faire 5 fois

Lâcher la forme de 2m de haut

Chronométrer le temps d’atteinte du sol

Faire la moyenne des 5 temps

Robotique Evolutionnaire – p.29/133

Page 30: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opérateurs de variation

Croisement : Un croisement possible, pour lequel les ciseauxet le scotch ne suffisent pas.

Robotique Evolutionnaire – p.30/133

Page 31: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opérateurs de variation (2)

Mutations

Viser avec la fléchette chaque point tour à tourDistance à ajuster selon votre habileté

Tracer sur une nouvelle feuille les impactsSi la fléchette sort du cadre, enlever le point

Si votre portable sonne, ajouter un pointRobotique Evolutionnaire – p.31/133

Page 32: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Darwinisme

Remplacement d eterministe

Déchirer la moitié des formes – les plus rapides

Robotique Evolutionnaire – p.32/133

Page 33: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Résultats

Avec 5 formes et 10 g enerations

Deux des meilleures formes obtenues

Meilleure forme aléatoire : 0.8s

Toutes les formes après 10générations de 10 formes : > 2s

Comportement “hélicoptère”Robotique Evolutionnaire – p.33/133

Page 34: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Points clé

Une population, pas un individuAttention à la perte de diversité génétique

Dilemne Exploitation vs Exploration

Exploitation Recherche locale

Exploration Recherche globale

Excès d’exploitation =⇒ Convergence prématuréeExcès d’exploration =⇒ Pas de convergence

Robotique Evolutionnaire – p.34/133

Page 35: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Deux points de vue orthogonaux

Evaluation

Initialisation

Stop ? Sélection

Mutation, ...Evaluation

Génération

Croisement,Enfants

Remplacement

Meilleur individu

Opérateurs stochastiques: Dépendent de la représentation

"Darwinisme" (stochastique ou déterministe)

Coût calcul

Critère d’arrêt, statistiques, ...

Géniteurs

Parents

Le Darwinisme artificiel (sélection et remplacement) nedépend que de la performance

L’initialisation et les opérateurs de variation (croisement,mutation, . . . ) ne dépendent que de la représentation,i.e. l’espace de recherche Ω.

Robotique Evolutionnaire – p.35/133

Page 36: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Génotypes et phénotypes

Espace génotypique G:application des opérateurs de variation

Espace phénotypique Ω: calcul de la fitness

Morphogénèse : du génotype au phénotypePlusieurs génotypes peuvent donner le même phénotype

Codage : du phénotype au génotype

L’algorithme

manipule des génotypes (variations)

calcule la fitness sur les phénotypes (→ sélection)

Exemples suivents

Robotique Evolutionnaire – p.36/133

Page 37: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

History

The (3+1) roots of Evolutionary Algorithms

Genetic AlgorithmsHolland, 75; Goldberg, 89

Evolution StrategiesI. Rechenberg, 73; Schwefel, 81

Evolutionary ProgrammingFogel et al., 66

Genetic ProgrammingKoza, 92

des Biologischen EvolutionSysteme nach PrinzipienOptimierung Technisher

Evolutionstrategie:

I. Rechenberg

Simulated Evolution

throughArtificial Intelligence

Fogel, Owens & Walsh

. . .

Robotique Evolutionnaire – p.37/133

Page 38: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

History (2)

Other milestones

The deep rootsD. Fogel, editor, 98

Evolution Programs Z. Michalewicz,92 . . . and later Evolutionary Computation D.Fogel, 95

Genetic Programmingthe textbook Banzhaf et al., 98

Evolutionary Computationthe textbook - best starting point

Eiben & Smith

Robotique Evolutionnaire – p.38/133

Page 39: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Quelques génotypes usuels

Représentation “binaire” G = 0, 1NAlgorithmes génétiques historiques

Représentation “réelle” G = [0, 1]N ou IRN ou . . .Algorithmes génétiques – codage réel, Stratégies d’évolution

Représentation “combinatoire” G = SN

−→ Genetic Local Search

Représentation “par arbres”Espace d’arbres – Programmation génétique

Plusieurs représentations pour le même problème−→ Dynamiques différentes

Robotique Evolutionnaire – p.39/133

Page 40: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opérateurs de variation (non-dirigées)

Le croisement : opérateur binaire (2+→ 1)Échange d’information “génétique” entre parents

Début d’évolution : exploration “linéarité” de la performance?

Fin d’évolution : exploitation . . . efficacité décroissante

La mutation : (ré)introduction de diversité

Ergodicité Mais petites variations plus probables

“Strong causality” Continuité faible locale

Robotique Evolutionnaire – p.40/133

Page 41: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opérateurs de variation : Le croisement

Exemples classiques

Échange de gènes Croisement de paramètres réels

Exemple orgiaque : Cinq parentsLa foule subjuguée boira ses paroles enflamméesCe plat exquis enchanta leurs papilles expertes

L’aube aux doigts de roses se leva sur un jour nouveauLe cadavre sanguinolent encombrait la police nationale

Les coureurs assoiffés se jetèrent sur le vin pourtantmauvais

pour un enfant surréalisteRobotique Evolutionnaire – p.41/133

Page 42: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opérateurs de variation : La mutation

Exemples classiques

Mutation d’un gène

Ajout de bruit Gaussien aux paramètres réels

Un exemple sans queue ni t ete

La terre est comme un orange bleueLa terre est bleue comme une orange

Robotique Evolutionnaire – p.42/133

Page 43: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Pragmatisme de rigueur

Quelques r esultats th eoriques

Algorithmes génétiques de base (chaînes de bits)Mutation et sélection couplées, convergence globale (R.Cerf, 94)

Stratégies d’évolution adaptativesConvergence log-linéaire (A.Auger, 04)

Des lecons venues d’applications r eussies Prochains transparents

Prise en compte du problème

(Trop ?) grande flexibilité

Robotique Evolutionnaire – p.43/133

Page 44: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Espace de recherche – 1. Espace mixteSchutz & Bäck, ICD, Dortmund.

Martin, Rivory & Schoenauer, Optique des Solides Paris VI & CMAP.

Espace de recherche : Filtres optiques(matériau,épaisseur)1 . . . (matériau, épaisseur)N

But : Répondre au gabarit fixé.

Robotique Evolutionnaire – p.44/133

Page 45: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Espace de recherche – 2. Graphes valuésKoza et al., Stanford.

Espace de recherche : Circuits analogiquesRéseau de transistors, diodes, résistances

But : Fonctionalités fixées e.g. extraction de racine cubique

Robotique Evolutionnaire – p.45/133

Page 46: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Performance – 1. très "chahutée"L. Taïeb & MS, CMAP & Thomson

Espace de recherche : Interféromètres Positionner des antennesBut : Maximiser la tolérance en conservant la précision.

1 2 3 41.5 2.5 3.5

0

10

5

15

Cas de 3 antennes, F = Marge d’erreur (position 2èmeantenne)

Robotique Evolutionnaire – p.46/133

Page 47: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Performance – 2. Multi-objectif

Conception optimale de formes :Trouver une forme de poids minimal et de rigidité maximale.

Objectifs contradictoiresResultats dans l’espace des objectifs

Maximal displacement

Wei

ght

10 20 30 40 50 60 70 80 90 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1test1test2test3

Front de ParetoRobotique Evolutionnaire – p.47/133

Page 48: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Multi-objectif (2) : les solutions

6.45 − 6.61 90 6.68 88 6.89 87 6.93 85 7.15 75 7.12 74 8.01 70 8.16 61 8.44 59

9.48 50 9.96 47 10.91 42 12.25 34 14.6 30 17.79 25 18.84 24 19.69 23 20.2 22 30.1 20

45.86 15 65.85 14 163.9 12 220.1 11 482 9 1149 8 4338 7 4585 6 4756 5.5 ∞ 5

Coût CPU ≡ un calcul mono-objectif !Robotique Evolutionnaire – p.48/133

Page 49: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Performance – 3. non calculableHerdy & al., Berlin, PPSN96

Espace de recherche : Mélanges de caféBut : Retrouver un arôme F = note de l’expert

Robotique Evolutionnaire – p.49/133

Page 50: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Deux exemples plus détaillés

Optimisation paramétriqueEspace de recherche = IRn

Poids d’un réseau de neuronesou coefficients d’un polynône, d’une fractionrationelle, . . .

Programmation génétiqueEspace d’arbres

Le contrôleur lui-mêmeLe programme qui contruit le contrôleur

Robotique Evolutionnaire – p.50/133

Page 51: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Normal mutations for real-coded EAs

Basic mutation :

add Gaussian noise

Xi := Xi + σN (0, 1)

variance σ

more general Gaussian perturbation

X := X + σN (0, C)

step-size σ, covariance matrix C

Tuning of σ and C crucial

Robotique Evolutionnaire – p.51/133

Page 52: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Adaptation of Gaussian mutation

History

σ ∝−1 fitness Early EP, difficult to tune

The 1/5th rule:Increase σ when more than 20% successful mutations

Theoretical studies on sphere and corridor fnsCan be wrong on less regular landscapes

Self-adaptive mutations:

Each individual has its own mutation parametersMutate the mutation parametersMutate the individual

Covariance Matrix Adaptation Derandomized self-adaptation

Robotique Evolutionnaire – p.52/133

Page 53: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Self-adaptive mutations Rechenberg, 73; Schwefel, 81

Isotropic: One σ per individual, C = In

Non -isotropic: One σi per variable, C = diag(σ1, . . . , σn)

Correlated: C positive definite n(n− 1)/2 rotations

−1 −0.5 0 0.5 1 1.5−1

−0.5

0

0.5

1

1.5

Isotropic mutation

Non−isotropic mutation

Correlated mutation

Robotique Evolutionnaire – p.53/133

Page 54: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Evidence of self-adaptivity – SA-ES Deb & Beyer 01

Experiments on dynamic landscapeQuadratic function, random moves of minimum every K generations

1e-20

1e-10

1

1e+10

0 500 1000 1500 2000 2500 3000 3500 4000

Sel

f-ad

aptiv

e (1

5/15

,100

)-E

S P

erfo

rman

ce

Generation number

Best function valueMutation strength in 15-th var

Robotique Evolutionnaire – p.54/133

Page 55: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Back to “simple” adaptivity Hansen & Ostermeier 95-01

Self-adaptivity can be very slowe.g. for the full covariance matrix

The actual path contains local information on thelandscape

Consecutive steps in colinear directions → increasestep-sizeSimilarly, add direction information to the covariancematrix

Rank 1 update Hansen & Ostermeier, 96Rank µ update Hansen, Müller, & Koumoutsakos, 2003

−→ CMA-ES – Covariance Matrix Adaptation

Robotique Evolutionnaire – p.55/133

Page 56: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Evidence of self-adaptivity – CMA-ES

Monitor the step-size Same dynamic quadratic function

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 1000010

−10

10−5

100

105

abs(Function Value)

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 1000010

−5

100

Global step size

Robotique Evolutionnaire – p.56/133

Page 57: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Closing the loop: Quasi-Newton methods

The “ideal” covariance matrix is the inverse of the Hessian

Deterministic optimization methods

Xn+1 = Xn − αH−1∇f(x)

where H−1 is an approximation of H−1

Main issue: Find a good approximation of H−1!

Iteratively, based on finding conjugate directionsUpdate of rank one,BFGS,. . .

Robotique Evolutionnaire – p.57/133

Page 58: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Programmation génétique

Espaces d’arbresUn ensemble N de noeuds (ou opérateurs)Un ensemble T de feuilles (ou opérandes)

Ω = Arbres(N , T )Exemples :

N = +,×T = X,RΩ = Polynomes de X.

N = if-then-else, while-do, repeat-until,..T = expressions, instructionsΩ = Programmes

Points cl e :Structure d’arbre / Longueur variable

PLUS 6= MIEUXRobotique Evolutionnaire – p.58/133

Page 59: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Croisement

Principe :Deux points sont choisis dans les deux parentsLes sous-arbres sous ces points sont échangés.

+

*

+

c

a

b YY

*

+

c b

*

X Y

*

+

*

+

c

a

*

aX

Y Y

+

*

a

cX

*

X

Y

Robotique Evolutionnaire – p.59/133

Page 60: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Croisement (2)

Points d elicats :

Vérifier que la longueur max des arbres est respectée.

Tout croisement est-il possible ?Strongly-typed GP

Remarque :

1. Opérateur historiquement privilégié de GP.

2. “Le croisement suffit à produire des mutations” . . .

3. Le croisement produit un enfant long et un enfant court.Bloat

Robotique Evolutionnaire – p.60/133

Page 61: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Mutations

Remarque :

1. Opérateur historiquement absent de GP (#popu > 2000).

2. Plusieurs types de mutation.

Mutation traditionnelle

Remplacement de sous-arbre par un arbre aléatoire

Remplacement de noeud par un noeud de même arité

Mutation “promotionnelle”

Insertion de noeud Faire du fils d’un noeud son petit-fils

Promotion de noeudRemplacer un noeud par un de ses noeud-fils

Robotique Evolutionnaire – p.61/133

Page 62: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Mutation: Terminaux numériques

Points d elicats :

Mutation structurelles: Modifient la structure de l’arbre

Très peu de “petites” modifications possibles

⇒ Ajustement des constantes nécessaireMutation “num erique”

Muter quelques constantes dans l’arbre très lent

Muter toutes les constantes dans l’arbrepeut être très destructeur

Optimisation:tirer n jeux de constantes, garder le meilleurcoupler optim. non paramétrique/paramétrique

de type montée, ou . . . évolutionaire

Robotique Evolutionnaire – p.62/133

Page 63: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un premier exemple B. Lamy

Régression "symbolique"

50 points (X0,X1,P(X0,X1)), P polynôme connu

Fitness =i=50∑

i=0

[Tree(X0, X1)− P (X0, X1)]2

Remarque: Il faut avoir de bonnes raisons pour utiliser GPpour la régression !

Robotique Evolutionnaire – p.63/133

Page 64: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Régression symbolique

P (X0, X1) = 2.5 ∗X02 + 1.2 ∗X12 − 1.8 ∗X0 + 0.6 ∗X1

01

23

45

6

0

1

2

3

4

5

6

0

100

50

0

1

2

3

4

5

6

0

100

50

01

23

45

6

xyz

z(x,y)=2.5*x*x+1.2*y*y-1.8*x+0.6*y Meilleur résultat: version postfixée((-1.42455)+((-2.57915)+((2.32683)+(X1+(X0+((X1+((X0*(X0+X0))+(X1*X1)))+((-0.968281)+((0.0169015)*((X1*(-15.3847))+((X1+(((X0*X1)+(X1-(X0+((-18.7284)+(X0+((X0*X1)+X1))))))+(X1+((-7.21495)*(X1+((-19.0404)+((4.32199)*(((-0.381033)*(X1*X1))+(X1+X1)))))))))-(X0*((14.7915)*((11.0556)-(X0+X0))))))))))))))

Après simplification par Maple2.499997075 ∗ X02 + 1.200819057 ∗ X12 − 1.797686828 ∗ X0 + 0.597758036 ∗ X1 − 0.006760359

Robotique Evolutionnaire – p.64/133

Page 65: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Retour à la robotique

Modèle : les réseaux de neuronesFeedforward ou récurrents

dont on optimisesoit les poidssoit aussi la topologie

par évolution artificielle

mais selon quel critère ?

Robotique Evolutionnaire – p.65/133

Page 66: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La fonction performance

Decomposition comportementale

MoteursCapteurs

Deplacement

Exploration

Evitement d’obstacles

Construction d’une carte

Manipulations

Robotique comportementale : L’utilisateur décompose le problème

MoteursCapteurs

?

?

?

?

?

Robotique evolutionnaire : La décomposition émerge durant l’évolution

Robotique Evolutionnaire – p.66/133

Page 67: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La fonction performance (2)

Fonctionnelle vs comportementaleÉtat du contrôleur vs Distance parcourue

Implicite vs expliciteSurvie vs Distance à la prise de courant

Variables internes vs externesCapteurs embarqués vs informations du superviseur

Co-évolution : Évolution de plusieurs robotsLa performance dépend des autres robots

Methodes traditionnelles ≡ Fonctionnelle, explicite et externeRobots autonomes ≡ Comportementale, implicite et interne

Performance subjective ≡ Comportementale, explicite et ex-

terneRobotique Evolutionnaire – p.67/133

Page 68: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Émergence de la complexité (2)

L’ evolution artificielle ne peut pas toutQuelques pistes :

Évolution incrémentale Problème du bootstrap

Apprentissage durant la "vie" du robot (on-line)

Évolution et développementÉvolution simultanée de la morphologie et du contrôleur

Robotique Evolutionnaire – p.68/133

Page 69: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Incrémentalité

Le problème du bootstrapTous les individus aléatoires sont nuls

Partir d’une tâche simple

La compliquer graduellement durant l’évolution

Exemple: reconnaissance visuelle

Bien Bien

Mal

Robotique Evolutionnaire – p.69/133

Page 70: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Simulation ou expérience réelle

Dans la réalité, les capteurs sont bruités, les rouespatinent, . . .

Mais une évaluation réelle prend 10 à 100 fois plus detemps que la même simulée,

quoique tout dépende de la précision de la simulation cfK. Simms

Il faut de toute façon bruiter artificiellement la simulationMais pas n’importe comment !

Validation finale sur robot réel

Robotique Evolutionnaire – p.70/133

Page 71: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Simulation minimale Nick Jacobi, 1997

Quelle doit être la précision de la simulation ?

Bon sens: le plus fidèle possible à la réalitéJ. Pollack et al., K. Simms, . . .

Mais seules certaines interactions auront lieu sil’évolution réussit

. . . et donc seules celles-là doivent être bien modélisées

Exemple : locomotion d’un robot insecte à 6 pattesLes chocs entre les pattes n’auront pas lieu

Modélisées simplement + pénalité

Robotique Evolutionnaire – p.71/133

Page 72: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Simulation minimale (2)

Le labyrinthe en TChoisir le bon embranchement en fonction d’un lumière

L1 L2

Si L1 Si L2

Si L1 Si L2

L1

L2

Phase 1

Phase 2

bruit

Environnement réel Environnement minimal

Mais interdit certaines solutionsSuivre le mur après avoir “vu” la lampe

Robotique Evolutionnaire – p.72/133

Page 73: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Ne pas se tromper de problème

Phonotaxie du cricket – B. Webb, 96

Phonotaxie du cricket Distingue les races et la direction

Mécanisme cognitif complexe ?

Robotique Evolutionnaire – p.73/133

Page 74: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Une approche naturaliste

Mais un examen attentif de la morphologie du cricket donne

. . .

Robotique Evolutionnaire – p.74/133

Page 75: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Résultats

Ce qui permet de faire des robots-cricket sans douleur !

H. Lund et B. Webb LegoLab – H. LundRobotique Evolutionnaire – p.75/133

Page 76: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Quelques expériences

Presque toutes tirées deEvolutionary Robotics – The biology, Intelligence, and Tec hnologyof Self-Organizing MachinesS. Nolfi et D. FloreanoMIT Press, 2000

Nombreuses figures reproduites avec la gracieuse permissiondes auteurs

Vidéos gracieusement fournies par D. Floreano

Robotique Evolutionnaire – p.76/133

Page 77: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Évitement d’obstacles Floreano et Mondada, 94

Un véhicule de Braitenberg et le RN récurrent qui va évoluer

Apprentissage des poids d’un RN fixé Optimisationparamétrique

Récurrent mais sans états internes

Apprentissage sur robot réel Plusieurs jours

Robotique Evolutionnaire – p.77/133

Page 78: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La fonction performance

F =

Texp.

V (1−√

∆v)(1− i)

V somme des vitesses ri ∈ [−0.5, 0.5] des roues →déplacement

∆v = |r1 + r2| → ligne droite

i maximum (normalisé) des capteurs → éloignement desobstacles

Comportementale, interne, expliciteRobotique Evolutionnaire – p.78/133

Page 79: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Analyse des résultats

Générations initialesLa plupart tournent sur placeLes meilleurs avancent lentementPas d’évitement d’obstaclePerf. dépend du point de départ

Après ≈ 20 gén.

Évite les obstaclesNe tournent plus sur place

Ensuite, accélèrent progressivement

Robotique Evolutionnaire – p.79/133

Page 80: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Analyse des résultats (2)

N’atteignent jamais plus de 48mm/s (max = 80)Inertie et mauvais capteurs

Ne se bloque pas dans les coins étroitsComme les contrôleurs de Braitenberg

Autres exp eriences

Changement d’environnement

Changement de plate-forme (robot Koala)

De la simulation à la réalité

Ré-adaptation très courte → IncrémentalitéRobotique Evolutionnaire – p.80/133

Page 81: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et recharge Floreano et Mondada, 96

Au-delà d’un comportement réactifConditions

La batterie se déchargeen 20s dans la zoneblanche

et se recharge dans lazone noire

Mais la zone noiren’augmente pas la perfor-mance

Robotique Evolutionnaire – p.81/133

Page 82: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et recharge (2)

Un capteur supplémentaire sous le robot → sol noir/blanc

2 capteurs sont utilisés en mode passif→ lumière ambiante

Apprentissage : réseau de type Elman

Apprentissage des poidsd’un RN fixé

Récurrent avec étatsinternes

Apprentissage sur robotréel

Lumiere BatterieSolCapteurs IR

Connections feed−forward totales

Couche recurrente totalement connectee

Robotique Evolutionnaire – p.82/133

Page 83: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et recharge (3)

La fonction performance

F =

Zone blancheV (1− i)

Le temps de vie dépend de la gestion de la batterie

décharge simulée – 3 cycles de vie maximum

V somme des vitesses ri ∈ [−0.5, 0.5] des roues →déplacement

i maximum (normalisé) des capteurs → éloignement desobstacles

Comportementale, interne, explicite avec un peu d’implicite

Robotique Evolutionnaire – p.83/133

Page 84: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Analyse des résultats

Au cours de l’ evolution

Fitness (meilleure et moyenne) Nombre de pas de moteur du meilleur

Etude du meilleur comportementMéthodes de neurophysiologie et d’éthologie

On instrumente le robot

Batterie et état des moteurs au cours de la “vie” du robot

Robotique Evolutionnaire – p.84/133

Page 85: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Robustesse et généralisation

Robot posé en différentsendroits

avec différentes orientations

Une fois la recharge trouvée, illa retrouve toujours

Quelquefois, ne trouve jamaisla recharge

Mais attention à ladynamique !

Robot arrêté

Robotique Evolutionnaire – p.85/133

Page 86: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Étude des noeuds cachés

Visualisation de l’activation des neurones cachés lors d’unetrajectoire

Conditions normales Sans lumièrePeu de modularité évidente . . . sauf pour le noeud H4

Robotique Evolutionnaire – p.86/133

Page 87: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Étude du neuroneH4

activité de H4 / direction trajectoires batteriedu robot pleine ou vide

Robotique Evolutionnaire – p.87/133

Page 88: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Changement d’environnement

Robotique Evolutionnaire – p.88/133

Page 89: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Évolution de robots adaptatifs Floreano et Mondada, 96

Introduction d’apprentissage en lignePour

Le robot s’adapte aux changement d’environnement

L’apprentissage peut guider l’évolutionEffet Baldwin vs Lamarckisme

Contre

Les premiers pas de temps risquent d’êtrecatastrophiques

Dans un environnement compétitif, retarde lareproduction

Les résultats sont a priori moins robustes

L’apprentissage peut coûter cherRobotique Evolutionnaire – p.89/133

Page 90: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage de règles non-supervisées

On code les synapses sur 8 bits

Entrée ou modulation

Excitation ou inhibition

Règle d’apprentissageRègle de HebbRègle postsynaptiqueRègle présynaptiqueCovariance

η parmi 0, 0.3, 0.7, 1

Robotique Evolutionnaire – p.90/133

Page 91: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Résultats

Mais apprentissage lent

Environnement compétitif

Environnement changeant rapidement

Robotique Evolutionnaire – p.91/133

Page 92: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage de prédiction des sorties

On apprend par rétro-propagation . . . à partir des erreursprédites

Deux réseaux parallèles

L’évolution apprendLes poids des 2 réseauxLes paramètres de laRPG

Poids du réseaux “moteur”ajustés en ligne

à partir de la déviation / sor-ties prédites

Sensations

Retro−propagation

adaptatif

RN

RNfixe

Actionde reference

effectiveAction

Robotique Evolutionnaire – p.92/133

Page 93: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Mur noirs-murs blancs

Les réponses des capteurs dépendent de la couleur desmurs

Tâche : explorer l’arène trouver une cible "invisible"

10 essais époques

La couleur des murs change à chaque génération

Seuls les robots capables de modifier leur comportement

peuvent survivre à plusieurs changements

Robotique Evolutionnaire – p.93/133

Page 94: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Analyse des résultats

Légèrement meilleur que évolution seule etapprentissage seul . . .

dans l’environnement d’apprentissage seulement!

En changeant d’environnement En gelant les poidsRésultats de Nolfi et Parisi→ adaptation

Robotique Evolutionnaire – p.94/133

Page 95: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Opportunisme de l’évolution N. Godzik, 2004

Stabilit e a plus long terme

L’évolution ne teste jamais plus de 10 époques !

Tests des meilleurs résultats (500 générations)

mais sur 1000 époquesavec changement de couleur toutes les 10 époques

Epochs

Life

time

befo

re c

rash

(<0)

or

targ

et (

>0)

100 300 500 700 900

-200

0

200

400Typical performance of auto-teaching network

Epochs

Life

time

befo

re c

rash

(<0)

or

targ

et (

>0)

100 300 500 700 900

0

-500

500

"Best" performing auto-teaching network

Résultats pour le pire et le meilleur de 21 réseaux auto-teachingRobotique Evolutionnaire – p.95/133

Page 96: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Anticipation

Force de rappel dans l’environnementPrédire le résultat de ses actions

Contingences sensori-motricesmodèle du monde procédural

Perceptions

Sensations

Sensations

Actuators

Model

Actuator network

Anticipatory network

at time t + 1

BackPropagation

Difference between anticipation

and reality

Predicted

5

4

3

2

1 6

Robotique Evolutionnaire – p.96/133

Page 97: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Stabilité de l’anticipation

Mêmes conditions expérimentalesdurant l’évolution, puis durant les tests post-évolution

Generations

Bes

t fitn

ess

0 100 200 300 400 500

1000

2000

3000

Anticipatory architecture

Epochs

Life

time

befo

re c

rash

(<0)

or

targ

et (

>0)

100 300 500 700 900

0

-500

500Performance of the worst auto-teaching network

Perfomance on-line (moyenne Test sur 100 époques du pireet maximum sur 21 essais) des 21 réseaux anticipatoires

Mais adaptation limitée

Robotique Evolutionnaire – p.97/133

Page 98: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage d’une variable aléatoire Yamauchi

Le robot doit apprendre lelien but/lumière au premieressai de chaque époque, etle mémoriser.

D B

C E

Landmark-far Landmark-near

A

• Un calcul de fitness = 15 époques•Une époque = – Positionnement aléatoire du but et de la lumière

– 10 essais à partir d’une position aléatoire

• Score = nbre de fois oú le robot trouve le but (∈ [0, 150])

Robotique Evolutionnaire – p.98/133

Page 99: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Résultats avec réseaux CTRNNs

CTRNNs : Continuous Time récurrent Neural NetworksRéseau totalement connecté, 11 entrées et 2 sorties

dyi

dt=

1

τ(−yi +

k∑

j=1

wji1

1 + exp(yj|βj)+ gIi

yi sortie du neurone i, Ii: entrées du réseauτi ∈ [10−0,7, 101,3, wij ∈ [−4, 4], βi ∈ [−2, 2], g ∈ [1, 7] inconnuesRésolution numérique par un schéma de discrétisationstandard (Euler)Les activations du réseau sont mises à 0 au début dechaque époque

pas entre les époques !!!

Robotique Evolutionnaire – p.99/133

Page 100: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

RésultatsGénotype: 196 réels, croisement arithmétique 100%,mutation gausienne (σ = 0.1) 10%

Taille population 100, élitisme 2, sélection par roulette,5000 générations

Resultats de 10 runs Performance du meilleur sur 5000 tests

0 5 10 150

0.5

1

Run n.1

Nor

mal

ized

freq

.su

cces

sful

beh

avio

ur

Trials0 5 10 15

0

0.5

1

Run n.2

Trials0 5 10 15

0

0.5

1

Run n.3

Trials0 5 10 15

0

0.5

1

Run n.4

Trials0 5 10 15

0

0.5

1

Run n.5

Trials

0 5 10 150

0.5

1

Run n.6

Trials

Nor

mal

ized

freq

.su

cces

sful

beh

avio

ur

0 5 10 150

0.5

1

Run n.7

Trials0 5 10 15

0

0.5

1

Run n.8

Trials0 5 10 15

0

0.5

1

Run n.9

Trials0 5 10 15

0

0.5

1

Run n.10

Trials

Pas de modularité constatée dans les RNs obtenus!Robotique Evolutionnaire – p.100/133

Page 101: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Co-évolution

Compétition (pas coopération)

Lutte pour la survie

Modèle proie-prédateur Lotka-Volterra

∂N1

∂t= N1(r1 − b1N2),

∂N2

∂t= N2(−r1 + b2N1)

→ oscillations des tailles de population

Simulation : tailles de population fixe, performancevariable

Équivalent si le taux de reproduction est proportionnel à laperformance

Fitness calculée à partir de tournoisEntre tous, aléatoires, avec les meilleurs seulement, . . .

Robotique Evolutionnaire – p.101/133

Page 102: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Proie/prédateur Floreano et Nolfi, 97-99

Le prédateur voit, mais est lent RN 8+5→ 2 récurrentes

La proie est aveugle, mais deux fois plus rapideRN 8→ 2 récurrentes

Robotique Evolutionnaire – p.102/133

Page 103: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

La fonction performance

Tournoi “round robin” entre tous les prédateurs et toutesles proies

Arrêt lorsque le prédateur touche la proie (capteurspécial)

ou après un temps donné (500 cycles, ≈ 50s)

La durée du tournoi est ajoutée à la performance des 2adversaires

Les proies doivent minimiser la somme des temps de tournoiLes prédateurs doivent la maximiser

Comportementale, interne/externe, implicite

Robotique Evolutionnaire – p.103/133

Page 104: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Premiers résultats

Prédateurs initiaux très mauvais

Effet “Red Queen” bien visible

Les meilleurs en fin d’évolution peuvent être (facilement)battus par des meilleurs intermédiaires !

Robotique Evolutionnaire – p.104/133

Page 105: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Le tableau d’honneur (hall of fame)

Idee: affronter aussi les champoins des générations passées

Plus d’effet “Red Queen”

Robotique Evolutionnaire – p.105/133

Page 106: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Hall of fame (2)

Tournoi entre tous les individus rencontrés à toutes lesgénérations.Noir ≡ prédateur gagne. Blanc ≡ proie gagne.

Situation idéale / Sans tableau d’honneur / Avec tableau d’honneur

Les meilleurs en fin d’évolution sont meilleurs que presquetous les individus intermédiaires

Robotique Evolutionnaire – p.106/133

Page 107: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Contrôleurs symboliques et superviseurs

Trouver un compromis entre

L’expert dicte le comportemente.g. l’architecture de subsumption de Brooks

L’évolution découvre tout toute seulee.g. Floreano & Nolfi, Tuci & al., . . .

Contr oleurs symboliques

L’expert donne les briques de basee.g. aller tout droit, tourner

L’évolution les assembleSortie du contrôleur = quel brique utiliser

Robotique Evolutionnaire – p.107/133

Page 108: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Superviseur

A3

I1

I2

I3

I4

NN

FORWARD

BACKWARDA2

LEFT

RIGHT

Choose ACTION Ai

= Arg Max

Execute with

INTENSITY Ii

LEFT

LEARNED KNOWN

RIGHT

A1

A4 Aj

INPUTS ACTIONS MOTORS

Robotique Evolutionnaire – p.108/133

Page 109: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Évitement d’obstacles

Contr oleurs classiques vs symboliques

*

Architecture CC CS

8-2 / 8-6 861 ± 105 1030 ± 438-8-2 / 8-8-6 1042 ± 100 1094 ± 558-20-2 / 8-14-6 1220 ± 41 1315 ± 68-20-2 / 8-14-6∗ 1132 ± 55 1197 ± 16

Moyennes sur 10 essais indépendantsRobotique Evolutionnaire – p.109/133

Page 110: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Évitement d’obstacles (2)

10 contrôleurs symboliques 10 contrôleurs classiques

Les contrôleurs symboliques trouvent la vitesse max. plus rapidement

Note: Punctuated Equilibrium ?

Robotique Evolutionnaire – p.110/133

Page 111: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les superviseurs

Passage a l’ echelleDonner á l’évolution une bibliothèque de briques de base

Bilbiothèque = Évitement d’obstacles, Balayage, Stop, Suivi de lumière

Robustesse : Ajouter des briques non pertinentes, voiredangereuses

Architecture des superviseurs :RN Elman (une couche cachée totalement connectée)Nb sorties = |bibliothèque|À chaque pas de temps, exécuter i, i = ArgmaxSortie(j).

Robotique Evolutionnaire – p.111/133

Page 112: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Conditions expérimentales

Réseau Elman, avec pour sorties

1. Les actuateurs contrôleur classique

2. ToutDroit, Droite, Gauche contrôleur symbolique

3. Bibliothèque de contrôleur classiques superviseurclassique

4. Bibliothèque de contrôleur symboliques superviseursymbolique

Robotique Evolutionnaire – p.112/133

Page 113: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et survie

Inspiré par Floreano et Nolfi

Le robot a une batterie (virtuelle)décharge en 685 pas de temps

Sous le lumière, la zone derecharge

mais pas de capteur de sol

La recharge n’est pas instantanée100 pas de temps

17 entrées8 capteurs IR actifs, 8 passifs, et le

niveau de batterie

Fitness ∝ vitesseen dehors de la zone de recharge

Robotique Evolutionnaire – p.113/133

Page 114: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et survie, Résultats

Evaluations

Mei

lleur

des

mei

lleur

s

41. 10 43. 101000

2000

3000

4000

5000

6000

Controleur Elman classique Controleur Elman symbolique Superviseur Elman classique Superviseur Elman symbolique

Batterie mobile - comparaison des 4 approches

Evaluations

Moy

enne

des

mei

lleur

s

10000 30000

1000

2000

3000

4000

5000

6000

Controleur Elman classique Controleur Elman symboliqueSuperviseur Elman classiqueSuperviseur Elman symbolique

Batterie mobile - comparaison des 4 approches

Meilleur des meilleurs Moyenne des meilleurs

Statistiques sur 10 runs indépendants

Robotique Evolutionnaire – p.114/133

Page 115: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exploration et survie, Résultats (2)

RobustesseLa vitesse est importante

Balayeur jamais utilisé

Suivi de lumière rarementutilisé

Generations

App

les

en 1

0000

pas

0 10050 1500

1000

2000

3000

4000

5000

6000

Lumiere Stop ExplorateurBalayeur

Utilisation des divers comportements (4 inutiles)

Questions ouvertes

Faiblesse des performances du contrôleur symbolique

Quoi qu’il continue à s’améliorer si on continuel’évolution Neutralité?

Robotique Evolutionnaire – p.115/133

Page 116: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Sensibilité à la bibliothèque

Les briques inutiles sont filtrées – ralentit (un peu) l’évolution

Generations

App

les

en 1

0000

pas

0 10050 1500

1000

500

1500

Crash Fuite Random Colle au mur

Utilisation des divers comportements (4 inutiles)

4 comportements inutiles 20 comportements inutiles

Statistiques d’utilisation moyenne des comportements par lemeilleur contrôleur de la population au cours des

générationsRobotique Evolutionnaire – p.116/133

Page 117: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Généralisation

Vitesse de charge/décharge:Avantage net au superviseur symbolique

Augmentation de la taille de l’arèneLéger avantage au . . . contrôleur classique Elmann

Mais il ne fait qu’entrer et sortie de la zone de recharge

La superviseur symbolique n’a besoin que dequelques générations de plus

Ajout de murs: Pas de différence Tout le monde échoue :-(

Robotique Evolutionnaire – p.117/133

Page 118: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Contrôleurs symboliques : Conclusion

Meilleur choix : Superviseur symboliqueexploite les comportements de base fournistrès petite variance des résultats

Contrôleur classique: quelquefois aussi bon, grandevariance

Contrôleur symbolique: évolution lente (pourquoi ?)

Superviseur classique: stagne rapidement

Premiers r esultats : montrentle passage à l’échelleles capacités de généralisation

la robustesse: les comportements inutiles ne sont pas utilisés

Robotique Evolutionnaire – p.118/133

Page 119: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Embryogénèse F. Gruau, 95

Arbre→ graphe de connexionEmbryogenèse : un “embryon” se développe selon un arbrede règles.

Sur un exemple, dans le contexte des réseaux de neurones

booléens:

Robotique Evolutionnaire – p.119/133

Page 120: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les primitives GP

T E symbole de fin

N S Division séquentielle

P Division parallèle

A Incrémenter le seuil du neurone

O Décrémenter le seuil du neurone

+ Incrémenter le poids d’un lien

− Décrémenter le poids d’un lien

C Couper le lien courant

I Incrémenter le numéro du lien courant

D Décrémenter le numéro du lien courant

R Retour au sommet de l’arbre

W Wait

Remarque : un seul terminal⇒ besoin de mutation !

Robotique Evolutionnaire – p.120/133

Page 121: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Développement d’un réseau de neurones

0

input

output

S

P S

E P

A E E

−E

E

a

0

input

output

0

S

P S

E P

A E E

−E

E

a

b

L’arbre et l’embryon Étape 1

Robotique Evolutionnaire – p.121/133

Page 122: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Développement d’un réseau de neurones (2)

input

output

0

00

S

P S

E P

A E E

−E

E

b

a c

0

0

output

00

input

S

P S

E P

A E E

−E

E

b

a c

d

Étape 2 Étape 3, 4 et 5

Robotique Evolutionnaire – p.122/133

Page 123: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Développement d’un réseau de neurones(3)

0

output

00

input

0 0

S

P S

E P

A E E

−E

E

a c

d

b b

output

00

input

0

S

P S

E P

A E E

−E

E

a c

d

b b1

−0

Étape 6 État final (réseau XOR)

Robotique Evolutionnaire – p.123/133

Page 124: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Développement d’un réseau de neurones (4)

Avec récursion:

input

output

0

00

S

P S

P

A E E

−E

E

b

a cR(1)

input

output

0

00

S

P S

P

A E E

−E

E

b

a cR(0)

00

0

output

0

0

input

1

−0

1

−0

Étape 2 Étape 3 État final

Robotique Evolutionnaire – p.124/133

Page 125: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Synthèse de circuits analogiques Koza et al. 95, 98

Embryon :une entrée, une sortie

2 cellules initiales : connection source | sortie

connection terre | sortie

Acquis :Simulateur de circuits analogiques ROBUSTE

SPICE (217 000 lignes, Berkeley)Realisations :

Filtres passe-bande asymétriques

Extracteur racine cubique

Amplifieurs,...

Robotique Evolutionnaire – p.125/133

Page 126: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Synthèse de circuits analogiques (2)

...

Diode

LIST

Stop PNP xxx

R 500 Ohms ...

...

Terre

C 50 pFStop

... Serie R1 R2

Parallel

Un exemple de programme et d’embryon

Robotique Evolutionnaire – p.126/133

Page 127: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exemples de noeuds et terminaux

Fil générique

Developpement :

ResistanceΩR 1

Un terminal Application au fil générique

Robotique Evolutionnaire – p.127/133

Page 128: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Exemples de noeuds (2)

1R R2,

Parallele

TransistorType

Noeuds Application au fil générique

+ mémoire, récursion et subroutines

Robotique Evolutionnaire – p.128/133

Page 129: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Un résultat: Ampli opérationnel 60dB

Meilleur initial Génération 49 Génération 109Mais taille population = . . . 640 000

Robotique Evolutionnaire – p.129/133

Page 130: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Apprentissage de la topologie d’un contrôleur neur

F. Gruau (95) – Robot à six pattes – marche, simulationseulementDécomposition (par l’algorithme) en 3 sous-réseauxidentiques

1 million évaluations . . .

J. Kodjabachian et J.-A. Meyer (98) – marche +obstacles + but Suite des travaux de Gruau

N. Jakibi (98) – marche + évitement d’obstaclesSimulation minimale pour un robot octopode

3500 générations, passage au robot réel

T. Gomi et K. Ide (98) – sur robot réel (“homard” de3.5kg)

40s par robot, 100 générations de 50 robotsRobotique Evolutionnaire – p.130/133

Page 131: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Évolution de morphologie

Nombreux travaux . . . préliminairesR. Dawkins (89), K. Simms (94), J. Pollack (99 . . . ), O.Chocron (99)

La morphologie du robot est un facteur essentiel

Pourquoi ne pas la faire évoluer aussi ?

Deux approchesSimulation seulement – tout est permisRéalisme – il faut générer des robots constructibles

Robotique Evolutionnaire – p.131/133

Page 132: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les créatures de Karl Simms

Évolution de la morphologie et du “cerveau” neuronal

suivant une grammaire

représentée à l’aide de graphes orientés

Simulation lourdePlusieurs jours de Connection Machine – 65000 proc.

Évolution de locomotion (marcher, nager, sauter)

et co-évolution compétitive (attraper un objet le premier)

Robotique Evolutionnaire – p.132/133

Page 133: Marc Schoenauer Projet TAO – INRIA Futur et LRI Orsay

Les créatures de Karl Simms (2)

Segment

Segmentjambe

Segmentcorps

Segmentcorps

tete

membres

Robotique Evolutionnaire – p.133/133