Configuration Space Distance Fields for Manipulation Planning
Auteurs: Yiming Li, Xuemin Chi, Amirreza Razmjoo, Sylvain Calinon · RSS 2024
Licences
- Accès libre
- Article: CC BY 4.0
Tout ce qui suit s'appuie sur l'article complet sous sa licence CC BY 4.0 ; sa figure est montrée en citant les auteurs.
En bref
Définit un champ de distance directement sur les angles articulaires, de sorte que l'IK corps entier devient une projection de gradient en une étape et que les planificateurs évitent les minima locaux que causent les SDF sur un Franka à 7-DoF.
Pourquoi c'est important
Les planificateurs et contrôleurs qui prennent déjà une fonction de distance (QP, iLQR, geometric fabrics) peuvent utiliser le CDF à la place d'un SDF et travailler directement dans l'espace articulaire. Sur le robot plan et le Franka, les mêmes planificateurs ont obtenu des taux de réussite plus élevés et une erreur de suivi plus faible avec le CDF qu'avec le SDF.
Problème
Les champs de distance signés sont normalement définis dans l'espace de la tâche 3D, si bien que la commande de manipulation mesure d'abord la distance dans cet espace, puis résout la cinématique inverse de manière itérative pour trouver les mouvements articulaires. Comme la cinématique directe est non linéaire, le champ perd sa propriété de gradient unitaire vu dans l'espace articulaire, et les solveurs à base de gradient peuvent se bloquer là où les gradients s'annulent ou aux singularités.
Solution proposée
Le champ de distance dans l'espace de configuration (CDF) donne, en radians, le plus petit mouvement articulaire qui met une partie quelconque du robot en contact avec un point ; il satisfait l'équation eikonale, de sorte que la configuration de contact la plus proche est atteinte par projection le long du gradient. Les configurations de contact sont trouvées hors ligne pour chaque point de la grille de l'espace de travail par L-BFGS par lots sur un modèle SDF du robot, les champs par point sont fusionnés en ligne par une opération de minimum, et un MLP à 5 couches (CDF neuronal) en donne une version compacte, sans grille et différentiable.
Idées clés
- Un champ de distance défini sur les angles articulaires conserve des gradients de norme unitaire, si bien que l'IK corps entier pour une cible de contact se réduit à une seule projection, q′ = q − f_c ∇f_c, sans itérations de Gauss-Newton.
- La valeur du champ ne dépend que des articulations situées avant le corps en contact ; prendre un minimum par corps améliore la précision lorsqu'il existe peu d'échantillons de configurations de contact.
- Les champs par point peuvent être précalculés et combinés en ligne par un minimum (une union dans l'espace de configuration), de sorte que la représentation ne dépend pas d'une scène particulière.
- Les gradients du champ suivent des chemins qui contournent les obstacles dans l'espace articulaire, ce qui aide les planificateurs réactifs à éviter les minima locaux observés avec les SDF dans l'espace de la tâche.
Principaux résultats
- IK corps entier sur le Franka à partir de 10 000 configurations initiales aléatoires (tableau II) : le CDF avec projection en 2 étapes a trouvé 8 773 solutions valides en 10,6 ms ; SDF + L-BFGS en a trouvé 3 652 en 971 ms et Neural-JSDF + L-BFGS 264 en 272 ms. Le texte l'exprime comme plus de 700 000 solutions valides par seconde, 180 fois l'approche SDF.
- Précision du CDF neuronal : MAE de 1,39 ± 0,51 cm et 91,1 ± 8,12 % de réussite de projection (seuil de 3 cm) après 3 itérations de projection ; l'inférence GPU prenait 0,49 ms pour une taille de lot de 1 et 4,61 ms pour 10^5 sur une RTX 3090.
- Planification de mouvement du Franka sur 100 exécutions : taux de réussite du CDF de 88–93 % avec IPOPT, QRQP, OSQP, qpOASES et geometric fabrics contre 38–74 % avec le SDF ; iLQR 48 % contre 38 %. Sur le robot plan à 2-DoF, le CDF a atteint 76–95 % contre 40–68 % pour le SDF.
- Tâche de gardien de but en simulation (100 lancers) : le bras a intercepté la balle 82 % du temps avec le CDF contre 35 % avec le SDF.
- Planification de contact à deux bras sur une grande boîte : 7,65 s de temps de planification et 1,37 rad de distance articulaire moyenne avec CDF + filtrage contre 54,80 s et 2,85 rad avec SDF + optimisation de Gauss-Newton.
- Les contrôleurs QP utilisant le CDF neuronal tournent à plus de 200 Hz ; l'entraînement du CDF neuronal a pris environ 2 heures sur une RTX 3090.
Limites
- Le champ est non signé et, avec peu d'échantillons de configurations de contact, il est imprécis pour les configurations proches du contact ; les auteurs suggèrent d'ajouter une information de signe.
- Il est construit à partir de la géométrie et de la cinématique d'un robot et doit être recalculé pour chaque modèle de robot ; le passage à de longues chaînes cinématiques comme des humanoïdes complets reste ouvert.
- Le calcul hors ligne est lent (1–10 s pour trouver les configurations de contact), la version en grille est peu efficace en mémoire et la version neuronale sacrifie de la précision ; les auteurs notent que l'entraînement du réseau n'était pas entièrement optimisé.
- La distance est mesurée comme une distance angulaire (distance articulaire euclidienne) ; la distance géodésique sur la variété de l'espace de configuration est laissée à des travaux futurs.
- Les expériences de planification sur robot réel sont présentées qualitativement (Fig. 8), sans taux de réussite, et la tâche de gardien de but n'a été menée qu'en simulation.
Impact sur le domaine
Finaliste du RSS 2024 Outstanding Paper Award, avec 48 citations. La page officielle du projet renvoie au code sur github.com/yimingli1998/cdf.
Résumé
Le champ de distance signé (signed distance field) est une représentation implicite de forme répandue en robotique, qui fournit des informations géométriques sur les objets et les obstacles sous une forme facilement combinable avec des techniques de commande, d'optimisation et d'apprentissage. Le plus souvent, les SDF servent à représenter des distances dans l'espace de la tâche, ce qui correspond à la notion familière de distance que nous percevons dans notre monde 3D. Cependant, les SDF peuvent mathématiquement être utilisés dans d'autres espaces, y compris les espaces de configuration des robots. Pour un robot manipulateur, cet espace de configuration correspond généralement aux angles de chaque articulation du robot. S'il est d'usage en planification robotique d'exprimer quelles portions de l'espace de configuration sont libres de collision avec les obstacles, il est moins courant de considérer cette information comme un champ de distance dans l'espace de configuration. Dans cet article, nous montrons l'intérêt de considérer les SDF dans l'espace de configuration du robot pour l'optimisation, ce que nous appelons le champ de distance dans l'espace de configuration (configuration space distance field). De même que l'usage du SDF dans l'espace de la tâche, le CDF fournit une requête efficace de distance en angles articulaires et un accès direct aux dérivées. La plupart des approches scindent le calcul global en une partie dans l'espace de la tâche suivie d'une partie dans l'espace de configuration. Le CDF permet au contraire d'exploiter la structure implicite de manière unifiée dans les problèmes de commande, d'optimisation et d'apprentissage. Nous proposons en particulier un algorithme efficace pour calculer et fusionner des CDF, généralisable à des scènes arbitraires. Une représentation neuronale correspondante du CDF utilisant des perceptrons multicouches est également présentée, afin d'obtenir une représentation compacte et continue tout en améliorant l'efficacité de calcul. Nous démontrons l'efficacité du CDF sur des exemples d'évitement d'obstacles plans et avec un robot Franka à 7 axes dans des tâches de cinématique inverse et de planification de manipulation.
Liens
- arXiv 2406.01137: https://arxiv.org/abs/2406.01137
- DOI 10.48550/arXiv.2406.01137: https://doi.org/10.48550/arXiv.2406.01137
- PDF: https://arxiv.org/pdf/2406.01137v1
- Code: https://github.com/yimingli1998/cdf
- Page du projet: https://sites.google.com/view/cdfmp/home