Algorithmes SLAM : Vers une implémentation embarquée

La navigation autonome est un axe de recherche principal dans le domaine de la robotique mobile. Dans ce contexte, le robot doit disposer des algorithmes qui lui permettent d’evoluer de maniere autonome dans des environnements complexes et inconnus. Les algorithmes de SLAM permettent a un robot de cartographier son environnement tout en se localisant dans l’espace. Les algorithmes SLAM sont de plus en plus performants, mais aucune implementation materielle ou architecturale complete n’a eu. Une telle implantation d’architecture doit prendre en consideration la consommation d’energie, l’embarquabilite et la puissance de calcul. Ce travail scientifique vise a evaluer des systemes embarques impliquant de la localisation ou reconstruction de scene. La methodologie adoptera une approche A3 (Adequation Algorithme Architecture) pour ameliorer l’efficacite de l’implantation des algorithmes plus particulierement pour des systemes a fortes contraintes. Le systeme SLAM embarque doit disposer d’une architecture electronique et logicielle permettant d’assurer la production d’information pertinentes a partir de donnees capteurs, tout en assurant la localisation de l’embarquant dans son environnement. L’objectif est donc de definir, pour un algorithme choisi, un modele d’architecture repondant aux contraintes de l’embarque. Les premiers travaux de cette these ont consiste a explorer les differentes approches algorithmiques permettant la resolution du probleme de SLAM. Une etude plus approfondie de ces algorithmes est realisee. Ceci nous a permet d’evaluer quatre algorithmes de differente nature : FastSLAM2.0, ORB SLAM, RatSLAM et le SLAM lineaire. Ces algorithmes ont ete ensuite evalues sur plusieurs architectures pour l’embarque afin d’etudier leur portabilite sur des systemes de faible consommation energetique et de ressources limitees. La comparaison prend en compte les temps d’executions et la consistance des resultats. Apres avoir analyse profondement les evaluations temporelles de chaque algorithme, le FastSLAM2.0 est finalement choisi, pour un compromis temps d’execution-consistance de resultat de localisation, comme candidat pour une etude plus approfondie sur une architecture heterogene embarquee. La second partie de cette these est consacre a l’etude d’un systeme embarque implementant le FastSLAM2.0 monoculaire dedie aux environnements larges. Une reecriture algorithmique du FastSLAM2.0 a ete necessaire afin de l’adapter au mieux aux contraintes imposees par les environnements de grande echelle. Dans une demarche A3, le FastSLAM2.0 a ete implante sur une architecture heterogene CPU-GPU. Grâce a un partitionnement efficace, un facteur d’acceleration global de l’ordre de 22 a ete obtenu sur une architecture recente dediee pour l’embarque. La nature du traitement de l’algorithme FastSLAM2.0 pouvait beneficier d’une architecture fortement parallele. Une deuxieme instance materielle basee sur une architecture programmable FPGA est proposee. L’implantation a ete realisee en utilisant des outils de synthese de haut-niveau afin de reduire le temps de developpement. Une comparaison des resultats d’implantation sur cette architecture materielle par rapport a des architectures a base de GPU a ete realisee. Les gains obtenus sont consequent, meme par rapport aux GPU haut-de-gamme avec un grand nombre de cœurs. Le systeme resultant peut cartographier des environnements larges tout en garantissant le compromis entre la consistance des resultats de localisation et le temps reel. L’utilisation de plusieurs calculateurs implique d’utiliser des moyens d’echanges de donnees entre ces derniers. Cela passe par des couplages forts. Ces travaux de these ont permis de mettre en avant l’interet des architectures heterogenes paralleles pour le portage des algorithmes SLAM. Les architectures heterogenes a base de FPGA peuvent particulierement devenir des candidats potentiels pour porter des algorithmes complexes traitant des donnees massives.