Apprendre par imitation: une nouvelle voie d - Risc

publicité
Université de CERGY-PONTOISE
Universitatea Politehnica TIMISOARA
Apprendre par imitation: une nouvelle voie
d’apprentissage pour les robots autonomes
THESE
présentée et soutenue publiquement le 19 decembre 2000
pour l’obtention du
Titre de DOCTEUR EN SCIENCES
TRAITEMENT DE L’IMAGE ET DU SIGNAL
par
Sorin MOGA
Composition du jury
Rapporteurs :
Frederic Alexandre, Directeur de Recherche à l’INRIA.
Raja Chatila, Directeur de Recherche au CNRS.
Examinateurs :
Monica Borda, Professeur à l’Université Tehnica de Cluj
Jean-Pierre Cocquerez, Professeur à l’Université de Campiegne
Jaqueline Nadel, Directeur de Recherche au CNRS
Gregor Schöner, Directeur de Recherche au CNRS
Directeur cotutelle : Ioan Nafornita, Professeur à l’Université Politehnica de Timisoara
Directeur :
Philippe Gaussier, Professeur à l’Université de Cergy-Pontoise
Je dédie cette thèse
à Mihaela,
à mes parents.
Dedic aceasta teza
Mihaelei,
parintilor mei.
Remerciements
Je tiens tout d’abord à exprimer mes sincères remerciements à Philippe Gaussier qui a
assure l’encadrement de ma thèse. Je le remercie pour la confiance accordé et la patience
avec laquelle il a suivi de très près mes tâtonnements et mes hésitations pendant ces
années de thèse.
Je tiens vivement à remercier Jean-Pierre COCQUEREZ qui a eu la double responsabilité de m’accueillir en tant que directeur au sein du laboratoire ETIS et de présider
mon jury de thèse.
Je remercie les membres du jury pour le temps consacré à l’évaluation de mes travaux,
en particulier Raja Chatila et Frederic Alexandre pour avoir accepté les fonctions de
rapporteur d’un si gros manuscrit.
Je remercie aussi Gregor Schöner, Jacqueline Nadel pour l’intérêt qu’ils ont porté à
mon travail et pour leurs disponibilité lors de nos discussions extrêmement enrichissantes
pour moi.
Je remercie M. Ioan Nafornita d’avoir rendu possible cette thèse en cotutelle. Je
remercie aussi Mme Monica Borda d ’avoir accepté d’assister à ma soutenance bien que
la langue française ne soit pas sa langue maternelle.
Je tiens particulièrement à remercier M. Jean-Paul BANQUET, pour les discussions
stimulantes que nous avons eu, car c’est grâce à ses connaissances en neurobiologie que
nous avons pu développer notre mécanisme de prédiction.
Et puis, je tiens à remercier mes amies, mes amis, mes proches, mes copains, mes
collègues qui m’ont donné du temps, de l’écoute et du soutien à tous les moments opportuns et qui ont réussi à supporter mon humeur roumaine.
Résumé
L’objectif de la thèse est de concevoir une architecture neuronale permettant à un robot
autonome d’apprendre par imitation. Cet objectif s’inscrit dans une problématique plus
générale de l’intelligence artificielle : l’apprentissage autonome. Le manuscrit présente des
travaux qui ont avancés en parallèle sur 4 axes de recherches afin d’obtenir une architecture
implanté sous un robot de type KOALA.
Un premier axe de travail consistait dans l’évaluation des apports possibles des interactions sociales entre robots autonomes ou entre les robots et les humains avec un
accent mis sur l’étude et la modélisation des mécanismes d’imitation. Pour réussir une
telle expérience, il est indispensable de disposer d’un cadre théorique pour les processus
d’imitation (construit à partir des données neurobiologiques et éthologiques). Nous allons
montrer qu’une capacité d’imitation (la proto-imitation) est une capacité émergente d’un
système simple.
Un deuxième axe de travail est l’apprentissage de séquences. Nous allons présenter
une architecture neuronale permettant l’apprentissage en temps réel d’une séquence (enchaı̂nement des actions et la durée entre les actions) des mouvements d’un robot mobile. L’architecture permet la prédiction des actions ce qui nous permet de disposer d’un
détecteur de nouveauté puissant.
Le troisième axe, est l’étude de la vision comme source principale d’information dans
un système robotique. Le point de départ est le développement d’une architecture permettant la détection et la segmentation des objets en mouvement en utilisant le flot optique. Par la suite, nous allons présenter l’importance des mécanismes dynamiques dans
la perception mais aussi dans la prise de décision en étudiant les champs dynamiques. Enfin, l’implantation d’un mécanisme de reconnaissance de formes visuelles nous a permis
d’étudier l’aspect forme de la vision.
Le quatrième axe, moins visible mais tout aussi important, est l’étude de l’architecture
robotique. Implanter des architectures pour un robot autonome a soulevé plusieurs aspects qui ne peuvent pas être relevés au cours des simulations (plus de 90% des expériences
ont été réalisées en temps réel). Les contraintes de temps réel nous ont amenées à étudier
la parallélisation des tâches. Le choix des champs dynamiques pour coder les ordres moteurs s’est avéré très judicieux car ses propriétés mathématiques garantissent la possibilité
de fusionner le résultat de processus de calculs non synchronises.
Nu-ţi fie frică de ridicol ; dacă simţi ce spui, dacă te pui pe tine
curat ı̂n cuvinte, n-ai cum să fii ridicol. Fă-l pe cel de lı̂ngă tine
să simtă ce simţi – dinăuntrul lui. Din afară poţi convinge, şi poţi
ı̂nţelege lucrurile, dar fară să le simţi. Lucrurile pe care nu le simţi
se uită, sau te poţi obişnui pı̂nă la urmă cu ele, ceea ce e şi mai rău.
Ce pleacă din tine nu se poate uita, şi nu te ı̂nşală, şi atunci nu se
poate ı̂ntoarce niciodată ı̂mpotriva ta ; dar pentru asta trebuie să fii
foarte curat cu tine, şi asta iar e greu. Ca un zbor cu motorul defect.
Doru Davidovici – Ridică-te şi mergi!
N’ai pas peur d’être ridicule ; si ce que tu dis, tu le sens dans ton
coeur, si tu transposes ta pureté dans des mots, il n’y a aucun
moyen de te sentir ridicule. Essaye de faire sentir à celui en face de
toi ce que tu ressens, et qu’il le sente vraiment de son propre être.
Vu de l’extérieur, on peut convaincre et on peut comprendre les
choses, mais sans les sentir vraiment. Les choses qu’on ne ressent
pas s’oublient ou bien on peut s’y habituer à un moment donné,
ce qui est pire. Ce qui surgit du plus profond de toi-même ne peut
pas s’oublier et ne peut pas te décevoir, et donc ne se retournera
jamais contre toi ; mais pour cela il faut que tu soit pur avec toi
même et ceci n’est pas facile. Ce serait comme un vol avec le
moteur en panne.
Doru Davidovici – Leve-toi et marche!
Sommaire
1 Introduction
15
2 Introduction aux mécanismes d’imitation
2.1 Différentes approches de l’imitation . . . . . .
2.1.1 L’approche développementale . . . . .
2.1.2 L’approche primatologiste . . . . . . .
2.1.3 L’approche neurobiologique . . . . . .
2.2 Techniques d’imitation . . . . . . . . . . . . .
2.2.1 Stimulus enhancement . . . . . . . . .
2.2.2 L’émulation . . . . . . . . . . . . . . .
2.2.3 L’imitation . . . . . . . . . . . . . . .
2.2.4 La réponse facilité . . . . . . . . . . .
2.2.5 L’imitation au niveau du programme .
2.3 Les mécanismes d’imitation en robotique . . .
2.4 Cadre de notre processus de ”proto-imitation”
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
19
20
21
23
25
27
27
27
28
28
29
30
34
3 Réseaux de neurones
et systèmes dynamiques
3.1 Du neurone réel à son modèle . . . . . . . . . . . .
3.1.1 Modéliser les potentiels d’action ? . . . . . .
3.1.2 Le neurone artificiel . . . . . . . . . . . . . .
3.1.3 Apprentissage associatif et conditionnement
3.2 Données neurobiologiques et anatomiques . . . . . .
3.2.1 Vision d’ensemble de l’anatomie du cerveau
3.2.2 Données neurobiologiques sur la vision . . .
3.2.2.1 La rétine . . . . . . . . . . . . . .
3.2.2.2 Le corps génicullé latéral . . . . . .
3.2.2.3 Le cortex visuel . . . . . . . . . . .
3.2.3 Le cortex limbique et l’hippocampe . . . . .
3.3 Modèles de réseaux de neurones . . . . . . . . . . .
3.3.1 Winner Take All (WTA) . . . . . . . . . . .
3.3.2 Le réseaux ART . . . . . . . . . . . . . . . .
3.3.3 Les cartes topologiques auto-adaptatives . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
39
40
42
43
45
48
48
51
51
53
54
57
61
61
62
65
11
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3.3.4
3.4
3.5
La carte topologique probabiliste
(Probabilistic Topological Map - PTM) . . . . . . . . . . . . . . .
3.3.5 L’architecture PerAc . . . . . . . . . . . . . . . . . . . . . . . . .
Les systèmes dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1 Introduction aux systèmes dynamiques . . . . . . . . . . . . . . .
3.4.1.1 Les attracteurs stables (leur position n’évolue pas au cours
du temps) . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1.2 Les attracteurs mobiles (leur position évolue au cours du
temps) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2 Les champs neuronaux . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2.1 Les propriétés mathématiques du modèle d’Amari . . . .
3.4.2.2 Importance des champs neuronaux . . . . . . . . . . . .
3.4.3 Applications robotiques des champs neuronaux . . . . . . . . . .
3.4.3.1 L’intégration d’un champ neuronal dans une application
de suivi . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.3.2 Résultats expérimentaux . . . . . . . . . . . . . . . . . .
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
68
71
73
73
. 74
.
.
.
.
.
75
75
77
79
79
. 82
. 85
. 90
4 Perception du mouvement et flot optique
4.1 Principe et formalisation du flot optique . . . . . . . . . . . . . . . . . .
4.2 Méthodes pour l’extraction du flot optique . . . . . . . . . . . . . . . . .
4.2.1 Méthode empirique - la différence entre images . . . . . . . . . . .
4.2.2 Le modèle de Reichardt . . . . . . . . . . . . . . . . . . . . . . .
4.2.3 Les méthodes de mise en correspondance . . . . . . . . . . . . . .
4.2.3.1 Implantation de certaines variantes de la méthode de mise
en correspondance . . . . . . . . . . . . . . . . . . . . .
4.2.4 Techniques différentielles . . . . . . . . . . . . . . . . . . . . . . .
4.2.5 Techniques énergétiques . . . . . . . . . . . . . . . . . . . . . . .
4.2.6 Estimation de la composante de rotation du flot optique . . . . .
4.3 Du problème de suivi à la perception de mouvements par transparence .
4.3.1 Expérience psychovisuelle . . . . . . . . . . . . . . . . . . . . . .
4.3.1.1 Méthode . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1.2 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.2 Un modèle neuronal pour la perception du mouvement . . . . . .
4.3.2.1 Architecture et équations . . . . . . . . . . . . . . . . .
4.3.2.2 Étude de la stabilité . . . . . . . . . . . . . . . . . . . .
4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
91
92
95
95
98
99
.
.
.
.
.
.
.
.
.
.
.
.
.
101
104
106
110
114
116
116
117
118
118
119
122
126
5 Apprentissage de séquences temporelles
5.1 Modèles pour l’apprentissage de séquences temporelles . . . . . . . . . .
5.1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.2 Modélisation mathématique d’une séquence temporelle . . . . . .
129
. 130
. 130
. 132
5.1.3
5.2
5.3
5.4
Les modèles utilisés dans l’audition . . . . . . . . . . . .
5.1.3.1 Les modèles d’horloges internes . . . . . . . . .
5.1.3.2 Le modèle de la perception du rythme . . . . .
5.1.4 Les modèles d’inspiration neurobiologiques . . . . . . . .
5.1.4.1 Le modèle de Reiss et Taylor . . . . . . . . . .
5.1.4.2 Le modèle de Grossberg, Schmajuk et Merrill .
5.1.4.3 Le modèle de Levy . . . . . . . . . . . . . . . .
Proposition d’un modèle pour l’apprentissage du timing . . . . .
5.2.1 Description du modèle . . . . . . . . . . . . . . . . . . .
5.2.2 Analyse mathématique des conditions de prédiction . . .
Simulations du modèle . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 Considérations sur la base de cellules à réponses retardés
5.3.2 Apprentissage de la “forme” d’une entrée analogique . .
5.3.3 Apprentissage de séquences simples . . . . . . . . . . . .
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6 Une architecture minimale pour l’apprentissage par imitation
6.1 Architecture pour apprendre l’aspect temporel d’une trajectoire . .
6.1.1 Mécanisme de poursuite réflexe . . . . . . . . . . . . . . . .
6.1.1.1 Limitations du mécanisme de suivi simple . . . . .
6.1.1.2 Filtrage actif pour la segmentation du mouvement
6.1.2 Exemple d’apprentissage d’une séquence . . . . . . . . . . .
6.2 Apprendre à reconnaı̂tre le “professeur” . . . . . . . . . . . . . . . .
6.2.1 Mécanisme de focalisation de l’attention . . . . . . . . . . .
6.2.2 Mécanisme d’apprentissage de vue locales . . . . . . . . . .
6.2.3 Intégration des architectures . . . . . . . . . . . . . . . . . .
6.2.4 Parallélisation de l’architecture . . . . . . . . . . . . . . . .
6.2.5 Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
132
133
134
135
135
138
139
142
142
145
149
149
154
156
160
.
.
.
.
.
.
.
.
.
.
.
.
161
. 164
. 164
. 167
. 169
. 173
. 178
. 178
. 181
. 183
. 185
. 188
. 192
7 Conclusions et Perspectives
193
7.1 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
7.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
A Description du robot KOALA
199
B PVM
B.1 Introduction . . . . . . . . .
B.2 Designing NN architectures
B.3 Running NN architectures .
B.4 Results and discussions . . .
203
. 203
. 204
. 206
. 208
C Liste de publications
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
211
Chapitre 1
Introduction
Precision is not truth.
Anonymous
Depuis plus d’une quarantaine d’années déjà, les chercheurs en Intelligence Artificielle
(IA) et en robotique essaient de créer des systèmes capables d’apprendre par eux mêmes.
Le bilan de ces travaux est très contrasté. Un grand nombre d’algorithmes ayant recourt
à l’analyse combinatoire et à l’optimisation ont vu le jour. Dans la plupart des cas, apprendre à résoudre un problème donné revient à adapter un certain nombre de paramètres
de manière à optimiser la fonction associée au comportement désiré. La difficulté réside
alors dans la caractérisation de la fonction d’évaluation et dans le choix du modèle à optimiser. Pour un problème bien posé, les résultats de ces techniques sont impressionnants et
dépassent largement ce qu’un humain est capable de faire (jouer aux échecs par exemple).
Malheureusement, dans le cas d’un système laissé à lui même dans un environnement
a priori inconnu, un double problème apparaı̂t : il faut à la fois identifier les nouvelles
situations en tant que telles (créer ou gérer de nouvelles variables) et gérer l’explosion
combinatoire des associations entre situations et actions possibles sachant que le signal
de renforcement peut ne parvenir que longtemps après l’exécution des actions.
Cette thèse s’inscrit, donc, dans le cadre de la recherche de nouvelles voies pour la
conception de systèmes capables d’apprendre de manière autonome. Les techniques
d’apprentissage par renforcement permettant à un robot de “découvrir” par lui même la
solution à un problème donné ne pouvant être utilisées seules, le cadre de l’apprentissage
par imitation s’impose. En effet, même s’il est possible d’apprendre à un robot un
jeu arbitraire d’associations sensori-motrices [159], il n’est pas imaginable d’utiliser ce
type de technique pour apprendre un comportement très élaboré, comme manipuler un
outil, créer une structure complexe... (le temps d’exploration de l’ensemble des actions
possibles deviendrait très rapidement prohibitif et le risque de réaliser une action fatale
très grand!). De plus, nous verrons qu’étudier les mécanismes d’imitation sur des robots
réels (et non réduits à l’état de jouets) impose de s’intéresser à l’imitation, non pas
comme un processus cognitif particulier, mais comme le résultat d’un système dynamique
15
Introduction
comprenant des aspects de perception, d’action et de raisonnement. Dans notre travail,
nous insisterons sur le fait que certains modèles de perception et de commande motrice
sont plus facile à intégrer dans une architecture d’apprentissage par imitation que
d’autres. Sur le versant perception, la vision aura une place toute particulière car elle
est l’une des sources d’information principale pour connaı̂tre à distance ce que “l’autre”
est en train de faire. Sur le versant moteur, nous montrerons que l’utilisation de champs
neuronaux dynamiques1 simplifie très grandement les problèmes de contrôle et de prise
de décision dynamique.
Pour résumer, notre discussion s’articulera autour des notions suivantes : l’imitation,
la vision, la prédiction de séquences, la modélisation neurobiologique, la reconnaissance
de formes et les architectures parallèles; le tout étant chapeauté par le contexte des applications en robotique mobile. Nous serons amenés à intégrer la notion de dynamique à
tous les niveaux de conception de la boucle Perception-Action : dynamique des processus
perceptifs (la vision), dynamique des processus moteurs (les champs neuronaux) et une
dynamique globale du système (apprentissage de séquences).
Le plan de la thèse est le suivant : Le chapitre 2 est consacré à une introduction aux
mécanismes d’imitation. Les différentes approches développées depuis plus d’un siècle par
les développementalistes, les psychologues, les primatologues et plus récemment les neurobiologistes, seront présentées. Les techniques d’apprentissage par imitation développées
en robotique seront aussi étudiées dans ce chapitre. Nous verrons que, malgré l’enjeu
scientifique et technique que représente l’apprentissage par imitation (applications à la
robotique personnelle, enseignement plutôt que programmation de robots très complexes
tels que les nouveaux robots humanoı̈des...), très peu de projets l’utilise en robotique
d’une manière satisfaisante. En effet, la plupart des techniques actuelles présupposent le
problème de l’identification de l’agent à imiter comme déjà résolu (câblé par les concepteurs du système). Elles supposent aussi que le processus d’imitation se limite à une copie
d’un professeur parfait dont le répertoire comportemental est parfaitement connu. Imiter
revient ainsi à une sorte de “copier coller” robotique dans lequel le “symbol grounding
problem” est ignoré [91, 92]. A l’opposé de ces techniques, nous proposerons une architecture permettant de réaliser des “proto-imitations” à partir d’un système n’ayant aucune
notion de l’existence d’un autre système que lui même. Le “bootstrap” de l’imitation sera
le résultat d’un effet de bord d’une architecture conçue au départ pour permettre au robot
de garder un état d’homéostasie. Nous essayerons de montrer que l’ambiguı̈té de la perception, bien loin d’être une limitation, peut être utilisée de manière constructive pour concevoir une architecture de contrôle évoluée. Dans tout notre travail, l’importance du corps
par rapport aux processus cognitifs sera omniprésente (“embodiement” [55, 145, 144]). Les
mécanismes de cognition n’auront de sens que situés dans un univers physique particulier.
1
Les champs neuronaux dynamiques sont aussi très utiles pour résoudre les problèmes et les ambiguı̈tés
liés à la perception.
- 16 -
Chapitre 1
Figure 1-1. Exemple de robots pour lesquels l’apprentissage par imitation deviendra une nécessité. a)
Robot personnel de Sony qui devrait être utilisable par des non informaticiens. b) Robot humanoı̈de
de Honda. Si son utilisation en téléopération peut se faire sans trop de problèmes (dispositifs de réalité
virtuelle), la programmation de ce robot pour la réalisation de tâches complexes paraı̂t très délicate. Dans
les 2 cas, il serait bien plus pratique de développer une architecture de contrôle permettant au robot de
s’adapter et d’acquérir par lui même des comportements particuliers plutôt que de devoir les programmer
de manière ad hoc.
Le chapitre 3 s’intéressera à la présentation des “briques de base” utilisées pour
le développement de notre architecture. Après une brève présentation des notions
élémentaires en neurobiologie, nous présenterons les modèles de réseaux de neurones
artificiels (RN) nécessaires à la compréhension de l’exposé. Du fait de l’incapacité
des modèles de RNs classiques à intégrer correctement des informations temporelles
et spatiales, nous serons amenés à introduire de notions de base sur les systèmes
dynamiques. L’intérêt d’une approche dynamique des réseaux de neurones sera illustrée
à partir d’exemples simples de poursuite de cibles que nous réutiliserons par la suite
dans l’architecture globale de notre système (stabilité de la prise de décision, fusion
d’informations multimodales et non synchronisées...).
Afin de percevoir à distance les effets d’une action, nous serons amenés à nous
intéresser, dans le chapitre 4, aux algorithmes permettant de détecter des mouvements
dans une image et d’estimer des flots optiques. Les grandes familles d’algorithmes seront
présentées et les algorithmes les plus adaptés à des applications robotiques seront illustrés
par des tests sur nos robots. Ensuite, nous proposerons un modèle de RN très simple
permettant d’estimer la composante de rotation du mouvement propre du robot. Ce RN
sera utilisé pour constituer un mécanisme d’asservissement visuel dont un effet de bord
résidera dans la possibilité de l’utiliser comme mécanisme de suivi réflexe. La dernière
partie de ce chapitre abordera le problème de l’extraction des mouvements dans la scène
- 17 -
Introduction
lorsque le robot est lui même en mouvement. En effet, s’il faut suivre un professeur
pour l’imiter, alors le flot perçu contiendra des informations liées au mouvement propre,
superposées à des informations liées au mouvement du professeur, rendant une utilisation
directe du flot optique très délicate (notamment lorsque la composante de rotation du
mouvement propre du robot est grande). Pour comprendre comment notre cerveau
résout ce problème, nous avons réalisé une expérience de psychophysique montrant
que le cerveau a une capacité limitée à la perception d’au plus 3 ou 4 flots superposés
(mouvements par transparence). Un modèle dynamique rendant compte de ces propriétés
sera présenté et illustré par des simulations. Les simulations montrent que le modèle
pourrait être utilisé dans de versions futures de notre système lorsque les problèmes de
puissance de calcul seront devenus moins aigus.
L’objectif du cinquième chapitre est de présenter une architecture neuronale
d’inspiration neurobiologique qui permette l’apprentissage de séquences temporelles. Dans
un premier temps, nous présenterons une vue d’ensemble des modèles d’apprentissage
de séquences en remarquant la grande diversité de ces modèles : mathématiques,
d’inspiration neurobiologique, de psychologie auditive, ... Ensuite, nous proposerons
un modèle neuronal permettant l’apprentissage en un coup de séquences temporelles
et de leur timing. Ce RN est inspiré de modèles du cervelet et de l’hippocampe sur
lesquels nous avons par ailleurs travaillé. L’analyse des performances de notre modèle
sera étudiée théoriquement, puis, sur des exemples des séquences réelles. Nous nous
attacherons plus particulièrement à étudier sous quelles conditions notre réseau est
capable de prédire l’arrivée d’un stimulus particulier. Il s’agit d’une caractéristique
importante pour reproduire correctement une séquence mais aussi pour détecter de la
nouveauté ou fabriquer un signal de renforcement implicite.
Le chapitre 6 est consacré à l’intégration de tous les mécanismes déjà présentés : protoimitation, perception du mouvement, apprentissage de séquences, champs neuronaux et à
l’intégration d’un mécanisme permettant d’apprendre à reconnaı̂tre l’image du professeur
par le biais même du processus d’imitation. Dans la première partie du chapitre, les
résultats obtenus pour l’apprentissage par imitation de séquences de mouvements de type
“pas de danse”, seront présentés. La deuxième partie sera consacrée au développement
du mécanisme de reconnaissance de formes. Pour finir, nous montrerons que grâce
à l’utilisation de champs neuronaux dynamiques pour la représentation des actions
motrices, les trois niveaux (proto-imitation, apprentissage de séquences, reconnaissance
de formes) peuvent fonctionner en parallèle et de manière coordonnée sans nécessiter
l’introduction d’un mécanisme de synchronisation explicite. L’implémentation parallèle
utilisant la librairie PVM (Parallel Virtual Machine) sera aussi décrite.
La conclusion reprendra les principaux résultats obtenus, mettra en évidence les points
qu’il faudrait encore améliorer et proposera des perspectives permettant de rendre nos
robots toujours plus autonomes dans leurs capacités d’apprentissage.
- 18 -
Chapitre 2
Introduction aux mécanismes
d’imitation
Par trois méthodes nous pouvons apprendre la sagesse :
d’abord, par la réflexion qui est la plus noble;
en second lieu, par l’imitation, qui est la plus facile;
et troisièmement, par l’expérience, qui est la plus amère.
D’après Confucius [115]
Dans la culture occidentale, l’imitation a souvent une connotation négative. Les idées
de Platon [149], selon lesquelles l’imitation contient un aspect dangereux pour l’identité
individuelle (ou même le fait que l’imitation d’autrui détruit l’intelligence) peuvent se
retrouver de nos jours, quand le manque d’initiative est souvent associé à l’imitation
(“inovate, don’t imitate”) et quand “singer” a une connotation péjorative. Pourtant, les
nombreuses études [146, 116, 193], notamment en psychologie, montrent que l’imitation
est présente dès le début de notre vie et accompagne notre enfance.
Afin de tenter d’éclaircir nos idées, nous présenterons dans ce chapitre quelques notions sur l’imitation. Dans un premier temps, nous survolerons les différentes approches
de l’imitation qui, depuis plus d’un siècle, ont été dévoilées par les développementalistes,
les primatologues, les psychologues et dernièrement par les neurobiologistes et les roboticiens. Nous continuerons avec la présentation de quelques techniques d’apprentissage
par imitation. Les techniques présentées nous permettront d’avoir un aperçu général sur
l’apprentissage par imitation et d’envisager leurs utilisations en robotique. Ensuite, nous
présenterons les mécanismes d’imitation en robotique. Enfin, nous présenterons le cadre
de notre approche de l’imitation, ce qui permettra de nous situer parmi les autres approches, de poser les questions auxquelles nous tenterons de répondre dans le manuscrit
et de présenter et justifier le schéma global de l’architecture que nous développerons par
la suite.
19
Section 2.1
2.1
Différentes approches de l’imitation
Différentes approches de l’imitation
Les premières études sur l’imitation ont été réalisées par les psychologues
développementalistes à la fin du 19ème siècle [183]. Mais l’imitation est de plus en plus
étudiée dans d’autres disciplines scientifiques : la primatologie, la philosophie, la neurobiologie, la robotique tant et si bien qu’elle se trouve au coeur des sciences cognitives. Le
fait que l’imitation est une manifestation de “l’intelligence” semble être communément
accepté par la plupart des approches de l’imitation. Cependant, nous ne proposerons pas
d’introduire ici une définition de l’intelligence, ni d’orienter la discussion vers ce domaine.
Nous utiliserons donc la notion d’intelligence dans son acceptation la plus large.
Pour des raisons diverses (formation scientifique, religion, histoire, ...) les chercheurs
ont des opinions très différentes sur le fait que l’imitation soit ou non un attribut exclusif
de l’espèce humaine (des études récentes [205, 125] montrent l’existence de ce mécanisme
même chez les nouveau-nés). L’acceptation de l’imitation comme critère de l’intelligence
dans les sciences cognitives est aussi due aux nombreux arguments qui suggèrent que
les espèces non-humaines soient incapables d’apprendre par imitation des actions qu’elles
voient. En revanche, plusieurs espèces utilisent des mécanismes astucieux, ressemblant à
l’imitation, pour simuler des capacités intellectuelles qui leur font défaut.
Les définitions de l’imitation sont très nombreuses, mais il n’en existe pas une qui
soit unanimement acceptée. Parmi toutes les définitions, nous présentons d’abord celle
de Thorndike [183] qui définit l’imitation comme “apprendre à faire un acte en regardant quelqu’un le faire”. Nous observons tout de suite l’aspect visuel de la définition.
Cependant, si nous nous intéressons au cas du chant des oiseaux par exemple, nous nous
rendrons compte qu’une définition complète de l’imitation doit aussi prendre en compte un
aspect polysensoriel. Une autre définition est celle de Bandura [195], qui définit l’imitation
comme une technique d’apprentissage sans récompense (sans renforcement). Parmi toutes
les définitions, nous retiendrons celle de Whiten [197], qui peut s’exprimer ainsi :
“L’imitation est le processus par lequel l’imitateur apprend quelques caractéristiques du comportement du modèle.”
Le processus d’apprentissage par imitation suppose toujours l’existence d’un “élève”
et d’un ou plusieurs “professeurs”. Le professeur, que nous appellerons aussi le modèle,
la copie ou l’imité est celui qui a le comportement qui doit être imité ou copié. L’élève
ou l’imitateur est celui qui essaie d’apprendre quelques caractéristiques du comportement
du modèle. Dans le cas de l’imitation humaine, nous utilisons souvent la notation professeur/élève (mais un professeur n’est pas un bon modèle, il peut enseigner des mauvais
comportements) tandis que pour les animaux (primates, oiseaux) nous utilisons la notation modèle/imitateur.
Dans un premier temps, il faut faire la différence entre la proto-imitation et la “vraie”
imitation. La proto-imitation regroupe des mécanismes simples (voir section 2.2) que
nous trouvons chez les primates et qui donnent à un observateur extérieur l’impression
de voir un apprentissage par imitation. Cependant, dans la définition de l’imitation
- 20 -
Chapitre 2
Introduction aux mécanismes d’imitation
chez les primates, nous pouvons nous poser la question de la signification de la tâche
pour l’animal. La “vraie” imitation est associée à l’imitation différée, qui est la capacité
d’imiter le comportement du modèle après un délai, et surtout, en l’absence de celuici. Elle est surtout liée à la capacité de prêter des intentions à l’autre et elle est donc
aussi liée à la notion d’agentivité [17]. Il est clair que de telles considérations sont pour
l’instant inaccessibles à une approche de modélisation ascendante des processus cognitifs.
Nous laisserons donc plus ou moins de coté la vraie imitation pour nous intéresser aux
prémisses.
2.1.1
L’approche développementale
Une des premières théories sur l’imitation, proposée par Baldwin [12] au début de siècle,
fait le lien entre l’évolution darwiniste et l’imitation. Si on considère l’imitation en tant
que mécanisme d’adaptation individuelle, elle peut permettre à des individus dont certains instincts ne sont pas “performants” à la naissance, d’améliorer leur performances et
donc de leur assurer la survie. En même temps, l’imitation permet la diffusion dans une
population des variations adaptatives survenues chez un petit nombre de membres de la
population. Ce point de vue a été repris par Donald [58] qui suggère que l’imitation a été
le principal mécanisme de transmission culturel chez l’Homo erectus pendant plusieurs
millions d’années, jusqu’à l’utilisation du langage.
L’approche développementale dans l’étude de l’imitation a été largement traitée par le
psychologue Jean Piaget qui a consacré plusieurs ouvrages au développement de l’enfant.
Dans ses travaux sur le développement de l’intelligence chez l’enfant [146], il stipule que
celle-ci dérive en partie de l’imitation. Plus tard, Piaget [147] s’intéresse plus intimement
à l’imitation dans son étude sur la formation de la représentation chez l’enfant. Dans ses
travaux, la représentation est définie à deux niveaux : dans une approche globale, c’est la
pensée et dans une approche restreinte, c’est une mémoire “imagée” de l’environnement.
La mémoire imagée permet la reconstitution mentale d’objets et d’événements passés.
C’est l’imitation différée, dans cette approche, qui constitue le comportement témoin du
développement cognitif humain. Ainsi, Piaget définit l’imitation comme “l’acte par lequel
un modèle est reproduit”. Toutefois, il admet le fait que l’imitation puisse exister sans
que l’élève n’ait de représentation du modèle.
Selon Piaget, le développement de l’imitation est basé sur l’existence de 4 mécanismes
qui interagissent avec l’environnement: l’exploration, la réaction circulaire, l’assimilation
et l’accommodation. Durant la phase d’exploration, l’enfant découvre le répertoire des
actions motrices possibles. Les réflexes, ou les schèmes réflexes, dans la mesure où ils
conduisent à des répétitions qui durent au-delà de l’excitation initiale, jouent un rôle important dans le développement du répertoire de comportements qui ultérieurement sera
utilisé pour comparer et reconnaı̂tre les comportements perçus. La réaction circulaire
est caractérisée par le fait que les schèmes réflexes s’enrichissent par l’assimilation des
éléments extérieurs. Elle motive le bébé à entretenir la réponse liée à l’excitation initiale
même si celle-ci a cessé. Par exemple, supposons que nous produisions un cri qui peut
- 21 -
Section 2.1
Différentes approches de l’imitation
être reconnu par le bébé et qui déclenche une réponse vocale (le plus souvent un cri) de
la part de celui-ci. L’arrêt de notre cri ne détermine pas l’arrêt de celui du bébé parce
que celui-ci entend toujours son propre cri : il continue à crier. L’assimilation suppose
la classification d’un comportement observé dans le voisinage d’un comportement déjà
connu. La pauvreté du répertoire comportemental implique l’assimilation d’un comportement avec un autre qui nous semble très diffèrent. C’est l’assimilation qui confère une
signification à la perception et qui détermine ainsi la répétition. L’accommodation réside
dans la possibilité de détecter et de corriger la différence entre un comportement perçu et
la reproduction propre de celui-ci.
Utilisant les données issues de l’observation de ses 3 enfants, Piaget distingue 6 niveaux
de développement de l’imitation chez l’enfant :
• stade 1 (0-1 mois) : La préparation réflexe : à la naissance, l’enfant n’est pas
capable d’imiter. Ainsi, la première étape consiste dans l’acquisition des réflexes
sans lesquels l’imitation ne peut pas apparaı̂tre en tant que technique.
• stade 2 (1-4 mois) : L’imitation sporadique caractérisée par un phénomène de contagion par lequel les comportements réflexes s’enrichissent d’éléments nouveaux.
• stade 3 (4-9 mois) : L’imitation systématique où l’enfant devient capable d’imiter
des sons qu’il sait émettre spontanément. De même, il peut imiter tous les gestes
de personnes qu’il connaı̂t et qui restent dans son champ de perception visuelle.
• stade 4 (9-12 mois) : L’imitation des mouvements déjà exécutés mais qui ne sont
plus dans le champ de perception visuelle de l’enfant. De même, l’enfant cherche à
copier des gestes et des sons nouveaux.
• stade 5 (12-24 mois) : L’imitation systématique de nouveaux modèles, mais uniquement en présence des modèles.
• stade 6 (2-7 ans) : Imitation différée pour laquelle la reproduction du modèle ne se
fait pas nécessairement en présence de celui-ci. L’enfant devient capable d’imiter
intérieurement un modèle en se détachant de l’action actuelle. Avec l’âge, l’imitation
va vers une imitation du détail (analyse du détail) et vers la conscience d’imiter.
En conclusion, selon Piaget, l’imitation est une technique d’apprentissage sensorimotrice qui conduit à la “construction” de l’intelligence. L’utilisation de l’imitation,
comme témoin de l’émergence de la représentation, a concentré longtemps les chercheurs
développementalistes uniquement sur l’aspect différé de l’imitation.
Les premières données contradictoires à la position de Piaget sur l’imitation chez les
jeunes bébés datent de 1945 (mais rendues publiques seulement quelques années plus tard
[205]) quand Zazzo fait pour la première fois des observations sur l’imitation néonatale
(chez les bébés de 25 jours). Après les observations isolées de Zazzo, les premières études
avec des documents filmés sont réalisées par Moore et Melzoff en 1977 [125, 126]. Ils ont
testé l’imitation des 4 gestes - la protusion des lèvres, l’ouverture de la bouche, la protusion
- 22 -
Chapitre 2
Introduction aux mécanismes d’imitation
de la langue et les mouvements séquentiels des doigts - avec 6 bébés de 2 semaines. Ils
concluent qu’il y a présence d’imitation néonatale - les bébés peuvent imiter des gestes
faciaux et manuels - ce qui remet en question la thèse de Piaget1 . Il faut cependant noter
que les expériences de Moore et Melzoff ont généré beaucoup de critiques (sur le fond et sur
la validité des résultats) dans le monde de la psychologie. Une étude menée par Jacobson
[105], tend plus à faire apparaı̂tre le mécanisme d’imitation néonatale comme une réponse
réflexe, basée sur une perception encore non affinée de la dynamique du stimulus présenté
(même réponse imitative si l’enfant voit un humain tirer la langue ou un stylo saillir).
Le débat est loin d’être clos, mais il semble unanimement admis [138, 40, 193] que la
capacité d’imitation néonatale, si elle existe, disparaisse vers l’âge de 3-4 mois bien avant
que l’imitation différée ne soit présente.
2.1.2
L’approche primatologiste
Les primatologues ont une approche différente de l’imitation. Ils considèrent la manifestation de ce phénomène complexe comme une manifestation de l’intelligence. Pour
introduire une caractérisation des espèces selon leur “intelligence”, plusieurs classifications de phénomènes d’imitation ont été proposées. Parmi ces classifications, nous avons
choisi celle de Whiten [197] qui nous semble la plus complète. Nous présentons (voir
tableau 1) une “correspondance” entre les terminologies utilisées dans les taxonomies les
plus utilisées.
Selon Whiten, il existe des processus d’imitation sociaux et non-sociaux. Les processus
non-sociaux, où il n’y a pas d’interactions entre l’imitateur et d’autres organismes, ne
présentent pas un grand intérêt. Dans l’intention de présenter une vue d’ensemble des
processus d’imitation, nous présentons quelques exemples :
• l’hérédité - le même comportement existe parmi les membres de la même espèce,
• le mimétisme - la sélection naturelle a développé chez l’espèce A un comportement
semblable à celui de l’espèce B en vue de la survie de l’espèce A (ex. la reproduction
du son de la femelle de l’espèce B pour attirer les mâles qui constituent une source
de nourriture pour A, [87]),
• la convergence - deux espèces qui occupent la même niche écologique ont développé
des comportements semblables,
• l’apprentissage individuel - 2 individus apprennent indépendamment l’un de l’autre
le même comportement.
Le mimétisme est le plus représentatif des processus d’imitation non-sociaux et Mitchell
[129] l’identifie avec le premier niveau d’imitation.
1
La classification de Piaget interdit d’avoir de la protusion de la langue (stade 4, mouvements qui
ne sont plus dans le champ de perception visuelle de l’enfant) avant le pointage avec l’index (stade 3,
mouvements qui restent dans le champ de perception visuelle de l’enfant).
- 23 -
Section 2.1
Différentes approches de l’imitation
Notation préférée
Notions utilisées
Mimétisme [199]
Processus de mimétisme social [197]
Influence sociale [197]
Contagion [184]
Stimulus enhancement [199]
Imitation [197]
Niveau 6 d’imitation [147]
Premier niveau d’imitation [129]
Apprentissage par observateur [90]
Imitation [137]
Apprentissage social [36]
Social enhancement [62]
Imitation instinctive [137]
Imitation [104]
Suggestion imitative [86]
Allelominesis [10]
Niveaux 2 et 3 d’imitation [147]
Niveau 2 d’imitation [129]
Local enhancement [184]
Imitation intelligente [137]
Imitation persistante[12]
Imitation par essai et erreur [86]
Niveaux 4 et 5 d’imitation [147]
Niveau 3 d’imitation [129]
Imitation réflective [137]
Imitation interne persistante[12]
Imitation symbolique [86]
Niveau 4 d’imitation [129]
Tableau 1. Quelques notations utilisées dans la description de processus d’imitation. Il ne s’agit pas
d’une liste exhaustive et les notations ne sont pas forcément synonymes [197].
Les phénomènes d’imitation avec interactions sociales sont divisés en phénomènes avec
“influences sociales” (la contagion, l’exposition et le support social) et en phénomènes
“d’apprentissage social” (stimulus enhancement, émulation, imitation).
La contagion est définie comme étant la prédisposition instinctive d’un animal à avoir
le même comportement qu’un autre animal. Une variation de la contagion est le “support
social” qui implique le fait que l’imitateur soit plus disposé à avoir le même comportement
que son modèle à cause de la présence physique du modèle qui modifie ses motivations.
L’exposition relève du fait que deux individus qui ont le même environnement et les
mêmes conditions d’apprentissage ont beaucoup de chances de finir par adopter le même
comportement.
Dans la catégorie des phénomènes “d’apprentissage social” on trouve le stimulus enhancement qui suppose que l’imitateur apprend de son modèle vers quel endroit ou vers
quel objet orienter son attention. Une variation du stimulus enhancement, nommée parfois
observational conditioning, correspond au cas où l’imitateur apprend dans quelles circon- 24 -
Chapitre 2
Introduction aux mécanismes d’imitation
stances un comportement doit être une réponse. L’imitation implique que l’imitateur
apprend certaines parties du comportement de son modèle. Enfin, lors d’une émulation,
l’imitateur apprend de son modèle le but à atteindre. Nous reviendrons plus tard (section
2.2) sur les phénomènes “d’apprentissage social” en tant que techniques d’apprentissage
par imitation.
Par ailleurs, il faut souligner que des processus d’imitation ont été observés seulement
chez les singes [41, 197], les rats [99] et les dauphins (mais la qualité des observations
reste pauvre [41]). Un cas plus particulier est celui de chant des oiseaux. Certaines
espèces d’oiseaux (merles, étourneaux, ...) sont capables de copier et d’assimiler des sons
qui n’appartiennent pas obligatoirement à leur espèce. Le cas le plus connu est celui
des perroquets dont les capacités d’imitation sont globalement connues. Il existe aussi les
duos (genre Laniarius) [87] dans lesquels chaque partenaire se révèle capable de contribuer,
pour une partie, à un tout (une séquence de sons) apprise en commun. Par contre, il n’y
a pas de processus d’imitation visuelle chez les oiseaux.
2.1.3
L’approche neurobiologique
L’approche neurobiologique de l’imitation existe depuis les années 1980. Une grande
percée de l’approche neurobiologique de l’imitation a été faite par la découverte de neurones miroir par Rizzolatti [161, 160]. Les expériences de préhension d’objets effectuées
avec des singes, ont mis en évidence l’activation de neurones situés dans l’aire corticale
F5 - l’aire F5 chez le singe peut “cadrer” avec l’aire de Broca chez l’homme2 (voir figure
3-6). Les neurones qui s’activent pendant les tâches de préhension peuvent être classifiés
en 2 catégories : ceux qui s’activent quand le singe observe les objets qui peuvent être
saisis et ceux qui s’activent pendant que la singe observe quelqu’un d’autre effectuant une
action de préhension devant soi. Ce deuxième type de neurones, appelés des neurones
miroirs, sont ceux qui nous intéressent. Ils ne s’activent pas pour des stimuli visuels
conventionnels (la nourriture, par exemple) ou pour un mouvement sans objet mais seulement quand l’expérimentateur (humain ou un autre singe) exécute une action avec sa
main sur l’objet. Les neurones s’activent durant l’action motrice indépendamment du fait
que l’action soit faite avec la main gauche ou la main droite. Une partie des neurones
qui s’activent pendant les tâches de préhension s’active aussi dans des tâches de manipulation et de déplacement des objets. Les actions effectuées avec des outils (par exemple,
le modèle utilise une baguette en bois pour déplacer l’objet) n’activent pas les neurones
miroirs. Les actions qui activent le plus souvent les neurones miroirs sont le “grasping”
(la préhension d’un objet avec les mains), “placing” (placer un objet avec les mains) et
la manipulation des objets.
L’existence de neurones miroirs montre la possible existence d’une base neuronale
de l’imitation, ce qui laisse supposer que l’évolution a sélectionné cette technique
d’apprentissage et, en plus, l’a “codée” génétiquement. On peut noter que des expériences
2
Cette correspondance a donné lieu à une thèse selon laquelle l’apprentissage par imitation présent
chez les singes à été remplacé par le langage chez les humains.
- 25 -
Section 2.1
Différentes approches de l’imitation
récentes de neuro-imagerie confirment chez l’homme l’idée que, entre autre, le cortex moteur puisse être activé aussi bien lorsque l’on réalise une action que lorsque l’on voit
quelqu’un d’autre effectuer la même action [49].
Nous pouvons nous poser des questions sur le rôle fonctionnel des neurones miroir.
On peut penser que les neurones miroir ont un rôle lié à la préparation de l’action:
l’observation de l’action démarre la préparation de la même action ce qui permettra à
un individu de devenir plus habile, plus rapide donc ayant plus de chances de survie.
Mais le fait que les neurones miroirs peuvent s’activer (démarrer la préparation) sans
qu’il y ait une action et que les neurones ne s’activent plus si on approche la nourriture
qui devient accessible (il n’y a plus de préparation) nous permet de rejeter cette idée [160].
Une autre proposition, faite par Jeannerod [107], suppose que dans le cerveau il y a
la création d’une image “mentale” des actions vues et qui seront ensuite apprises. Dans
ce cas, les neurones miroir constituent la représentation interne d’une action et donc leur
activation peut se faire sans qu’il y ait d’action.
Rizzolatti suppose que les neurones miroir ont un rôle dans la compréhension de l’action
et non dans l’apprentissage. Dans ce cas, la compréhension n’implique pas la conscience!
Les mouvements, ou les actions, impliquent un changement de la relation d’un individu
avec son environnement. Généralement, les changements sont perçus par celui-ci grâce à la
proprioception, la vision, le touché, l’olfaction, ... Les résultats du mouvement, négatifs
ou positifs, sont associés au mouvement. Quand quelqu’un fait le même mouvement,
l’individu prédit les conséquences [63]; la représentation de l’action et les conséquences
sont associées [160]. L’auteur suppose que les neurones miroir font partie de cette association. Soit A l’activité neuronale générée en “interne” par une action et soit C la
conséquence de cette action. Si un stimulus externe (voir quelqu’un d’autre faire la même
action, par exemple) génère la même activité neuronale A, alors on peut supposer que la
conséquence du stimulus externe est C. A travers ce mécanisme, on peut “comprendre”
les conséquences des actions des autres.
- 26 -
Chapitre 2
2.2
Introduction aux mécanismes d’imitation
Techniques d’imitation
Nous continuons avec la présentation des mécanismes d’imitation les plus souvent utilisés.
La grande majorité des mécanismes dits “d’imitation” peut être expliquée par une des
techniques présentées par la suite. Si le stimulus enhancement et l’émulation sont des
mécanismes très courants dans le monde animal, la vraie imitation, la réponse facilité et
l’imitation au niveau du programme restent l’attribut des primates et plus particulièrement
des singes et des humains.
2.2.1
Stimulus enhancement
Le stimulus enhancement est la tendance à orienter son attention vers un endroit particulier dans l’environnement en fonction de l’observation des actions d’un congénère.
Cette tendance est renforcée dans le cas où le congénère obtient une récompense à la
suite des actions observées. La réduction de l’espace de focalisation de l’attention augmente la probabilité d’obtenir la même récompense que celle du congénère observé tout
en utilisant un mécanisme classique d’apprentissage par essai et erreur. Whiten [197]
propose une subdivision en local enhancement où l’attention est focalisé vers un endroit
de l’environnement et le stimulus enhancement où l’attention est focalisée vers un objet
ou une partie d’un objet. Prenons un exemple simple (plusieurs exemples réels dans le
monde animal sont décrits dans certaines études sur les primates [197, 41]) : un singe B
regarde un autre singe A en train de manger des noix de coco sur un cocotier. Le stimulus enhancement oriente l’attention du singe B vers les noix qui se trouvent par terre; il
commence à “jouer” avec les noix et il découvre une méthode pour les ouvrir en utilisant
des actions qu’il connaı̂t déjà. Il apprend plus vite à manger des noix de coco que dans
le cas où il découvrirait seul des noix de coco sur un cocotier. Il se peut également que
le singe B finisse par utiliser la même technique pour ouvrir les noix que celle de son
congénère mais ce n’est pas à cause du fait qu’il ait vu cette technique. Une variation
de cette techniques est le le conditionnement par observation où le modèle apprend une
aversion à l’encontre d’une situation ou d’un objet. Cette technique a été illustrée par
Mineka [128] dans le cas où de jeunes singes ont développé un comportement de peur dans
les situations similaires à celles où leur mère a été effrayée. Nous ne pouvons pas parler
d’apprentissage par imitation mais d’apprentissage à orienter son comportement vers des
objets particuliers permettant d’obtenir une récompense.
2.2.2
L’émulation
L’émulation est une variante de l’hypothèse du stimulus enhancement où le but n’est
pas de reproduire le comportement du modèle mais d’essayer plutôt d’obtenir les mêmes
résultats (récompense) que le modèle (sans avoir obligatoirement les mêmes comportements). Tomasello [185, 186] suppose que dans ce cas l’élève apprend quelque chose sur
l’environnement et non sur le comportement du modèle. Il utilise ses propres techniques
sans se soucier du comportement du modèle. Des expériences sur les orangs-outans ont mis
- 27 -
Section 2.2
Techniques d’imitation
en évidence ce mécanisme : un modèle (humain) utilisant un outil avec une procédure
spécifique, avait extrait de la nourriture d’un récipient. Les élèves, qui ont regardé le
modèle, ne sont pas arrivés à ouvrir le récipient, leur utilisation de l’outil n’étant pas appropriée. Ils avaient essayé d’ouvrir le récipient avec leurs propres méthodes. L’émulation
demande assez d’intelligence afin de reconnaı̂tre l’accomplissement de l’action d’autrui
comme un but en soi. Parfois, l’existence de l’émulation chez une espèce particulière est
considérée comme une marque d’intelligence [186].
2.2.3
L’imitation
L’imitation proprement dite, ou la vraie imitation, correspond au cas où l’imitateur apprend quelques caractéristiques du comportement du modèle. C’est le cas des humains
et des chimpanzés qui semblent être les seuls à développer de tels comportements. La
notion de “quelques caractéristiques” a posé des problèmes d’interprétation quant à la
mesure de la vraisemblance entre deux ou plusieurs comportements. On peut s’intéresser
à la forme, la posture, le séquencement, le tempo d’un comportement et décider s’il y a
imitation ou non. L’imitation suppose surtout d’avoir la reproduction du comportement
du modèle en l’absence de ce dernier (imitation différée). Cette définition correspond a
celle de l’imitation du niveau 6 de Piaget , la “vraie imitation” de Thorpe [184] ou à
“l’imitation de niveau 4” du Mitchell [129] (voir tableau 1).
2.2.4
La réponse facilité
Pour déterminer quand un comportement spécifique a été copié - et donc appris par
imitation - certains chercheurs ont réalisé une reinterprétation des résultats obtenus.
Lorsqu’un individu observe un modèle en train d’effectuer une tâche spécifique, la probabilité que le même individu exécute la tâche observée est comparée avec la probabilité
que la même tâche soit exécutée par un individu qui n’a pas regardé la démonstration.
L’imitation par la réponse facilité est définie comme une augmentation de la fréquence
de répétition de la tâche observée chez les individus de test par rapport à la probabilité
“normale” observée chez les individus témoins. Cette technique a été utilisée pour mettre en évidence des capacités d’imitation chez les nouveau-nés [125]. Une variante de
cette technique consiste à avoir 2 groupes d’individus qui regardent la même action mais
chaque groupe voit l’action exécutée avec des procédures différentes. En plus du rapport
entre la fréquence de répétition de l’action observée chez les membres de chacun des 2
groupes et la fréquence de répétition de l’action chez les membres d’un groupe témoin,
on calcule le rapport entre les fréquences de répétition de l’action chez les 2 groupes
d’individus qui ont regardé l’action. On conclut qu’il y a apprentissage par la réponse
facilité si ce dernier rapport est assez différent de 1. Ce protocole est utilisé pour des
actions qui font parties du répertoire d’actions de chaque individu et quand la probabilité
d’effectuer cette action d’une manière spontanée est élevée. Généralement, les psychologues et les développementalistes s’accordent sur le fait que la réponse facilité est une
technique d’imitation efficace.
- 28 -
Chapitre 2
2.2.5
Introduction aux mécanismes d’imitation
L’imitation au niveau du programme
Sous un aspect différent, les techniques d’apprentissage par imitation peuvent être
partagées en imitation au niveau de l’action et l’imitation au niveau du programme.
L’imitation au niveau de l’action correspond au stimulus enhancement, à l’émulation
ou encore à la réponse facilité. En revanche, selon Byrne [41], l’imitation au niveau
du programme définit la situation dans laquelle l’imitateur apprend l’organisation structurelle d’un comportement complexe en observant le comportement d’un congénère. Un
comportement complexe est ici défini par la capacité à générer des séquences d’actions
supposant l’existence de sous-tâches ou de coordination bi-manuelle. La notion de programme au niveau d’un comportement est caractérisée par l’enchaı̂nement des actions et
de leur coordination. Il faut souligner que l’apprentissage des mouvements de chaque action atomique est fait par des techniques propres à l’imitateur, issues de son apprentissage
individuel. L’imitation au niveau programme est la copie d’un nouvel arrangement des
actions qui existent dans le répertoire des actions de l’imitateur.
L’existence d’apprentissage au niveau programme a été mise en évidence chez les gorilles
dans les comportements de préparation de la nourriture [41]. En effet, le comportement
de préparation de la nourriture diffère (au niveau programme) en fonction de la plante
à préparer mais toutes ces préparation se font à partir d’actions “atomiques” identiques.
La présence de ces techniques de préparation seulement dans certains petits groupes de
gorilles ayant un recouvrement géographique restreint prouve que ces comportements
sont, sans doute, appris. Le séquencement des tâches, la répétition itérative des tâches
jusqu’à l’achèvement d’un but et le fait que la même tâche utilisée dans des processus
de préparation différents ne génère pas de confusion, exprime le caractère hiérarchique de
l’organisation d’un tel comportement. Le fait que dans une famille on trouve la même
technique de préparation de la nourriture est l’élément qui indique un apprentissage par
imitation de cette technique. Mais le fait qu’un petit gorille n’exécute pas les même actions
motrices que sa mère ou le chef de la famille (les seuls modèles qui puissent être imités)
pour réaliser la même tâche nous indique qu’il s’agit d’un apprentissage par imitation au
niveau “programme”. L’apprentissage au niveau actions peut engendrer aussi la copie
d’une séquence d’actions, mais la structure du comportement reste toujours linéaire.
Après avoir vu quelles sont les techniques d’apprentissage par imitation, nous allons
voir comment les appliquer. Nous allons présenter un aperçu des projets en robotique qui
utilisent des mécanismes d’imitation.
- 29 -
Section 2.3
2.3
Les mécanismes d’imitation en robotique
Les mécanismes d’imitation en robotique
Dans le cas d’un système laissé à lui même dans un environnement a priori inconnu,
un double problème apparaı̂t. Il faut à la fois identifier les nouvelles situations en tant
que telles (créer ou gérer de nouvelle variables) et gérer l’explosion combinatoire des
associations entre situations et actions possibles sachant que le signal de renforcement
peut ne parvenir que longtemps après l’exécution des actions. Dans un premier temps,
l’apprentissage par imitation en robotique a été envisagé pour réduire l’espace des actions possibles et permettre un bon fonctionnement des techniques existantes. Ensuite,
la création des premiers robots humanoı̈des (voir figure 2-1) rend nécessaire l’utilisation
de techniques d’apprentissage par imitation pour leur contrôle. En effet, comment imaginer de conserver une approche de programmation classique pour de telles systèmes ? La
définition a priori d’un répertoire de comportements nécessaire et suffisant à un fonctionnement autonome de ces robots parait très délicate (énorme quantité de code spécifique
à développer et tester).
Figure 2-1. Les prototypes P2 et P3 de robots
(http://www.honda.co.jp/english/technology/robot/).
humanoı̈des
développés
par
Honda
Les premières expériences robotiques faisant intervenir l’imitation se sont limitées à des
tâches et des robots très simples. Parmi ces expériences on peut citer le projet développé à
Forschungszentrum Informationstechnik GmbH (Allemagne) [47]. Il s’agit d’un ensemble
hétérogène de robots mobiles qui doivent monter en haut d’une colline en se collant côte à
côte à un robot professeur afin d’imiter sa trajectoire et trouver le sommet. L’imitateur a
la possibilité de reconnaı̂tre les autre robots, d’initier une procédure d’approche et suivi et
d’apprendre les mouvements qu’il exécute. Une fois que l’imitateur a trouver le sommet,
il peut à l’avenir trouver des trajectoires différentes afin d’atteindre le même sommet
par des chemins plus courts. De même, le robot imitateur peut utiliser son expérience
antérieure afin d’éviter un “modèle” dont le suivi n’a pas abouti à atteindre un sommet
dans le passé. Le répertoire des actions possibles est très limité (suivre ou se balader
aléatoirement), ce qui nous fait dire qu’il s’agit d’un mécanisme de très bas niveau. Par
- 30 -
Chapitre 2
Introduction aux mécanismes d’imitation
ailleurs, l’architecture est figée, ne permettant pas d’avoir d’apprentissage. Le projet avait
prévu la possibilité d’apprendre en utilisant le stimuli enhancement, mais il a été arrêté,
sans avoir de suite.
Dans le projet développé par le Département d’Intelligence Artificielle de l’Université
d’Edinburgh (UK) [93, 52] un robot suit un professeur dans un labyrinthe en détectant
les actions ”significatives” du professeur et en les associant à la situation perçue. L’élève
utilise un module qui extrait une information sur la position et l’orientation du professeur
à partir de l’information visuelle. Un module de proprioception fournit une information
comparable sur la position et l’orientation de l’imitateur. Ensuite, un calcul de la distance
entre les 2 orientations est effectué. Le bloc d’analyse du mouvement détermine le type de
mouvement exécuté par le professeur entre 2 positions successives. A chaque mouvement
du professeur, l’imitateur doit recalculer un mouvement afin de garder la même orientation et distance par rapport à son professeur. L’élève a 2 possibilités: chercher dans son
répertoire de mouvements possibles celui qui a l’effet souhaité (imiter) ou sélectionner
aléatoirement un mouvement et apprendre à l’associer ou non à la situation rencontrée
(apprentissage associatif). Les auteurs ont ainsi proposé une expérience mettant en avant
ces 2 types de comportements. Dans une première phase, le professeur et l’imitateur
exécutent chacun à son tour un mouvement dans le labyrinthe, le professeur restant toujours dans le champ de “vision” (il y a une ampoule électrique montée sur le professeur
ce qui facilite sa détection) de l’imitateur. Dans la phase suivante, l’imitateur parcourt
seul le labyrinthe. Malgré l’implantation de l’architecture sur un robot mobile, la plupart
des résultats publiés concernent ses simulations. Ultérieurement [53], le modèle a été
complexifié, en introduisant le traitement de plusieurs caractéristiques de la posture. Le
modèle complexe est en train d’être testé, en simulation, sur un robot “humanoı̈de” avec
13 degrés de liberté mais les distances d’observation du professeur, les types de postures
possibles sont pré-définis.
Le projet développé à l’Electrotechnical Laboratory (Japon) [117, 24, 25] a aussi
pour but de construire une architecture de contrôle pour un robot humanoı̈de. Plus
précisément, il s’agit d’un projet dans lequel le robot doit regarder un humain réaliser
une tâche d’assemblage simple et tenter de reproduire ultérieurement la même séquence
d’actions. Par une approximation du développement des enfants (approche piagétien), le
robot pouvoir apprendre de nouveaux comportements en utilisant l’imitation. Par ailleurs,
dans [11], les auteurs essayent d’introduire un cadre théorique du “développement”
de l’imitation robotique. Selon eux, l’imitation robotique est composée d’au moins
3 processus fondamentaux: l’observation, la compréhension et l’exécution de l’action.
L’observation de l’action doit résoudre plusieurs problèmes: motiver l’élève à observer le
professeur, trouver un professeur à observer, déterminer quand le professeur fait une action
qui doit être apprise. L’observation du professeur doit s’accompagner de l’intégration des
informations sur l’environnement. La représentation de l’action suppose une conversion de
l’action perçue dans une représentation interne qui doit être bien choisie. De même, l’élève
doit “comprendre” ce que son professeur fait! La reproduction de l’action doit motiver
l’élève à reproduire une action apprise, à choisir le bon contexte pour reproduire l’action
- 31 -
Section 2.3
Les mécanismes d’imitation en robotique
et à adapter l’action à l’environnement dans lequel elle est reproduite. Ultérieurement, le
système a été très modifié afin de permettre une formalisation de l’imitation en tant qu’un
processus d’interactions dynamiques entre des structures émergentes. Selon les auteurs,
[118], l’assimilation, l’accommodation et les réaction circulaires peuvent être (partiellement) reproduites par un mécanisme dynamique. Si on considère un système avec un
seul attracteur dans lequel coexistent la perception et l’action, alors devrait y avoir convergence de la perception et de l’action vers cet attracteur. L’exploration est interprétée
comme étant une combinaison d’une dynamique spontanée et un apprentissage spatiotemporel. Une dynamique spontanée correspond à l’activation spontanée des neurones
moteurs. La coordination est attribuée à l’émergence de structures ordonnées dans des
processus dynamiques couplés. Un mécanisme neural d’apprentissage rapide permet une
adaptation rapide dans le cas d’un changement. La pièce maı̂tresse de leur robot est constituée par un système de vision active, composé d’une paire de caméras montés sur une
plate-forme avec 6 degrés de liberté [26, 25]. Pour l’apprentissage, les auteurs utilisent
une réseaux de neurones de type “Spike Accumulation and Delta-Modulation” [118] avec
une règle d’apprentissage de type hebbienne. Actuellement des tests sont en cours sur
un robot humanoı̈de complet mais l’architecture retenue est beaucoup plus classique. Les
problèmes de stabilité et scalabilité du modèle neuronal, pourtant très intéressant, ne
semblent pas avoir été résolus.
Une autre direction de recherche a été lancée sur les interactions entre les humains et les
ordinateurs par le Laboratoire Sony à Paris [143]. Dans un premier temps, “la machine”
imite (copie) le modèle humain afin de trouver les points essentiels de son comportement.
Dans un deuxième temps, “la machine” utilise le résultat de son “apprentissage” afin
de proposer à l’humain de l’information sensée l’intéresser. Même si les travaux sont à
leur début, ils mettent en évidence l’importance d’un comportement “imitatif” dans la
construction de “relations sociales” dans une interface homme-machine.
Dans un projet développé à l’Université d’Edinburgh (UK) [32, 31, 33, 30], une architecture neuronale commande un robot qui apprend des séquences de mouvements exécutées
par un professeur. Le robot a la forme d’une poupée et il a été construit avec des composants LEGO. Il peut exécuter quelques actions (ex. tourner la tête, lever les bras). Il
est équipé de 4 senseurs infrarouge qui permettent la détection des mouvements du professeur. Le professeur est équipé d’émetteurs en infrarouge dans chaque main et 2 sur sa
tête. Un mécanisme réflexe assure une coordination entre les mouvements du professeur
et les mouvements du robot (ex. si le professeur déplace sa main gauche devant le robot,
le robot lève sa main gauche). Le robot est aussi équipé avec un clavier de 8 touches
qui lui permet de communiquer. Le comportement “imitatif” du robot est réalisé par
une architecture pré-cablée qui relie les senseurs infrarouge et les moteurs. Le robot peut
apprendre des séquences simples, de 2 à 8 actions par séquence. Le professeur exécute
une séquence de mouvements devant le robot et celui-ci fait des mouvements. À la fin
de la séquence, le professeur appuie sur une touche. Chaque séquence est répétée jusqu’à
l’association correcte entre la touche pressée et la séquence de mouvements. L’architecture
de contrôle utilisée est basée sur une mémoire associative récurrente. Il s’agit d’une ver- 32 -
Chapitre 2
Introduction aux mécanismes d’imitation
sion modifiée du modèle d’inspiration neurobiologique proposé par Willshaw [201]. Le
réseau est symétrique, totalement connecté, avec une modification des poids selon une
loi de hebbienne. Les entrées et les sorties sont des vecteurs binaires. Le robot-poupée
a été utilisé dans une expérimentation avec des enfants de 4-5 ans. Les enfant ont dû
apprendre à la poupée à associer une séquence de mouvements avec une phrase. Le protocole est simple: l’enfant fait un mouvement et presse le bouton associé à ce mouvement.
Chaque bouton a un mot qui lui est associé. Après l’apprentissage, le robot exécute la
séquence en prononçant la “phrase” associée. L’expérience a montré que les enfants sont
très captivés par le jeu avec la poupée. L’auteur en déduit que les jeunes enfants aiment
jouer à des jeux avec d’autres enfants qui les imitent. La forme de poupée a largement
contribué aux résultats obtenus dans l’expérimentation avec des enfants. Le système de
vision semble être nécessaire afin de pouvoir initier une communication avec les enfants.
Dans cette étude, comme dans la plupart des études précédentes, le système de vision est
court-circuitée par l’utilisation des “trucs” permettant au système d’accéder directement
à une information de nature symbolique sur la posture du professeur (diodes infrarouges
par exemple).
A l’opposé de la plupart des travaux [123, 93], notre motivation est de créer une architecture neuronale générique qui permette à un robot d’apprendre par imitation sans la
moindre aide extérieure (pas d’intervention du programmeur pour corriger un défaut...).
La prise en compte de l’imitation sur des robots réellement autonomes d’un point
de vue cognitif nécessite qu’il n’y ait pas d’intrusion dans le ”cerveau” du robot durant l’apprentissage. Les robots doivent être capable de sélectionner quelles informations apprendre. Ainsi le problème devient: comment initier le mécanisme de communication entre un robot élève et son professeur (robot ou humain). Une autre contrainte est que l’architecture neuronale contrôlant l’élève doit être de la même nature que
celle du professeur (un professeur pouvant devenir un élève à n’importe quel moment et
réciproquement). En effet, le but à long terme est de créer des robots capable de découvrir
des solutions par eux même et/ou capables d’imiter d’autres robots afin de compléter leur
propre répertoire de comportements appris. Les contraintes et les idées utilisées pour
concevoir nos architectures neuronales sont inspirées de modèles neurobiologiques et psychologiques du cerveau des mammifères. Dans la section suivante, nous allons introduire
un modèle possible de la proto-imitation. Ce modèle (volontairement et nécessairement)
simpliste essaiera de ne pas faire l’impasse sur les aspects perception liés à l’imitation.
- 33 -
Section 2.4
2.4
Cadre de notre processus de ”proto-imitation”
Cadre de notre processus de ”proto-imitation”
Malgré le grand potentiel de l’imitation, nous avons vu qu’il y a fort peu des projets
utilisant l’imitation en robotique mobile. Cette problématique semble en effet difficile “à
appréhender” de par les notions à priori complexes qu’elle implique. D’une part, imiter
semble première vue nécessiter la compréhension de “soi” et des “autres”. D’autre part
implanter un processus d’imitation nécessite la maı̂trise de concepts tels que la conscience
du monde extérieur, la mise à jour de représentations internes, ... Néanmoins, nous
allons montrer qu’il est possible de réaliser un mécanisme de proto-imitation presque trivial, mais respectant les principes de base de l’apprentissage par imitation. Dans notre
perspective de réaliser une architecture neuronale capable d’imitation sensori-motrice,
nous nous concentrerons d’abord sur des capacités d’imitation très simples - une imitation spontanée d’actes moteurs simples - sans intervention de niveau cognitif élevé, de
notion de soi, ou d’achèvement de plan complexe. Nous désignons une telle imitation
“simple” sous le terme de “proto-imitation”. Le but final de nos travaux est en effet de
réaliser une architecture de contrôle simple, capable de proto-imitation(s), rendant déjà
compte de capacités d’apprentissage sensori-moteur, tout en étant un support possible
à la communication entre des systèmes (apprentissage et échange d’actes moteurs simples entre plusieurs systèmes identiques). Cette architecture sera alors le point de départ
d’exploration de comportements imitatifs de plus haut niveau [9].
Pour le comportement d’imitation, nous commençons avec l’hypothèse suivante : la
proto-imitation est déclenchée par une erreur de perception et est une propriété fondamentale de toute boucle sensori-motrice. Par exemple, un comportement d’imitation entre
2 bras de robots contrôlés par la vision pourrait être expliqué comme suit. Un premier
robot apprend la coordination visuo-motrice entre sa caméra et la position de son bras
ou pour simplifier l’extrémité de sa pince. Il crée une correspondance entre une position
donnée de sa pince dans la scène visuelle et les positions angulaires que doivent prendre
ses différentes articulations. Si le robot regarde alors ailleurs et voit dans son champs de
vision non pas sa pince mais la pince d’un autre robot similaire à la sienne (voir figure 2-2),
il réalisera les mêmes mouvements que le deuxième bras en tentant simplement de réduire
la différence entre les 2 représentations qu’il a de son bras (visuelle et proprioceptive).
Finalement, si les mouvements de son bras induisent une réduction d’un besoin interne
(associé par exemple à la satisfaction d’un besoin particulier), un signal de renforcement
positif peut être déclenché. La séquence de mouvements sera alors enregistrée et associée
avec la satisfaction de ce besoin interne. Plus tard, si le besoin associé est suffisamment
fort, la séquence de mouvements sera déclenchée et un observateur externe considérera
que le robot élève a appris par imitation le comportement du robot professeur.
Si nous revenons à notre problème d’imitation avec un robot mobile, il est complexe
d’imaginer un programme qui permette au robot d’apprendre à visualiser ce qu’un autre
robot est en train de faire3 . Cependant, il est simple de permettre à un robot élève
3
C’est quelque chose que les primates et peut être d’autre mammifères réussissent à faire, mais en
premier lieu, nous voudrions comprendre quel type de mécanisme d’imitation pourrait être mis en oeuvre
- 34 -
Chapitre 2
Introduction aux mécanismes d’imitation
Système de vision
Contrôleur
Changement du point
de focalisation
Bras de l’élève
Bras du professeur
Figure 2-2. Le robot élève a déjà appris la correspondance entre la représentation interne de son bras
et la position qu’il doit occuper dans son champ de vision. Si l’élève focalise son attention sur le bras
du professeur, il reproduira les mouvements du professeur simplement parce qu’il percevra une différence
entre ses informations proprioceptives et visuelles. Il essaiera de réduire l’erreur proprioceptive de son
bras en fonction de ce qu’il croit être les informations visuelles liées à son bras! Un observateur externe
en déduira à tort que le robot élève est en train d’imiter son professeur.
de suivre ou poursuivre son professeur (humain ou robot) comme un moyen de réduire
la différence entre sa perception et sa proprioception. Comme dans l’exemple du bras
de robot, l’élève essaie de réduire la différence entre le mouvement perçu (au travers des
informations de flot optique) et les informations de proprioception obtenues par la mesure
de la vitesse de rotation réelle de ses roues. Par exemple, si le professeur se rapproche de
l’élève un foyer d’expansion de flot optique apparaı̂t, le robot ayant appris par lui même
qu’une expansion est associée à un mouvement vers l’avant, il reculera pour supprimer
cette impression de mouvement et revenir dans l’état de “non mouvement” qui est donné
en consigne de son contrôleur. Suivre l’autre robot n’est ainsi que la conséquence directe
d’un principe d’homéostasie [27] (volonté de rester dans le même état, voir figure 2-3).
Ainsi, un simple mécanisme de régulation de la vitesse de rotation des roues par une
information de flot optique peut être utilisée pour un comportement de suivi et peut
déterminer l’émergence d’un comportement de proto-imitation. Il est donc tout à fait
légitime de retrouver un tel mécanisme dans l’architecture globale que nous proposons
(voir figure 2-4). Le mécanisme de suivi, réalisé sous la forme d’un couplage réflexe entre
la perception du mouvement et la sortie motrice, coı̈ncide avec le premier niveau de notre
architecture.
Un fois assuré le succès du processus d’imitation, nous pouvons imaginer qu’il existe
par un robot qui n’aurait pas de représentation complexe du monde et de lui même.
- 35 -
Section 2.4
Cadre de notre processus de ”proto-imitation”
Changements de l’environnement
Entrée
visuelle
Sortie
motrice
Système
homéostatique
Information proprioceptive
Figure 2-3. Représentation schématique du mécanisme de poursuite visuelle utilisant le principe
d’homéostasie.
des situations particulières pour lesquelles seul le système de suivi ne réponde pas aux
exigences d’un processus d’imitation. Prenons par exemple le cas ou le professeur s’est
arrêté pour quelques minutes. L’absence du mouvement conduirait à l’arrêt du processus
d’imitation, ce qui n’est pas souhaitable. Mais, l’utilisation de la vision comme source
d’information principale nous vient à l’aide et nous permet d’introduire d’une manière
naturelle un système de vision locale. Ce système permettra l’apprentissage et la reconnaissance de la forme visuelle du professeur. Une fois la forme du professeur apprise,
l’absence de mouvement ample du professeur ne constitue plus un problème. De même, le
choix du bon professeur peut se faire au même niveau à l’aide du mécanisme de focalisation
de “l’attention”.
Motivations
Apprentissage
de sequences
Apprentissage
de sequences
Vision
locale
Reconnaissance
visuelle
Reconnaissance
du professeur
Perception du
mouvement
Actions
Proto
imitation
Figure 2-4. Architecture globale du système développé.
Si nous nous situons à un niveau plus “élevé”, en supposant qu’un comportement ou une
habileté est caractérisée par une séquence de mouvements (séquence temporelle), l’ajout
- 36 -
Chapitre 2
Introduction aux mécanismes d’imitation
d’un troisième niveau qui fera l’apprentissage d’actions ”atomiques” que le robot élève
doit mimer et apprendre parait évident. L’apprentissage des séquences devient ainsi une
nouvelle couche de notre architecture. Tout apprentissage peut être associé au besoin qui
l’a déclenché et donc élargir le répertoire de comportements de l’élève. L’introduction de
“motivations”, qui peuvent intervenir à tous les niveaux, dans notre architecture découle
logiquement de ce qui précède.
Nous avons développé le plan de notre manuscrit autour de l’architecture qui vient
d’être exposée et notre discussion s’articulera autour de trois parties principales : la
perception du mouvement (voir chapitre 4), l’apprentissage de séquences (voir
chapitre 5) et la reconnaissance du professeur (voir chapitre 6). Pour les introduire,
nous allons présenter quelques notions de neurobiologie, réseaux de neurones, systèmes
dynamiques (voir chapitre 3). Les 3 niveaux de notre architecture devront fonctionner en
parallèle, une partie de cette thèse abordera des aspects de calcul et de programmation
parallèle (voir section 6.2).
Le processus de perception/action est par essence un processus dynamique. Nous ne
pouvons pas envisager d’avoir un système totalement réactif car toute tentative est vouée
à l’échec. Ainsi, en utilisant la notion de champs dynamiques, nous avons introduit
plusieurs boucles dynamiques à tous les niveaux: la dynamique motrice pour le premier
niveau, la dynamique visuelle au deuxième et la dynamique globale du système car il
s’agit bien d’un système global et non pas d’un somme de sous-systèmes.
On peut déjà constaté que la reconnaissance du professeur n’est pas le point de départ
de notre architecture mais, au contraire, l’aboutissement d’une démarche intégrant des
processus perception/action de plus en plus complexes.
- 37 -
Section 2.4
Cadre de notre processus de ”proto-imitation”
- 38 -
Chapitre 3
Réseaux de neurones
et systèmes dynamiques
My brain, that’s my second favorite organ.
Woody Allen
L’objectif de ce chapitre est de présenter les éléments de neurobiologie, les modèles
de réseaux de neurones (R.N.) et les systèmes dynamiques qui serviront de base à la
compréhension du reste de notre discussion.
La première partie est consacré à la présentation du neurone biologique et de son
modèle algorithmique, le neurone formel. Les règles d’apprentissage les plus courantes
seront aussi présentées : Hebb, LMS et mécanisme de conditionnement.
La deuxième partie proposera une vue d’ensemble de l’architecture du cerveau. Nous
allons présenter quelques structures corticales et sous corticale dont le fonctionnement
sera une source d’inspiration dans nos modèles.
La troisième partie est consacré aux modèles de réseaux de neurones non-supervisés les
plus utilisés. Nous présenterons le mécanisme de Winner Take All (WTA), le modèle ART
de Grossberg, le modèle de carte topologique auto-adaptative introduit par Kohonen ainsi
que le modèle de carte topologique probabiliste (PTM) proposée par Gaussier et Zrehen.
Enfin, nous présenterons l’architecture neuronale générique PerAc.
Dans la quatrième partie nous donnerons un aperçu général des systèmes dynamiques.
Nous commencerons avec la présentation de leurs propriétés mathématiques. Nous mettrons l’accent sur un cas particulier de système dynamique : le champ neuronal. Nous
continuerons avec la présentation de certaines applications des champs neuronaux à la
robotique mobile. Enfin, nous présenterons les résultats obtenus et les comportements
dynamiques observés avec notre implantation de champs neuronaux.
39
Section 3.1
3.1
Du neurone réel à son modèle
Du neurone réel à son modèle
Le cerveau humain est l’exemple par excellence du système complexe. Il possède approximativement 1010 neurones, chaque neurone ayant, en moyenne, 104 connexions avec
les autres neurones. Par ailleurs, on estime qu’il existe environ 50 neurotransmetteurs
différents. Considérer que les seules cellules impliquées dans la “production de la pensée”
sont les neurones constitue déjà une hypothèse importante. Si l’on est en effet maintenant
tout à fait persuadé que le lieu de cette production est bien le cerveau, celui-ci n’est pas
moins composé d’un grand nombre d’éléments. Le système nerveux central est en effet
constitué :
des cellules dont les neurones, mais aussi les atrocytes, oligodendroglies et microglies,
regroupés sous le nom de cellules gliales,
des membranes la pie-mère et la dure-mère,
les liquides le liquide céphalorachidien permettant, entre autre, de maintenir le cerveau
à une pression constante.
Limiter l’activité du cerveau aux seuls neurones est donc réducteur, même lorsque l’on
ne s’intéresse qu’aux “productions mentales”. Le rôle joué par les cellules gliales dans ces
productions n’est, en particulier, pas encore très clairement élucidé. Il n’est pas du tout
sur qu’il soit nul, ni même négligeable ! En ce qui concerne les neurones, il faut avant
tout savoir qu’il n’existe pas un seul, mais bien plusieurs types de neurones. Ceux-ci
présentent, en effet, une grande diversité, ne serait-ce que par leur forme (pyramidale,
étoilée, en grain, ...), leur fonctionnement ou caractéristiques physiques. La longueur de
l’axone, par exemple, peut varier du millimètre (pour les cellules bipolaires de la rétine
humaine) au mètre (chez certains moto-neurones) et le diamètre du soma de 2 à 500
microns. Cette diversité morphologique n’empêche cependant pas de définir un modèle
commun, le neurone typique.
Le neurone typique, dont le schéma est proposé dans la figure 3-1, est composé de :
dendrites les arborescences qui amènent l’information vers le corps cellulaire,
le corps cellulaire qui permet un traitement spécifique de l’information,
l’axone c’est un prolongement conductif du corps cellulaire qui permet de véhiculer
l’information; l’extrémité de l’axone se divise en une multitude de ramifications,
les synapses qui sont les “articulations” entre les neurones ou avec les divers types de
cellules nerveuses.
Le transport de l’information dans le neurone s’effectue des dendrites aux synapses,
sous forme d’influx nerveux le long de l’axone. On les appelle potentiels d’action ou
“spikes”. Il s’agit d’une dépolarisation électrique de la membrane du neurone, d’environ
- 40 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
Noyau cellulaire
Corps cellulaire
Axone
Synapse
Dendrites
Figure 3-1. Représentation schématique d’un neurone typique.
100mV crête à crête et d’1ms de durée (voir la figure 3-2). Ce potentiel d’action se
propage à vitesse constante sans dégradation ni atténuation le long de l’axone (du soma
aux synapses). Il existe cependant des bifurcations sur l’axone qui peuvent jouer le rôle de
filtres et modifier la fréquence (ou d’autres types d’informations, telle l’écart interspike)
des potentiels d’action. Ainsi les informations atteignant deux neurones, par deux sous
branches différentes d’un même axone, peuvent être différentes et ne pas refléter les mêmes
caractéristiques.
V
1
V(mV)
40
0.5
-65
-80
0
5
t (ms)
10
0
0
2
4
6
8
t
Figure 3-2. A gauche, un potentiel d’action ou “spike”. A droite, un potentiel postsynaptique..
Ce potentiel d’action présynaptique est alors transmis par la synapse à la dendrite du
neurone postsynaptique sous la forme d’un potentiel postsynaptique (voir figure 3-2) qui
peut être excitateur ou inhibiteur pour le neurone postsynaptique. Sa modélisation simplifiée conduit au poids des liaisons dans les modèles connexionnistes (voir section 3.3). Il
est bien évident que biologiquement, la synapse réalise bien plus que cette modulation :
il s’agit d’une véritable fonction de transfert (transformation de potentiel d’actions en
- 41 -
Section 3.1
Du neurone réel à son modèle
potentiel postsynaptique) dont les caractéristiques ne sont pas encore bien connues. Les
synapses peuvent, en particulier, introduire un retard variable dans le temps de transmission de l’information. Elles sont, en plus, modifiables dans le temps et sujettes à
l’apprentissage. Cette plasticité synaptique se traduit au niveau des modèles connexionnistes par les algorithmes d’apprentissage portant sur les poids.
3.1.1
Modéliser les potentiels d’action ?
Pour extraire un modèle de neurone formel de la réalité biologique connue, il faut choisir
ce que l’on modélise et ce qu’on néglige. Un compromis entre précision de modélisation
et temps de calcul doit en effet être trouvé si l’on veut pouvoir se servir à grande échelle
du modèle. Ce qui semble réellement important est de savoir si oui ou non un potentiel
d’action a été émis et à quel moment. La façon dont il l’a été et dont il se propage
semblent peu important pour le traitement de l’information. Modéliser le fonctionnement
des neurones revient alors à ne modéliser que cette information, indépendamment de la
façon dont elle est biologiquement véhiculée. Cependant, il n’est pas sûr que tous les
neurones postsynaptiques d’un même axone reçoivent la même information. Le neurone
postsynaptique perçoit finalement une traduction du potentiel d’action par la synapse qui
le lui amène.
Propagation (spike)
Propagation (spike)
Integration
Transformation
synaptique
Figure 3-3. Les principales étapes de la chaı̂ne de traitement de l’information entre 2 neurones. Le rôle
des dendrites est ici négligé on supposant qu’il y a propagation sans déformation.
La chaı̂ne de traitement peut se résumer par la figure 3-3. Elle est équivalente à une
chaı̂ne où le transport d’information regrouperait : l’émission du potentiel d’action, sa
transformation en potentiel postsynaptique et l’intégration des potentiels postsynaptiques
en vue de l’émission d’un potentiel d’action. Pour parvenir à une réduction où, finalement,
le potentiel d’action disparaı̂t, deux aspects sont à modéliser : l’intégration (le lien entre
un courant synaptique entrant dans un neurone et le potentiel postsynaptique sortant de
ses synapses) et la transmission synaptique. La solution, et donc la façon de s’affranchir
des potentiels d’actions, est d’utiliser les fréquences moyennes d’émission. Mais alors
l’information de phase qui peut être primordiales dans bien des cas est perdue (mécanismes
- 42 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
de synchronisation entre neurones pour le binding notamment [171]). Le passage d’un
neurone biologique à un neurone formel n’est donc pas une chose aisée.
3.1.2
Le neurone artificiel
Lorsque l’on parle de réseaux de neurones, il s’agit essentiellement de réseaux d’automates
très simples portant abusivement le nom de “neurone” suite à une lointaine analogie et à
une réalité biologique encore mal connue. Le modèle de neurone artificiel le plus employé
est le célèbre neurone de McCulloch et Pitts dérivant de leur article de 1943 [124]. Les
caractéristiques essentielles qui fondent ce modèle sont:
• la non-linéarité (binaire) de la relation entrée-sortie
• l’existence d’un seuil paramètrant cette non-linéarité
• une grande connectivité (beaucoup d’entrées)
• une plasticité de la fonction réalisée : possibilité d’apprentissage, d’adaptation
Dans la majorité des modèles de neurone formel, l’activité du neurone est représentée
par une valeur analogique qui peut être identifiée à la fréquence d’émission des potentiels d’action sur son axone. Cette représentation, qui ne tient pas compte de la réalité
biologique de l’activation et de la transmission de l’information dans les neurones biologiques, est suffisante dans la plupart des applications.
D’une façon générale, un neurone formel i reçoit des entrées des neurones auxquels il
est connecté. Il calcule alors une somme pondérée de ses entrées qui correspond à son
activation. En fonction de son activité et de son seuil, sa sortie est ensuite calculé. Cette
sortie est transmise aux neurones auxquels le neurone i est connecté a son tour (voir figure
3-4).
e1
ω1i
ej
ωji
E
S
Si
ωni
en
Figure 3-4. Représentation schématique d’un neurone formel.
Ainsi, un neurone formel est caractérisé par :
• la nature de ses entrées (ej )j=1..n , qui peuvent entre binaires ou réelles,
• les poids synaptiques ωji qui pondèrent l’influence de l’entrée ej . La nature des
poids synaptiques peut être binaire ou réelle,
- 43 -
Section 3.1
Du neurone réel à son modèle
• la nature des liaisons qui peuvent excitatrices si ωji > 0 ou inhibitrices si ωji < 0,
• l’entrée totale, E, qui peut être:
– linéaire
n
X
E=
ωji · ej
j=1
– affine
E=
n
X
ωji · ej − a
j=1
– polynomiale

E=
n
X
j=1
avec x ∈ IN .
x
ωji · ej 
• la fonction d’activation, f qui caractérise la réaction du neurone aux entrées E, peut
être:
– la fonction de Heaviside : H(x) =
– la fonction signe : Sign(x) =
(
(
1 si x ≥ 0
0 si x < 0
1 si x ≥ 0
−1 si x < 0



1 si x > a
– une fonction linéaire à seuil :f (x) =  a1 x si x ∈ [−a, a]

−1 si x < a
– une fonction sigmoı̈de : f (x) = tanh(kx) ou
1
1+e−kx
– une fonction à base radiale (Radial Basis Functions - RBF) :
f (x) = exp(−
, f (x) =
1+
1
kx−t2 k
2
x
σ
)
,...
σ2


 1 avec la probabilité P (x) =
– ou une fonction stochastique : f (x) = 

0 sinon
Q
avec x = ni=1 ωi · ei
• la sortie S = f (E) et de sa nature qui peut être binaire ou réelle.
- 44 -
1
x
1+e− t
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
Figure 3-5. Le réseau totalement interconnecté (a), le réseau à connectivité locale (b) et à le réseau à
couches (c).
Un réseau de neurone est défini comme un ensemble de neurones connectés entre eux
selon un schéma préétabli. Le traitement de l’information est réparti sur l’ensemble des
neurones et des voies constituant le réseau. Le comportement propre d’un réseau dépend
des paramètres utilisés comme caractéristiques des neurones composant le réseau ainsi
que de la valeur des poids associés aux synapses entre neurones formels.
Les neurones formels peuvent former 3 types de réseaux (voir la figure 3-5) : totalement interconnectés (chaque neurone est connecté à tous les autres avec des connexions
bidirectionnelles), à connectivité locale (chaque neurone est connecté à quelques voisins)
ou à couche(s) (les neurones d’une même couche ne sont pas connectés entre eux mais
sont connectés aux neurones de la couche suivante).
3.1.3
Apprentissage associatif et conditionnement
Dans les réseaux de neurones, l’apprentissage est défini par la règle de changement de la
valeur des poids de connexion entre neurones. Lorsque l’apprentissage est non supervisé,
le principe est de détecter automatiquement des régularités dans les exemples présentés
à l’entrée. Les poids sont modifiés afin d’avoir la même sortie pour des exemples ayant
les mêmes caractéristiques. Ces réseaux sont capables de répondre à des interrogations
inconnues mais proches d’un exemple déjà présenté. Cette capacité de généralisation est
très importante, et permet de résoudre des tâches complexes de manière autonome.
La plupart des algorithmes d’apprentissage utilisent la règle d’apprentissage de Hebb
[95] qui peut s’exprimer ainsi :
“Quand une cellule A excite par son axone une cellule B et que, de manière
répétée et persistante, elle participe à la genèse d’une impulsion dans B, un
processus de croissance ou un changement métabolique a lieu dans l’une ou
dans les deux cellules, de telle sorte que l’efficacité de A à déclencher une
impulsion dans B est, parmi les autres cellules qui ont cet effet, accrue.”
Dans le cas de neurones formels, on peut décrire la règle de Hebb par l’équation (1) :
ωij (t + δt) = ωij (t) + ǫ · Ei · Sj
- 45 -
(1)
Section 3.1
Du neurone réel à son modèle
si les 2 neurones qui sont reliés par la même liaison sont activés en même temps, alors
la valeur du poids associé à la liaison est renforcée.
Les mécanismes d’apprentissage par conditionnement différent de l’apprentissage associatif par la présence d’un signal permettant de “diriger” l’apprentissage du neurone.
Ils permettent de comprendre comment certaines architectures de contrôle peuvent tirer
parties de certaines corrélations sensorielles afin d’améliorer leur efficacité.
Au début du siècle, grâce aux expériences de psychologie expérimentale du psychologue
russe Pavlov, le phénomène de conditionnement chez les animaux a pu être formalisé. Dans
l’expérience la plus célèbre (celle du chien et de la clochette) on présente de la nourriture
à un chien qui n’a pas mangé depuis 24 heures. Sa réaction “réflexe” à la vue de la
nourriture est de saliver. Le protocole du conditionnement consiste alors à faire tinter
une clochette à chaque fois que l’on présente la nourriture. Après plusieurs présentations
concomitantes de la nourriture et de la clochette, le chien se met à saliver dès qu’il entend
la clochette, même si la nourriture n’est plus présentée. On dit alors que le chien a été
conditionné à saliver lorsqu’il entend la clochette.
Il faut remarquer ici qu’un lien stimulus-réponse existe déjà avant tout conditionnement : lorsque le chien affamé voit la nourriture, il salive forcément. Par la suite, grâce
à la concomitance du Signal Inconditionnel (SI) et du Signal Neutre (SN) la réaction
de conditionnement peut s’établir. En fait, l’animal “se rend compte” que le Signal
Neutre (SN) (qui devient le Signal Conditionnel (SC) lorsque le conditionnement est
réalisé) prédit l’arrivée de la nourriture. La réaction de salivation conditionnée (RC) est
donc la conséquence de cette attente de la nourriture. Le conditionnement classique agit
ainsi comme un moyen de généraliser le cadre de déclenchement des réactions “réflexes”
(Réaction Inconditionnelle — RI) à l’ensemble des indices “pertinents” (dans le sens où
ils indiquent l’arrivée de la nourriture) présents dans l’environnement. Ce phénomène
souligne les capacités d’adaptation d’un individu à son environnement.
Si on suit ce raisonnement, on peut se demander ce qu’il advient dans le cas où le SC
continue d’être présenté alors que la nourriture n’est plus présente. On s’aperçoit alors
qu’il existe un mécanisme d’oubli du conditionnement appelé extinction. Dans l’expérience
du chien de Pavlov, par exemple, si on continue à faire sonner la clochette mais que la
nourriture n’est plus donnée, le chien salive de moins en moins, jusqu’à ce qu’il n’y ait plus
salivation du tout. On dit alors que le conditionnement a été éteint (dés-apprentissage).
A l’inverse, si l’on continue de donner de la nourriture au chien tout en conservant le
SC, on observe alors que l’intensité de la réaction conditionnée croı̂t jusqu’à atteindre
un seuil. On parle alors de saturation de la réaction conditionnée. Toutes ces propriétés
s’expliquent très simplement par le modèle proposé indépendamment par Rescorla et
Wagner en psychologie [158] et Widrow en Sciences pour l’Ingénieur (algorithme des
moindre carrés) [200] qui peut être formalisé selon l’expression suivante :
Wij [t + 1] = Wij [t] + αi · Ei · β · (Sd − Sj )
(2)
avec αi · Ei l’intensité du SC (αi est la constante d’apprentissage); β le coefficient
- 46 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
d’apprentissage; Sd , la réponse souhaitée; Sj , la réponse effective.
Si l’on dispose d’une architecture adéquate alors un simple mécanisme d’apprentissage
permet donc d’apprendre une très grande variété de comportements (voir thèse de A.
Revel [159]). Il est donc important de s’intéresser aussi à l’organisation anatomique et
fonctionnelle du cerveau pour comprendre comment sans apprentissage réellement supervisé nous réussissons à apprendre des tâches très complexes.
- 47 -
Section 3.2
3.2
Données neurobiologiques et anatomiques
Données neurobiologiques et anatomiques
La connaissance du cerveau est encore incomplète et controversée, même au sein de la
communauté des neurobiologistes de nombreuses observations peuvent être interprétées
différemment. Nous ne présentons ici que des données relativement consenseuelles sur le
système nerveux central humain (S.N.C.). Nous détaillerons plus particulièrement le cortex visuel et le système limbique, avec en particulier l’hippocampe, dont nous reparlerons
dans les chapitres suivantes.
3.2.1
Vision d’ensemble de l’anatomie du cerveau
Le système nerveux assure le contrôle des activités rapides du corps, les événements
viscéraux de survenue rapide et même la sécrétion de certaines glandes endocrines. La
plupart des activités du système nerveux sont initiées par des expériences émanant de
récepteurs sensoriels, visuels, auditifs ou d’autres, situés à la surface ou à l’intérieur du
corps. Ces expériences sensorielles entraı̂nent le plus souvent une réaction immédiate et
sont mémorisées par le cerveau. Cette mémorisation d’un état perceptivo-moteur associée
à une “valeur” de renforcement (positive ou négative par rapport à la satisfaction de
certains besoins) peut ainsi aider à déterminer les réactions de l’organisme dans le futur.
Le rôle le plus important du système nerveux est de commander les différentes activités
de l’organisme. Ceci est réalisé par le contrôle de la contraction des muscles squelettiques
à travers le corps, la contraction des muscles lisses au niveau des organes internes. Ces
activités sont appelées dans leur ensemble, fonctions motrices du système nerveux, et
les muscles sont appelés effecteurs, car ils exécutent les fonctions dictées par les signaux
nerveux. La fonction majeure du système nerveux est de traiter les informations de
manière à ce que les réactions motrices appropriées puissent se produire.
Les grandes divisions du système nerveux central humain, dans la terminologie la plus
largement utilisée, sont:
le cerveau hémisphérique est composé du cortex cérébral, des noyaux profonds, des
structures limbiques et de la substance blanche. Ces structures sont impliquées dans
plusieurs mécanismes de cognition.
le diencéphale est le cerveau intermédiaire qui contient, parmi d’autre structures, le
thalamus et l’hypothalamus. Le thalamus est essentiellement une importante station
de relais dirigeant à la fois les signaux sensoriels (somesthésiques, visuels, auditifs, de
contrôle musculaire) vers les zones appropriées du cortex cérébral. L’hypothalamus
est essentiellement impliqué dans la régulation de la température corporelle et la
sécrétion neuronale de plusieurs hormones.
le mésencéphale ou cerveau moyen, participe dans la stimulation de l’ensemble du
cerveau et le contrôle du tonus musculaire, contrôle des mouvements oculaires, relais
des signaux issus du cervelet et transmission des signaux vers le thalamus.
- 48 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
le cervelet est une composante importante du système de contrôle de la motricité. Sa
fonction principale est la définition, lors d’un mouvement complexe, des séquences
chronologiques de contraction des différents muscles d’une région du corps, en particulier lors des mouvements rapides.
la protubérance ou le pont : participe aussi au tonus musculaire ainsi qu’aux mouvements oculaires et faciaux (sensibilité de la face, audition et équilibration). Elle est
aussi un relais pour le cervelet.
la moelle épinière a deux fonctions : c’est un conduit pour les fibres afférentes qui
transmettent les informations sensorielles au cerveau et pour les fibres efférentes qui
transmettent les signaux moteurs du cerveau à la périphérie. En même temps, c’est
une zone intégratrice permettant de coordonner de nombreuses activités subconscientes tel que certains réflexes (le réflexe de flexion, ...).
Les neurochirurgiens et les neurologues ont rassemblé avec attention les modifications
de la fonction cérébrale provoquée par des tumeurs ou des lésions spécifiques. Ainsi, ils
ont mis en évidence les principales aires fonctionnelles du cortex cérébral (voir figure 3-6).
Cortex moteur
Cortex prémoteur
Sens
primaire
somesthésique
secondaire
Aire préfrontale
secondaire
Vision
primaire
Aire de Broca
primaire
secondaire
Aire de Wernicke
Audition
Figure 3-6. Les aires fonctionnelles du cortex cérébral.
Les aires motrices est divisée en trois parties : le cortex moteur primaire, le cortex prémoteur et l’aire de Broca tous concernés par l’activité musculaire. Elles occupent la moitié
postérieure du lobe frontal. Le cortex moteur primaire contrôle des muscles spécifiques
du corps, particulièrement ceux qui sont à l’origine des mouvements fins, tels que ceux
des lèvres et de la bouche (pour parler et manger), des doigts et du pouce. Le cortex
- 49 -
Section 3.2
Données neurobiologiques et anatomiques
pré-moteur provoque les mouvements coordonnés qui comprennent à la fois les séquences
de mouvements de muscles individualisés ou de mouvements combinés et simultanés de
plusieurs muscles. C’est dans cette aire que la plupart de nos connaissances nécessaires
au contrôle de l’habileté motrice sont emmagasinées (exemple : les mouvements de la
marche). L’aire de Broca contrôle la coordination des mouvements du larynx et de la
bouche générant l’expression des mots. Cette aire est le centre du langage et elle est
présente seulement dans un des deux hémisphères cérébraux.
Les sensations somesthésiques sont celles qui proviennent du corps, telles que le toucher,
la pression, la température et la douleur. Elles sont représentées par les aires sensorielles
somesthésiques qui occupent presque la totalité du lobe pariétal. Cette aire est divisée
en une aire primaire et une aire secondaire. Ceci reste vrai pour toutes les autres aires
sensorielles. L’aire sensorielle somesthésique primaire est la partie du cortex qui reçoit
directement les signaux des différents récepteurs sensitifs de l’organisme. Au contraire, les
signaux parvenant à l’aire sensorielle somesthésique secondaire sont partiellement traités
par les structures profondes du cerveau ou par l’aire somesthésique primaire. L’aire primaire est capable de reconnaı̂tre les types particuliers de sensations en provenance de
régions distinctes du corps. Le rôle de l’aire secondaire est essentiellement d’interpréter
le signal sensitif.
Les aires visuelles détectent de manière spécifique les points sombres et lumineux, ainsi
que la couleur, l’orientation des lignes et le contour de la scène visuelle. Elles occupent la
totalité du lobe occipital. Les aires visuelles secondaires ont pour fonction d’interpreter
l’information visuelle. Étant donnée que la vision occupe une place importante dans notre
document, nous en faisons une présentation plus détaillée dans la section 3.2.2.
Les aires auditives sont situées dans la moitié supérieure des deux tiers antérieurs
du lobe temporal. C’est dans les aires primaires que les sons spécifiques, la sonorité et
d’autres qualités du son sont perçus. C’est dans les aires auditives secondaires que le sens
des mots est interprété et que la reconnaissance de la musique a lieu.
Le lobe temporal semble être implique dans des tâches de reconnaissance de formes
(neurones répondants de manière spécifique à des visages, formes, ... dans le cortex
inferotemporal) et participer à la mémoire à court terme. Le lobe pariétal s’intéresse
plus particulièrement à l’aspect spatial des informations traitées par le cerveau. Si le
lobe temporal s’intéresse au “quoi” (reconnaissance des objets par exemple) alors le lobe
pariétal s’intéresse au “où”.
C’est dans l’aire de Wernicke que les signaux sensoriels en provenance de trois lobes
- temporal, occipital et pariétal - se rencontrent. Cette aire est située dans la partie
postéro-supérieure du lobe temporal. Cette aire est d’une importance extrême pour
l’interprétation finale de la signification de ces différents signaux, c’est à dire les phrases
et les pensées, qu’elles soient lues, entendues, senties, voire générées à l’intérieur même du
cerveau. Ainsi, la destruction de cette zone induit des pertes importantes dans la capacité
de penser. Cette aire n’est bien développée que dans un seul des hémisphères ce qui, on
le suppose, [88], évite la confusion du traitement de la pensée entre les deux moitiés du
cerveau.
- 50 -
Chapitre 3
3.2.2
Réseaux de neurones et les systèmes dynamiques
Données neurobiologiques sur la vision
La vision est sans conteste le sens jouant le rôle le plus important dans les mécanismes
de survie et d’adaptation des espèces animales les plus évoluées. Il est bien sûr vital pour
les animaux diurnes de posséder une vision pour pouvoir échapper aux prédateurs ou au
contraire se lancer à la poursuite de proies. Les animaux nocturnes, cependant, ne sont
pas en reste; l’affinement de l’acuité visuelle leur donnant un atout décisif vis à vis de leur
ennemis ou proies moins bien équipés.
En ce qui concerne l’homme, même si la vision n’a plus ce caractère vital, ce sens reste
tout de même celui qui semble le plus mis en valeur, car c’est lui qui permet de guider la
plupart de nos actions. La compréhension des processus de perception visuelle requiert de
bonnes connaissances des bases neurobiologiques de la vision [39]. Nous allons ici résumer
les circuits neurobiologiques qui permettent de traiter l’information lumineuse de manière
à pouvoir l’utiliser, par exemple, pour effectuer une action motrice.
3.2.2.1
La rétine
Le globe oculaire est le point de départ de la chaı̂ne de traitement de l’information visuelle.
L’oeil constitue un formidable système optique permettant de former une image nette de
tout objet présent dans l’environnement sur une surface interne photo-sensible appelée la
rétine. L’image est amenée au foyer de la rétine grâce à l’intervention de sortes de lentilles
intermédiaires, la cornée et le cristallin. Les objets pouvant être évidemment situés à
différentes distances, la courbure du cristallin est adaptée par l’intermédiaire des muscles
ciliaires de manière à réajuster la netteté (phénomène d’accommodation). Par ailleurs, la
quantité de lumière pénétrant dans l’oeil est régulée par la fermeture d’un diaphragme
appelé iris. Enfin, le milieu intra-oculaire est formé d’un liquide qui absorbe des longueurs
d’ondes spécifiques de manière à filtrer la distribution de fréquences lumineuses parvenant
à la rétine (voir figure 3-7).
La rétine est un élément essentiel au codage et à la compression de l’information contenue dans le spectre lumineux. On peut tout d’abord dire qu’elle est l’interface nécessaire
pour permettre au cerveau d’appréhender les ondes lumineuses comme des signaux
pourvus d’informations. Par ailleurs, la répartition topographique et la différenciation
fonctionnelle des éléments photo-sensibles conditionnent totalement les représentations
que fabrique le cerveau.
La rétine est constituée de deux types principaux de récepteurs permettant la phototransduction (transformation du signal lumineux en signal électrique). Ces récepteurs
possèdent des sensibilités distinctes et des répartitions topographiques différentes [106].
Les bâtonnets sont des éléments sensibles aux faibles niveaux lumineux principalement
présents dans les zones périphériques de la rétine (et donc du champ visuel). On en
compte environ 120 millions. Ils sont insensibles aux différences de couleurs et répondent
sur une gamme de fréquence très étendue. Les cônes, par contre, sont sensibles aux fortes
intensités de lumières ayant une fréquence particulière. On trouve trois sous-catégories
de cônes : les cônes sensibles au bleu, au vert ou au jaune-vert. Les 6 millions de cônes
- 51 -
Section 3.2
Données neurobiologiques et anatomiques
nerf optique
cornée
cristallin
axe visuel iris
fovea
Figure 3-7. Schéma du globe oculaire faisant apparaı̂tre la cornée, l’iris, la rétine et le nerf optique.
que compte la rétine sont principalement présents dans la zone centrale du champ visuel
(là où se forme l’image) appelée fovéa.
Les cônes ou les bâtonnets sont ensuite reliés à des cellules bipolaires elles-mêmes connectées aux cellules ganglionnaires dont les axones forment le nerf optique. Une forte
compression de l’information est réalisée puisqu’on ne trouve environ qu’un million de
cellules ganglionnaires. En fait, sur la périphérie du champ visuel de nombreux bâtonnets
sont reliés à la même cellule ganglionnaire. Plus on se rapproche de la fovéa, moins le
nombre de cellules photo-sensibles reliées à la même cellule ganglionnaire est important.
Par ailleurs, des inhibitions latérales entre cellules photo-sensibles sont réalisées par les
cellules horizontales et les cellules amacrines. Ces types de cellules participent au rehaussement du contraste aussi bien localement que globalement [148]. C’est aussi grâce
à ces mécanismes que les cellules bipolaires donnent des réponses qui sont fonction du
logarithme du rapport de la réponse d’un photo-récepteur et de la moyenne des réponses
des photo-récepteurs dans un voisinage.
On distingue deux types de cellules ganglionnaires différenciées par la réponse qu’elles
donnent à un rayon lumineux projeté sur le centre de leur champ récepteur. Les cellules
dites “center-ON” produisent une réponse lorsqu’on présente de la lumière au centre du
champ. Par contre, elles sont inhibées lorsque la lumière est présentée sur le pourtour.
Les cellules “center-OFF” présente la caractéristique inverse. Par ailleurs, on distingue
encore deux sous catégories de cellules ganglionnaires en fonction du temps pendant lequel
réagissent ces cellules. Les cellules X sont dites toniques. Elles répondent tant qu’elle sont
activées par un stimulus lumineux. À l’inverse, les cellules Y sont dites phasiques car elles
ne donnent qu’une réponse transitoire (détection de mouvements). Les cellules X sont
surtout présentes dans la fovéa où l’acuité visuelle est la plus importante et les cellules Y
sont réparties principalement sur les zones périphériques du champ de vision
La rétine est donc un filtre incroyablement complexe servant d’interface entre les informations visuelles provenant du monde extérieur et la perception qu’en a le cerveau.
La rétine effectue une préservation de topographie mais une importante compression de
- 52 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
l’information est faite (rapport 1/125!). Par ailleurs la rétine fait apparaı̂tre des cellules possédant des fonctionnalités bien distinctes, dont les voies efférentes sont parfaitement différenciées, ce qui laisse présager que les relais cérébraux suivant utiliseront les
spécificités de ces cellules pour filtrer et spécialiser l’information.
3.2.2.2
Le corps génicullé latéral
Considérons l’oeil droit par exemple. La partie gauche du champ visuel de l’oeil droit est
projetée dans l’hémisphère gauche, par contre, la partie droite du champ visuelle reste
dans le même hémisphère. Ainsi, toutes les fibres concernant la partie droite du champ de
vision se retrouvent dans l’hémisphère droit, et inversement pour la partie gauche (voir
figure 3-8).
Presque toutes les fibres du nerf optique se terminent dans le noyau génicullé , aussi
fréquemment appelé corps genouillés latéraux. Certaines fibres aboutissent, elles, dans les
tubercules quadrijumeaux antérieurs du mésencéphale. Enfin, quelques fibres aboutissent
aux noyaux du diencéphale qui joue un rôle dans les rythmes circadiens. Le noyau génicullé
latéral a deux fonctions principales : celle de relais pour l’information visuelle allant de
l’oeil vers le cortex (ils permettent de différencier les différentes voies provenant de cellules
aux fonctions distinctes de la rétine) et celle de canal de communication “parfait”. Il
réalise une transmission exacte point par point de la rétine jusqu’au cortex visuel).
radiation optiques
corps genouillé latéral
chiasma optique
nerf optique
cortex visuel
Figure 3-8. Les principales voies optiques des yeux au cortex visuel.
Les corps genouillés possèdent six couches de neurones. Chacune de ces couches ne
reçoit que les fibres issues d’un seul oeil en alternant d’une couche à l’autre. Les couches
1,4 et 6 reçoivent les fibres provenant du coté opposé alors que les couches 2,3 et 5 reçoivent
les fibres du coté correspondant au même hémisphère. Chaque couche perçoit la totalité du
champ visuel, et deux neurones se correspondant dans deux couches différentes perçoivent
la même portion de champs (voir figure 3-8). Hubel et Wiesel ont montré, de plus, que les
- 53 -
Section 3.2
Données neurobiologiques et anatomiques
neurones du corps genouillé ont les mêmes caractéristiques que les cellules ganglionnaires
[103, 102]. En particulier, on retrouve des neurones center-ON et des neurones centerOFF. Par ailleurs, il a été montré qu’on retrouve aussi la dichotomie entre cellules X
et cellules Y. Les couches 1 et 2 sont appelées couches magnocellulaires parce qu’elles
contiennent des neurones de grande taille. Presque tous leurs signaux afférents prennent
leur origine dans les grandes cellules ganglionnaire de type Y. Ce système magnocellulaire
constitue une voie de conduction très rapide jusqu’au cortex visuel. Par contre, cette
voie est “aveugle” au couleurs, et transmet uniquement l’information en noir et blanc.
Les couches 3 à 6 sont appelées couches parvocellulaires parce qu’elles contiennent de
nombreux neurones de petite taille. Presque tous leur signaux afférents prennent leur
origine dans les cellules ganglionnaires de type X qui transmettent la couleur et qui sont
capables de transmettre une information spatiale très précise, point par point, bien que
la vitesse de transmission soit modérée.
3.2.2.3
Le cortex visuel
Le cortex visuel est situé au niveau des lobes occipitaux. Il se divise en cortex visuel
primaire et cortex visuel secondaire. Le cortex visuel primaire coı̈ncide dans son étendue
avec l’aire corticale 17 de Brodmann. Elle est également fréquemment appelée aire V1.
Les aires visuelles secondaires, appelées aires d’association visuelle, se trouvent situées
devant, au-dessous et au-dessus du cortex visuel primaire. Sur ces aires sont transmis
des signaux permettant l’analyse de la signification visuelle. Par exemple, l’aire 18 de
Brodmann constitue une aire d’association par laquelle transitent pratiquement tous les
signaux provenant du cortex visuel primaire. Par conséquent, elle est appelée aire V2,
les autres aires visuelles secondaires ont des dénominations spécifiques: V3, V4. Leur
importance tient à leur capacité à traiter point par point et progressivement l’image
visuelle.
Les axones des neurones du corps genouillé forment les radiations optiques qui aboutissent dans le cortex visuel primaire V1. Les projections des axones provenant des corps
genouillés latéraux ont des propriétés topologiques très intéressantes. En particulier, pour
une zone de l’aire visuelle correspondant à une partie du champ visuel, on va trouver
un alignement de cellules correspondant à l’oeil situé dans le même hémisphère cérébral
(ipsilatéral) juste à coté d’un alignement de cellules correspondant à l’oeil opposé (controlatéral). Comme beaucoup d’autre portions du cortex cérébral, le cortex visuel comporte
six couches de neurones superposées, numérotées de I à VI dans l’aire visuelle primaire
(la couche I est la plus externe) illustrées sur la figure 3-9. Les axones issus du corps
genouillé latéral viennent plonger principalement au sein de la couche IV et se projettent
en respectant la topologie de la rétine. Il est intéressant de noter que les cellules X et Y
ne se terminent pas au même endroit mais dans des sous-couches distinctes. Les neurones
provenant de cellules ganglionnaires Y se terminent sur la couche 4ca d’où il sont dirigés
verticalement vers la surface du cortex ou vers sa profondeur. Les neurones provenant de
cellules ganglionnaires X se terminent sur les couches 4b et 4cb. Les neurones de la couche
IV envoient à leur tour des prolongements axonaux vers les couches II et III. Ces derniers
- 54 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
II
III
IV
(a)
(b)
(ca)
(cb)
V
VI
(Y) magnocellulaire
(rapide, noir et blanc)
(X) parvocelullaire
(grande précision, couleur)
Figure 3-9. Le six couches du cortex visuel primaire.
sont connectés à la couche V qui est elle-même liée à la couche VI. Enfin, la couche VI
connecte la couche IV par une branche collatérale. Par ailleurs, des axones sont envoyés
dans des zones à l’extérieur de l’aire 17. En particulier, les couches II et III tissent des
liens avec les aires visuelles secondaires 18 et 19. La couche V envoie des axones vers les
tubercules quadrijumeaux et la couche VI vers les corps genouillés latéraux.
La figure 3-10 montre l’analyse de l’information visuelle dans les aires visuelles secondaires, après son passage par le cortex primaire, à travers deux voies principales. Une
des voies analyse les positions des objets visuels dans les trois dimensions. A partir de
cette information, cette voie analyse également la forme globale de la scène visuelle ainsi
que son mouvement. Autrement dit, cette voie rend compte d’“où” se trouve chaque
objet à chaque instant et s’il est en mouvement. Les signaux transmis par cette voie de
position-forme-mouvement proviennent principalement des grandes fibres Y. L’autre voie
prend en charge l’analyse du détail visuel ainsi que le traitement de l’information visuelle
concernant la couleur. C’est ainsi que cette voie s’occupe de capacités visuelles telles que
reconnaı̂tre des lettres, lire, déterminer la texture de surfaces et, à partir de toutes ces
informations, ce qu’est l’objet et ce qu’il signifie. Il s’agit de la voie “quoi” de traitement
de l’information visuelle. Les signaux transmis par cette voie associée à la signification
de l’objet, proviennent principalement des fibres X. Dans le chapitre 6, nous utiliserons
ces informations pour développer une architecture permettant à notre élève d’apprendre
à reconnaı̂tre la forme visuelle de son professeur.
Hubel et Wiesel se sont aperçu qu’il existait trois types de cellules dans le cortex,
- 55 -
Section 3.2
Données neurobiologiques et anatomiques
aires visuelles secondaires
position
mouvement
aire V2 (18)
aire V1 (17)
detail visuel
couleur
Figure 3-10. Le cortex visuel avec la transmission des signaux visuels du cortex visuel primaire (V1)
aux aires visuelles secondaires.
répondant de manière différente en fonction du type de stimulus utilisé. Les cellules
simples, sont principalement présentes dans la couche IV. Comme pour les cellules ganglionnaires elles présentent deux zones ON et OFF dans leur champ récepteur. Cependant
ces champs ne sont pas circulaires mais allongés dans une direction particulière. Ces cellules sont donc sensibles à une différences de contraste selon une orientation donnée et
pour un point précis du champ visuel. Les cellules complexes, quant à elles, sont présentes
en dehors de la couche IV. Elles aussi sont sensibles à une différence de contraste orientée,
mais cette fois quelle que soit la position dans le champ visuel. Enfin, les cellules hypercomplexes ont une réponse semblable aux cellules complexes mais elles répondent plus
préférentiellement à des stimuli d’une longueur donnée. Par ailleurs, elles sont sensibles
au mouvement dans la direction perpendiculaire à l’orientation du stimulus.
Par ailleurs, les neurones de différentes couches situés dans une colonne corticale à la
surface de la couche, ont tendance à tisser des liens de manière préférentielle avec d’autres
neurones situés dans la même colonne. Cette organisation en colonnes se retrouve dans
tout le cortex cérébral. Chaque colonne représente une unité fonctionnelle, chaque colonne
contiendrait autour de 1000 neurones [88]. Dans le cortex visuel, ces colonnes sont appelées, Colonnes de Dominance Oculaire (CDO). Au sein d’une même CDO, il a été montré
qu’il existait des blocs individuels dont les neurones répondaient préférentiellement à une
orientation donnée de stimuli visuels. En passant d’un bloc à un autre, toujours pour la
même CDO, l’axe préférentiel d’orientation du stimulus change d’environ 10 degrés. En
plus des CDO, on trouve des régions en forme de cheville qui interrompent la progression des colonnes d’orientation. Les neurones situés dans ces régions ne réagissent pas
à l’orientation mais aux couleurs. Ce sont des cellules à double opposition (excitées par
le rouge et inhibée par le vert par exemple). On les trouve surtout dans les zones du
cortex visuelle primaire qui codent le centre du champ visuel. Pour résumer, l’ensemble
des caractéristiques vues ci-dessus, nous considérons une CDO comme un module fonctionnel de base du cortex visuel capable d’effectuer l’ensemble des opérations élémentaires
de traitement du stimulus visuel.
- 56 -
Chapitre 3
3.2.3
Réseaux de neurones et les systèmes dynamiques
Le cortex limbique et l’hippocampe
A l’origine, le terme “limbique” était utilisé pour décrire les structures limites situées
autour des régions basales du cerveau, mais au fur et à mesure que les connaissances neurobiologiques ont progressées, la signification du terme “système limbique” s’est étendue à
l’ensemble du circuit neuronal qui contrôle les comportements émotionnels et les conduites
motivationnelles.
Les afférences du système limbique proviennent de l’ensemble des aires sensorielles
supérieures et ses projections comprennent la majorité des aires corticales, y compris le cortex pré-frontal. Une grande partie du système limbique est constituée par
l’hypothalamus et ses structures associées. Autour de l’hypothalamus se trouvent les
structures sous-corticales du système limbique comprenant le septum, l’aire paraolfactive,
une partie des noyaux gris centraux, les corps mamillaires, l’amygdale et l’hippocampe.
Dans la suite de ce paragraphe, nous nous intéressons plus spécifiquement à l’hippocampe
qui joue un rôle primordial au niveau de la mémoire déclarative et qui semble très important pour permettre l’apprentissage dans d’autres structures du cerveau (il aurait par
exemple un rôle important même pour l’acquisition de simples conditionnements comme
nous le verrons par la suite [182]). Son étude est donc tout à fait justifié dans le cadre
d’une étude sur l’apprentissage par imitation.
L’hippocampe a de nombreuses connexions, principalement indirectes, avec de nombreuses parties du cortex cérébral, mais aussi aussi avec les principales structures du
système limbique (l’amygdale, l’hypothalamus, le septum et les corps mamillaires).
Presque toutes les expériences sensorielles entraı̂nent l’activation d’au moins une partie de l’hippocampe. Sa connectivité permet à l’hippocampe d’envoyer de nombreux
signaux dans presque toutes les structures dont il reçoit des entrées (capacité de fusion
multimodale).
L’hippocampe est une structure ayant un rôle important dans l’apprentissage à long
terme, plus particulièrement dans le transfert des informations de la mémoire à court
ou moyen terme vers la mémoire à long terme qui est considérée comme étant plutôt
de nature corticale. Dans certains cas d’épilepsie chez l’être humain, les hippocampes
ont été enlevés bilatéralement par voie chirurgicale. Dans ce cas, les sujets peuvent se
souvenir de façon satisfaisante de la plupart des faits antérieurement appris et mémorisés.
Cependant, ils ne peuvent retenir aucune nouvelle information. En fait, ils ne peuvent
même pas apprendre les noms de personnes avec lesquelles ils entrent en contact chaque
jour. Toutefois, ils sont capables de se souvenir un instant de ce qui vient de se passer
au cours de leurs activités courantes. Ainsi, ils sont en possession d’un type de mémoire
à très court terme, même s’ils n’ont plus de mémoire de durée plus longue, supérieure à
quelques secondes. Ce phénomène est qualifié d’amnésie antérograde1 .
Une autre caractéristique de l’hippocampe est que de très faibles stimulations
électriques déclenchent des crises qui persistent pendant quelque temps après la fin de
1
Les patients ayant des lésions hippocampique conservent leur anciens souvenirs et sont capables peu
à peu d’apprendre par exemple de nouvelles habiletés manuelles sans être capables de se rappeler les avoir
apprises (apprentissage au niveau cortical).
- 57 -
Section 3.2
Données neurobiologiques et anatomiques
la stimulation, ceci suggérant que l’hippocampe présente la capacité de potentiation à
long terme (Long Term Potentiation - LTP) de la plupart de ses connexions internes. On
entend par potentiation, la facilitation d’une réponse postsynaptique par excitations successives des voies afférentes sollicitant cette synapse. La LTP peut durer 3s,15s, quelques
minutes, voire même parfois jusqu’à plusieurs semaines ! Cette caractéristique des fibres
perforantes semblerait être la source des capacités de mémorisation rapide qui font la force
de l’hippocampe.
La formation hippocampique est constituée de deux éléments : le Gyrus Dentelé (Dentate Gyrus - DG) et la Corne d’Ammon (CA). Au niveau de CA, il existe une subdivision
fonctionnelle entre CA1, CA2 et CA3. Souvent, on associe le subiculum (SUB ) et le cortex
entorhinal (Entorhinal Cortex - EC ) à la formation hippocampique (voir figure 3-12). La
plupart des afférences de l’hippocampe proviennent des aires sensorielles supérieures et
des aires associatives et sont relayées par le cortex entorhinal. Par ailleurs, l’hippocampe
envoie lui-même des efférences dans l’ensemble des aires associatives. Il y a approximativement 108 cellules dans le DG de l’homme [192]. La réponse des neurones du DG,
appelées cellules granulaires, présente une particularité : la taille de la cellule détermine
l’amplitude et la durée de la réponse. Dans la figure 3-11, nous présentons un aperçu de
cette particularité: plus la taille de la cellule granulaire est grande, plus l’amplitude de son
potentiel postsynaptique sera faible et la durée de son activation longue (voir section 5.2
pour plus de détails sur le modèle que nous avons développé). Plus de 70% des efférences
de l’EC constituent des afférences pour DG, ce qui implique toujours une activation de
DG suite à une activation de EC. De cette manière, le comportement du gyrus dentelé a
été souvent comparé avec des bases de retards [38].
Intensité d’activation
1
0.9
0.8
Cellule 1
0.7
0.6
Cellule 2
0.5
0.4
0.3
0.2
0.1
0
0
1000
2000
3000
4000
5000
ms
6000
7000
8000
9000
10000
temps en ms
Figure 3-11. Le potentiel post-synaptique des cellules granulaires, tel que nous le simulons, en fonction
de leur taille.
CA3 contient environ 2.6 × 106 neurones [192]. La caractéristique principale de CA3
- 58 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
est qu’elle reçoit des afférences des 3 formations différentes : le cortex entorhinal, le
gyrus dentelé et d’elle-même. Mais les synapses entre les neurones de CA3 et les autres
formations sont différentes, ce qui laisse supposer un rôle différent des signaux qui passent
par elles.
Selon [3], le circuit neuronal au sein de l’hippocampe est le suivant : les afférences en
provenance des autres aires cérébrales se projettent sur EC. Par l’intermédiaire des fibres
perforantes, des afférences en provenance de la couche II de EC induisent une activité
dans le DG et CA3. DG projette ses efférences sur CA3, via des fibres moussues (MF).
Par ailleurs, CA3 projette des liaisons collatérales sur lui-même. De la même manière
CA3 possède des liens avec CA1 qui reçoit cependant, aussi, des afférences du niveau III
de EC. Le subiculum reçoit des liens en provenance de CA1 mais aussi de la couche III
de EC. Finalement, des projections de CA1 et du subiculum viennent atteindre en retour
les niveaux V et VI de EC [3, 192].
Représentation du spectre temporel
DG
Cortex associatif
(nucleus accumbens)
Cortex associatif et préfrontal
EC2
Sélection de la prochaine action
CA3
Prédiction des séquences
CA1
Sub
EC3
Subiculum
(ACh)
Septum
Détection de nouveauté
Figure 3-12. Structures et liens au sein de l’hippocampe.
Dans la figure 3-12 nous avons un aperçu des liaisons au sein de l’hippocampe. Les interprétations fonctionnelles des différentes structures sont dérivées du modèle de Banquet
et Gaussier [15].
En parallèle, il a été montré qu’au cours du conditionnement (voir section 3.1.3), certains neurones de l’hippocampe réagissaient de manière identique à celui de la réponse
conditionnée et que l’augmentation de l’activité de ces neurones précédait l’acquisition
même du comportement. Par ailleurs, les neurones qui répondent au Signal Conditionnel
(SC) sont différents de ceux activés par la Réponse Conditionnelle (RC) ou encore le
Signal Inconditionnel (SI) [20]. De plus, les cellules de l’hippocampe ne répondent pas
seulement aux simples stimuli, mais aussi aux combinaisons de stimuli [198]. Ces faits,
- 59 -
Section 3.2
Données neurobiologiques et anatomiques
et des expériences de lésions hippocampiques, sembleraient montrer une implication de
l’hippocampe dans le conditionnement. En effet, certains types de conditionnements sont
impossibles sur des animaux donc l’hippocampe est lésé. En particulier, lors d’expériences
de réacquisition, les animaux lésés ont plus de difficultés à réapprendre [61, 173]. De même,
les lapins avec des lésions hippocampiques ont des difficultés à apprendre le blocage [175].
Par ailleurs, les animaux lésés sont incapables d’apprendre un conditionnement inversif
[151][21], un problème de discrimination positive [164], ou bien de “negative patterning”
[19].
Dans la suite de notre discussion, nous nous appuierons sur les données biologiques
que nous venons de présenter à la fois pour élaborer nos architectures de contrôle robotique et pour envisager dans quelle mesure elles peuvent être des modèles de phénomènes
biologiques. Nous avons insisté, en particulier, sur l’hippocampe car nous suggérerons
dans le chapitre 5 son implication dans l’apprentissage de séquences temporelles et de
conditionnements. Par ailleurs, nous proposerons au paragraphe 5.2 un modèle simplifié
de l’hippocampe qui peut prédire l’arrivée des événements constituant une séquence.
- 60 -
Chapitre 3
3.3
Réseaux de neurones et les systèmes dynamiques
Modèles de réseaux de neurones
Dans ce paragraphe, nous présentons différents modèles de réseaux de neurones.
Nous introduisons le mécanisme du Winner Take All (WTA) [166, 121]. Par la suite,
nous présentons le modèle ART de Grossberg [84, 81] qui tente de trouver un compromis
entre l’adaptabilité et stabilité ainsi que le modèle de carte topologique auto-adaptative
introduit par Kohonen [112, 113]. Enfin, nous décrivons le modèle de carte topologique
probabiliste à apprentissage autonome et l’architecture PerAc proposée par Gaussier et
Zrehen.
3.3.1
Winner Take All (WTA)
Un réseau de type WTA essaie de reproduire les mécanismes de compétition qu’on peut
trouver entre les neurones d’une même colonne ou entre des colonnes de neurones. Le
processus de compétition est simulé par des connexions latérales inhibitrices entre les
neurones. Les neurones utilisés dans un réseau WTA sont, dans la plupart des cas, des
neurones formels dont l’apprentissage est défini par la règle de Hebb. À la fin de la
convergence, le neurone dont l’activité est la plus grande reste actif, tous les autres sont
inhibés [166, 121].
Pour mieux comprendre les mécanismes de compétition, nous présentons le modèle
INSTAR de Grossberg [79]. Il a été utilisé comme mécanisme de rehaussement de contraste pour un réseaux ART. Le fonctionnement du réseau INSTAR est décrit à l’aide de
l’équation différentielle (3) qui assure aussi la normalisation de l’activité par rapport à
l’activité totale [84, 81].
Dans ce modèle, chacun des N neurones de la première couche envoie une liaison excitatrice vers le neurone correspondant (spatialement) sur la deuxième couche (voir figure
3-13). De plus, chaque neurone de la deuxième couche reçoit une liaison inhibitrice de
l’ensemble des neurones de la première couche, sauf le neurone correspondant. En même
temps la sortie d’un neurone de la deuxième couche est rebouclée sur le neurone lui même
avec un effet inhibiteur.
Nous considérons un neurone k qui reçoit les entrées ik et qui a pour sortie yk . Soit
P
I = k ik et φk = iIk l’entrée relative.
La dynamique du neurone k de la deuxième couche est modélisée par l’équation :
X
dyk
il
(3)
= −A · yk + (B − yk ) · ik − yk
dt
l6=k
avec l’influence inhibitrice des neurones voisins −yk l6=k il , l’influence excitatrice de
l’entrée +B · ik , le terme de décroissance passive du potentiel du neurone −A · yk et l’effet
inhibiteur de la sortie du neurone −yk · ik . A, B sont des constantes, et 0 ≤ yk (0) ≤ B
(effet inhibiteur de la sortie −yk ·ik ne doit jamais être plus important que l’effet excitateur
de l’entrée +B · ik ).
Après un régime transitoire, à l’équilibre ( dydtk = 0), nous avons :
P
yk · (A + I) = B · ik
- 61 -
(4)
Section 3.3
Modèles de réseaux de neurones
ik
yk
lien inhibiteur
lien excitateur
Figure 3-13. Réseau INSTAR avec une compétition à deux couches.
La sortie est proportionelle à l’entrée :
yk = φk ·
A·B
A+I
(5)
A·B
A·B
=
≤B
A+I
A+I
(6)
et la somme des sorties est normalisée :
ytotal =
N
X
k=1
3.3.2
yk =
N
X
k=1
φk ·
Le réseaux ART
L’Adaptive Resonance Theory (ART) est une famille de modèles de réseaux de neurones
inspirés des observations effectuées en psychologie visuelle. Elle a été introduite dans les
années 80 [80, 42] et elle est basée sur trois éléments :
• la normalisation de l’activité totale du réseau. Les systèmes biologiques ont une
large adaptivité aux changements de leur environnement (ex. l’oeil peut s’adapter
aux variations de lumière).
• le rehaussement de contraste entre les formes du système. Trouver les moindres
différences entre les formes est important pour la survie.
• la mémorisation à court terme de la forme dont le contraste a été rehaussé. Avant
le traitement de l’entrée, elle doit être mémorisée dans une mémoire à court terme
(STM).
En même temps, le modèle ART est fait pour harmoniser le dilemme entre l’adaptation
(plasticité synaptique) et la stabilité (rigidité synaptique) de l’apprentissage. Dans un
système trop plastique, les informations sont apprises même si elles ne sont pas pertinentes,
ou les informations apprises sont oubliées. Par contre, dans un système trop rigide, les
- 62 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
informations pertinentes ne sont pas apprises. Dans le modèle ART, l’introduction d’un
terme de vigilance permet de gérer de manière autonome le passage d’un mode “plastique”
à un mode “rigide”.
Le réseaux ART comporte deux couches, F1 et F2 (voir figure 3-14), qui sont connectées
avec des liaisons qui forment une mémoire à long terme (LTM).
Représentation de catégories
F2
couche de classification
LTM
LTM
Répresentation de caratéristiques
couche de comparaison
F1
forme d’entrée
Figure 3-14. Représentation schématique de principe du modèle ART.
Suivant une analyse ascendante du problème de reconnaissance, du niveau d’entrée
vers le niveau le plus abstrait (classification), la couche F1 reçoit la forme d’entrée. Elle
agit comme une mémoire à court terme. Par ailleurs, elle réalise une caractérisation de la
forme par le biais d’une normalisation de l’activité par rapport à l’activité totale. Ensuite,
à travers les liaisons de F1 vers F2, la forme d’entrée est codée dans une des catégories
représentées par la couche F2. La couche F2 est un réseau compétitif (WTA généralement)
qui réalise la classification de l’entrée et qui propose une classe pour la forme d’entrée.
Si la différence entre le prototype de la classe proposée et la forme d’entrée est trop
importante par rapport à un terme appelé vigilance, alors la forme est apprise.
Afin de mieux comprendre le fonctionnement interne d’un réseau ART, nous présentons
le modèle simplifié ART1 qui comporte deux couches des neurones binaires, dont les sorties
sont 0 ou 1 (figure 3-15). Chaque neurone de F1 est connecté à tous les neurones de F2
avec des liaisons wf dont la valeur est réelle. De même, chaque neurone de F2 est connecté
à F1 avec les liaisons wb dont les valeurs sont binaires.
En utilisant la notation simplifié de [121], (N le nombre de neurones dans F1, M le
nombre de neurones dans F2,1 < i ≤ N , 1 < j ≤ M et la vigilance ρ ∈ [0, 1]2 , L une
constante) l’algorithme est le suivant :
1. Initialiser les poids des connexions :
f
b
(0) =
(0) = 1 wij
wji
2
L
;
L−1+N
Les neurones de F1 sont identifiés par l’indice i et ceux de F2 par j.
- 63 -
Section 3.3
Modèles de réseaux de neurones
0
0
1
0
yM
v1
vM
F2
21
wb
wf
NM
xN
u1
1
uN
0
F1
1 I
0
Figure 3-15. Schéma du modèle ART1.
2. Présenter la forme d’entrée I et la propager vers F1. Calculer les activités U et les
sorties X pour F1 :
U =X=I
3. Propager les sorties de F1 vers F2 :
• Calculer les activités vj pour F2.
vj =
N
X
f
wij
· xi
i=1
• Calculer les sorties yj pour F2.
Soit J = arg (maxk (vk )) l’indice du neurone gagnant.
yj =
(
1 si j = J
0 sinon
4. Rétropropager les sorties de F2 vers F1.
• Calculer les entrées ti de F1 provenant de F2.
ti =
M
X
yj · wji = wJi
j=1
l’indice J est celui du neurone gagnant à l’étape précédente.
- 64 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
• Calculer les nouvelles activités et sorties pour F1.
U = X = I/\T
5. Déterminer le degré de correspondance.
xi
|X|
= Pi
|I|
i Ii
P
6. Comparer le degré de correspondance avec la vigilance ρ.
• Si |X|/|I| < ρ, inhiber le neurone J pour éviter qu’il gagne à nouveau et
retourner à l’étape 3 avec le même vecteur d’entrée.
• kXk/kIk > ρ, continuer
7. Mettre à jour les poids de connexions reliées au neurone gagnant vJ .
f
wiJ
=
(
L
L−1+|X|
0
si xi est actif
si xi est inactif
b
wJi
=
(
1 si xi est actif
0 si xi est inactif
8. Réactiver tous les neurones de F2 inhibés à l’étape 6 et répéter l’algorithme à partir
de l’étape 3 avec un nouveau vecteur d’entrée.
La figure 3-16 illustre le comportement du réseau.
Le modèle ART a été développé ultérieurement pour permettre la catégorisation de
formes analogiques, sous le nom de ART-2 [43]. Pour combler l’incapacité de l’ART
à préserver la topologie des entrées, le modèle ARTMAP utilise l’association de deux
modules ART reliés entre eux par l’intermédiaire d’un map field. Ces cartes permettent
de prédire les associations pouvant exister entre les catégories fabriquées par les deux
modules ART [45, 44].
3.3.3
Les cartes topologiques auto-adaptatives
Les études de neurophysiologie montrent que, dans de nombreuses zones du cortex, les
zones sensorielles sont organisées spatialement selon les stimuli d’entrée. Les exemples les
plus connus sont ceux du cortex auditif (la représentation de fréquences, de l’amplitude
du son [202, 203, 204, 111]), du cortex visuel (la représentation de l’orientation [102]) et
du cortex moteur (le mouvement oculaire). Ces observations ont déterminé la création
du modèle des cartes topologiques auto-adaptatives (Self Organizing Maps - SOM), un
réseau de neurones qui utilise un mécanisme d’apprentissage non-supervisé. L’algorithme
d’apprentissage a été introduit par T. Kohonen (voir [113] pour une revue) d’où le nom
de “carte de Kohonen” utilisé parfois.
Dans la plupart des cas, les SOM sont présentées comme une grille 2D de neurones
(voir figure 3-17). Les interactions latérales sont modélisées souvent par une fonction du
- 65 -
Section 3.3
Modèles de réseaux de neurones
Formes apprises sur les neurones
1
2
3
4
1
3
ρ = 0.5
RES
1
RES
RES
2
1
RES
3
1
2
RES
RES
1
5
6
7
8
9
ρ = 0.8
RES
RES
1
4
RES
RES
Temps (nombre de formes présentées)
2
RES
RES
RES
RES
1
RES
1
RES
1
2
RES
RES
1
RES
RES
RES
RES
2
RES
1
RES
1
RES
4
2
1
RES
RES
RES
2
1
6
5
3
2
4
RES
7
2
1
5
5
4
6
RES
1
RES
RES
RES
1
3
RES
RES
2
RES
2
RES
5
5
5
1
5
1
4
6
4
RES
2
RES
Figure 3-16. Un exemple de comportement du réseau ART. Les formes d’entrée sont des lettres. Les
formes binaires dans la colonne de gauche ont été présentées séquentiellement. Dans la partie droite, on
présente les formes apprises (les poids sur les liaisons W b ) ainsi que le gagnant (RES). La vigilance est
de 0.5 (à gauche) et de 0.8 (à droite).
type “chapeau mexicain” qui assure une excitation des neurones voisins et une inhibitions
des neurones plus lointains.
Chaque neurone de la carte se “spécialise” dans la représentation d’une entrée particulière. Les neurones qui sont les mieux “spécialisés” pour une entrée donnée s’activent
et la réponse est concentrée dans la zone où les neurones sont les plus activés. La grande
différence entre une SOM et d’autres réseaux de neurones réside dans le fait qu’après ap- 66 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
La fonction "chapeau mexicain"
1
yj
0.8
w ij
i
poids
0.6
0.4
0.2
Entrées
0
−0.2
Sorties
−0.4
−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
distance
Carte de Kohonen
Figure 3-17. (a) Schéma d’une carte de Kohonen. (b) La fonction gérant les interactions latérales entre
neurones.
prentissage, il y a la préservation de la topologie de l’espace d’entrée. Ainsi, deux entrées
“proches” activeront deux neurones “proches” (voisins) sur la carte. Dans le modèle
d’inspiration neurobiologique de SOM [113], chaque neurone fonctionne d’une manière
indépendante. Il n’y a pas de synchronisation entre les neurones de la même carte.
La carte de Kohonen présente deux types de fonctionnement : une étape
d’apprentissage et une étape d’utilisation. Pendant la phase d’apprentissage, l’ensemble
des formes à apprendre est présenté à l’entrée du réseau. Les poids sont mis à jour pour
mieux représenter les entrées. Après convergence, on passe à la deuxième phase. On
présente une forme particulière et c’est le neurone dont le vecteur de poids minimise la
distance avec le vecteur d’entrée qui gagne.
Pour une carte de Kohonen qui comporte N neurones avec M entrées, l’algorithme
d’apprentissage (non supervisé) est le suivant:
• Les poids sont initialisés aléatoirement.
• Tant que le réseau ne converge pas :
– Choisir un vecteur d’entrée I = [I1 , I2 , ..., IM ] dans l’ensemble des vecteurs
d’entrée à apprendre.
– Trouver le neurone gagnant (le neurone j dont le vecteur poids Wj =
[Wj1 , Wj2 , ..., WjM ] est le plus proche, selon une distance d, du vecteur
d’entrée).
j = Arg
min d (I, Wi )
i=1..N
– Modifier les poids du vecteur gagnant selon l’équation :
Wkj (t + 1) = Wkj (t) + η(t) · (Ij (t) − Wkj (t)),
- 67 -
η(t) ∈ [0, 1]
Section 3.3
Modèles de réseaux de neurones
• Fin tant que
Après un long temps de convergence, le réseau évolue de manière à représenter au mieux
la topologie de l’espace de départ. Il faut en fait noter que la notion de conservation de
la topologie est abusive puisqu’en général la taille du vecteur d’entrée est bien supérieure
à la dimension de la carte (souvent 2) et il est donc impossible de conserver parfaitement
la topologie. En fait, le terme de quantification vectorielle de l’espace d’entrée doit plutôt
être utilisé.
L’implémentation des réseaux de Kohonen n’est pas biologiquement plausible : le temps
de convergence est trop long pour expliquer notre capacité à apprendre une forme en un
seul essai. Le point le plus important est que, pour permettre la réduction du voisinage,
la valeur des liens latéraux doit changer. Ainsi un lien activateur peut devenir inhibiteur
! Un autre point est que la qualité de la convergence du réseau dépend grandement des
paramètres spécifiant la vitesse d’apprentissage et la taille du voisinage. Ces paramètres
sont fixés de manière subjective par le programmeur. Dans [114], Kohonen souligne que
la modification de ces paramètres pourrait provenir de transformations ontogénétiques du
cerveau.
Il faut aussi noter que les cartes de Kohonen ne peuvent pas être utilisées “en ligne”
puisque pour assurer la convergence, il faut pouvoir présenter plusieurs centaines de fois
l’ensemble des motifs. Or, dans le contexte d’un système autonome, on ne peut connaı̂tre
à l’avance l’ensemble des formes qui seront rencontrées. Par ailleurs, pour que la carte
apprenne correctement, il est nécessaire de présenter les formes de façon aléatoire (ce qui
est difficile à imaginer dans un contexte réel). On ne pourra donc pas utiliser les cartes
de Kohonen pour catégoriser des formes, mais elles peuvent servir de justification à nos
pré-traitements au niveau des images (apprentissage de la forme des filtres de bas niveau,
détecteurs de contours...) si on retient l’argumentation de Kohonen sur l’adaptation
ontogénétique.
3.3.4
La carte topologique probabiliste
(Probabilistic Topological Map - PTM)
PTM a été mis au point pour concilier à la fois les qualités du modèle ART de Carpenter
et Grossberg et des cartes topologiques de Kohonen. L’intérêt majeur du modèle ART
est de permettre l’apprentissage non-supervisé en-ligne, tandis que les cartes de Kohonen
autorisent une généralisation topologique a priori. Les représentations topologiques sont
d’un grand intérêt pour 2 raisons principales. D’une part, elles permettent de préserver,
au moins localement, la topologie de l’information en entrée. Deux stimuli proches activent des neurones voisins sur la carte. D’autre part, les cartes permettent d’induire
une représentation analogique de la reconnaissance d’un motif donné (comme en logique
floue).
Par ailleurs, par rapport à un WTA, les cartes topologiques permettent de réduire
le nombre de liens nécessaires pour apprendre un jeu d’associations Perception/Action
donné. Sans préservation de la topologie, toutes les associations possibles doivent en
- 68 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
effet être apprises (les formes topologiquement “proches” d’une forme donnée étant alors
considérées comme distinctes de cette forme). Un neurone n’ayant pas encore appris ne
peut fournir d’information et lui-même ne peut pas profiter de ce qui a été appris par
d’autres neurones (pas de généralisation a priori). A l’inverse, lorsque la topologie est
conservée, un neurone dans le voisinage d’un neurone gagnant répond avec une activité
fonction de la distance à ce gagnant (diffusion de l’activité du gagnant sur son voisinage).
Cela donne ainsi des capacités de généralisation intéressantes [206, 207, 68]. Toutefois,
cette capacité de généralisation peut devenir un handicap si elle devient abusive, c’està-dire si deux formes très distinctes font réagir le même neurone (à la limite, un seul
neurone peut se mettre à répondre quelque soit la forme présentée). Il faut donc que les
règles d’apprentissage utilisées pour associer ces informations avec d’autres cartes soient
capables de résoudre de tels problèmes.
Les caractéristiques principales de PTM sont données ci-dessous :
• Carte de neurones de taille donnée avec topologie donnée au départ.
• Les motifs d’entrée et les poids synaptiques prennent uniquement des valeurs binaires.
• Un motif “nouveau” est codé en un seul coup (apprentissage incrémental).
• Une fonction de sélectivité est utilisée pour permettre aux neurones qui ont appris
une forme d’avoir une réponse plus importante si on leur présente de nouveau la
même forme et beaucoup plus faible que les autres neurones si on leur présente une
forme différente.
• La topologie est préservée grâce à un mécanisme permettant de coder l’intersection
de 2 formes déjà apprises, sur un neurone situé entre les neurones codant chacune
de ces formes.
• Un terme de vigilance permet de moduler le degré de généralisation de la carte et
de décider du codage ou non d’un “nouveau” motif.
Figure 3-18. Exemple de codage des motifs T, L et I sur une carte PTM monodimensionelle. La courbe
représente la diffusion de l’activité du neurone gagnant “L” sur ses voisins. Par ailleurs, du fait des
modifications probabilistes des poids codant les motifs, le “I” se retrouve codé au milieu de “T” et de
“L” puisqu’il ressemble le mieux à leur intersection.
- 69 -
Section 3.3
Modèles de réseaux de neurones
La carte est composée d’un ensemble de neurones interconnectés, répartis sur une grille
mono ou bi-dimensionnelle. On appellera I le vecteur d’entrée binaire présenté à la carte.
Chaque neurone composant le vecteur d’entrée est connecté à l’ensemble des neurones de
la carte.
L’algorithme utilisé est présenté ci-dessous :
1. Présenter le vecteur d’entrée I à la carte.
2. Trouver le gagnant N ∗ , c’est-à-dire le neurone avec la plus grande activité. La
similarité entre I et le vecteur de poids est calculée tout d’abord et l’activité réelle
du neurone est obtenue après la fonction d’activation fk dont la sélectivité, variable,
est donnée par D̃k (t).
L’activité du neurone Nk , lors de la présentation du vecteur d’entrée binaire I, est
mesurée comme suit :
Act(Nk , I) = fk [sentree (Wk , I)] + bruit, où
Si D̃k < 1
alors
sentree (Wk , I) =
1
2
·
1
S
sentree (Wk , I) =
Vkω
ω=1
sinon
P
X
P
X
Vkω · Iω +
ω=1
P
X
ω=1
Vkω +
P
1 X
ω
W k · Iω
· Iω +
P − S ω=1
P
X
ω=1
P
X
!
ω
W k · Iω
ω
Wk
ω=1
où Wk est le vecteur de poids de Nk
et

ω
ω

 Wω k = 1 − Wk


I k = 1 − Ikω
Vkω = Wkω + (α − 1) · W̃kω
fk [x](t) = D̃k (t) · exp
− ν+ǫ
2σ
1−x
1−D̃k (t)+ǫ
2 W̃k est le vecteur dérivé de Wk dont les composantes W̃kω sont égales à 1 quand Wkω
a été renforcé plus d’une fois et 0 autrement. P est la dimension de l’espace d’entrée
et S est le nombre présumé de 1 dans le vecteur d’entrée (c’est une constante).
3. Diffuser l’activité du gagnant sur la carte selon la fonction de diffusion :
∗
Dk (t) = Dk (N
h k, N )
i
= exp −u · d2map (N ∗ , Nk )
4. Si Dk (t) > D̃k (t) et D̃k (t) < ν (vigilance), permettre l’apprentissage sur la carte :
- 70 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
• Si Aléa < Dk (t) alors mettre à jour les poids Wk de Nk :
◦ Wkω (t + 1) = I ω
◦ Si I ω = 1 et Wkω (t) = 1 alors W̃kω (t + 1) = 1
Sinon Wkω (t + 1) = Wkω (t)
• Modifier le paramètre de sélectivité de Nk :
D̃k (t + 1) = Dk (N ∗ , Nk )
Il est nécessaire de remarquer deux points importants de cet algorithme. Le premier
concerne la normalisation de la mesure de similarité. Elle permet de normaliser de manière
séparée la partie du vecteur d’entrée correspondant au “fond” et la partie correspondant
à la “forme”. Le deuxième point à noter est la manière dont est obtenue la topologie :
la probabilité de modification des poids des neurones dans le voisinage du gagnant est
proportionnelle à leur distance à ce dernier (pour une présentation plus en détail, voir
[206]).
Quand on présente un motif en entrée, le neurone de la carte le plus actif est choisi
comme gagnant. Du fait du mécanisme de diffusion, les neurones dans le voisinage du
gagnant sont activés eux aussi, ce qui forme une “bulle d’activité”. Ce mécanisme est
couplé à une procédure d’apprentissage qui adapte plus ou moins les liens synaptiques
d’un neurone au motif d’entrée en fonction de sa distance au gagnant. Comme les liens ne
prennent que des valeurs binaires, les poids des neurones voisins du gagnant sont modifiés
de manière à coder le motif d’entrée avec une probabilité dépendant de la distance au
gagnant. Ainsi, quand un gagnant a appris un motif donné, c’est l’un de ses voisins qui a
le plus de chance de répondre si on présente un motif semblable mais légèrement différent
du motif appris. Si le motif est totalement différent, il est codé plus loin sur la carte avec
une distance maximale correspondant à la taille de la bulle d’activité. Si 2 motifs différents
ont été appris sur la carte, leur intersection sera codée entre les neurones correspondants.
En effet, notre mécanisme probabiliste donne plus d’importance aux poids synaptiques
qui sont liés à l’intersection des 2 formes qu’aux autres poids.
3.3.5
L’architecture PerAc
L’architecture PerAc (Perception-Action) a été proposée comme un exemple de brique
élémentaire pour le calcul neuronal. Elle permet l’apprentissage en ligne d’associations
sensori-motrices [2, 37, 96]. Un bloc PerAc est un réseau compétitif composé de 4 groupes
de neurones (voir figure 3-19). Il est divisé en deux niveaux correspondants aux flots
d’action et de perception. Le premier niveau est un mécanisme réflexe utilisant les informations très simples provenant des entrées sensorielles pour contrôler de manière frustre
mais rapide les propositions d’actions. Ces propositions sont codées dans un groupe de
neurones d’entrée qui est directement connecté par des liens non modifiables du type “1
vers 1” au groupe de sélection de l’action. Le second niveau doit, en revanche, reconnaı̂tre
des situations précises et les associer ou non avec l’action proposée par le système réflexe.
- 71 -
Section 3.3
Modèles de réseaux de neurones
Dans la plupart des cas, ce niveau correspond à l’apprentissage de conditionnements classiques : le système apprend à maintenir le comportement initié par le système réflexe.
Dans d’autres cas, la présence d’un signal de renforcement négatif permet, par exemple,
d’apprendre à inhiber l’action proposée par le système réflexe afin que d’autres comportements puissent s’exprimer et se voir renforcés s’ils sont associés à la disparition du
renforcement négatif.
Situations perçues
Entrée sensorielle
Reconnaissance
Signal de
renforcement
Action réflexe
Sélection des actions
Environnement
Mouvement
Lien de 1 à tous modifiables
Lien de 1 à 1 "réflexes"
Figure 3-19. Représentation schématique d’un bloc PerAc. A partir de la situation perçue, le mécanisme
réflexe extrait des informations pour contrôler directement les actions. En même temps, le système
apprend les situations sensorielles jugées “nouvelles” et les associe à une action grâce à un mécanisme
combinant apprentissage associatif et apprentissage par renforcement. Le système peut ainsi s’adapter
dynamiquement à son environnement.
Nous disposons donc maintenant à la fois de briques de bases architecturale et de règles
d’apprentissage pour construire des RNs capable de contrôler des robots autonomes. Reste
donc à s’intéresser à des mécanismes permettant à nos robots d’avoir un comportement dynamique stable. Nous verrons dans la section suivante que la résolution de cette contrainte
peut déboucher sur des architectures très économes en terme de dispositifs neuronaux par
rapport à la complexité de la tache à résoudre.
- 72 -
Chapitre 3
3.4
Réseaux de neurones et les systèmes dynamiques
Les systèmes dynamiques
Dans ce paragraphe, nous donnons un aperçu des systèmes dynamiques qui seront employés dans nos architectures. Dans un premier temps, nous présentons les systèmes
dynamiques en général ainsi que leurs propriétés mathématiques. Puis nous présentons
un cas particulier de système dynamique : le champ neuronal. Nous insistons sur leurs
propriétés et nous énonçons quelques théorèmes. Ensuite, nous présentons les applications des champs neuronaux à la robotique mobile. Nous décrivons une modélisation du
mécanisme de suivi utilisant des champs neuronaux. Enfin, nous présentons les résultats
obtenus et les comportements dynamiques observés.
3.4.1
Introduction aux systèmes dynamiques
La théorie des systèmes dynamiques est très utilisée pour la description de phénomènes
réels (physiques, mécaniques, chimiques, biologiques, ...) ayant un comportement fortement non linéaire. En chimie, par exemple, nous trouvons “l’instabilité de Turing” des
formes spatiales issues du phénomène de réaction et diffusion de la iodine; en physique,
nous trouvons un bel exemple dans l’étude de la transition de phases. Les systèmes dynamiques sont étudiés aussi en mathématiques (les fractales, la théorie du chaos). Les
concepts et les appareils mathématiques issus de l’étude des systèmes dynamiques sont
utilisés dans beaucoup d’autres domaines : l’étude des systèmes auto-organisés (voir [109]
pour une revue), l’automatique, l’astronomie, ... Dans cette section, nous nous sommes
seulement intéressés à l’utilisation de la théorie des systèmes dynamiques pour des applications de robotique (perception et commande motrice).
Un système dynamique est exprimé au moyen d’une équation différentielle, qui
représente la vitesse de variation d’une variable en fonction du temps :
ẋ = f (x, t)
(7)
où f est une fonction de x et de t. La fonction f doit être dérivable par rapport à x et
à t. La variable x est, parfois, appelée variable d’état du fait qu’elle représente l’état du
système à un instant donné.
Pour un système dynamique, un état stable est déterminé par un point fixe. Le point
fixe d’une fonction est un des points où le gradient de la fonction devient nul :
f (x, t) =0
xf est un point fixe si et seulement si
dt x=xf
(8)
Étant donné le fait qu’un point fixe génère toujours un attracteur, nous nous sommes
intéressés aux systèmes dynamiques qui convergent vers des points fixes (on exclut les
systèmes dynamiques avec une solution chaotique et les cycles limites). La classe des
systèmes dynamiques qui remplit cette condition est composée des systèmes dynamiques
avec des attracteurs dont la position n’évolue pas au cours du temps et par les systèmes
dont la position des attracteurs est dépendante du temps.
- 73 -
Section 3.4
3.4.1.1
Les systèmes dynamiques
Les attracteurs stables (leur position n’évolue pas au cours du temps)
Prenons comme exemple le système dynamique exprimé par l’équation :
ẋ =
xf − x
τ
(9)
avec x 7→ x(t) une variable réelle.
Cet exemple de système dynamique est mathématiquement simple, mais il a été choisi
pour sa valeur pédagogique. Une description plus complète est présenté dans [178].
L’équation
t
x (t) = xf + (x(0) − xf ) · e− τ
(10)
donne la solution du système dynamique. Elle montre qu’une perturbation initiale de ce
point fixe (ex. par le bruit du système) décroı̂t selon la constante de temps τ . Ainsi, la
x(0)−xf
perturbation initiale, x(0), atteint la valeur x1 = x(τ ) = xf +
après le temps τ
e
(voir figure 3-20).
Le système dynamique
La solution du système dynamique
2
1
0.5
1
0
0
x(t)
dx/dt
−0.5
−1
−1
x1−1.5
−2
−2
−3
−2.5
−4
−10
−3
−8
−6
−4
x
−2
f
0
2
4
6
8
10
0
5
τ
x
10
15
20
25
t
Figure 3-20. (a) Le graphique du système dynamique pour τ = 4 et xf = −3 et (b) sa solution pour
x(0) = 1 (à droite).
Un autre paramètre qui caractérise un système dynamique est la pente τ de la fonction
f (équation (7)) calculée au point correspondant au point fixe. L’équation

−1
δf (x, t) 
τ = −
δx x=xf
(11)
définit la stabilité d’un système dynamique. Une pente positive (τ négatif) détermine un
point fixe instable (un repousseur) du système dynamique. Par contre, une pente négative
(τ positif) détermine un point fixe stable (un attracteur) du système dynamique. Si τ = 0
alors nous considérons que le système est dans un état quasi-stable.
- 74 -
Chapitre 3
3.4.1.2
Réseaux de neurones et les systèmes dynamiques
Les attracteurs mobiles (leur position évolue au cours du temps)
Si dans l’exemple présenté ci-dessus, la position de l’attracteur est stable dans le temps,
nous pouvons supposer que la position de l’attracteur peut se déplacer. La condition
nécessaire pour assurer la stabilité du système impose que la vitesse de déplacement de
l’attracteur soit suffisamment petite pour permettre au système de revenir dans le point
fixe avant que sa position soit, à nouveau, modifiée. Si nous prenons le même exemple
mais en introduisant une vitesse v de déplacement pour le point fixe xf , nous obtenons le
système dynamique :
v·t−x
ẋ =
(12)
τ
L’équation
t
(13)
x (t) = v · (t − τ ) + (x(0) − v · τ ) · e− τ
nous donne la solution du système dynamique.
7
7
6
6
5
5
x(t) et xf(t)
8
x(t) et xf(t)
8
4
4
3
3
2
2
1
1
0
5
10
15
20
25
30
35
40
45
50
0
0
t
5
10
15
20
25
30
35
40
45
50
t
Figure 3-21. Le graphique du système dynamique pour τ = 4 et xf = −3 et v = 0.5 (a) ou v = 1.5 (b).
Après une perturbation initiale x(0) = 1, le système se déplace dans un voisinage du
point fixe et après il se déplace avec la même vitesse que celui-ci. Dans les deux cas, la
distance entre le point fixe et l’état du système est d = v · τ , de 2 dans le premier cas et
de 6 dans le deuxième. Dans ce cas, la constante τ peut être interprétée comme étant le
retard entre la position du point fixe et l’état du système dynamique. Dans le cas d’un
système dynamique non linéaire, le retard n’est plus constant [179] et nous avons deux
possibilités : le système peut converger vers le point fixe et se déplacer avec lui ou il ne
converge pas vers le point fixe.
3.4.2
Les champs neuronaux
Les systèmes dynamiques ont été intensivement utilisés pour modéliser le comportement de certains neurones de différentes régions corticales [4, 110]. La caractéristique
de chaque modèle de neurone réside dans la réalisation d’un moyennage spatio-temporel
de l’activité neuronale dont le résultat est une description macroscopique de la distribution
spatio-temporelle de celle-ci [5, 77]. Par abus de langage, les systèmes dynamiques qui
- 75 -
Section 3.4
Les systèmes dynamiques
modélisent des neurones regroupés dans des zones corticales ayant la même fonctionnalité,
sont nommés champs neuronaux.
Parmi les modèles proposés pour décrire l’activation de champs neuronaux, nous avons
utilisé le modèle proposé par S. Amari [4] dans les années ’70. Ce modèle a l’avantage
d’être de complexité moyenne et de permettre, en même temps, une analyse mathématique
de ses propriétés. La dynamique de la fonction d’activation neuronale, u (φ, t), est exprimée par l’équation différentielle :
τ·
Z
δu(φ, t)
= −u(φ, t) + h + s (φ, t) + w(φ − θ) · f (u(θ, t)) dθ
δt
∆
(14)
Le temps de relaxation du système est déterminé par la constante temporelle τ . Les entrées
spatio-temporelles du système sont modélisées par la fonction s. Sans entrées actives, le
niveau d’activation est maintenu à un niveau constant par la constante h. Chaque point
du champ neuronal ajoute une activité à ses voisins via une fonction non-linéaire, f , avec
les poids modélisés par le noyau de convolution w. Sans la fonction f , l’équation (14)
représente l’équation d’un filtre linéaire. La non-linéarité de cette fonction détermine la
dynamique du champ neuronal.
mécanisme de suivi. L’implantation neuronale (voir figure 3-22) du modèle d’Amari
s’inspire des données neurobiologiques du cerveau.
φ0
φ
f()
f()
Ι
Ι
0
1
1
φΝ−2
f()
ΙΝ−2
φ
φΝ−1
f()
Ν
f()
ΙΝ−1
ΙΝ
φ Ν+1
f()
Ι Ν+1
φ
Ν+2
f()
ΙΝ+2
φP-1
φ
P
f()
f()
Ι
ΙP
P-1
x
∆
2Π
Figure 3-22. Implantation du modèle d’Amari pour une représentation neuronale. La carte neuronale
est torique, à cause de la périodicité trigonométrique de la représentation des angles. Avec In , l’entrée,
Φn la sortie et f () la fonction de transfert du neurone n.
Dans le cerveau, les neurones sont fortement interconnectés avec leursR voisins. Ces
interactions latérales sont intégrées dans l’équation (14) par le terme ∆ w(φ − θ) ·
f (u(θ, t)) dθ. Chaque neurone du champ neuronal renvoie son activité vers ses voisins
(situés dans le voisinage ∆). Cette activité est pondérée par le poids w (x). Si nous considérons que chaque neurone excite ses plus proches voisins et qu’il inhibe les plus éloignés
(préservation de l’organisation topologique) alors on peut utiliser comme noyau de convolution, w, une fonction de type “chapeau mexicain” (voir figure 3-23). Par ailleurs, les
données biologiques [34] nous disent que chaque orientation est représentée par un groupe
de neurones. Ce qui fait que chaque point du champ neuronal est considéré comme étant
- 76 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
un neurone dont la fonction de transfert est f (φ, t). Les stimuli provenant de la sortie de
détecteurs de mouvement, sont intégrés dans le modèle par les entrées s (φ, t).
3.4.2.1
Les propriétés mathématiques du modèle d’Amari
Nous présentons ici un aperçu des principales propriétés du modèle unidimensionnel
d’Amari. Le comportement du modèle pour des entrées nulles (ou constantes) s(φ, t) = s0
peut être caractérisé par 3 classes de solutions basées sur les régions activées où u(φ, t) > 0.
• la solution − φ qui définit la solution pour laquelle aucune région n’est active, c’està-dire u (φ, t) = 0 pour tous les φ.
• la solution − a qui définit la solution pour laquelle seulement une région bien
délimitée est active, c’est-à-dire u (φ, t) > 0 pour φ ∈ ] a1 , a2 [.
• la solution − ∞ qui définit la solution pour laquelle chaque point peut être activé,
c’est-à-dire u (φ, t) ≥ 0 pour φ ∈ ] − ∞, +∞ [ .
Dans tous les cas, nous considérons que le noyau d’interactions latérales est symétrique,
c’est-à-dire w(φ) = w(−φ) pour ∀φ ∈ IR. Dans les cas étudiés, la fonction w est celle
d’un chapeau mexicain (voir figure 3-23 (a)). Nous considérons le cas particulier pour
lequel la fonction non linéaire f est la fonction échelon.
On introduit la fonction
Z x
W (x) =
w(y)dy
(15)
0
et on utilise deux valeurs (voir figure 3-23 (b)) :
Wm = maxx>0 W (x)
W∞ = limx→∞ W (x)
(16)
La fonction W(x)
Le noyau de convolution
250
1
Wm
0.8
200
0.6
150
w(φ)
W(x)
0.4
0.2
100
0
W∞50
−0.2
−0.4
−2
−1.5
−1
−0.5
0
φ
0.5
1
1.5
2
0
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
x
Figure 3-23. (a) Le chapeau mexicain utilisé pour simuler les connexions entre les neurones. (b) La
fonction W (x) et les valeurs Wm et W∞ .
Pour toutes ces conditions, nous avons les théorèmes suivants :
- 77 -
Section 3.4
Les systèmes dynamiques
Théorème 1 (l’existence des solutions)
• Une solution − φ existe si et seulement si h + s0 ≤ 0.
• Une solution − ∞ existe si et seulement si 2 · W∞ > −h − s0 .
• Une solution − a existe si et seulement si h + s0 < 0 et a > 0 satisfont la condition
W (a) + h + s0 = 0.
La démonstration est présentée en [4], en considérant les entrées constantes et non pas
nulles. De même, sont présentées toutes les solutions en fonction de la fonction W (x).
Théorème 2 (la stabilité des solutions)
• Les solutions − φ et les solutions − ∞ sont toujours asymptotiquement stables.
• Les solutions − a sont asymptotiquement stables pour W (a) < 0, Wm > −h − s0 >
W∞ > 0 où Wm > −h − s0 > 0 > W∞ et instables pour W (a) > 0.
La démonstration est présentée dans [4, 77]. Comme solution − a implique toujours
l’existence d’une solution − φ stable, alors nous avons un champ neuronal bistable.
Si le signal d’entrée s (φ, t) n’est pas constant, alors le comportement du champ neuronal dépend de l’intégrale de l’équation (14) et de l’amplitude du signal d’entrée. Si
l’amplitude du signal d’entrée est grande, alors l’intégrale peut être ignorée et le système
devient un système linéaire avec une solution stable u0 (φ) = s(φ) − h. Si l’amplitude
du signal d’entrée peut être décomposée en une partie constante s0 et une partie variable s∼ (φ) dont l’amplitude est petite, alors s’il existe une solution − a. Dans ce cas,
la déformation et le déplacement de l’activité du champ neuronal sont donnés par le
théorème suivant :
Théorème 3 (comportement du système dans le cas d’entrées variables)
L’état initial du système est une solution − a, u0 (φ), générée par une entrée constante
s(φ) = s0 . Soit m(t) le milieu de la région excitée (m(t) − a(t)/2, m(t) + a(t)/2) de
largeur a(t). Pour l’état u0 (φ) nous avons m0 et a0 . Supposons que le signal d’entrée
puisse être décomposé en s(φ) = s0 + ǫ · s∼ (φ), avec ǫ suffisamment petit et s∼ (φ)
différentiable. La dynamique du point m est donnée par l’équation :
dm
1
=
(s(m + a0 /2) − s(m − a0 /2)) + O(ǫ2 )
dt
2τ c
La largeur de la zone excitée est donnée par
a(t) = a0 + ǫ · a1 (t) + O(ǫ2 )
(17)
(18)
avec a1 (t) qui satisfait l’équation
1
da1
=
(2w(a0 )a1 + s∼ (m − a0 /2) + s∼ (m + a0 /2)) + O(ǫ)
(19)
dt
τc
La constante c est donnée par le gradient de la distribution initiale, u0 , à la limite de
l’intervalle : c = u0 ′(m0 − a0 /2) = u0 ′(m0 + a0 /2).
- 78 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
La démonstration est présentée en [4, 77]. L’article proposé par Kishimoto [110]
présente une généralisation de ce théorème. Si le signal d’entrée n’est pas constant,
alors la région active se déplace. De même, la taille de la région active change en fonction
des entrées. Par ailleurs, plus l’amplitude des entrées est grande, plus le système devient
stationnaire.
3.4.2.2
Importance des champs neuronaux
Les champs neuronaux ont une importance pratique qui réside dans l’intégration de la
représentation neuronale de l’information et des propriétés des systèmes dynamiques. Ils
supposent qu’il existe une distribution spatiale de l’activation (neuronale) qui représente
l’information. Prenons l’exemple de la perception de la direction du mouvement. La
représentation neuronale associe la présence de la perception avec l’existence d’une zone
active et l’absence de perception avec l’absence d’activation. La perception du mouvement
est représentée par la fonction d’activation u(φ, t), qui est l’équation d’un champ neuronal,
et l’information est spatialement représentée par l’angle φ. La valeur de la fonction u(φ, t)
indique si le mouvement est perçu ou non à l’angle φ. Si u(φ, t) > 0 alors on perçoit du
mouvement dans cette direction et si u(φ, t) ≤ 0 alors le mouvement n’est pas perçu.
Pour représenter la perception d’un mouvement (selon la représentation neuronale), il
faut que la fonction d’activation présente une zone active à une position spatiale précise.
La présence d’une zone active (selon l’équation du champ neuronal) suppose l’existence
d’une solution − a du champ neuronal. Pour représenter l’absence de la perception du
mouvement (et donc l’absence d’activation) il faut que le système soit dans une solution−
φ.
Le théorème 1 démontre que la transition entre une solution−φ (perception absente) et
une solution − a (perception présente) peut être déterminée par une variation des entrées
s. Ceci montre que la perception de la présence du mouvement peut être intégrée dans
le modèle par une augmentation du signal d’entrée s qui détermine un changement de
l’état du système (passage d’un état donné par une solution − φ3 à un état donné par une
solution − a4 ). Le théorème 2 nous assure la stabilité des solutions d’un champ neuronal.
Le théorème 3 nous décrit le comportement du système dans le cas d’une variation du
signal d’entrée. L’état du système qui correspond à une solution − ∞ (possibilité de
percevoir le mouvement dans toutes les directions) peut être évité par un contrôle de la
fonction W (x) (qui modélise les interactions latérales entre les neurones).
3.4.3
Applications robotiques des champs neuronaux
Par l’introduction de l’approche dynamique dans l’étude du comportement [168, 169], G.
Schöner et ses collaborateurs ont ouvert la voie de l’utilisation des champs dynamiques
pour des applications de robotique mobile. L’idée principale est de caractériser et
3
4
L’inexistence de la perception dans l’absence des entrées.
Les entrées déterminent une perception.
- 79 -
Section 3.4
Les systèmes dynamiques
modéliser un comportement par une variable dite “comportementale”. Un “comportement” (ex : photo-taxis) est généré par l’évolution temporelle de cette variable. Le
champ dynamique est utilisé pour la représentation de cette variable. En même temps,
grâce à l’introduction du mécanisme “d’extraction de la réponse” (read-out), les champs
dynamiques sont utilisés pour la commande de l’état du robot. En utilisant cette approche, des “comportements” de photo-taxis avec évitement d’obstacles [28, 29] ont été
étudiés dans des simulations et implantés sur des robots. Les robots utilisent comme
stimuli l’information d’une photo-diode et celle de capteurs de proximité. L’équation du
champ dynamique permettant de déterminer à chaque instant la vitesse de rotation du
robot est exprimée par l’équation (20) :
ω̇ = α · cobs · Fobs + α · ω − γ · ω 3
(20)
avec ω la vitesse de rotation du robot, Fobs l’influence des obstacles, et les constantes
cobs - la dimension de la zone de transition entre deux états, α - une constante qui dépend
des dimensions du robot et γ - paramètre de contrôle de la transition entre deux états.
Dans des simulations, les auteurs [29] ont modélisé le déplacement du robot avec deux
champs dynamiques, un pour chaque dimension (x, y), en obtenant de bons résultats. Les
expériences sur robots réels ont confirmé ces propriétés et montré la robustesse de cette
technique aux variations de caractéristiques d’un environnement à l’autre (contrairement
aux problèmes de réglage que l’on rencontre souvent avec les systèmes plus simples utilisant uniquement des liens vers l’avant pour connecter les entrées aux sorties motrices).
Les champs dynamiques ont aussi été utilisés comme outils de décision dans des applications de robotique mobile [141]. Dans une application de “homing” avec évitement
d’obstacles, les champs dynamiques unidimensionnels ont été utilisés pour représenter
et calculer la vitesse et la position du robot. A la place des capteurs infrarouges et de
la photo-diode, le flot optique a été utilisé pour estimer le temps jusqu’au contact afin
d’extraire la position du robot par rapport à sa base et les obstacles. Les résultats ont été
obtenus sur une plate-forme MARVIN. Les auteurs ont utilisé 3 champs dynamiques pour
contrôler la vitesse de déplacement selon l’abscisse, l’ordonnée et la vitesse de rotation :
2
(x′−x)
1 Z∞
−
(x′ − x)e c2x · (sx,visual (x′, t) + sx,motion (x′, t)) dx′
τx ∞
(y′−y)2
−
1 Z∞
2
(y′ − y)e cy · (sy,visual (y′, t) + sy,motion (y′, t)) dy′
ẏ =
τy ∞
ẋ =
(φ′−φ)2
−
1 Z∞
c2
φ
(φ′ − φ)e
· (sφ,visual (φ′, t) + sx,motion (φ′, t)) dφ′
φ̇ =
τφ ∞
avec τ. , c. des constantes, s.,visual est calculée en fonction de la correspondance entre
l’image à l’instant t et l’image mémorisée de la base, s.,motion est calculée en fonction de
l’intégration temporelle des ordres moteurs. Les résultats obtenus ont montré la possibilité
d’utiliser plusieurs champs dynamiques en même temps mais les imprécisions dues au
calcul du flot optique ont détérioré la précision.
- 80 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
Dans [179, 178] est présenté un mode de navigation basé exclusivement sur les champs
dynamiques. La vision est utilisée pour la création d’une carte cognitive et pour
l’estimation de la position du robot dans l’environnement. Plusieurs comportements sont
générés : l’interception d’une cible, l’évitement d’obstacles, des mouvements d’exploration
(aléatoires, en spirale), retour à la base, recalibration. Dans le cas d’un comportement
d’interception d’une cible avec évitement d’obstacles, l’équation utilisée est :
φ̇h = λtar ftar + λobs fobs
(21)
avec
φtar
fobs =
X
ftar = sin (φtar − φh )
Ytar − Yint
= arctan
Xtar − Xint
−
λi sin (φi − φh ) · e
1−cos(φi −φh )
σi
i
avec (Xtar , Ytar ) la position de la cible par rapport à l’origine de la carte du robot,
(Xint , Yint ) l’estimation de la position du robot, λtar et λobs des constantes. La dynamique
des mouvements d’exploration est décrite par :
ṡ =
1
τs,1
1 − n2
−
·s
τs,2
avec τs,1 , τs,2 et n constantes. Chaque comportement est activé ou désactivé par
un mécanisme dynamique compétitif. Les résultats des simulations montrent que
l’architecture peut produire plusieurs séquences (combinaisons des comportements cités)
différentes.
Les champs neuronaux ont été aussi utilisés dans la modélisation de la perception du
mouvement [78, 77]. Le modèle utilisé est dérivé du modèle d’Amari [4] auquel s’ajoute
un terme d’adaptation.
τ u̇(z, t) = −u(z, t) +
Z
ω
w (z, z ′ ) Θ (u(z ′ , t)) dz ′ + s(z, t) − a(z, t) − h + ǫ(z, t)
τad ȧ(z, t) = −a(z, t) + g (z, t)
(22)
(23)
avec u-activité neuronale, a-niveau d’adaptation, s-signal d’entrée (l’énergie du mouvement), τ et τad -constantes, w-fonction d’interaction latérale, Θ-fonction d’activation de
chaque neurone, h-constante, ǫ-bruit stochastique et g-fonction monotone de couplage
entre les deux dynamiques. A travers les simulations, il a été montré que le modèle
proposé peut réaliser des fonctionnalités diverses liées à la perception du mouvement.
- 81 -
Section 3.4
Les systèmes dynamiques
Une évaluation de ce modèle décrit par les équations (22)-(23) a été faite à travers des
comparaisons quantitatives avec des données psychophysiques sur la perception du mouvement apparent (le “motion quartet”). L’évaluation met en évidence l’existence d’un
phénomène d’hystérésis de la perception dans le modèle de champ neuronal. Malgré les
résultats obtenus, l’auteur ne croit pas dans la possibilité d’utiliser des champs neuronaux
pour des applications en temps-réel qui nécessitent un “hardware” spécialisé (implantation
matérielle des calculs analogiques [188, 187]).
3.4.3.1
L’intégration d’un champ neuronal dans une application de suivi
Nous avons utilisé les champs neuronaux pour la représentation interne de la perception
du mouvement et pour la commande motrice directe de notre robot. Dans un premier
temps, nous avons implanté le modèle de champ neuronal unidimensionnel et testé ses
propriétés dans une application de suivi (voir section 6.1.1). Dans un deuxième temps,
nous avons utilisé les champs neuronaux pour l’intégration des informations multimodales.
Dans l’implantation d’un champ neuronal, la première étape réside dans le choix des
variables qui vont être représentées. Puisque l’utilisation des champs neuronaux avec
plusieurs dimensions nécessite des calculs qui ne peuvent pas être réalisés en temps-réel et
qu’il n’est aujourd’hui pas possible de prévoir le comportement de ces champs (stabilité,
convergence, types de solutions), nous avons été contraints d’utiliser un champ neuronal
unidimensionnel. Pour qu’un mécanisme de suivi puisse fonctionner, il faut connaı̂tre la
position de la cible. La variable “comportementale” sur laquelle portera la dynamique
du champ neuronal est l’orientation de la cible par rapport au robot. Dans le but de
mieux formaliser notre choix, nous considérons que nous fixons arbitrairement un repère
orthogonal et, dans ce repère, que nous représentons l’orientation du poursuivant et de la
cible (voir figure 3-24).
φ0
Robot
tête
110011111111111111
00000000000000
00000000000000
11111111111111
00000000000000
11111111111111
ω
cible
φ
rob
φ
cib
Figure 3-24. Représentation de la cible par son orientation. Le suivi consiste en une réduction de la
différence d’orientation entre la cible et le poursuivant.
- 82 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
La position du robot dans ce repère est définie par son azimut, φrob (voir figure 3-24).
La position de la cible est, elle aussi, représentée par son azimut, φcib . Pour suivre sa
cible, le robot doit calculer une vitesse de rotation, ω, qui lui permettra de réduire la
différence entre son azimut et celui de la cible. De plus, une vitesse de déplacement v, lui
permettra de se rapprocher de sa cible. Dans notre exemple, nous considérons la vitesse
d’avancement v constante.
Nous avons employé un champ neuronal d’Amari dont l’équation est donnée par
l’équation (24). Le modèle d’Amari a été choisi pour la possibilité de l’implanter sous
forme neuronale (voir figure 3-22).
Z
δu(φ, t)
τ·
= −u(φ, t) + h + s (φ, t) + w(φ − θ) · f (u(θ, t)) dθ
δt
∆
(24)
avec φ l’orientation de la cible, u(φ, t) représente la confiance dans le fait que la cible
se trouve à l’orientation φ, s (φ, t) les entrées, f () la fonction d’activation du neurone et
w() la fonction qui modélise les interactions latérales.
a)
b)
I
c)
-35
-5
0
+35
Figure 3-25. a) Image prise par robot. b) Image du mouvement. c) Intensité du mouvement projetée
sur l’axe des X.
La fonction d’activation des neurones f est une fonction linéaire à seuil. La fonction
qui modélise les interactions latérales w est un “chapeau mexicain” (voir 3-23 (a)).
Puisque la taille du champ neuronal est fixe, l’espace des orientations possibles est, lui
aussi, fixe. Nous utilisons donc un échantillonnage de l’espace des orientations où chaque
neurone représente une orientation donnée. Le calcul de l’activité du champ neuronal est
fait dans l’espace continu, mais les valeurs sont prises dans l’espace discret. Dans [77] il
est démontré que, dans ce cas, les propriétés des champs neuronaux restent les mêmes.
Le calcul discret de l’équation (24) a été fait en utilisant la méthode Runge-Kutta d’ordre
- 83 -
Section 3.4
Les systèmes dynamiques
4 (ce qui nous a permis de d’avoir des résultats bien plus précis, pour le même nombre
d’itérations, que ceux obtenus par la méthode d’Euler (utilisé par [28, 77])).
Les entrées s (φ, t) représentent la sortie des détecteurs de mouvement. Depuis une
image de mouvement (voir figure 3-25 (b)) nous obtenons l’amplitude du mouvement en
fonction de sa position dans le champ visuel du robot (voir figure 3-25 (c)). Les entrées
ont une forme proche de celle d’une gaussienne, ce qui constitue une des conditions de
l’utilisation du mécanisme d’extraction de la réponse que nous utilisons pour obtenir la
commande des moteurs du robot (voir [169]).
u() (activité du champ neuronal)
a)
φ0
φrob
φtar
φ
φrob
φtar
φ
du / dφ
ω
φ0
b)
Figure 3-26. a) L’activité du champ neuronal et b) la dérivée spatiale de l’activité du champ neuronal.
Les entrées visuelles vont créer, sur le champ neuronal, un attracteur centré sur la
position de la cible, φcib (voir figure 3-26-a). Pour calculer la vitesse de rotation nous
employons la dérivée spatiale de l’activité du champ neuronal. La vitesse de rotation est
donnée par la valeur de la dérivée en φrob (l’orientation du robot - figure 3-26-b).
avec k une constante.
du ω=k·
dφ φ=φrob
- 84 -
(25)
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
Dans notre exemple (voir figure 3-26), la dérivée étant positive, le robot tourne dans
le sens anti-trigonométrique ce qui réduit la différence d’angle entre lui et la cible. Les
propriétés du champ neuronal (voir section 3.4.2.1) nous assurent la formation d’un attracteur et la stabilité de la solution. L’existence d’un attracteur rend possible l’utilisation
du mécanisme d’extraction de réponse et donc l’existence d’un ordre moteur cohérent.
Notre robot dispose de 2 degrés de liberté : il peut tourner sur lui même et il peut
tourner sa tête (voir l’annexe A). La modélisation du mécanisme de suivi (voir section
6.1.1) nous impose d’avoir deux dynamiques : la tête doit suivre plus rapidement les
mouvements de la cible que le corps. Dans le cas de notre robot, ce sont les contraintes
d’inertie du corps et de la tête du robot qui sont utilisées pour imposer des dynamiques
différentes. Nous utilisons 2 mécanismes d’extraction de la réponse, avec de constantes
différentes. La cohérence de l’architecture est assurée : il n’a qu’une seule représentation
de la perception de la cible et deux mécanismes indépendants, mais similaires, pour les
commandes motrices (le corps et la tête).
3.4.3.2
Résultats expérimentaux
Nous présentons quelques résultats expérimentaux. Nous allons voir que plusieurs comportements sont possibles en fonction des entrées sensorielles et de l’activité du champ
neuronal (propriétés émergentes liées à la dynamique du champ neuronal).
Puisque les entrées (figure 3-25) ont une partie variable, la formation d’un attracteur
est toujours assurée (théorème 3). Dans la figure 3-27 nous présentons la formation d’un
attracteur associé à une entrée visuelle.
Les entrées visuelles
L’activité du champ neuronal à t
0.35
Detail de l’activité de l’extraction du reponse à t
0.7
0.8
0.6
0.3
0.6
0.5
0.4
0.25
0.4
0.2
0.2
0.3
0
0.2
0.15
0.1
−0.2
0
−0.4
0.1
0.05
−0.1
0
0
50
100
150
200
250
orientation φ
300
350
400
−0.2
−0.6
0
50
100
150
200
250
orientation φ
300
350
400
200
220
240
260
orientation φ
280
300
320
Figure 3-27. (b) L’activité du champ neuronal en fonction d’entrées visuelles (a). (c) Les valeurs utilisées
par le mécanisme d’extraction de la réponse à l’instant t obtenues par dérivation du champ neuronal.
Nous avons indiqué par le symbole ’*’ la position absolue de la tête à l’instant t et par ’o’ sa position à
t − 1.
Une première fonction du champ neuronal est de permettre l’avancement du robot vers
la dernière position perçue de la cible, due à “l’effet de mémoire”. L’arrêt de la cible,
les déplacements dans l’axe optique ou la disparition de la cible du champ de vision sont
des facteurs possibles de l’absence d’entrées visuelles. Mais l’absence d’un signal d’entrée
- 85 -
Section 3.4
Les systèmes dynamiques
ne détermine pas la disparition de l’attracteur et donc l’absence d’une réponse motrice5 .
L’absence des entrées provoque une diminution de l’amplitude de l’attracteur (figure 3-28)
mais le mécanisme d’extraction de réponse peut toujours fonctionner.
Les entrées visuelles
L’activité du champ neuronal à t
1
0.1
0.05
0.5
0
0
−0.05
−0.5
−1
−0.1
0
100
200
300
400
−0.15
orientation φ
L’activité du champ neuronal à t−1
0.5
0
100
200
300
400
0
100
200
300
400
orientation φ
L’activité du champ neuronal à t+1
−0.04
0.4
−0.06
0.3
0.2
−0.08
0.1
0
−0.1
−0.1
−0.2
0
100
200
orientation φ
300
400
−0.12
orientation φ
Figure 3-28. L’effet de mémoire. L’attracteur est toujours présent à t (en haut, à droite), à t − 1 (en
bas, à gauche) et à t + 1 (en bas, à droite) malgré l’absence d’entrées à t (en haut, à gauche) et a t + 1.
Dans le cas de deux ou plusieurs entrées actives, nous avons deux comportements
possibles : une “coopération” des entrées ou une “compétition”. Si les deux entrées sont
proches, le résultat est un seul attracteur (somme des contributions des deux entrées) qui
se forme à une position moyenne entre les deux cibles (voir figure 3-30). Ce comportement
nous permet d’avoir un lissage du bruit de perception introduit par les mécanismes de
détection du mouvement.
5
La plupart des ces systèmes de suivi ont du mal à interpréter l’absence de mouvement dans le champ
de vision. Dans tous les cas, le réponse pour cette situation est imposée à l’avance et requiert d’autres
modules nécessaires à l’identification et au traitement de ce cas.
- 86 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
Figure 3-29. Les deux robots sont relativement proches l’un de l’autre mais éloignés du robot prenant
l’image.
Les entrées visuelles
L’activité du champ neuronal à t
0.2
0.6
0.15
0.4
0.1
0.2
0.05
0
0
0
100
200
300
400
orientation φ
L’activité du champ neuronal à t−1
−0.2
0.6
0.4
0.4
0.3
0.2
0.2
0
0.1
−0.2
0
−0.4
−0.1
−0.6
0
100
200
orientation φ
300
400
100
0
100
200
300
400
200
300
400
orientation φ
Detail de l’activité du champ neuronal à t
0.5
−0.2
0
−0.8
orientation φ
Figure 3-30. La coopération de deux entrées proches (en haut, (a)). L’activité du champ neuronal
augmente entre t-1 et t (en bas, (a) et et haut, (b)) mais le mécanisme d’extraction de la réponse
fonctionne toujours (en bas, (b)).
- 87 -
Section 3.4
Les systèmes dynamiques
Dans certaines conditions, un attracteur peut bifurquer et créer 2 attracteurs (figure 333). Supposons qu’il y ait deux cibles qui soient relativement proches l’une de l’autre mais
qui soient éloignées du robot (voir figure 3-29). Grâce au mécanisme de coopération, un
seul attracteur se forme et le robot ne perçoit donc qu’une seule cible. Mais plus le robot
s’approche de 2 cibles, plus la distance apparente entre les 2 cibles (différence angulaire)
devient grande (voir figure 3-32). A partir d’une certaine distance, le mécanisme de bifurcation provoque la transformation de l’attracteur en deux attracteurs et un repousseur.
L’existence du repousseur assure la convergence du système vers un des attracteurs.
Une autre expérience vise à confirmer la possibilité d’utiliser deux mécanismes
d’extraction de réponse sur le même champ neuronal. Nous avons présenté à l’entrée
du champ neuronal un signal qui déclenche la formation d’un attracteur à une orientation
donnée et nous avons regardé le temps de convergence de la tête et du corps du robot vers
cette orientation. Dans la figure 3-31, nous présentons un aperçu des résultats. Dans ce
cas, le robot n’avance pas, la seule action qu’il puisse exécuter est “tourner”. On observe
que la rotation de la tête anticipe la rotation du corps du fait de la plus grande inertie du
corps par rapport à la tête.
orientation de la tête
O
90
O
60
30
O
t
orientation du corps
O
90
O
60
O
30
t
O
90
t
tO
Figure 3-31. La rotation de la tête anticipe la rotation du corps. Nous avons présenté un stimulus à
90o (en bas) et nous avons enregistré l’orientation de la tête (en haut) et du corps (en milieu).
En plus de tous les comportements émergents déjà cités, le champ neuronal nous offre
une autre fonctionnalité : l’intégration d’informations multimodales. Dans le chapitre 6
nous présenterons une architecture où la détection de la cible est faite par 2 méthodes :
la détection de son mouvement et la reconnaissance de sa forme. Si nous assimilons les
sorties du bloc de détection et de reconnaissance à des fonctions, alors on peut les utiliser
comme signaux d’entrée d’un seul champ dynamique. Dans ce cas, la sommation des
sorties a un sens : chacune des sorties représente une perception (mouvement/forme) et
- 88 -
Chapitre 3
Réseaux de neurones et les systèmes dynamiques
contribue à la création de la perception globale (champ neuronal).
Figure 3-32. Les deux robots apparaissant comme relativement éloignés l’un de l’autre mais proches du
robot prenant l’image.
Les entrées visuelles
L’activité du champ neuronal à t
0.2
0.3
0.2
0.15
0.1
0.1
0
0.05
0
−0.1
0
100
200
300
400
orientation φ
L’activité du champ neuronal à t−1
−0.2
0
100
200
300
400
orientation φ
Detail de l’activité du champ neuronal à t
0.6
0.1
0.4
0.05
0.2
−0.05
0
−0.15
−0.2
−0.25
0
−0.1
−0.2
0
100
200
orientation φ
300
400
220
240
260
orientation φ
280
Figure 3-33. La bifurcation: un attracteur (en bas, à gauche) se transforme dans deux attracteurs et
un repousseur (à droite, en haut et en bas) sur l’influence de l’entrée (en haut, à gauche).
Dans cette section nous avons présenté certaines propriétés des systèmes dynamiques
et nous avons plus particulièrement étudié un cas spécifique : les champs neuronaux régis
par l’équation (14). Leur utilisation nous a permis l’introduction d’une dynamique dans le
processus de perception ainsi que dans le processus moteur tout en gardant la cohérence
- 89 -
Section 3.5
Les systèmes dynamiques
et l’intégrité du système. Tous les comportements émergents (compétition, mémoire,
bifurcation, ...) peuvent être facilement modélisés et implantés dans une architecture à
l’aide des champs neuronaux.
3.5
Conclusion
Dans ce chapitre nous avons sommairement présenté les neurones biologiques, certains
éléments de l’architecture du cerveau (cortex visuel et hippocampe principalement)
et des modèles neuronaux capables de simuler plus ou moins finement des processus
de catégorisation non supervisés (WTA, ART, Kohonen, PTM, ...) et des processus
d’apprentissage sensori-moteurs utiles pour la constitution d’un répertoire de comportements (conditionnement, apprentissage associatif, architecture PerAc).
Enfin dans la dernière section nous avons présenté la notion de champ neuronal dynamiques (neural field) et montré comment on pouvait l’utiliser dans une tâche de suivi.
Dans le chapitre 5 nous utiliserons certaines propriétés de l’hippocampe pour développer
une architecture permettant l’apprentissage de séquences temporelles. Le chapitre 6 est
consacré à l’intégration des mécanismes de suivi, d’apprentissage de séquences temporelles
et de reconnaissance visuelle du professeur permettra alors de montrer l’intérêt d’une
représentation de type champ neuronal pour la fusion d’informations multimodales issues
de processus ayant des constantes de temps de réponse différentes.
- 90 -
Chapitre 4
Perception du mouvement et flot
optique
That is the beginning of knowledge the discovery of something we do not understand.
F. Herbet – Dune
L’objectif de ce chapitre n’est pas de traiter en détail le flot optique mais plutôt de
montrer son rôle essentiel en tant que source d’information pour un robot autonome.
Dans un premier temps, nous présentons les techniques de calcul de flot optique. Nous
avons testé les techniques qui nous ont paru les plus adaptées à notre approche et nous les
illustrons avec quelques exemples. Par la suite, nous nous sommes intéressés au problème
d’estimation de la composante de rotation du flot optique. Les résultats obtenus en
simulation nous ont permis de présenter le lien entre le suivi d’une cible et la perception
du mouvement par transparence. La compréhension de ce passage nous a conduit à
réaliser une expérience de psychophysique visuelle. Ensuite, nous illustrons ce modèle
neuronal de perception du mouvement en présentant certaines de ses propriétés. Enfin,
nous présentons nos conclusions sur l’utilisation de certaines méthodes d’extraction du
flot optique pour les applications de robotique mobile.
91
Section 4.1
4.1
Principe et formalisation du flot optique
Principe et formalisation du flot optique
Nous supposons que l’information concernant les mouvements des objets est plus pertinente que celle qui concerne leur forme. Prenons, par exemple, la main qui bouge pour
attraper un objet. Elle génère un flot optique important au bout des doigts, là où les
mouvements sont les plus grands. La présence de ce flot optique important peut être
utilisée comme mécanisme de stimulus enhancement (voir section 2.2) afin d’apprendre
un comportement sans avoir à reconnaı̂tre l’objet. Cet exemple explique l’importance de
l’étude du mouvement dans le cadre de notre approche.
En grande partie à la suite des travaux de Gibson [76], le mouvement a été considéré
comme une source essentielle d’informations. Gibson introduit le concept (et la théorie)
de la Perception Directe (Direct Perception) qui stipule que la perception du mouvement
est uniquement basée sur l’information rétinienne. Cette théorie part du fait que dans
des conditions ordinaires, la perception visuelle est correcte. Elle doit l’être étant donné
que les chances de survie en dépend d’où le nom de théorie écologique de la perception.
Le mécanisme de perception visuelle est ainsi réduit à un échantillonnage de l’information
visuelle de l’environnement. Le monde réel se manifeste comme une multitude de formes
lumineuses qui agissent sur la rétine de l’observateur (la matrice optique). Le contenu
informationnel de la scène est donné par une structure invariante des caractéristiques
(ou invariants) de ces formes. Percevoir c’est “appréhender” ces caractéristiques. Le
mouvement peut être caractérisé par un invariant représenté par : l’apparition ou la
disparation d’une partie de la matrice (plus spécifiquement, le fond) sur les 2 côtés d’une
autre partie de la matrice (l’objet). Quand les yeux se déplacent dans l’environnement
visuel (une combinaison des mouvements du corps, des yeux et du mouvement propre l’égomouvement) un champ de mouvement est généré dans la matrice. Le cerveau est
capable d’extraire du champ de mouvement les caractéristiques des invariants générés par
le mouvement. Gibson [75] introduit pour la première fois le terme de flot optique comme
étant une mesure des changements dans la matrice optique.
D’un point de vue plus traditionnel, la théorie Inférentielle [194] stipule que nous
percevons le mouvement ou l’état stationnaire d’un objet en fonction de la comparaison
de deux signaux neuronaux. Le premier concerne les informations “rétiniennes” (qui
codent les mouvements perçus par la rétine) et le second concerne les informations “extrarétiniennes” (qui codent les mouvements des yeux). Quand il y a une différence entre les
2 signaux, alors le mouvement de l’objet est perçu; sinon l’objet est stationnaire. Une
présentation plus ample de ce deux théories ainsi qu’une étude comparative est présentée
dans [196].
Le mouvement dans une scène est généré par le mouvement des objets et par le
mouvement de “l’observateur” de la scène. Dans notre contexte de robotique mobile,
“l’observateur” est un robot mobile équipé d’un système d’acquisition d’images. Dans
le système référentiel lié au robot, nous appelons le mouvement de la scène mouvement
réel. Nous pouvons décrire le mouvement de la scène par un champ de vecteurs en trois
dimensions. Dans l’image acquise par le robot, chaque point de l’image, x, est le projeté
- 92 -
Chapitre 4
Perception du mouvement et flot optique
p(X) d’un point X de la scène (l’espace 3D). Le résultat de la projection du mouvement
réel est le mouvement apparent. Ainsi, le flot optique est donné par la définition suivante :
“Le flot optique est défini comme étant un champ de vecteurs en deux dimensions (2D) qui décrit le mouvement apparent.”
Nous considérons une séquence d’images comme étant une fonction réelle I ((x1 , x2 ), t)
à trois variables x1 , x2 , t que nous supposons, pour l’instant, continues. Nous utiliserons
les notations abrégées x pour (x1, x2) et x(t) pour (x1 (t), x2 (t)).
Le flot optique à l’instant t et au point x(t) est alors défini comme la vitesse du point
image:
!
dx1 dx2
,
(1)
v = (v1 , v2 ) =
dt dt
La représentation de flot optique la plus couramment utilisée est une “image” de
vecteurs de vitesse dans chaque point de l’image (voir figure 4-1). Parfois, afin d’avoir
une image lisible dans le cas de grands mouvements, on représente une image décimée des
vecteurs vitesse, en supposant que les vecteurs représentés sont la moyenne des vitesses
dans un voisinage.
(x1,x2,t)
(x1‘,x2‘ ,t‘ )
Figure 4-1. Déplacement d’un objet entre (x1 , x2 , t) et (x1 ′, x2 ′, t′) et l’image des vecteurs de vitesse
associées.
Si nous considérons les objets qui se déplacent comme étant rigides, alors nous pouvons
définir plusieurs types de flot optique:
• 1er ordre: les translations: tous les points de l’image se déplacent sur des droites
parallèles (figure 4-1).
• 2ème ordre
– les rotations: chaque point de l’image se déplace sur des cercles concentriques,
avec une vitesse constante et un angle symétrique par rapport à un point fixe
(figure 4-2).
– les dilatations (expansions/contractions): chaque point de l’image se déplace
sur une droite, toutes les droites convergent vers un point (figure 4-2).
- 93 -
Section 4.1
Principe et formalisation du flot optique
– les déformations morphologiques d’un objet (pliage, froissage, ...).
Figure 4-2. Exemples de flots optiques théoriques générés par (a) une expansion (translation vers avant),
(b) une contractions et (c) une rotation.
La mesure du flot optique est considérée une étape de traitement de l’image dite de
bas niveau. On lui trouve de nombreuses applications comme l’analyse de mouvements
de fluides en physique expérimentale, la compression de séquences d’images vidéo par
compensation de mouvement, retrouver le mouvement réel des objets dans l’image, calculer le temps jusqu’à l’impact, estimer le mouvement propre, ou son utilisation pour
des phases de traitement des images de plus haute niveau, comme la reconstruction de
scènes tridimensionnelles. Dans le cadre de nos applications de robotique mobile, nous
nous sommes intéressés uniquement à l’estimation du mouvement propre et au problème
du mouvement réel des objets dans l’image.
- 94 -
Chapitre 4
4.2
Perception du mouvement et flot optique
Méthodes pour l’extraction du flot optique
Dans cette section nous présentons quelques méthodes de calcul du flot optique ainsi
que les résultats obtenus. Tout d’abord, nous présentons la méthode de détection du
mouvement par différence d’images et celle de Reichardt. Ensuite nous présentons les
méthodes de calcul de flot optique par mise en correspondance, la méthode différentielle
et nous finissons par les méthodes énergétiques. Chaque méthode est illustrée par des
résultats obtenus avec des séquences réelles.
4.2.1
Méthode empirique - la différence entre images
Avant de présenter les méthodes d’extraction de flot optique, nous allons présenter la
plus empirique méthode de détection du mouvement : la différence algébrique entre deux
images consécutives. Cette méthode fournit plutôt une information sur la zone en mouvement (détection) que sur le déplacement (flot optique) :
M vt (x, t) = I (x, t) − I (x, t + δt)
(2)
avec M vt l’image du mouvement et I les images acquises.
C’est une méthode très rapide mais qui pose plusieurs problèmes. D’abord, l’utilisation
de la différence implique l’existence d’un résultat signé (un objet noir sur un fond blanc
qui se déplace vers la droite génère la même différence qu’un objet blanc sur le fond noir
qui se déplace vers la gauche). Nous pouvons utiliser la différence absolue entre 2 images,
mais on ne peut pas faire la différence entre le fait que c’est l’objet qui s’est déplacé ou
que c’est la scène qui s’est déplacée.
Figure 4-3. La séquence t N 270 20. Nous avons représenté uniquement les images 0 (la première), 100,
200, 300, 350 et 400 (la dernière).
Prenons, par exemple la séquence illustrée par la figure 4-3. Elle contient en réalité 400
images prises par une caméra CCD embarquée sur le robot à environ 20 images/seconde.
- 95 -
Section 4.2
Méthodes pour l’extraction du flot optique
Le seul objet qui se déplace est un robot Koala que nous avons mis en évidence par un cercle. L’estimation du champ des vitesses apparentes (le flot optique) sera systématiquement
présenté sur cette séquence (voir figure 4-3). Néanmoins, il faut souligner le fait que la
plupart des expériences ont été faites en temps réel1 , sans enregistrer continuellement les
images acquises par la caméra. Les conditions d’illumination ont beaucoup changé d’une
expérience à l’autre. En plus, le plancher des salles d’expérimentations est recouvert d’un
sol plastique réfléchissant. Vue la hauteur du robot d’environ 40 cm (voir figure A-1 en
annexe), la réflexion des objets sur le sol génère beaucoup d’artefacts (voir figure 4-5 (a)).
Le résultat de la détection du mouvement par différence entre images est illustré par
la figure 4-4. Par abus de langage, l’image résultante (figure 4-4 (a)) est appelée l’image
du mouvement. La position du robot est clairement mise en évidence ainsi que l’ancien
emplacement du robot.
Difference entre deux images
Difference entre deux images
20
250
40
200
150
60
100
50
0
80
−50
−100
100
−150
−200
150
120
200
100
150
100
50
140
50
20
40
60
80
100
120
140
160
180
0
0
Figure 4-4. (a) L’image du mouvement obtenue par la différence entre la 300ème et la 350ème image
de la séquence t N 270 20. (b) La mise en évidence de l’amplitude des différences entre les mêmes deux
images(on perçoit en plus du mouvement du robot le mouvement du fil d’alimentation du robot ...).
Les propriétés physiques de la caméra CCD ainsi que celles de la carte d’acquisition
induisent un bruit important entre deux images consécutives. Nous pouvons observer ce
bruit dans la figure 4-4 (b). Nous allons maintenant donner une estimation de ce bruit.
Étant donné que nous utilisons des images successives, en niveau de gris, nous nous
sommes intéressés aux variations de luminance entre images consécutives. Pour mesurer
les variations de luminance, que nous considérons comme du “bruit”, nous avons effectué
l’acquisition de 300 images consécutives, suivant le même point de vue. Cette acquisition
est répétée pour 3 orientations différentes (voir figure 4-5, pas d’objets en mouvement
dans les différentes prises de vues). Dans le but de prendre en compte les caractéristiques
de la carte d’acquisition, les images ont été prises en utilisant 2 cartes différentes : une
carte SunVideo sur une machine Sparc avec la bibliothèque XIL et une carte MiroPcTV
sur une machine PC Linux avec des fonctions développées par notre groupe.
1
La notion de temps réel implique, dans notre cas, un temps de boucle entre 100 et 1000 millisecondes.
- 96 -
Chapitre 4
Perception du mouvement et flot optique
Figure 4-5. Une image de la séquence “mur” (a), “fenêtre” (b) et “table” (c). A gauche, nous pouvons
observer la réflexion de la chaise sur le sol.
Tout d’abord nous calculons, pour chaque séquence, la différence absolue entre 2 images successives, en chaque pixel. Ensuite, nous calculons la moyenne, la variance et le
maximum des différences absolues. Enfin, dans le tableau 1 nous présentons une synthèse
des résultats.
Séquence (Sparc) MOYENNE VARIANCE
fenêtre
2.0070
1.9556
mur
2.2245
2.4535
table
2.3134
2.4945
Séquence (Linux)
fenêtre
1.2658
1.4138
mur
1.2976
1.7894
table
1.5039
1.8827
MAXIMUM
32.2074
35.0067
40.2341
37.1405
42.1806
46.7224
Tableau 1. Synthèse de résultats obtenus pour la mesure du bruit dans les séquences d’images. Les
images utilisées ont 192 × 144 pixel avec 255 niveau de gris/pixel
En conclusion, nous pouvons affirmer que, en moyenne, le bruit n’est pas fort.
L’intensité est codé sur 256 pixel donc le bruit est inférieur à 1%. Mais le bruit impulsionnel est très élevé (environ 20%) et nous devons par conséquent l’éliminer en utilisant
des techniques de filtrage. En outre, nous pouvons remarquer que l’acquisition d’images
sur PC/Linux est légèrement meilleure que celle sur Sparc/Solaris.
Les mesures de bruit nous ont inciter à utiliser un lissage des images avant de calculer
la différence. Par ailleurs, nous pouvons utiliser un seuil sur la différence afin d’éliminer
le bruit impulsionnel. Si nous utilisons un moyennage temporel de durée T et un seuil
Seuil, l’équation (2) peut alors s’écrire :
M vt (x, t) =
avec
R (x, t) = k
(
0
si R (x, t) < Seuil
R (x, t) si R (x, t) ≥ Seuil
1 Z t−δt
1Zt
I (x, τ ) dτ −
I (x, τ ) dτ k
T t−T −δt
T t−T
- 97 -
(3)
(4)
Section 4.2
Méthodes pour l’extraction du flot optique
Dans l’image 4-6 (a), nous illustrons la différence entre 2 images successives. Le bruit
est d’environ 20%. L’effet du lissage et du seuillage est immédiat : le bruit est réduit de
plus de 80% après le lissage (voir figure 4-6 (b)) et il disparaı̂t pratiquement (réduit de
plus de 99%) après un lissage et un seuillage (voir figure 4-6 (c)).
Difference entre deux images
Difference entre deux images lissées
Difference entre deux images lissées + seuil
60
12
20
20
40
12
20
50
10
40
40
10
40
60
8
60
8
80
30
80
6
80
6
100
20
100
4
100
4
60
120
10
140
120
2
140
20
40
60
80
100
120
140
160
180
0
120
2
140
20
40
60
80
100
120
140
160
180
20
40
60
80
100
120
140
160
180
Figure 4-6. (a) La différence entre deux images de la séquence “fenêtre”. (b) La différence entre deux
images intégrées temporellement, avec T = 4. (c) La même image que celle du centre mais seuillée avec
un Seuil = 10.
Un autre problème dù à l’utilisation de la différence d’images réside dans le fait que
nous n’avons pas d’indications ni sur le sens du mouvement, ni sur son intensité. De
même, il faut souligner un problème d’ordre général: la vitesse d’acquisition des images
est d’environ 20 images/seconde mais la vitesse de transmission des ordres à notre robot
est très lente (50-300 millisecondes en moyenne avec un modem radio à 9600 baud). Cette
différence entre ces 2 constantes de temps fait que la détection du mouvement est faite
pour des déplacements petits, mais qu’entre 2 détections (un cycle perception-actionperception) les mouvements peuvent être grands. Ce problème est généralement résolu
par une “égalisation” du temps de perception et d’action, par la parallélisation du calcul
ou par l’augmentation de l’intégration temporelle au niveau de la détection du mouvement.
4.2.2
Le modèle de Reichardt
Le modèle proposé par Reichardt [156] est un des premiers à avoir été utilisé pour
l’estimation du mouvement. Le modèle “de base” permet la détection du mouvement
dans une direction préférentielle. Les photo-récepteurs (cellules du niveau 1) détectent
les changements de l’intensité lumineuse. La sortie des photo-récepteurs est connectée via
des lignes de retard aux cellules de niveau 2 (figure 4-7, (a)). Si la vitesse de déplacement
du changement de luminance correspond au retard de la ligne, alors la cellule de niveau
2 s’active. L’activation est due à un calcul de corrélation des entrées. Le modèle de
Reichardt généralisé (figure 4-7 (b)) est utilisé pour détecter le mouvement dans le deux
sens.
Le modèle de Reichardt est facile à mettre en oeuvre mais le choix de la constante de
retard est difficile à régler. De plus, pour chaque gamme de vitesse il faut utiliser une
couche de cellules de niveau 2. Vue la difficulté de calcul de la corrélation des entrées et
- 98 -
Chapitre 4
Perception du mouvement et flot optique
Direction preferentielle du mouvement
Directions du mouvement
celulles de niveau 1
celulles de niveau 1
τ
τ
τ
celulles de niveau 2
celulles de niveau 2
Figure 4-7. Le modèle de Reichardt simple (a) et généralisé (b).
la limitation de la gamme de vitesses, le modèle a été utilisé pour des séquences d’images
de déplacement de points (ou de contours). Le modèle est intensivement utilisé pour
modéliser les expériences de psychophysiologie (estimation du mouvement d’un nuage des
points).
4.2.3
Les méthodes de mise en correspondance
Les méthodes de mise en correspondance calculent le flot optique v en chaque point de
l’image en utilisant une mesure de similarité entre deux images successives [16, 18, 122,
130]. Soit le point x dans l’image I(x, t0 ). Calculer le flot optique en x revient à calculer
la distance d dont l’équation est :
d = min M (x, d)
(5)
M (x, d) = (I (x, t0 ) − I (x + d, t1 ))2
(6)
d∈Vx
avec
et Vx un voisinage de x.
A cause des minima locaux, on utilise très rarement l’équation (6) pour calculer la
similarité. Le plus souvent, on utilise pour les calculs sur une “version” filtrée spatialement
de I(x, t) [18]. Ainsi, l’équation (6) devient :
M (x, d) = (W (x) ∗ I (x, t0 ) − W (x) ∗ I (x + d, t1 ))2
(7)
avec W le noyau de convolution.
Nous pouvons observer que minimiser la différence I (x) − I (x + d) équivaut à maximiser le produit I (x) · I (x + d), ce qui revient au calcul de la corrélation entre l’image
à l’instant t0 et des versions décalées de l’image t1 . Ainsi, cette méthode est nommée
méthode corrélative.
Dans le cas des méthodes de mise en correspondance, la vitesse de déplacement d’un
point de l’image (le flot optique) est égale au déplacement :
v = d c′ est − à − dire (v1 , v2 ) = (d1 , d2 ) .
- 99 -
(8)
Section 4.2
Méthodes pour l’extraction du flot optique
Le domaine des vitesses maximales admises est limité par le biais du voisinage Vx (figure
4-8, (a)) ce qui constitue une contrainte implicite sur la vitesse maximale détectable.
La recherche d’un “maximum” ou d’un “minimum” n’est pas “différente” du point de
vue algorithmique. Du point de vue neurophysiologique la recherche d’un maximum est
plus “biologiquement plausible” puisque les cellules ayant une sélectivité directionnelle ont
une réponse maximale, et non minimale, lorsque le mouvement est parallèle à leur direction
optimale. Cependant, le calcul d’une fonction “minimiser” peut intervenir sous la forme
de signaux inhibiteurs de ces cellules; le ”message” porté par l’activation de ces cellules ne
serait alors pas: ”le mouvement a probablement lieu dans cette direction”, mais plutôt: ”le
mouvement n’a probablement pas lieu dans la direction opposée”. L’inhibition comme
base de la sélectivité directionnelle est en accord avec les données neurophysiologiques
récentes décrites chez les mammifères [59].
Des méthodes de mise en correspondance peuvent utiliser d’autres caractéristiques de
l’image (contours, points anguleux, ...). Singh propose une méthode en deux pas [172].
Premièrement, le calcul de plusieurs déplacements sur des images filtrées. Deuxièmement,
les déplacements sont convertis en une distribution de probabilités et le flot optique est
calculé comme une somme moyenne de ces valeurs. Les valeurs propres de la matrice de
covariance sont utilisées comme mesures de confiance. Anandan [6] propose une technique
basée sur une décomposition pyramidale de l’image et une stratégie de raffinement du flot
optique.
La méthode classique de calcul de flot optique en utilisant la mise en correspondance est
très gourmande en temps de calcul. La complexité algorithmique pour une image de taille
N est de O(N 3 ) ce qui rend ces techniques impropres pour les applications embarquées.
Il y a cependant plusieurs techniques qui permettent de réduire la complexité : calculer
le flot optique sur une grille dont la taille est inférieure à celle de l’image (pb. comment
choisir les points sur la grille), rechercher le maximum dans un voisinage particulier,
paralléliser le calcul, ...
Pour réduire les temps de calcul, Poggio et ses collaborateurs [7, 8] ont utilisé des
techniques de mise en correspondance en utilisant un voisinage 1D. Ainsi, les auteurs ne
cherchent que des déplacement horizontaux ou verticaux, ce qui revient à modifier la forme
du voisinage Vx dans lequel on cherche le mouvement (voir figure 4-8). Le mouvement v
est donné par le meilleur décalage en x et en y. Une autre forme de voisinage Vx utilisée
est présentée dans la figure 4-8 (c) [94].
De même, pour une application nécessitant l’approximation du temps jusqu’à contact,
les auteurs [150] approximent le flot optique en utilisant le théorème de Green (équation
(9)). Selon ce théorème, pour mesurer l’expansion du flot optique, il suffit de calculer le
gradient du flot optique. Dans le cas de champs de vecteurs linéaires, l’intégrale de la
divergence sur une surface est constante si la surface inclue le centre. Le théorème de
Green dit que l’intégrale sur une surface d’un gradient est équivalente à l’intégrale des
composantes normales au contour de la surface.
Z
S
∇v(x, y)dxdy =
- 100 -
Z
C
v · ndl
(9)
Chapitre 4
Perception du mouvement et flot optique
Figure 4-8. (a) La forme de fenêtre couramment utilisée. (b) la fenêtre utilisée par Poggio. (c) la fenêtre
utilisée par Hayes.
avec
∇v(x, y) =
δvx (x, y) δvy (x, y)
+
δx
δy
(10)
et n la normale à la surface S dont C est le contour. Ainsi, pour déterminer le temps
jusqu’à contact, seule la composante normale du flot optique en n points est calculée.
Ces points sont situés sur un cercle, ce qui entraı̂ne une réduction drastique du temps de
calcul.
4.2.3.1
Implantation de certaines variantes de la méthode de mise en correspondance
Nous avons implanté et testé plusieurs algorithmes d’extraction du flot optique qui
utilisent la méthode de mise en correspondance. Les caractéristiques principales de ces
algorithmes résident dans le fait que :
• la recherche d’un déplacement uniquement pour les points de l’image qui ont une
variation de luminance supérieure à un seuil SeuilBruit. Les points sont déterminés
en utilisant l’équation (3).
• le calcul de la mise en correspondance de toute une région et non pas d’un seul point
(voir figure 4-9).
• L’influence de chaque point de la région est modélisée par une fonction, W , (voir
l’équation (11)). Cette modélisation revient à effectuer un filtrage spatial passe-bas
(voir figure 4-10).
V almin − 1
q
W (x1 , x2 ) = 1 +
(11)
T aille2 + x21 · x22
avec V almin et T aille constantes.
- 101 -
Section 4.2
Méthodes pour l’extraction du flot optique
région MC
(x1,x2)
déplacement
(x 1+dx1,x2+dx2)
zone de recherche
Image à l’instant t1
Image à l’instant t2
Figure 4-9. Définition de la région de mise en correspondance (MC) et de la zone de recherche du
mouvement dans 2 images successives.
1
0.95
0.9
0.85
10
8
10
6
8
6
4
4
2
2
0
0
Figure 4-10. Graphique de la fonction W avec T aille = 10 et V almin = 0.86.
• nous privilégions l’hypothèse qu’à-priori il y a peu de zones en mouvement. Nous
modélisons cette hypothèse à l’aide d’une fonction de confiance V dont l’équation
est :
V almin − 1
q
V (x1 , x2 ) = 1 +
(12)
T aille2 + x21 · x22
avec V almin et T aille constantes.
Pour deux images, I (x, t1 ) et I (x, t2 ), avec SeuilBruit une constante, Z la taille de la
région de mise en correspondance, R le déplacement maximal, W (respectivement V ())
deux fonctions dont l’équation est (11) (respectivement (12)), l’algorithme de calcul du
déplacement d = (d1 , d2 ) est le suivant :
• pour chaque point (x1 , x2 ),
– nous calculons :
Diff = |I ((x1 , x2 ) , t1 ) − I ((x1 , x2 ) , t2 )|
- 102 -
Chapitre 4
Perception du mouvement et flot optique
– si le Diff > SeuilBruit, alors
∗ pour chaque point, (a1 , a2 ) ∈ [(x1 − R, x2 − R), (x1 + R, x2 + R)], de la
zone de recherche nous calculons :
A (a1 , a2 ) =
Z
X
Z
X
W (i, j)·[I ((a1 + i, a2 + j) , t1 ) − I ((a1 + i, a2 + j) , t2 )]2
i=−Z j=−Z
∗ pour chaque point, (a1 , a2 ) ∈ [(x1 − R, x2 − R), (x1 + R, x2 + R)], de la
zone de recherche nous recherchons le maximum :
B (b1 , b2 ) = max A (a1 , a2 )
avec (dx1 , dx2 ) = (b1 − x1 , b2 − x2 )
∗ si B (b1 , b2 ) · V (dx1 , dx2 ) > A (x1 , x2 ), alors
d(x1 , x2 ) = (dx1 , dx2 )
Les résultats obtenus en utilisant cet algorithme sont différents, selon la zone de
recherche utilisée (voir figure 4-8 pour quelques exemples). De même, nous pouvons
utiliser le gradient de l’image à la place de l’image d’intensité. Malgré cela, la difficulté
des méthodes de mise en correspondance réside dans la choix des paramètres et la complexité calculatoire.
20
80
40
85
60
90
80
95
100
100
120
105
140
20
40
60
80
100
120
140
160
180
130
135
140
145
150
155
160
165
170
Figure 4-11. Les flots optiques obtenus pour l’utilisation d’une zone de recherche rectangulaire (voir
figure 4-8 (a)) de taille R = 5, avec une région de mise en correspondance de taille Z = 15, V almin = 0.6
pour la fonction V et V almin = 0.7 pour la fonction W et SeuilBruit = 33.
Nous présentons les résultats obtenus (figures 4-11 et 4-12) avec 2 types de zones de
recherche : le carré (figure 4-8 (a)) et la croix (figure 4-8 (b)).
A titre de comparaison, le temps de calcul du flot optique illustré dans l’image 4-11
est de 68.98 millisecondes et celui illustré dans l’image 4-12 de 17.61 millisecondes, soit 4
fois plus rapide2 .
2
Les temps ont étés mesurés sur une machine Sparc Ultra 10
- 103 -
Section 4.2
Méthodes pour l’extraction du flot optique
20
80
40
85
60
90
80
95
100
120
100
140
20
40
60
80
100
120
140
160
180
135
140
145
150
155
160
165
170
Figure 4-12. Les flots optiques obtenus pour l’utilisation d’une zone de recherche en forme de croix (voir
figure 4-8 (b)) de taille R = 5, avec une région de mise en correspondance de taille Z = 15, V almin = 0.6
pour la fonction V et V almin = 0.7 pour la fonction W et SeuilBruit = 33.
En conclusion, vue la définition de la vitesse (équation (8)) utilisée pour les méthodes
de mise en correspondance, nous observons tout de suite que les résultats obtenus dans
le cas de petits déplacements, (moins d’un pixel/image) sont assez mitigés. Par contre,
dans le cas de déplacements d’objets à grande vitesse, les résultats sont très bons. Une
comparaison de certaines méthodes de calcul de flot optique, dont les méthodes de mise
en correspondance, est présenté dans [18].
4.2.4
Techniques différentielles
Nous n’avons pas utilisé ces méthodes, mais nous les présentons pour avoir un aperçu
complet des méthodes de calcul de flot optique. Les techniques différentielles utilisent
l’hypothèse que la luminance d’un point physique varie lentement au cours du temps
quand l’objet qui contient le point se déplace.
I (x(t)) , t) = cste
se qui suppose
dI
dt
= 0.
dx1 ∂I
dx2 ∂I
∂I
dI
=
·
+
·
+
dt
dt ∂x1
dt ∂x2
∂t
Si on note ∇I =
∂I
∂I
, ∂x
∂x1
2
T
nous obtenons l’équation du gradient:
∇I ·
dx ∂I
+
=0
dt
∂t
soit
∇I · v +
∂I
=0
∂t
- 104 -
(13)
Chapitre 4
Perception du mouvement et flot optique
L’équation (13) ne peut pas être résolue ponctuellement, car en chaque point de l’image
on doit trouver deux inconnues (v1 , v2 ) et nous ne disposons que d’une seule équation.
L’impossibilité de déterminer exactement la direction du mouvement d’un contour (voir
figure 4-13) est connue sous le nom du problème d’ouverture.
?
?
?
?
?
I
Image à t0
Image à t1
Figure 4-13. Illustration du problème d’ouverture.
L’estimation du flot optique apparaı̂t alors comme un problème mal posé. Le seul
moyen de résoudre l’équation de flot optique 13 est de faire au moins une hypothèse
supplémentaire sur le mouvement et de transformer l’équation du gradient en un problème
bien posé c’est à dire qui a une solution unique pour un élément d’image donné. Cette
transformation est nommée régularisation.
Horn et Schunck [100, 101] utilisent l’hypothèse selon laquelle la “meilleure” solution
est la solution la plus régulière. Les auteurs proposent de minimiser la fonctionnelle :
L(v) =
Z Z
∂I
v · ∇I +
∂t
!2
dx1 dx2
(14)
ce qui revient à trouver une “carte” globale qui annule le flot de l’équation 13. Un terme
de régulation est introduit :
R(v) = λ
Z Z
k∆vk2 dx1 dx2
(15)
La fonctionnelle totale, qui est définie positive, devient :
Z Z
∂I
v · ∇I +
∂t
!2
dx1 dx2 + λ
Z Z
k∆vk2 dx1 dx2
(16)
Sobey et Srinivasan [174] introduisent la technique du gradient généralisé. Cette technique utilise 2 filtres (ou 3 filtres) et le gradient de l’intensité de l’image filtrée.
Les techniques de régularisation ont été intensivement étudiées. On peut utiliser des
contraintes sur l’aspect temporel ou encore utiliser une estimation stochastique avec des
champs de Markov. Une présentation de ces techniques est donnée dans [122].
- 105 -
Section 4.2
Méthodes pour l’extraction du flot optique
Une technique récente de calcul du flot optique revient à projeter l’équation du flot
optique sur les vecteurs d’une base d’ondelettes [23, 22]. L’avantage principal de cette
approche est d’être plus rapide par rapport aux méthodes standards, car les filtrages
coûteux sont remplacés par des transformations en ondelettes rapides.
Malgré tout, les techniques différentielles sont très coûteuses en temps de calcul. Le
résultat pour de petits déplacements sont bons mais pour les grands déplacements il
faut utiliser une décomposition multiéchelle. Vu qu’une autre source d’erreurs provient
de l’approximations de la différentielle, les techniques différentielles présentent un faible
intérêt pour nos applications de robotique mobile.
4.2.5
Techniques énergétiques
Les techniques énergétiques d’estimation du mouvement sont basées sur la caractérisation
du mouvement dans le domaine fréquentiel. Elles utilisent une combinaison de réponses de
filtres spatio-temporels orientés. Ce sont les recherches en neurobiologie qui ont influencé
ces techniques: la réponse des filtres essaie de simuler la réponse de cellules des aires V1
et MT (voir figure 3-6). Ces cellules ont une réponse qui dépend de la forme de la vitesse
et des caractéristiques des objets en mouvement [34].
Supposons, par exemple, que nous sommes dans le cas d’un mouvement de translation.
Considérons une séquence d’images composée d’une barre verticale en mouvement de
translation vers la gauche (voir figure 4-14 (a)). La séquence est décrite par la fonction
de luminance I(x, t) et peut être représentée dans un parallélépipède espace–temps de
coordonnées x = (x1 , x2 ).
v
x2
x2
x1
x1
t
Figure 4-14. (a) Une image dans une séquence comportant une barre verticale en mouvement de translation vers la gauche, (b) Le parallélépipède espace–temps associé à cette séquence d’images.
Prenons une section dans ce volume, considérant y = constant (voir figure 4-15). Le
mouvement apparaı̂t comme une droite dans l’espace–temps et des filtres spatio–temporels
peuvent être utilisés pour l’estimer.
Si la fréquence spatiale fx est exprimée en cycles/pixel et la fréquence temporelle ft
est exprimée en cycles/image, la vitesse, qui est la distance parcourue par unité de temps
ou pixels/image est :
- 106 -
Chapitre 4
Perception du mouvement et flot optique
filtre
ωx1
v
t
ωt
+
+ + -+ - -
x1
Figure 4-15. Le mouvement est équivalent à une orientation dans l’ espace - temps et des filtres spatio–
temporels orientés peuvent être utilisés pour l’estimer : (a) Coupe suivant les axes x - t dans le parallélépipède espace–temps. (b) Le spectre associé. (Notations: ωx = 2πfx et ωt = 2πft ).
v=
ft
fx
(17)
Le spectre de la barre, si elle est suffisamment texturée, se situe sur une droite de pente
v. Cette pente (et donc la vitesse) peut être mesurée en utilisant les réponses de plusieurs
filtres placés à des fréquences spatio–temporelles différentes.
L’estimation de la vitesse en 2D suit le même principe. Si nous considérons l’image :
I (x, t) = I (x + v · ∆t, t0 )
alors sa transformée de Fourier est :
Iˆ ((fx1 , fx2 ) , ft ) = Iˆ ((fx1 , fx2 )) · δ (ft + v1 · fx1 + v2 · fx2 )
(18)
avec δ(.) la distribution de Dirac. L’équation (18) nous montre que la transformée de
Fourier d’une image en translation pure s’annule seulement sur un plan dont l’équation
est :
ft + v1 · fx1 + v2 · fx2 = 0
(19)
La transformée de Fourier inverse de l’équation (19) nous donne directement l’équation
du flot optique (voir équation (13)). Par conséquent, calculer le flot optique revient
à trouver la pente d’un plan d’énergie non nul dans l’espace temps-fréquence. Heeger
[97, 98] a été le premier à utiliser des filtres de Gabor sur une image texturée de manière
à d’échantillonner l’espace des fréquences spatio-temporelles et à utiliser une technique
de minimisation pour trouver le plan de vitesse de façon à ce que le spectre associé à une
séquence soit distribué sur une bande assez large de fréquences spatio-temporelles.
- 107 -
Section 4.2
Méthodes pour l’extraction du flot optique
Ft
0.5
0
−0.5
0.5
0.5
0
0
−0.5−0.5
Fx2
Fx1
Figure 4-16. Le plan de vitesse pour u = 1 pixel/image et v = 0.5 pixels/image.
L’équation d’un filtre spatio-temporel de Gabor est :
h(x1 , x2 , t) =
1
3
(2π) 2 · σx1 · σx2
h
x21
x2
t2
· exp −
+ 2 + 2
2σx21 2σx22 2σt
· σt
"
exp 2πj fx10 x1 + fx20 x2 + ft0 − ft
!#
·
i
Son spectre est:
ĥ (fx1 , fx2 , ft ) = exp −2π
2
fx10 − fx1
2
·
σx21
+ fx20 − fx2
2
·
σx22
2
+ (ft0 − ft ) ·
σt2
(20)
L’ensemble de la méthode décrite par Heeger repose sur la connaissance de l’énergie
locale liée au mouvement : cela impose donc un filtrage par convolution spatiale plutôt
qu’une implantation dans le domaine fréquentiel utilisant des transformées de Fourier
rapides. Heeger propose une implantation par somme de convolutions séparables avec des
filtres spatiaux d’écart–type σx = σy = 4 (noyau de convolution de taille 23) et des filtres
temporels d’écart–type σt = 1 (noyau de convolution de taille 7).
Heeger utilise un filtre d’énergie dont la sortie (équation (21)) est la somme des carrés
de deux filtres en quadrature, décrits par l’équation (20), avec la même orientation et la
même largeur de bande mais déphasés de 90 degrés. La mesure d’énergie ainsi obtenue
est indépendante de la phase du signal.
ĥ (fx1 , fx2 , ft ) =
2
2
1
· exp 4π 2 fx10 − fx1 · σx21 + fx20 − fx2 · σx22 + (ft0 − ft )2 · σt2
4
2
2
1
+ · exp 4π 2 fx10 + fx1 · σx21 + fx20 + fx2 · σx22 + (ft0 + ft )2 · σt2
4
- 108 -
(21)
Chapitre 4
Perception du mouvement et flot optique
L’équation (21) signifie que la réponse d’un filtre sera d’autant plus importante que le
plan d’énergie non nulle passe à proximité de son centre (fx10 , fx20 , ft0 ).
Pour la séquence d’images illustrée par la figure 4-3, nous présentons les résultats
obtenus avec une variante de la méthode de Heeger [176, 177] (voir figure 4-17).
75
20
80
40
85
60
90
80
95
100
120
100
140
105
20
40
60
80
100
120
140
160
180
140
145
150
155
160
165
170
Figure 4-17. Exemple de flot optique extrait en utilisant la méthode de Heeger modifiée par Spinei [177].
Une autre technique d’estimation du flot optique par des méthodes énergétiques utilise
des filtres spatio-temporels de type passe-bande inspirés par le filtrage rétinien [188]. Ce
sont des filtres qui sont plus simples à mettre en oeuvre dans le cadre de la conception
de circuits VLSI analogiques mais ils ont une sélectivité plus faible que ceux de Gabor.
Ces filtres ont un domaine de fréquence plus étendu que celui d’un filtre de Gabor et sont
réglés sur certaines gammes de vitesses. Leur réponse impulsionnel passe par l’origine du
domaine fréquentiel.
1
ĥ (fx , ft ) =
1+
2·|fx |2
∆Bx2
+j·
T ·f
2·(ft +v0
x)
∆Bt
(22)
avec fx = (fx1 , fx2 ), v0 = (v10 , v20 ) la vitesse sur laquelle le filtre est orienté, ∆Bx2
(respectivement ∆Bt ) étant la largeur de bande spatiale (respectivement temporelle).
Nous avons testé une implantation de cet algorithme présenté par pour la même
séquence d’images de référence. Les résultats obtenus sont illustrées dans la figure 418.
A titre de comparaison, le temps de calcul du flot optique basé sur des filtres de Gabor
(voir l’image 4-17) est de 2038.12 millisecondes et celui basé sur le filtrage rétinien (voir
l’image 4-18) est de 260.56 millisecondes, soit de 8 fois plus court3 .
Les méthodes énergétiques demandent des réglages de paramètres astucieux. Cependant, une fois trouvés les bons paramètres, les résultats sont de bonne qualité. Prenons
3
Les temps ont étés mesurés sur une machine Sparc Ultra 10.
- 109 -
Section 4.2
Méthodes pour l’extraction du flot optique
20
80
40
85
60
90
80
100
95
120
100
140
20
40
60
80
100
120
140
160
180
140
145
150
155
160
165
170
Figure 4-18. Exemple de flot optique extrait en utilisant 2 filtres orientés.
l’exemple d’une rotation (figure 4-19). Le flot optique obtenu avec la méthode basée sur le
filtrage rétinien est présenté dans la figure 4-20 (après avoir trouvé les bons paramètres).
Malgré tous nos essais, les résultats ont été en demi-teinte (le flot perçu restant relativement bruité). La cause principale des problèmes est due à la transmission et à
l’acquisition des images qui ont introduit du bruit. La sensibilité des algorithmes utilisés
a aussi dégradé les résultats obtenus. Enfin, le temps de calcul est prohibitif (la méthode
la plus rapide calcule le flot optique en 260 millisecondes).
4.2.6
Estimation de la composante de rotation du flot optique
Le déplacement d’un robot dans un environnement ouvert peut être décomposé en une
série de translations et de rotations. Nous nous sommes posé la question de savoir s’il y
a une possibilité d’extraire facilement et ensuite d’estimer la composante rotationelle du
flot optique.
Figure 4-19. La séquence rot 1 000. Nous avons représenté seulement les images 0 (la première), 200,
et 300 (la dernière).
Pour mettre en évidence la difficulté théorique de l’estimation de la composante rotationelle, nous considérons que le calcul de flot optique est parfait. Nous avons simulé
- 110 -
Chapitre 4
Perception du mouvement et flot optique
Le flot optique pour une rotation vers la droite
Le flot optique pour une rotation vers la droite (detail)
10
20
20
40
30
60
40
80
50
100
60
120
70
140
20
40
60
80
100
120
140
160
180
10
20
30
40
50
60
70
80
Figure 4-20. Exemple de flot optique généré par une rotation.
un robot qui a des capteurs tout autour de lui (voir figure 4-21 (a)) et dont le calcul du
flot optique est fait seulement sur une ligne, ce qui est équivalent à une projection selon
l’horizontale d’un flot optique 2D (voir figure 4-21 (b)).
La valeur du flot optique F , mesurée par le capteur φ, est donnée par l’équation
suivante :
Y − Yo + tr.sin(θ + dθ)
F = φ − φo = dθ + arctan
X − Xo + tr.cos(θ + dθ)
!
− arctan
Y − Yo
X − Xo
(23)
avec (X0 , Y0 ) les coordonnées du robot avant le déplacement, (X, Y ) les coordonnées
après le déplacement, tr la distance du déplacement, φ0 et φ étant l’orientation du robot
avant et après le déplacement (dans un repère quelconque) et dφ l’angle de rotation.
L’idée principale est de demander au robot, pendant l’apprentissage, de générer des
mouvements aléatoires et d’essayer de réduire l’erreur d’estimation de la rotation (calculé
à partir du flot optique).
L’estimation de la rotation est donnée par l’équation :
Θe =
N
X
Wi · Fi
i=1
La modification des poids est donnée par l’équation de LMS [200] (voir section 3.1.3) :
Wi (n) = Wi (N ) + ǫ · Fi · (Θ − Θe )
Après très peu d’itérations, notre robot “apprend” à estimer correctement la composante de rotation du mouvement propre (voir figure 4-22(a)).
La distribution des poids de chaque capteur, en fonction de l’orientation du capteur
par rapport à la direction frontale reflète le fait que les capteurs situés dans la partie
- 111 -
Section 4.2
Méthodes pour l’extraction du flot optique
2
1.8
1.6
1.4
Fi
F
i
1.2
rotation
Wi
Wi
Σ
1
0.8
Direction frontale
W0
(0 degree)
0.6
0.4
0.2
Capteur
Rotation estime
0
0
2
4
6
8
10
12
14
16
Figure 4-21. (a) Le robot est réduit à un oeil ”composé” de capteurs de flot optique Fi . Le mouvement
de translation est effectué vers la direction frontale, avant la rotation. Un seul neurone est utilisé pour
prédire la rotation. (b) Exemple de flot optique pour une vitesse de translation de 10 et une rotation de
0.000532 (avec 17 capteurs).
90
0.058291
120
60
0.038861
0.35
30
150
0.3
0.01943
0.25
180
0
0.2
0.15
210
0.1
330
0.05
240
0
0
50
100
150
200
300
270
250
Figure 4-22. (a) La courbe d’apprentissage. L’ordonnée représente la valeur absolue de l’erreur
d’estimation de l’angle de rotation. (b) La distribution des poids, dans une représentation polaire. La
direction frontale à 0.
avant du robot ont une plus grande influence sur le résultat que ceux situés vers l’arrière
du robot (voir figure 4-22(b)).
L’architecture complète du système, utilisé pendant l’apprentissage et pour les tests
est illustré dans la figure 4-23).
L’intérêt d’un tel système réside dans le fait qu’il peut résoudre plusieurs problèmes
en même temps. D’abord, le système permet la prédiction de la composante de rotation.
Deuxièmement, si pendant l’utilisation, il y a une différence entre la commande motrice
et la rotation perçue, alors la prochaine commande sera plus grande afin de supprimer
- 112 -
Chapitre 4
Perception du mouvement et flot optique
Détecteurs de flot optique
+
rotation aléatoire (commande)
F0
F1
W0
W1
Fi
FN
delay
Wi
WN
+
Σ
prédiction de
la rotation
-
Σ
commande effective
+
Σ
signal d’adaptation
Figure 4-23. Architecture du contrôleur LMS utilisé pour l’estimation de la composante de rotation du
flot optique.
l’erreur précédente (les frictions, par exemple). Si nous donnons l’ordre de tourner à
0 degrés, alors le robot avancera tout droit. Finalement, si le robot n’exécute pas de
rotations mais s’il perçoit une rotation créée par un autre objet qui se déplace dans son
espace de perception, alors il poursuivra cet objet. Ainsi, le comportement de suivi n’est
qu’un effet du principe d’homéostasie (annulation de l’effet des rotations) utilisé par notre
système.
- 113 -
Section 4.3
4.3
Du problème de suivi à la perception de mouvements par transparence
Du problème de suivi à la perception de mouvements par transparence
Dans la plupart des application de robotique mobile, le mouvement de translation du robot
vers l’avant (ou l’arrière) génère un flot optique semblable à celui illustré par l’image 4-2.
Mais si dans la scène visuelle il y a beaucoup d’objets à des profondeurs différentes, alors
l’estimation du mouvement propre devient trop imprécise (et il est par conséquent très
difficile de trouver le mouvement de la cible). Les résultats obtenus varient d’une méthode
à l’autre, mais en règle générale ils sont assez imprécis. Le flot optique que nous obtenons
est loin d’être parfait (voir image 4-24 et image 4-25 (a)).
Le flot optique pour une translation avant
20
40
60
80
100
120
140
20
40
60
80
100
120
140
160
180
Figure 4-24. Le flot optique obtenu pour une translation vers l’avant (le robot avance en ligne droite).
Certaines parties du flot sont clairement incohérentes avec le mouvement réel du robot (zones de flot
entourées).
Une des sources d’erreurs vient du fait que le flot optique ne peut pas être calculé en
tous les points de l’image avec la même précision (les objets ont des textures différentes).
Afin de réduire cet effet, nous pouvons réaliser une intégration temporelle du flot optique
- 114 -
Chapitre 4
Perception du mouvement et flot optique
et calculer un flot optique moyen. Ce flot optique moyen peut être soustrait partout dans
l’image en espérant que le résultat obtenu nous permettra d’isoler le flot produit par les
objets en mouvement. Cependant, le flot optique moyen est loin d’être parfait (voir figure
4-25 (b)). Cela est dù au fait que dans le cas de notre application de robotique mobile,
nous ne pouvons pas assurer un intervalle d’échantillonage constant à cause du système
d’exploitation Unix qui ne permet pas un contrôle total sur le séquencement d’exécution
des taches et il est donc difficile de régler la normalisation du flot optique moyen (pour
une utilisation plus intensive sur robot mobile du flot optique il faudrait donc utiliser un
système d’exploitation temps réel et/ou un circuit spécialisé dans le calcul de flot optique).
Le flot optique pour une translation avant (detail)
Le module
80
0.45
20
90
0.4
40
0.35
100
0.3
60
0.25
110
80
0.2
100
120
0.15
0.1
120
130
0.05
140
135
140
145
150
155
160
165
170
175
180
0
20
185
40
60
80
100
120
140
160
180
Figure 4-25. (a) Détail du flot optique calculé dans la figure 4-24. (b) Le module du flot optique moyen.
Nous observons la manque d’uniformité des valeurs.
La plupart des méthodes de calcul de flot optique supposent que l’on peut trouver une
valeur unique du flot en chaque point de l’image et qu’il suffit alors d’avoir une information
sur le mouvement du robot pour corriger le flot perçu et obtenir le flot lié aux seuls objets
en mouvement. Inversement, si la scène est trop statique, le flot peut directement donner
une information sur le mouvement réel et compléter l’odométrie. Malheureusement, nous
avons vu les résultats assez imprécis du calcul de flot optique. En plus, lorsque le sol est
brillant on perçoit des mouvements qui est à la fois lié au mouvement réel du robot et au
mouvements apparents des objets réfléchis sur le sol. Un problème similaire concerne les
zones passant d’un état caché à un état visible et inversement. Doit-on alors considérer
qu’elles sont liées au mouvement propre du robot ou au mouvement d’un objet? La
réponse est évidente : les deux. Alors pourquoi donc vouloir s’acharner à ne calculer
qu’une valeur unique de flot optique en chaque point de l’image?
De ce questionnement est apparu l’intérêt de travailler sur des méthodes de détection
du flot optique à la fois plus souples et plus robustes. Partant du postulat qu’en un point
de l’image nous pouvons ou plutôt nous devons être capables de percevoir plusieurs flots,
nous nous sommes demandé combien de flots pourraient être perçus de manière à la fois
cohérente et simultanée et quelles étaient les contraintes sur les directions qu’ils devraient
avoir pour pouvoir être séparés (notre idée étant qu’a priori 2 ou 3 autres flots devraient
être suffisants pour des problèmes de navigation courante [132]). Nous avons fait le lien
- 115 -
Section 4.3
Du problème de suivi à la perception de mouvements par transparence
entre notre postulat et la notion de mouvement par transparence, d’autant plus qu’en
psychophysique on l’utilise déjà. La notion de mouvement par transparence décrit des
phénomènes courants dans la vie (des objets translucides qui se déplacent, des poissons
dans l’eau, ...). Afin de trouver une solution au problème de séparation du mouvement
et vérifier notre postulat, nous avons mené quelques expériences de psychophysiques.
4.3.1
Expérience psychovisuelle
Cette expérience psychophysique a pour objectif de déterminer le nombre de plans de
mouvement qui peuvent être perçus et discriminés par le système visuel humain. Le moyen
d’investigation consiste à mesurer la précision de discrimination. Dans les différentes
expériences, nous faisons l’hypothèse que les mouvements sont composés de plusieurs
points qui se déplacent avec le même vecteur vitesse (même direction, même vitesse).
La perception qu’en ont les sujets est celle d’un plan transparent rigide qui se déplace
selon la même direction que celle des points. Dans nos expériences, chaque mouvement
correspond à une translation. Une expérience préliminaire nous a indiqué que le même
découpage en plans de mouvement est présent dans le cas de rotations.
4.3.1.1
Méthode
Sujets: Douze sujets naı̈fs ont participé à cette expérience. Les sujets sont âgés de 23 à
29 ans et ils ont une acuité visuelle normale ou corrigé à la normale. Les sujets n’ont pas
été rémunérés pour leur participation.
Appareils et stimuli: Les stimuli ont été présentés sur un moniteur en couleur, avec
une diagonale de 21 pouces, 1280x1024 pixels à 76 Hz avec 93 ppp. L’écran a été placé à
63 cm, en moyenne, du sujet ce qui revient a 31.48x25.42 degrés d’angle visuel.
Figure 4-26. Aperçu de l’écran d’expérimentation. Chaque point de l’écran est représenté ici avec son
vecteur de déplacement.
Nous avons présenté des points blancs (0.025 degré) sur un fond noir (voir figure 4-26)
dans un cercle centré sur l’écran (12.56 degré). La frontière du cercle n’apparaı̂t pas sur
l’écran. Afin de focaliser le regard sur un point fixe, une croix (toujours visible) a été
- 116 -
Chapitre 4
Perception du mouvement et flot optique
dessinée au milieu de l’écran. Chaque point a une vitesse constante de 0.83 degré/sec. La
direction du mouvement de chaque point est changée après chaque expérience. La densité
de points dans l’image est constante (1%). Les réponses ont été collectées par l’ordinateur
et interprétées ultérieurement.
Procédure: Nous mesurons le pourcentage de bonnes réponses avec une procédure de
choix forcé parmi 2 alternatives. A chaque essai, nous présentons 2 stimuli. Entre les 2
stimuli, nous présentons pendant 500 millisecondes une image blanche. Dans le premier
stimulus, nous présentons des points qui se déplacent dans N directions (N entre 1 et 4)
parmi 8 directions possibles (0o , 45o , 90o , 135o , 180o , 215o , 270o et 315o ). Les N directions
sont choisies aléatoirement. Le deuxième stimulus contient N + 1 ou N − 1 directions,
avec une probabilité de 50%. Chaque stimulus est présenté pendant 900 millisecondes.
Après la présentations des deux stimuli, on demande au sujet de déterminer dans laquelle
des deux présentations il y avait le plus de directions de mouvement. Le réponse, ainsi
que les deux stimuli sont enregistrés automatiquement. Une séance d’expérimentation
comporte 50 tests consécutifs.
Hypothèses opérationnelles: Nous nous attendons à ce que le taux d’erreur augmente
avec le nombre N de directions présentées et à ce que les performances pour N contre
N + 1 et N + 1 contre N soient les mêmes.
4.3.1.2
Résultats
Nous avons réalisé une analyse du taux d’erreur en fonction du nombre de directions de
mouvement entre les deux stimuli. Dans notre analyse nous avons fait la différence entre
les réponses pour des stimuli N contre N + 1 et N + 1 contre N .
La figure 4-27 illustre les résultats obtenus pour 12 de sujets. L’analyse du taux de
réussite nous révèle deux aspects importants : d’abord, à partir de plus de 3 mouvements,
le taux de réussite est en dessus de 50% (les réponses deviennent équiprobables ce qui
dénote le fait que le sujet choisit sa réponse aléatoirement) et ensuite les résultats pour
les cas N contre N + 1 et N + 1 contre N diffèrent à partir de la même limite (voir figure
4-27).
Pour nous rendre compte de l’influence du nombre des mouvements présentés en premier, nous donnons les résultats obtenus pour 2 sujets (voir figure 4-28). Nous constatons
que pour plus de 3 mouvements simultanés dans l’image, nous avons une différence entre
les 2 sujets pour le cas 3 contre 4 et le cas 4 contre 3.
La différence observée entre le cas 3 contre 4 et le cas 4 contre 3 ainsi que l’analyse des
résultats enregistrés, nous a fait penser au fait que, probablement, il existe un mécanisme
d’addition vectorielle des mouvement. Nous supposons que dans le cas où 2 directions de
mouvement sont proches et qu’il y a plus de 2 directions de mouvement dans la scène
visuelle, on peut observer une “composition” des directions perçues (voir figure 4-29).
- 117 -
Section 4.3
Du problème de suivi à la perception de mouvements par transparence
Taux de reussite
11
00
00
11
00
11
Moyenne
1
0
0
1
100 %
11
00
00
11
00
11
00
11
11
00
00
11
1
0
0
1
50 %
00
11
11
00
00
11
2 vs. 3
3 vs. 4
1 vs. 2
2 vs. 1
3 vs. 2
4 vs. 3
directions directions directions directions directions directions
1 vs. 2 = 124 essais 2 vs. 1 = 107 essais
2 vs. 3 = 113 essais 3 vs. 2 = 125 essais
3 vs. 4 = 126 essais 4 vs. 3 = 105 essais
Figure 4-27. Le taux de réussite en fonction du nombre de mouvements et de leur orientation. La
moyenne des résultats obtenus par 12 sujets naı̈fs.
4.3.1.3
Discussion
Les résultats de cette expérience confirment nos suppositions : nous pouvons percevoir,
d’une manière cohérente et simultanée, plusieurs mouvements cohérents en un même point
de l’image. Cependant, un sujet naı̈f ne réussit pas, en moyenne, à percevoir plus de 3
mouvements à la fois, mais cela est tout à fait suffisant pour des tâches de navigation
courante.
4.3.2
Un modèle neuronal pour la perception du mouvement
Les résultats de l’expérience décrite ci-dessus nous ont conduit à essayer de trouver un
modèle pour la perception du mouvement qui permette d’avoir plusieurs mouvements
dans le même point de l’image. Nous avons constitué la liste des “spécifications” de notre
modèle:
• il doit permettre l’existence de “plans de mouvement”, ce qui revient à la possibilité
d’avoir plusieurs mouvements au même point de l’image.
• à partir de quelques points (moins de 1%) il doit “construire” un “plan de mouvement” entier. Afin d’assurer la cohérence de la perception, il doit intégrer un
processus de diffusion.
• il ne doit pas permettre l’existence de directions de mouvement proches. Le modèle
doit intégrer aussi un processus d’inhibition.
- 118 -
Chapitre 4
Perception du mouvement et flot optique
RA
Taux de reusite
00
11
11
00
00
11
GP
1
0
0
1
100 %
00
11
11
00
00
11
00
11
11
00
00
11
11
00
00
11
00
11
11
00
00
11
00
11
50 %00
11
11
00
00
11
00
11
1 vs. 2
2 vs. 1
2 vs. 3
3 vs. 2
3 vs. 4
4 vs. 3
directions directions directions directions directions directions
GP
1 vs. 2 = 10 essais 2 vs. 1 = 7 essais
2 vs. 3 = 10 essais 3 vs. 2 = 5 essais
3 vs. 4 = 4 essais 4 vs. 3 = 14 essais
RA
1 vs. 2 = 11 essais 2 vs. 1 = 8 essais
2 vs. 3 = 10 essais 3 vs. 2 = 8 essais
3 vs. 4 = 9 essais 4 vs. 3 = 4 essais
Figure 4-28. Le taux de réussite en fonction du nombre de mouvements et de leur orientation. Résultats
obtenus pour 2 sujets naı̈fs.
Flots reels
Flots reels
Flots percus (1ere possibilite)
Flots percus (1ere possibilite)
Flots percus (2eme possibilite)
Flots percus (2eme possibilite)
Figure 4-29. Composition des mouvements en fonction de leur nombre et de leur orientation.
• il ne peut pas avoir plus de 3 plans de mouvement en même temps.
• le modèle doit être d’inspiration neurobiologique.
4.3.2.1
Architecture et équations
Dans le système visuel, la détection du mouvement est faite par des neurones dédiés. Les
neurones sont sensibles à une direction du mouvement particulière mais ils sont regroupés
dans des cartes neuronales. La choix d’organiser notre architecture en cartes de neurones
- 119 -
Section 4.3
Du problème de suivi à la perception de mouvements par transparence
est donc immédiat. Notre architecture est organisée sur 2 couches. Sur la couche d’entrée
nous avons placé les détecteurs du mouvement. Étant donné que le seuil de discrimination
entre la direction des 2 mouvements est situé entre 30 et 60 degré [34], nous utilisons dans
notre modèle des capteurs de mouvement orientes à 45o . Pour chaque pixel de l’image
d’entrée (“la rétine”), les détecteurs du mouvement fournissent 8 valeurs analogiques qui
représentent l’intensité du mouvement selon une orientation spatiale particulière (voir
figure 4-30). Les détecteurs du mouvement utilisent une méthode énergétique, basée sur
4 filtres de Gabor (voir section 4.2.5) (mais nous pouvons envisager d’utiliser d’autres
méthodes). Pour chaque pixel de l’image, les détecteurs fournissent une valeur selon les
orientations 0, 45, 90 et 135 degrés. Étant donné que chaque filtre détecte aussi le sens du
mouvement (positif ou négatif), nous obtenons une valeur positive (la seule biologiquement
plausible) selon 8 orientations.
Camera CCD
Image
Capteurs du mouvement
Figure 4-30. Après l’acquisition de l’image, le capteurs du mouvement fournissent l’intensité du mouvement selon 8 orientations.
Sur la deuxième couche, nous avons une populations de neurones formels (voir section
3.1.2). Sur cette couche, nous avons connecté directement un neurone à la sortie de
chaque capteur de mouvement. Ainsi, son activation sera proportionnelle à l’orientation
du mouvement en un point de l’image. L’organisation des neurones sur cette couche peut
être vue suivant 2 modes : en mode “pixel” où à chaque pixel de l’image correspondent 8
neurones groupés dans une constellation (figure 4-31 (a)), ou en mode “cartes” si nous la
regardons comme une superposition des 8 cartes de neurones, chaque carte groupant tous
les neurones qui sont sensibles à la même direction du mouvement (voir image 4-31 (b)).
Sur la deuxième couche nous avons des interconnexions entre les neurones voisins. Si
nous prenons le mode “pixel”, alors chaque neurone de la constellation inhibe l’activité de
ses 4 plus proches voisins (voir figure 4-31 (a)). Par exemple, le neurone correspondant à
l’orientation de 45o inhibera les neurones correspondants aux orientations 315o , 0o , 90o et
135o . En plus, si nous prenons le mode “cartes” alors chaque neurone de la carte excite
ses 8 plus proches voisins (au sens topographique, voir figure 4-32 (a)). Par exemple,
le neurone correspondant à l’orientation de 45o ayant les coordonnés (i, j), excite les
neurones correspondant à la même orientation ayant les coordonnées (i, j + 1), (i, j − 1),
- 120 -
Chapitre 4
Perception du mouvement et flot optique
plan 335
plan 45
plan 0
liaison inhibitrice
Figure 4-31. (a) La constellation des neurones associés à un pixel dans l’image. (b) Les 8 cartes
superposées.
(i + 1, j + 1), (i + 1, j), (i + 1, j − 1), (i − 1, j + 1), (i − 1, j) et (i − 1, j − 1).
(i,j)
liaison inhibitrice
00000
1111
11111liaison excitatrice
0000
liaison excitatrice
Figure 4-32. (a) Les connexions sur la même carte. (b) Aperçu général des connexions.
Dans la figure 4-32 (b) nous présentons un aperçu global des connexions. Chaque
neurone se trouvant sur la deuxième couche reçoit 13 entrées : une entrée excitatrice du
capteur de mouvement associé, 8 entrées excitatrices de ses voisins immédiat ayant la
même orientation et 4 entrées inhibitrices de ses voisins sur la constellation.
Les équations de mise à jour pour chaque neurone (i, j) sont les suivantes :
δPij (t)
= −A · Pij (t) + (B − Pij (t)) · Diffij + (C − Pij (t)) · Inhij
(24)
δt
avec Pij (t) son potentiel à l’instant t, Diffij l’activité due aux 8 entrées excitatrices de
Cij ·
- 121 -
Section 4.3
Du problème de suivi à la perception de mouvements par transparence
ses voisins avec la même orientation et au détecteur du mouvement Eij ,
Diffij = Eij +
X
wk · Pk (t − 1)
k∈V1
Inhij l’activité due à l’inhibition de 4 entrées inhibitrices de ses voisins sur la constellation,
Inhij =
X
vk · Pk (t − 1)
k∈V2
et avec A, B, C constantes. Les équations différentielles ont été résolues comme pour
les champs neuronaux moteurs avec un algorithme Runge Kutta d’ordre 4.
4.3.2.2
Étude de la stabilité
Afin de vérifier les propriétés du modèle, nous avons d’abord testé la capacité de diffusion
spatiale d’une information de mouvement dans l’image de flot. Nous avons activé un
neurone sur la couche d’entrée, ce qui revient à la détection d’un mouvement dans une
seule direction et pour un seul pixel (voir figure 4-33 (a)), et nous avons regardé l’évolution
temporelle sur la couche de sortie (voir figure 4-34 (a) et (b)).
(i,j)
(i,j)
Figure 4-33. (a) Les capteurs de mouvement détectent un mouvement dans une seule direction dans un
seul pixel. (b) La diffusion permet la formation d’un plan de mouvement.
L’analyse des résultats obtenus nous permet de constater la présence du phénomène
de diffusion, ce qui revient à la formation d’un plan de mouvement (voir figure 4-33 (b))
c’est-à-dire la perception d’un mouvement cohérent.
Ensuite, nous avons testé les propriétés de compétition de notre modèle. Pour cela,
nous avons excité 3 neurones, chaque neurone sur une carte d’orientation différente, ce
qui revient à détecter 3 mouvements différents dans l’image (voir figure 4-35 (a)).
Nous avons regardé l’évolution temporelle qui est illustré par la figure 4-36 (a) et
(b). La compétition et la diffusion permettent la formation de 3 plans de mouvements
différents.
Par la suite, nous nous sommes intéressés aux propriétés de convergence vers une solution “stable” de notre système. Nous avons activé la totalité des capteurs de mouvement,
pour toute l’image. Ainsi, nous avons présenté du bruit à l’entrée de notre modèle (les
capteurs détectaient des mouvements dans toutes les directions, sans aucune direction
- 122 -
Chapitre 4
Perception du mouvement et flot optique
Sortie 0 o (1250)
Sortie 0 o (5000)
200
180
180
160
160
140
140
120
120
100
100
80
80
60
60
40
40
20
20
0
0
Figure 4-34. Le résultat de la diffusion après (a) 1250 itérations et (b) 5000 itérations.
Figure 4-35. (a) Les capteurs de mouvement détectent des mouvements selon 3 direction. (b) La
compétition (et la diffusion) permet la formation de 3 plans de mouvement différents.
Sortie 0 o (1250)
Sortie 90 o (1250)
Sortie 135 o (1250)
140
180
180
160
160
140
140
120
120
100
100
80
80
60
60
40
40
20
20
0
0
120
100
80
60
40
20
Sortie 0 o (5000)
Sortie 90 o (5000)
0
Sortie 135 o (5000)
200
200
180
180
160
160
140
140
120
120
100
100
80
80
60
60
40
40
20
20
20
0
0
0
180
160
140
120
100
80
60
40
Figure 4-36. Les résultats de la compétition sur les plans 0o (à gauche), 90o (au centre) et 135o (à droite)
après 1250 itérations (en haut) et 5000 itérations (en bas) à partir des informations de mouvement initiées
sur la figure 4-35.
préférentielle et avec des intensités de mouvement aléatoirement choisies). Un exemple
d’entrées est illustré par la figure 4-37.
Après un certain nombre d’itérations, le système a convergé vers une situation stable
- 123 -
Section 4.3
Du problème de suivi à la perception de mouvements par transparence
o
Entrée 45
o
Entrée 225
Entrée 0
Entrée 180
o
Entrée 90
o
o
Entrée 270
o
o
Entrée 135
Entrée 315o
Figure 4-37. Les entrées du système; chaque carte contient que du bruit. En haut, les plans 0o , 45o ,
90o et 135o . En bas, les plans 180o , 225o , 270o et 315o .
(voir figure 4-38). Nous pouvons observer la création de régions compactes sur chaque
carte. Une région correspond à la perception d’un mouvement particulier dans une zone
de la scène visuelle. L’orientation du mouvement perçu est celle de la carte où s’est
formé la région. On observe que les régions sont exclusives : si l’on prend un point dont
les coordonnées sont (x, y), on peut trouver au maximum 3 cartes dont l’activité des
neurones à la position (x, y) est supérieure à zéro.
Sortie 0
o
Sortie 45
o
Sortie 225
Sortie 180
o
Sortie 90
o
Sortie 270
o
o
Sortie 135
o
Sortie 315 o
Figure 4-38. L’activité sur les 8 plans de mouvements, après 5000 itérations. En haut, les plans 0o , 45o ,
90o et 135o . En bas, les plans 180o , 225o , 270o et 315o .
- 124 -
Chapitre 4
Perception du mouvement et flot optique
Enfin, un dernier test a mis en valeur les propriétés dynamiques du système. Nous
avons présenté du “bruit” de la même manière que pour l’expérience antérieure, mais à
des intervalles de temps fixés, nous avons présenté dans n% des points de l’image un flot
qui correspondent à une direction préférentielle (0o ). Nous avons fait varier la proportion
du mouvement “orienté” de 0% jusqu’au 100%. A chaque instant, nous avons calculé le
pourcentage de neurones actifs sur le plan 0o par rapport au nombre total des neurones.
Ensuite, nous avons faire décroı̂tre le pourcentage du mouvement orienté de 100% à 0%.
Les données enregistrées ont mis en évidence l’existence d’un phénomène d’hystérésis (voir
figure 4-39). Ces résultats montrent que le système a tendance à rester globalement dans
un état attracteur malgré l’augmentation du bruit augmente. Les mêmes effets ont étés
observés dans le cas de la simulation de la perception du mouvement avec des champs
dynamiques [77].
1
0
0
0
1
0
0
01
1
01
1
01
0
01
1
01
1
01
1
0
0
1
Pourcentage du mouvement orienté
100
50
variation du bruit de 0% a 100%
vatiation du bruit de 100% a 0%
1
0
1
0
0
1
11111111111111111
00000000000000000
0
50
100
Poucentage du "bruit"
Figure 4-39. L’existence d’un phénomène d’hystérésis de perception.
La difficulté majeure de ce modèle réside dans le réglage de paramètres du modèle
(voir l’équation (24)). De même, la complexité calculatoire due au calcul des équations
différentielles est importante : pour une image de 192x144 il faut quelques minutes pour
une itération! Ces deux arguments nous ont déterminé à laisser de coté l’intégration de
ce modèle dans notre architecture. Par contre, le même mécanisme a été utilisé pour la
segmentation de textures [89].
- 125 -
Section 4.4
4.4
Du problème de suivi à la perception de mouvements par transparence
Conclusion
Chaque fois que l’on s’intéresse à une architecture de contrôle pour des robots autonomes
qui utilisent la vision et le mouvement comme source d’information, nous sommes amenés
à nous intéresser au flot optique. Nous n’échappons pas à ce “passage obligé” de l’étude du
flot optique. Ainsi, dans ce chapitre nous nous sommes intéressés à la possibilité d’utiliser
le flot optique dans des applications de robotique mobile. Nous avons testé plusieurs
méthodes de calcul de flot optique et dans le tableau 2 nous présentons un résumé de nos
résultats :
Méthode
Différence d’images
Reichardt
Temps
< 20ms
–
Mise en
correspondance
69ms
Énergétiques
filtre de Gabor
2038ms
Énergétiques
filtrage rétinien
260ms
Observations
Rapide, mais sans donner le sens du mouvement.
Utilisable uniquement pour des contours.
Le calcul a été effectue uniquement dans les points
qui ont beaucoup changé de luminance. Très
imprécise pour les petits mouvements mais assez
précise pour les grands mouvements. Très lente
si on calcule le mouvement pour tous les points.
Le calcul est effectué pour tous les points de
l’image. Très adaptée pour les modèles qui
nécessitent l’existence de plusieurs mouvements
en un même point. Très lente.
Le calcul est effectué dans tous les points de
l’image. Rapide.
Tableau 2. Synthèse de résultats obtenus pour la mesure du flot optique.
La méthode d’extraction du flot optique qui utilise un filtrage rétinien nous semble
celle qui est la plus appropriée pour les applications de robotique mobile. Elle peut être
facilement implanté en hardware (une rétine de 20x20 pixel existe déjà [188]). Elle fournit
un réponse dans chaque point de l’image et elle est assez rapide pour une intégration dans
une architecture embarque.
Les résultats obtenus montrent que si le flot optique fournit beaucoup d’information,
il est difficile de calculer un flot optique correct et pertinent et de bien trouver le flot
optique généré par les objets en mouvement. Cependant, nous sommes convaincus qu’il
faudra développer un mécanisme qui permette la séparation du mouvement propre du
mouvement généré par les autres objets en mouvement. Nous avons démontré qu’il s’agit
d’un vrai problème qui doit surmonter les obstacles énoncés et que forcément ce modèle
doit permettre de tolérer plusieurs mouvements en un même point de l’image.
Le modèle de perception du mouvement par transparence montre le caractère très
générique des techniques utilisant des champs neuronaux dynamiques. En effet c’est
globalement le même type d’équation qui a été utilisé pour le contrôle moteur et la per- 126 -
Chapitre 4
Perception du mouvement et flot optique
ception du mouvement. Une extension à la perception des textures a même été réalisée
à partir du même modèle montrant l’importance des propriétés dynamiques pour la perception et le contrôle moteur de systèmes réels [89]. Ce type de caractéristique dont on
comprend bien l’utilité (stabilité de la réponse, hystérésis de la prise de décision, capacité
de bifurcation rapide) semblent être au coeur de nos processus cognitifs comme le montre
l’exemple suivant :
Figure 4-40. Séquence de 17 images. La “perception” se déplace de l’image 1 visage à l’image 17
statuette.
Pour mettre en évidence l’aspect fortement dynamique des processus de perception
(et sa propriété d’hystérésis) il faut regarder les images illustrées par la figure 4-40.
D’abord, commençant avec l’image 1 jusqu’à l’image 17, ensuite commençant avec l’image
17 jusqu’à l’image 1. Chaque fois on note le numéro de l’image pour lequel notre perception a basculé. Si on représente notre perception de l’objet en fonction des images
, on trouvera un graphique proche le celui illustré par la figure 4-41 montrant bien que
statuette
visage
1
17
Figure 4-41. Hystérésis de la perception.
l’interprétation d’une image dépend du passé (contexte) et renforçant l’idée que la perception est fondamentalement ambiguë et que les boucles Perception/Action sont nécessaires
pour lever cette ambiguı̈té.
- 127 -
Section 4.4
Du problème de suivi à la perception de mouvements par transparence
- 128 -
Chapitre 5
Apprentissage de séquences
temporelles
On ne peut comprendre un processus en l’interrompant.
La comprehension doit rejoindre le cheminement du processus et cheminer avec lui.
F. Herbet – Dune
L’objectif de ce chapitre est de présenter un modèle neuronal permettant
l’apprentissage de séquences temporelles qui sera au centre de notre architecture
d’apprentissage par imitation. Dans un premier temps, nous présentons un aperçu
de modèles d’apprentissage de séquences en remarquant leur grande diversité :
mathématiques, d’inspiration neurobiologique, de psychologie auditive, ... La deuxième
partie de ce chapitre est consacrée à la présentation de notre modèle d’apprentissage de
séquences. Il s’agit d’un modèle basé sur une modélisation simplifiée de l’hippocampe.
Nous présentons les modèles de neurones formels utilisés. Nous continuons avec la
présentation des résultats obtenus pour l’apprentissage du timing et avec une analyse des
performances de notre modèle en fonctions de ses paramètres et ses connexions. Enfin,
la dernière partie est consacrée au développement d’une architecture pour l’apprentissage
de séquences et à la présentation des résultats obtenus pour l’apprentissage de séquences
simples.
129
Section 5.1
5.1
Modèles pour l’apprentissage de séquences temporelles
Modèles pour l’apprentissage de séquences temporelles
Dans ce paragraphe, nous présentons l’état de l’art dans l’apprentissage des séquences.
D’abord, nous proposons quelques définitions des termes employés. Nous insistons sur la
différence entre le problème de l’apprentissage d’une séquence et d’un timing. Ensuite,
nous présentons les modèles algorithmiques (mathématiques) basés sur la construction
d’un graphe. Nous continuons avec la présentation de modèles d’inspiration neurobiologique. Nous introduisons le modèle de Grossberg et Merrill [83] pour l’apprentissage
d’un intervalle temporel en utilisant un mécanisme de conditionnement. Nous présentons
le modèle proposé par Reiss et Taylor [157] qui permet un apprentissage rapide. Enfin,
nous présentons le modèle de Levy [120] basé sur un réseau asymétrique très dense. Finalement, nous présentons les modèles les plus utilisés dans l’audition : le modèle d’horloges
internes basé sur le comptage d’impulsions et le modèle de la perception du rythme basé
sur l’existence de plusieurs oscillateurs internes.
5.1.1
Définitions
Au cours de ce chapitre nous utiliserons beaucoup le terme de séquence. Afin d’éviter toute
confusion, voici la définition que nous donnerons à ce terme. Nous définissons une séquence
simple comme étant une répétition d’éléments (états du système ou symboles) distincts.
L’élément suivant d’une séquence simple se déduit de la connaissance de l’élément courant
(il n’est pas nécessaire d’avoir une mémoire). La séquence S1 constitue un exemple de
séquence simple :
S1 : A, B, . . . , N, A, B, . . .
(1)
Dans une séquence complexe, l’élément suivant ne peut pas être déduit uniquement à
partir de l’élément courant. La séquence S2 constitue un exemple de séquence complexe :
S2 : A, B, C, A, D, A, B, C, A, D, A, . . .
(2)
Les éléments B et D peuvent suivre l’élément A. Afin de trouver lequel des deux suit
l’élément A, nous devons avoir accès à un “historique récent” et par conséquent il faut une
mémoire. Par ailleurs, nous pouvons décomposer une séquence complexe en une séquence
simple d’éléments composés. Pour la séquence S2 (équation (2)), nous avons :
S2 : CC, DD, CC, DD, CC, . . .
avec CC = A, B, C et DD = A, D.
Quand nous utilisons l’expression séquence temporelle, nous associons à chaque élément
de la séquence un temps d’existence. Pour la séquence S1 (équation (1)), nous avons :
St : A(t0 ,t1 ) , B(t1 ,t2 ) , . . . N(tN ,tN +1 ) , A(T +t0 ,T +t1 ) , B(T +t1 ,T +t2 ) , . . .
- 130 -
(3)
Chapitre 5
Apprentissage de séquences temporelles
Ainsi, nous pouvons caractériser une séquence temporelle par une série de doublets
(élément, instant activation) où l′ instant activation est le temps entre une origine arbitraire et l’apparition de l’élément courant (couramment nous utilisons comme origine
l’apparition du premier élément). La séquence St (équation (3)) devient ainsi :
St : (A, t1 ) , (B, t2 ), . . . (N, tN ), (A, T + t1 ), (B, T + t2 ), . . .
(4)
Graphiquement, nous représentons une séquence comme une fonction : élément =
f (temps) (voir figure 5-1).
élélements
N
C
B
A
t1
t2
t3
tN
temps
Figure 5-1. Représentation graphique d’une séquence temporelle.
Nous pouvons “lire” la séquence St (équation (4)) de cette manière :
“A l’instant t1 , le système est dans l’état A, à l’instant t2 , le système est dans
l’état B, etc ...”
La série des instants t0 , t1 , . . . tN est nommée, par abus de langage, le timing de la
séquence. Elle met l’accent sur le changement d’état du système (apparition d’un nouvel
élément) plutôt que sur l’état même du système. De ce point de vue, on peut voir une
séquence d’éléments comme une séquence de transitions entre les états. Dans ce cas, la
séquence St (équation (4)) peut se “lire” ainsi :
“A l’instant t1 , le système passe de l’état A à l’état B, à l’instant t2 , le système
passe de l’état B à l’état C, etc ...”
Nous utilisons l’expression jouer une séquence quand, en partant d’un élément d’une
séquence nous arrivons à retrouver toute la séquence. Dans le cas d’une séquence complexe, en plus de l’élément courant, nous utilisons l’historique récent des éléments.
En cherchant de trouver une loi psychophysique générale, la plupart des psychologues
ont identifié une loi appelée loi de Weber. Elle stipule que :
“La sensibilité décroı̂t proportionnellement à l’intensité du stimulus.”
- 131 -
Section 5.1
Modèles pour l’apprentissage de séquences temporelles
Mathématiquement, la loi de Weber s’écrit :
δI
= constante.
I
avec I l’intensité d’une stimulation, et δI la variation d’intensité de cette stimulation.
Tous les modèles d’apprentissage de séquences vérifient si leur résultats sont en accord la
loi de Weber, donc nous la présentons ici.
5.1.2
Modélisation mathématique d’une séquence temporelle
En mathématiques et automatique, le modèle le plus utilisé pour représenter une séquence
est celui des automates finis [127]. Un automate fini est un quintuplé :
A = (X, Q, δ, q0 , Q′)
avec X un alphabet, Q l’ensemble fini d’états, q0 ∈ Q l’état initial, Q′ ∈ Q l’ensemble des
états finaux et δ : Q × X 7→ Q est la fonction de transition. Graphiquement, un état q
est illustré par la figure 5-2 (a). Une transition a de l’état q à l’état p est noté p = δ (q, a)
et elle est illustrée par la figure 5-2 (b).
a
q
q
p
Figure 5-2. (a) Représentation de l’état q. (b) Représentation de la transition a de l’état q à l’état p.
Prenons, par exemple, la séquence : A,B,C,A,B,A,B,C,A,B,A,... Nous avons 3 états,
A, B et C et 4 transitions : ab, bc, ca, ba. Afin de représenter la possibilité de rester dans
le même état, le modèle utilise les transitions aa,bb et cc. La séquence est illustré par la
figure 5-3.
L’apprentissage d’une séquence revient à trouver le graphe de transitions. Le modèle
des automates finis est un puissant outil d’analyse et de formalisation. Cependant, il a
deux inconvenants : le nombre d’états doit être connu à l’avance et l’aspect temporel n’est
pas représenté. L’utilisation de ce modèle suppose l’existence d’un mécanisme infaillible
de perception de la réalité physique afin d’avoir les états corrects, ce qui n’est pas facile
à réaliser.
5.1.3
Les modèles utilisés dans l’audition
La perception de la durée des intervalles intéresse depuis toujours les psychologues. Dans
la littérature scientifique, nous trouvons plusieurs modèles de perception de la durée des
intervalles. Nous présentons ici les modèles les plus utilisés dans l’audition : le modèle
d’horloges internes basé sur le comptage d’impulsions et le modèle de la perception du
- 132 -
Chapitre 5
Apprentissage de séquences temporelles
ab
aa
A
ba
bb
B
bc
ca
C
cc
Figure 5-3. Représentation de la séquence A,B,C,A,B,A,B,C,A,B,A,...
rythme basé sur l’existence de plusieurs oscillateurs internes. Il existe évidemment bien
d’autres modèles proches de ceux que nous allons présenter comme par exemple celui de
Changeux et Dehaene [50] basé sur la notion de triade synaptique.
5.1.3.1
Les modèles d’horloges internes
Tous ces modèles postulent que l’estimation de la durée des intervalles est basée sur le
comptage des impulsions émises par un ou plusieurs “processeurs” centraux. Le modèle
le plus connu est celui de Treisman. Dans son modèle original [191] un mécanisme interne
génère des impulsions à un rythme régulier avec un intervalle constant. L’environnement
peut influencer le niveau d’activation : plus les stimulations externes sont élevées, plus
le mécanisme interne (le pacemaker) augmente son taux d’émission d’impulsions. Un
compteur enregistre le nombre d’impulsions et stocke le résultat de ses enregistrements
dans une mémoire à court terme afin de l’utiliser comme critère de réponse par la suite
(voir figure 5-4).
Dans [190], le modèle de Treisman a été amélioré par une organisation plus complexe
du générateur d’impulsions. Dans cette nouvelle version du modèle, la fréquence du
pacemaker peut être modifiée à l’aide de calibrateurs. Le pacemaker est composé d’un oscillateur temporel émettant des battements à une fréquence fixe (fo = T10 ) non affectée par
l’environnement et une unité de calibration (U c) qui traite les impulsions de (To ) et dont
la sortie a une fréquence fp modulée par l’environnement (voir figure 5-5). Une situation
de danger, par exemple, va provoquer une accélération des battements par l’intermédiaire
de l’U c.
La sortie de l’unité de calibration fp = Fu c (fo ) est alors transmise aux mécanismes de
traitement temporel. L’oscillateur temporel To est constitué par un ensemble de neurones
interconnectés à travers des liaisons excitatrices ou inhibitrices.
La modélisation de Treisman montre que si des stimuli suffisamment intenses sont
présents dans l’environnement à une fréquence proche de fo , alors on peut s’attendre
- 133 -
Section 5.1
Modèles pour l’apprentissage de séquences temporelles
Environnement
Pacemaker
To
Comparateur
Compteur
Réponse
Mémoire
Figure 5-4. Modèle de l’horloge interne selon Treisman [191].
neurones
fo
Unité de
calibration
fp
Environnement
Figure 5-5. Aperçu du modèle de l’horloge interne de Treisman.
à des perturbations du mécanisme de jugement des durées. Selon Treisman, la mise en
évidence des perturbations (des interférences entre l’oscillateur interne et l’environnement)
peut être utilisée pour déterminer la fréquence de l’oscillateur. La mise en évidence de
telles interférences, qui sont une confirmation qu’un oscillateur non-linéaire est impliqué
dans la perception du temps, ont été utilisées pour montrer que la fréquence propre du
mécanisme est proche de 12Hz (soit une période de 83ms). Si l’on suppose un délai de
transmission de l’ordre de 20ms par relais synaptique, alors le circuit neuronal générant
la fréquence fondamentale doit avoir environ 4 synapses (voir figure 5-5).
5.1.3.2
Le modèle de la perception du rythme
Les modèles de la perception du rythme supposent l’existence de plusieurs oscillateurs
internes qui émettent à des fréquences différentes. Ces modèles supposent aussi que
la simulation présentée à l’entrée est traitée par l’oscillateur dont la fréquence est la
plus appropriée. Le modèle le plus connu est celui de Povel et Essens [152, 60] qui
repose sur l’hypothèse que la majorité des fréquences internes sont disposées selon une
- 134 -
Chapitre 5
Apprentissage de séquences temporelles
structure hiérarchique. Comme notre système perceptif fonctionne également de manière
hiérarchique, la perception du rythme se fait autour d’une régularité à laquelle on peut
ajouter des sous-multiples binaires. Par exemple, on peut supposer que la perception est
faite autour d’une fréquence de 100Hz et ses sous-multiples binaires : 50, 25, 12Hz.
Le modèle postule que la première étape de traitement des séquences temporelles
consiste en la segmentation de la séquence présentée en un nombre d’intervalles égaux.
Lorsqu’une séquence est présentée à l’entrée, les oscillateurs internes se mettent à osciller.
Toutefois, en suivant le principe de minimisation de l’énergie dépensée, l’oscillateur dont
la fréquence est la plus proche de celle de la séquence d’entrée sera sélectionné. Cette
sélection est faite par des mécanismes de détection de disparité. Dans un deuxième temps,
des intervalles plus courts sont insérés comme une subdivision de cet intervalle de base.
Une séquence sera alors perçue comme une structure hiérarchique à deux niveau : une
fréquence de base et des multiples de cette fréquence.
Dans les taches de reproduction de séquences, les séquences rythmiques correspondant
à l’oscillateur sélectionné dans la première étape (les événements surviennent au même
moment que les pulsations de l’oscillateur) sont reproduites avec plus de facilité que les
autres types de séquences où les événements surviennent entre les pulsations.
Malgré sa richesse, le modèle de Povel reste très ambigu sur le fonctionnement des
extracteurs de rythme en temps réel (le modèle présenté [60] détermine la fréquence
adéquate en inspectant la séquence entière où une grande partie de celle-ci).
5.1.4
Les modèles d’inspiration neurobiologiques
Des lésions de l’hippocampe empêchent les patients d’apprendre de nouvelles séquences
[61, 173]. Par contre, ils conservent la capacité d’utiliser celles déjà apprises. Ceci fait
penser que l’hippocampe est une mémoire temporaire dont le contenu est périodiquement
transféré dans le cortex cérébral (une présentation neurobiologique plus détaillée de
l’hippocampe est faite dans la section 3.2.3). N. Rongier développe ainsi un modèle
de mémoire associant respectivement l’hippocampe à la mémoire déclarative et le cortex
à la mémoire procédurale [165].
5.1.4.1
Le modèle de Reiss et Taylor
Le modèle proposé par Reiss et Taylor [157] est un des premiers modèles dans lequel
une séquence temporelle est apprise directement (sans subir une transformation “spatiale” dans un vecteur et par la suite apprise). Le modèle s’appuie sur une modélisation
biologiquement plausible de l’hippocampe et permet un apprentissage assez rapide. Le
modèle a une capacité de stockage très grande et il est capable de rejouer une séquence
simple. Le principe du modèle consiste à créer un historique de la séquence et à utiliser
une loi de type Hebb pour apprendre la corrélation entre cet historique et l’élément présent
à l’entrée.
Le modèle est composé de 3 groupes (cartes de neurones) avec des fonctionnements
distincts (voir figure 5-6). Le groupe IN est le groupe d’entrée. Il n’effectue pas des
- 135 -
Section 5.1
Modèles pour l’apprentissage de séquences temporelles
modifications sur le signal d’entrée. Le groupe d’entrée est connecté au groupe L avec des
liens de 1 vers 1, non modifiables.
Entrée
IN
L
M
Liens de 1 vers 1
Liens de 1 vers tous
Figure 5-6. Schéma du modèle de Reiss et Taylor.
d’intégrateurs et M-la mémoire.
IN-le groupe d’entrée/sortie, L-le groupe
Le groupe L est constitué d’intégrateurs temporels de type integrateurs à fuite (leaky
integrators). Le groupe L est totalement connecté, avec des liens de un vers tous modifiables, au groupe M. Les groupes IN et M sont connectés avec des liens de un vers un, non
modifiables. Le flot d’informations entre IN et M dépend de l’état du système : apprentissage ou utilisation. Si le système est dans la phase d’apprentissage, alors les informations
circulent de IN vers M; le groupe M contient une copie de l’entrée. Si le système est dans
la phase d’utilisation alors l’information passe du M vers IN; le groupe M étant copié dans
le groupe IN.
Les éléments utilisés pour apprendre l’aspect temporel sont des neurones d’intégration
temporelle (leaky integrator). Les auteurs utilisent un modèle plus complexe, CLI (channel leaky integrator). La fonction d’activation d’un neurone CLI, A(t), est donnée par les
équations suivantes :
C1 (t + 1) = (1 − d1 ) · C1 (t) + a1 · I(t)
C2 (t + 1) = (1 − d2 ) · C2 (t) + a1 · C1 (t)
A(t + 1) = (1 − d) · A(t) + a · C2 (t)
(5)
Avec I(t) est le signal d’entrée, a, a1 , a2 , d, d1 , d2 constantes. La sortie est Y (t) = H(A(t)−
0.5), avec H la fonction de Heaviside. Pour un signal d’entrée de type échelon, la réponse
d’un neurone d’intégration temporelle est présentée dans la figure 5-7. L’activation de
- 136 -
Chapitre 5
Apprentissage de séquences temporelles
chaque neurone est caractérisée par une montée et une descente dont les paramètres sont
déterminés par les constantes a, a1 , a2 , d, d1 , d2.
La fonction d’activation d’un neurone CLI
1.5
I(t)
A(t)
Y(t)
← A(t)
← I(t)
activation
1
← Y(t)
0.5
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
temps (s)
Figure 5-7. Activation d’un neurone CLI pour d = 0.07, d1 = d2 = 0.4, a = 0.25 et a1 = a2 = 0.4 (voir
les équations 5). I(t) est le signal d’entrée, Y (t) est la sortie.
Les neurones du groupe M sont des neurones formels. Seuls les poids entre L et M sont
modifiables selon la loi d’apprentissage suivante :
∆Wij (n + 1) = α · (INi (n + 1) − Mi (n)) · Lj (n)
(6)
Avec INi (n) l’entrée à l’instant n du i-ème neurone du groupe M, Mi (n) et Lj (n)
les sorties du neurone i (respectivement j) du groupe M (respectivement L). Dans la
phase d’apprentissage, une séquence est présentée à l’entrée du groupe IN. Le groupe L
contiendra une “histoire” récente des éléments de la séquence. Le groupe M modifiera
les poids des liens entre M et L afin de “coder” la représentation de L. Il faut souligner
que pendant la phase d’apprentissage, l’activité du groupe IN est transmise au groupe M
comme un signal d’apprentissage et non comme une entrée.
Dans la phase d’utilisation, les liens entre IN et M sont inversés. L’activation d’un neurone dans le groupe L déterminera l’activation d’un neurone du groupe M qui déterminera
l’activation immédiate du neurone correspondant dans le groupe IN, lequel déterminera
l’activation d’un autre neurone du groupe L. De ce fait, toute la séquence sera régénérée
par le groupe IN.
Selon les auteurs, le groupe IN correspond au cortex entorhinal (EC), le groupe M
au Corne d’Ammon (CA) et le groupe L au Gyrus Dentelé (DG). Le problème principal
de ce modèle consiste dans le passage de la phase d’apprentissage à celle d’utilisation.
ce passage n’est pas décrit par les auteurs. Par ailleurs, les résultats montrés en [157]
sont obtenus pour des séquences dont l’intervalle entre 2 éléments est constant sans une
généralisation à de cas plus complexes.
- 137 -
Section 5.1
5.1.4.2
Modèles pour l’apprentissage de séquences temporelles
Le modèle de Grossberg, Schmajuk et Merrill
Le modèle proposé par Grossberg et ses collaborateurs en [85, 82] et couramment nommée
Spectral Timming Model) représente une modélisation du cervelet. Il est utilisé pour
expliquer l’apprentissage d’un intervalle temporel au travers du mécanisme de conditionnement 1 du réflexe palpébral du lapin (Nictitating Membrane Reponse). Le réflexe
utilisé est le clignement de l’oeil provoqué par une stimulation de la cornée. Il y a deux
événements majeurs qui contrôlent l’expérience : le stimulus conditionnel (SC - un signal
sonore) et le stimuli inconditionnel (SI - un jet d’air sur la cornée). Le SC est une stimulus sensoriel qui au début ne possède pas les propriétés de renforcement du SI, mais qui
acquiert (une partie de) cette propriété par une mise en correspondance entre SC et SI
pendant l’apprentissage. Après apprentissage, le lapin cligne de l’oeil dès qu’il entend le
son.
X1
Y1
X2
Y2
Z1
Z2
I SC
R
Xn
Yn
Zn
I SI
Figure 5-8. Aperçu du modèle de Grossberg et Merril. ISC -stimulus conditionnel, Xi -cellules
Dans ce modèle (voir figure 5-8), le SC active une population (ou batterie) de cellules
qui s’activent avec des constantes de temps différentes. La taille des cellules détermine un
étalement temporel et/ou spatial de l’activité des cellules2 . Le SC est simulé par la fonction ISC (t) qui est une fonction échelon dont l’amplitude est directement proportionelle
à l’intensité du SC et qui reste active un certain temps. Les cellules Xi sont activées par
ISC . Le potentiel des cellules Xi est donné par l’équation (7) :
dXi
= αi · [−AXi + (1 − Bx ) · ISC (t)]
dt
1
(7)
Grossberg et Merrill ont proposé aussi un modèle basé sur ART qui permettrait de rendre compte de
la majorité des expériences de conditionnement [83]. En particulier, ce modèle expliquerait les interactions
entre l’hippocampe et le cervelet et, d’un point de vue fonctionnel, l’architecture proposée est cohérente.
2
Cette correspondance entre la taille et le taux d’activation d’une cellule a été mis en évidence dans
les cellules granulaires du cervelet.
- 138 -
Chapitre 5
Apprentissage de séquences temporelles
La sortie de cellules Xi est
Xin
.
β b + Xin
et elle active le neurotransmetteur Yi selon l’équation suivante :
f (Xi ) =
dYi
= C (1 − Yi ) − D · f (Xi ) · Yi
(8)
dt
Le terme Zi représente des cellules qui modélisent une mémoire à long terme. Elles
sont activées par les cellules Xi via les neurotransmetteurs selon l’équation :
dZi
= E · f (Xi ) · Yi · [−Zi + ISI (t)]
dt
C’est dans ces cellules qu’on apprend l’intervalle interstimulis (ISI).
La réponse R du système est obtenue par l’équation suivante :
R=δ
"
X
f (Xi ) · Yi · Zi − F
i
#
(9)
(10)
avec A, B, C, D, E, F constantes et δ la fonction échelon.
Le modèle utilise 100 cellules Xi pour apprendre un intervalle d’une seconde, mais
il arrive à mémoriser la forme analogique (au moins une correspondance directe) de la
réponse conditionnelle (RC). L’intervalle SC-RC (ISI) est bien reproduit, mais les auteurs
ne parlent pas de la prédiction de l’ISI. En plus, les résultats obtenus vérifient la loi de
Weber.
5.1.4.3
Le modèle de Levy
Le modèle proposé par Levy et ses collaborateurs [153, 120] est un modèle inspiré du
fonctionnement de l’hippocampe et du modèle de Reiss dont il reprend quelques caractéristiques. Il est basé sur l’idée que la création de l’historique des éléments de la
séquence peut être réalisé en utilisant une connectivité récurrente, aléatoire mais très
dense (un modèle de réseau asymétrique). Des liens inhibiteurs sont utilisés pour contrôler
le timing.
Dans ce modèle, on peut distinguer 3 groupes (voir figure 5-9) : un groupe d’entrée (IN),
un “codeur” de la séquence (CA3) et un “decodeur” (CA1). La partie la plus intéressante
du modèle est le groupe CA3 qui a des liens récurrents ainsi qu’une inhibition (générique).
Les liens de IN vers CA1 (flèche b dans la figure 5-9) sont des liens de 1 vers 1. Ainsi,
chaque neurone du groupe CA1 est directement relié à un neurone d’entrée. Les liens
entre IN et CA3 sont de type 1 vers 2 (flèche v dans la figure 5-9). Les poids de ces liens
sont très forts : une activation d’un neurone d’IN détermine l’activation de 2 neurones
CA3 avec lesquels il est connecté. Ainsi, environ la moitié des neurones de CA3 peut être
directement activée par IN. Le groupe CA3 possède des liens récurrents (flèche w dans
la figure 5-9) : chaque neurone de CA3 est connecté aléatoirement à 5% de neurones de
CA3. Le groupe CA3 est connecté au groupe CA1 par le même type de liens (flèche a
- 139 -
Section 5.1
Modèles pour l’apprentissage de séquences temporelles
b
I
a
v
IN
CA1
CA3
I
w
Figure 5-9. Aperçu de l’architecture utilisé par Levy. IN-groupe d’entrée, CA3-“codeur” de la séquence,
CA1-“decodeur”.
dans la figure 5-9) : chaque neurone de CA3 est connecté à 5% des neurones de CA1.
Il y a 2 inter-neurones, I, qui sont connectés avec des liens de type 1 vers tous avec les
groupes CA3 respectivement CA1. Ces liens sont de liens inhibiteurs.
Les neurones utilisés sont des neurones formels dont l’équation d’activation est la suivante :
avec
wij · cij · zi (t − 1)
P
P
zi (t − 1)
i wij · cij · zi (t − 1) + KI ·
i xi (t) + KR ·
yj (t) = P
P
i
(11)


 1 si yj (t) > φ
zj (t) =  1 si xj (t) = 1

0 sinon
La loi d’apprentissage (12) est de type Hebbienne .
wi j(t) = wij (t − 1) + ǫ · zj (t − 1) · [zi (t − 1) − wij (t − 1)]
(12)
Avec yj l’activité du neurone j, xj l’entrée du neurone j, zi l’entrée récurrente du i, zj
la sortie du j, KI le poids des liaisons inhibitrices de IN à CA1; KR les poids des liaisons
inhibitrices récurrentes CA3 vers CA3; cij une constante binaire qui détermine l’existence
d’une connexion; wij le poids des liaisons inhibitrices du neurone i au neurone j; ǫ le
coefficient d’apprentissage; t le temps.
Dans le groupe CA3, les neurones sont groupés en fonctions de leur tâche. Ainsi,
il y a des neurones qui codent les états de la séquence (A, B, ... par exemple), des
neurones qui codent la sortie du système (a, b, ...) et des neurones qui codent un
signal de renforcement. Pendant l’apprentissage, on présente à l’entrée des quadruplés
Etat1 , Etat2 , Recompense, Sortie desirée. Prenons par exemple la séquence A, B, C. Il y
a 8 neurones pour chaque état (A, B, C) de la séquence, 16 neurones pour chaque sortie (a,
b, c), et 8 neurones pour chaque récompense (+,-). La taille globale est de 512 neurones
pour CA3. Pendant la phase d’apprentissage, les auteurs présentent à l’entrée du système
toutes les possibilités : ABa+, (ce qui peut se “traduire” : Si pour la transition de A
- 140 -
Chapitre 5
Apprentissage de séquences temporelles
vers B le réponse est a, alors la récompense est positive), ABb−, BCb+, BCc−, CAc+,
CAa−. L’apprentissage comporte 300 présentations complètes. Après l’apprentissage, les
auteurs présentent à l’entrée un des éléments de la séquence, A par exemple, et la sortie
est celle désirée (a pour cet exemple).
Le modèle n’est utilisé que pour l’apprentissage de séquences simples, de type
A, B, C, D et aucun aspect temporel n’est présent. Le modèle de Levy ne prend pas
en compte DG explicitement. Selon les auteurs, l’EC et le DG sont “condensés” dans le
groupe IN. Mis à part les connexions de cette architecture, le modèle présenté nous fait
penser à une rétro-propagation “classique”.
- 141 -
Section 5.2
5.2
Proposition d’un modèle pour l’apprentissage du timing
Proposition d’un modèle pour l’apprentissage du
timing
Dans ce paragraphe nous présentons un modèle de réseau de neurones développé en collaboration avec J.P. Banquet, capable d’apprendre un intervalle temporel [14, 15, 13].
Ce modèle sera développé afin de permettre l’apprentissage d’une séquence simple. Nous
avons démarré avec un modèle issu d’une simplification du modèle de Grossberg (voir
section 5.1.4.2) et nous avons utilisé le même protocole expérimental pour l’apprentissage
d’un intervalle temporel. Nous présentons d’abord le modèle mathématique ainsi que
quelques unes de ses propriétés. Ensuite, nous présentons une généralisation de notre
modèle afin de permettre l’apprentissage d’une séquence temporelle.
5.2.1
Description du modèle
Dans le cerveau plusieurs structures permettent d’apprendre des séquences temporelles
plus ou moins complexes :
• Le cervelet pour ce qui concerne le contrôle moteur. L’apprentissage du timing est
très important, mais l’apprentissage de séquences est limité aux séquences simples.
• Le cortex auditif qui peut apprendre le timing et des séquences très complexes mais
il “bénéficie” des outils dédiés pour l’analyse fréquentielle.
• La boucle d’articulation du langage.
• Le cortex préfrontal pour l’aspect séquence mais il n’y a pas de données pour l’aspect
timing.
• Enfin, l’hippocampe, qui ressemble sur beaucoup de points au cervelet.
Il n’y a pas de preuves concernant la participation de l’hippocampe à une maı̂trise du
timing, mais tout le monde semble être d’accord pour son implication dans l’aspect apprentissage de séquences. Seul le fait que la présence de l’hippocampe semble importante
pour l’apprentissage d’un simple conditionnement au niveau de cervelet milite en faveur
d’une capacité à prédire des événements et à amplifier l’apprentissage (cohérent avec la
notion de détection de nouveauté souvent attachée à l’hippocampe). C’est la raison pour
laquelle nous présentons une modélisation de l’hippocampe qui permet l’apprentissage du
timing et des séquences.
Un stimulus conditionnel (SC) est présenté à l’entrée du système à l’instant t0 . Après
un intervalle de temps, un stimuli inconditionnel SI détermine, à t0 + ∆t, un réponse du
système. Le SI permet aussi l’apprentissage par le système de l’intervalle ∆T . Dès lors,
chaque SC induira une réponse du système chaque fois qu’il est présent à l’entrée. La loi
d’apprentissage utilisée induit une réponse à δt < ∆t ce qui explique la possibilité d’avoir
une anticipation (prédiction).
- 142 -
Chapitre 5
Apprentissage de séquences temporelles
Le modèle utilisé s’appuie sur l’idée qu’un neurone de type P (prédiction) (voir figure
5-10) peut apprendre à prédire (s’activer en avance) l’intervalle de temps écoulé entre
l’activation d’un neurone de type D (dérivateur) et un neurone de type E, en utilisant une
batterie de cellules à réponse retardées, les neurones de type G.
G1
G2
G3
Gn
E
D
P
Figure 5-10. Schéma de notre modèle d’une partie de l’hippocampe. Gi sont de cellules à réponse
retardées, P de neurones de prédiction, D et E de neurones formels.
Le neurone de type D a un fonctionnement similaire à celui d’un détecteur de nouveauté.
Sa sortie binaire (D(t)) s’active si la variation de son potentiel (PD (t)) entre 2 instants
dépasse un seuil (ǫD ) (voir l’équation (13)).
D (t) =
(
1 si δPδtD > ǫD
0 sinon
(13)
avec ǫD ∈ IR et PD (t) la somme des entrées du neurone à l’instant t.
Il peut être facilement modélisé avec des neurones formels. Si la sortie d’un neurone
est connectée à son entrée par une liaison inhibitrice, la différence de temps de propagation entre l’activation par l’entrée et l’inhibition par sa sortie induit un comportement
dérivateur. Le neurone de type D est activé par le stimulus conditionnel (SC).
Une activation du neurone D (D (t) = 1) détermine, via les liaisons entre D et Gi , une
mise à zéro de chaque neurone Gi . Dans notre modèle simplifié, il n’y a pas d’apprentissage
sur les liens arrivant sur un neurone D.
Les neurones de type E ont le même fonctionnement que ceux du type D. La seule
différence est qu’ils sont activés par le stimuli inconditionnel (SI). Leur activation permet
une modification des poids entre P et Gi selon l’équation (17).
Après chaque mise à zéro, par un neurone de type D, le neurone de type G a une
activation temporelle selon une loi gaussienne (voir équation (14)).
- 143 -
Section 5.2
Proposition d’un modèle pour l’apprentissage du timing
D’un point de vue neurobiologique, un tel modèle pourrait traduire la dynamique des
interactions entre un groupe de cellules granulaires et une cellule moussue (voir figure
5-11).
CG
CG
CG
CG
CM
Figure 5-11. Détail des connexions au niveau du Gyrus Dentelé, entre un groupe de cellules granulaires
(CG) connectées à une cellule moussue (CM). Pour simplifier le schéma, les cellules inhibitrices (basquets
cells) permettant la sélection d’un groupe de cellules granulaires n’ont pas été représentées.
Les cellules granulaires du groupe saturent la cellule moussue qui décharge en retour
vers toutes les cellules granulaires même lorsque la stimulation s’est arrêtée. L’habituation
synaptique au niveau des cellules granulaires permet d’expliquer l’arrêt de leur activation
au bout d’un certain temps. Inversement, on peut supposer que les cellules granulaires
les plus grosses ont un seuil élevé. Si les constantes de temps sont suffisamment bien
réparties, alors on obtient le même type de réponse qu’avec notre base de cellules à
réponse retardées.
Gi (t) = F Gi · exp
−
(t−M Gi )2
2·V G2
i
(14)
avec t = 0 pour le dernier t dont D(t) > 0, M Gi , V Gi et F Gi des constantes.
Il y a une corrélation entre M Gi et F Gi , c’est-à-dire un neurone avec un temps de réponse
assez petit doit avoir une fréquence de décharge assez grande (ce qui correspond à la réalité
biologique). Plus une cellule est petite (en taille), moins elle prend du temps (M Gi ) à
atteindre son maximum et plus ce maximum (F Gi ) est grand. Si on considère les activités
normalisées, c’est-à-dire la valeur maximale pour F Gi est 1, alors la figure 5-12 (a) illustre
l’activité temporelle de 8 neurones de type Gi 3 . Il n’y a pas d’apprentissage sur les liaisons
partant d’un neurone D et arrivant sur un neurone G.
Le neurone de prédiction, P, réalise une somme pondérée de ses entrées. Les entrées
peuvent être analogiques ou binaires. La sortie est donnée par l’équation (17) :
Pe (t) =
X
Wi · Gi (t)
(15)
i
P (t) = fp (Pe (t))
3
(16)
Nous avons représenté uniquement 8 neurones mais en réalité nous utilisons environ 40.
- 144 -
Chapitre 5
Apprentissage de séquences temporelles
La fonction d’activation d’un neurone de type P
L’activation de 8 neurones de type G
1
1.4
0.9
← l’activation du neurone 2
1.2
0.8
1
Activite Gi
0.7
Activite
0.6
0.5
0.4
0.3
← la somme pondéré
des entrées
← activation
0.8
0.6
0.4
0.2
0.2
0.1
0
0
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
Temps (secondes)
Temps (secondes)
Figure 5-12. (a) Exemple d’activation de 8 neurones de type G. (b) Le potentiel et l’activation d’un
neurone de type P.
fp =
(
1 si Pe (t − δt2 ) − Pe (t − δt1 ) < 0 et Pe (t − δt1 ) − Pe (t) > 0
0 sinon
(17)
L’activation de la sortie du neurone de type P correspond en effet à la valeur maximale
de son potentiel (voir figure 5-12 (b)).
La modification du poids entre P et Gi est instantanée et donnée par l’équation (18) :

 PGi (t)
2
Wi (t) = 
i
Gi (t)
si D(t) > 0
Wi (t − 1) sinon
(18)
Pour illustrer le fonctionnement de notre modèle, prenons un exemple simple : nous
présentons le stimulus inconditionnel (SI) et une seconde après le stimulus conditionnel
(SC). Ensuite, nous représentons un autre SC et nous regardons l’activité du neurone P.
La présentation du SI détermine l’activation du neurone D. L’activation de ce neurone
permet la mise à zéro de l’activité de toutes les cellules Gi . Dès lors, leur activation
temporelle suit l’équation (14) (voir la figure 5-12 (a)). Après une seconde, l’arrivée du SC
détermine l’activation du neurone E. L’activation de ce neurone détermine la mise à jour
des poids entre les neurones Gi et le neurone P, suivant l’équation (17) et par conséquence
l’apprentissage de l’intervalle ISI (voir figure 5-13 (a)). Finalement, nous présentons pour
la deuxième fois le SC. Après 989 millisecondes, c’est-à-dire 11 millisecondes avant la
durée de l’ISI, la sortie du neurone P devient active (voir figure 5-13 (b)).
5.2.2
Analyse mathématique des conditions de prédiction
La capacité de nos cellules pyramidales (P) à prédire un événement est une caractéristique
très importante du modèle. Si l’activité de (P) suit la réalisation de l’action, il sera très
difficile de l’utiliser pour savoir si l’événement était nouveau ou pas. Car il faudrait être
capable de séparer le fait que (P) ont été activé par l’arrivée du nouvel événement ou par
le “souvenir” qu’il devait bien arriver (activation forcée par DG).
- 145 -
Section 5.2
Proposition d’un modèle pour l’apprentissage du timing
Valeurs des poids entre le neurone P et les G
Activité du neurone P
i
1.2
0.35
Activation P
ISI
Potential de P
0.3
1
0.25
Activité
Valeur
0.8
0.2
0.15
0.6
0.4
0.1
0.2
0.05
0
0
10
20
30
40
50
0
60
Index des neurones G
0
0.5
1
1.5
2
2.5
Temps (secondes)
i
Figure 5-13. (a) La valeur de poids après l’apprentissage. (b) L’activation du neurone de type P. Les
paramètres sont : Nb neurones G=60, loi d’activation=gauss, MinMG=0.01, TypeMG=lin, TypeVG=lin,
MaxVG=0.30, MinVG=0.25, MaxFG=1.00, MinFG=0.01, TypeFG=lin
Nous allons donc maintenant analyser en détail les conditions pour qu’il y ait prédiction.
Soit un intervalle inter-stimulus quelconque ISI = [0, tISI ], avec tISI ∈ ] 0, ∞ [ . Pour
avoir une prédiction, il faut que le neurone de type P s’active à l’instant t < tISI . Selon
l’équation (17), l’activation d’un neurone P est équivalente au fait que le potentiel du
neurone atteint sa valeur maximale avant l’instant t, c’est-à-dire qu’il a une gradient
négatif à l’instant t. Ainsi, déclencher la prédiction revient à satisfaire la condition (19).
Si
Pe (t − δt) > Pe (t + δt)
(19)
alors on a
N
X
[Wi · Gi (t − δt)] >
i=1
⇐⇒
N
X
i=1
"
Gi (t)
Gi (t − δt) · P 2
i Gi (t)
#
>
N
X
[Wi · Gi (t + δt)]
i=1
"
N
X
i=1
Gi (t)
Gi (t + δt) · P 2
i Gi (t)
(20)
#
(21)
avec N le nombre de neurones Gi .
Selon l’équation d’activation des neurones Gi (équation (14)), on a :
Gi (t)
>0
∀ t > 0, Gi (t) > 0 ⇒ P 2
i Gi (t)
(21) et (22) ⇔
N
X
Gi (t − δt) · Gi (t) >
N
X
Gi (t + δt) · Gi (t)
i=0
i=0
Ainsi, déclencher la prédiction revient à satisfaire la condition (23).
- 146 -
(22)
(23)
Chapitre 5
Apprentissage de séquences temporelles
Si l’on suppose que les fonctions Gi (t) peuvent être considérées comme linéaires au
voisinage de t, alors pour δt > 0 on a :
Gi (t + δt) = Gi (t) + αi
Gi (t − δt) = Gi (t) − αi
(24)
(25)
avec αi ∈ IR.
(23), (24) et (25) ⇒
N
X
[Gi (t) + αi ] · Gi (t) >
i=1
⇐⇒
i<N
X
Gi (t) · Gi (t) +
i=1
⇐⇒ 2 ·
⇐⇒
N
X
i=1
i<N
X
i=1
i<N
X
αi · Gi (t) >
N
X
i=1
N
X
[Gi (t) − αi ] · Gi (t)
(26)
i<N
X
αi · Gi (t) (27)
Gi (t) · Gi (t) −
i=1
i=1
αi · Gi (t) > 0
(28)
αi · Gi (t) > 0
(29)
i=1
Soit a, a ∈ ] 1, N [ tel que M Gi < t si i ≤ a et M Gi > t si i > a. Alors, αk > 0 si
k ≤ a et αl < 0 si l ≥ a.
i<N
X
(29) ⇐⇒
⇐⇒
i=1
i≤a
X
αi · Gi (t) > 0
αi · Gi (t) >
i<N
X
(30)
αi · Pi (t)
(31)
i=a+1
i=1
L’équation (31) revient à dire que la somme dans un voisinage de t des fonctions Gi
dont le maximum est atteint avant l’instant t doit être supérieure à la somme de fonctions
dont le maximum est atteint après l’instant t.
Nous avons observé expérimentalement que la condition (31) est satisfaite si et seulement si le maximum de la somme des activités de neurones Gi est atteint à un instant tx
inférieur à t (voir figure 5-14).
Ainsi, nous avons établi expérimentalement que la condition pour avoir une prédiction
revient à avoir le max de la somme des activités des neurones Gi inférieure à l’ISI.
- 147 -
Section 5.2
Proposition d’un modèle pour l’apprentissage du timing
La somme des activité s de G
Activité des neuronnes Gi
i
2.2
1
0.9
2
0.8
1.8
0.7
Activité de Gi
1.6
0.6
1.4
0.5
0.4
1.2
0.3
1
0.2
0.8
0.1
0
0
1
2
3
4
5
0.6
6
0
100
200
300
400
500
600
700
Temps (secondes)
Temps (secondes)
Figure 5-14. L’activité (a) et la somme des activités (b) de cellules de DG. Les paramètres sont :
Nb neurones G=60, loi d’activation=gauss, MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20,
MinVG=0.10, MaxFG=1.00, Min FG=0.10, TypeFG=lin
Dans la suite de ce chapitre, nous allons maintenant étudier plus en détail les capacités de prédiction de notre système et l’effet des différents paramètres sur la qualité de
l’apprentissage. Nous montrerons enfin comment employer ce modèle pour l’apprentissage
et la reproduction de séquences simples.
- 148 -
Chapitre 5
5.3
Apprentissage de séquences temporelles
Simulations du modèle
Dans un premier temps, nous étudierons l’influence de la forme de l’activation de la base
des cellules avec réponse retardée Gi sur la prédiction. Ensuite, nous nous intéresserons
à l’apprentissage de la forme temporelle d’un signal analogique. Enfin, nous terminerons
par des exemples liés à l’apprentissage de séquences simples.
5.3.1
Considérations sur la base de cellules à réponses retardés
Dans le cadre des simulations, nous avons étudié 2 types de loi l’activation pour les cellules
de type G : une activation selon une loi gaussienne (équation (32), voir figure 5-15 (a)) et
selon une loi log-normale (équation (33), voir figure 5-15 (b)).
Gi (t) = F Gi · exp
Gi (t) = F Gi · exp
−
−
(t−M Gi )2
(log(t)−log(M Gi ))2
La fonction d’activation log−normale d’un neurone de type G
La fonction d’activation gaussienne d’uneneurone de type G
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
Activite
Activite
(33)
V Gi
1
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
(32)
V Gi
0
1
2
3
4
Temps (secondes)
5
6
7
1
2
3
4
5
6
7
Temps (secondes)
Figure 5-15. (a) La fonction d’activation d’un neurone de type G, (a) gaussienne et (b) log-normale.
Le paramètre M Gi représente l’instant pour lequel le potentiel du cellule Gi atteint
son maximum. Sa valeur peut fluctuer entre 2 bornes (MinMG et MaxMG) linéairement,
exponentiellement ou logarithmiquement (voir figure 5-16). La figure 5-14 (a) illustre le
cas de la variation linéaire du paramètre M Gi entre M axM G = 1 et M inM G = 0.1,
pour une batterie de 60 neurones de type G.
Le paramètre V Gi représente la valeur de la variance pour la fonction d’activation de
Gi . Sa valeur peut fluctuer entre 2 bornes (MinVG et MaxVG) linéairement, exponentiellement ou logarithmiquement (voir figure 5-16).
- 149 -
Section 5.3
Simulations du modèle
Le paramètre F Gi représente la valeur maximale de l’activation de la cellule Gi , c’està-dire F Gi = max (Gi (t)) = Gi (M Gi ). Sa valeur peut varier entre 2 bornes (MinFG et
MaxFG) linéairement, exponentiellement ou logarithmiquement, ou elle peut être constant
(voir figure 5-16).
Lois de variation des parametres du neurone de type G
1
liniare
exponentielle
logarithimique
0.9
Valeur du parametre
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
10
20
30
40
50
60
Index neurones G
Figure 5-16. Exemples de lois de variation de paramètres d’un neurone de type G (F Gi , M Gi et V Gi )
entre Min=0.1 et Max=1.0
Nous avons analysé l’influence de chaque paramètre des équations (32) et (33). Le
critère d’analyse est la précision de la prédiction de l’intervalle ISI. Dans ce cas, nous
définissons la précision comme étant la valeur de l’intervalle de temps entre l’activation
du neurone P et l’instant d’ISI, P r = tISI − tP . Nous parlons d’une prédiction P r1
plus précise qu’une précision P r2 si et seulement si P r1 < P r2 , c’est-à-dire l’activation du
neurone P r1 est plus proche de l’ISI que celle du neurone P2 . De même, nous introduisons
le terme de “prédiction négative” qui définit une activation du neurone P après l’ISI c’està-dire P r < 0. Nous considérons qu’un système est plus performant qu’un autre si sa
prédiction est plus précise et positive.
Par ailleurs, si nous changeons de point de vue et nous utilisons notre modèle de
prédiction du timing comme un détecteur de nouveauté, alors le fait d’avoir une “mauvaise” prédiction (activation du neurone P longtemps avant l’ISI) revient à avoir une bonne
anticipation. Les résultats de cette section seront interprétés en fonction de l’utilisation de
notre modèle : apprentissage du timing ou prédiction. Cependant, notre intérêt principal
reste l’étude de la prédiction.
Afin de rendre l’interprétation des résultats plus facile, nous avons représente la
prédiction P r en fonction d’intervalle ISI (voir figure 5-17). Nous avons calculé la
prédiction P r pour des ISI dans un intervalle très large : nous avons fait varier l’ISI
- 150 -
Chapitre 5
Apprentissage de séquences temporelles
entre 0.1 et 7 secondes et pour chaque valeur nous avons calculé la prédiction.
Le ∆ t entre l’activation du neurone P et l’ISI
160
Valeur ∆ t "prediction" (milisecondes)
140
120
100
80
60
40
20
0
−20
0
1
2
3
4
5
6
7
8
Valeur ISI (secondes)
Figure 5-17. Variation de la prédiction en fonction de la durée de l’ISI. Avec “o” nous avons représenté la
valeur de la prédiction en ce point, la courbe étant obtenue par interpolation linéaire. Les paramètres sont :
Nb neurones G=40, loi d’activation=gauss, MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20,
MinVG=0.10, MaxFG=1.00, MinFG=0.40, TypeFG=lin.
Les résultats obtenus sont en concordance avec ceux qui sont obtenus par d’autres
modèles de prédiction du timing. La précision de la prédiction décroı̂t avec l’augmentation
de l’intervalle ISI (voir figure 5-17) : plus les intervalles à prédire sont grands, plus la
précision de la prédiction est mauvaise) et génère les mêmes résultats que celles d’un
système qui vérifie la loi de Weber.
Le nombre de neurones de type G dans notre système a une grande influence sur les
performances obtenues. Jusqu’à un certain seuil et pour un ISI dans un certain intervalle,
la prédiction est très instable, positive / négative (voir figure 5-17 pour les résultats avec
40 neurones). Mais, une fois cet seuil atteint, l’augmentation du nombre des neurones
n’influence guère les résultats (voir figure 5-18 (a) et (b) où la variation entre 60 et 100
neurones ne change pas d’une manière significative les résultats). Ce résultat est très
intéressant, étant donné que l’augmentation du nombre de neurones de type G détermine
automatiquement une augmentation du nombre de liaisons avec les neurones de prédiction
et la quantité de calculs à effectuer. Toutefois, si la précision de prédiction n’est pas affectée par la croissance du nombre de neurones de type G, alors la fiabilité de l’architecture
croı̂t (la défaillance d’une cellule de type G aura moins d’influences).
La capacité de prédiction de notre système est fortement dégradée aux bornes de
l’intervalle temporel sur lequel sont étalées les cellules G. Ce fait est causé par la distribution et les valeurs des poids des connexions entre les neurones G et le neurone P (voir
- 151 -
Section 5.3
Simulations du modèle
Le ∆ t entre l’activation du neurone P et l’ISI
Le ∆ t entre l’activation du neurone P et l’ISI
160
200
Valeur ∆ t "prediction" (milisecondes)
Valeur ∆ t "prediction" (milisecondes)
140
120
100
80
60
40
20
0
150
100
50
0
−20
−40
0
1
2
3
4
5
6
7
−50
8
0
1
2
3
Valeur ISI (secondes)
4
5
6
7
8
Valeur ISI (secondes)
Figure 5-18. Variation de la prédiction en fonction de la durée de l’ISI. La variation de la prédiction avec
(a) 60 neurones de type G et (b) avec 100 neurones. Les autres paramètres sont : loi d’activation=gauss,
MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10, MaxFG=1.00, MinFG=0.40,
TypeFG=lin dans les 2 cas.
figure 5-19). Si nous considérons l’apprentissage de l’ISI comme étant l’apprentissage
d’une décomposition sur une base de fonctions, alors on peut observer dans la figure 5-19
(a) qu’il y a plus de poids non nuls que dans la figure 5-19 (b); donc nous avons une
meilleure approximation, ce qui détermine la prédiction.
Valeurs des poids entre le neurone P et les Gi
Valeurs des poids entre le neurone P et les Gi
0.7
0.9
0.8
0.6
0.7
0.5
Valeur
Valeur
0.6
0.4
0.3
0.5
0.4
0.3
0.2
0.2
0.1
0.1
0
0
10
20
30
40
Index des neurones Gi
50
0
60
0
10
20
30
40
Index des neurones Gi
50
60
Figure 5-19. Valeurs des poids sur les liaisons avec les neurones de prédiction. (a) Les valeurs
pour ISI=3 secondes et (b) pour ISI=6.9 secondes. Les autres paramètres sont : Nb neurones
G=60, loi d’activation=gauss, MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10,
MaxFG=1.00, MinFG=0.40, TypeFG=lin dans les 2 cas.
La performance de la prédiction est aussi influencée par la valeur minimale du
paramètre F Gi . Nous avons testé 3 cas : min(F Gi ) ∈ [0.01, 0.9]. Les résultats obtenus
(voir figure 5-18 (a) et figure 5-20) ont montré que la précision de la prédiction est meilleure
si la différence entre la valeur maximale et la valeur minimale décroı̂t ce qui reviendrait
à avoir des activations identiques pour les neurones de type G. Dans ce cas, le modèle ne
respecte plus la loi de Weber et la valeur de la prédiction varie peu autour d’une valeur
- 152 -
Chapitre 5
Apprentissage de séquences temporelles
fixe. Un compromis entre une bonne précision est une prédiction positive semble atteint
pour une valeur M inF G = 0.5.
Le ∆ t entre l’activation du neurone P et l’ISI
Le ∆ t entre l’activation du neurone P et l’ISI
50
50
Valeur ∆ t "prediction" (milisecondes)
Valeur ∆ t "prediction" (milisecondes)
45
40
30
20
10
40
35
30
25
20
15
10
5
0
0
0
1
2
3
4
5
0
6
1
2
3
4
5
6
Valeur ISI (secondes)
Valeur ISI (secondes)
Figure 5-20. Variation de la prédiction en fonction du paramètre MinFG. Le résultat (a) pour
MinFG=0.01 et (b) pour MinFG=0.5.
Les autres paramètres sont : Nb.
neurones G=60,
loi d’activation=gauss, MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10,
MaxFG=1.00, TypeFG=lin dans les 2 cas.
Dans le cas d’une activation log-normale (qui se rapproche le plus de la forme
d’activation de cellules granulaires), nous retrouvons principalement les mêmes variations
de résultats que dans le cas d’une activation gaussienne, ce qui justifie le choix de celleci dans notre modèle. Les différences constatées (voir figure 5-21 (b)) sur la prédiction
des intervalles sont dues aux valeur des poids (voir figure 5-21, (a)) qui ont une autre
distribution.
Valeurs des poids entre le neurone P et les Gi
Le ∆ t entre l’activation du neurone P et l’ISI
0.14
2500
Valeur ∆ t "prediction" (milisecondes)
0.12
Valeur
0.1
0.08
0.06
0.04
0.02
0
0
10
20
30
40
Index des neurones Gi
50
2000
1500
1000
500
0
−500
60
0
1
2
3
4
5
6
7
8
Valeur ISI (secondes)
Figure 5-21. Résultats obtenus dans le cas d’une activation log-normale. (a) Les poids pour un ISI de
3 secondes. (b) La courbe de la précision de la prédiction. Les autres paramètres sont : Nb neurones
G=60, loi d’activation=log-n, MinMG=0.10, TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10,
MaxFG=1.00, MinFG=0.20, TypeFG=lin.
- 153 -
Section 5.3
5.3.2
Simulations du modèle
Apprentissage de la “forme” d’une entrée analogique
Nous avons vu au début de ce chapitre que la notion de séquence temporelle suppose
l’existence d’éléments distincts. Pour cela, nous avons considéré que les éléments des nos
séquences étaient discrets. Les entrées de notre système sont binaires (de type ON/OFF)
et orthogonales. Dans tout système naturel, les valeurs physiques sont analogiques. Afin
d’obtenir des valeurs binaires, une discrétisation s’impose toujours. La discrétisation est
habituellement réglée par un seuil. Mais l’utilisation d’un seuil (pour déterminer si une des
entrées doit s’activer ou non) peut donner lieu à des imprécisions. Prenons par exemple
la courbe de la figure 5-22, (a). Si le seuil est fixé à 0.8, nous avons 2 éléments distincts
(voir figure 5-22 (b)), et si le seuil est fixé à 0.4, nous avons un seul élément.
Exemple de signal analogique
Exemple de signal d’entrée discret pour un seuil de 0.8
1
Activité (normalisée à 1)
1
0.9
0.7
0.6
0.6
0.4
0.2
0
0
2
3
4
5
6
7
1
0.4
0.3
0.2
0.1
0
1
Temps (secondes)
Exemple de signal d’entrée discret pour un seuil de 0.4
0.5
Activité (normalisée à 1)
Activité (normalisée à 1)
0.8
0.8
0
1
2
3
4
5
6
7
0.8
0.6
0.4
0.2
0
0
1
2
Temps (secondes)
3
4
5
6
7
Temps (secondes)
Figure 5-22. (a) Exemple de signal analogique d’entrée. (b) En haut, l’entrée seuillée à 0.8. En bas,
l’entrée seuillée à 0.4.
Toutefois, avoir une séquence discrète n’est pas toujours souhaitable et il peut s’avérer
nécessaire d’apprendre la “forme” de l’entrée analogique en même temps que l’intervalle
temporel. Notre modèle (section 5.2.1) permet d’apprendre la “forme analogique” du
signal d’entrée, en modifiant seulement la loi d’apprentissage entre les neurones de type
G (les horloges) et le neurone de type P (prédiction). En plus, le neurone de type D
(d’entrée) ne fait aucun traitement sur le signal d’entrée.
Nous utilisons la règle du LMS (voir section 3.1.3), donnée par l’équation suivante :
dWi (t) = ǫ · Gi (t) · (D (t) − P (t − δt))
Avec dWi la variation du poids du neurone Gi vers le neurone de type P .
Gi (t) , D (t) , P (t) représentent respectivement l’activité des neurones de type G, D
et P. ǫ est une constante correspondante à la vitesse d’apprentissage.
Dans un premier temps, nous présentons plusieurs fois le même signal à l’entrée et nous
regardons la sortie du neurone de prédiction. Au début, tous les poids sont initialisés à
zéro. Après chaque itération, nous comparons la “forme apprise” (la sortie du neurone de
prédiction) et la “forme d’entrée”. Après un petit nombre de présentations (3 dans notre
- 154 -
Chapitre 5
Apprentissage de séquences temporelles
exemple), nous avons un résultat acceptable (voir figure 5-23). Si le nombre d’itérations
augmente, la forme est mieux apprise (voir figure 5-24 (a)).
L’entre et la sortie pour l’iteration 3
1.2
1
1
0.8
0.8
0.6
0.6
Activite
Activite
L’entre et la sortie pour l’iteration 1
1.2
0.4
0.4
0.2
0.2
0
0
−0.2
0
1
2
3
4
5
6
−0.2
7
0
1
2
Temps (secondes)
3
4
5
6
7
Temps (secondes)
Figure 5-23. (a) L’entrée et la sortie après une seule présentation. (b) L’entrée et la sortie après 3
présentations. Les autres paramètres sont : Nb neurones G=60, loi d’activation=lin, MinMG=0.10,
TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10, MaxFG=1.00, MinFG=0.10, TypeFG=lin,
ǫ = 0.1.
L’energie de l’erreur
L’entre et la sortie pour l’iteration 100
1.2
10
8
1
Energie du signal d’erreur
6
Activite
0.8
0.6
0.4
0.2
4
2
0
−2
−4
0
−0.2
−6
−8
0
1
2
3
4
5
6
0
7
10
20
30
40
50
60
70
80
90
100
Iterations
Temps (secondes)
Figure 5-24. (a) L’entrée et la sortie après 100 présentations. (b) L’énergie de l’erreur entre l’entré
et la sortie. Les autres paramètres sont : Nb neurones G=60, loi d’activation=lin, MinMG=0.10,
TypeMG=lin, TypeVG=lin, MaxVG=0.20, MinVG=0.10, MaxFG=1.00, MinFG=0.10, TypeFG=lin,
ǫ = 0.1.
Nous avons mesuré l’énergie du signal de différence entre l’entrée et la sortie, et nous
avons observé une stabilisation de la sortie après peu d’itérations (voir figure 5-24 (b)) ce
qui montre la stabilité de notre algorithme après la convergence.
Dans un deuxième temps, nous avons utilisé un protocole d’expérimentation modifié :
nous considérons que la mise à jour des poids s’effectue à des instants aléatoirement choisis
dans l’intervalle de l’activation de l’entrée (et uniquement à ces instants). Dans la figure
5-25 nous présentons le résultat obtenu ainsi que la distribution des poids. Nous pouvons
constater que la forme analogique du signal d’entrée est bien apprise et ceci se produise au
bout d’un temps beaucoup plus court en nombre de cycles de présentation du stimulus. Si
- 155 -
Section 5.3
Simulations du modèle
l’apprentissage s’effectue non pas sur l’ensemble du signal mais à des instants qui peuvent
sembler échantillonnés aléatoirement par rapport au signal alors comme on pouvait s’y
attendre, la performance est bien meilleure (aspect stochastique de la descente de gradient
normalement nécessaire pour assurer la convergence). Si nous revenons à l’hippocampe,
on peut imaginer que le rythme thêta ou un autre rythme (la fréquence de 7–10 Hz, par
exemple) puisse jouer le rôle d’un échantillon du signal permettant d’améliorer la vitesse
d’apprentissage tout en permettant d’isoler des tranches de temps.
Valeurs des poids entre le neurone P et les G
i
0.6
1
0.5
0.8
0.4
0.6
0.3
Valeur
Activit\’e (normalis\’e \‘a 1)
L’entre et la sortie
1.2
0.4
0.2
0.2
0.1
0
0
−0.2
−0.1
0
1
2
3
4
5
6
7
0
10
Temps (secondes)
20
30
40
Index des neurones Gi
50
60
Figure 5-25. (a) L’entrée et la sortie obtenues pour un apprentissage aléatoire. (b) La distribution des
poids après l’apprentissage (10 présentations).
Pour conclure, nous remarquons que nous pouvons apprendre la forme analogique de
l’entrée en utilisant un modèle qui n’était au départ prévu que pour l’estimation d’un
intervalle. Ce que réalise le modèle n’est rien d’autre qu’une décomposition du signal
d’entrée sur une base de fonctions . Notre modèle neuronale correspond alors à une
manière efficace de programmer ce type de décomposition dans le cas où l’on a besoin
d’un apprentissage en ligne.
5.3.3
Apprentissage de séquences simples
L’architecture pour l’apprentissage de séquences a été développée en utilisant le modèle
d’apprentissage des intervalles temporelles illustré dans la section 5.2. L’idée de base
consiste en la multiplication des mécanismes de prédiction du timing par l’utilisation de
plusieurs batteries de neurones DG ainsi que d’une matrice de neurones de type P. La
figure 5-26 illustre l’architecture globale :
Chaque neurone du groupe MO envoie ses connexions efférentes non-modifiables vers
un neurone du groupe EC. Chaque neurone de EC envoie ses connexions efférentes nonmodifiables vers tous les neurones d’une même batterie de neurones de type G, en DG.
De même, chaque neurone du groupe EC envoie ses connexions efférentes non-modifiables
à tous les neurones de la même colonne du groupe CA3. Chaque neurone de DG envoie
ses connexions efférentes modifiables vers tous les neurones de la même ligne du groupe
CA3. La taille du groupe MO, respectivement EC, représente l’ensemble des événements
- 156 -
Chapitre 5
Apprentissage de séquences temporelles
DG
liens non modifiables
MO
liens modifiables
EC
CA3
Figure 5-26. Connectivité détaillée du réseau permettant la prédiction d’une transition. La taille des
cercles dans DG est choisie en fonction de la constante de temps (M Gj ) associée aux neurones de type
G (plus les neurones sont gros et plus ils sont supposés mettre du temps avant de s’activer fortement).
CA3 est une matrice de neurones de type P, EC sont des neurones de type D couplés avec des neurones
de type E. L’entrée est représentée par MO.
possibles de la séquence. Il n’y a pas des contraintes sur la taille du groupe DG. Cependant, le nombre de neurones de type G dans une batterie de DG influence la précision de
la prédiction de l’intervalle entre 2 événements de la séquence (voir section 5.3.1). Étant
donné que nous avons une architecture qui doit apprendre toutes les combinaisons possibles des événements, la taille de la matrice CA3 est le carré de la taille du groupe EC.
Cette organisation n’est pas biologiquement plausible, mais nous l’avons adoptée dans
un premier temps afin de simplifier la représentation des événements. Afin de réduire la
taille de CA3, nous envisageons d’introduire des liaisons récurrentes entre les neurones de
CA3. Ces connexions récurrentes qui sont en concordance avec les données issues de la
neurobiologie [192], permettront la réduction de la taille de CA3.
Nous décrivons maintenant étape par étape, l’activation et l’apprentissage des
différentes composantes de l’architecture pour une séquence simple : (A, tA ), (B, tB ),
(C, tC ). Nous avons testé la séquence pour des séquences plus longues (plus de 30
éléments), mais les résultats sont les mêmes que celles d’une séquence avec 3 éléments. En
effet, l’architecture assure un apprentissage et une prédiction indépendante4 de la taille
de la séquence.
On présente pour la première fois l’élément A (voir figure 5-27). Ceci implique une
variation au niveau du groupe MO qui déclenche l’activation du neurone numéro 1 du
4
Uniquement limité par la taille du RN.
- 157 -
Section 5.3
Simulations du modèle
groupe EC (voir figure 5-28 (a)). Le signal émis par EC remet à zéro toute activité
résiduelle dans la batterie numéro 1 de DG. Par la suite, les neurones de cette batterie
commencent à s’activer selon l’équation (14) (voir figure 5-28 (b)).
C
C
3
2.5
B
B
Element prédit
2
1.5
A
A
A
1
0.5
0
0
5
10
15
20
25
secondes
a)
apprentissage
prédiction
prédiction
1.2
Potential of PB(1,2) cell
1
0.8
0.6
0.4
0.2
0
0
5
10
15
20
25
secondes
b)
Figure 5-27. (a) Série temporelle des éléments présentés. (b) Activité d’un neurone de CA3 associé à
la prédiction de la transition de l’élément ”A” à l’élément ”B”.
Tant que l’activation d’une forme est maintenue dans le groupe MO, les neurones correspondants de EC ne laissent rien passer (pas de variation). Lorsque l’élément B est activé,
le neurone 2 de EC perçoit une variation et détermine 2 actions : l’apprentissage sur toutes
les liaisons de DG qui arrivent sur la deuxième colonne de CA3 (plus particulièrement
celles de la batterie 1 qui arrivent sur le troisième neurone de la deuxième colonne qui
signifie l’apprentissage de l’intervalle [ta , tb ]) et remet à zéro toute activité résiduelle dans
la batterie 2 de DG (voir figure 5-28 (c)). Pour l’élément C, nous avons le même comportement impliquant les neurones correspondants. Après la fin de la présentation de la
première séquence, c’est-à-dire lorsque l’événement A est présenté à nouveau, la transition
de C à A peut être apprise et permettre ainsi une réactivation cyclique de la séquence en
absence de stimulation externe. A ce moment de la répétition de la séquence, la capacité
prédictive de CA3 devient opérationnelle. La séquence ”A,B,C,A,B,C,A,...” est maintenant apprise et peut être reproduite. L’activation de la forme A permet de déclencher
la transition ”A vers B” (voir figure 5-28 (d)), qui active l’élément B qui déclenche
la prédiction de la transition de ”B vers C” qui déclenche l’activation de l’élément C
qui déclenche la prédiction de la transition de ”C vers A” qui déclenche l’activation de
l’élément A et ainsi de suite. De la même manière, la présentation d’une séquence plus
complexe pourra être apprise. La figure 5-27 illustre l’apprentissage de cette séquence.
Dans la section 6.1.2 nous présentons une architecture PerAc qui permet à un robot
- 158 -
Chapitre 5
a)
Apprentissage de séquences temporelles
b)
0
1
2
3
4
0
1
2
3
4
0
1
2
3
4
0
1
2
3
4
1111111111111111111111111111111111
0000000000000000000000000000000000
0000000000000000000000000000000000
1111111111111111111111111111111111
0000000000000000000000000000000000
1111111111111111111111111111111111
0000000000000000000000000000000000
1111111111111111111111111111111111
c)
0
1
2
3
4
0
1
2
3
4
d)
0
1
2
3
4
0
1
2
3
4
111
000
000
111
111
000
111
000
111
000
000
111
111
000
111
000
111
000
000
111
111
000
111
000
111
000
000
111
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
111
000
Figure 5-28. Exemple de simulation dans P rométhé. Chaque point ou rectangle représente un neurone.
La taille du rectangle représente le niveau d’activation du neurone considéré (les activités sont normalisées
groupe par groupe). (a) La présentation de l’élément A détermine l’activation du premier neurone d’EC.
(b) La batterie 1 de DG commence a s’activer. (c) L’arrivée de l’élément B. (d) La prédiction de l’élément
B.
mobile d’apprendre une trajectoire (une séquence des mouvements). L’apprentissage de
la trajectoire est réalisé par l’architecture que nous venons de présenter.
- 159 -
Section 5.4
5.4
Conclusion
Conclusion
Dans ce chapitre nous avons tenté de présenter un aperçu sur l’apprentissage du timing
et des séquences. Nous avons introduit un modèle neuronal qui permet l’apprentissage
du timing avec une grande précision. L’existence d’un tel mécanisme est essentielle dans
l’architecture d’un robot autonome. Prenons l’exemple d’un robot qui dispose seulement
de deux comportements : explorer l’environnement afin de trouver des sources d’énergie
et recharger ses accumulateurs. Son architecture doit avoir, à un quelconque niveau, un
mécanisme de compétition qui active ou inhibe l’un ou l’autre des comportements. Après
plusieurs expériences, le robot apprend que la durée de rechargement de ses accumulateurs est de 20 minutes. Si, durant une session de rechargement, il constate qu’après 20
minutes ses accumulateurs ne sont pas encore chargés, alors un signal d’avertissement
sera déclenché (qui pourra par la suite déterminer le changement de comportement, ...).
L’utilisation de la prédiction pour la détection de la nouveauté est entièrement basée sur
l’utilisation d’un mécanisme de timing.
Notre modèle satisfait 2 exigences majeures : apprendre correctement à prédire le timing et respecter la loi de Weber. Le fait de respecter la loi de Weber n’est pas une exigence
en soit, mais elle correspond à une contrainte très dure que doivent respecter les systèmes
de perception et d’apprentissage. Si la précision de la prédiction était constante, alors
il serait impossible d’avoir un renforcement consécutif à la répétition d’une expérience.
En effet pour une séquence longue il n’est pas possible de la reproduire avec une grande
précision et donc les prédictions d’un élève trop précis se révéleraient toujours fausses.
Inversement, si la précision était réglée sur une valeur basse alors les confusions entre
séquences seraient fréquentes.
En même temps, il faut souligner la grande robustesse de notre modèle par rapport
aux défaillances. Supposons qu’un neurone de type G ne fonction plus. Le neurone P
sera toujours activé et une réponse fournie même si la précision sera affectée. De même,
les défaillances au niveau de connexions entre DG et CA3 déterminent de faibles erreurs
de prédiction. Par l’utilisation d’un rebouclage de CA3 sur lui même, on peut aussi
minimiser l’importance des défaillances à ce niveau. La capacité d’apprendre en ligne
impose notre modèle dans les applications en temps réel. Cependant, notre modèle ne
permet pas l’apprentissage de séquences complexes. Nous supposons que les séquences
complexes sont traitées par d’autres structures cérébrales et que ce traitement implique
la construction de macrocatégories.
Pour finir, nous avons présenté un modèle qui permet l’apprentissage de séquences
temporelles. Ce modèle sera intégré dans l’architecture d’un robot autonome (chapitre 6)
qui permettra l’apprentissage par imitation de séquences d’actions nécessitant un “timing”
précis. La capacité d’apprentissage de la forme analogique d’un signal est aussi très utile
car dans un cas binaire si le signal est mal segmenté la succession rapide de 2 événements
risque de ne pas être détectée. Dans le cas analogique si le seuil sur la dérivation du signal
en entrée ne permet pas d’isoler les 2 pics le mécanisme de prédiction peut reproduire la
forme du signal avec ses 2 pics et donc permettre malgré tout une bonne réaction motrice.
- 160 -
Chapitre 6
Une architecture minimale pour
l’apprentissage par imitation
Les Trois Lois de la Robotique
Première Loi
Un robot ne peut blesser un être humain ni, par son
inaction, permettre qu’un humain soit blessé.
Deuxième Loi
Un robot doit obéir aux ordres données par les êtres
humains, sauf si de tels ordres sont en contradiction avec
la Première Loi.
Troisième Loi
Un robot doit protéger sa propre existence aussi longtemps
qu’une telle protection n’est pas en contradiction avec la
Première et/ou la Deuxième Loi.
I. Asimov – Les robots
En robotique, l’apprentissage par imitation est utilisé dans plusieurs types
d’applications : apprentissage de gestes, de postures, de trajectoires, ... (voir section
2.3). Nos travaux portent sur l’apprentissage de trajectoires et ils s’intègrent dans une
démarche plus globale. Depuis une dizaine d’années, les chercheurs de notre équipe ont
développé, autour d’un outil de simulation (Leto/Promethe), des algorithmes de vision
[64], d’apprentissage [64, 159], de planification et de navigation [68], de reconnaissance de
formes [167]. La plupart des travaux ont abouti à une implantation des algorithmes sur
des robots mobiles, Koala (voir annexe A)).
Le présent travail s’inscrit dans la même perspective, mais avec des contraintes de
temps réel que n’avaient pas les précédents travaux. En effet, pour interagir avec un
humain ou un autre robot, la maı̂trise des temps d’exécution des différentes tâches devient
primordiale.
161
Section 6.0
Conclusion
Dans le cas de robots capable uniquement de se déplacer, l’imitation consistera à apprendre des trajectoires ou des lieux grâce aux informations fournies par d’autres robots
ou humains. Un scénario possible serait le suivant. Dans une exploitation minière
entièrement robotisée, des robots vont chercher du minerai dans une galerie particulière
et le transporter vers une station de traitement. Si le minerai vient à s’épuiser dans la
galerie ou si le chemin d’accès est obstrué, les robots sont forcés de passer dans un mode
d’exploration. Si un robot connaı̂t ou se trouve un autre moyen de se procurer de minerai,
il suffit aux autres robots de le suivre une fois qu’ils ont vu qu’il déposait du minerai à la
station de traitement. En le suivant, ils découvriront forcement la source du minerai et
seront capables d’apprendre pour eux même le trajet à effectuer. Nul besoin dans ce cas là
de mécanisme de communication complexe. Mais surtout nul besoin de coordination centrale. Par exemple, si 2 robot connaissent le chemin vers 2 sources de minerai différentes
alors on peut supposer qu’un robot ne sachant pas où aller aura une chance sur 2 de
suivre l’un ou l’autre des robots. Si l’une des sources est plus lointaine ou plus difficile à
exploiter alors les robots ayant trouvé la source la plus “pratique” reviendront plus vite
et auront une probabilité plus grande de recruter des robots pour qu’ils les suivent. Au
bout d’un certain temps la quasi totalité des robots iront donc vers la source de minerai
la plus pratique.
L’utilisation de propriétés émergents des interactions entre les robots est clairement
en ligne de mire de notre travail et permettrait de trouver des applications robotiques
réalistes à tous les paradigmes d’intelligence collective développés en éthologie [54, 181].
L’intérêt de disposer des capacités de vision et de navigation évoluées induit alors une
simplification des contraintes liées aux interactions avec l’environnement physique (pas
besoin de laisser de trace de phéromone par exemple). D’un autre coté ce type de démarche
permet d’éclairer les concepts liés à l’intelligence sociale chez l’animal et l’homme sous un
nouvel angle.
Si l’on revient maintenant à nos problèmes pratiques, on peut se poser certaines questions : quelles sont les caractéristiques d’une trajectoire? que faut-il apprendre pour être
sur d’avoir appris une trajectoire? Afin de répondre à ces questions, nous avons regardé
de plus près l’interprétation d’une trajectoire. Une trajectoire peut avoir au moins 2
interprétations : temporelle ou spatiale. Considérons, par exemple, que le robot “professeur” exécute la trajectoire A 7→ B 7→ C 7→ D (voir figure 6-1 (a)).
L’interprétation temporelle de cette trajectoire est : avance tout droit pendant n secondes, tourne à 90 degrées, avance encore m secondes, .... Dans ce cas, l’apprentissage
de la trajectoire se confond avec l’apprentissage d’une séquence (voir chapitre 5) dont les
éléments sont les changements d’orientations. Évidemment, nous pouvons remplacer les
intervalles avec des couples distance/vitesse mais l’interprétation reste la même. Suivant
cette interprétation, une fois la trajectoire apprise, elle est parcourue sans tenir compte
des lieux particuliers de passage (voir figure 6-1 (b)).
L’interprétation spatiale de cette trajectoire est : il faut passer d’abord par le point
A, ensuite aller en B, .... Dans ce cas, l’apprentissage de la trajectoire revient à
l’apprentissage de quelques lieux de passage dans l’environnement. Selon l’interprétation
- 162 -
Chapitre 6
A
D
Apprentissage de séquences temporelles
B
C
Figure 6-1. (a) Trajectoire du professeur. (b) Interprétation temporelle de cette trajectoire. (c) Interprétation spatiale de cette trajectoire.
spatiale, une fois les lieux de passage appris, le chemin de déplacement entre eux ne
compte plus (voir la figure 6-1 (c)).
Dans ce chapitre, nous allons nous intéresser principalement au premier aspect de
l’apprentissage par imitation d’une trajectoire. Dans un premier temps, nous présentons
une architecture capable d’apprendre l’aspect temporel de la trajectoire. L’architecture
est basée sur une modélisation de l’hippocampe qui utilise l’algorithme d’apprentissage de
séquences présenté en chapitre 5. Ensuite, nous présentons une architecture qui permet
l’apprentissage et la reconnaissance de l’apparence visuelle du professeur. L’apprentissage
des lieux pourrait être réalisé par la même architecture car le modèle de l’hippocampe
sur lequel nous travaillons est capable de traiter simultanément ces 2 aspects [65]. Malheureusement, pour des raisons de temps, nous n’avons pas pu compléter à temps ce
travail afin de le présenter ici.
- 163 -
Section 6.1
6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
Architecture pour apprendre l’aspect temporel
d’une trajectoire
Si nous reprenons l’architecture globale de notre système (voir figure 2-4), nous observons
que l’apprentissage d’une trajectoire (séquence de mouvements) est réalisé par 2 circuits :
la proto-imitation et l’apprentissage de séquences. Selon notre approche de l’imitation
(voir section 2.4), le mécanisme de proto-imitation est implanté comme un mécanisme de
poursuite réflexe. Nous avons réalisé plusieurs implantations de ce mécanisme dont les
résultats sont présentés dans la section 6.1.1.
Le mécanisme d’apprentissage de séquences est basé sur le modèle d’hippocampe
présenté dans la section 5.2. Dans la section 6.1.2 nous allons présenter quelques résultats
issus de nos expériences.
Motivations
Apprentissage
de sequences
Apprentissage
de sequences
Perception du
mouvement
Actions
Proto
imitation
Figure 6-2. Architecture globale pour l’apprentissage de l’aspect temporel d’une trajectoire.
6.1.1
Mécanisme de poursuite réflexe
Pour commencer, nous avons utilisé un mécanisme de poursuite réflexe très simple qui
consiste à aller dans la direction du centre de la zone du mouvement perçu. La figure 6-3
montre un exemple typique de situation de poursuite réflexe utilisée dans nos expériences.
Nous avons utilisé comme professeur un autre robot ou un humain.
La perception du mouvement utilise la méthode par différence d’images seuillés,
présenté dans section 4.2.1. Une image “intégrée” est construite à partir de l’intégration
temporelle de quelques images issues de la caméra CCD du robot (voir figure 6-4 (a)).
Une image de ”mouvement” est alors directement calculée (voir figure 6-4 (b)) en seuillant
- 164 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
Figure 6-3. Une situation de suivi typique (a) d’un robot (MIT handy board) ou (b) d’un humain.
la différence entre 2 images “intégrées” avec des constantes de temps différentes (5 et 10
dans notre expérience).
b)
a)
Figure 6-4. a) Une image utilisée par notre robot pour le mécanisme de suivi. b) L’image de différence
construite à partir de 2 images intégrées avec des constantes de temps différentes donne des informations
sur la position des objets en mouvement.
Généralement, dans notre architecture, les informations sont codées sur des cartes de
neurones formels. Ainsi, l’image de mouvement constitue l’entrée pour la carte de neurones qui représente la perception du mouvement. Par analogie avec le système de vision
humain ( voir section 3.2.2), les neurones de cette carte (V1) ont des entrées provenant de
plusieurs points de l’image de mouvement (la rétine). Dans notre architecture, l’activité
des neurones est normalisée (voir figure 6-5 (a)).
La carte motrice est une carte topologique à une seule dimension correspondant aux
différentes possibilités de direction de mouvements codées en azimut. Chaque neurone
- 165 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
vitesse
Direction du mouvement
Mouvement percu
max
min
angle
0
-35
+35
Figure 6-5. (a) Perception des mouvements du professeur. La différence entre 2 images intégrées dans
le temps (figure 6-4) est copiée sur une carte de neurone 2D. (b) Le résultat de l’image de mouvement est
sous échantillonné et le centre de la zone d’activité maximale est utilisé pour contrôler les mouvements
du robot. Une vitesse d’avancement et un angle de rotation en sont directement déduits.
représente ainsi une commande motrice (transmise par la suite au robot) du type tourner
de x degrés et avancer d’une certaine distance. Pour simplifier, on peut considérer que la
direction du mouvement à effectuer est celle associée au neurone le plus actif sur la carte
motrice (voir figure 6-6). L’orientation du mouvement à exécuter est calculée à partir de
la projection, de la sommation et de la compétition sur la carte motrice des neurones de la
carte de perception du mouvement. De même, la vitesse d’avancement peut être déduite
par projection, sommation et compétition sur une carte de neurone 1D associée à l’axe y
de la même carte (voir figure 6-5 (a)).
Perception du mouvement
t+2
t+3
t+1
t
Professeur
t+3
CCD
t
Élève
t+2
liaison 1 vers 1
liaison 1 vers tous
DM
CM
t+1
Figure 6-6. (a) Schéma d’un mécanisme réflexe. La sortie motrice est exprimée dans les mêmes coordonnées que l’information rétinienne (coordonnées égocentriques). CCD - caméra CCD, DM - projection
horizontale du mouvement perçu CM - sortie motrice. (b) Le mécanisme réflexe permet en même temps
de suivre un objet en mouvement (cible) ou d’éviter une collision en fonction du mouvement et de la
distance apparente de la cible.
Si le professeur se déplace et est très proche du robot élève (dans la partie basse de
- 166 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
l’image de mouvement) alors un mécanisme réflexe impose une vitesse négative et le robot
essaiera d’éviter la collision comme montré sur la figure 6-6 (b). Le même mécanisme
d’évitement peut être réalisé avec l’utilisation du flot optique. Nous pouvons supposer
que le robot a déjà appris à aller en arrière ou en avant en fonction de la perception d’une
expansion ou d’une contraction du flot optique. De la même manière, quand un foyer
d’expansion apparaı̂t sur la gauche, le robot a appris à tourner à droite. Ce comportement
est gelé dans le réseau de neurones et est considéré comme un mécanisme réflexe par
rapport à l’apprentissage de notre tâche. Ce mécanisme ”câblé en dur” permet à l’élève
de maintenir toujours la même distance avec son professeur durant la tâche de poursuite
(éviter qu’il n’entre en collision avec son professeur).
6.1.1.1
Limitations du mécanisme de suivi simple
Afin d’apprendre une séquence, le robot élève doit détecter et apprendre les transitions
entre les orientations successives de son corps et être capable de les reproduire. Les informations (mouvement perçu et commandes motrices) sont représentées en coordonnées
égocentriques. Une référence d’orientation arbitraire (alocentrique) doit être maintenue
afin de permettre au robot d’apprendre correctement ses transitions d’orientation. La direction absolue est maintenue par une compas magnétique (sondes à effet Hall) mais toute
autre mesure d’odométrie pourrait être utilisée (informations gyroscopiques équivalentes
à un système vestibulaire par exemple). L’azimut de référence est choisi en fonction de
l’orientation du robot au début de chaque séquence d’apprentissage ou de test. De cette
manière, le robot reproduira la séquence motrice relativement à son orientation de départ.
Le mécanisme de suivi décrit dans la section précédente permet au robot élève de suivre
correctement son professeur mais les mouvements sont très bruités et donc inutilisables
pour l’apprentissage d’une séquence (voir la courbe représentant l’orientation du robot au
cours d’un suivi figure 6-8). Le ”bruit” est principalement dû à la difficulté de localiser
correctement le centre de la zone en mouvement que le robot doit suivre. Quand le
professeur change de direction, son apparence visuelle change et le centre de la zone en
mouvement perçue par l’élève peut se déplacer très vite sans lien direct avec sa trajectoire
réelle. De la même manière, des problèmes de détection de la zone en mouvement liés à
des problèmes de choix de seuil peuvent changer très rapidement la forme de l’enveloppe
de la zone en mouvement et compliquer le suivi. De plus, quand le professeur est un
humain, le robot élève perçoit souvent les 2 jambes comme deux objets différents. Ainsi,
le robot élève suit alternativement chacune des jambes et un mouvement sinusoı̈dal se
superpose à la trajectoire correcte!
Une autre cause de déformation de la trajectoire est due au fait que le robot élève prend
des ”raccourcis” à chaque fois que le professeur tourne (voir figure 6-15) et ne marque
donc pas de transition claire entre une orientation et la suivante (l’ensemble des rotations
successives pour suivre le professeur n’est pas systématique).
L’utilisation d’algorithmes de filtrage classique permet la suppression partielle de ces
différents bruits mais rend plus difficile l’estimation de l’instant qui doit être appris et
associé au déclenchement d’une transition nette. La détection précise des transitions du
- 167 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
Apprentissage
de séquences
CCD
DM
SW
PM
avancer
Ordres robot
MO (rotation du corps)
(WTA)
C
Figure 6-7. Schéma d’un mécanisme réflexe capable de contrôler l’orientation du corps du robot pour une
tâche de suivi. La sortie motrice est exprimée dans les mêmes coordonnées que l’information rétinienne
(coordonnées égocentriques) ce qui simplifie grandement l’architecture pour l’apprentissage de séquences.
CCD- caméra CCD, DM - projection horizontale du mouvement perçu, MO - sortie motrice (groupe
compétitif du type ”Winner Take All”), SW - bloc de commutation pour la translation des informations
angulaires, C - compas magnétique, PM - carte de projection associée au mouvement perçu en coordonnées
égocentriques.
robot devient impossible. Le problème pourrait peut être se résoudre par l’utilisation
de mouvement élémentaires plus courts (pour obtenir plus de points pour la courbe
d’orientation du robot) mais alors la vitesse limitée de nos ordinateurs fait que le professeur doit bouger si lentement que toute expérience devient pratiquement irréalisable.
De même, accroı̂tre les dimensions de la pièce utilisée pour l’expérience n’est pas une solution acceptable car les intervalles de temps entre 2 transitions s’accroissent de manière
importante et ne permettent pas à un professeur humain de répéter correctement la trajectoire avec le même timing (les humains ne sont pas de bon professeur pour apprendre
à reproduire avec précision des séquences composées de long intervalles de temps).
Le principal problème est de filtrer le ”bruit” de mouvement lié à la variabilité du
mouvement perçu (perception de la forme de la cible, limitations de la caméra CCD...)
et de dépasser les limitations des mouvements que l’élève peut faire à chaque instant
(contraintes mécaniques). Ainsi, les orientations successives du professeur doivent être
intégrées dans le temps. Un changement d’orientation ne doit être pris en compte que
si les variations intégrées de l’orientation du professeur dans l’espace sont suffisamment
grandes.
Il existe un dilemme entre la nécessité de filtrer la trajectoire et la nécessité de détecter
précisément les variations de l’orientation du corps du robot élève. Un filtrage linéaire et
passif n’est donc pas être une bonne solution pour permettre une segmentation précise de
- 168 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
160
140
120
Angle
100
80
60
40
20
0
5
10
15
20
Time
25
30
35
40
Figure 6-8. Courbe représentant l’orientation du robot élève au cours du temps alors qu’il suivait un
robot professeur réalisant une trajectoire en ”zigzag” presque parfaite (alternance de virages à +/- 90
degrés - voir figure 6-15). L’orientation est exprimée en degrés. La direction 0 degrés correspond au nord
magnétique.
la séquence de mouvements (nous avons du abandonner une solution qui utilisait un tel
mécanisme).
6.1.1.2
Filtrage actif pour la segmentation du mouvement
A cause de tous ces problèmes de filtrage, nous avions d’abord décidé que les mouvements
à imiter seraient forcément composés de mouvements en ligne droite (pas de mouvement
courbe). Mais alors, si le robot n’est autorisé qu’à réaliser des mouvements en ligne
droite, il perd très souvent le professeur (le professeur sort du champs de vision réduit1
du robot élève après qu’il ait effectué un changement brutal de son orientation). Pour
éviter ce nouveau problème, nous permettons à la caméra du robot (la tête du robot) de
tourner grâce à un servo moteur contrôlé en azimut (rotation dans la plan horizontal).
Dans ce nouveau système, la tête essaie de poursuivre le professeur en le recentrant
systématiquement dans son champs de vision. Le corps du robot tourne seulement si
le mouvement du professeur est observé sous le même angle de vision pendant un certain
intervalle de temps. Ce comportement ressemble à ceux des animaux (prédateurs par
exemple) [27].
Ainsi le filtrage est réalisé à partir des informations liés à la rotation de la tête et
non plus directement à partir de l’image perçue. L’introduction de ce nouvel élément
permet au robot élève de réaliser une trajectoire ”propre” composée de long segments de
mouvements en ligne droite (voir figure 6-9). L’orientation de la tête correspond à l’axe
principal du champs de vision de la caméra du robot. Elle est mesurée par rapport à l’axe
1
Le champ de vision de la caméra CCD de notre robot est limité à 70 dégrées. Prendre une optique
permettant d’augmenter le champ de vision ne serait pas une très bonne solution car l’image est ensuite
trop déformée pour qu’elle soit utilisable pour une tache de reconnaissance précise. L’idéal serait soit
une double caméra, soit une rétine directement inspiré de l’oeil et permettant d’avoir une zone de vision
foveale et périphérique.
- 169 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
200
180
160
140
Angle
120
100
80
60
40
20
0
0
5
10
15
Time
20
25
30
Figure 6-9. Courbe représentant l’orientation du robot élève au court du temps. L’orientation est
exprimée en degrés. L’orientation 0 degrés correspond à la direction du nord.
longitudinal du corps du robot.
Les détails de l’architecture neuronale permettant de réaliser ce filtrage actif ainsi que
le suivi du professeur sont présentés dans sur la figure 6-10. Le groupe de neurone d’entrée
(MI) procure des informations sur les mouvements perçus en tant qu’angles relatifs à la
direction de la tête. Ces informations angulaires sont translatées par un mécanisme de
commutation simple (switching block SW) en angles par rapport à un référentiel absolu
(alocentrique). Pour cette translation, le bloc SW utilise l’orientation absolue du robot
obtenue à partir du compas magnétique (C). L’orientation de la tête (φ) et l’orientation
du corps sont des données supposées toujours disponibles.
Le temps nécessaire pour intégrer suffisamment l’activité liée à l’orientation de la tête
et déclencher une rotation du corps du robot permet à l’élève d’apprendre à prédire le
délai entre deux instants précis de changement d’orientation. En effet, comme le robot
élève est à approximativement 60 cm ou 90 cm du professeur, il y aurait un problème
s’il tournait exactement au même instant que le professeur (il doit attendre le temps
nécessaire à parcourir la distance entre lui et l’endroit où se trouvait son professeur! Le
délai nécessaire à l’élève pour prendre la décision de changer d’orientation lui permet
de maintenir à peu prêt une distance constante avec son professeur. De même, ce délai
permet d’obtenir une mesure correcte de l’intervalle de temps entre 2 rotations successives
du professeur (l’élève doit seulement mesurer l’intervalle entre 2 de ses propres rotations).
Un premier réflexe (réflexe d’orientation de la tête - voir figure 6-10) est utilisé pour
permettre un alignement rapide de la tête avec la direction du mouvement. La proprioception liée à la sortie motrice contrôlant la rotation de la tête est alors utilisée comme
entrée d’un second mécanisme réflexe contrôlant l’alignement du corps du robot avec la
direction de la tête et par la même la direction du mouvement perçu (réflexe d’orientation
du corps). L’échelle de temps du réflexe d’orientation du corps est évidemment d’un ordre de grandeur différent de celle associée au réflexe d’orientation de la tête (à cause des
différences d’inertie). L’intégration dans le temps (constante de temps lente) permet au
corps de ne tourner que si les mouvements perçus induisent une rotation ”stabilisée” de
- 170 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
C
SW
φ
PM
PMI
CM
Apprentissage
MO(WTA) de séquences
DM
CCD
rotation de la caméra
avancer
échelle temporelle 1
Ordres robot
(rotation du corps)
échelle temporelle 2
Figure 6-10. Schéma d’un mécanisme réflexe capable de contrôler en même temps l’orientation de la tête
et le corps du robot pour une tâche de suivi. La sortie motrice est exprimée dans les mêmes coordonnées
que l’information rétinienne (coordonnées égocentriques) ce qui simplifie grandement l’architecture. CCDcaméra CCD, DM - projection horizontale du mouvement perçu, MO - sortie motrice groupe compétitif
du type ”Winner Take All”, SW - bloc de commutation pour la translation des informations angulaires, Ccompas magnétique, PM - carte de projection associée au mouvement perçu en coordonnées égocentriques,
CM - carte de neurones permettant de faire tourner la caméra, PMI - intégration du mouvement perçu.
la tête durant un temps suffisamment long.
La figure 6-11 montre une situation de poursuite dans laquelle il n’y a aucune variation
de l’orientation du corps du robot car le professeur semble bouger dans des directions
différentes d’un instant à l’autre (filtrage actif par la rotation de la tête)
La figure 6-12 montre le cas opposé. A l’instant t0 , la direction du mouvement perçue ne
varie pas de manière suffisamment stable pour générer un changement dans l’orientation
du corps. A l’instant t1 , le mouvement du professeur apparaı̂t toujours à peu prêt dans
la même direction. L’intégration temporelle de l’activité en entrée devient suffisamment
grande et déclenche une rotation du corps de l’élève dans la direction du professeur.
La figure 6-13 montre une situation typique au cours de laquelle le robot élève réussit à
suivre correctement le professeur (il tourne au bon endroit - après un délai correct) même
si les mouvements du professeur apparaissent quelque fois dans la mauvaise direction.
Afin de permettre un changement continu de la direction, sans des changements
brusques d’orientation, nous avons utilisé les champs neuronaux dynamiques (voir section 3.4). La compatibilité de notre architecture avec les champs neuronaux (le même
codage topologique) permet à notre robot de choisir entre plusieurs cibles et de verrouiller
le suivi sur une cible. Les champs dynamiques permettent également d’éviter efficacement
des obstacles (voir [169, 29]).
- 171 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
t0C
t0
t1
t0A
0
t1A
t0B
élève
la trajectoire de l’élève
professeur
t0A
0
t0C
t0B
la trajectoire du professeur
t1A
MO
PMI
MI
Figure 6-11. Aperçu d’une situation de poursuite sans changement de l’orientation du corps du robot
(filtrage actif par la rotation de la tête)
t0 B
0
1
0
1
t0 A
0
1
0
1
t0 C
0
1
0
1
0
1
t1 A
1
0
0
1
t1 B
0
1
0
1
t1
t1 C
t2
0
1
11
00
0
1
00
0 11
1
professeur
t0 A
t0 B
t0 C
MO
(avancer)
PMI
MI
t0
(rotation de la tête)
élève
t1 A
(rotation de la tête)
t1 B
(rotation de la tête)
t1 C
(rotation du corps)
MO
PMI
MI
(rotation de la tête)
(pas de rotation de la tête) (pas de rotation de la tête)
Figure 6-12. Mécanisme de filtrage utilisé pour supprimer le ”bruit” des mouvements perçus. A l’instant
t0 , la direction du mouvement perçu varie (t0A , t0B et t0C rotation de la tête) mais n’est pas suffisamment
stable pour générer un changement dans l’orientation du corps (voir l’activation du groupe PMI). Au
temps t1 , le mouvement de professeur apparaı̂t toujours dans la même direction (pas de changement de
direction de la tête lors les itérations précédentes) et l’élève réalise une rotation du corps. MI- projection
horizontale du mouvement perçu, PMI - intégration dans le temps du mouvement perçu, MO - sortie
motrice.
- 172 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
rotation de la tête
rotation du corps
élève
la trajectoire du professeur
Figure 6-13. Exemple d’une situation typique de poursuite.
6.1.2
Exemple d’apprentissage d’une séquence
Au départ de l’expérience, nous considérons que l’orientation du robot élève est au ”0”
degré (orientation de référence). Le robot élève n’essaie pas volontairement d’apprendre
à imiter un humain ou un autre robot. Il apprend seulement à reproduire ses propres
séquences d’actions induites par le comportement réflexe de suivi. Après l’apprentissage
d’un certain nombre de séquences, nous supposons que l’activation d’une motivation
interne, ou la détection d’un signal externe spécifique déclenche la reproduction d’une
séquence particulière en considérant l’orientation de départ du corps comme l’orientation
de référence (comme pour des pas de danse par exemple). Si le robot élève réalise un comportement (A) et qu’après un certain intervalle de temps il ne reçoit aucune récompense,
il peut décider qu’il en a assez de reproduire ce comportement et changer de comportement. L’état de cette variable peut être modifié grâce à un signal de renforcement direct
ou être le résultat d’un autre calcul neuronal. Par exemple, la variable interne qui module
le comportement du robot est dans notre cas directement reliée aux capteurs infra rouges
qui sont situés tout autour du robot et qui permettent de mesurer la proximité d’un obstacle. En touchant l’un de ces capteurs, l’état de la variable interne se trouve modifié et
déclenche le comportement associé avec le type de contact détecté. Ce type d’interactions
avec le robot peut être vu comme une forme primitive de communication (un contact à
un endroit donné du ”corps” du robot acquérant une signification particulière).
L’architecture globale du système est illustrée dans la figure 6-14 :
Cette architecture est une superposition des architectures déjà présentées : celle de
- 173 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
Motivations
Batterie de neurones (DG)
d
dt
t
Bloc
derivateur (EC)
Bloc de prediction (CA3)
CCD
Entrees (DM)
PMI
(rotation tete)
Sortie motrice (MO)
(rotation corps)
liens de 1 à 1
liens de 1 à tous
Figure 6-14. Représentation simplifiée de l’architecture PerAc permettant de combiner mécanisme
réflexe de suivi et apprentissage de séquence. CCD - caméra CCD, M - Motivations, DM - projection horizontale du mouvement perçu, MO - sortie motrice groupe compétitif du type ”Winner Take
All”, DG - carte de neurones de type G (batterie de cellules à réponse retardées), EC - carte de neurones
de type D (dérivateur), CA3 - carte de neurones de type P (prédiction), PMI - intégration du mouvement
perçu dans le temps.
proto-imitation (voir figure 6-10) et celle d’apprentissage d’une séquence (voir figure 526).
Nous décrivons maintenant, étape par étape, l’activation et l’apprentissage des
différentes composantes du système quand un professeur humain réalise pour le robot
une trajectoire en zigzag. Pour plus de clarté, nous supposons que le groupe de dérivation
temporelle (EC dans la figure 6-14) reçoit une séquence de formes élémentaires tels que
”continuer tout droit dans cette direction”, ”tourner à droite de 90 degrés et aller tout
droit”... du groupe correspondant à la sortie motrice (MO). Pour apprendre la trajectoire en zigzag (voir figure 6-15), nous considérerons que le robot élève doit apprendre
le timing des transitions entre deux orientations, c’est-à-dire la transition d’une direction
1 à une direction 2 et la transition d’un direction 2 vers la direction 1. Pour simplifier,
nous parlerons des formes 1 et 2. Au début de l’apprentissage de chaque comportement,
le “professeur” touche un capteur infrarouge particulier qui détermine l’activation d’une
motivation (M dans la figure 6-14). Le robot commence à avancer, en considérant que
son orientation est l’orientation de référence. En même temps, la forme 1 est activée
- 174 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
par la sortie motrice (MO dans la figure 6-14). Lorsque la forme 1 est activée au niveau
du groupe moteur (MO), les neurones correspondant de EC perçoivent une variation et
déclenchent les neurones du banc de filtre correspondant (DG) et la sortie est envoyée
au groupe de prédiction (CA3). Après un certain temps, la détection d’un changement
d’orientation détermine l’activation de la forme 2 en MO ce qui déclenche l’apprentissage
de la transition de la forme 1 vers la forme 2. Après la fin de l’apprentissage, c’est-à-dire
lorsque l’événement 1 est présenté à nouveau, la transition de 2 à 1 peut être apprise et
permettre ainsi une réactivation cyclique de la séquence en absence de stimulation externe. A ce moment de la répétition de la séquence, la capacité prédictive de CA3 devient
opérationnelle. La séquence ”1,2,1,2...” est maintenant apprise et peut être reproduite
sans le professeur. L’activation de la forme 1 permet de déclencher la transition ”1 vers
2”, qui active la forme 2 qui déclenche la prédiction de la transition de ”2 vers 1” qui
déclenche l’activation de la forme 1 et ainsi de suite.
Une activation ultérieure du même capteur infrarouge sera suffisante au déclenchement
de l’action correspondant à la forme 1. De plus, réaliser cette action procure de nouvelles
entrées au système de prédiction qui de proche en proche conduit à la reproduction de
la séquence et à son renforcement. Ainsi rejouer la séquence permet de la maintenir
en ”mémoire” plus longtemps. Le mécanisme d’apprentissage nécessite seulement que
le robot mime une ou deux fois la séquence complète de mouvements pour prédire les
transitions (le système apprend le timing) et pour rejouer correctement la séquence.
L’activation d’un autre capteur infra rouge permet l’apprentissage (de rejouer) d’un
comportement différent. Dans une de nos expériences, le robot doit apprendre 3
séquences de mouvements: un carré, un zigzag et un mouvement complexe (voir figure 6-15). La trajectoire de l’élève n’est évidemment pas exactement celle de son professeur. L’échantillonnage des mouvements avec une grande constante de temps et les
limitations de la caméra CCD sont les sources principales de cette sorte de ”bruit”. Le
bruit est supprimé en utilisant le mécanisme de filtrage actif décrit dans la section 6.1.1.2.
Les trajectoires apprises, c’est-à-dire les trajectoire réalisées par le robot élève après la
période d’apprentissage sont très proches de la trajectoire du professeur. Les erreurs sont
inférieures à que 10% en orientation et/ou en distance (voir figure 6-15 (a) et (b)). Nous
avons appris a notre élève un trajectoire plus “complique” (voir figure 6-16 (a)). Celui-ci
l’a reproduit dans une autre pièce avec une orientation de départ différente (voir figure
6-16 (b)).
- 175 -
Section 6.1
Architecture pour apprendre l’aspect temporel d’une trajectoire
Sud
porte
armoire
caisse
table
étagères
La trajectoire du suivi
La trajectoire du professeur
caisse
chaise
5.4m
Ouest
station
Est
La trajectoire reproduite
table
table
table
station
chaise
table
planches
caisse
fenetre
7.2m
Nord
Sud
porte
armoire
caisse
table
étagères
La trajectoire du suivi
La trajectoire du professeur
Est
caisse
chaise
5.4m
Ouest
station
table
Reproduction de la
trajectoire apprise
table
table
station
chaise
table
planches
caisse
fenetre
7.2m
Nord
Figure 6-15. 2 trajectoires apprises durant la même expérience robotique par notre robot. La reproduction d’une séquence donnée est déclenchée lorsque l’utilisateur touche le corps du robot à un endroit
précis (mécanisme de communication simple).
- 176 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
Sud
porte
armoire
caisse
table
étagères
La trajectoire du suivi
La trajectoire du professeur
Est
caisse
chaise
5.4m
Ouest
station
table
table
table
station
chaise
table
planches
caisse
fenetre
7.2m
Nord
Sud
fenetre
table
porte
porte
Reproduction de la
trajectoire apprise
Est
8.7m
Ouest
table
porte
12.5m
Nord
Figure 6-16. (a) La trajectoire apprise dans la salle “pongo”. (b) La trajectoire reproduite dans la salle
“courrier” (transmission radio avec la station de travail “pongo” contrôlant le robot.
- 177 -
Section 6.2
6.2
Apprendre à reconnaı̂tre le “professeur”
Apprendre à reconnaı̂tre le “professeur”
L’architecture d’apprentissage par imitation que nous avons présentée utilise le mouvement pour suivre le professeur. Mais nous pouvons nous demander : que fera notre
“élève” si son professeur s’est arrêté, ou qu’il est occulté par un autre objet? Que se
passe-t-il si le professeur franchit une porte? La réponse est immédiate : notre “élève”
ne peut pas continuer à suivre son “professer” et donc le processus de proto-imitation est
interrompu. Une solution pour ce problème est de doter l’élève d’un mécanisme permettant d’identifier le professeur. Le principe de notre architecture est simple : en partant
de l’image acquise par la caméra (pour la détection du mouvement) l’élève détermine la
position de son professeur et va la fusionner avec la position obtenue par le mécanisme
de détection du mouvement (voir figure 6-17). L’utilisation des champs neuronaux pour
le contrôle moteur prend ici toute son importance.
Vision
locale
Reconnaissance
visuelle
Reconnaissance
du professeur
Perception du
mouvement
Actions
Proto
imitation
Figure 6-17. Architecture pour l’apprentissage et la reconnaissance. Nous avons représenté uniquement
les niveau proto-imitation et la reconnaissance du professeur.
Dans cette section nous allons détailler un système de reconnaissance de la forme
visuelle du professeur. Dans un premier temps, nous allons décrire le mécanisme utilisé
pour la reconnaissance du professeur. Il s’agit d’un mécanisme basé sur l’utilisation
d’un détecteur de points caractéristiques et sur un système neuronal de focalisation de
l’attention. Ensuite, nous présenterons l’intégration de ce mécanisme de reconnaissance
des formes et celui de détection du mouvement dans la même architecture. Afin de réduire
le temps de boucle à une valeur acceptable pour une application de robotique mobile, nous
montrerons comment paralléliser cette architecture sur une réseau de station de travail.
Enfin, nous présenterons quelques résultats des expériences effectuées avec l’architecture
globale.
6.2.1
Mécanisme de focalisation de l’attention
Dans la littérature scientifique, nous trouvons une multitude de mécanismes de reconnaissance d’objets (voir [35] pour une synthèse). Pour identifier les objets dans une image,
- 178 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
nous devons définir des attributs et des primitives pertinentes. Parmi les choix possibles,
nous avons utilisé les points caractéristiques (parfois nommées points anguleux, coins ou
points d’intérêt). Mais comment faire une sélection parmi tous les points caractéristiques
d’une image? Quel critère pouvons-nous utiliser? Afin de répondre à ces questions, nous
avons introduit un mécanisme neuronal de focalisation de l’attention qui détecte les points
caractéristiques dans une image et qui réalise un ordonnancement des points selon leur intensité en utilisant un balayage successif de tous les points caractéristiques. Ce mécanisme
est en adéquation avec les données neurobiologiques : le balayage séquentiel des points
intéressants dans une image a été observé chez les singes et les humains [142].
La figure 6-18 illustre l’architecture globale de ce mécanisme :
répéter N fois pour
N points au maximum
reset
tampon
image d’entree
image du gradient
calcul des points
caractéristiques
calcul du
gradient
Acquisition
image
carte de points
caractéristiques
carte WTA
étape algorithmique ou neuronale
liens de 1 vers 1 excitateurs
liens de 1 vers 1 inhibiteurs
Figure 6-18. Schéma de l’architecture du mécanisme neuronal de focalisation de l’attention.
La première étape consiste à calculer la norme gradient de l’image d’entrée. Nous
utilisons un filtre de Deriche [56, 57] réalisé dans une implantation logicielle avec des
filtres mono-dimensionnels récursifs [51] dont l’équation est :
y[n] = (1 − α) · x[n] + α · y[n − 1]
(1)
avec y[n] la sortie à l’instant n, x[n] l’entrée et α une constante. Le résultat du calcul
de la norme du gradient est nommée l’image du gradient (voir figure 6-18). Nous avons
préféré cette technique à une approche purement neuronale pour des raisons de temps
d’exécution (les résultats étant de qualité équivalente) [46].
L’image du gradient est convoluée avec une fonction de type chapeau mexicain inversée -qui représente la forme du réponse d’une cellule centre-OFF, inhibition au centre,
excitation dans un voisinage plus large (voir figure 6-19 (a))- dont l’équation est :
2
2
2
− x +y
− x +y
1
1
2ρ2
2ρ2
1
2
G(x, y) = G1 (x, y) − G2 (x, y) =
.e
.e
−
2
2
2πρ1
2πρ2
- 179 -
2
(2)
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
avec x, y ∈ [−P, P ], P, ρ1 , ρ2 constante.
L’opération de convolution nous permet d’avoir un seul maximum dans une région dont
la taille est fixée par la taille du filtre DOG. Le résultat obtenu est transféré sur une carte
neuronale, que nous appelons la carte des points caractéristiques (voir figure 6-18) et dont
la taille est la même que celle du l’image de gradient.
A titre d’exemple, la figure 6-19 (b) présente l’image de gradient sur laquelle nous
avons superposés les points caractéristiques détectés sur la première image de la séquence
t N 270 20 (voir figure 4-3).
Coupe dans la forme du masque
1
0
00
011
1
00
11
0.01
0.005
0
−0.005
−0.01
−0.015
−0.02
−15
−10
−5
0
5
10
15
Figure 6-19. (a) La forme du DOG utilisé pour l’extraction de points caractéristiques (P = 13, ρ1 =
1.7, ρ2 = 2.1). (b) La norme du gradient et les points caractéristiques le plus actifs (le croix entoures
d’une cercle) superposées avec α = 0.98. L’image de départ c’est la première image de la séquence
t N 270 20 (voir figure 4-3).
On définit qu’un point est d’autant plus intéressant qu’il est associé à une forte courbure et que le gradient est localement fort. Ce deux critères nous permettent d’introduire
une relation d’ordre et de classer les points caractéristiques. Pour avoir une focalisation de l’attention, le système doit être capable d’explorer l’image (la balayer) et de
sélectionner les points caractéristiques les plus intéressants. Cette sélection des points
caractéristiques doit se faire dans l’ordre décroissant des intensités associées à chaque
point (ordre de pertinence). Pour éliminer la possibilité qu’un point déjà sélectionné ne
soit à nouveau sélectionné au cours du même balayage, nous avons employé le mécanisme
neuronal présenté sur la figure 6-18. Une carte de neurones WTA de même taille que celle
des points caractéristiques a pour entrée la carte des points caractéristiques (liaisons de
1 vers 1 entre les neurones). Les sorties de chaque neurone sont renvoyées à l’entrée, via
une liaison inhibitrice avec une constante de temps assez longue (tampon). L’activation
d’un neurone sur le WTA, provoquera son inhibition future. Ainsi l’inhibition permet
d’empêcher la sélection des neurones précédemment activés et de choisir le prochain plus
fort point caractéristique. L’abscisse et l’ordonnée du point sélectionné dans l’image est
obtenu en faisant une projection de la carte WTA suivant les x ou suivant les y. Ceci est
réalisé de manière neuronale en connectant de manière adéquate des neurones sommateurs
comme présenté sur la figure 6-20.
- 180 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
carte
projection suivant y
Σ
Σ
Σ
Σ
carte WTA
.
.
.
.
.
. . . . . .. .
.
Σ
Σ
Σ
Σ
Σ
Σ
.
Σ
Σ
.
Σ
carte
projection suivant x
Figure 6-20. Projection suivant x et suivant y de la position du point de focalisation.
Le “reset” du tampon (voir figure 6-18) permet à chaque nouvelle acquisition d’image
d’effacer la mémoire des inhibitions.
La réalisation de ce mécanisme s’appuie sur des travaux réalisés par notre équipe
[64, 119, 67, 108, 72, 68] où ce dispositif est intégré dans des mécanismes de navigation et de classification d’objets. Par rapport aux autres mécanismes de même type, nous
avons choisis d’appliquer le filtre DOG sur l’image de la norme du gradient, plutôt que de
travailler sur l’image contour. En effet, le seuillage pour obtenir l’image binarisée des contours a tendance à trop limiter l’information et risque de donner de mauvaises détections
de contours.
Ce modèle de focalisation est très simpliste mais il est facilement réalisable avec un
coup de calcul relativement bas. Il existe néanmoins des modèles plus sophistiqués (massivement parallèles) qui peuvent rendre compte des mécanismes de “pop-out” [189, 190]
ou de recherche attentionelle permettant de trouver plus rapidement un objet particulier.
Mais l’étude de ces mécanismes sort du cadre de nos travaux.
6.2.2
Mécanisme d’apprentissage de vue locales
Nous avons présenté dans la section précédente un mécanisme permettant la focalisation
de l’attention vers les point “intéressants” d’une image et la récupération de leurs coordonnées. Si nous faisons la supposition que les objets intéressants se trouvent dans
le voisinage des points caractéristiques, alors l’étape suivante devient l’apprentissage du
voisinage de chaque point caractéristique. Par la suite, nous nommons ce voisinage vue
locale.
Les études sur la projection des images visuelles dans le cortex cérébral [170] ont montré
que le nerf optique effectuait une représentation de l’image rétinienne dans un espace
polaire. Utilisant cette hypothèse, nous avons utilisé une transformation en coordonnées
polaires (log(ρ), θ), par rapport à son centre, de la vue locale. Nous avons utilisé les
- 181 -
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
équations suivantes :
q
(x − x0 )2 + (y − y)2
(3)
y − y0
(4)
θ = arctan
x − x0
avec x0 , y0 les coordonnées du centre de la vue locale qui coı̈ncident avec celles du
point caractéristique. L’utilisation de cette transformation permet au système d’avoir
une tolérance par rapport aux rotations et, dans une moindre mesure, à un changement
d’échelle.
Une fois focalisé sur un point caractéristique et obtenues ses coordonnées cartésiennes,
le système extrait une “imagette” (figure 6-21 (b)). Cette imagette constitue un “objet”
séparé qui correspond à une transformation (log (ρ) , θ) de la vue locale, équivalente à la
projection rétinotopique de la rétine sur le cortex. Pour réduire les effets de la transformation (log(ρ), θ) [64], nous définissons une zone aveugle autour du point caractéristique
(voir figure 6-21 (a)).
ρ=
Y
y
zone de vue
zone aveugle
point caractéristique
r R
log-polar
y0
x
x0
X
Figure 6-21. (a) Définition des zones actives et inactives. (b) L’image du gradient, la sélection d’une
vue locale et de l’imagette associée après la transformée log-polaire autour du point de focalisation.
Pour réduire les temps d’exécution, les formes analogiques sont apprises par un WTA
à seuil permettant un apprentissage en ligne (version simplifiée de la carte PTM).
L’architecture globale du mécanisme d’apprentissage des vue locales est illustrée dans
la figure 6-22.
L’apprentissage sur le WTA (groupe Sortie Visuelle–VO sur la figure 6-22) est modulé
par un paramètre de vigilance dont la fonction est semblable à celle d’ART. Une valeur
grande de la vigilance détermine l’apprentissage d’une imagette tandis que une petite
valeur inhibe l’apprentissage. La modulation de la vigilance peut être déterminée par des
motivations extérieures à ce mécanisme (il faut apprendre ou non ce imagette) dont la
choix sera déterminé plus loin. Pour l’instant, nous considérons qu’à la sortie du VO on
a une réponse correspondant à un niveau de reconnaissance d’une vue locale.
- 182 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
repeter N fois pour N points carateristiques au maximum
Mecanisme de
focalisation de
l’attention
Acquisition
image
Position
Vigilence
image d’entree
Extraction de
la vue locale
Transformation
retinopique
imagette
VO (WTA)
étape algorithmique ou neuronale
liens de 1 vers tous
Figure 6-22. Aperçu de l’architecture d’apprentissage des vues locales.
6.2.3
Intégration des architectures
La prochaine étape consiste à associer une vue locale à l’action à exécuter (suivre ou ne
pas suivre, groupe Sortie Motrice–AO sur la figure 6-23). Nous avons vu que si notre élève
reçoit une image, il peut trouver les points caractéristiques et apprendre les vues locales
qui correspondent aux points caractéristiques les plus intéressants. La dernière étape
consiste à construire des ordres moteur qui permettent à notre robot de se diriger vers
le point caractéristique le plus intéressant. Pour extraire les coordonnées cartésiennes
de l’imagette gagnante associée à l’action effectuée (AO), nous utilisons le mécanisme
suivant : pendant le balayage de points caractéristiques par le système de focalisation,
nous comparons la valeur de la sortie de AO (une mesure de la reconnaissance d’une vue
locale associée au fait qu’elle soit pertinente pour l’action considérée) avec une valeur qui
correspond à la meilleure vue locale reconnue pour une action quelconque (pour chaque
nouvelle image acquise cette valeur est remise à zéro). Si la valeur de la reconnaissance
au niveau de AO est supérieure à cette valeur, c’est-à-dire si la reconnaissance d’une vue
locale est meilleure que les précédentes et associée à une action, alors nous mémorisons la
position du point caractéristique associé à cette vue locale et mémorisons aussi le niveau
d’activation dans AO associé (groupe max sur la figure 6-23). A la fin du balayage, le
neurone lié au mouvement choisi est activé au niveau de AO de manière à permettre
l’apprentissage de la bonne association entre l’imagette reconnue et l’action à effectuer
(suivre ou ne pas suivre).
Un signal de renforcement dont le choix sera présenté plus loin, contrôle le paramètre de
vigilance du groupe VO et module l’apprentissage des connexions entre VO et AO. Le mouvement à exécuter est obtenu par une translation des coordonnées du point caractéristique
dans les coordonnées égocentriques du robot. Cette translation est effectuée à l’aide des
informations fournies par une boussole ou par d’autres informations sur l’orientation du
- 183 -
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
position
B1
boussole
AO
(WTA)
Max
Tampon
mouvement
Tampon
VO
vue locale
Figure 6-23. Aperçu du mécanisme d’association d’un mouvement à la meilleure vue locale reconnue.
Le bloque B1 est itéré sur l’ensemble des points de focalisation possibles.
robot.
Pour systématiser, nous illustrons sur la figure suivante (6-24) l’architecture qui permet
la reconnaissance de vues locales :
Vision
locale
Reconnaissance
visuelle
Actions
signal de renforcement
Figure 6-24. L’architecture globale qui permet l’apprentissage de vue locales.
Notre système peut apprendre des points caractéristiques, mais comment savoir quels
sont les points caractéristiques à apprendre? Afin de pouvoir apprendre la forme visuelle
du professeur, il faut forcément apprendre des vues locales associées au professeur. Mais
notre système n’a pas une connaissance a priori sur l’apparence visuelle du professeur. En
plus, il ne sait pas si le “professeur” se trouve dans son champ de vision. La seule “information” dont notre système dispose est qu’il doit se focaliser sur les points caractéristiques
et, implicitement, que le “professeur” pourrait avoir des points caractéristiques. Afin
d’“aider” notre système à apprendre les caractéristiques visuelles du “professeur” nous
devons introduire d’autres informations. Nous pouvons introduire des information a priori sur la forme ou la couleur du professeur (ex. tout rectangle blanc) ou bien d’utiliser un
apprentissage supervisé (ex. pour chaque point de focalisation un opérateur indiquera s’il
s’agit du professeur ou non). Mais nous voudrions réaliser un système qui doit apprendre
d’une manière autonome!
Au lieu de chercher d’autres informations, nous observons que nous en avons déjà une :
le mouvement. Notre système de reconnaissance de formes fonctionne en parallèle avec le
système de détection du mouvement (voir figure 6-17). Ainsi, il apparaı̂t très pertinent
d’utiliser l’information de mouvement pour moduler l’apprentissage et générer le signal
de renforcement. Vu le protocole d’expérimentation, nous savons que le professeur ou les
- 184 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
professeurs peuvent se trouver dans les zones de mouvement détectées. Cette information
est pertinente, donc nous allons l’utiliser! En plus, elle est déjà calculée dans notre
architecture, donc on peut l’utiliser sans consommer de ressources supplémentaires. Ainsi,
l’architecture de notre système devient :
Vision
locale
Perception
du mouvement
Reconnaissance
visuelle
Actions
signal de renforcement
Figure 6-25. L’architecture globale qui permet l’apprentissage de vue locales.
Supposons que le système de reconnaissance de forme reçoive en même temps que
l’image acquise, l’image du mouvement associée qui contient une description des zones
où il existe du mouvement. Les zones en mouvement permettent d’“aider” le système
de focalisation afin que celui-ci se focalise d’abord sur les points caractéristique associés
aux zones en mouvement : il suffit d’inhiber tous les points qui ne se trouvent pas dans
ces zones. L’existence du mouvement nous assure l’existence de professeurs potentiels.
Ceci nous permet de moduler l’apprentissage : s’il y a des zones en mouvement, alors
on augmente la vigilance et on apprend des vue locales. Par contre, s’il n’y a pas de
mouvement dans l’image, alors la vigilance sera diminuée afin d’empêcher l’apprentissage.
L’association entre le VO est la AO est faite de la même manière : si le point caractéristique correspondant à la meilleur vue locale reconnue se trouve dans la zone où il
existe mouvement, alors l’association VO–AO est renforcé. Si, par contre, le neurone de
VO représente une vue locale qui se trouve en dehors des zones de mouvement, alors on
désapprend cette association. De cette manière, si une vue locale a été observée longtemps
dans la zone de mouvement, alors le lien VO-AO sera très renforcé.
6.2.4
Parallélisation de l’architecture
L’intégration du mécanisme de reconnaissance du professeur et celui de détection du
mouvement est illustrée dans la figure 6-26.
Nous observons que l’architecture globale comporte 2 voies de traitement de
l’information visuelle : une pour l’information sur la forme et l’autre pour l’information
de mouvement. Mais le temps de calcul pour la reconnaissance de forme est très long par
rapport à celui de la détection du mouvement. Il nous a été impossible de faire tourner sur
le même ordinateur une architecture comprenant à la fois la détection du mouvement et
la reconnaissance des formes liées au professeur2 tout en gardant un aspect de temps réel.
Ainsi, nous avons décidé de paralléliser notre architecture : nous allons exécuter sur des
2
Cette séparation des tâches l’on retrouve dans le cerveau (voir section 3.2). Par ailleurs, dans le
- 185 -
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
Reconnaissance
du professeur
Vision
locale
Reconnaissance
visuelle
Actions
Mouvement
Perception du
mouvement
Actions
Proto
imitation
Figure 6-26. Intégration des deux systèmes : proto-imitation et reconnaissance du professeur.
machines différentes chacun des traitements. Nous avons utilisé la bibliothèque de calcul
parallèle Parallel Calcul Machine (PVM) développée à l’Université Carnegie Mellon [74].
Mais la parallélisation des traitements a soulevé plusieurs problèmes : comment intégrer
les réponses des deux systèmes? comment assurer une synchronisation entre les entrées
et les sorties? Après une étude préliminaire et différents tests, nous avons choisi une
solution3 qui permet de paralléliser efficacement le calcul [155]. Dans la figure 6-27 nous
illustrons l’architecture utilisée.
Nous supposons que l’information de mouvement doit être traitée sans attendre
l’information de reconnaissance visuelle associée. Par exemple, si l’image acquise à
l’instant t0 génère une réponse motrice M issue de l’information du mouvement à t1
et une réponse motrice R issue de l’information de reconnaissance à t2 > t1 , alors la commande motrice M doit être exécutée à l’instant t1 sans attendre la commande motrice R.
Si la réponse fournie par la détection du mouvement a une cohérence temporelle, alors
elle se renforcera avec réponse fourni par le mécanisme de reconnaissance des formes.
Évidemment, le décalage entre les deux réponses ne doit pas être trop grand pour ne
pas fausser complètement les actions (par exemple “trouver” la cible à la position qu’elle
occupait il y a 2 minutes!).
Nous avons mesuré le temps d’exécution pour 3 expériences : l’exécution sur la même
machine de l’architecture de suivi, l’exécution sur la même machine de l’architecture globale (suivi et reconnaissance de forme) sans parallélisation et l’exécution de l’architecture
sur 2 machines différentes avec la parallélisation de taches. Une synthèse des résultats est
présentée dans le tableau 1 :
Comme prévu, l’architecture parallélisée est exécutée plus rapidement que celle
cerveau, les deux traitements sont fait”exécutés” en parallèle et le temps du traitement des informations
liées à la forme est lui aussi plus grand que celui du traitement du mouvement.
3
En annexe B nous présentons les détails de la solution retenue.
- 186 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
Tache 2
Traitement (T2)
R_b_ack
E_ack
Tache 1
Traitement (T1)
Perception
E_ack
Action
R_nonb_ack
Environnement
Figure 6-27. Parallélisation de traitements. E ack-émision avec accusé de réception, R b acr-reception
bloquant avec accusé de réception, R nonb ack-reception non-bloquante accusé de réception. La tache 1
(suivi par proto-imitation) réalise l’acquisition de l’image et la détection du mouvement. Un processus
d’émission avec accusé de réception (E ack) envoie vers la tache 2 (la reconnaissance de forme du professeur) l’image perçue et l’image du mouvement. Après la réception de deux images, la tache 2 démarre
son traitement (T2). Après avoir fait son traitement, elle envoie le résultat vers la tache 1 et attend
d’autres images (r b ack). Après l’envoi des images, la tache 1 exécute son traitement (T1). Si il y un
résultat provenant de la tache 2 (R nonb ack), alors nous calculons un résultat global. Sinon on exécute
immédiatement le résultat issu de la tache 1.
Temps de boucle (secondes)
1 machine 2 machines
Proto-imitation
3.06
Proto-imitation + reconnaissance du professeur
9.38
Proto-imitation + reconnaissance du professeur
3.97
Tableau 1. Le temps d’exécution pour différentes implantation de l’architecture. La moyenne est faite
sur 20 expériences sur des machines SUN SPARC Ultra 10, connectées sur une réseaux Ethernet 100
Mbit.
séquentielle. En moyenne, la tache 2 s’exécute plus rapidement que la tache 1, principalement à cause du temps “dépensé” dans l’acquisition des images et dans les communication
entre le robot et la station de travail. Par exemple, sur le 3.06 secondes de la tache de
suivi, on dépense 2.1 secondes pour effectuer un mouvement et pour lire la boussole (voir
tableau 3).
Le choix de champs neuronaux pour le contrôle moteur s’avére gagnant : sans aucune
difficulté nous pouvons intégrer sur un seul champ neuronal les propositions d’actions
issues des deux voies de traitement. Les propriétés mathématiques des champs neuronaux
assurent une sommation des réponses sans le développement d’une algèbre spéciale 4 . Par
4
Dans le systèmes neuronaux on se posé toujours des questions sur les opérations qu’on effectue sur
de représentations de l’information.
- 187 -
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
Tache exécuté
Temps d’exécution (secondes)
Proto-imitation (Tache 1, fig. 6-27)
3.97
Acquisition d’image (Perception, fig. 6-27)
1.47
Communications PVM en Tache 1, fig. 6-27)
0.03
Détection mouvement (Traitement T1, fig. 6-27)
2.47
Reconnaissance du professeur (Tache 2, fig. 6-27)
2.81
Communications PVM en Tache 2, fig. 6-27)
0.32
Détection du professeur (Traitement T2, fig. 6-27)
2.49
Tableau 2. Les temps d’exécution des différentes composantes de l’architecture parallélisé (voir figure
6-27). La moyenne est faite sur 20 expériences sur des machines SUN SPARC Ultra 10, connectées sur
une réseaux Ethernet 100 Mbit (réseau partagé avec d’autres utilisateurs ...) .
ailleurs, l’utilisation des champs neuronaux nous permet “d’éliminer” l’aspect temporel de
l’intégration de réponses. L’existence d’un délai entre l’activation des entrées provenant
de la tache 1 et de la tache 3 (voir figure 6-27) n’influence pas l’activité sur le champ
neuronal.
Tache exécuté
Temps MOYEN d’exécution
Proto-imitation
3.061709
Acquisition d’image
0.350648
Détection mouvement
0.034016
Exécution mouvement
0.935893
Lecture boussole
1.237921
MIN
1.850449
0.288789
0.026865
0.086337
1.186834
MAX
4.199498
1.015072
0.050903
2.029244
1.334162
Tableau 3. Répartition des temps d’exécution pour la tache 1 (voir figure 6-27). Le temps moyens ont
été présentés dans le tableau 1.
A cause de l’aspect non déterministe d’Unix et du fait que les ordinateurs sont connectées sur le réseau Ethernet du laboratoire, les temps d’exécution varient beaucoup (il
faudrait utiliser un système d’exploitation dédié temps réel5 et un réseau Ethernet séparé
pour accroı̂tre les performances). Nous illustrons cette variation dans tableau 3 où nous
présentons la moyenne, le minimum et le maximum des temps d’exécution de certaines
tâches.
6.2.5
Résultats
Afin de tester l’intégration des deux architectures, nous avons effectué plusieurs
expériences. Toutes les expériences se déroulent dans une pièce de 38m2 (voir figure
6-28). L’architecture est “distribuée” sur deux machines Ultra Sparc 10 connectées sur
5
QNX, RT
- 188 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
une réseaux Ethernet à 100Mb (plus de 40 machines sur la même réseau, une partie des
calculs liés à des entrées/sorties se fait aussi sur le robot).
La première expérience a tenté de valider la reconnaissance du professeur. Ainsi, nous
avons indiqué manuellement, sur une seule image, quel point caractéristique correspond
au professeur (celui ci étant à l’arrêt). Ensuite, nous avons mis le robot dans plusieurs
endroits de la pièce et nous avons regardé sa trajectoire. La figure 6-28 illustre quelques
trajectoires : Nous avons observé que l’élève arrive à reconnaı̂tre son professeur dans la
Sud
porte
armoire
caisse
table
étagères
robot professeur
chaise
robot élève
table
caisse
robot élève
5.4m
Ouest
station
D
C
B
Est
A
robot élève
table
robot élève
table
station
chaise
table
planches
caisse
fenetre
7.2m
Nord
Figure 6-28. Aperçu de certaines expériences de reconnaissance de la forme du professeur.
majorité des cas (trajectoires A,B,C sur la figure 6-28). Mais le système de reconnaissance
n’est pas infaillible (trajectoire D sur la figure 6-28). Dans ce cas, l’apparence visuelle
du professeur est suffisamment différente de celle apprise pour qu’il ne puisse pas être
reconnu.
L’expérience suivante consiste à apprendre à reconnaı̂tre le professeur. Nous avons
donné l’ordre au robot professeur d’avancer pendant quelques secondes et de s’arrêter
après. L’élève a appris quelques vue locales du professeur pendant que celui-ci était en
mouvement. Après l’arrêt du professeur, il continue son déplacement vers le professeur
(trajectoire A sur la figure 6-29).
Pour vérifier que le robot a bien appris la forme du professeur, nous avons déplacé le
robot afin qu’il voit le professeur sous un autre angle. De cette manière, nous pouvons
vérifier que la trajectoire de notre robot n’est pas causée par l’effet de mémoire des champs
- 189 -
Section 6.2
Apprendre à reconnaı̂tre le “professeur”
neuronaux mais qu’elle est bien due à la reconnaissance du professeur. Comme prévu,
notre élève c’est dirigé vers le professeur (trajectoire B sur la figure 6-29).
Sud
porte
armoire
caisse
table
étagères
robot professeur
A
trajectoire du professeur
Est
Ouest
station
caisse
chaise
5.4m
robot élève
B
table
table
robot élève
table
station
chaise
table
planches
caisse
fenetre
7.2m
Nord
Figure 6-29. Aperçu de 2 expériences de reconnaissance de la forme du professeur.
Afin de tester la robustesse du mécanisme de reconnaissance intégré, nous avons appris
à notre système 4 vues locales du “professeur”. Chaque vue locale a été apprise sur la
première image d’une séquence. Nous avons utilisé 4 séquences à 400 images chacune
et dans chaque séquence le professeur est en mouvement et présent dans chaque image
de la séquence. Ensuite nous avons présenté toutes les images de 4 séquences (avec
le professeur à différentes distances et orientations par rapport à l’élève). Nous avons
réussi à obtenir un taux de reconnaissance du professeur, à des distances et orientations
différentes, d’environ 65% ce qui est en concordance avec une autre étude de la robustesse
du mécanisme de reconnaissance de formes utilisé [167]. Mais ce taux de reconnaissance
n’est pas pénalisant pour notre architecture. Dans des conditions normales de suivi, la
détection et l’apprentissage de la forme du professeur est faite pendant plus de 4 images.
Ainsi le système apprend le professeur sur des orientations et à des distances différentes.
Dans la figure 6-30 nous présentons quelques vue locales du professeur, reconnues par le
mécanisme de reconnaissance de formes.
On peut penser que le mécanisme de reconnaissance de formes peut remplacer celui
de détection du mouvement après une calibration. Selon nous, les 2 mécanismes sont
- 190 -
Chapitre 6
Une architecture minimale pour l’apprentissage par imitation
Figure 6-30. Le professeur a été reconnu sous des angles différentes. Vue de ce que voit le robot. La
vue locale apprise corresponde à la première image (à gauche).
complémentaires, et l’élimination d’un des deux empêche une évolution ultérieure de notre
architecture.
- 191 -
Section 6.3
6.3
Conclusion
Conclusion
Dans ce chapitre nous avons présenté certains résultats obtenus pour l’apprentissage de
séquences de mouvements. L’architecture développée intègre un mécanisme de poursuite
visuelle et un mécanisme d’apprentissage des séquences. Les erreurs de perception du
professeur nous conduit à introduire un 2ème degré de liberté dans notre architecture :
le robot peut désormais tourner sa tête indépendamment de son corps. Les champs
neuronaux permettent un contrôle très simple des 2 degrés de liberté (voir section 3.4).
Grâce à ce découplage entre les mouvements de la tête et du corps, nous avons introduit
un mécanisme de filtrage actif qui permet une meilleure perception.
La parallélisation de l’architecture nous à permis d’avoir des temps de calcul
“raisonnables” pour un robot mobile. Les champs neuronaux constituent un excellent outil
pour la fusion des informations multimodales. Outre leurs propriétés mathématiques (bifurcation, stabilité, ...), ils permettent d’éliminer les problèmes dus à la cadence différente
d’exécution de taches et à l’échantillonnage irrégulier des entrées. La prise en compte
de la dynamique au niveau des cartes motrices rend moins cruciaux les problèmes de
synchronisation entre processus de différents niveaux.
Afin d’éliminer certains problèmes dans la perception du professeur, nous avons introduit un mécanisme de reconnaissance de la forme du professeur basé sur l’apprentissage de
vues locales. Outre une bonne stabilité, ce mécanisme permet un classement en fonction
d’intérêt des vue locales, tout en restant en adéquation avec les données neurobiologiques
et psychophysiques.
- 192 -
Chapitre 7
Conclusions et Perspectives
The real robots work into the real world in real time.
Rainer Bischoff
7.1
Synthèse
Dans ce travail, nous avons montré qu’une approche neuronale de l’apprentissage par
imitation pouvait être employée pour contrôler un robot réellement autonome et donner
des résultats intéressants. Au départ, nous avons utilisé notre architecture pour étudier
des interactions robot/robot. Dans ces séries d’expériences, le but était d’étudier comment
un robot élève pouvait apprendre à réaliser diverses trajectoires. L’élève était capable de
suivre, d’apprendre et de prédire des changements de trajectoire afin de réaliser une sorte
de proto-imitation. Un deuxième robot était utilisé comme professeur. Mais durant nos
expériences, nous nous sommes aperçus que notre système pouvait être plus efficace avec
un professeur humain. En effet, durant la phase d’apprentissage, nous avons constaté que
des interactions bidirectionnelles se produisaient entre le professeur et l’élève sans que
ce soit voulu de la part du professeur. Évidemment, le robot élève suit le professeur et
apprend à associer la trajectoire avec un état interne mais en même temps le professeur ne
peut s’empêcher d’adapter son comportement de manière à ce que l’élève n’ait pas trop de
mal à le suivre (aide) et puisse reproduire correctement la trajectoire désirée. Le professeur
regarde la trajectoire du robot et accroı̂t ou réduit sa vitesse pour permettre au robot
élève de passer exactement par les différent segments de la bonne trajectoire. Le timing de
l’activation des actions de l’élève est plus précis et la forme des trajectoires est meilleure
car les ordres de rotation sont aussi plus précis. Ces interactions permettent en quelque
sorte au professeur de spécifier ou ”d’insister” sur ce qu’il est important d’apprendre en
marquant les différences et en réalisant en fait lui même un comportement que l’on peut
considérer comme caricatural. Ce processus d’apprentissage itératif entre le professeur
et l’élève montre à quel point les problèmes d’imitation sont liés à des problèmes de
193
Conclusion
communication. Nous y reviendrons dans la partie consacrée aux perspectives.
Interaction réflexe
Interactions bidirectionnelles
Figure 7-1. Les interactions bidirectionnelles entre un humain et un robot élève permettent un meilleur
apprentissage (2ème cas) qu’une simple imitation au travers d’un processus “d’espionnage” (1er cas).
Si l’on reprend point par point les apports de notre travail, le premier résultat majeur est d’avoir mis en évidence que l’apprentissage par imitation est possible sans que
l’élève se rendre compte de l’existence du professeur. Notre mécanisme de proto-imitation
détermine l’émergence d’un comportement permettant d’apprendre la séquence d’actions
induite par le suivi non volontaire du professeur (la proto-imitation est la conséquence
d’une limitation du mécanisme perceptif...).
Le deuxième résultat majeur concerne la capacité de notre système d’apprentissage
de séquences à prédire des événements et respecter la loi de Weber. L’aspect prédictif
de notre modèle inspiré de l’hippocampe est très important car nous avons montré dans
d’autres travaux [9] que l’incapacité à prédire peut être utilisée pour détecter de la
nouveauté. La détection de nouveauté peut alors être utilisée comme signal de renforcement pour apprendre une tâche d’association sensori-motrice arbitraire (mécanisme de
communication implicite lié à la capacité de prédiction du rythme d’une interaction).
D’autre part, le respect par notre modèle de la loi de Weber traduit la nécessité de
prendre en compte en psychologie et en robotique un des principes fondamentaux de la
physique : le principe de l’incertitude. Son respect permet à notre robot de s’adapter
aux incertitudes liées à la reproduction d’une tâche en fonction de sa durée (contexte
de l’imitation d’un professeur imparfait c’est-à-dire reproduisant une séquence avec une
précision qui dépend de la durée des événements élémentaires).
- 194 -
Chapitre 7
Le troisième aspect important de notre travail concerne le mécanisme permettant
d’apprendre à reconnaı̂tre la forme du professeur. Ce mécanisme est basé sur l’extraction
de points caractéristiques et sur la modulation de l’apprentissage de la forme du professeur
par l’information de mouvement. Nous avons montré que l’information liée à la forme
des objets (apparence du professeur) est très complémentaire de l’information liée au
mouvement des objets. Le traitement de la forme (voie “quoi”) et du mouvement (voie
“où”) sont faits en parallèle et la parallélisation de ce système de vision active ne pose
pas problème particulier dès lors que l’on introduit les champs neuronaux dynamiques
comme outil de sélection, de mémorisation et de fusion d’informations multimodales.
Nous avons été surpris de l’étendu des services que les champs neuronaux ont pu nous
rendre malgré les contraintes d’exécution ” temps réel ” que nous avions.
Ainsi, le résultat peut-être le plus important a consisté à nous rendre compte que pour
comprendre, modéliser et simuler les mécanismes d’imitation, il est nécessaire de prendre en compte des aspects qui peuvent sembler au premier abord très différents les uns
des autres : vision, contrôle moteur, apprentissage de séquences... Nous avons étudié
chaque problème séparément mais nous avons surtout montré que la prise en compte
des interactions entre ces différents problèmes était primordiale pour obtenir un système
réellement fonctionnel. Ainsi, nous n’avons pas cherché à améliorer spécifiquement une
partie du système mais à progresser sur plusieurs fronts à la fois. La conséquence est
que quasiment toutes les parties que nous avons développés pourraient être facilement
améliorées pour accroı̂tre les performance de notre robot. Mais la conséquence la plus
importante est surtout de montrer que l’imitation ne peut se réduire à l’étude d’un seul
de ces mécanismes. Il s’agit bien au contraire d’une propriété globale reposant sur les
interactions entre différents sous systèmes. Ainsi dans notre système, les contraintes sur
la dynamique du contrôle moteur permettent d’éviter que le système ne perde sa cible
trop rapidement si la reconnaissance visuelle du professeur n’est pas possible. De même,
si la perception du mouvement est trop bruitée, l’identification sur une image de la forme
du professeur peut suffire. Et enfin si aucun de ces systèmes ne fonctionne correctement
mais que le robot a réussi à reconnaı̂tre le début de la séquence comportementale alors
sa capacité à prédire la prochaine action à exécuter permettra d’attendre que des informations perceptuelles puis pertinentes ne deviennent disponibles. La complémentarité
de ces sous-systèmes est utile pour un bon fonctionnement en phase d’imitation mais
elle est primordiale pour l’apprentissage à imiter puisque pour apprendre à reconnaı̂tre le
professeur il faut pouvoir le suivre et l’imiter correctement. Nous aboutissons à une contradiction sauf si l’on se rappelle que l’un de nos postulats de base est que la perception
est fondamentalement ambiguë : ne pas être capable de différentier sa main de la main
d’une autre personne est un bon moyen pour commencer à imiter !
- 195 -
Conclusion
7.2
Perspectives
Cette approche très incrémentale de l’apprentissage par imitation pourrait expliquer
comment un animal peut apprendre à reconnaı̂tre un de ses congénères [47] et pourrait
s’appliquer au problème d’apprendre à avoir conscience de soi même [55]: ceci est ”mon”
bras car je peut prédire ce qu’il va faire! Notre travail appelle de nombreuses questions:
dans notre cas le robot ne savait pas qu’il était en train d’imiter. Avons nous besoin de
réaliser des robots qui comprennent réellement qu’ils sont entrain d’imiter? Quelles sont
les modifications à apporter à la présente architecture?
Les conclusions de ce travail nous ouvrent donc de nombreuses perspectives dans des
champs très différents couvrant la philosophie, la modélisation en sciences cognitives
et les Sciences pour l’Ingénieur. L’étude des différentes théories sur l’imitation mais
surtout le problème de la distinction entre la ”vrai” imitation et toutes les autres formes
d’interactions montrent qu’il y a matière à de nombreux travaux de recherche en robotique utilisant le stimulus enhancement ou les effets sociaux de rétroaction positive liés
au mimétisme. En ce qui concerne la modélisation, nous avons vu dans notre système
la nécessité d’un mécanisme de focalisation de l’attention dépendant de la perception du
mouvement et de la forme des objets à analyser. Un déficit dans la capacité de focalisation pourrait expliquer certaines formes d’autisme (voir [162]). Les autopsies de personnes
autistes ont en outre révélé des atteintes principalement au niveau de l’hippocampe et
du cervelet ce qui pourrait concorder avec notre modèle d’apprentissage de séquences au
niveau de l’hippocampe. Il est bien trop tôt pour tenter des tirer des conclusions de ces
données mais le type de modèle que nous développons pourrait être un bon moyen de comprendre l’influence de ces différents sous-systèmes dans les syndromes liés à l’autisme: que
se passe-t-il lorsqu’il y a un déficit en terme d’apprentissage de séquence ou de détection
de nouveauté, ou au contraire lorsqu’il s’agit d’un déficit attentionel ?
La perception du mouvement nous semble aussi un domaine dans lequel beaucoup de
travail reste à faire (perception des mouvements par transparence). En effet, dans une
scène réelle, l’image perçue est une convolution entre différents signaux (réflexions sur
le sol, effets du soleil sur les objets...). La coopération dynamique entre reconnaissance,
filtrage et connaissance du mouvement propre est nécessaire pour aboutir à de bonnes
performances. L’utilisation de circuits spécialisés dans l’analyse du mouvement parait
incontournable car l’augmentation de la fréquence d’échantillonnage permettra de
relâcher les contraintes sur les autres parties du systèmes tout en améliorant la résolution
spatiale du flot extrait et donc la qualité de l’image de flot résultante (surtout si l’on
utilise un modèle de perception du flot dynamique tel que celui que nous avons proposé).
De manière classique, deux formes d’apprentissage par imitation sont distinguées:
apprendre au travers de l’imitation et apprendre à imiter. Nous avons déjà clairement
situé notre travail dans le cadre du premier cas. Apprendre à imiter comprend en
revanche 2 aspects que nous n’avons pas traités ici: quand imiter et comment imiter.
- 196 -
Chapitre 7
Prendre une décision à propos de quand imiter peut se faire grâce à des variables internes
du système (c’est-à-dire des liens vers des motivations primaires). Par exemple, le robot
peut décider par lui même d’imiter car aucune autre action n’est proposée. Concernant
le problème de comment imiter, notre système ne connaı̂t qu’une seule manière d’imiter
(le robot suit seulement le professeur - mécanisme réflexe de bas niveau). Il serait
très intéressant de lui procurer d’autres moyens d’imiter. Un problème pertinent serait
alors de trouver comment sélectionner un mécanisme d’imitation particulier en fonction
de la situation externe ou en fonction de l’état des motivations. Par exemple, nous
pourrions imaginer qu’au lieu d’apprendre une séquence de transitions de mouvements,
le robot apprenne les lieux par lesquels le professeur est passé (associer un lieu avec
un mouvement particulier). Dans le premier cas notre robot devrait reproduire une
trajectoire relativement à son orientation et sa position de départ. Dans le deuxième cas,
le robot devrait retourner aux différents lieux appris dans la pièce (reproduire le trajet
en coordonnées absolues). Le problème de savoir quoi apprendre dans le contexte de
l’imitation reste donc un vrai défi.
A un autre niveau, il ne parait pas très compliqué de rajouter à notre robot un
mécanisme lui permettant de se rendre compte qu’il est en train d’imiter. Supposons
que l’élève arrive à attribuer une intention aux actions de son professeur (à partir des
actions déjà observées, il peut prédire la suite et donc “prévoir” le but de celles-là). Une
fois l’intention du professeur trouvée, l’élève peut la comparer avec ses propres intentions
ou actions. Si les deux coı̈ncident, alors il peut en déduire qu’il est en train d’imiter. Nous
observons que l’imitation doit pouvoir fusionner ou sélectionner une information parmi
plusieurs: ce que l’élève est en train de faire, ce que le professeur est en train de faire,
ce que l’élève doit faire, ... Les champs neuronaux auront là encore un rôle important à
jouer. Il est intéressant de noter que des expériences liées au développement moteur du
très jeune enfant tel que le test du ” A non B ” s’expliquent très bien par l’utilisation de
champs neuronaux [180]. De même pour expliquer qu’un enfant regarde dans la bonne
direction lorsqu’un objet disparaı̂t derrière un obstacle, il n’est pas nécessaire de faire
l’hypothèse que l’enfant attribut à l’objet une notion d’agent. La compréhension apparente de la causalité peut provenir simplement de contraintes de continuité liées à l’emploie
de champs neuronaux dynamiques au niveau du mécanisme de suivi de l’objet...
Il devient donc important d’inscrire ce type de recherches à la fois dans une perspective développementale et dans une perspective sociale. Les liens entre imitation et
développement devraient être étudiés plus en détails afin que les robots puissent apprendre
d’abord à se créer des catégories motrices puis à les utiliser dans des jeux d’imitation plus
complexes. Nous avons esquissé une telle approche en montrant comment notre robot pouvait apprendre à estimer la composante de rotation de son propre mouvement pour ensuite
l’utiliser pour suivre un autre robot. Néanmoins on reste bien loin de catégories comportementales complexes telles que celles étudiées par Rizzolati avec les neurones miroir. Sur
le plan interactions de groupe, l’imitation peut servir de mécanisme d’entraı̂nement et
permettre à une population de prendre une décision pertinente (réactions circulaires de
- 197 -
Conclusion
Piaget similaires au feedback positif des mécanismes de prise de décision). Mais l’imitation
peut aussi servir de mécanisme de communication implicite (regards, émotions, synchronisation...) et acquérir un rôle social [138, 140]. En effet, vers 9 mois, un enfant devient
capable d’imiter de manière intentionnelle. Probablement vers le même âge, l’enfant devient capable de se rendre compte qu’il est imité. Il développe alors des stratégies afin
de tester son imitateur [126]. L’imitation intentionnelle coordonnée avec la sensibilité au
fait d’être imité apparaı̂t peu après et conduit à la construction d’un système de communication [138]. Ce système de communication est à son apogée vers l’âge de 30 mois et il
disparaı̂t avec la maı̂trise du langage. Cette forme de communication basée sur l’imitation
a conduit à la réalisation d’études sur des enfants autistes ayant des déficiences verbales.
Les résultats obtenus [139] ont montré que l’interaction imiter/être-imité améliore la communication non-imitative et l’attention vers autrui. Ces résultats sont en concordance avec
des études cliniques [163]. Les enfants autistes sont tous capables de proto-imitation, mais
il semble [1] qu’une partie d’entre eux ait des difficultés à exécuter et planifier des actions
complexes. De même, une partie des enfants autistes, tout comme les nouveaux nés,
ne développent pas de stratégies pour tester l’intention d’imiter de leur imitateur [138].
L’existence de la proto-imitation chez les enfants autistes a conduit au développement
de programmes de recherche communs entre plusieurs disciplines auquel nous participons
[9, 48].
On voit donc s’esquisser non pas seulement une utilisation de l’imitation pour
l’apprentissage (ce qui était notre but principal) mais comme moyen de communication à
part entière que l’on pourrait très facilement utiliser pour développer de nouveaux types
d’interfaces Homme/Machine.
- 198 -
Annexe A
Description du robot KOALA
Tous nos expériences ont été réalises avec des robot KOALA, réalisés et commercialisés
par K-Team (Laussane).
Ils sont des robots de taille moyenne (voir figure A-1), dont les caractéristiques sont :
1. Processeur Motorola, 68331@22MHz avec 1 Mbyte RAM, 1 Mbyte mémoire Flash.
2. 16 senseurs en infrarouge.
3. 12 entrées digitales [5..12V], 4 sorties digitales [CMOS/TTL] en collecteur ouvert,
8 sorties digitales [12V/250mA/sortie], 6 entrées analogiques [CAN 10 bit sur un
intervalle de 4.096V]
4. un liaison RS-232 à 9600/19200/32800 baud.
5. 2 moteur DC avec un codeur incrémental (environ 19 impulsions par mm
d’avancement du robot).
6. accumulateurs rechargeables en NiCd ou NiMH.
7. autonomie de 3-4 heures.
8. taille de 32x30x20 cm, poids d’environ 3 kg.
Sur le robot nous avons monte une plate-forme mobile, actionné par un servomoteur
(voir figure A-2). Cette plate-forme a été monté pour permettre une rotation de ±90◦
autour de l’axe longitudinale du corps du robot.
Sur cette plate-forme nous avons monte une caméra CCD réalisant ainsi un système
avec deux degrées de liberté. Due aux ressemblances, voulus, avec la biologie, nous
appelons, parfois, l’ensemble plate-forme mobile - caméra CCD, la tête du robot. Une
carte dédié assure la transformation de niveaux des 8 sorties digitales dans une commande
pour la tête du robot (c’est-à-dire le servomoteur).
Le signal vidéo analogique fournit par la caméra CCD est transmis par radio (1.2GHz)
vers un récepteur satellite. La sortie de ce récepteur est connecté à un ordinateur équipé
199
Annexe A
Koala
CCD
Emetteur video
Boussole
modem
radio
senseur
infrarouge
Figure A-1. Aperçu du robot Koala utilisé.
d’une carte d’acquisition des images. La transmission des informations/ordres entre le
robot et l’ordinateur est faite à travers une paire des modems radio à 9600 baud. Le
robot est aussi équipé de deux capteurs à l’effet Hall montes en quadrature qui nous
permet de connaı̂tre l’orientation du robot Le deux capteurs forment une boussole dont
la précision est de 5 degrées (après une calibration préalable).
Boussole
CCD
servo
moteur
Modem radio
senseur
infrarouge
Figure A-2. Aperçu du robot Koala utilisé.
- 200 -
Annexe A
Koala
Le robot est équipé avec 16 senseurs en infrarouge dont le niveau analogique peut être
utilisé séparément, principalement pour des taches comportant l’évitement des obstacles.
Un compilateur livré par K-Team permet de créer des “exécutables” téléchargeables dans
la mémoire du robot.
- 201 -
Annexe A
Koala
- 202 -
Annexe B
PVM
Nous présentons ici le teste intégral de l’article Parallelization of Neural Networks
using PVM publie par Mathias Quoy, Sorin Moga, Philippe Gaussier et Arnaud Revel
à l’EUROPVM 2000 [155].[2cm]
Abstract
We use Neural Networks (NN) in order to design control architectures for autonomous
mobile robots. With PVM, it is possible to spawn different parts of a NN on different
workstations. Specific message passing functions using PVM are included into the NN
architecture. A graphical interface helps the user spawning the NN architecture and
monitors the messages exchanged between the different subparts of the NN. The message
passing mechanism is efficient for real time applications. We show an example of image
processing used for robot control.
B.1
Introduction
Our research group develops architectures for the control of autonomous mobile robots.
We take mainly inspiration from neurobiology for designing NN architectures. This work
is based on a constructivist approach. We first build the architecture parts dealing with
the inputs processing, and managing some low level behaviors (obstacle avoidance for
instance). Like in Brooks subsumption [37], the system consists in a hierarchy of sensorymotor loops: from very fast low level sensory-motor loops (obstacle avoidance, sensor
reading ...) to very time-consuming image analysis and planning procedures. In our
system, data issued by these mechanisms are processed by higher level modules which
may in return influence them. This architecture is integrated in the perception-action
framework (Per-Ac [73]). It is composed of a reflex pathway and a learned pathway.
Once learning has taken place, it may override the reflex mechanism. The inputs to the
system are the image taken from a CCD camera, infra-red sensors and the direction of the
203
Annexe B
PVM
north given by a compass. Each of these inputs may be processed separately. Moreover,
some time consuming image processing algorithms may also be performed in parallel.
Using a set of workstations, it is clearly not interesting to parallelize the network at the
neuron level (one workstation per neuron !), but rather in term of computational pathways
(CP) being processed in parallel. Each CP corresponds to a functional part of the global
NN architecture and may run on a different workstation. The exchange of information
between CPs is most of the time asynchronous. We also want to minimize the number of
messages exchanged. We use PVM 1 for spawning the CPs on the workstations and for
the message passing libraries [74].
Using PVM has two interests. First, the architectures we have developed become bigger
and bigger as the task being performed is more complex. So even if the computational
power is increasing, we do not match the real-time needed for our robotic experiments.
Second, brain computation follows different pathways in parallel and is also performed
in different cortical areas. Thus, it is also interesting to preserve this parallelism in our
simulations.
PVM is also used at two different levels. First, we have developed specific communication
functions integrated in the global architecture indicating the kind of information sent from
one NN architecture to the other (Section 2). The specific message passing algorithms
described may be used in any real time application, in particular when there is a huge
amount of data to deal with. Second, a process manager has been developed. This
manager helps the user choosing on which workstations to run the NN architectures, and
monitors all message exchanges (Section 3). In section 4, we study the performances of a
message passing mechanism used in a NN architecture controlling a mobile robot. This
architecture enables a robot to go where it has detected movement in its image.
B.2
Designing NN architectures
We do not develop here how we construct the NN architecture for performing a particular
task (indoor navigation for instance). This is the focus of numerous other papers [65, 154].
We will rather stress how PVM fits in our NN architecture.
The design of a NN architecture is performed using a specific program called Leto. It has
a visual interface where the user may choose between several different kinds of neurons
and connect them together. Not all groups represent neurons. Some may perform specific
algorithmical functions (displaying an image on screen, giving orders to the robot ...).
Once designed, a Leto architecture may be saved and is run using another program called
Promethe (see next section). So, it is possible to design different architectures dedicated
to specific tasks. The problem is to exchange data between these different tasks. This is
where PVM is used at this level. So we deal here with the design of modules that may
be integrated in the NN architecture. These modules tell whom to send a message to, or
who to receive a message from.
1
Current version used is PVM 3.4.3 for Solaris and Linux
- 204 -
Annexe B
PVM
We have coded specific message passing functions using the already existing PVM routines.
Our functions are implemented as algorithmical groups in the architecture. There is
basically one group sending data in one NN architecture and another receiving data in
another NN architecture. The data sent is the neuron values. There may be several
different NN architectures running in parallel. And there may be several different sending
and receiving groups in each NN architecture. So we need to define where to send and
from whom to receive. This is implemented through the definition of symbolic links which
must be the same for the sender and the receiver. This symbolic link is coded on the name
of the link arriving to a sender or receiving group. This name is composed of two parts:
the symbolic name and a number corresponding to the message passing number used by
PVM. After having launched all tasks, a symbolic link table is built. This table makes
the matching between a symbolic name and a PVM task identifier (tid) number. Then
the relevant parts of this table are sent to the different tasks. In order for two tasks to
be able to communicate, the symbolic link name and the message number must be the
same 2 . Upon reception of a message, the activities of the neurons of the receiving group
are the same as the ones of the sending group. Thus, from the receiving group point of
view, it is as if it were directly connected to the sending group through a “real” neuronal
link. The message passing functions are functionnaly invisible. The different sending and
receiving functions are the following:
• function send PVM: sends the value of the neurons where it is connected to. The
receiver is retrieved using the symbolic link name and the message number.
• function receive PVM block: waits for a message (neuron values) from a sender. The
sender is identified by its symbolic link and message number.
• function receive PVM non block: checks if a message (neuron values) has arrived
from the sender. If not, execution continues on the next neuron group.
We are running our NN architectures in real time for controlling mobile robots. Depending on the task to perform, it may be very important to have access to up to date
information. For instance, computing the optical flow must be performed on the most
recent image data. This is not mandatory for object recognition, since it stays where it
is. Nevertheless, it turns out that most computations are asynchronous. Because we have
to run in real time, we do not want to wait for a task to be finished before continuing the
whole computation, and we do not always know which task will run faster or slower. So in
the asynchronous processing, there may be two problems: information may be missing in
some parts of the architecture, because some computation is not finished yet. Conversely,
some parts of the system may run much faster than others and deliver a continuous flow
of redundant information. Indeed, if the sending task is running much faster than the
receiving one, the receive queue will be overwhelmed with messages. Moreover, the only
important message to process is the last sent.
2
The message number is not mandatory. It may be chosen randomly at the symbolic link table
creation. But it is easier to know it beforehand for debugging purposes.
- 205 -
Annexe B
PVM
It is easy to solve the first problem. If information has not arrived yet, the previous neuron values are used. We suppose there is a temporal coherence in the neural information
(internal dynamics of the neuron [109] and use of a neural field [169]). For dealing with
the second problem, we have to introduce new message passing functions:
• function send PVM ack: sends a message only if the receiver has allowed it by
sending an ack message. If the message has not been received, it does not send
anything and execution continues on the next group of neurons.
• function receive PVM block ack: waits for a message (neuron values) from a sender.
Once the message received, this function sends back an ack message to the sender.
• function receive PVM non block ack: same as the previous one, but waiting is non
blocking.
Thus now, a sender may only send information if the receiver is able to process it.
The way we have implemented the function, the receiver sends its ack message just after
having received a message from the sender. Thus, the sender is now allowed to send a
message again. If the sender runs faster than the receiver, it sends its new message before
the receiver has been able to finish its computation. So, when it comes back to the receive
function, a message is present in its queue, but this message is not reflecting the current
state of the sender anymore. An alternative version of the receiving function could be to
send the ack before a blocking receive. It is now the receiver which will wait until the
sender catches the ack, and sends its message. Thus the message received by the receiver
matches now the latest state of the sender, but the sender has to wait for this message.
This function is function receive PVM ack block. It avoids saturating the Ethernet link
and loosing too much computation time in communication procedures.
B.3
Running NN architectures
A NN architecture is run using a specific program called Promethe. In each NN architecture, a token is moving from neuron group to neuron group activating them sequentially.
When a PVM message passing group is activated, the corresponding function described
above is executed. Once all groups have been activated, running resumes on the first
group (fig. B-1).
We have seen that PVM is used as message passing library between tasks running NN (Promethe processes).
It is now necessary to have a task manager
(Promethe PVM Daemon) spawning all these tasks. In particular, this process has to
build the symbolic link table and send it to the NN tasks (fig. B-1). In order to achieve
this, the user has to define a file (name.pvm) indicating: the task name, the name of the
workstation where to run the NN , the name of the NN architecture. Then, each symbolic
link is given with its sending and receiving task. After having built the symbolic link
- 206 -
Annexe B
PVM
Promethe_PVM_Daemon
manager
task1
Promethe
task2
taskN
Promethe
Promethe
PVM messages exchanged
token
symbolic link table
trace of messages
neuron values
Neuron group
Link between groups
NN architecture
Figure B-1. Sketch of the message passing between the task manager process Promethe PVM Daemon
and the launched Promethe tasks. Each Promethe task is a NN architecture composed of groups of
neurons. A token is moving from one group to the other activating them sequentially.
table, the program displays a graphical interface using Xview. We have included in this
interface some helpful features such as: testing the network for the various workstations
available, testing the speed of these workstations and ranking them, assigning a task to
a workstation, displaying the current state of the tasks (running or waiting), and displaying in real time the messages exchanged between the various tasks. Assigning a task
to a workstation may be done either as specified in the name.pvm file, or on the fastest
workstations only, or randomly. All three options are available on line in the graphical
interface. A task may also be assigned to a specific workstation by selecting the workstation’s name and then clicking on the task (shown as a square in the display window).
The state of the tasks and the messages exchanged are monitored by the task manager.
The purpose here is not to have a complete debugging tool. It is rather thought as an
help for the user. This help gives two informations: whether a task is running or waiting
for a message, and which kind of message has been exchanged between tasks. The first
information gives hints about the working load of each task, and the efficiency of the
message exchanges. The second information allows to follow in real time the messages
exchanged between the tasks. Each time data is sent or received, a message is issued to
the manager, giving the sending and receiving tids and the message number (fig. B-1).
- 207 -
Annexe B
PVM
So, once all tasks are launched, the manager waits for these messages, and displays the
information on screen. The manager also catches all PvmTaskExit signals so that it may
resume its activity once all Promethe tasks are over. Monitoring the message exchanges
could also have been implemented another way, the manager only waiting for any message
exchanged between any tasks, and then sorting these messages depending on the message
number. This supposes that all message numbers are different, which is not required if
the symbolic links are different.
B.4
Results and discussions
We report here the performance results on a particular robotic experiment. Note that
the robot 3 is also a multi-processor system (a micro controller for the speed control and
a 68340 microprocessor for the communications with the workstations and the control of
the different sensors). This system is not under the control of PVM but it also works in
an asynchronous manner.
The task of the robot is to learn to imitate a given teacher [134]. At the beginning, the
robot can only use motion perception for going in the direction of the moving object
(supposed to be the teacher). If this behavior is not associated with a negative reward,
the robot also learns the static shape of the moving object, so as to be able to move in its
direction even if no motion is perceived. This mechanism is also used to choose between
different moving objects [132]. In order to detect movements, the optical flow is computed.
In parallel, an object recognition is performed from the matching of local subimages
centered around the local maximal curvature points. These feature points correspond to
the local maximum of the convolution of the gradient image with a Difference Of Gaussian
(DOG) function.
A sketch of the parallel architecture is given figure B-2. Task2 performs the feature points
extraction and shape recognition. Task1 performs data acquisition, movement detection
and robot movement control. These two tasks are not fully synchronized in the sense that
task1 is not waiting for the result of task2 for continuing its computation (non blocking
receive). However, task2 needs the information from task1 for its computation, because it
looks for the feature points only where movement is detected (in the case there is a moving
object. In the other case, the whole image must be processed). The data given by task1
to task2 is a 196x144 array of bytes (image) and a 35x25x3 array of floats corresponding
to where movement has been detected. Task2 is sending to task1 a 35x25x3 array of floats
corresponding to the position of a recognized teacher.
We have monitored the execution time in three different cases: the sequential
computation (without PVM) of the optical flow alone (will become task1), the sequential
computation of the optical flow and the teacher recognition, and the independent
computation of the flow (task1) and the teacher recognition (task2). These results are
given in the following table (mean-time in seconds is an average on 20 runs on SUN
3
Koala robot built by KTeam SA, Switzerland
- 208 -
Annexe B
PVM
Task 2
Processing 2
receive_PVM_block_ack
Task 1
Perception
Movement
detection
Data acquisition
Processing 1
send_PVM_ack
Action
receive_PVM_non_block_ack
send_PVM_ack
Environment
Figure B-2. Sketch of the computation done by the two tasks. Note that because the receive in task1 is
non blocking, the computation effectively executed in parallel is not always what is marked as Processing1
and Processing2. Processing2 may be executed in task2 whereas task1 executes data acquisition and
movement detection.
Sparc Ultra 10 workstations (part of a pool of workstations on a 100Mb Ethernet link).
Each run corresponds to a new experiment (in particular new input data). Each task is
running on a separate workstation):
time in seconds
seq. flow seq. flow + recog. PVM flow + recog.
seq. mean time
3.06
9.38
task1 mean time (0)
3.97
task2 mean time (1)
2.81
par. mean time (max)
3.97
task1 mean time
1.47
acquiring data (2)
task1 mean time in PVM
0.03
(sending and receiving) (3)
processing 1 (0) - (2) - (3)
2.47
task2 mean time in PVM (4)
0.32
processing 2 (1) - (4)
2.49
As expected the parallel computation runs faster than the sequential one. In average
task2 runs faster than task1, mainly because of the time spent in the communications
between the robot and the workstation. Thus as task2 has to wait for data from task1
in a blocking receive, the time spent in PVM functions (in particular waiting for data) is
longer. Communications between the robot and the workstation is slow, so it would be
particularly interesting to have a process dedicated to this task. These informations may
then be dispatched to other processes.
- 209 -
Annexe B
PVM
The message passing mechanism we have developed enables to use PVM for real-time
applications. A message is sent only when the receiving task is ready to process it, thus
reducing the network load level. Some tasks may need specific data in order to perform
their computation, others may continue working even if the newest information is not
available yet.
We have used PVM for parallelizing independent sub-networks composed of several groups
of neurons. Some groups contain thousands of neurons. A further speed-up of our system
will be the parallelization of the computation inside a group of neurons. We haven’t
tested yet whether PVM or threads (shared-memory) based algorithms should be used.
In the later case, we would use multi-processor architectures (bi or quadra Pentiums for
instance). On a bi-processor architecture, set of threads will update different subgroups of
neurons and will almost divide by two the computation time devoted to a map of neurons.
This work is part of a project dedicated to the development of a neuronal language. Our
Leto interface already allows to quickly design NN globally, ie. without specifying by
hand each connection for instance. This construction is therefore made on a graphical
interface: the user does not to write down his specifications in a file. The difficulty is
to provide the user with enough (but not too much) different group of neurons and links
between them to choose from when designing his NN architecture. By the time, we begin
to have standard neuron groups and links. Moreover, some parts of the architecture are
now stable and may be used without any changes for any other robotic experiments. This
is the case for the image processing part for instance. A next step will be then to provide
“meta-groups” of neurons (the equivalent of cortical areas) regrouping stable functional
groups.
- 210 -
Annexe C
Liste de publications
1. Ouvrages :
(a) [71]
P. Gaussier and S. Moga, Imitation, représentations motrices et intentionnalité,
ch. Des boucles Perception-Action a l’imitation :Une approche ascendante de
l’apprentissage par imitation. Paris: PUF (coll. Sciences de la Pensée), 2001.
2. Publications dans des revues scientifiques :
(a) [70]
P. Gaussier, S. Moga, M. Quoy, and J. Banquet, “From perception-action
loops to imitation processes: a bottom-up approach of learning by imitation,”
Applied Artificial Intelligence, vol. 12, pp. 701–727, Oct-Dec 1998.
(b) [66]
P. Gaussier, C. Joulain, J. Banquet, A. Revel, S. Leprêtre, and S. Moga, “A
neural architecture for autonomous learning,” Industrial Robot, vol. 26, no. 1,
pp. 33–38, 1999.
3. Communications dans les congrès internationaux à actes :
(a) [67] P. Gaussier, C. Joulain, S. Moga, M. Quoy, and A. Revel, “Autonomous
robot learning: What can we take for free ?,” in International Symposium on
Industrial Electronics - ISIE’97, (Gumarães, Portugal), pp. SS1–SS6, IEEE,
July 1997.
(b) [69] P. Gaussier, S. Moga, J. Banquet, and M. Quoy, “From perception-action
loops to imitation processes: A bottom-up approach of learning by imitation,”
in Socially Intelligent Agents, (Boston), pp. 49–54, AAAI fall symposium, 1997.
(c) [132] S. Moga and P. Gaussier, “Neural model of motion discrimination,” in
Perception - European Conference on Visual Perception, vol. 26 (supplement),
p. 65, European Conference on Visual Perception, 1998.
211
Annexe C
Liste de publications
(d) [135] S. Moga and P. Gaussier, “Les champs neuroniques comme outil de
représentation des informations visuelles,” in Journée des jeunes chercheurs
en réseaux de neurones, (Lausanne), pp. 17–21, 8-9 avril 1999.
(e) [134] S. Moga and P. Gaussier, “A neuronal structure for learning by imitation,”
in Lecture Notes in Artificial Intelligence - European Conference on Artificial
Life ECAL99 (D. Floreano, J.-D. Nicoud, and F. Mondada, eds.), (Lausanne),
pp. 314–318, September 1999.
(f) [155] M. Quoy, S. Moga, P. Gaussier, and A. Revel, “Parallelization of neural
networks using pvm,” in Recent Advances in Parallel Virtual Machine and
Message Passing Interface (J. Dongarra, P. Kacsuk, and N. Podhorszki, eds.),
(Berlin), pp. 289–296, Lecture Notes in Computer Science, Springer, no 1908,
2000.
(g) [9] P. Andry, S. Moga, P. Gaussier, A. Revel, and J. Nadel. “Imitation: learning
and communication”, in The Society for Adaptive Behavior SAB’2000, pages
353–362, Paris, 2000.
4. Communications dans les congrès nationaux à actes :
(a) [136] S. Moga, P. Gaussier, and M. Quoy, “Imitation et perception du mouvement,” in Neurosciences et Sciences de l’Ingénieur, NSI’97 (J. Herault, ed.),
(Aussois, France), pp. 49–54, Neuroscience et Science de l’Ingénieur, 1997.
(b) [131] S. Moga and P. Gaussier, “Apprentissage par imitation,” in Neurosciences
et sciences pour l’ingénieur - NSI98, (Colmar, France), 1998.
(c) [133] S. Moga and P. Gaussier, “Les champs neuronaux comme outil de
représentation des informations visuelles.,” in GRETSI’99, (Vannes, France),
pp. 515–518, Septembre 1999.
- 212 -
Bibliographie
[1] J. L. Adrien, P. Tanguay, and C. Barthelemy. Autistic children and the object
permanence task. Acta Paedopsychiatrica, 56:556–560, 1993.
[2] J.S. Albus. Outline for a theory of intelligence. IEEE trans. on syst. and cybern.,
21(3):473–509, may/june 1991.
[3] D.G. Amaral. Emerging principles of intrinsic hippocampal organization. Current
Opinion in Neurobiology, 3:225–229, 1993.
[4] S. Amari. Dynamics of pattern formation in lateral-inhibition type neural fields.
Biological Cybernetics, 27:77–87, 1977.
[5] S. Amari. A mathematical foundation for statistical neurodynamics. SIAM Journal
of Applied Mathematics, 33:95–126, 1977.
[6] P. Anandan. A computational framework and an algorithm for the measurement of
visual motion. International Journal of Computer Vision, 2:283–310, 1989.
[7] N. Ancona and T. Poggio. Optical flow from 1d correlation: Application to a simple
time-to-crash detector. In ICCV93, pages 209–214, 1993.
[8] N. Ancona and T. Poggio. Optical flow from 1d correlation: Application to a simple
time-to-crash detector. IJCV, 14(2):131–146, March 1995.
[9] P. Andry, S. Moga, P. Gaussier, A. Revel, and J. Nadel. Imitation: learning and
communication. In The Society for Adaptive Behavior SAB’2000, pages 353–362,
Paris, 2000.
[10] E. A. Armstrong. The nature and function of animal mimesis. Bulletin of Animal
Behaviour, 9:46–58, 1951.
[11] P. Bakker and Y. Kuniyoshi. Robot see, robot do : An overview of robot imitation.
In AISB Workshop on Learning in Robots and Animals, Brighton, UK, 1996.
[12] J.M. Baldwin. Development and Evolution. Macmillan, New York, USA, 1902.
213
Bibliographie
[13] J.P. Banquet, J.L. Contreras-Vidal, P. Gaussier, and Y. Burnod. Fundamentals of
neural network modelling for neuropsychologists, chapter The cortical-hippocampal
system as a multirange temporal processor: A neural model. MIT Press, Boston,
1996.
[14] J.P. Banquet, J.L. Contreras-Vidal, P. Gaussier, and Y. Burnod. Fundamentals
of neural network modelling for neuropsychologists, volume R. Park and D. Levin,
chapter The cortical-hippocampal system as a multirange temporal processor: A
neural model, pages 123–189. MIT Press, Boston, 1997.
[15] J.P. Banquet, P. Gaussier, J. C. Dreher, C. Joulain, A. Revel, and W. Günther.
Cognitive Science Perspectives on Personality and Emotion, volume 124, chapter
Space-Time, Order, and Hierarchy in Fronto-Hippocampal System: A Neural Basis
of Personality, pages 123–179. Elsevier Science, Amsterdam, 1997.
[16] S.T. Barnard and W.B. Thompson. Disparity analysis of images. PAMI, 2(4):333–
340, July 1980.
[17] S. Baron-Cohen. La cécité mentale. Presses Universitaires de Grenoble, Grenoble,
1998.
[18] J.L. Barron, D.J. Fleet, and S.S. Beauchemin. Performance of optical flow. International Journal of Computer Vision, 12:1:43–77, 1994.
[19] W.P. Bellingham, K. Gillette-Bellingham, and E.J. Kehoe. Summation and configuration in patterning schedules with the rat and rabbit. Animal Learning and
Behavior, pages 152–164, 1985.
[20] T.W. Berger, P.C. Rinaldi, D.J. Weisz, and R.F. Thompson. Single-unit analysis of
different hippocampal cell types during classical conditioning of rabbit nictitating
membrane reponse. Journal of neuronphysiology, 50:1197–1219, 1983.
[21] T.W. Berger, C.L. Weikart, J.L. Bassett, and E.B. Orr. Lesions of the retrospinal
cortex produce deficits in reversal learning of the rabbit nictitating membrane response: Implications for potential interactions between hippocampal and cerebellar
brain systems. Behavioural Neuroscience, (100):802–809, 1986.
[22] Ch. Bernard. Ondelettes et Problèmes mal posés: la mesure du flot optique et
l’interpolation irrégulière. PhD thesis, Centre de Mathématiques Appliquées, École
Polytechnique, 1989.
[23] Ch. Bernard. Fast optic flow computation with discrete wavelets. Technical Report
RI365, Centre de Mathématiques Appliquées, École Polytechnique, 1997.
[24] L. Berthouze, P. Bakker, and Y. Kuniyoshi. Learning of oculo-motor control: a
prelude to robotic imitation. IROS, Osaka, Japan, 1996.
- 214 -
Bibliographie
[25] L. Berthouze and Y. Kuniyoshi. Emergence and categorization of coordinated visual
behavior through embodied interaction. Robotics and Autonomous Systems, 5:369–
379, 1998.
[26] L. Berthouze, Y. Shigematsu, and Y. Kuniyoshi. Dynamic categorization of explorative behaviors for emergence of stable sensorimotor congurations. In The Society
for Adaptive Behavior SAB’98, pages 67–72, Zürich, August 1998.
[27] A. Berthoz. Le sens du mouvement. Odile Jacob, Paris, 1997.
[28] E. Bicho and G. Schoner. The dynamic approach to autonomous robotics demonstrated on a low-level vehicle platform. Robotics and Autonomous Systems, 21:23–35,
1997.
[29] E. Bicho and G. Schöner. Target position estimation, target acquisition, and obstacle avoidance. In International Symposium on Industrial Electronics - ISIE’97,
pages SS13–SS20, Gumarães, Portugal, July 1997. IEEE.
[30] A. Billard. DRAMA, a connectionist model for robot learning. PhD thesis, University of Edinburgh, UK, 1988.
[31] A. Billard and G. Hayes. Transmittimg communication skills throught imitation in
autonomous robots. Proceedings of Sixth European Workshop on Learning Robots,
EWLR97, July 1997.
[32] A. Billard and G. Hayes. Learning to communicate throught imitation in autonomous robots. In Proceedings of 7th International Conference on Artificial Neural
Networks, ICANN97, October 1997.
[33] K. Billard, A. Dautenhahn and G. Hayes. Experiments on human-robot communication with robota, an imitative learning and communicating robot. Proceedings of
“Socially Situated intelligence” Workshop, part of the Fifth International Conference of The Society for Adaptive Behaviour 98, SAB 98, August 1998.
[34] C. Bonnet, R. Ghiglione, and J.-F. Richard. Traité de psychologie cognitive 1,
volume Perception, action, langage. Dunod, Cambridge, 1989.
[35] M. Boucart. La reconnaissance des objets. Presses universitaires de Grenoble, Grenoble, 1996.
[36] H. O. Box. Primate Behaviour and Social Ecology. Chapman & Hall, London, UK,
1984.
[37] Rodney A. Brooks. A robust layered control system for a mobile robot. IEEE
Journal of Robotics and Automation, R.A. 2(1):14–23, March 1986.
- 215 -
Bibliographie
[38] D. Bullock, J.C. Fiala, and S. Grossberg. A neural model of timed response learning
in the cerebellum. Neural Networks, 7(6/7):1101–1114, 1994.
[39] P. Buser and M. Imbert. Vision: neurophysiologie fonctionnelle IV, volume Collection Méthodes. Hermann, Paris, 1988.
[40] G. Butterworth. Imitation in Infancy, chapter Neonatal imitation: existence, mechanisms and motives, pages 63–88. Cambridge University Press, 1999.
[41] R. W. Byrne and A. E. Russon. Learning by imitation : a hierarchical approach.
Behavioral and Brain Sciences, 21:667–721, 1998.
[42] G.A. Carpenter and S. Grossberg. Invariant pattern recognition and recall by an
attentive self-organizing art architecture in a nonstationary world. Proceeding of
Neural Network, 2:737–745, 1987.
[43] G.A. Carpenter, S. Grossberg, and D.B. Rosen. Art2-a : an adaptive resonance
algorithm for rapid category leaning and recognition. Neural Networks, 4:493–504,
1991.
[44] Gail A. Carpenter, Stephen Grossberg, Natalya Markuzon, John H. Reynolds, and
David B. Rosen. Fuzzy ARTMAP: A neural network architecture for incremental supervised learning of analog multidimensional maps. IEEE Trans. Neural Networks,
3(5):698–712, September 1992.
[45] Gail A. Carpenter, Stephen Grossberg, and John Reynolds. ARTMAP: A selforganizing neural network architecture for fast supervised learning and pattern
recognition. In Proc. Int. Joint Conf. on Neural Networks, Vol. 1, pages 863–868,
Seattle, 1991.
[46] J.-P. COCQUEREZ and S. PHILIPP. Analyse d’images : filtrage et segmentation.
Masson, Paris, 1995.
[47] K. Dautenhahn. Getting to know each other - artificial social intelligence for autonomous robots. Robotics and Autonomous System, 16(2-4):333–356, December
1995.
[48] K. Dautenhahn and I. Werry. Issues of robot-human interaction dynamics in
the rehabilitation of children with autism. In The Society for Adaptive Behavior
SAB’2000, pages 519–528, Paris, 2000.
[49] J. Decety. Do imagined and executed actions share the same neural substrate?
Cognitive Brain Research, 3(2):87–93, 1996.
[50] S. Dehaene, J.P. Changeux, and J.P. Nadal. Neural network that learn temporal
sequences by selection. Biophysics, 84:2727–2731, 1987.
- 216 -
Bibliographie
[51] D. Demigny, F. Garcia Lorca, and L. Kessal. De l’architecture à l’algorihme. un
exemple: le détecteur de contours de deriche. Traitement du signal, 14:615–623,
1997.
[52] John Demiris and Gillian Hayes. Imitative learning mechanisms in robots and
humans. In Proceedings of the 5th European Workshop on Learning Robots, Bari,
Italy, July 1996. 1996.
[53] John Demiris and Gillian Hayes. Active and passive routes to imitation. In K. Dautenhahn and C. Nehaniv, editors, Proceedings of the AISB’99 Symposium on Imitation in Animals and Artifacts, Edinburgh, UK, April 1999.
[54] J.L. Denebourg, S. Goss, N. Franks, A. Sendova-Franks, C. Detrain, and
L. Chrétien. The dynamics of collective sorting: Robot-like ants and ant-like robots.
In J.A. Meyer and S. Wilson, editors, Conference on Simulation of Adaptive Behavior, Cambridge, 1990. MIT Press.
[55] D.C. Dennett. Consciousness Explained, volume Little. Brown, Boston, Massachusetts, 1991.
[56] R. Deriche. Optimal edge detection using recursive filtering. pages 501–505, 1987.
[57] R. Deriche. Using canny’S criteria to derive a recursively implemented optimal edge
detector. International Journal of Computer Vision, 1:167–187, 1987.
[58] M. Donald. Precis of origins of the modern mind: Three stages in the evolution of
culture and cognition. Behavioral and Brain Sciences, 16(4):737–791, 1997.
[59] J. Droulez, J. Lorenceau, V. Cornilleau-Pérès, and I. Lamouret. Revue des modèles
de perception de mouvement. Atelier Segmentation et groupements perceptifs, 1996.
[60] P. J. Essens and D.-J. Povel. Evolving conceptions of memory storage, selective
attention and their mutual constraints within the human information-processing
system. Perception & Psychophysics, 37:1–7, 1985.
[61] P.W. Frey and L.E. Ross. Classical conditioning of the rabbit eyelid response as a
function of interstimulus interval. Journal of Comparative and Physiological Psychology, (65):246–250, 1968.
[62] B. G. Galef. Imitation in animals: History, definitions, and interpretation of data
from the psychological laboratory. In M. Bekoff and D. Jamieson, editors, Social
Learning: Psychological and Biological Perspectives, pages 3–28, Erlbaum, Hillsdale,
New Jersey, USA, 1988.
[63] V. Gallese, L. Fadiga, L. Fogassi, and G. Rizzolatti. Action recognition in the
premotor cortex. Brain, 119:593–609, 1996.
- 217 -
Bibliographie
[64] P. Gaussier. Simulation d’un système visuel comprenant plusieurs aires corticales :
Application à l’analyse de scènes. PhD thesis, Université d’Orsay, 1992.
[65] P. Gaussier, C. Joulain, J.P. Banquet, S. Leprêtre, and A. Revel. The visual homing problem: an example of robotics/biology cross fertilization. Robotics and Autonomous Systems, 30:155–180, 2000.
[66] P. Gaussier, C. Joulain, J.P. Banquet, A. Revel, S. Leprêtre, and S. Moga. A neural
architecture for autonomous learning. Industrial Robot, 26(1):33–38, 1999.
[67] P. Gaussier, C. Joulain, S. Moga, M. Quoy, and A. Revel. Autonomous robot
learning: What can we take for free ? In International Symposium on Industrial
Electronics - ISIE’97, pages SS1–SS6, Gumarães, Portugal, July 1997. IEEE.
[68] P. Gaussier, C. Joulain, S. Zrehen, J.P. Banquet, and A. Revel. Visual navigation
in an open environement without map. In International Conference on Intelligent
Robots and Systems - IROS’97, pages 545–550, Grenoble, France, September 1997.
IEEE/RSJ.
[69] P. Gaussier, S. Moga, J.P. Banquet, and M. Quoy. From perception-action loops
to imitation processes: A bottom-up approach of learning by imitation. In Socially
Intelligent Agents, pages 49–54, Boston, 1997. AAAI fall symposium.
[70] P. Gaussier, S. Moga, M. Quoy, and J.P. Banquet. From perception-action loops
to imitation processes: a bottom-up approach of learning by imitation. Applied
Artificial Intelligence, 12(7-8):701–727, Oct-Dec 1998.
[71] P. Gaussier and Sorin Moga. Imitation, représentations motrices et intentionnalité,
chapter Des boucles Perception-Action a l’imitation :Une approche ascendante de
l’apprentissage par imitation. PUF (coll. Sciences de la Pensée), Paris, 2001.
[72] P. Gaussier, A. Revel, C. Joulain, and S. Zrehen. Living in a partially structured
environment: How to bypass the limitation of classical reinforcement techniques.
Robotics and Autonomous Systems, 20:225–250, 1997.
[73] P. Gaussier and S. Zrehen. Perac: A neural architecture to control artificial animals.
Robotics and Autonomous System, 16(2-4):291–320, December 1995.
[74] A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek, and V. Sunderam.
PVM: Parallel Virtual Machine - A users’s guide and tutorial for networked parallel
computing. MIT Press, Cambridge, Massachusetts, 1994.
[75] J. Gibson. The Perception of the Visual World. Houghton Mifflin, Boston, USA,
1955.
[76] J.J. Gibson. The ecological approach to visual perception, volume Cornell Cniversity.
Laurence Erlbaum Associates, Hillsdale, New Jersey / London, 1986.
- 218 -
Bibliographie
[77] M. Giese. A Dynamical Model for the Perceptual Organization of Apparent Motion. PhD thesis, Fakultät für Electrotechnik und Informationstechnik der RuhrUniversität Bochum, Germany, 1998.
[78] M. Giese, G. Schöner, and H. S. Hock. The dynamics of the perceptual organisation in apparent motion. In Neural Networks, Artificial Intelligence and Industrial
Applications, pages 165–168, Berlin, 1995. Springer.
[79] S. Grossberg. Contour enhancement, short term memory, and constanciesin reverberating neural networks. Studies in Applied Mathematics, L11:213–257, 1973.
[80] S. Grossberg. Adaptive pattern classification and universal recoding, ii : Feedback,
expectation, olfaction, and illusions. Biological Cybernetics, 23:187–202, 1976.
[81] S. Grossberg. Nonlinear neural networks: principles, mechanisms, and architectures.
Neural Networks, 1:17–61, 1988.
[82] S. Grossberg and J. W. L. Merrill. A neural network model of adaptively timed
reinforcement learning by hippocampal dynamics. Cognitive Brain Research, 1:3–
38, 1992.
[83] S. Grossberg and J.W.L. Merrill. The hippocampus and cerebellum in adaptively
timed learning, recognition, and movement. Journal of Cognitive Neuroscience,
8:257–277, 1996.
[84] S. Grossberg and E. Mingolla. Neural dynamics of form perception: Boundary
completion, illusory figures and neon color spreading. Psych.Rev., 92(2):173–211,
1985.
[85] S. Grossberg and N.A. Schmajuk. Neural dynamics of adaptive timing and temporal
discrimination during associative learning. Neural Networks, 2:79–102, 1989.
[86] P. Guillaume. L’imitation chez l’enfant. Alcan, Paris, 1926 (réed. 1968 PUF).
[87] J.-C. Guyomarc’h. Ethologie. Masson, Paris, 1995.
[88] A. C. Guyton. Neurosciences. PICCIN Nuova Libraria, Padoue, Italie, 1996.
[89] L. Hafemeister and P. Gaussier. Contribution of a dynamic model for texture perception. In European Conference on Visual Perception ECVP’98, Oxford, England,
August 1998.
[90] K. R. L. Hall. Observational learning in monkeys. Br. J. Psychol., 54:337–445,
1963.
[91] S. Harnad. The symbol grounding problem. Physica D, 42:335–346, 1990.
- 219 -
Bibliographie
[92] S. Harnad. La Modélisation, volume IV of LEKTON, chapter L’Ancrage des Symboles dans le Monde Analogique à l’aide de Réseaux Neuronaux : un Modèle Hybride. 1994.
[93] G.M. Hayes and J. Demiris. A robot controller using learning by imitation. In
Proceedings of the 2nd International Symposium on Intelligent Robotic Systems,
pages 198–204, Grenoble, France, 1994.
[94] S.M. Haynes and R.C. Jain. Detection of moving edges. CVGIP, 21(3):345–367,
March 1983.
[95] D.O. Hebb. The Organization of Behavior. Wiley, New York, 1949.
[96] R. Hecht-Nielsen. Counterpropagation networks. Applied Optics, 26(23):4979–4984,
1987.
[97] D.J. Heeger. Optical flow from spatiotemporal filters. In ICCV87, pages 181–190,
1987.
[98] D.J. Heeger and A. Jepson. Visual perception of three-dimensional motion. NeurComp, 2:129–137, 1990.
[99] C. M. Heyes. Imitation in rats: Initial responding and transfer evidence. The
quarterly Journal of Experimental Psychology, 45B(3):229–240, 1992.
[100] B.K.P. Horn and B.G. Schunck. Determining optical flow. AI, 17:185–203, 1981.
[101] B.K.P. Horn and B.G. Schunck. Determining optical flow: A retrospective. AI,
59(1):81–87, 1993.
[102] D.H. Hubel and T.N. Wiesel. Ferrier lecture: Functional architecture of macaque
monkey visual cortex. Proc. Roy. Soc. Lond. B. Biol. Sci., 198:1–59, 1977.
[103] D.H. Hubel and T.N. Wiesel. Brain mechanisms of vision. Scientific American,
pages 130–144, 1979.
[104] G. Humphrey. Imitation and the conditioned reflex. Pedagog. Semin, 28:1–21, 1921.
[105] S. Jacobson. Matching behaviour in the young infant. Child Development, (50):425–
430, 1979.
[106] M. Jeannerod. Les deux mécanismes de la vision. La recherche, 5(41), 1974.
[107] M. Jeannerod. The representing brain: neural correlates of motor intention and
imagery. Behav. Brain Sci., 17(41):187–245, 1994.
- 220 -
Bibliographie
[108] C. Joulain, P. Gaussier, and A. Revel. Learning to build categories from perceptionaction associations. In International Conference on Intelligent Robots and Systems
- IROS’97, pages 857–864, Grenoble, France, September 1997. IEEE/RSJ.
[109] J.A. Scott Kelso. Dynamic patterns: the self-organization of brain and behavior.
Bradford Book, MIT Press, 1995.
[110] K. Kishimoto and S. Amari. Existence and stability of local excitations in homogeneous neural fields. Journal of Mathematical Biology, 7:303–318, 1979.
[111] E. Knudsen and M. Konishi. Mechanisms of sound localization in the barn owl (tyto
alba). Journal of Compartive Physiology, 133:13–21, 1979.
[112] T. Kohonen. Self-Organization and Associative Memory. Springer-Verlag, New
York, 1984.
[113] T. Kohonen. Self-Organization and associative memory. Heidelberg: SpringerVerlag, Berlin, 3rd edition, 1989.
[114] T. Kohonen. Physiological interpretation of the self-organizing map algorithm. Neural Networks, 6:895–905, 1993.
[115] Q. Kong. Confucius / textes choisis et commentes par Alfred Doeblin, volume Collection Les Introuvables. Editions d’Aujourd’hui, Paris, 1975.
[116] G. Kugiumutzakis. Imitation in Infancy, chapter Genesis and development of early
infant mimesis to facial and vocal models, pages 36–59. Cambridge University Press,
1999.
[117] Y. Kuniyoshi. The science of imitation - towards physically and socially grounded
intelligence -. Special Issue TR-94001, Real World Computing Project Joint Symposium, Tsukuba-shi, Ibaraki-ken, 1994.
[118] Y. Kuniyoshi and L. Berthouze. Neural learning of embodied interaction dynamics.
Neural Networks, 11(7-8):1259–1276, 1998.
[119] S. Leprêtre, P. Gaussier, and J.P. Cocquerez. Un modèle neuronal pour la reconnaissance d’objets. pages 435–438. GRETSI, 1999.
[120] W. B. Levy, X. Wu, and R.A. Baxter. Unification of hippocampal function via
computational/encoding considerations. In D.J. Amit, P. del Guidice, B. Denby,
E.T. Rolls, and A. Treves, editors, Proceedings of the Third Workshop on Neural
Networks: from Biology to Hight Energy Physics, pages 71–80. World Scientific
Publishing, Singapore, 1995.
[121] R. Lippman. An introduction to computing with neural nets. IEEE ASSP Magazine,
pages 4–22, 1987.
- 221 -
Bibliographie
[122] Q.T. Luong, R. Deriche, O.D. Faugeras, T. Papadopoulo, A. Mitiche, and
P. Bouthemy. Computation and analysis of image motion: A synopsis of current
problems and methods. IJCV, 19(1):29–55, July 1996.
[123] M.J. Matarić. Issues and approaches in the design of collective autonomous agents.
Robotics and Autonomous System, 16(2-4):321–331, December 1995.
[124] W. S. McCulloch and W. Pitts. A logical calculus of ideas immanent in nervous
activity. Bulletin of Mathematical Biophysics, 5:115–133, 1943.
[125] M. K Meltzoff, N. Moore. Imitation of facial and manual gestures by humans
neonates. Science, 198:75–82, 1977.
[126] N. Meltzoff and M. K. Moore. Imitation in Infancy, chapter Persons and representation: why infants imitation is important for theories of human development,
pages 9–35. Cambridge University Press, 1999.
[127] L. Miclet. Méthodes structurelles pour la reconnaissance des formes. Eyrolles, PAris,
1984.
[128] S. Mineka and M. Cook. Social learning and the acqusition of the snake fear in
monkeys. In T. Zentall and B. Galef, editors, Social Learning: Psychological and
biological perspectives, pages 51–73, 1988.
[129] R. W. Mitchell. A comparative-developmental approach to understanding imitation.
Perspectives in Ethology, 7:183–215, 1989.
[130] A. Mitiche. Computational analysis of visual motion. In Plenum Press, 1994.
[131] S. Moga and P. Gaussier. Apprentissage par imitation. In Neurosciences et sciences
pour l’ingénieur - NSI98, Colmar, France, 1998.
[132] S. Moga and P. Gaussier. Neural model of motion discrimination. In Perception
- European Conference on Visual Perception, volume 26 (supplement), page 65.
European Conference on Visual Perception, 1998.
[133] S. Moga and P. Gaussier. Les champs neuronaux comme outil de représentation des
informations visuelles. In GRETSI’99, pages 515–518, Vannes, France, Septembre
1999.
[134] S. Moga and P. Gaussier. A neuronal structure for learning by imitation. In D. Floreano, J-D. Nicoud, and F. Mondada, editors, Lecture Notes in Artificial Intelligence - European Conference on Artificial Life ECAL99, pages 314–318, Lausanne,
September 1999.
- 222 -
Bibliographie
[135] S. Moga and P. Gaussier. Les champs neuroniques comme outil de représentation
des informations visuelles. In Journée des jeunes chercheurs en réseaux de neurones,
pages 17–21, Lausanne, 8-9 avril 1999.
[136] S. Moga, P. Gaussier, and M. Quoy. Imitation et perception du mouvement. In
J. Herault, editor, Neurosciences et Sciences de l’Ingénieur, NSI’97, pages 49–54,
Aussois, France, 1997. Neuroscience et Science de l’Ingénieur.
[137] C. L. Morgan. Animal Behaviour. Edward Arnold, London, UK, 1900.
[138] J. Nadel. Imitation et communication entre jeunes enfants. Presse Universitaire de
France, Paris, 1986.
[139] J. Nadel. The evolving nature of imitation as a format for communication., pages
209–235. Cambridge University Press, 1999.
[140] J. Nadel. The Functionnal Use of Imitation in Preverbal Infants and Nonverbal
Children With Autism. Cambridge University Press, 2000.
[141] H. Neven and G. Schöner. Dynamics parametrically controlled by image correlations
organize robot navigation. Biological Cybernetics, 75:293–307, 1996.
[142] D. Norton and L. Stark. Eye movements and visual perception. Scientific American,
224(6):34–43, 1991.
[143] C. Numaoka. Innate sociability: Sympathetic coupling. Applied Artificial Intelligence, 12(7-8):98–102, Oct-Dec 1998.
[144] R. Pfeifer and C. Scheier. Sensory-motor coordination: the metaphor and beyond.
Robotics and Autonomous Systems, 1996.
[145] R. Pfeifer and P. Verschure. The Artificial Life Route to Artificial Intelligence,
chapter The challenge of autonomous systems: Pitfalls and how to avoid them.
MIT Press, Cambridge, MA, 1994.
[146] J. Piaget. La naissance de l’intelligence chez l’enfant, volume Neuchâtel-Paris.
Delachaux et Niestle Editions, Geneve, 1936.
[147] J. Piaget. La formation du symbole chez l’enfant, volume Neuchâtel-Paris.
Delachaux et Niestle Editions, Geneve, 1945 (rép. 1978).
[148] M. Piccolino. La vision à la dopamine. La recherche, 19(205), 1988.
[149] Platon. La Republique. Gallimard, Paris, 1993.
[150] T. Poggio, A. Verri, and V. Torre. Green theorems and qualitative properties of the
optical flow. In MIT AI, 1991.
- 223 -
Bibliographie
[151] R.L. Port, A.G. Romano, and M.M. Patterson. Stimulus duration discrimination
in the rabbit: Effects of hippocampectomy on discrimination and reversal learning.
Physiological Psychology, (14):100–129, 1986.
[152] D.-J. Povel. Internal representation of simple temporal patterns. Journal of Experimental Psychology: Human Perception and Performance, 7:3–18, 1981.
[153] C. Prepscius and W. B. Levy. Sequence prediction and cognitive mapping by a
biologically plausible neural network. In International Neural Network Society, editor, Proceedings of the ISNN World Congress on Neural Network, volume IV, pages
164–169, 1994.
[154] M. Quoy, P. Gaussier, S. Leprêtre, A. Revel, C. Joulain, and J.P. Banquet. A neural
model for the visual navigation and planning of a mobile robot. In F. Mondada
D. Floreano, J.D. Nicoud, editor, European Conference on Artificial life, ECAL99,
volume 1674, pages 319–323, Lausanne, september 1999.
[155] M. Quoy, S. Moga, P. Gaussier, and A. Revel. Parallelization of neural networks
using pvm. In J. Dongarra, P. Kacsuk, and N. Podhorszki, editors, Recent Advances
in Parallel Virtual Machine and Message Passing Interface, pages 289–296, Berlin,
2000. Lecture Notes in Computer Science, Springer, no 1908.
[156] W. Reichardt. Movement perception in insects. In Processing of optical data by
organisms and by machines., New York, 1969. Academic Press.
[157] M. Reiss and J. G. Taylor. Storing temporal sequences. Neural Networks, 4:773–787,
1991.
[158] R.A. Rescorla and A.R. Wagner. Classical Conditioning II : Current Research and
Theory, chapter A theory of Pavlovian conditioning : Variations in the effectiveness
of reinforcement and nonreinforcement. Appleton-Century-Crofts, New York, 1972.
[159] A. Revel. Contrôle d’un robot mobile autonome par approche neuro-mimétique. Doctorat de traitement de l’image et du signal, Université de Cergy-Pontoise, Novembre
1997.
[160] G. Rizzolatti. From mirror neurons to imitation: Facts and speculation. Technical
report, 1999.
[161] G. Rizzolatti, L. Fadiga, V. Gallese, and L. Fogassi. Premotor cortex and the
recognition of motor actions. Cognitive Brain Research, 3:131–141, 1996.
[162] P. Rodier. Les origines de l’autisme. Pour la science, (269):88–94, mars 2000.
[163] B. Rogé. Autisme et autres troubles graves du développement. Gaetan Morin, Montreal, Canada, 1999.
- 224 -
Bibliographie
[164] R.T. Ross, W.B. Orr, P.C. Holland, and T.W. Berger. Hippocampectomy disrupts acquisition and retention of learned conditional responding. Behavioral Neuroscience, (98):211–225, 1984.
[165] N. Rougier. Modèles de mémoires pour la navigation autonome. PhD thesis, Université Nenri Poincaré - Nancy 1, Octobre 2000.
[166] D.E. Rumelhart and D. Zipser. Feature discovery by competitive learning. Cognitive
Science, 9:75–112, 1985.
[167] J.P. Cocquerez S. Leprêtre, P. Gaussier. From navigation to active object recognition. In The Society for Adaptive Behavior SAB’2000, pages 353–362, Paris, 2000.
[168] G. Schöner and M. Dose. A dynamical systems approach to task-level system integration used to plan and control autonomous vehicle motion. Robotics and Autonomous System, 10:253–267, 1992.
[169] G. Schöner, M. Dose, and C. Engels. Dynamics of behavior: theory and applications
for autonomous robot architectures. Robotics and Autonomous System, 16(2-4):213–
245, December 1995.
[170] L. Schwartz. Computational anatomy and functional architecture of striate cortex:
a spatial mapping approach to perceptual coding. Vision Res., 20:645–669, 1980.
[171] W. Singer. Synchronisation of cortical activity ant its putative role in information
processing and learning. Annual Review of Physiology, 55:349–374, 1996.
[172] A. Singh. Optic flow computation: A unified perspective, ieee computer society
press, los alamitos. CA, 92:1992, 1992.
[173] M. Smith and I. Gormezano. Effects of alternating classical conditioning and extinction sessions on the conditioned nictating membrane response of the rabbit.
Psychonomic Science, (3):91–92, 1965.
[174] P.J. Sobey and M.V. Srinivasan. Measurement of optical flow by a generalized
gradient scheme. J. of the Optical Society of America A, (8(9)):1488–1498, 1991.
[175] P.R. Solomon. Role of the hippocampus in blocking and conditioned inhibition of
rabbit’s nictitating membrane response. Journal of Comparative and Physiological
Psychology, (91):407–417, 1977.
[176] A. Spinei. Estimation du mouvement par triades de filtres de Gabor. Application
au mouvement d’objets transparents. PhD thesis, TIRF - Institul Polytechnique de
Grenoble, Grenoble, France, 1998.
[177] A. Spinei, D. Pellerin, and J. Herault. Spatiotemporal energy-based method for
velocity estimation. Signal Processing, (65):347–362, 1998.
- 225 -
Bibliographie
[178] A. Steinhage. Dynamical Systems for the Generation of Navigation Behavior. PhD
thesis, Institut für Neuroinformatik der Ruhr-Universität Bochum, Germany, 1997.
[179] A. Steinhage and G. Schöner. The dynamic approach to autonomous robot navigation. In International Symposium on Industrial Electronics - ISIE’97, pages
SS7–SS12, Gumarães, Portugal, July 1997. IEEE.
[180] E. Thelen, G. Schöner, C. Scheier, and L.B. Smith. The dynamics of embodiment: A
field theory of infant perseverative reaching. Behavioral and Brain Sciences, 24(1),
2000.
[181] G. Theraulaz, S. Goss, J. Gervet, and J.L. Deneubourg. Task differentation in
polistes wasp colonies: A model for self- organizing groups of robots. In Jean-Arcady
Meyer and Stewart W. Wilson, editors, Proceedings of the First International Conference on Simulation of Adaptive Behavior, pages 346–355. A Bradford Book The
MIT Press, 1990.
[182] R.F. Thompson. Neural models of Plasticity, chapter Neural circuit for classical
conditioning of the eyelid closure response., pages 160–177. Academic Press, San
Diego, CA, 1989.
[183] E. L. Thorndike. Animal intelligence: An experimental study of the associative
process in animals. Psychology Rev. Monogr., 2(8):551–553, 1898.
[184] W. H. Thorpe. Learning and Instinct in Animals. Methuen, London, UK, 1930.
[185] M. Tomasello. Observational learning of tool-use by young chimpanzees. Human
Evolution, 2:175–183, 1987.
[186] M. Tomasello. Cultural transmission in the tool use and communicatory signaling
of chimpanzees ? In S. T. Parker and K. R. Gibson, editors, “Language” and
Intelligence in Monkeys and Apes, pages 274–311, Cambridge University Press, UK,
1990.
[187] A. Torralba. Analogue Architectures for Vision : Cellular Neural Networks and
Neuromorphic Circuits. PhD thesis, TIRF - Institul Polytechnique de Grenoble,
Grenoble, France, 1999.
[188] A. Torralba and J. Hèrrault. An efficient neuromorphic analog network for motion
estimation. IEEE Trans. Circuits and Systems-I, 46(2):269–280, 1999.
[189] A. Treisman. Features and objects : the fourteenth bartlett memorial lecture. The
quarterly journal of experimental psychology, 40.A(2):201–237, 1988.
[190] A. Treisman and S. Sato. Conjunction search revisited. Journal of Experimental
Psychology: Human Perception and Performance, 16:459–478, 1990.
- 226 -
Bibliographie
[191] M. Treisman. Temporal discrimination and the indifference interval: Implications
for a model of the internal ’clock’. Psychological Monographs: General and Applied,
77:1–31, 1963.
[192] A. Treves and E. Rolls. Computational analysis of the role of the hippocampus in
memory. Hippocampus, 4(3):374–391, June 1994.
[193] I. C. Usgiris. Imitation in infancy, chapter Imitation as activity: its developmental
aspects, pages 187–206. Cambridge University Press, 1999.
[194] H. von Helmholtz. Handbuch der ohysiologischen Optik. Voss, Leipzig, vol. 3 edition,
1910.
[195] H. Wallon. De l’acte à la pensée. Flammarion, Paris, 1942 rééd. 1970.
[196] A. Wertheim. Motion perception during self-motion: The direct versus inferential
controversy revisited. Behavioral and Brain Sciences, 17(2):293–355, 1994.
[197] A. Whiten and R. Ham. On the nature and evolution of imitation in the animal
kingdom: Reappraisal of a century of research. In P.J.B. Slater, Rosenblatt J.S,
C. Beer, and M. Milinski, editors, Advances in the study of behavior, pages 239–283,
San Diego, CA, 1992. Academic Press.
[198] C.G. Wible, R.L. Findling, M.W. Shapiro, E.J. Lang, S. Crane, and D.S. Olton.
Mnemonic correlates of unit activity in the hippocampus. Brain Research, (399):97–
110, 1986.
[199] W. Wickler. Mimicry in Plants and Animals. McGraw-Hill, New-York, USA, 1968.
[200] Bernard Widrow and Marcian E. Hoff. Adaptive switching circuits.
WESCON, pages 96–104, New York, 1960. Convention Record.
In IRE
[201] D. Willshaw, O. Buneman, and H. Longuet-Higgins. Non-holographic associative
memory. Nature, 962:222–960, 1969.
[202] C.N. Woolsey. Cortical sensory organization: Multilple auditory areas. Crescent
Manor, N.J.: Humana, 1981.
[203] C.N. Woolsey. Cortical sensory organization: Multiple somatic areas. Crescent
Manor: N.J.: Humana, 1981.
[204] C.N. Woolsey. Cortical sensory organization: Multiple visual areas. Crescent Manor,
N.J.: Humana, 1981.
[205] R. Zazzo. Le problème de l’imitation chez le nouveau-né. Enfance, 10:135–124,
1957.
- 227 -
Bibliographie
[206] S. Zrehen. Elements of Brain Design for Autonomous Agents. PhD thesis, EPFL,
1995.
[207] S. Zrehen and P. Gaussier. Why topological maps are useful for learning in an
autonomous agent. In J.D. Nicoud and P. Gaussier, editors, From perception to
action conference, Los Alamitos, CA, 1994. IEEE Press.
- 228 -
Téléchargement