Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

Inverse Dynamics Model

  • Aussi appelé: IDM, inverse model, inverse dynamics
  • Catégorie: Learning & autonomy › RL & simulation
  • Mots-clés: dynamics, control, robot-learning, video-learning, model-based-control

Un modèle qui calcule l'action, comme des couples articulaires ou une commande, nécessaire pour faire passer un système de son état actuel à un état suivant ou une accélération souhaités.

Définition

Modèles de dynamique inverse (inverse dynamics models) : modèles qui répondent à l'inverse de la question à laquelle répond un modèle direct : étant donné où se trouve le système et où il devrait être ensuite, quelle action l'y amène ? Formellement, un modèle de dynamique inverse associe à un état actuel et à un état suivant souhaité, ou à une accélération souhaitée, l'action qui produit ce changement.

En robotique classique, la dynamique inverse consiste à calculer les couples articulaires nécessaires pour obtenir des positions, vitesses et accélérations articulaires données. Pour les robots à corps rigides, ce calcul se fait efficacement avec l'algorithme récursif de Newton-Euler, dont le coût croît linéairement avec le nombre d'articulations. La dynamique inverse est la base de la commande par couple calculé et de la compensation par anticipation : le contrôleur calcule les couples dont le bras a besoin pour suivre une trajectoire et n'utilise la rétroaction que pour corriger l'erreur restante. Les contrôleurs corps entier des robots à pattes résolvent une forme contrainte de dynamique inverse qui tient aussi compte des forces de contact.

En apprentissage robotique, un modèle de dynamique inverse est généralement un réseau de neurones entraîné sur des transitions enregistrées pour prédire l'action effectuée entre deux observations consécutives. Cela a plusieurs usages. Il peut transformer une observation future prédite, comme une image vidéo générée, en une action que le robot peut exécuter. Il peut étiqueter des vidéos sans actions enregistrées en inférant quelles actions ont dû être effectuées. Il sert aussi d'objectif d'entraînement auxiliaire qui incite les représentations apprises à capturer ce que l'agent peut contrôler.

Un modèle inverse peut être mal posé lorsque différentes actions produisent le même résultat ou lorsque l'état suivant souhaité ne peut pas être atteint en un pas, c'est pourquoi les systèmes pratiques ajoutent souvent du contexte, comme des états passés ou un horizon plus long.

Pourquoi c'est important

La dynamique inverse est le moyen par lequel un robot transforme un mouvement planifié en forces ou en commandes qui le produisent, de la commande par couple calculé des bras industriels à la commande corps entier des humanoïdes. En apprentissage robotique, les modèles de dynamique inverse relient la prédiction à l'action, permettant à des systèmes entraînés sur la vidéo ou la prédiction d'états futurs de commander réellement un robot.

Applications principales

  • Commande par couple calculé et par anticipation des bras robotiques
  • Commande corps entier des humanoïdes et des robots à pattes
  • Conversion d'observations futures prédites en actions exécutables
  • Inférence d'étiquettes d'actions pour les jeux de données vidéo qui en sont dépourvus
  • Apprentissage auto-supervisé de représentations pour la commande

En pratique

Pour un bras robotique doté d'un URDF précis, les ingénieurs calculent la dynamique inverse avec une bibliothèque comme Pinocchio ou dans le contrôleur du fabricant et injectent les couples obtenus en anticipation, laissant une boucle de rétroaction à gain plus faible gérer le frottement et les charges non modélisées. Lorsque le modèle est incertain, ils identifient d'abord les paramètres inertiels ou apprennent une correction résiduelle par-dessus. Dans les pipelines d'apprentissage, une équipe peut entraîner un petit réseau de dynamique inverse sur des trajectoires de robot avec actions enregistrées, puis l'utiliser pour inférer les actions d'un ensemble plus large de vidéos sans actions, ou pour convertir en commande l'image suivante prédite par un modèle. Elle le vérifie en comparant les actions inférées aux actions enregistrées sur des données mises de côté.

Idées reçues

  • La dynamique inverse est la même chose que la cinématique inverse — la cinématique inverse trouve les positions articulaires pour une pose souhaitée, tandis que la dynamique inverse trouve les forces ou couples nécessaires pour produire un mouvement souhaité
  • Un modèle de dynamique inverse est une politique complète — il dit comment atteindre un état suivant donné, mais quelque chose d'autre doit décider quel état viser
  • La dynamique inverse a toujours une réponse unique — les robots redondants, les contacts et les objectifs à plusieurs pas peuvent rendre plusieurs actions également valables

Qui devrait le savoir

  • Ingénieurs en commande de robots travaillant sur des bras et des robots à pattes
  • Chercheurs en apprentissage robotique utilisant la vidéo et les modèles du monde
  • Développeurs de commande corps entier pour humanoïdes
  • Étudiants en robotique qui étudient la dynamique

Technologies associées

  • Algorithme récursif de Newton-Euler (Recursive Newton-Euler Algorithm)
  • Pinocchio
  • Commande par couple calculé (Computed-Torque Control)
  • Commande corps entier (Whole-Body Control)
  • Modèle de dynamique directe (Forward Dynamics Model)
  • Modèle du monde (World Model)

Termes associés

  • Imitation Learning
  • Torque Control
  • Forward Dynamics Model

Projets associés

  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • DreamZero: NVIDIA World Action Model that jointly predicts future video and robot actions
  • robosuite: Modular MuJoCo simulation framework for robot learning research
  • LIBERO: Lifelong robot learning benchmark with 130 procedural tasks

Vidéos

  • Modern Robotics, Chapter 8.3: Newton-Euler Inverse Dynamics: Northwestern Robotics

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.