Initiation à la recherche 2020

Cours semestre 5 de la spécialité robotique autonome


Luc Jaulin



Lab-STICC UBO GDR MACS GDR Robotique ENSTA Bretagne DGA ROBEX Sperob SAGIP




























Sujets



Kevin Affraix : les preuves de non-existence d'un chemin

J'aimerais travailler sur les preuves de non-existence d'un chemin pour la planification de parcours.
Cela complètera assez bien mes autres projets en robotique où je travaille principalement sur la génération de trajectoires (temps réel ou planification de mission). Pour l'instant, je n'ai trouvé que des articles dont le contexte serait une planification de mission, et je ne sais pas encore s'ils pourraient être applicables en temps réel. Ce qui serait pour moi l'objectif final de cette recherche, serai de déterminer si ce calcul peut être rendu assez léger pour être intégré à un algorithme de décision temps réel (du moins à une fréquence raisonnable) pour pouvoir l'appliquer à un robot d'exploration qui rencontrerai un obstacle non répertorié sur la topographie de la zone. L'idée serait alors que le robot puisse refaire un calcul lorsque sa carte interne a été profondément modifiée, et qu'il puisse lancer une procédure de rapatriement autonome s'il juge que le nouvel obstacle compromet la mission. Le travail portera alors sur deux axes importants : la fiabilité de la preuve et la complexité de calcul.


Agathe Archet : Decision-Making for the Autonomous Navigation of Sailboat

L'objectif s'inscrit directement dans la continuité de ce qui a été fait à Plymouth avec Mr. Jian Wan (avec du Q-Learning) : proposer une solution pour la navigation autonome d'un voilier dans un environnement incertain et variable grâce au Deep Q-Learning. L'article se découpe en trois grandes phases :
- Discrétisation de l'environnement du bateau, avec des obstacles statiques. Contrairement à la première approche, le vent est ici dynamique (dans son orientation).
- Mise en place de l'algorithme de Deep-Reinfocement Learning : principe du Q-Learning associé à un réseau de neurones à déterminer parmi plusieurs (récurrents, convolutifs ...). On pourra envisager une fonction de récompense hybride et non linéaire pour aborder le vent dynamique.
- Simulation en Python et ajout de champs de potentiels artificiels.


Colin Baumgard: Conduite d’une cohorte de sous-marins suiveurs

Cet article s’intéresse à la localisation et la navigation de robots sous-marins utilisés en chiens de garde d’un véhicule de surface. Pour cela nous utiliserons des méthodes ensemb- listes fournies par la libraire CODAC développée à l’ENSTA Bretagne.


Jules Berhault : Navigation par modèle directe et commande prédictive

Une famille de méthodes de navigation que nous considérons est celle par modèle direct qui présente l’avantage de se baser sur un élément qui est toujours défini pour un robot mobile : son modèle cinématique directe.
L’ensemble des trajectoires issues de ce modèle direct peut être projeté dans une représentation de l’environnement d’évolution du robot.
Parmi cet ensemble, il est possible de choisir la trajectoire optimale, suivant des critères définis, qui permet au robot de rallier une position donnée tout en évitant les obstacles. Une méthode directe, par lignes de fuite, est appliquée à un robot de type unicycle. L’analyse des résultats de simulation met en évidence la simplicité de mise en œuvre pour la détermination de trajectoires et évitement d’obstacles ; mais elle pose un problème de formalisation puisque l’on se place dans un espace discret pour l’obtention des lignes de fuite.
Je m'orienterais alors vers un outil de l’automatique, la commande prédictive. Le problème de navigation se pose alors sous la forme d’un problème d’optimisation sous contraintes. Les éléments de la commande prédictive, à savoir la fonction coût, les commandes et les contraintes, doivent être définis et spécifiés dans un cadre robotique.


Quentin Brateau : Simulation en Gazebo des câbles ROV

Suivi par Auguste Bourgois.
Simulation in the field of robotics is a powerful tool. Indeed, it allows to easily and quickly test the robot in different conditions and to have a reproducibility of the results. Then it let us be able to create situations that would be difficult to find in reality, in order to make sure of the robot's behavior. It should be noticed that the simulation of robots does not replace tests in real conditions, but it remains practical during the development phase. However, the simulation of robots in the maritime environment is a field that still has shortcomings, especially when we want to simulate the tethers of submarine robots. This scientific paper presents a method to model this rigid tether in order to build a simulation environment for autonomous underwater robots.


Mamadou Dembele : identification des coefficients du régulateur PID

Suivi par Yoann Sola.
Le sujet est lié au cours de commande robuste. Il s'agit d'étudier quelques-unes des techniques utilisées pour l'identification des coefficients d'un PID.
Une technique utilisant l'intelligence artificielle sera développée afin de trouver ces coefficients du contrôleur.


Alexandre Evain : cartographie/localisation d'un robot en temps réel

Le sujet consiste à l'obtention d'une vue d'ensemble globale de l'intérieur d'un bâtiment, à partir des mesures recueillies par un robot avec différents capteurs (odomètres, LiDar, etc...).
L'un des principaux défis de la cartographie robotique est lié à la nature du bruit de mesure. Les problèmes de modélisation, tels que la cartographie robotique, sont généralement relativement faciles à résoudre si le bruit des différentes mesures est statistiquement indépendant. Malheureusement, dans la cartographie robotique, les erreurs de mesure dépendent de la statistique. En effet, les erreurs de contrôle s'accumulent au fil du temps, et elles affectent la façon dont les mesures des futurs capteurs sont interprétées.
Le sujet sera donc centré sur les différents algorithmes de cartographie robotique dans le cadre d'un environnement intérieur, et de la façon dont ils prennent en compte ces erreurs systématiques de mesure afin de réussir à construire des cartes


Romane Fléchard : Natural Language Processing

Le NLP (Natural Language Processing) est une technologie d’intelligence artificielle visant à permettre aux ordinateurs de comprendre le langage humain, par exemple pour des applications telles que les assistants virtuels ou les dialogues homme-machine. J'ai décidé de travailler sur la recherche de solutions techniques permettant de représenter les mots du langage naturel. J'ai prévu de me concentrer sur deux solutions particulièrement utilisées en IA : les réseaux sémantiques (semantic networks) et le word embedding.
- Un réseau sémantique permet la représentation d’un ensemble de connaissances sous la forme d’un graphe dont les noeuds sont des concepts. Cette représentation permet de définir une notion de proximité topologique entre ces derniers.
- Le word embedding est une méthode d'apprentissage d'une représentation de mots. Un des algorithmes les plus utilisés est l'algorithme word2vec, que j'essaierai d'implémenter. Il repose sur des réseaux de neurones à deux couches et cherche à apprendre les représentations vectorielles des mots composant un texte, de telle sorte que les mots qui partagent des contextes similaires soient représentés par des vecteurs numériques proches.

Hamid Hacene : An overview of Reinforcement Learning

Reinforcement learning techniques are particularly useful in the field of artificial intelligence when it is difficult to predict the right decisions to be made. Reinforcement learning allows an agent to learn autonomously a behavior that has never been previously defined by humans. The agent discovers the envi- ronment and the different consequences of his actions through interactions with it: he learns from his own experience to build the optimal policy by trial-and-error and continuously interact- ing with the environment. This paper reviews the different aspects of reinforcement learn- ing and discusses its basic framework : the optimal policies used in RL (model free policies and model based policies). At last but not the least, this paper briefly describes the Neuro Evolution of Augmenting Topology (NEAT) algorithm, one of the most suc- cessful algorithms for solving traditional reinforcement learning tasks.


Maha Halimi : Reconnaissance de forme

Il existe de nombreux types de formes et dont il s'avère très important de pouvoir les différencier. Une discipline à la fois ancienne de par son histoire, et très jeune de par ses multiples évolutions constatées au cours ces dernières années, la Reconnaissance de formes a pour but de concevoir des outils automatiques informatiques capables de reconnaître des formes.
Dans ce cadre, après avoir consulté un certain nombre de documents bibliographiques sur la thématique choisie, j'ai pu appréhender les notions de la Reconnaissance de formes. Cette dernière a longtemps été considérée comme une composante du domaine de l’intelligence artificielle, donc de la production de robots possédant la capacité d’apprendre, de raisonner, mais aussi d’interagir avec le monde extérieur, d'où reconnaître les objets.
Dans cet article, après avoir étudier certaines méthodes de Reconnaissance de formes, je vais me focaliser sur la méthode de réseau de neurones pour classifier les images. Tout d'abord, à l'aide de gazebo je vais construire un robot autonome avec un lidar 2D et une caméra par laquelle je vais récupérer quelques images détectées par le robot et qui contiennent plusieurs formes. Ensuite, à partir des images récupérées (qui seront mon dataset) et après avoir appliqué les traitements nécessaires, je créerai un réseau de neurones à convolution profonde pour classer ces différentes images. J'entraînerai le modèle en utilisant un jeu de données d'entraînement avec un nombre de classes principales. A la fin je vais utiliser ce modèle pré-entraîné pour prédire mes images ou mon ensemble d'images personnalisées.





Mourtaza Kassamaly : Recherche de chemin optimal pour l’exploration de point d’intérêt mobiles

L’utilisation d’un robot pour inspecter une installation peut se traduire par un problème du voyageur de commerce qui consiste à trouver des algorithmes de recherche de chemin optimaux pour visiter des point d’intérêts. Que faire quand les points d’intérêts ne sont pas fixes ? On peut penser à l’inspection de sous-ensembles mobiles d’une installation et il convient de se demander si les algorithmes répondant au problème du voyageur de commerce classique sont adaptables à des problèmes dynamiques où les points d’intérêts à visiter sont mobiles, et sinon de trouver des stratégies pour rapidement retrouver un chemin sans perdre en performances ni en temps de calcul.


Corentin Lemoine : Modeling and State Estimation by Neural Networks

Abstract—Neural networks can be very efficient to approximate nonlinear functions with a large number of parameters. We may need to approximate such functions to model and estimate the state of a robot in its environment. Machine learning of neural networks allows to take into account all the factors influencing the robot’s behavior, without making assumptions on the shape of these factors.


Paul Antoine Le Tolguenec : Indoor Point-to-Point Navigation with DeepReinforcement Learning and Ultra-wideband

Les problèmes de robotiques indoor 2D sont des problèmes complexes de par la complexité des différents environnements.Les méthodes conventionnelles sont réalisées en 2 temps:
- Le SLAM (Simultaneous Localisation and Mapping) dont l’objectif est la localisa- tion du robot dans l’environnement.
- Loi de commande en fonction de la localisation du robot dans l’environnement et du comportement escompté une loi est implémentée.
De nombreux algorithmes utilisant cette structure ont été implémentés et fonctionnent. Mais il est difficile de conclure sur la robustesse de ces algorithmes. En effet, certains arrivent à se généraliser dans certains environnements mais pas tous.
Depuis 2013, le Q. Learning a pris une nouvelle dimension avec le développement du Deep Q learning. Le Q learning est le fait de discrétiser un environnement en un ensemble d’États et d’associer pour chaque état, une récompense en fonction de l’action choisie. Le Q-learning est une technique d’apprentissage par renforcement. Cette technique ne nécessite aucun modèle initial de l’environnement.
La lettre "Q" désigne la fonction qui mesure la qualité d’une action exécutée dans un état donné du système. De façon à "apprendre"la qualité des actions en fonction de l’état du système, on utilise l’équation de Bellman qui traduit les processus de décision markoviens. Cette technique permet d’obtenir de bons résultats mais le problème et que ce technique ne peut pas être généralisée.
Pour chaque environnement l’opérateur doit réapprendre "l’environnement".C’est pourquoi les chercheurs ont décidé de créer le deep-Q learning ou aussi reinforcement learning. Cette méthode permet de créer des modèles qui vont pouvoir évoluer dans différents environnements.
Un réseau de neurones prend en entrée les données capteurs par exemple et prédit la qualité des différentes actions qu’il peut réaliser en fonction de l’état dans lequel il se trouve.L’un des problèmes de ce type de méthode est que la policy est discrète : pour chaque action l’opérateur/ système peut réaliser un nombre fini d’actions.
Or en robotique nous aimons implémenter une consigne en vitesse linéaire et cap ou autres valeurs continue.Dans cet article les chercheurs ont implémenté une méthode d’apprentissage structurée en deux blocs
- Actor Le réseau qui en fonction de l’état du robot ressort la consigne en vitesse linéaire et angulaire qui est continue grâce à une fonction sigmoid et tanh.
- Critic Le réseau qui en fonction de l’état du sytème et de l’action réalisée par l’actor ressort la qualité de l’action.
Bien sûr, mise à jour de la qualité d’une action est effectué grâce à l’équation de Bellman comme pour le Q-learning.Cette méthode permet d’implémenter une consigne plus proche des méthodes conventionnelles.Pour tester cette méthode des chercheurs ont utilisé une simulation et un robot réel.
Le robot possède un Lidar et peu se localiser aussi grâce au système ultrawideband qui permet de se localiser grâce à des balises situées dans l’environnement.Le robot connaît sa distance par rapport à chaque balise fixe et donc se localise par triangularisation.La méthode de deep reinforcement learning est comparée à la méthode DWA.


Paul Pineau : navigation autonome d'un robot par algorithme génétique.

Dans un lac un robot doit souvent effectuer un chemin entre différents waypoints. Utiliser une machine a état fini comporte beaucoup d’avantages notamment sur la complexité algorithmique du contrôleur qui en découle. Cependant trouver ce contrôleur peut être compliqué. Dans ce sujet, il s’agit de trouver la FSM optimale pour la trajectoire de l’AUV par le biais d’un algorithme génétique.


Julien Piranda : robotique en essaim

Inspiré des comportements complexes observés dans les systèmes d'essaims naturels (les vols d’oiseaux, les insectes sociaux et les animaux vivants en ordre), l'intelligence des essaims est un nouveau domaine qui vise à construire des systèmes décentralisés entièrement distribués dans lesquels la fonctionnalité globale du système émerge de l'interaction des agents individuels entre eux et avec leur environnement.
La robotique des essaims (un sous-domaine très particulier de la robotique collective) étudie comment coordonner de grands groupes de robots relativement simples par l'utilisation de règles locales.
Dans ce projet, nous nous intéresseront à faire évoluer un essaim de robots autour de 2 points A et B.


Gwendal Priser : navigation autonome sans planification préalable

Le robots est placé dans un environnement inconnu possédant une cible, le robot doit atteindre cette cible.
Les capteurs utilisés sont une caméra, un LIDAR (camera RGB + lidar 2D -> algorithme de fusion de données -> nuage de point 3D) et une boussole.
Le modèle appelé politique ou policy prend en entrée le nuage de point ainsi que l'orientation du robot et sort la commande.
Ce modèle non linéaire très complexe est modélisé par un réseau de neurone profond (DNN).
L'algorithme utilisé pour entrainer le DNN est le GA3C (GPU Asynchronous Advantage Actor-Critic) : N agents sont mis en concurrence, partagent leurs informations (états, récompenses obtenues) et font de l'exploration. Ces données sont injectées dans un GPU qui va ajuster les poids theta du DNN via une backpropagation utilisant l'algorithme de descente de gradient.
L'innovation contenue dans l'article repose sur une méthode de simulation légère et optimisée. Ce qui permet de multiplier le nombre de trajectoires effectuées par le robot, et donc le nombre d'itérations de la descente de gradient, ainsi on converge vers la politique ou policy optimale.
Les résultats sont très bons dans le monde réel (comme le suggère https://youtu.be/KyA2uTIQfxw), cela est remarquable
car il n'y pas de pré-traitement du nuage de points avant l'injection dans le DNN. Des compagnies de navigation autonome comme Tesla utilisent aussi des méthodes de renforcement, ont plein d'algorithmes de pré-traitement (segmentation, classification ...), cela est couteux en temps de calculs (https://youtu.be/zRnSmw1i_DQ).


Robin Sanchez : Calibrating an eCompass in the Presence of Hard-Soft-Iron Interference

L’objectif de ce sujet est de tester différentes méthodes de calibration d’un magnétomètre et de les comparer.
Les méthodes seront dans un premier temps évaluées théoriquement puis à l’aide de données réelles (en provenance de centrales inertielle et/ou d’un magnétomètre plus précis).
Une des méthode de calibration sera l’usage de la méthode du passage d’un ellipsoïde à une sphère au moyen de l’analyse par intervalles au lieu des moindres-carrés.
L’analyse par intervalles permettant de garantir les résultats, nous pourrons vérifier si les autres méthodes donnent des résultats compatibles ou non.
Nous nous intéresserons aussi à la qualité de la calibration en fonction du nombre de points et de la dispersion de ceux-ci.


Bertrand Turck : SLAM monoculaire

Le sujet fait suite au challenge essaim de drones basée sur une solution de type ORB-SLAM2, seule solution dont toutes les dépendances sont à jour. Pour la piste d'amélioration, il s'agir de travailler sur l'échelle du nuage de points. En effet, les algorithmes existants créent des environnements sans notions d'échelles, et suivant l'initialisation, le facteur d'échelle est toujours différent.


Quentin Vintras : Calcul de la trajectoire d’un AUV avec le courant

Les courants marins sont cycliques, continus et réguliers. Ces courants peuvent atteindre des vitesses de l’ordre de 3m/s dans certaines zones. Leur force est donc parfois supérieure à la vitesse maximale des AUV. Il est primordial de prendre en compte leur effet sur le contrôle d’un AUV, tant pour diminuer les temps de trajets que dans le but d’économiser de l’énergie. Des méthodes permettant d’optimiser le chemin entre deux points en présence de courants existent. Dans cette étude, il s’agit d’étudier les modélisations des courants, leur action sur les AUV et ensuite d’étudier puis d’adapter les algorithmes de planification existants afin de suivre des cycles en utilisant le moins d’énergie possible. Enfin il conviendra d'élargir le sujet à des AUV pouvant dériver plusieurs années en parcourant de grandes distances dans les grands courants océaniques et de proposer des méthodes de planification en temps réel.







Articles produits


All papers that have been written this year are given here :