Suite et fin de notre série d’articles consacrée à l’exploration autonome au service des robots mobiles. Cet ultime épisode décrit la mise en œuvre de la méthode d’exploration autonome basée sur les frontières, ainsi que les résultats en simulation, puis en environnement réel.

Environnements de tests de l’algorithme

Afin de mettre en oeuvre la méthode basée sur les frontières, trois environnements aux spécificités bien particulières ont été considérés :

HOUSE
158m²
Densité moyenne
Ouvert

BOOKSTORE
155m²
Densité élevée
Ouvert

SMALL HOUSE
58m²
Densité moyenne
Plusieurs pièces

La méthode de référence : explore_lite

Pour mettre en œuvre l’algorithme d’exploration des frontières présenté dans l’article précédent, le logiciel (paquet ROS) open source explore_lite a été utilisé et modifié afin d’améliorer les performances de l’exploration. Cet article s’attache à présenter les principales modifications apportées et à comparer l’algorithme avec celui de référence.

Les modifications d’explore_lite

Après avoir constaté plusieurs limitations inhérentes à explore_lite, l’équipe Awabot Intelligence a modifié celui-ci afin de le rendre à la fois plus fonctionnel et plus performant. Ces modifications concernent :

– la fonction de coût

Dans le paquet explore_lite, la fonction de coût était à l’origine calculée selon l’équation suivante :

C(ƒ) = λ1distance(ƒ) – λ2taille(ƒ)

Contrairement à l’équation présentée dans l’article précédent, l’équation ci-dessus ne dépend pas de l’orientation du robot par rapport à la frontière. C’est pourquoi, afin de tenir compte de l’orientation dans le calcul du coût des frontières, l’estimation de l’orientation a été ajoutée au paquet explore_lite.

C(ƒ) = λ1distance(ƒ) – λ2taille(ƒ) + λ3orientation(ƒ)

– le critère d’arrêt

Dans le paquet explore_lite, l’exploration est terminée lorsque toutes les frontières ont été visitées. Cependant, à la fin de l’exploration, certaines frontières semblent inexplorées et ne permettent pas au robot de découvrir une nouvelle zone de l’environnement : le robot va alors perdre du temps et des ressources pour aller voir ces frontières sans toutefois obtenir d’informations supplémentaires.

Ici, le robot détecte encore trois frontières alors que la carte construite peut être considérée comme complète.

Ici, le robot détecte encore trois frontières alors que la carte construite peut être considérée comme complète.

Pour améliorer l’efficacité de l’exploration tout en obtenant une carte la plus complète possible, un deuxième critère d’arrêt s’appuyant sur le taux de complétude de la carte a été ajouté. Si la carte est couverte à 97%, valeur déterminée grâce aux tests, alors l’exploration est terminée.
Il faut noter que ce critère d’arrêt est valable seulement en simulation. En réalité, la carte réalité terrain n’est pas accessible puisque l’environnement est inconnu. Nous pouvons cependant envisager une estimation de la complétude en nous basant sur la surface théorique d’un bâtiment.

Algorithme d’exploration des frontières : résultats en simulation

Des tests avant et après modifications d’explore_lite ont été effectués sur les trois environnements présentés précédemment, au sein desquels un robot mobile TURTLEBOT3 Burger a été utilisé. Les informations de temps d’exploration, de distance parcourue et de complétude ont été utilisées comme critères d’évaluation.
En outre, la métrique d’efficacité a été définie par la surface explorée sur le temps d’exploration.

Le tableau ci-dessus montre que pour les trois environnements de tests, l’algorithme modifié est plus performant que l’algorithme de référence, puisque le robot explore plus de surface en moins de temps.

La vidéo suivante permet de visualiser la solution d’exploration autonome dans l’environnement Bookstore :

  • À droite : logiciel Gazebo – environnement réel du robot
  • À gauche : outil de visualisation RViz – carte construite par le robot

Voici un exemple de carte obtenue grâce à l’exploration autonome en comparaison avec la carte réalité terrain :

Exploration autonome

Réalité terrain

On remarque que la carte obtenue avec l’exploration autonome est complète, malgré un tracé moins net que sur la carte réalité terrain.

Les résultats sur environnement réel

Après avoir validé la solution d’exploration autonome en simulation, celle-ci a été testée sur environnement réel, au sein des bureaux d’Awabot. Le robot a exploré l’environnement de 70 mètres carrés en 6 minutes et 30 secondes et en parcourant une distance de 53 mètres. La carte obtenue est complète mais moins précise que les cartes obtenues en simulation.

Carte obtenue avec l’exploration autonome dans les locaux d’Awabot

Vous avez des besoins en cartographie autonome et avez un projet lié à la robotique mobile ? Contactez-nous dès maintenant.

En savoir plus sur Awabot IntelligenceNous contacter