olivier sigaud isir olivier.sigaud@lip6.fr

Post on 14-Jan-2016

74 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Apprentissage du contrôle moteur : architectures. Olivier Sigaud ISIR Olivier.Sigaud@lip6.fr. PLAN. Coordination posture-tâche. Adaptation du geste élémentaire. Système comportemental. découplage des tâches/ commande optimale. Acquisition de compétences motrices nouvelles. - PowerPoint PPT Presentation

TRANSCRIPT

Page : 1

Cours Animat

Olivier Sigaud

ISIR

Olivier.Sigaud@lip6.fr

Apprentissage du Apprentissage du contrôle moteur : contrôle moteur :

architecturesarchitectures

Page : 2

Cours Animat

PLAN

Gestion de

l’équilibre

Ajustementsposturaux anticipatifs

découplagedes tâches/commande optimale

Verticalisation

locomotion

Coordinationposture tâche

Adaptation motrice

Apprentissage de modèles dynamiques

Rééducation du geste moteur

Adaptationdu geste

élémentaire

Acquisition de compétences

motrices nouvelles

Apprentissage

par renforcemen

t

Enchaînement complexes de tâches

Coordination posture-tâcheAdaptation du geste élémentaireSystème comportemental

Page : 3

Cours Animat

Coordination Coordination posture-tâcheposture-tâche

Page : 4

Cours Animat

Commande prédictiveCommande prédictive Minimiser sur un intervalle [0,n] la fonction f(x,u) Sous les contraintes : X1 = AX0+BU0

X2 = AX1+BU1

X3 = AX2+BU2

… XN = AXN-1+BUN-1

Un solveur cherche les Ui.

Horizon glissant. Fast NMPC : prédire les commandes suivantes pendant

qu’on exécute les commandes courantes

Contraintes linéaires

Page : 5

Cours Animat

Gestion de l’équilibre

Filtre dynamiqueProgramme quadratique

Page : 6

Cours Animat

Quantification de l'équilibre

Page : 7

Cours Animat

Etude de la verticalisation Outils d’analyse du

mouvement humain Mise en évidence des

phénomènes clefs Quantification nécessaire à

la validation des modèles

Page : 8

Cours Animat

Ajustements posturaux anticipatifs

A/P

V

Vz

A/P

CoP

0.5 m

0.2 m/s

1 m/s

TO FC TO FC

Vzm

Vz(FC)

Vz = Vz(FC) - Vzm , magnitude of braking

young adult elderly subject

Jeune : Vz > 0 ; Sujets âgés :Vz = 0

Etude fine de la dynamique du pas

Freinage de la chute du centre de masse

Perte de la capacité d’anticipation chez le sujet âgé

Welter et al. (2007) Control of vertical components of gait during initiation of walking in normal adults and patients with progressive supranuclear palsy. Gait Posture. 26(3):393-9

Page : 9

Cours Animat

Architecture de commande Contrôleur pour les ajustements posturaux réactifs

(feedback) Contrôleur prédictif pour les ajustements posturaux

anticipatifs (feedforward)

Commande optimale en feedback (OFC)•Harris&Wolpert•Todorov•Guigon (2007)

Maîtrise de la taille du problème Difficulté à apprendre la dynamique (M,B,G) en ligne

Page : 10

Cours Animat

DécompositionDécompositionmodulairemodulaire

Page : 11

Cours Animat

Travaux en coursTravaux en cours Plutôt que de chercher des méthodes de pointe pour les

grandes dimensions Décomposer en modules qui ont une représentation

partielle Instanciés par une brique de base Apprentissage de forward models par LWPR Commande optimale simple (LQC/Operational space

control) Focalisation sur la coordination des modules pour gérer

les couplages

Page : 12

Cours Animat

JacobienneJacobiennedx

dy

dq1

Déplacement d’un point de fonctionnement dans un référentiel lié à un but

Déplacement des angles articulaires

dq2

dq3

dX = J(Q) dQX=(x,y)

Q=(q1,q2,q3)

Page : 13

Cours Animat

Operational Space ControlOperational Space Control

Equation de la dynamiqueEquation de la dynamique

Pour une tâche donnée, on sait calculer les couples pour Pour une tâche donnée, on sait calculer les couples pour obtenir dX via J(q)obtenir dX via J(q)##

Permet de faire proprement de la composition de tâchesPermet de faire proprement de la composition de tâches Pour une seconde tâche, on projette dans le noyau de la Pour une seconde tâche, on projette dans le noyau de la

jacobienne de la première tâche, du coup la première jacobienne de la première tâche, du coup la première tâche n’est pas altéréetâche n’est pas altérée

Et ainsi de suite tant qu’il reste des degrés de libertéEt ainsi de suite tant qu’il reste des degrés de liberté

Page : 14

Cours Animat

Composition de tâchesComposition de tâches

Tâches dans l’espace opérationnel : réduit la dimension du problème

Découpler des tâches triées par priorité : projeter dans le noyau de la jacobienne

Problèmes : trier, connaître la

jacobienne tâches incompatibles

Page : 15

Cours Animat

Optimal ControlOptimal Control

Bon cadre pour apprendre la dynamique Attention, xt = (Q,dQ) Si critère = ∫xQx+uRu dxdu, LQC => Ricatti

Page : 16

Cours Animat

Commande optimale asservieà la trajectoire

Mouvement dans l’espace de la tâche

Adaptation motrice

Operational Space Control Optimal control

Apprendre J(q)# Apprendre A et B

Page : 17

Cours Animat

DécompositionDécompositionbiologiquement biologiquement

fondéefondée

Page : 18

Cours Animat

Système nerveux centralSystème nerveux central

Page : 19

Cours Animat

Connaissances Connaissances neurophysiologiquesneurophysiologiques

Page : 20

Cours Animat

MOSAIC (Haruno, Wolpert…MOSAIC (Haruno, Wolpert…98-03)98-03)

Chaque module répond au Chaque module répond au mieux pour un sous-domaine mieux pour un sous-domaine de l’espace d’étatsde l’espace d’états

Commande = somme Commande = somme pondérée des IMpondérée des IM

Le cervelet réalise un ensemble de couples FM/IMLe cervelet réalise un ensemble de couples FM/IMLes FM sont construits par apprentissage superviséLes FM sont construits par apprentissage superviséQualité de la prédiction du FM => Responsibility Signal (RS)Qualité de la prédiction du FM => Responsibility Signal (RS)

Page : 21

Cours Animat

Décomposition modulaire : Décomposition modulaire : MOSAICMOSAIC

Proche des mixtures d’experts, Proche des mixtures d’experts, sauf que softmax plutôt que WTAsauf que softmax plutôt que WTAPb : signal de correction pour le modèle inverse (?)Pb : signal de correction pour le modèle inverse (?)

La force de l’apprentissage La force de l’apprentissage % au RS% au RS

Principe de spécialisation Principe de spécialisation émergenteémergente

Page : 22

Cours Animat

MOSAIC : vue d’ensembleMOSAIC : vue d’ensemble

Responsibility predictor = entrée visuelle (stabilise)Responsibility predictor = entrée visuelle (stabilise)Feedback controllerFeedback controller (hardwired) pour corriger IM (hardwired) pour corriger IMNombreux choix « lourds » (HMM, bayésien, nb modules)Nombreux choix « lourds » (HMM, bayésien, nb modules)

Page : 23

Cours Animat

APG (Barto 99) : pulse step APG (Barto 99) : pulse step controlcontrol

Ajustement anticipatif durée et amplitude de commandeAjustement anticipatif durée et amplitude de commande

Pas de Pas de forward modelforward model explicite explicite

Page : 24

Cours Animat

APG : vue d’un module du APG : vue d’un module du cerveletcervelet

Plus proche du niveau cellulairePlus proche du niveau cellulaireFocalisé sur les délaisFocalisé sur les délais

Restreint à 1D, et correcteur Restreint à 1D, et correcteur ad hocad hoc

Corriger le poids Corriger le poids des PF de façon à des PF de façon à faire décroitre faire décroitre l’erreurl’erreur

Erreur connue Erreur connue plus tard => traces plus tard => traces d’éligibilitésd’éligibilités

Page : 25

Cours Animat

APG + MOSAICAPG + MOSAIC

On retrouve les directions préféréesOn retrouve les directions préférées

Mais on a toujours besoin d’un correcteur Mais on a toujours besoin d’un correcteur ad hocad hoc

On corrige plus On corrige plus celui qui répond celui qui répond davantage dans la davantage dans la direction de la direction de la correctioncorrection

Page : 26

Cours Animat

AR indirect : MMRLAR indirect : MMRL

Pb clé : RL dans le cas continu…Pb clé : RL dans le cas continu…

Remplace les IM par Remplace les IM par •RL (discret) RL (discret) •commande optimale (continu)commande optimale (continu)

Proche de SalaünProche de Salaün

Plus clair que MOSAICPlus clair que MOSAIC

Page : 27

Cours Animat

Séquences motricesSéquences motrices

Page : 28

Cours Animat

Séquences motrices

Modèle associant contextes sensori-moteurs et répertoires d’objectifs opérationnels

Apprentissage par renforcement de séquences complexes de tâches élémentaires

Gabalda et al. (2007) Learning postures through sensorimotor training: a human simulation case study. 7th Epigenetic Robotics, 29-36

Page : 29

Cours Animat

Cartes auto-organisatrices de Cartes auto-organisatrices de KohonenKohonen

Représentation en deux dimensions de données à plusieurs dimensions

Conservation du voisinage topologique

Extension des domaines par entraînement

Page : 30

Cours Animat

Etudes neurophysiologiques Etudes neurophysiologiques chez le singechez le singe

Stimulation du gyrus précentral

Mouvements vers une posture finale

Répertoire de postures au niveau du gyrus précentral

Graziano et al. (2005)Graziano (2006)

Page : 31

Cours Animat

Interaction de trois cartes

Aflalo & Graziano (2006)

somatotopie type de posture position de la main

Etudes neurophysiologiques Etudes neurophysiologiques chez le singechez le singe

Page : 32

Cours Animat

Séquence de Séquence de contextescontextes

attraper manipuler manger se protéger

fruit à portée fruit en main fruit décortiqué agression

Page : 33

Cours Animat

InitialisatInitialisationion

initialisation carte 1 carte 2

mangerattraper manipuler se protéger

Obtenues à partir de 2 millions de postures aléatoires(dans des ordres différents)

Page : 34

Cours Animat

Liens contextes - Liens contextes - neuronesneurones

384 cellules de posture-but

Chaque cellule de contexte est liée aux 384 cellules de but

Contexte = état, Cellule de but = action

La force d’un lien est une Q-valeur

Page : 35

Cours Animat

Sélection d’un Sélection d’un butbut

L’activation d’un contexte déclenche l’activation de la cellule but la plus fortement liée (sans exploration)

Page : 36

Cours Animat

Détermination de la posture Détermination de la posture viséevisée

La cellule but code un objectif dans l’espace des tâches

Page : 37

Cours Animat

Mouvement vers la Mouvement vers la posture cibleposture cible

Une loi de commande bas-niveau

réalise le geste vers le but

Page : 38

Cours Animat

Vérification des Vérification des contraintescontraintes

Durant le déroulement du geste,

on vérifie si une récompense est reçue

Page : 39

Cours Animat

Posture récompenséePosture récompensée

Si une posture but est atteinte, on touche une récompense locale

Page : 40

Cours Animat

Apprentissage (1) Apprentissage (1) augmentation du lien contexte augmentation du lien contexte

-but-but

Page : 41

Cours Animat

Apprentissage (2) Apprentissage (2) entraentraînement de la carteînement de la carte

Page : 42

Cours Animat

Carte Carte appriseapprise

Page : 43

Cours Animat

Vue globale du Vue globale du modèlemodèle

Page : 44

Cours Animat

SynthèseSynthèse Un processus bas niveau pour la commande motrice et

l’adaptation motrice (cf. cours sur le geste élémentaire)

Une couche intermédiaire correspondant à un répertoire d’objectifs opérationnels

Une couche supérieure assurant la sélection de ces objectif et l’enchaînement des gestes correspondant

Travaux de modélisation plus fine aux 3 niveaux Focalisation sur la couche de sélection de l’action

Page : 45

Cours Animat

Ganglions de la base

Page : 46

Cours Animat

Modèle Samejima-Doya étendu

Page : 47

Cours Animat

Modèle Frank-Claus [Frank2006]

Page : 48

Cours Animat

Robotique Robotique développementaledéveloppementale

Page : 49

Cours Animat

Au-delà du contrôle moteur : robotique développementale

•Projet iCub français classé 2ième sur 31 (ISIR porteur) : apprentissage moteur et interaction sociale

Page : 50

Cours Animat

La perception comme action La perception comme action simuléesimulée Le système moteur est actif lors de la perception des

actions d’autrui Les « neurones miroirs » déchargent à la fois quand

nous faisons une action et quand nous l’observons chez autrui (Rizzolati 98)

Une aire pré-motrice est activée lorsqu’on observe des outils ou qu’on lit/entend des verbes d’action

Idée que la simulation interne d’une action observée ou de l’usage d’un outil perçu sert à l’interprétation

Page : 51

Cours Animat

Un modèle pour Un modèle pour l’interprétation du gestel’interprétation du geste

Demiris : perception d’autrui et imitation

Page : 52

Cours Animat

Vers l’IA symboliqueVers l’IA symbolique Le système moteur est impliqué dans un mécanisme

d’interprétation Les « neurones miroirs » sont dans F5 chez le singe, qui

correspond à l’aire de Broca (langage) chez l’homme L’action simulée comme racine des représentations de

l’action d’autrui, puis des pensées d’autrui (théorie de l’esprit) puis du langage

Fournit un ancrage aux « symboles » de l’IA symbolique

Page : 53

Cours Animat

Approche animat et contrôle Approche animat et contrôle moteurmoteur

Raisonnement

PlanificationLangage, symboles

Navigation Sélection de l’action

Commande motrice

Page : 54

Cours Animat

Stages non pourvusStages non pourvus

Page : 55

Cours Animat

Commande prédictiveCommande prédictive Minimiser sur un intervalle [0,n] la fonction f(x,u) Sous les contraintes : X1 = AX0+BU0

X2 = AX1+BU1

X3 = AX2+BU2

… XN = AXN-1+BUN-1

Un solveur cherche les Ui.

Horizon glissant. Fast NMPC : prédire les commandes suivantes pendant

qu’on exécute les commandes courantes

Contraintes linéaires

Page : 56

Cours Animat

Optimisation de paramètres pour Optimisation de paramètres pour OSC/LQC :OSC/LQC :

application aux mouvements capturésapplication aux mouvements capturés

Thèse possible : à l’interface entre l’animation et la commande robotique

Trouver les paramètres qui permettent de coller au mouvement capturé

Comparer le cadre OSC et le cadre LQC

Recherche du « bon » formalisme pour le contrôle moteur humain

Page : 57

Cours Animat

LWPR temps réel pour Bioloid

Porter le code MATLAB de Camille Salaün sous URBI for Bioloid, puis mettre au point la manip d’apprentissage du geste

Page : 58

Cours Animat

Bon courage pour vos stages…Bon courage pour vos stages…

… … et pour le projet Animat ! ;)et pour le projet Animat ! ;)

top related