Présentation
RÉSUMÉ
Planifier les déplacements d'un robot nécessite une carte et une méthode de localisation. Les algorithmes de SLAM (Simultaneous Localisation and Mapping) permettent de construire ces cartes de manière autonome. Les techniques employées sont variées, tant au niveau des représentations produites, des techniques algorithmiques que des capteurs utilisés. Cet article présente les grandes classes d'algorithmes et les méthodes courantes de corrélation de données, de filtrage et d'optimisation ainsi que leurs applications concrètes.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
David FILLIAT : Professeur, Unité informatique et ingénierie des systèmes (U2IS), ENSTA, Institut Polytechnique de Paris, Palaiseau, France
INTRODUCTION
Il existe une très large palette de méthodes de navigation pour la robotique mobile. Les plus simples sont des méthodes réactives faisant un lien direct entre perception courante et action qui vont permettre de se déplacer aléatoirement ou de suivre une cible ; mais pour accomplir une tâche complexe, il est souvent nécessaire de connaître la position du robot dans son environnement et de disposer d’une carte qui permette de planifier les déplacements pour atteindre un but précis en évitant les obstacles connus. Un robot aspirateur peut par exemple très bien fonctionner avec une stratégie réactive de navigation aléatoire, mais si l’on imagine un robot de service pouvant apporter des objets à une personne handicapée, des capacités de planification de déplacement et de localisation précise sont nécessaires.
Lorsque l’on souhaite naviguer en utilisant une carte, il faut résoudre deux problèmes : celui de la cartographie pour créer cette carte, et celui de la localisation pour estimer la position du robot. Pour des applications pouvant se permettre une mise en place assez lourde, la cartographie peut être simplifiée en étant réalisée par un opérateur humain, ou en modifiant l’environnement par l’ajout de balises par exemple. Cependant, pour des applications à très large diffusion, typiquement des robots de service à la personne, il est souhaitable que le robot puisse réaliser sa carte de manière autonome, sans adaptation de l’environnement et sans connaissances particulières de l’utilisateur. C’est également le cas pour des applications où l’être humain ne peut pas accéder à l’environnement, comme dans un contexte militaire ou de catastrophe naturelle. Dans ces cas, les problèmes de cartographie et de localisation sont interdépendants et il faut les résoudre ensemble, ce qui a donné naissance à un domaine de recherche très actif depuis les années 1990 : celui de la cartographie et localisation simultanées, désigné par son acronyme anglais SLAM (Simultaneous Localization and Mapping).
Le SLAM a déjà des applications grand public, notamment avec les robots aspirateurs, dont certains modèles utilisent des caméras ou des télémètres laser pour construire une carte, se localiser et planifier leurs déplacements. Cependant, cela reste un domaine de recherche très actif, et des progrès constants sont accomplis pour permettre de fournir des cartes plus précises, contenant des informations sémantiques par exemple, ou de fonctionner dans des environnements plus grands, plus complexes ou sur des périodes de temps plus longues. Dans le cadre de cet article, nous nous focaliserons sur des applications de robotique de service en environnement intérieur, même si la plupart des concepts et techniques peuvent s’utiliser directement ou s’adapter en milieu extérieur ou à d’autres types d’application tels que les véhicules intelligents. Dans ces contextes cependant, il est en général utile de mettre en œuvre un système de localisation par satellite (GNSS : Global Navigation Satellite System) qui, s’il n’a pas la précision suffisante pour construire directement une carte de l’environnement, permet néanmoins d’avoir une estimation de position absolue et de limiter la dérive à long terme de la localisation.
Nous présenterons tout d’abord les capteurs et les grands types de cartes utilisés pour le SLAM. Nous détaillerons ensuite les grandes classes d’algorithmes et présenterons rapidement les méthodes les plus courantes de corrélation de données, de filtrage et d’optimisation. Enfin, nous analyserons plusieurs algorithmes déjà exploités dans des applications industrielles, qui partent de méthodes éprouvées et dépendent des types de capteurs disponibles sur le robot, et présenterons un aperçu de méthodes plus récentes issues de la recherche. Sans pouvoir développer en détail les différentes méthodes dans le cadre de cet article, nous souhaitons donner une vue suffisamment large et claire du domaine pour permettre de choisir le type d’approche le mieux adapté en fonction des contraintes d’un projet.
MOTS-CLÉS
VERSIONS
- Version archivée 1 de mars 2014 par David FILLIAT
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Robotique
(66 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Représentations de l’environnement
1.1 Capteurs pour la navigation
Tous les capteurs utilisés en robotique mobile fournissent soit des informations sur le déplacement du robot (informations proprioceptives), soit des informations sur l’environnement du robot (appelées en général simplement « perceptions »).
Ces informations ont des propriétés complémentaires. Les informations proprioceptives, qui peuvent provenir de la mesure de la rotation des roues ou de la mesure de l’accélération grâce à une centrale inertielle, sont soumises à un bruit cumulatif qui les rend inutilisables à long terme car l’erreur de mesure de position augmente constamment. Pour leur part, les perceptions, qui peuvent provenir de télémètres ou de caméras par exemple, sont soumises à des ambiguïtés qui n’augmentent pas forcément au cours du temps, mais qui ne permettent pas de localiser un robot de manière non équivoque. Par exemple, la détection d’une porte peut permettre de localiser précisément le robot par rapport à cette porte, mais ne permet pas toujours de savoir devant quelle porte le robot se trouve parmi toutes les portes du bâtiment.
Dans un processus de navigation à long terme, maintenir une localisation précise requiert donc en général l’intégration des données proprioceptives et des perceptions du fait de leur complémentarité. Les perceptions permettent en effet de corriger l’erreur d’une estimation produite par les informations proprioceptives, tandis que les données proprioceptives, en donnant une première estimation de la position, permettent de résoudre les ambiguïtés des perceptions.
Dans le cadre de cet article, nous traiterons de méthodes de SLAM utilisant trois types de capteurs :
-
les télémètres laser ;
-
les caméras standard (RGB) ;
-
les caméras mesurant également la profondeur (RGB-D).
L’exploitation d’informations proprioceptives dépend des algorithmes. Dans le cas du SLAM 2D, les données d’odométrie provenant des roues du robot sont très souvent utilisées. Cependant, si un algorithme estime la position à partir des perceptions avec une fréquence suffisamment élevée, les données proprioceptives ne sont pas forcément nécessaires, la position estimée précédemment, ou une extrapolation sous l’hypothèse de vitesse constante, étant suffisante comme estimation initiale. C’est...
Cet article fait partie de l’offre
Robotique
(66 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Représentations de l’environnement
BIBLIOGRAPHIE
-
(1) - KOHLBRECHER (S.), VON STRYK (O.), MEYER (J.), KLINGAUF (U.) - A flexible and scalable SLAM system with full 3D motion estimation (Hector SLAM). - IEEE international symposium on safety, security, and rescue robotics (2011).
-
(2) - VIZZO (I.), GUADAGNINO (T.), MERSCH (B.), WIESMANN (L.), BEHLEY (J.), STACHNISS (C.) - Kiss-icp: In defense of point-to-point icp–simple, accurate, and robust registration if done the right way. - IEEE Robotics and Automation Letters, 8(2), 1029-1036 (2023).
-
(3) - GRISETTI (G.), STACHNISS (C.), BURGARD (W.) - Improved Techniques for Grid Mapping with Rao-Blackwellized Particle Filters. - IEEE Transactions on Robotics, Volume 23, pages 34-46 (2007).
-
(4) - LU (F.), MILIOS (E.) - Globally Consistent Range Scan Alignment for Environment Mapping. - Auton. Robots 4, 4, 333-349 (1997).
-
(5) - KUEMMERLE (R.), GRISETTI (G.), STRASDAT (H.), KONOLIGE (K.), BURGARD (W.) - g2o : A General Framework for Graph Optimization. - IEEE International Conference on Robotics and Automation (ICRA) (2011).
- ...
ANNEXES
Cyrill Stachniss, Udo Frese, Giorgio Grisetti OpenSLAM : site Internet regroupant des implémentations logicielles de la plupart des techniques décrites dans cet article :
https://openslam-org.github.io/ (page consultée le 9 février 2025)
Open Source Robotics Foundation Robot Operating System (ROS) : outils et bibliothèques pour la robotique incluant notamment plusieurs implémentations de SLAM :
http://www.ros.org (page consultée le 9 février 2025)
HAUT DE PAGECet article fait partie de l’offre
Robotique
(66 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive