580 likes | 814 Views
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.
E N D
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 Apprentissage par renforcement Ajustements posturaux anticipatifs Apprentissage de modèles dynamiques Adaptation motrice Adaptation du geste élémentaire Coordination posture tâche Gestion de l’équilibre Enchaînement complexes de tâches Verticalisation locomotion Rééducation du geste moteur
Coordination posture-tâche
Commande 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
Gestion de l’équilibre Filtre dynamique Programme quadratique
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
Ajustements posturaux anticipatifs • 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
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
Décomposition modulaire
Travaux 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
Jacobienne dx Déplacement d’un point de fonctionnement dans un référentiel lié à un but dy dq3 dq2 Déplacement des angles articulaires dq1 X=(x,y) Q=(q1,q2,q3) dX = J(Q) dQ
Operational Space Control • Equation de la dynamique • Pour une tâche donnée, on sait calculer les couples pour obtenir dX via J(q)# • Permet de faire proprement de la composition de tâches • Pour une seconde tâche, on projette dans le noyau de la jacobienne de la première tâche, du coup la première tâche n’est pas altérée • Et ainsi de suite tant qu’il reste des degrés de liberté
Composition 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
Optimal Control • Bon cadre pour apprendre la dynamique • Attention, xt = (Q,dQ) • Si critère = ∫xQx+uRu dxdu, LQC => Ricatti
Adaptation motrice Optimal control Operational Space Control Commande optimale asservie à la trajectoire Mouvement dans l’espace de la tâche Apprendre J(q)# Apprendre A et B
Décomposition biologiquement fondée
MOSAIC (Haruno, Wolpert…98-03) Chaque module répond au mieux pour un sous-domaine de l’espace d’états Commande = somme pondérée des IM Le cervelet réalise un ensemble de couples FM/IM Les FM sont construits par apprentissage supervisé Qualité de la prédiction du FM => Responsibility Signal (RS)
Décomposition modulaire : MOSAIC La force de l’apprentissage % au RS Principe de spécialisation émergente Proche des mixtures d’experts, sauf que softmax plutôt que WTA Pb : signal de correction pour le modèle inverse (?)
MOSAIC : vue d’ensemble Responsibility predictor = entrée visuelle (stabilise) Feedback controller (hardwired) pour corriger IM Nombreux choix « lourds » (HMM, bayésien, nb modules)
APG (Barto 99) : pulse step control Ajustement anticipatif durée et amplitude de commande Pas de forward model explicite
APG : vue d’un module du cervelet Corriger le poids des PF de façon à faire décroitre l’erreur Erreur connue plus tard => traces d’éligibilités Plus proche du niveau cellulaire Focalisé sur les délais Restreint à 1D, et correcteur ad hoc
APG + MOSAIC On corrige plus celui qui répond davantage dans la direction de la correction On retrouve les directions préférées Mais on a toujours besoin d’un correcteur ad hoc
AR indirect : MMRL Remplace les IM par • RL (discret) • commande optimale (continu) Proche de Salaün Plus clair que MOSAIC Pb clé : RL dans le cas continu…
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
Cartes auto-organisatrices de Kohonen Représentation en deux dimensions de données à plusieurs dimensions Conservation du voisinage topologique Extension des domaines par entraînement
Etudes neurophysiologiques chez le singe Graziano et al. (2005) Graziano (2006) Stimulation du gyrus précentral Mouvements vers une posture finale Répertoire de postures au niveau du gyrus précentral
Etudes neurophysiologiques chez le singe Interaction de trois cartes somatotopie type de posture position de la main Aflalo & Graziano (2006)
Séquence de contextes fruit à portée fruit en main fruit décortiqué agression attraper manipuler manger se protéger
Initialisation initialisation carte 1 carte 2 attraper manipuler manger se protéger Obtenues à partir de 2 millions de postures aléatoires (dans des ordres différents)
Liens contextes - neurones 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
Sélection d’un but L’activation d’un contexte déclenche l’activation de la cellule but la plus fortement liée (sans exploration)
Détermination de la posture visée La cellule but code un objectif dans l’espace des tâches
Mouvement vers la posture cible Une loi de commande bas-niveau réalise le geste vers le but
Vérification des contraintes Durant le déroulement du geste, on vérifie si une récompense est reçue
Posture récompensée Si une posture but est atteinte, on touche une récompense locale
Synthè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
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
La perception comme action simulé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