Navigation d’un robot mobile par cycles – limites et logique floue

Autonomie du mouvement et autonomie décisionnelle

L’autonomie du mouvement passe par la détermination des déplacements, de manière planifiée et réactive, et par la commande des déplacements. Si les méthodes mises en jeu sont fortement dépendantes des modèles cinématiques et dynamique des engins considérés, des méthodes génériques commencent à apparaître, surtout pour la planification de trajectoire et la commande référencée sur des éléments de l’environnement. Dans ce contexte, la taille de l’environnement considéré nous amènera plus particulièrement à nous intéresser à l’intégration de méthodes locales de gestion des mouvements avec des méthodes plus globales, qui considèrent l’ensemble des informations disponibles sur l’environnement et la mission à réaliser. Ces derniers aspects relèvent surtout de l’autonomie décisionnelle : il s’agit de déterminer les modalités de déplacement à adopter et les informations à acquérir.
Les systèmes automatiques sont entièrement prévisibles, du moment que leur état interne est connu, alors que les systèmes autonomes ne le sont pas, puisqu’ils sont capables de prendre eux-mêmes des décisions en fonction de critères qui peuvent échapper à l’observateur. L’autonomie implique la liberté de contrôle. Un système autonome prend ses décisions lui-même, il n’est pas contrôlé par un agent externe. La prise de décision implique une capacité à évaluer des alternatives en fonction d’un état courant et de l’expérience acquise par le passé [Arn 00].
Posée dans le contexte d’environnements larges, éventuellement dynamiques, enrichie par la considération de systèmes multi-robots pas nécessairement homogènes, et de contraintes de communication et de gestion des ressources, cette problématique est encore très ouverte. La possibilité d’interactions avec des opérateurs, distants ou non, doit aussi être considérée à différents niveaux au sein des robots. Ces problèmes d’autonomie ajustable passent notamment par le développement de concepts d’organisation des processus décisionnels (architecture de contrôle).

Autonomie envisageable pour les robots actuels

Il ne paraît pas suffisant de viser le développement d’un ensemble de fonctionnalités indépendantes, sous forme de comportements ou de modules, mais un ensemble cohérent où toutes les fonctionnalités puissent être mise en oeuvre sur des démonstrateurs dans une même unité de lieu et de temps. La phase d’étude des missions a permis d’extraire des tâches “robotisables” que l’on peut décomposer en comportements sensorimoteurs ou en fonctions de surveillance. Les premiers se distinguent des suivants par la présence d’actions motrices. Ces éléments sont listés ci-après [Dal 03]:
 faire un déplacement dans une direction et selon une distance données ;
 se diriger vers un amer visuel (désigné au robot par un opérateur humain) ;
 suivre un guide visuel au sol (bord de mur, de trottoir, d’accotement, couloir) ;
 s’orienter dans une direction donnée ;
 contourner un obstacle ;
 explorer une zone délimitée ;
 porter ou déposer une charge ;
 collecter un objet ;
 se servir d’un outil spécifique ;
 utiliser des armes non létales ;

Environnement dynamique et incertain

Notion d’environnement dynamique

Un environnement est dit dynamique s’il comporte des obstacles susceptibles de changer au cours du temps. Soit le cas des obstacles qui se déplacent (un piéton, un véhicule, …), ou ceux qui changent de forme ou de ceux qui apparaître/disparaître (une porte coulissante semble « disparaître » dans le mur quand elle s’ouvre).

Notion d’incertitude

Une information est incertaine, si elle est bruitée (mauvaises conditions de mesures), incomplète (obstruction d’un capteur ou portée limitée, absence d’informations sur l’évolution d’un objet ou d’un phénomène) ou imprécise (les glissements des roues par rapport au sol sont observables mais rarement mesurables avec précision).

Problématiques de la robotique mobile

La robotique mobile cherche depuis des années à rendre une machine mobile autonome face à son environnement pour qu’elle puisse sans intervention humaine accomplir les missions qui lui sont confiées. Le spectre des missions que les roboticiens veulent voir accomplir par leurs machines est immense : exploration en terrain inconnu, manipulation d’objets, assistance aux personnes handicapées, transport automatisé, etc [Bon 03].
On distingue sans trop d’ambiguïté un certain nombre de problèmes en robotique mobile. En plus de pouvoir percevoir globalement son environnement, un robot doit souvent être capable d’identifier des objets, de reconnaître des personnes, de lire des indications, et même de repérer des symboles graphiques. Ces opérations sont effectuées en analysant les perceptions acquises par les capteurs.
Enfin, une autre capacité robotique tout aussi importante que celles énumérées précédemment, est la capacité pour un robot de prendre lui-même ses propres décisions nécessaires pour réaliser et coordonner des missions complexes. Cette capacité est d’une grande importance puisque, pour beaucoup de tâches robotiques, il peut exister de nombreuses façons de les réaliser. Par un raisonnement, le robot doit alors sélectionner les meilleures actions à effectuer pour réussir adéquatement sa mission [Bea 06].
Bien évidemment, l’aspect matériel, qui consiste à choisir et dimensionner aussi bien la structure mécanique du système que sa motorisation, son alimentation et l’architecture informatique de son système de contrôle-commande apparaît comme le premier point à traiter. Le choix de la structure est souvent effectué parmi un panel de solutions connues et pour lesquelles on a déjà résolu les problèmes de modélisation, planification et commande.
Le choix des actionneurs et de leur alimentation est généralement assez traditionnel. La plupart des robots mobiles sont ainsi actionnés par des moteurs électriques à courant continu, alimentés par des convertisseurs de puissance fonctionnant sur batterie. De la même façon, les architectures de contrôle-commande des robots mobiles ne sont pas différentes de celles des systèmes automatiques ou robotiques plus classiques. On y distingue cependant, dans le cas général, deux niveaux de spécialisation, propres aux systèmes autonomes :
une couche décisionnelle, qui a en charge la planification et la gestion (séquentielle, temporelle) des évènements et une couche fonctionnelle, chargée de la génération en temps réel des commandes des actionneurs [Bay 08].
Au fil des ans, plusieurs solutions ont été proposées afin de donner aux robots la capacité de coordonner leurs missions. L’une d’entre elles est l’utilisation d’outils de planification et navigation dans le domaine de l’intelligence artificielle [Bea 06].
Afin de faire fonctionner un robot mobile, plusieurs modules logiciels sont mis à contribution. Ces modules peuvent servir à interpréter les données perçues par les capteurs afin d’y extraire des informations ou à traiter des commandes de haut niveau et générer d’autres commandes à un niveau inférieur. Les modules les plus fréquemment utilisés sont les modules de localisation, de navigation, de vision, d’audio et de séquencement d’activités du robot.
Un robot mobile est commandé par une boucle de contrôle, cela est illustré à la figure II.4. De façon itérative, celle boucle fait une lecture des données reçues par les capteurs, les interprète, calcule les commandes motrices et les envoie aux actionneurs. Typiquement, cette boucle est exécutée environ dix (10) fois par seconde; la fréquence peut varier selon les types de capteurs et d’actionneurs utilisés. La boucle de contrôle n’est pas unique; selon l’architecture utilisée, elle peut être décomposée en plusieurs sous boucles de contrôle agencées de manières différentes [Bea 06].

Architectures de contrôle

Un robot est donc composé d’un ensemble de modules, chacun étant responsable d’une ou plusieurs capacités. Un des premiers défis à résoudre est de déterminer comment relier efficacement les différents modules. Pour ce faire, il faut élaborer une architecture de contrôle qui dictera les responsabilités de chacun des modules et comment les informations circuleront entre ces derniers.
Depuis les débuts de la robotique, beaucoup d’architectures ont été proposées.
Elles peuvent être généralement classées en trois grandes catégories : délibérative, comportementale et hybride.
La définition des différents types d’architecture s’est faite au fil du temps, et s’est faite grâce à l’analyse des points faibles de chaque type d’architecture [Ayc 98].
La classification des architectures de contrôle repose sur la stratégie utilisée pour contrôler le système et pour atteindre ses objectifs :
 L’application directe des techniques d’intelligence artificielle telles que la planification dans l’école cognitive ;
 L’utilisation des comportements réactifs dans l’école réactive ;
 La centralisation de contrôle du groupe dans un superviseur externe ou la distribution.

Architectures de contrôle cognitives

Dans une architecture de contrôle cognitive, le robot cherche tout d’abord à modéliser les connaissances et les méthodes d’inférence associées permettant d’élaborer les actions que le robot doit entreprendre. Le robot commence par traiter les données recueillies par ses capteurs. Ensuite, il identifie les objets qui sont dans son environnement proche. Puis il construit une représentation de la scène dans son ensemble, et l’utilise pour générer un plan.
Après quoi, il calcule au mieux une séquence de commandes vers les effecteurs pour exécuter le plan prévu.

Architectures de contrôle réactives

Les architectures réactives ont pour but de concevoir et de réaliser un robot, capable d’apporter une réponse immédiate à toute nouvelle modification de l’environnement le concernant. Ces approches sont initialement fondées sur l’étude de l’interaction de l’animal avec son environnement naturel (l’éthologie) de manière à essayer de comprendre les mécanismes mis en oeuvre et de les reproduire. Elles sont fondées sur le fait que lorsqu’un être humain évolue dans un environnement, il ne passe pas son temps à modéliser son environnement, et à planifier ses actions, mais qu’au contraire il réagit à de simples stimuli qui lui permettent de se déplacer vers son but tout en faisant face aux obstacles.
Ainsi, contrairement aux systèmes hiérarchiques, le comportement global du robot apparaît comme le résultant de plusieurs comportements actifs simultanément. Dans ce type d’architectures il n’y a pas de phase de planification ou de modélisation de l’environnement [Ayc 98].

Les architectures de contrôle comportemental réactif

Pour l’élaboration d’architecture de contrôle réactif de plus en plus complexe, [Bro 86]) propose de décomposer le comportement global du robot en un ensemble d’entrées élémentaires. Cette décomposition a comme principaux objectifs d’avoir une construction aisée de l’architecture de contrôle ainsi qu’une testabilité facile des comportements élémentaires. Ceci est rendu possible en isolant les comportements qui cohabitent dans une même structure de contrôle, impose l’adaptation de mécanismes approprié de coordination entre comportements.
Les architectures de contrôle réactives permettent d’avoir une réponse plus rapide grâce à un lien direct capteurs-actionneurs. Disposer des comportements élémentaires dans le cas des approches comportementales permet de les tester individuellement jusqu’à ce qu’ils soient adaptés à leurs taches. La mise à jour se fait alors simplement en les ajoutant aux comportements déjà existe. [Ark 98], [Ado 05] ont comparé les caractéristiques des deux types architectures de contrôle. La Figure II.11 détermine la comparaison entre les deux architectures selon les degrés d’intelligences.

Architectures Hybrides

Les approches cognitives et réactives sont diamétralement opposées. Cependant, chacune présente des caractéristiques intéressantes. Pour cela, les chercheurs ont essayé de les combiner en mettant au point des architectures hybrides permettant notamment d’allier des capacités de raisonnement et de décision de haut niveau, s’appuyant sur des représentations abstraites des connaissances, avec des comportements réactifs garantissant robustesse et flexibilité. En effet, l’exécution de plans est basée sur un contrôle réactif (ce que détectent les capteurs permet de réagir immédiatement en cas de nécessité), alors que la formulation de plan(s) est assurée par un système hiérarchique pouvant reposer sur un modèle de l’environnement et des obstacles connus [Ayc 98].
Les développements les plus récents convergent vers l’utilisation d’architectures à deux ou trois niveaux. Dans ce type d’architecture, les niveaux bas sont consacrés à un ensemble de comportements sensorimoteurs et à leur mécanisme séquenceur, tandis que le niveau le plus élevé est chargé de la planification des enchaînements de comportements et le niveau intermédiaire, responsable de l’activation des comportements, est basé sur une approche appelée séquencement conditionnel. Ce niveau utilise les plans établis par le niveau supérieur.
Ces plans sont considérés comme des ressources (ou des conseils) et non comme des ordres par le séquenceur. La remise en question d’un plan fait suite à l’échec d’une action détectée par des routines de supervision implantées au dessus des comportements.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport-gratuit.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Dédicace
Remerciements
Résumé
Table des matières
Listes des figures 
Liste des tableaux
Chapitre I : Introduction Générale
I.1. Introduction
I.2. Contexte et problématique
I.3. Objectifs et contributions
I.4. Structure de la thèse
Chapitre II : Généralité sur la robotique mobile
II.1. Introduction
II.2 Concepts sur la robotique mobile
II.2.1 Définition d’un robot mobile
II.2.2 Pourquoi la robotique mobile ?
II.2.3 Architecture des robots mobiles
II.2.4 Types de plates formes mobiles
II.2.4.1 Plates forme uni-cycle
II.2.4.2 Plates formes holonome
II.2.4.3 Plates formes non-holonomes
II.2.4.4 Robot omnidirectionnel
II.3 Les nouvelles approches de la robotique mobile
II.4 L’autonomie d’un robot
II.4.1 Autonomie du mouvement et autonomie décisionnelle
II.4.2 Autonomie envisageable pour les robots actuels
II.5 Environnement dynamique et incertain
II.5.1 Notion d’environnement dynamique
II.5.2 Notion d’incertitude
II.6. Problématiques de la robotique mobile
II.7. Architectures de contrôle
II.7.1 Architectures de contrôle cognitives
II.7.2 Architectures de contrôle réactives
II.7.3 Les architectures de contrôle comportemental réactif
II.7.4 Architectures Hybrides
II.8 Conclusion
Chapitre III : Navigation et évitement d’obstacles réactifs
III.I Introduction
III.2 Navigation
III.3 Types de navigation
III.3.1 Navigation réactive
III.3.1.1. Approche d’un objet
III.3.1.2. Guidage
III.3.1.3. Action associée à un lieu
III.3.2 Navigation par carte
III.3.2.1. Navigation topologique
III.3.2.2. Navigation métrique
III.4. Méthodes de navigation
III.4.1. Espace des configurations
III.4.2. Décomposition en cellule
III.4.3. Roadmaps
III.4.4. Graphe de visibilité
III.4.5. Diagramme de voronoï
III.4.6. Méthode du potentiel
III.4.7. Navigation par L’algorithme fil d’Ariane
III.4.8. Méthode on-line
III.5 Méthode d’évitement d’obstacles
III.5.1 La méthode Vector Field Histogram
III.5.2 Méthode de la fenêtre dynamique
III.5.3. Méthode des cycles-limites
III.6. Exemple de navigation et d’évitement d’obstacles par la logique floue hybride
III.6.1. Résultats de navigation par la logique floue
III.6.2. Résultats de navigation par la logique floue et la recherche Taboue
III.6.3. Résultats de navigation par la logique floue et les colonies de fourmis
III.7. Conclusion
Chapitre IV : Navigation d’un robot mobile par cycles – limites et logique floue
IV.1. Introduction
IV.2. Déscription de l’architecture de contrôle
IV.2.1. Description du système robotique
IV.2.2. Structure de l’architecture de contrôle proposée
IV.2.2.1. Module de perception
IV.2.2.2. Module de décision
IV.2.2.3. Module d’action
IV.3 La méthode d’évitement d’obstacle : Cycles-Limites
IV.3.1. Configuration du robot pendant l’évitement d’obstacles
IV.4. Simulation et Résultats de navigation en utilisant la méthode des cycles-limites
IV.5. Solution proposée par la logique floue
V.6. Simulations et Résultats par l’hybridation des cycles-limites et la logique floue
IV.7. Conclusion
Chapitre V : La navigation autonome d’un groupe de robots mobiles ThymioII
V.1. Introduction
V.2. Présentation du robot Thymio II
V.2.1.Capteurs et actionneurs
V.2.2. Interactivité
V.3. Environnement de Programmation Aseba
V.4. Approche de navigation proposée
V.4.1. Module d’évitement d’obstacles
V.4.2. Module d’agrégation
V.5. Expérimentations et résultats
V.6. Conclusion
Conclusion Générale
Annexes
Références Bibliographique

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *