Contribution Des Outils de - univ-oran1.dzFATIMA (Matre de Conférences à l‘Université de...
Transcript of Contribution Des Outils de - univ-oran1.dzFATIMA (Matre de Conférences à l‘Université de...
Département d’Informatique
THESE
Présentée par
Boufera Fatma
Pour obtenir
Le Diplôme de Doctorat des Sciences
Spécialité : Informatique
Contribution Des Outils de
l’Intelligence Artificielle dans la
Robotique Mobile
Soutenue le 19 Novembre 2014 devant le jury composé de :
Président
Pr. Belalem Ghalem
Professeur à l’Université d’Oran
Rapporteur Pr. Khelfi Mohamed Fayçal Professeur à l’Université d’Oran
Co-rapporteur Dr. Debbat Fatima MCA à l’Université de Mascara
Examinateur Pr. Benyettou Mohamed Professeur à l’USTO-MB
Examinateur Dr. El Berrichi Zakaria MCA à l’Université de Sidi-Bel-Abbes
Examinateur Dr. Hamdadou Djamila MCA à l’Université d’Oran
i
Dédicace
A la mémoire de mes parents
A ma famille Boufera & Benyakhou
Boufera Fatma
ii
Remerciements
Mes remerciements vont tout d'abord à Dieu pour m'avoir donné la volonté, la
patience et le courage de réaliser ce modeste travail.
Je remercie Monsieur KHELFI Mohamed Fayçal (Professeur à l'Université
d'Oran), pour son encadrement, sa droiture et toute l'aide qu'il m'a apporté au
cours de cette thèse. Merci aussi de m'avoir fait confiance et m'avoir épaulé.
Je tiens aussi à exprimer ma profonde gratitude à mademoiselle DEBBAT
FATIMA (Maître de Conférences à l’Université de Mascara), pour le rôle
d'initiateur qu'elle a joué dans mes recherches, pour m'avoir permis d'enrichir
ma réflexion sur différents aspects de mes études, pour ses conseils et pour son
soutient constant tout au long de mon travail. Qu'elle trouve ici l'expression de
ma plus grande reconnaissance.
Je suis profondément reconnaissante à Monsieur BELALEM Ghalem
(Professeur à l’Université d’Oran), pour m'avoir fait l'honneur de présider le
jury de soutenance. Qu'il trouve ici l'expression de ma sincère gratitude.
Je tiens aussi à exprimer mes remerciements et mes sentiments les plus
respectueux à Monsieur BENYETTOU Mohamed (Professeur USTO-MB),
d'avoir accepté de juger ce travail.
Je remercie aussi Monsieur EL BERRICHI Zakaria (Maitre de conférences à
l’Université de Sidi-Bel-Abbes) d’avoir accepté d’être membre du jury.
Mes remerciements s’expriment ici à l'égard de Madame HAMDADOU
Djamila (Maître de Conférences à l’université d’Oran), pour l'intérêt qu'elle
manifeste à mon travail en ayant accepté d'être un membre du jury.
Mes remerciements ne seraient pas complets si je n'évoquais pas ici mon époux
MOHMED, mes enfants Lhadj Larbi, AbdNour, Saliha et a ma famille. Je les
remercie pour leur disponibilité et leur soutient constant et leur encouragements
constamment renouvelées.
Enfin je tiens à remercier aussi Monsieur LOUNIS ADOUANE et Monsieur
FRANCESCO MONDADA pour leur aide.
iii
Résumé La robotique mobile autonome vise plus spécifiquement à concevoir des
systèmes capables de se déplacer de façon autonome. Les applications directes
se situent notamment dans les domaines de l’automobile, de l’exploration
planétaire ou de la robotique de service par exemple.
La thématique abordée dans ce travail de thèse est la navigation autonome des
robots mobiles dans des environnement contraints et dynamiques. La navigation
dans ce type d’environnement impose le développement des systèmes
robotiques fiables et robustes.
Nos objectifs principaux visent à proposer, développer et expérimenter (robots
Thymio II) des architectures de contrôle autonomes basées sur des contrôleurs
flous pour des robots mobiles dans des environnements encombrés et incertains.
En d’autre termes, nous voulons que ces architectures puissent être flexiblement
adaptées et modifiables au fur et au mesure que la tâche à réaliser devient plus
en plus complexe.
Nous avons adopté dans ce contexte l’hybridation de la logique floue et
plusieurs outils de l’intelligence artificielle (la méthode des cycles limite,
recherche taboue et algorithmes de colonies de fourmis). Les résultats des
simulations et d’expérimentations prouvent les performances des approches
adoptées.
Mots clés : Robot Mobile, Navigation, Evitement d’obstacle, Méthode des
cycles-limites, Logique floue, Recherche taboue, ACO, Robot Thymio II.
Table des Matières
iv
Dédicace…………………………………………………………………………….. i
Remerciements………………………………………………………………………. ii
Résumé……………………………………………………………………………… iii
Table des matières…………………………………………………………………… iv
Listes des figures …………………………………………………………………… xii
Liste des tableaux……………………………………………………………………. xv
Chapitre I : Introduction Générale
I.1. Introduction …………………………………………………………………….. 01
I.2. Contexte et problématique………………………………………………………. 02
I.3. Objectifs et contributions ……………………………………………………….. 02
I.4. Structure de la thèse …………………………………………………………….. 04
Chapitre II : Généralité sur la robotique mobile
II.1. Introduction ……………………………………………………………………. 05
II.2 Concepts sur la robotique mobile……………………………………………….. 05
II.2.1 Définition d’un robot mobile ……………………………………………… 05
II.2.2 Pourquoi la robotique mobile ? ……………………………………………. 06
II.2.3 Architecture des robots mobiles …………………………………………. 07
II.2.4 Types de plates formes mobiles……………………………………………. 09
II.2.4.1 Plates forme uni-cycle …………………………………………………. 09
II.2.4.2 Plates formes holonome……………………………………………….. 09
II.2.4.3 Plates formes non-holonomes…………………………………………. 10
II.2.4.4 Robot omnidirectionnel………………………………………………… 10
II.3 Les nouvelles approches de la robotique mobile……………………………….. 11
II.4 L'autonomie d'un robot…………………………………………………………. 13
II.4.1 Autonomie du mouvement et autonomie décisionnelle……………………. 14
II.4.2 Autonomie envisageable pour les robots actuels……………………………. 14
II.5 Environnement dynamique et incertain…………………………………………. 15
II.5.1 Notion d’environnement dynamique……………………………………….. 15
II.5.2 Notion d’incertitude………………………………………………………… 15
II.6. Problématiques de la robotique mobile……………………………………….... 15
II.7. Architectures de contrôle ………………………………………………………. 17
II.7.1 Architectures de contrôle cognitives………………………………………... 17
II.7.2 Architectures de contrôle réactives…………………………………………. 18
II.7.3 Les architectures de contrôle comportemental réactif……………………… 19
II.7.4 Architectures Hybrides…………………………………………………….. 20
II.8 Conclusion ……………………………………………………………………… 21
Chapitre III : Navigation et évitement d’obstacles réactifs
III.I Introduction ……………………………………………………………………. 23
III.2 Navigation ……………………………………………………………………... 23
III.3 Types de navigation …………………………………………………………... 24
Table des Matières
v
III.3.1 Navigation réactive ……………………………………………………….. 25
III.3.1.1. Approche d’un objet ……………………………………………………….. 25
III.3.1.2. Guidage ……………………………………………………………… 25
III.3.1.3. Action associée à un lieu ………………………………………………….. 25
III.3.2 Navigation par carte ………………………………………………………. 25
III.3.2.1. Navigation topologique …………………………………………………….. 26
III.3.2.2. Navigation métrique …………………………………………………. 26
III.4. Méthodes de navigation ……………………………………………………… 27
III.4.1. Espace des configurations ………………………………………………. 27
III.4.2. Décomposition en cellule ………………………………………………. 28
III.4.3. Roadmaps ………………………………………………………………. 28
III.4.4. Graphe de visibilité ……………………………………………………. 29
III.4.5. Diagramme de voronoï …………………………………………………. 29
III.4.6. Méthode du potentiel …………………………………………………… 29
III.4.7. Navigation par L’algorithme fil d’Ariane………………………………….. 31
III.4.8. Méthode on-line ………………………………………………………… 32
III.5 Méthode d’évitement d’obstacles……………………………………………. 33
III.5.1 La méthode Vector Field Histogram…………………………………………… 33
III.5.2 Méthode de la fenêtre dynamique……………………………………… 34
III.5.3. Méthode des cycles-limites ……………………………………………… 35
III.6. Exemple de navigation et d’évitement d’obstacles par la logique floue
hybride………………………………………………………………………………. 36
III.6.1. Résultats de navigation par la logique floue……………………………. 40
III.6.2. Résultats de navigation par la logique floue et la recherche Taboue……. 41
III.6.3. Résultats de navigation par la logique floue et les colonies de fourmis….. 42
III.7. Conclusion …………………………………………………………………………… 43
Chapitre IV : Navigation d’un robot mobile par cycles - limites et logique floue
IV.1. Introduction…………………………………………………………………… 45
IV.2. Déscription de l’architecture de contrôle …………………………………….. 45
IV.2.1. Description du système robotique ………………………………………. 46
IV.2.2. Structure de l’architecture de contrôle proposée ………………………… 47
IV.2.2.1. Module de perception………………………………………………. 47
IV.2.2.2. Module de décision ………………………………………………… 47
IV.2.2.3. Module d’action …………………………………………………… 48
IV.3 La méthode d’évitement d’obstacle : Cycles-Limites………………………….. 49
IV.3.1. Configuration du robot pendant l’évitement d’obstacles………………… 51
IV.4. Simulation et Résultats de navigation en utilisant la méthode des cycles-
limites……………………………………………………………………………….. 53
Table des Matières
vi
IV.5. Solution proposée par la logique floue……………………………………….. 56
V.6. Simulations et Résultats par l’hybridation des cycles-limites et la logique floue 60
IV.7. Conclusion ……………………………………………………………………. 62
Chapitre V : La navigation autonome d’un groupe de robots mobiles ThymioII
V.1. Introduction ……………………………………………………………………. 63
V.2. Présentation du robot Thymio II ………………………………………………. 63
V.2.1.Capteurs et actionneurs ……………………………………………………. 63
V.2.2. Interactivité……………………………………………………………….. 64
V.3. Environnement de Programmation Aseba …………………………………… 65
V.4. Approche de navigation proposée………………………………………………. 67
V.4.1. Module d’évitement d’obstacles…………………………………………… 68
V.4.2. Module d’agrégation………………………………………………………. 74
V.5. Expérimentations et résultats…………………………………………………. 74
V.6. Conclusion……………………………………………………………………… 77
Conclusion Générale……………………………………………………………….. 78
Annexes………………………………………………………………………………. 82
Références Bibliographique………………………………………………………… 92
Liste des figures
xii
Chapitre I
Figure I.1. Les différents types de robot mobile ………………………………………. 1
Figure I.2. Méthodologie des travaux de recherches et contributions………………….. 3
Chapitre II
Figure II.1 Les interactions d’un robot avec son environnement………………………. 6
Figure II.2 Différents types de robots mobiles selon le champ d’application………….. 7
Figure II.3 : Structure d’un robot mobile………………………………………………. 8
Figure II.4. Exemple de plate forme uni-cycle ………………………………………… 9
Figure II.5. Exemple de plate-forme holonome ………………………………………. 10
Figure II.6. Exemple de plate forme non holonome………………………………….. 10
Figure II.7. Exemple de plate forme omnidirectionnelle ROMNI …………………….. 11
Figure II.8 Le Stanford Cart daté des années 1980……………………………………. 11
Figure II.9. Boucle de contrôle pour la commande d’un robot mobile……………….. 17
Figure II.10. Décomposition classique des architectures de contrôle cognitives………. 18
Figure II.11 Décomposition horizontale des architectures de contrôle réactive……….. 19
Figure II.12. Contrôle cognitif versus réactif ………………………………………….. 20
Figure II.13 Architecture de contrôle hybride………………………………………….. 21
Chapitre III
Figure III.1 Navigation d'un robot mobile……………………………………………... 23
Figure III.2 Schéma simplifié des tâches de la navigation autonome…………………. 24
Figure III.3. Action associé d’un lieu …………………………………………………. 26
Figure III.4. Navigation topologique ………………………………………………….. 27
Figure III.5. Exemples des décompositions en cellules……………………………….. 28
Figure III.6. Construction d’un graphe de Visibilité……………………………………. 29
Figure III.7. Deux exemples des méthodes utilisées pour créer un roadmap. ………… 30
Figure III.8. Décomposition approchée de l’espace libre……………………………… 30
Figure III.9. Combinaison de potentiels attractif et répulsif………………………….. 31
Figure III.10. Carte discrète de potentiels et descente de gradient……………………. 31
Figure III.11. Arbre des balises ………………………………………………………. 32
Figure III .12 Méthode on-line…………………………………………………………. 32
Figure III.13 Représentation du monde sous forme de grille d’occupation centrée sur
le robot………………………………………………………………………………….. 33
Figure III.14 Décomposition de la grille sous forme des secteurs……………………. 33
Figure III.15 Contrainte d'évitement d'obstacles pour la méthode de la fenêtre
dynamique………………………………………………………………………………. 34
Figure III.16 Choix d’une vitesse dans la fenêtre des vitesses admissibles sans
collision …………………………………………………………………………………. 35
Figure III.17 Principe d’évitement d’obstacles par la méthode des cycles-limites…….. 36
Figure III.18 Structure du système de navigation à base de la logique floue
hybride………………………………………………………………………………….. 37
Figure III.19 Représentation du vecteur solution……………………………………… 38
Figure III.20 Trajectoire du robot dans différents environnements …………………… 40
Figure III.21 Exemple de navigation 1 par la logique floue et la recherche Taboue…... 41
Liste des figures
xiii
Figure III.22 Exemple de navigation 2 par la logique floue et la recherche Taboue….. 42
Figure III.23 Exemple de navigation 1 par la logique floue et les colonies de
fourmis………………………………………………………………………………….. 42
Figure III.24 Exemple de navigation 2 par la logique floue et les colonies de fourmis.. 43
Chapitre IV
Figure IV.1 La configuration cartésienne du robot……………………………………. 46
Figure IV .2 Architecture de contrôle proposée………………………………………... 47
Figure IV.3 Trajectoire du robot dans un environnement sans obstacles par la
méthode on-line…………………………………………………………………………. 48
Figure IV.4 Le principe de la méthode des cycles-limites…………………………….. 50
Figure IV.5 Evitement d’obstacle de forme quelconque………………………………. 50
Figure IV.6 Les perceptions utilisées pour la navigation robot mobile ……………….. 51
Figure IV.7 Le sens d’évitement d’obstacles…………………………………………. 52
Figure IV.8 Environnement de simulation1(a1) et (b1)……………………………….. 53
Figure IV.9 ( a2) et (b2) Environnement2…………………………………………….. 54
Figure IV.10 (a3) et (b3) Environnement de simulation 3…………………………….. 55
Figure IV.11 Evitement d’obstacles avec oscillations………………………………….. 55
Figure IV.12 Le contrôleur flou pour la régulation de l’orientation du robot…………. 56
Figure IV.13 Représentation des sous ensembles flous de la distance…………………. 57
Figure IV.14 Représentation des sous ensembles flous de N………………………….. 57
Figure IV.15 Représentation des sous-ensembles flous de …………………………. 58
Figure IV.16 Représentation des sous-ensembles flous de normalisé………………. 58
Figure IV.17 Scénarion de navigation de l’environnement de simulation 1 sans
l’utilisation du controleur flou ………………………………………………………….. 60
Figure IV.18 Scénarion de navigation de l’environnement de simulation 1 aprés
l’utilisation du controleur flou …………………………………………………………. 61
Figure IV.19 Scénarion de navigation de l’environnement de simulation 2 sans
l’utilisation de controleur flou ………………………………………………………….. 61
Figure IV.20 Sénarion de navigation de l’environnement de simulation 2 aprés
l’utilisation de controleur flou………………………………………………………….. 62
Chapitre V
Figure V.1. Robot Thymio II…………………………………………………………… 63
Figure V.2. Configuration du robot Thymio II………………………………………… 64
Liste des figures
xiv
Figure V.3. Les LEDs colorées………………………………………………………… 65
Figure V.4. Environnement Aseba……………………………………………………… 65
Figure V.5. Aseba Studio pour Thymio II……………………………………………. 66
Figure V.6. Contrôleur de navigation pour le robot Thymio II…………………………. 67
Figure V.7. Configuration des capteurs de distance du robot Thymio II……………….. 68
Figure V.8. Représentation des sous ensembles flous de la distance…………………... 69
Figure V.9. Représentation des sous-ensembles flous de la sortie motor-target………. 69
Figure V. 10. Représentation des sous ensembles flou de la lumière réfléchie par le sol 74
Figure V.11. Environnement de Thymio II……………………………………………. 75
Figure V.12. Navigation et évitement d’obstacle dans un environment 1……………. 75
Figure V.13. Navigation et évitement d’obstacle dans un environment 2…………….. 76
Figure V.14. Navigation, évitement d’obstacle dans l’environment 3………………… 76
Figure V.15. Navigation et évitement d’obstacle dans l’environnement 4…………….. 76
Conclusion Générale
Figure.1. Résumé des contributions et travaux………………………………………... 80
Figure .2. Résumé des travaux futurs………………………………………………….. 81
Annexes
Figure A.1. Fonctions d'appartenance associées aux différents nombres flous
permettant de décrire la variable linguistique température……………………………… 83
Figure A.2. Architecture générale d'un contrôleur flou………………………………. 84
Figure B.1. Algorithme de la recherche taboue………………………………………… 87
Figure .B.2. Comportement collectif des fourmis……………………………………… 88
Figure B.3. Détermination du plus court chemin par une colonie de fourmis ……….. 90
Liste des Tableaux
xv
Chapitre IV
Tableau IV.1 Règles d’inférences………………………………………………………… 59
Tableau V.2 Déffuzyfication des variables floues………………………………………..
60
Chapitre V
Tableau V.1 Les huit situations d’évitement d’obstacles…………………………………. 70
Chapitre I
Introduction Générale
Chapitre I Introduction générale
1
I.1. Introduction
Un robot mobile autonome est une machine qui a besoin, pour sa mise en
œuvre, de spécialistes dans de nombreux domaines dont la mécanique,
l’automatique, l’électronique, l’électrotechnique, l’informatique, les
mathématiques...etc, C’est un carrefour des technologies et des méthodologies.
Des progrès doivent encore être réalisés dans chacune de ces disciplines afin de
rendre la machine plus adaptative à l’environnement. Des progrès dans le
domaine de la perception sont encore nécessaires pour une meilleure intégration
dans l’espace d’évolution. Malgré ces réserves, il est inéluctable que les
développements et les applications des robots mobiles autonomes, totalement ou
partiellement, iront en s’amplifiant.
La robotique mobile autonome vise plus spécifiquement à concevoir des
systèmes capables de se déplacer de façon autonome. Les applications directes
se situent notamment dans les domaines de l’automobile, de l’exploration
planétaire ou de la robotique de service par exemple.
De nombreuses applications restent à découvrir, qui ne découlent pas
directement des avancées de la robotique mais qui utilisent ses méthodes et ses
développements.
Figure I.1. Les différents types de robot mobile
Chapitre I Introduction générale
2
I.2. Contexte et problématique
Actuellement, il y a un intérêt croissant vers les systèmes de robots mobiles en
raison de leur utilisation aux diverses tâches telles que les missions spatiales, les
opérations dans des environnements dangereux, et les applications militaires.
La thématique abordée dans ce travail de thèse est la navigation autonome des
robots mobiles dans des environnement contraints et dynamiques.
La navigation dans ce type d’environnement impose le développement des
systèmes multi robots dynamiques. Ces systèmes sont constitués d’un ensemble
d’entités robots, dont l’état peut changer en temps réel (par exemple un robot
qui est en état de rapprochement vers une cible peut passer à l’état d’évitement
d’obstacle).
Plusieurs questions sur la représentation du monde sont discutés et différentes
solutions sont proposées tel que :
Les représentations du monde locales et la modélisation géométrique des
objets.
L’échange de représentation de l’environnement permet d’étendre la
perception locale à une perception multi-locale.
La plupart des méthodes d’évitement réactif d’obstacles sont des méthodes
locales. En effet les méthodes globales, qui considèrent un modèle complet de
l’environnement, se ramènent au problème de la planification de mouvement. Et
pour des systèmes possédant de nombreux degrés de liberté, la complexité de la
planification d’une trajectoire interdit son utilisation en cours d’exécution.
I.3. Objectifs et contributions
Les objectifs principaux de nos travaux de thèse visent à proposer, développer et
expérimenter des architectures de contrôle autonomes basées sur des contrôleurs
flous pour des robots mobiles dans des environnements encombrés et incertains.
En d’autre termes, nous voulons que ces architectures puissent être flexiblement
adaptées et modifiables au fur et au mesure que la tâche à réaliser devient plus
en plus complexe.
Dans la littérature, plusieurs travaux ont été menés dans ce contexte et les
architectures proposées sont en générale très différents dans la conception des
différents modules qui leurs composé surtout au niveau de la navigation et
l’évitement d’obstacle.
Nous avons adopté dans ce contexte l’hybridation de la logique floue et
plusieurs outils de l’intelligence artificielle (la méthode des cycles limite,
recherche taboue et algorithmes de colonies de fourmis).
L’intérêt de la logique floue réside dans sa capacité à traiter, l’imprécis,
l’incertitude et le vague. Elle est issue de la capacité de l’homme à décider et
agir de façon pertinente malgré le flou des connaissances disponibles et a été
introduite dans le but d’approcher le raisonnement humain à l’aide d’une
représentation adéquate des connaissances. L’utilisation de la commande floue
Chapitre I Introduction générale
3
Synthèse sur les approches de navigation et les
méthodes d’évitement d’obstacle
est particulièrement intéressante lorsqu’on ne dispose pas de modèle
mathématique précis du processus à commander ou lorsque ce dernier présente
de trop fortes non linéarités ou imprécisions.
Les recherches effectués contiennent donc à la fois des contributions
théoriques et expérimentales.
Sur le plan théorique :
Proposition des architectures de contrôle permettant d’intégrer les
différentes fonctionnalités de la navigation autonome dans des
environnements contraints.
Proposition de nouveaux algorithmes basés sur les outils de
L’intelligence artificielle : Logique Floue, Recherche taboue, cycles
limite modifié et colonies de fourmis dans le but de l’optimisation du
processus de navigation.
Sur le plan expérimental :
Implémentation et/ou adaptation des différentes fonctionnalités de la
navigation autonome pour des robots réels de type Thymio II
évoluant dans des environnements différents.
Réalisation des expérimentations avec ces robots, qui valident nos
approches.
Figure I.2. Méthodologie des travaux de recherches et contributions
Evitement d’obstacles par la
méthode des cycles-limites
Proposition et développement
d’une architecture de contrôle
flou
Régulation et correction par un
contrôleur flou.
Optimisation du
contrôleur par la
recherche taboue
Optimisation du contrôleur
par les algorithmes des
colonies de fourmis
Validation du contrôleur par
l’expérimentation sur des
robots réel de type Thymio II
Chapitre I Introduction générale
4
I.4. Structure de la thèse
L’organisation générale de cette thèse est décomposée en cinq chapitres :
Chapitre I : Ce premier chapitre présente une introduction générale sur la
thématique proposée dans ce travail. Il aborde également les différentes
contributions réalisées au cours de ce travail de thèse.
Chapitre II : Ce chapitre est l’état de l’art sur la robotique mobile et une
synthèse sur les différentes architectures de contrôle utilisées en robotique
mobile.
Chapitre III : Cette partie est consacrée à la navigation d’un robot mobile
et les problèmes qu’elle soulève. Nous allons décrire les différentes
méthodes d’évitement d’obstacles dédiées aux robots mobiles, leur contexte
d’utilisation aussi, nous évoquons deux exemples basés sur la logique floue
et deux méthodes méthaherustiques à recherche locales et globales
(recherche taboue, algorithmes des colonies de fourmis) .ces approches ont
été développées et implémentées pour la résolution du problème de
navigation du robot mobile. Le processus d’hybridation est réalisé de façon
séquentielle et/ou parallèle sur un algorithme de base qui est la logique
floue.
Chapitre IV : Ce chapitre propose une architecture de contrôle présentée
par la méthode des cycles limites pour l’évitement d’obstacle et la logique
floue pour la régulation du processus de navigation. Les résultats de
simulation montrent les performances de l’approche et la méthodologie de la
navigation adoptées.
Chapitre V : Ce chapitre est consacré à la description d’un contrôleur flou
pour la navigation et l’évitement d’obstacle statiques et dynamiques (les
autres robots), en tenant compte de la nature changeante de l’environnement
ainsi à la expérimentation de l’approche proposée par un ensemble de robots
Thymio II.
La thèse s’achève par une conclusion générale résumant les différents
aspects important de ce travail et les perspectives envisagées.
Chapitre II
Généralité sur la robotique mobile
Chapitre II Généralité sur la robotique mobile
5
II.1. Introduction
La robotique mobile est un domaine dans lequel l’expérience pratique est
particulièrement illustratrice et importante pour la compréhension des
problèmes. Elle est la branche de l'intelligence artificielle concernée par l'étude
de systèmes automatiques capables d'une interaction directe avec le monde
physique. Elle est l'ensemble des techniques permettant la conception, la
réalisation de machines automatiques ou de robots mobiles. La robotique mobile
est un domaine de recherche essentiellement pluridisciplinaire. Sa
problématique porte sur la conception et l’étude de fonctions de perception, de
décision et d’action, et sur l'intégration cohérente de ces fonctions en une
machine physique. Cette machine devra mettre en œuvre ses fonctions sensori-
motrices et décisionnelles pour réaliser de façon autonome une diversité de
tâches dans un environnement dynamique imparfaitement modélisé, pour
interagir avec d'autres machines et avec des humains, et pour améliorer ses
propres performances par apprentissage.
Ce deuxième chapitre se veut un aperçu des concepts de base de la robotique
mobile. Certains points seront mentionnés plus en détail que d'autres, car ils
sont plus étroitement liés à notre travail de recherche. Nous présenterons
également les problématiques de la robotique mobile en présentant les
approches, les solutions apparues dans les dernières années.
II.2 Concepts sur la robotique mobile
La mobilité autonome des robots est devenue un sujet de recherche développé
par tous les pays industrialisés. Qu’il s’agisse de robots mobiles à pattes, à roues
ou même sous-marins et aériens, les applications sont vastes et multiples: robots
de services, surveillance, construction, nettoyage, manipulation de charges,
automobile intelligente, robots d’intervention, robots d’exploration planétaire ou
de fonds marins, satellites, robots militaires, etc. Le marché potentiel de la
robotique est considérable, même s’il faut pour cela résoudre des problèmes
plus importants et plus fondamentaux que prévus initialement dans la quête vers
la machine intelligente [Tig 96], [Hai 03].
II.2.1 Définition d’un robot mobile
Un robot est une machine chargée d’effectuer une ou plusieurs tâches. Le mot
vient d’une pièce de théâtre tchèque dans laquelle apparaissait un travailleur
artificiel employé pour le « servage », désigné en tchèque par « robota ».
L’appellation Robot mobile regroupe tous les types de robots qui ont la capacité
de déplacement qui est la caractéristique commune entre eux, la différence
réside dans la manière, qui dépend du domaine d’utilisation de robot, par la
quelle le robot va atteindre cette faculté de mouvement. La mobilité par les
roues est la structure mécanique la plus communément appliquée. Cette
technique assure selon l’agencement et les dimensions des roues un
Chapitre II Généralité sur la robotique mobile
6
déplacement dans toutes les directions avec une accélération et une vitesse
importante.
Afin d’être autonome, un robot doit être équipé de capacités de perception, de
décision et d’action qui lui permettent d’agir de manière autonome dans son
environnement en fonction de la perception qu’il en a et de ses objectifs [Fil
01], mais également de savoir comment réagir en conséquence, suivant le
niveau d’autonomie. C’est à lui de planifier son parcours et de déterminer avec
quels mouvements il va atteindre son objectif. Les recherches dans ce domaine
portent principalement d’une part sur la localisation du véhicule autonome et la
cartographie de son environnement, d’autre part sur le contrôle et la navigation
autonome de tels véhicules (structure de contrôle, stratégies de commande,
planification et navigation).
Figure II.1 Les interactions d’un robot avec son environnement.
II.2.2 Pourquoi la robotique mobile ?
Dans un avenir proche, la robotique occupera une place majeure dans notre
quotidien. Elle possède de nombreux champs d’applications comme la
robotique industrielle ou la robotique de service. Qu’il s’agisse de robot civil ou
militaire, il existe désormais des robots capables d’étonnantes prouesses dans de
nombreux secteurs : robots-compagnons assistant les personnes à domicile ou
en charge de la surveillance et des soins, robots assurant la logistique dans les
hôpitaux, robots assistant les industriels dans la réalisation de gestes pénibles et
répétitifs, ou encore permettant le développement de prothèses ou d’orthèses
intelligentes (Figure II.2).
Chapitre II Généralité sur la robotique mobile
7
Figure II.2 Différents types de robots mobiles selon le champ d’application
Néanmoins, l’intérêt indéniable de la robotique mobile est d’avoir permettre
d’augmenter considérablement nos connaissances sur la localisation et la
navigation de systèmes autonomes. La gamme des problèmes potentiellement
soulevés par le plus simple des robots mobiles à roues en fait un sujet d’étude à
part entière et forme une excellente base pour l’étude de systèmes mobiles plus
complexes.
II.2.3 Architecture des robots mobiles
L’architecture d’un robot mobile s’articule autour de trois modules
fondamentaux (Figure II.3) [Bea 06], [Gia 06] :
Module locomotion,
Module perception,
Module décision
Chapitre II Généralité sur la robotique mobile
8
Figure II.3. Structure d’un robot mobile
Module locomotion
Le module locomotion comporte alors la structure mécanique, motricité et
l’énergie utilisée dans le déplacement du robot mobile. Les robots mobiles sont
en effet le plus souvent désignés par leur type de locomotion, qu’ils soient à
roues, marcheurs, sous-marins ou aériens. Différents laboratoire de recherche
contribuent jusqu’à présent à la construction des différents robots mobiles selon
le type de locomotion.
Module perception
La notion de perception en robotique mobile est relative à la capacité du
système à recueillir, traiter et mettre en forme des informations utiles au robot
pour agir et réagir dans le monde qui l’entoure. Alors que pour des tâches de
manipulation on peut considérer que l’environnement du robot est relativement
structuré, ce n’est plus le cas lorsqu’il s’agit de naviguer de manière autonome
dans des lieux très partiellement connus. Aussi, pour extraire les informations
utiles à l’accomplissement de sa tâche, il est nécessaire que le robot dispose de
nombreux capteurs mesurant aussi bien son état interne que l’environnement
dans lequel il évolue. Le choix des capteurs dépend bien évidemment de
l’application envisagée. Pour se focaliser sur le problème de navigation, nous
allons évoquer dans ce chapitre les capteurs utiles à cette tâche.
Energie
Structure mécanique
Module Locomotion
Motricité Outils
Module décision
Navigation
Localisation
Planification
Module perception
Sécurité
Capteur
vision
Chapitre II Généralité sur la robotique mobile
9
Module Décision
Les informations en provenance des différents capteurs doivent être interprétées
comme autant d’éléments utiles à la prise de décision sur l’action à faire, le but
étant de délivrer les ordres corrects aux actionneurs, bras pinces ou moteurs des
roues. C’est lors de cette phase de la conception d’un robot qu’il est nécessaire
de lui donner une forme d’intelligence en lui laissant le choix sur l’action à
entreprendre .Cette prise de décision est souvent arbitraire au début, mais elle
permet de développer une forme d’apprentissage qui tient compte des résultats
des décisions précédentes .
II.2.4 Types de plates formes mobiles
On peut classer les robots mobiles à roues dans des sous-classes selon le type de
la plate forme mobile utilisée :
II.2.4.1 Plates forme uni-cycle
C’est l’une des configurations les plus utilisées pour les robots mobiles
d’intérieur par ce qu’elle nécessite un sol très plan et non accidenté.
Figure II.4. Exemple de plate forme uni-cycle [Len 08].
II.2.4.2 Plates formes holonome
Les systèmes holonome sont beaucoup plus rares dans notre vie quotidienne. Ils
ont une structure mécanique complexe qui leur permet de se déplacer dans
toutes les directions sans manoeuvre.
La société Nomadic disparue en l’an 2000 ; a conçu un système mobile
holonome : le XR4000 (Figure II.5). Il dispose de 4 roues motrices et directrices
montées comme des roues de chariot. La synchronisation des 8 axes (2 par roue,
rotation et orientation) est assurée par une carte dédiée basée sur le
Chapitre II Généralité sur la robotique mobile
10
microcontrôleur Motorola 68332 et des circuits FPGAs et la structure
mécanique est composée d’engrenages coniques [Hol et al 00].
Figure II.5. Exemple de plate-forme holonome [Len 08].
II.2.4.3 Plates formes non-holonomes
Les systèmes mobiles dit non-holonomes sont ceux que l’on rencontre le plus
dans la vie courante (voiture particulière, bus, camion, …etc.). Ces systèmes ont
une structure mécanique relativement simple (des roues motrices, des roues
directrices et des roues libres). Une roue peut avoir une, deux ou trois fonctions.
Mais tous ces systèmes ont une caractéristique commune : la direction de la
vitesse d’entrainement (vitesse linéaire) est imposée par la direction des roues
directrices.
Figure II.6. Exemple de plate forme non holonome [Len 08].
II.2.4.4 Robot omnidirectionnel
Un robot omnidirectionnel est un robot qui peut se déplacer librement dans
toutes les directions. Il est en général constitué de trois roues décentrées
orientables placées en triangle équilatéral.
L'énorme avantage du robot omnidirectionnel est qu'il est holonome puisqu'il
peut se déplacer dans toutes les directions. Mais ceci se fait au dépend d'une
complexité mécanique bien plus grande.
Chapitre II Généralité sur la robotique mobile
11
Figure II.7. Exemple de plate forme omnidirectionnelle ROMNI [Amo et al 11]
II.3 Les nouvelles approches de la robotique mobile
En 1983, Hans Moravec [Mor 83] développa un robot mobile minimaliste, le
Stanford Cart, équipé d'une tourelle de vision stéréoscopique, Ce robot, bien
que très lent, était capable de mettre à jour son modèle du monde et d'y inclure
de nouveaux obstacles, sans pour autant recourir à une représentation
symbolique. Son système de vision servait à localiser des espaces libres
d'obstacles et aucune reconnaissance d'objets en tant que telle n'était réalisée
[Arn 00].
Figure II.8. Le robot Shakey de Stanford en [Arn 00].
C'est à cette période que certains chercheurs commencèrent à se douter que
l'approche classique, plutôt que de résoudre et de simplifier les problèmes, les
compliquait inutilement en concentrant les efforts sur le développement de
systèmes de traitement symbolique de l'information.
Le problème le plus critique était certainement celui du fondement des
symboles, en anglais "symbol grounding problem", qui se réfère à la difficulté
de mettre en relation la signification d'un symbole avec l'objet réel ou
Chapitre II Généralité sur la robotique mobile
12
l'événement qu'il représente. La description d'un symbole au moyen d'autres
symboles conduit très souvent à des structures circulaires ou récursives.
L'introduction de nouveaux symboles pour définir un symbole existant conduit à
la prolifération de ceux-ci, sans pour autant leur attribuer une signification
réelle. Les humains sont capables de fonder les symboles sur leurs perceptions
sensorielles (c'est le fondement des symboles): la signification des symboles
émerge de l'interaction avec les objets de l'environnement, elle ne leur est pas
inhérente.
Un autre problème lié aux approches classiques est dû à la faible robustesse des
systèmes de contrôle à l'égard du bruit et des événements inattendus.
L'interaction d'un robot réel avec son environnement comporte un risque élevé
de voir celui-ci se perdre s'il est piloté par un système classique. En effet, il lui
est très difficile de tenir compte des écarts qui apparaissent entre sa perception
du monde et la représentation symbolique qu'il en a, et de les corriger. Ainsi, un
système de navigation par amers reposant sur une représentation symbolique se
perdra ou ne saura pas réagir de manière appropriée lorsque ses capteurs lui
fourniront des mesures inattendues ou entachées de bruit : si un amer perçu ne
peut pas être mis en relation avec un symbole connu, ou qu'il est mis en relation
avec un symbole incorrect, le système réagira de manière erronée. Un tel
système ne peut donc pas être considéré comme entièrement autonome. D'autres
approches s'avéraient nécessaires pour faire face aux nombreux problèmes
inhérents au monde réel, tels que l'incertitude des connaissances, le bruit
entachant les grandeurs mesurées par les capteurs, les modifications
dynamiques de l'environnement, la nécessité de répondre rapidement et
correctement a dos situations inattendues, etc [Arn 00].
Un certain nombre de nouvelles approches, en partie inspirées par les modèles
cybernétiques et biologiques, ont donc été proposées :
Une approche sans représentations : les représentations internes, de
forme purement symbolique, permettent de décrire un phénomène de
façon abstraite et n'ont qu'un lien ténu avec la réalité. Une approche sans
représentations permet, en s'acquittant d'un niveau d'abstraction élevé, de
garder un lien direct entre le robot et le monde physique dans lequel
celui-ci évolue.
Une approche réactive : pour de nombreuses tâches, la réponse directe
et réactive à des événements extérieurs constitue une solution simple et
efficace. Elle permet de s'acquitter des représentations symboliques
complexes souvent nécessaires aux systèmes de planification classiques.
Les comportements d'un robot basé sur une telle approche sont
sélectionnés directement en fonction des stimuli perçus. Les
comportements qui entraînent une modification du monde (ou une
Chapitre II Généralité sur la robotique mobile
13
modification de sa perception) entraînent à leur tour l'activation de
nouveaux comportements.
Une approche distribuée : la majorité des systèmes d'intelligence
artificielle classique reposaient sur le postulat que l'intelligence pouvait
être assimilée à un processus séquentiel de traitement de l'information,
basé principalement sur des inférences logiques. L'approche distribuée
combine les caractéristiques des deux approches décrites ci-dessus et
répartit la prise de décision dans des modules séparés. Le choix final de
l'action à exécuter résulte de la coopération ou de la compétition des
divers modules. L'architecture à subsomption de Brooks est un exemple
d'une telle approche, distribuée, réactive et sans représentations [Bro
86], Ces nouvelles approches s'appuient souvent sur des modèles
biologiques. De par leur lien étroit avec les recherches en vie artificielle,
elles ouvrent de nouvelles perspectives pour l'intelligence artificielle,
Elles ont entre autres donné le jour à la robotique comportementale, à
l'approche animât et à la robotique animale.
II.4. L'autonomie d'un robot
L'autonomie est la capacité à résister à des perturbations externes en utilisant les
ressources internes. L’autonomie d'un robot est une faculté relative et non
absolue, elle est liée aux capacités du robot, aux caractéristiques de
l'environnement dans lequel il est plongé, à leurs variations, et enfin aux tâches
qu'il doit effectuer. Le concept d'autonomie est complexe lorsqu'on considère
l'interaction d'un robot avec son environnement.
Selon Steels [Ste 95], un système est autonome s'il développe les lois et les
stratégies qui lui permettent de contrôler son comportement. En fait, l'autonomie
est une capacité relative et on peut considérer qu'il existe une progression
insensible du niveau le plus bas au plus élevé. Elle représente la capacité à
choisir une stratégie, en termes de sous-buts pour arriver à un but fixé. La limite
basse de l'autonomie est constituée par un système automatique qui s'autorégule
en fonction de lois préétablies i.e. qui ne génère pas les lois que les activités de
régulation cherchent à satisfaire.
L'autonomie désigne littéralement la capacité d'une entité à « se gouverner par
ses propres lois ». Cela signifie entre autres le choix de ses buts. Dans la
littérature robotique, on peut distinguer trois points de vue :
L'autonomie au sens fort qui nous ramène à des questions de volonté et
de but propre.
L'autonomie au sens faible désigne la capacité de maintenir sa structure
au sein d'un milieu complexe à travers des mécanismes tels que l'auto-
organisation, l'évolution, l'adaptation et l'apprentissage.
Chapitre II Généralité sur la robotique mobile
14
L'automatisme ou absence de contrôle extérieur est le sens implicite que
l'on attribue généralement au mot autonomie.
S'adapter consiste pour un robot à modifier son comportement pour faire face à
des changements internes ou externes afin de maintenir certaines propriétés.
L'adaptation se rapporte toujours à quelque chose : adaptation d'un groupe à la
panne d'un individu, adaptation à la présence de passants dans
l’environnement…etc. Les bases de l'autonomie sont concrètement les
propriétés qu'un robot doit exhiber pour être autonome, par exemple :
Navigation et localisation pour accéder à tous les points de
l'environnement.
Surveillance, c'est-à-dire détection d'évènements anormaux.
Efficience dans son travail, en adoptant une stratégie de patrouille.
Un robot complètement autonome n'est pas forcément souhaitable. On peut
vouloir en prendre le contrôle à certains moments ou intervenir indirectement à
travers la modification de certains paramètres. Le terme d'autonomie ajustable
désigne justement l'interruption temporaire de l'automatisme, du fait d'un
superviseur ou de l'agent lui même, afin d'accroître l'efficacité du système [Sem
04]. Le choix du degré d'automatisme dont doit être doté un agent autonome
dépend de l’architecture de contrôleur.
II.4.1 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].
Chapitre II Généralité sur la robotique mobile
15
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).
II.4.2 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
œuvre 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 ;
II.5 Environnement dynamique et incertain
II.5.1 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).
Chapitre II Généralité sur la robotique mobile
16
II.5.2 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).
II.6. 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
Chapitre II Généralité sur la robotique mobile
17
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].
Figure II.9. Boucle de contrôle pour la commande d’un robot mobile
II.7. 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.
Chapitre II Généralité sur la robotique mobile
18
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.
II.7.1 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.
Figure II.10. Architecture de contrôle cognitive [Ado 05]
II.7.2 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
Chapitre II Généralité sur la robotique mobile
19
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 œuvre 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].
Figure II.11 Architecture de contrôle réactive [Ado 05]
II.7.3 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.
Chapitre II Généralité sur la robotique mobile
20
Cognitive
Réactive
Vitesse de la réponse
Capacités prédictives
Dépendance à la précision, modèle du monde complet
Modélisation explicite de
l’environnement
Vitesse de réponse relativement
lente dans certains environnements
Haut niveau d’intelligence
Planification sophistiquée et
préalable de la tâche.
Peut tenir compte de son passé.
Absence d’une modélisation
explicite.
Fonctionne en temps réel.
Peu ou pas d’intelligence
Fonctionne en stimulus-réponse
Pas de mémoire de son histoire.
Figure II.12. Contrôle cognitif versus réactif [Ado 05]
II.7.4 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
Chapitre II Généralité sur la robotique mobile
21
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.
Figure II.13 Architecture de contrôle hybride
II.8 Conclusion
Le développement de l'intelligence artificielle classique a conduit à la
réalisation des premiers robots mobiles, évoluant dans des environnements
strictement contrôlés. Leurs actions dans le monde réel n'étaient que
l'expression physique d'opérations symboliques réalisées dans un modèle
abstrait. Ces robots étaient incapables de réagir de manière appropriée à des
perturbations ou à des événements inattendus, ce qui a rendu impraticable leur
utilisation dans le monde réel.
L’objectif de ce chapitre est de fournir un aperçu général sur la robotique
mobile, ses problématiques et les solutions apportées actuelles. Nous avons
présenté également un panorama des architectures de contrôle dont la portée va
au delà de leur application en robotique mobile. La robotique mobile est un
domaine dans lequel l’expérience pratique est primordiale. L’approche de la
Chapitre II Généralité sur la robotique mobile
22
robotique présentée dans ce chapitre est essentiellement celle issue de
l’intelligence artificielle. D’autres disciplines, telles que l’automatique, sont
toutefois impliquées et peuvent présenter un éclairage différent, mais ne
changent pas fondamentalement les problèmes qui restent à résoudre.
Dans le chapitre suivant nous allons traiter le problème de la navigation ainsi
qu’un panorama des stratégies d’évitement d’obstacles existant dans le monde
de la robotique mobile.
Chapitre III
Navigation et évitement d’obstacles réactifs
Chapitre III Navigation et évitement d’obstacles
réactifs
23
III.I Introduction
La navigation autonome des robots est la capacité à évoluer sans aide dans leur
environnement de travail (espace de configuration). La complexité de la
méthode de navigation mise en œuvre sur un robot mobile dépend donc de
l'environnement dans lequel il doit évoluer (milieu intérieur ou environnement
naturel, sol plan ou irrégulier,...). Elle dépend également de la connaissance de
cet environnement qui peut être figé ou évolutif et du mode de définition de la
trajectoire (apprentissage préalable, planification en ligne, ...).
Ce chapitre traite de la fonctionnalité d’évitement réactif d’obstacles. Tout
d’abord nous présentons le concept navigation et un état de l’art des méthodes
d’évitement réactif d’obstacles. Ensuite nous proposons des méthodes hybrides
originales de navigation et d’évitement réactif d’obstacles pour des robots
mobiles. Ces méthodes sont basées sur des approches de l’intelligence
artificielle : logique floue, recherche taboue et algorithmes de colonies de
fourmis. Nos contributions dans ce chapitre portent sur la résolution de
certaines fonctionnalités de la navigation autonome des robots mobiles dans le
cadre défini par ces spécificités.
III.2 Navigation
La navigation d’un robot mobile est un des problèmes clés dans la communauté
de la robotique. Le problème consiste à intégrer sur un robot réel, toutes les
fonctions nécessaires pour qu’il puisse exécuter des déplacements à travers un
environnement donné, en utilisant l’information perçue par ses capteurs. Il
existe plusieurs approches pour résoudre cette tâche, mais entre toutes ces
approches, les plus connues et aussi les plus utilisées sont fondées sur la
construction d’un modèle du monde à partir de l’information sensorielle ; le
robot utilisera ce modèle pour exécuter des mouvements. Le problème de la
navigation peut donc être décomposé en plusieurs tâches, comme par exemple :
la planification de trajectoires, l’évitement d’obstacles (figure III.1).
Figure III.1 Navigation d'un robot mobile [Teg 09]
Chapitre III Navigation et évitement d’obstacles
réactifs
24
Le navigateur a donc pour mission de générer des trajectoires pour le robot. La
notion de trajectoire est différente de celle de chemin dans le sens où elle
intègre des informations temporelles le long du parcours du robot, c'est-à-dire
des vitesses et parfois des accélérations (dérivées premières et secondes).
Concrètement, un navigateur se différencie d’un planificateur de chemin par les
éléments suivants :
il travaille sur une carte de l’environnement plus localisée autour du
robot,
il travaille à plus court terme que le planificateur, il prévoit moins loin
dans le temps,
il intègre les contraintes liées au robot, il doit s’assurer que le robot est
capable physiquement de réaliser les trajectoires demandées.
La navigation est la capacité d'aller d'une position initiale à une position finale
de manière autonome [Bon 03].
Figure III.2 Schéma simplifié des tâches de la navigation autonome
III.3 Types de navigation
Le problème de la navigation d’un robot mobile consiste de la manière la plus
générale à trouver un mouvement dans l’espace des configurations sans
collisions, traditionnellement noté Libres. Ce mouvement amène le robot d’une
configuration initiale )( 00 tqq à une configuration finale )( ff tqq . Il existe
néanmoins une très grande variété de travaux et de méthodes permettant
d’aborder ce problème difficile. Pour différencier les techniques de navigation,
on peut de manière classique distinguer deux approches : la première consiste à
Navigation
Planification de
trajectoires
Evitement
D’obstacles
Localisation
Vision Odomètre
s
Sonar Laser
Suivi d’objets Reconnaissance
d’objets
…
Chapitre III Navigation et évitement d’obstacles
réactifs
25
planifier le mouvement dans l’espace des configurations et à l’exécuter par
asservissement du robot sur le mouvement de consigne (schéma planification-
exécution) ; la seconde consiste à offrir un ensemble de primitives plus
réactives. Elles correspondent alors à des sous tâches (suivre un mur, éviter un
obstacle).
Les stratégies de navigation permettant à un robot mobile de se déplacer pour
rejoindre un but sont extrêmement diverses. Une classification est établie par
Trullier [Tru 07], laquelle présente l’avantage de distinguer les stratégies sans
modèles internes et les stratégies avec modèle interne. Cette classification
comporte cinq catégories de la plus simple à la plus complexe cernées dans
deux types de navigation : la navigation réactive et la navigation par carte [Fil
01].
III.3.1 Navigation réactive
Les méthodes dites réactives n’utilisent pas de phase de planification et
s’apparentent le plus souvent à des méthodes de commande dédiées à tel ou tel
capteur et fonctionnant dans des conditions bien particulières. Ces méthodes
présentent généralement une bonne réactivité (comme leur nom l’indique) et
une certaine robustesse [Bay 08].
La navigation réactive regroupe trois catégories : Approche d’un objet, guidage
et action associée à un lieu.
III.3.1.1. Approche d’un objet
Cette capacité de base permet de se diriger vers un objet visible depuis la
position courante du robot. Elle est en général réalisée par une remontée de
gradient basée sur la perception de l’objet. Cette stratégie utilise des actions
réflexes, dans lesquelles chaque perception est directement associée à une
action. C’est une stratégie locale, c’est-à-dire fonctionnelle uniquement dans la
zone de l’environnement pour laquelle le but est visible.
III.3.1.2. Guidage
Cette capacité permet d’atteindre un but qui n’est pas un objet matériel
directement visible, mais un point de l’espace caractérisé par la configuration
spatiale d’un ensemble d’objets remarquables, ou amers, qui l’entourent ou qui
en sont voisins. La stratégie de navigation, souvent une descente de gradient
également, consiste alors à se diriger dans la direction qui permet de reproduire
cette configuration. Cette capacité semble utilisée par certains insectes, comme
les abeilles.
III.3.1.3. Action associée à un lieu
Cette capacité est la première capacité réalisant une navigation globale, c’est-à-
dire qui permet de rejoindre un but depuis des positions pour lesquelles ce but
ou les amers qui caractérisent son emplacement sont invisibles. Elle requiert une
représentation interne de l’environnement qui consiste à définir des lieux
Chapitre III Navigation et évitement d’obstacles
réactifs
26
comme des zones de l’espace dans lesquelles les perceptions restent similaires,
et à associer une action à effectuer à chacun de ces lieux.
Figure III.3. Action associé d’un lieu [Tru 07]
III.3.2 Navigation par carte
On regroupe sous le terme de navigation par carte deux stratégies : navigation
topologique et navigation métrique. Ces deux dernières autorisent pour leur part
une navigation globale et permettent de rejoindre un but arbitraire au sein de
l’environnement. Ils s’appuient pour cela sur un modèle interne du monde, une
carte, qui supporte une planification. Ce modèle interne mémorise donc la
structure spatiale de l’environnement, indépendamment d’un but précis.
Chacune des positions mémorisées dans ce modèle interne peut alors être
utilisée comme but par le processus de planification dont le rôle est de calculer
une route vers ce but.
III.3.2.1. Navigation topologique
Cette capacité est une extension de la précédente qui mémorise dans le modèle
interne les relations spatiales entre les différents lieux. Ces relations indiquent la
possibilité de se déplacer d’un lieu à un autre, mais ne sont plus associées à un
but particulier. Ce modèle ne permet toutefois que la planification de
déplacements parmi les lieux connus et suivant les chemins connus.
Chapitre III Navigation et évitement d’obstacles
réactifs
27
Figure III.4. Navigation topologique [Tru 07]
III.3.2.2. Navigation métrique
Cette capacité est une extension de la précédente car elle permet au robot de
planifier des chemins au sein de zones inexplorées de son environnement. Cette
stratégie permet de calculer le chemin le plus court entre deux lieux mémorisés,
permettant même de planifier des raccourcis au sein de zones inexplorées de
l’environnement. Pour cela, la carte mémorise la position métrique relative de
chacun des lieux visités par le robot. Ainsi il est possible de prévoir un
déplacement entre deux lieux, même si la possibilité de ce déplacement n’est
pas enregistrée dans la carte (zone inexplorée).
III.4. Méthodes de navigation
Nous pouvons classer les méthodes de navigation pour un robot mobile en
classes : méthodes classiques et avancées. La nature de l’environnement
détermine l’approche de la navigation, les méthodes classiques ont comme
point commun, l’environnement qui est totalement ou partiellement connu
c'est-à-dire un environnement statique et non complexe et par conséquent, le
robot mobile peut planifier une trajectoire continue et libre d’obstacles. Par
contre les méthodes avancées offrent des outils plus performants dans la
navigation ce qui permet d’obtenir un robot « réactif », capable d’apporter une
réponse immédiate à toute nouvelle modification de l’environnement du
moment que ce dernier est complètement inconnu [Fil 01].
III.4.1. Espace des configurations
L’espace des configurations d’un robot est constitué par l’ensemble des
configurations qui lui sont accessibles. Cela s’illustre facilement dans le cas
d’un robot représenté sous forme ponctuelle : l’espace des configurations sans
collision est l’espace dans lequel se déplace le robot, sans les obstacles. Dans le
cas d’un robot de taille et de forme quelconque, on peut se ramener au problème
de planification d’un robot ponctuel. Pour cela, on transforme l’environnement
par un processus d’érosion de l’espace libre. Les points de l’espace libre qui ne
peuvent être atteint par une configuration sans collision sont éliminées [Bay 08].
Chapitre III Navigation et évitement d’obstacles
réactifs
28
III.4.2. Décomposition en cellule
Les techniques basées sur la décomposition en cellules utilisent une
représentation discrète de l’environnement [Bay 08]. Une telle décomposition
peut être intégrée dans l'apprentissage de carte. La figure I.5 représente des
exemples utilisés pour décomposer l'espace de configuration libre. Les
décompositions exactes couvrent totalement et avec précision l'espace libre,
alors que les décompositions approximatives couvrent seulement une partie de
cet espace qui rend des mouvements possibles du robot. Les dernières
décompositions se fondent sur les divers types de cellules, qui sont des
rectangles de diverses tailles, des cellules régulières, ou des places de taille
variable dans le cas des arbres quadruplés [Fil 01].
Figure III.5. Exemples des décompositions en cellules
III.4.3. Roadmaps
Au lieu de décomposer l'espace libre de la carte de l’environnement en cellules,
il est possible de le décomposer en ensemble de chemins partiels, à l’aide d’un
certain nombre de points de passages dispersés dans l’environnement. Le
principe du roadmap est de combiner ces chemins partiels afin de créer un
chemin global reliant le point de départ avec la destination finale. En général il
y a deux méthodes pour construire les roadmaps sont : le graph de visibilité et le
diagramme de voronoï [Fil 01].
Chapitre III Navigation et évitement d’obstacles
réactifs
29
III.4.4. Graphe de visibilité
Est un graph qui inclut des lignes droites qui relient les sommets des obstacles
visibles entre eux. Cependant, cette proximité aux obstacles peut être
indésirable, par exemple si le robot doit se déplacer rapidement [Fil 01].
Figure III.6. Construction d’un graphe de Visibilité.
III.4.5. Diagramme de voronoï
Le diagramme de Voronoï est une autre méthode pour calculer un roadmap, qui
maximise le dégagement avec des obstacles. Dans ce cas, les points de passage
du roadmap sont des points équidistants au moins de trois obstacles [Fil 01].
D’autres méthodes peuvent encore être trouvées dans la référence [Lat 99].
Chapitre III Navigation et évitement d’obstacles
réactifs
30
Figure III.7. Deux exemples des méthodes utilisées pour créer un roadmap.
III.4.6. Méthode du potentiel
La méthode du potentiel a été initialement introduite par O. Khatib [Kha 86]
pour des robots manipulateurs. Elle diffère sensiblement des autres méthodes
évoquées dans cette section, car elle ne résulte pas d’un raisonnement purement
géométrique. Par ailleurs, elle est peu satisfaisante en termes de planification,
car elle n’est pas complète, ce qui signifie qu’il peut exister une solution sans
que l’algorithme ne la trouve. Ceci étant, elle fournit une technique de
navigation simple et compatible avec les exigences du temps réel.
Figure III.8. Décomposition approchée de l’espace libre
Le principe de la méthode est le suivant. Le robot mobile est plongé dans un
champ de potentiel qui résulte de la superposition d’un potentiel attractif, lié à la
configuration à atteindre, et d’une somme de potentiels répulsifs, liés aux
obstacles. La figure III.9 présente une carte des potentiels engendrés par un but
et trois obstacles [Lat 99].
Chapitre III Navigation et évitement d’obstacles
réactifs
31
Figure III.9. Combinaison de potentiels attractif et répulsif
La grande simplicité de la méthode du potentiel ne doit cependant pas masquer
son défaut majeur. Le potentiel total qui influence le robot mobile résulte de la
somme d’un potentiel attractif et de potentiels répulsifs, de signes opposés.
Cette fonction peut donc présenter un certain nombre de minima locaux, dans
lesquels le robot sera piégé, On peut bien évidemment appliquer cette méthode
sous forme discrète et purement géométrique en créant une carte discrète de
potentiels, associée à des cellules, comme illustré à la figure III.10. Ceci ramène
le problème à un problème de décomposition en cellules et de calcul du
potentiel associé.
Figure III.10. Carte discrète de potentiels et descente de gradient
III.4.7. Navigation par L’algorithme fil d’Ariane
Le rôle ultime d’un planificateur de trajectoire est de trouver un chemin dans
l’espace des configurations depuis une configuration initiale jusqu’à une
configuration finale.
Chapitre III Navigation et évitement d’obstacles
réactifs
32
Cependant un sous-but intéressant peut être d’essayer de collecter au passage
des informations sur les configurations de l’espace atteignable depuis la
configuration initiale. L’algorithme fil d’Ariane fait les deux choses à la fois
grâce à deux sous-algorithmes Search et Explore [Mat 92], [Mat 93].
L’algorithme Explore collecte des informations sur l’espace atteignable depuis
la configuration initiale en posant des balises dans l’espace de recherche et en
mémorisant le chemin entre ces balises et la configuration initiale. De façon à
récolter une information aussi riche que possible sur l’espace atteignable,
Explore essaye de placer ses balises aussi loin que possible les unes des autres.
Figure III.11. Arbre des balises [Mat 93]
III.4.8. Méthode on-line
La méthode on-line est une méthode de navigation, elle est presque la plus
simple, elle consiste à tracer une droite rejoignant la position du départ et la
cible, elle est développée suivant le principe stimuli-repense. Cette méthode est
très utilisée pour la navigation, l’exploration et la construction des cartes mais
elle présente l’avantage de pouvoir être utilisée comme méthode réactive.
Robot
Cible
θ
Figure III .12 Méthode on-line
Chapitre III Navigation et évitement d’obstacles
réactifs
33
III.5 Méthode d’évitement d’obstacles
L’évitement d’obstacles est un comportement de base présent dans quasiment
tous les robots mobiles. Il est indispensable pour permettre au robot de
fonctionner dans un environnement dynamique et pour gérer les écarts entre le
modèle interne et le monde réel. Les méthodes que nous présentons sont
efficaces à condition d’avoir une perception correcte de l’environnement. Parmi
les méthodes d’évitements d’obstacles il existe des méthodes.
III.5.1 La méthode Vector Field Histogram
La modélisation consiste dans un premier temps à représenter l'environnement
par une grille d'occupation centrée sur le robot, où chaque cellule contient une
valeur entière correspondant à la probabilité d'y trouver un obstacle "valeur de
certitude" [Luc 03].
Figure III.13 Représentation du monde sous forme de grille d’occupation
centrée sur le robot.
Dans cette méthode, l’environnement est discrétisé en secteurs angulaires pour
lesquels la somme des valeurs des cellules est calculée. Un seuil permettant de
tolérer un certain bruit est ensuite utilisé pour déterminer les directions possibles
pour le robot [Fil 01].
Figure III.14 Décomposition de la grille sous forme des secteurs
Secteur
Seuil
Somme de cellules
Chapitre III Navigation et évitement d’obstacles
réactifs
34
III. 5.2 Méthode de la fenêtre dynamique
La méthode de la fenêtre dynamique permet, à partir de la perception locale de
l’environnement, de sélectionner un couple (v , w) de vitesses de translation et
de rotation du robot qui répond à différentes contraintes, dont celle d’éviter les
obstacles. Un tel couple de vitesses, lorsqu’il est appliqué au robot, produit une
trajectoire circulaire, pour laquelle la satisfaction des différentes contraintes
peut être évaluée. A l’issu de l’évaluation de toutes les contraintes pour tous les
couples de vitesses possibles, la méthode de la fenêtre dynamique permet de
sélectionner le couple le plus pertinent (qui répond le mieux aux contraintes).
Figure III.15 Contrainte d'évitement d'obstacles pour la méthode de la fenêtre
dynamique
La contrainte d’évitement d’obstacles est une contrainte dure au sens ou elle est
binaire (succès / échec), le respect ou le non respect de cette contrainte est
reporté dans un graphe des vitesses qui indique, pour chaque couple de vitesses
possible (donc chaque trajectoire), si le robot va ou ne va pas rencontrer un
obstacle [Fil 01].
Chapitre III Navigation et évitement d’obstacles
réactifs
35
Figure III.16 Choix d’une vitesse dans la fenêtre des vitesses admissibles sans
collision
Compte tenu de la dynamique du robot i.e. sa capacité à accélérer et à ralentir,
les vitesses admissibles ne sont pas toutes atteignables dans l'intervalle de temps
imparti. Pour exprimer cette contrainte, une fenêtre dynamique est alors générée
dans l'espace des vitesses, autour de la vitesse actuelle du robot. Cela réduit
ainsi l'espace dans lequel sera recherchée la prochaine commande [Lar 03].
C’est cette fenêtre qui donne son nom à la méthode car elle permet de prendre
en compte la dynamique du robot. Il reste alors à choisir, au sein de cette
fenêtre, un couple de vitesses qui ne conduisent pas à percuter un obstacle pour
garantir un déplacement sûr du robot.
III. 5.3.Méthode des cycles-limites
L’objectif de cette méthode est de rendre le robot capable d’éviter un ensemble
des obstacles statiques et dynamiques (les autres robots) pour atteindre une cible
bien précis [Ben et al 10]. Le principe de cette dernière est :
Détecter l’obstacle gênant le plus proche ;
Entourer l’obstacle par un cercle de rayon Rcl =Rr+Ro+
Selon les informations prévenant des capteurs, la direction d’évitement
est choisie ;
Le robot évite l’obstacle en suivant un cycle limite à rayon
𝑅𝑐 = 𝑅𝑐𝑙 − 𝜀 𝑃ℎ𝑎𝑠𝑒 𝑑′𝑎𝑡𝑡𝑟𝑎𝑐𝑡𝑖𝑜𝑛 ; Le robot entame la sortie de la zone d’influence de l’obstacle en suivant
un cycle limite 𝑅𝑐 = 𝑅𝑐𝑙 + 𝜀 𝑃ℎ𝑎𝑠𝑒 𝑑𝑒 𝑟é𝑝𝑢𝑙𝑠𝑖𝑜𝑛 ;
Chapitre III Navigation et évitement d’obstacles
réactifs
36
Tel que :
RR : c’est le rayon de robot qui est entrain d’éviter l’obstacle,
Roi : c’est le rayon de l’obstacle qui est en face au robot,
: est une marge constante.
Notre cible a la forme d’un cercle qui a un rayon Rt.
La figure suivante représente le principe de la méthode des cycles-limites :
Figure III.17 Principe d’évitement d’obstacles par la méthode des cycles-limites
III.6. Exemple de navigation et d’évitement d’obstacles par la logique floue
hybride.
Le problème dans la navigation autonome d’un robot mobile est de définir une
stratégie qui lui permet de rejoindre la destination finale sans collisions en
évitant les obstacles. Une approche permettant de résoudre ce type de problème
est l’utilisation de la logique floue. Celle-ci permet de mimer les capacités de
raisonnement de l’être humain dans les taches de navigation. Une difficulté
majeure dans les systèmes flous et que l’obtention de leurs paramètres est
généralement spécifie par des experts humains. Ce processus peut être long et
très complexe. Dans ce contexte un apprentissage automatique est nécessaire
pour permettre la génération automatique des paramètres optimaux des
contrôleurs flous. Pour résoudre ce problème nous proposons des méthodes
d’optimisation très puissante qui est la méthode de recherche taboue et les
algorithmes de colonies de fourmis [Bou et al 07].
Ce travail consiste en premier plan à concevoir et implémenter une architecture
de contrôle pour une navigation autonome d’un robot mobile en tenant compte
de la nature changeante de l’environnement ceci en utilisant la logique floue.
Plusieurs critères de cette méthode ont justifié son choix. Parmi eux est que le
principe de réglage et de commande par la logique floue s’approche de la
démarche humaines dans le sens où les variables traitées ne sont pas des
variables logiques mais des variables linguistiques, proches du langages
humain, ces variables sont traitées à l’aide des règles qui font référence à une
certaine connaissance du comportement du système à commander. De plus la
Obstacle
Robot
Cible
y
x
Chapitre III Navigation et évitement d’obstacles
réactifs
37
logique floue permet de prendre en considération les incertitudes provenant des
données des capteurs et par conséquent de l’environnement dans lequel évolue
le robot mobile [Wij et al 01][Fay et al 99] [Beo et al 95] [ Lee et al 94] [Cza et
al 95] [Cas et al 96] [Dal 01]. Ensuite, nous effectuons l’apprentissage
automatique du contrôleur flou pour améliorer et optimiser son fonctionnement.
Un système d'inférence floue peut être vu comme un système multi-paramètres.
Même si l'esprit de la commande floue est de choisir ces paramètres par recours
à "l'expertise humaine", une démarche logique est de se servir de cette expertise
comme initialisation (introduction de connaissance a priori), mais de rajouter à
cela une étape d'optimisation. Nous avons privilégié, par rapport à l'ensemble
des méthodes d’apprentissage et d'optimisation possibles, le recours à des
méthodes basées sur la minimisation d'une fonction de coût. Ceci est dans
l'objectif que l'étape d'optimisation est d'obtenir la meilleure commande possible
du processus en imposant la contrainte que cette optimisation ne détruise pas la
lisibilité et la cohérence logique des règles d’inférence. La difficulté présentée
par les experts humains pour exprimer leur connaissance sous forme des règles
floues a incité des chercheurs à se développer des techniques automatiques pour
accomplir cette tâche. Nous avons pour cela développé des algorithmes utilisant
des méthodes d'optimisation basées sur la minimisation d'un critère lié d'une
part à la tâche à accomplir et contenant d'autre part un terme de pénalité qui va
assurer un comportement de convergence des poids vers des valeurs faibles et
quasi constantes. Les méthodes d’optimisation choisies sont :
– La recherche Taboue
– Les algorithmes des colonies de fourmis qui consistent à explorer
l’espace de recherche composé de toutes les solutions réalisables dans le but
d’aboutir à la solution optimale [Rei 94].
Figure III.18 Structure du système de navigation à base de la logique floue
hybride.
Chapitre III Navigation et évitement d’obstacles
réactifs
38
La solution dans la méthode d’optimisation (recherche taboue ou colonie de
fourmis) se présente sous la forme d’un vecteur dont le nombre d’élément
correspond au nombre de règles d’inférence (80 règles dans notre cas) et chaque
élément de ce vecteur représente une conclusion Ki qui représente la variation
de la vitesse et de l’orientation du robot. Pour une meilleure maîtrise des
paramètres d’apprentissage, nous avons organisé les règles par bloc (8 blocs) et
chaque bloc est constitué de 10 règles qui correspond à une situation parmi les 8
situations possibles auquel peut se trouve le robot.
K1…………K10 K11………….K2
0
K21………….K3
0
K31………….K4
0
K41………….K5
0
K51………….K6
0
K61………….K7
0
K71………….K8
0
Figure III.19 Représentation du vecteur solution.
Chaque élément du vecteur solution, représente une conclusion qui désigne le
changement de vitesse et d’orientation que le robot doit accomplir pour sortir
d’une situation donnée.
Pour évaluer les performances de navigation d’un robot mobile, nous devons
définir les critères essentiels qui font qu’une navigation soit meilleure qu’une
autre.
Ces critères sont:
Le nombre de collision que fait le robot avec les obstacles durant
la navigation (N_collis);
La longueur de la trajectoire (Dist) ;
Le temps nécessaire pour atteindre la cible (Temps);
Le nombre de tour (N_Tour) effectués par le robot mobile en
contournant les obstacles ;
- Le nombre de collision
collision) (sans 1
)10( infaisableétat d' fonction _
1_
_collisN
collisN
fcollisNf
( III.1)
Bloc 1
Bloc 2 Bloc 3 Bloc 4
Bloc 5 Bloc 6 Bloc 7 Bloc 8
Chapitre III Navigation et évitement d’obstacles
réactifs
39
- La longueur de la trajectoire
DistfDist
1 Fonction de la longueur du trajet ( 10Distf ) (III.2)
- Le nombre de tour
𝑓𝑁−𝑡𝑜𝑢𝑟 = {1
𝑁−𝑡𝑜𝑢𝑟 𝑓𝑜𝑛𝑐𝑡𝑖𝑜𝑛 𝑑𝑒𝑠 𝑐ℎ𝑎𝑛𝑔𝑒𝑚𝑒𝑛𝑡𝑠 𝑑′𝑜𝑟𝑖𝑒𝑛𝑡𝑎𝑡𝑖𝑜𝑛𝑠
0 𝑁 − 𝑡𝑜𝑢𝑟 > 𝑁 − 𝑡𝑜𝑢𝑟𝑚𝑎𝑥 (III.3)
- Le temps nécessaire pour atteindre la cible (Temps)
Ce critère est fortement lié au critère la longueur de la trajectoire. Dans ce
contexte nous n’avons pas présenté ce critère par une fonction d’évaluation
puisque il est indirectement présenté par la fonction f Dist
- Fonction d’adaptation globale
La fonction d'adaptation globale du comportement du robot est la combinaison
des trois fonctions présentées précédemment :
ba
bfafff
tourNDistcollisn
traj
100*__
(III.4)
Dans cette fonction, nous avons donné plus d’importance à la fonction f N_collis ,
car notre premier objectif est l’évitement d’obstacles. Les paramètres a et b
sont des coefficients de pondération fixés par l’expérience.
La tentative est de pondérer chaque partie de la fonction f traj en s'accordant à
leur importance dans l'objectif de l'algorithme. La partie qui a une grande
influence sur le trajet est la fonction d'état infaisable f N_collis.
- Pénalisation des mauvais comportements
Pour sortir des situations de blocage dont lesquelles peut tomber un robot
pendant sa navigation, nous avons fixé un temps maximum de navigation et un
nombre maximum de collision. Nous pouvons arrêter un comportement mauvais
si :
Il dépasse le temps max de navigation,
Il dépasse le nombre max de collision,
Chapitre III Navigation et évitement d’obstacles
réactifs
40
La pénalisation sur la fonction d'adaptation sera faite comme suite :
- Si temps ≥ temps_max Alors ftraj = µ * ftraj
- Si N_collisions ≥ N_collisions_max Alors f traj = µ * f traj ;
- Si Dist tend vers 0 et temps ≥ temps_max Alors f traj = 0.
Avec µ et le coefficient de pénalisation fixé par l’expérience.
III.6.1. Résultats de navigation par la logique floue
Pour montrer la performance et l’efficacité de l’approche utilisée, nous avons
réalisé plusieurs essais de navigation dans différents environnements plus au
moins complexes et très différents en changeant chaque fois la position du robot
et de la cible.
Environnement 1 Environnement 2
Environnement 3
Figure III.20 Trajectoire du robot dans différents environnements
Chapitre III Navigation et évitement d’obstacles
réactifs
41
D’après la figure III.20, dans les différents environnements, le robot arrive à sa
destination mais il n’a pas choisi le chemin le plus court possible. Idéalement,
nous souhaiterions que le robot sélectionne l’action qui satisfait au mieux les
comportements actifs. Nous avons vu que ceci n’est pas toujours possible, en
particulier si deux comportements préconisent des actions opposées. Nous
remarquons cependant que tous les comportements ne sont pas applicables de la
même manière suivant les situations. Par exemple, le comportement aller vers
la cible sera plus approprié quand le chemin est libre, tandis que le
comportement éviter obstacle sera plus adéquat si un obstacle est détecté.
III.6.2. Résultats de navigation par la logique floue et la recherche Taboue
Après que nous avons montré que la logique floue est une démarche qui n’est
pas totalement garantie, nous présentons maintenant l’implémentation de
l’algorithme d’apprentissage automatique par la recherche taboue développé.
Plusieurs tests de navigation ont été simulés pour différentes configurations de
la cible et du robot et sur plusieurs environnements différents. Les figures
décrites ci dessus montrent le chemin pris par le robot pour atteindre sa cible
avant et après l’apprentissage par la recherche taboue.
Avant l’apprentissage Après l’apprentissage
Figure III.21 Exemple de navigation 1 par la logique floue et la recherche
Taboue
Chapitre III Navigation et évitement d’obstacles
réactifs
42
Avant l’apprentissage Après l’apprentissage
Figure III.22 Exemple de navigation 2 par la logique floue et la recherche
Taboue
III.6.3 Résultats de navigation par la logique floue et les colonies de fourmis
Nous allons appliquer le même principe de navigation et d’apprentissage avec
les algorithmes de colonies de fourmis.
Avant l’apprentissage Après l’apprentissage
Figure III.23 Exemple de navigation 1 par la logique floue et les colonies de
fourmis
Chapitre III Navigation et évitement d’obstacles
réactifs
43
Avant l’apprentissage Après l’apprentissage
Figure III.24 Exemple de navigation 2 par la logique floue et les colonies de
fourmis
D’après ces figures, nous remarquons bien les performances et l’efficacité des
approches adoptées dans la navigation et l’apprentissage du robot mobile dans
des environnements complexes et incertains.
Notre système apprentissage navigation a été testé avec succès sur différentes
configurations de la cible et du robot ainsi que sur plusieurs environnements
distincts. Le robot arrive toujours à atteindre sa cible en évitant les obstacles
tout en choisissant le chemin le plus court possible (ça dépend aussi de la taille
du robot). L’architecture de contrôle développée présente aussi l’avantage
d’être robuste, de par son coté réactif et évolutive, de par sa conception
modulaire. Nous avons simulé le système de perception en temps réel afin de
faire émerger les attitudes réflexes du robot.
III.7. Conclusion
Pour un robot mobile, le but essentiel est de définir une stratégie qui lui permet
de rejoindre la destination finale c'est-à-dire la cible. Faire naviguer le robot en
s’approchant de la cible et en évitant tout obstacle dans un environnement
contraint est parmi les problèmes les plus complexes et la majorité des
spécialistes de la robotique mobile ont orienté leurs recherches vers cet axe
[Bou et al 07]. La nature de l’environnement détermine l’approche de
navigation utilisée ainsi pour un environnement connu ou partiellement connu
on opte pour les approches classiques dont l’implémentation est plus facile et
simple. Par contre dans un environnement réel non structuré le contrôleur du
robot doit être capable d’opérer sous des conditions d’imprécision et
d’incertitudes et de répondre d’une manière réactive à des événements imprévus
au moment de leur perception dans cas les approches de navigation avancées
sont de trajectoire pour le robot.
Chapitre III Navigation et évitement d’obstacles
réactifs
44
Dans le chapitre suivant, nous allons présenter notre architecture de contrôle
pour une navigation autonome d’un robot mobile en évitant les obstacles de
différentes formes en utilisant la méthode des cycles limites et la logique floue.
Chapitre IV
Navigation d’un robot mobile par cycles –
limites et logique floue
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
45
IV.1. Introduction
Dans le cas idéal d’un environnement exactement modélisé et où la cinématique du
robot est parfaitement maîtrisée les étapes de la navigation se résument simplement
comme étant la planification d’une trajectoire puis son exécution. Mais dans la réalité
nous faisons, sans nous en rendre compte, des actions extrêmement complexes lorsque
nous nous déplaçons : nous estimons notre position, nous analysons en permanence les
objets qui nous entourent et nous nous mouvons ; c’est dans cette optique que les robots
mobiles sont développés.
Dans cette partie de notre travail qui a fait l’objet d’une publication [Bou et al 14b],
nous s’intéressons à la navigation en toute sécurité d’un robot mobile en évitant tous les
obstacles rencontrés et atteignant une cible donnée.
Pour imiter les compétences d’un bon conducteur d’automobile, la logique floue est la
technique la plus convenable pour la représentation des connaissances imprécises d’un
expert. Notre travail concerne la conception d’un contrôleur flou pour la régulation et
l’optimisation des paramètres d’actions obtenus par la méthode d’évitement d’obstacle
cycle-limites améliorée [Ado 11], [Kim 03] par un robot mobile d’intérieur. Notre
intérêt est concentré sur l’optimisation du temps de traitement pour conserver l’aspect
temps réel du contrôleur conçu.
IV.2. Déscription de l’architecture de contrôle
Une architecture robotique précise autant que possible les composants logiciels et
matériels utilisés pour mettre en place un robot, et précise les modalités d’interaction de
ces composants. Dans le cadre qui nous intéresse ici, nous nous limiterons aux aspects
logiciels de cette architecture et nous considérerons des robots mettant en avant des
aspects d’autonomie décisionnelle. Les travaux de Brooks sur l’intélligence appliquée
aux robots mobiles nous ont incité à utiliser l’approche comportementale pour batir le
mécanisme d’intélligence. Il est proposé dans ce qui est suit de détailler les modules de
cette architecture en commencant par le module de perception, le module de décision
ensuite le module d’action.
Avant d’entamer la déscription des modules de notre architecture, nous allons donner
une déscription de la mission assignée pour le robot et la plate forme du robot mobile
prise en compte dans ce travail.
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
46
IV.2.1. Description du système robotique
Notre système est constitué d’un robot mobile non-holonome qui navigue dans un
environnement en présence d’obstacles. Le robot doit chercher une cible dont la
position est connue par le robot, ceci en évitant les obstacles statiques. Le robot exécute
les actions et adapte ses plans et ses comportements en fonction de ses objectifs et de
l’environnement tel qu’il le perçoit. Son comportement et ses réactions sont guidés par
ses objectifs.
Pour modéliser le déplacement du robot mobile en tenant compte de ces contraintes, un
repère convenable doit être judicieusement choisi. Le robot est un objet rigide se
déplaçant sur un plan horizontal avec deux degrés de liberté : le premier correspond à
un mouvement de déplacement à l’avant ou à l’arrière, tandis que le deuxième est celui
de la rotation autour d’un axe vertical.
Le robot utilisé est un robot unicycle dont le modèle cinématique s’exprime dans un
repère absolu par le système d’´equation :
(IV.1)
Où
(x, y) sont les coordonnées du robot dans le repère absolu.
θ est l’orientation du robot dans ce repère.
v et ω sont les vitesses linéaire et angulaire du robot respectivement.
Figure IV.1 La configuration cartésienne du robot
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
47
IV.2.2. Structure de l’architecture de contrôle proposée
Après une description générale du principe adopté dans le deuxième chapitre, les blocs
de l’architecture sont détaillés individuellement. S’inspirant d’une approche
comportementale. Elle sera composée principalement de deux contrôleurs
accomplissant deux taches élémentaires : attraction vers une cible et évitement
d’obstacles (cf. figure IV.2).
Figure IV .2 Architecture de contrôle proposée
IV.2.2.1. Module de perception
La notion de perception en robotique mobile est relative à la capacité du système à
récueillir, traiter et mettre en forme des informations utiles au robot pour agir dans le
monde qui l’entoure. Alors que pour des taches de manipulation ou peut considérer que
l’environnement du robot est relativement structuré, ce n’est plus le cas lorsqu’il s’agit
de naviguer de manière autonome dans des lieux très partiellement connus. Aussi, pour
extraire les informations utiles à l’accomplissement de sa tache, il est nécessaire que le
robot dispose de nombreux capteurs mesurant aussi bien son état interne que
l’environnement dans lequel il évolue. Le module perception a pour but d'extraire du
modèle local les informations nécessaires au robot :
pour détecter les obstacles.
pour calculer un chemin permettant de rejoindre le but en evitant les obstacles.
IV.2.2.2. Module de décision
En fonction du comportement déclenché, un module d’action associé à un
comportement donné détermine une réponse adaptée à la situation dans laquelle se
trouve l’agent-robot. La réponse de l’agent robot en fonction de la granularité du
comportement [ARK 98]. Dans notre application, ce module se compose des
comportements suivants : Attraction vers la cible, Evitement d’obstacles et Sélection
d’action.
Per
cep
tio
n
Evitement
D’obstacle
Contrôleur
flou
Attraction vers la cible
Sélection
d’action
Robot
N
d
C1
C2
C
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
48
Comportement d’attraction vers la cible
Le robot se déplace dans l’éspace de recherche depuis sa position initiale vers la cible.
Le but de cette comportement est d’atteindre une cible bien précise tout en évitant les
obstacles statiques. La méthode qu’on va utiliser pour réaliser ce comportement est la
méthode on-line (cf. chapitre III) .
Figure IV.3 Trajectoire du robot dans un environnement sans obstacles par la méthode
on-line
Comportement d’évitement d’obstacles
L’évitement d’obstacles est un comportement de base devant être présent dans tous les
robots mobiles. En effet le caractéristique de mobilité impose que le robot doit pouvoir
agir dans un environnement, c’est pourquoi tous les robots mobiles sont quasiment
équipés de capteurs permettant de détecter les obstacles. Dans la litérature, il existe de
nomreux travaux sur l’évitement d’obstacles (cf.chapitre II) dont l’objectif est de
garantir le maximum de sécurité aux robots mobiles en cours de navigation.
Module sélection d’action
C’est une collection des comportements prédéfinis, tel que l’attraction vers une cible et
l’évitment d’obstacle, tout en respectant un ordre de priorité : dans le cas où l’agent
robot est confronté entre deux cas : atteindre le but (zone d’agrégat) et l’évitement d’un
obstacle, dans ce cas le robot doit premièrement éviter l’obstacle, ensuite continuer le
déplacement.
IV.2.2.3. Module d’action
Il s’agit alors de veiller à réaliser le mouvement ou le déplacement et suivre les
consignes de vitesses reçues en appliquant par exemple le type de commande adapté.
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
49
IV.3 La méthode d’évitement d’obstacle : Cycles-Limites
Parmi les méthodes d’évitement d’obstacles utilisées, nous trouvons celle du cycles-
limites proposé par kim [Kim03] et amélioré par [Ado 09]. En plus de l’évitement
d’obstacle, elle permet de définir une distance que le robot garde avec l’obstacle durant
ette phase, ce qui offre l’assurance de ne pas trop s’en approcher. Aussi connaissant la
position de sa cible, le robot peut choisir le coté d’évitement optimal lui permettant de
l’atteidre plus rapidement.
L'algorithme proposé est très simple, c’est une amélioration de l’algorithme donné par
Adouane [Ado 11]: le robot cherche à se déplacer vers une zone d'espace libre selon une
direction privilégiée. Le comportement est purement réactif et permet d'appréhender des
obstacles de forme particulière ou n’importe quelle forme. Au niveau de l'architecture,
cela se traduit par l'utilisation d'un module de perception créant une représentation
locale de l’environnement par un cercle limite. Pour accomplir la tache d’évitement, il
est impératif de définir trois étapes essentielles [Ben et al 10] :
Détecter l’obstacle à éviter ;
Choisir une direction d’évitement (trigonométrique ou anti-
trigonométrique) ;
Définir un critère pour évaluer si l’obstacle est considéré comme étant évité.
Lorsque le robot détecte un obstacle, il calcule un point de référence de l’obstacle (c’est
l’intersection de la ligne droite qui mène à la cible avec l’obstacle), le robot entoure le
point d’intersection par un cercle. Cette stratégie d’évitement est donnée par
l’algorithme suivant :
Entourer l’obstacle par un cercle de rayon Rcl =RR+ tel que >ε.
La direction d’évitement est choisie selon les informations prévenant des
capteurs (localisation du robot et de la cible).
Le robot évite l’obstacle en suivant un cycle limite à rayon
𝑅𝑐 = 𝑅𝑐𝑙 − 𝜀 𝑃ℎ𝑎𝑠𝑒 𝑑′𝑎𝑡𝑡𝑟𝑎𝑐𝑡𝑖𝑜𝑛
Le robot entame la sortie de la zone d’influence de l’obstacle en suivant un cycle
limite 𝑅𝑐 = 𝑅𝑐𝑙 + 𝜀 𝑃ℎ𝑎𝑠𝑒 𝑑𝑒 𝑟é𝑝𝑢𝑙𝑠𝑖𝑜𝑛 ;
Tel que :
RR : c’est le rayon de robot.
: est une marge constante fixée empiriquement.
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
50
(a) avant la navigation (b) après la navigation
Figure IV.5. Evitement d’obstacles de forme quelconque
Robot Obstacle
Cible
Rr
Figure IV.4 Le principe de la méthode des cycles-limites
Robot Obstacle
Cible Rcl
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
51
V.3.1. Configuration du robot pendant l’évitement d’obstacles
La configuration du robot par rapport à l’obstacle détecté et à la cible est décrit par la
figure suivante :
DROi: c’est la distance entre le centre du robot et le centre du rayon des cycles limite
d’obstacle,
DPROi : c’est la distance perpendiculaire entre le centre du rayon de cycle limite de
l’obstacle et la ligne.
DTOi : la distance entre le centre du rayon de l’obstacle et le centre de la cible.
Toutes ces différentes étapes doivent être suivies et appliquées, tout en garantissant que
la trajectoire du robot est sûr et sans heurts, et évite des situations indésirables comme
l’interblocage ou minima locaux [Ado 09].
Le robot choisit le sens horaire ou anti horaire selon la position de la cible ;
Figure IV.6 Les perceptions utilisées pour la navigation robot mobile
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
52
Figure IV.7 Le sens d’évitement d’obstacles
Les mesures nécessaires pour bien mener le robot vers la cible sont données par
l’algorithme suivant :
1. Pour chaque temps échantillonnage, obtenir la distance DROi et la distance
perpendiculaire Rcl pour chaque obstacle potentiellement contraint (c’est-à-dire
DRoi Rcl )
2. parmi l’ensemble des obstacles contraints (ce qui peut contraindre le robot à
atteindre la cible), choisissez le plus proche du robot (selon la mesure de DROi).
L’obstacle est spécifié par les caractéristiques suivantes : le rayon Ro et la position
(Xobst, Yobst).
3. Après la détermination des contraintes de l’obstacle le plus proche, nous avons
besoin d’obtenir quatre domaines spécifiques (Figure IV.7.) qui donnent le
comportement du robot : l’évitement d’obstacle dans le sens horaire ou antihoraire,
la phase de répulsion ou attraction. Pour faire la distinction entre ces quatre zones,
nous devons :
Définir un cadre de référence spécifique qui a les caractéristiques
suivantes:
L’axe Xo relie le centre de l’obstacle (Xobst, Yobst) au centre de
la cible. Cet axe est orienté vers la cible.
L’axe Yo est perpendiculaire à l’axe Xo et il est orienté en
suivant la convention trigonométrique.
Appliquer le changement de cadre de référence de coordonnées du
position du robot (X0, Y0) (donné dans le repère absolu) vers la
référentiel lié à l’obstacle (X0, Y0) .
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
53
La méthode des cycles-limites prend différents rayons afin de garantir la régularité de
la trajectoire. Le signe de Yo donne la bonne direction pour éviter l’obstacle, en fait, si
(Yo 0) appliquer le sens horaire de cycle limite sinon appliquer le sens antihoraire. Ce
choix permet d’optimiser la durée de la trajectoire du robot.
IV.4. Simulation et Résultats de navigation en utilisant la méthode des cycles-
limites
Avant toute phase d'application effective d'une architecture de contrôle, il est nécessaire
de passer par une phase de simulation pour la valider, la tester et pour ajuster ses
paramètres. A travers la simulation informatique on peut étudier un système réel pour
comprendre son fonctionnement interne et pour prévoir ses changements sous certaines
conditions. Les expérimentations de simulation se font à travers un simulateur qui est
une implémentation d'un modèle du système réel.
Les figures présentent des exemples de navigation dans un environnement 2D contenant
plusieurs obstacles statiques de formes circulaires. Pour montrer la performance et
l’efficacité de l’approche utilisée, nous avons réalisé plusieurs essais de navigation dans
différents environnements plus au moins complexes et très différents en changeant
chaque fois la position du robot, la cible et la position des obstacles.
(a1) trajet du robot et évitement d’un seul obstacle
( b1) changement d’orientation de l’angle du robot lors de l’évitement
Figure IV.8 Environnement de simulation1(a1) et (b1)
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
54
( a2) trajet du robot et évitement de 4 obstacles
( b2) le changement d’orientation de l’angle du robot lors de l’évitement
Figure IV.9 ( a2) et (b2) Environnement2
Nous constatons les differentes oscillasions de l’angle du robot lors de l’évitement des
obstacles.
(a3)
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
55
(b3)
Figure IV.10 (a3) et (b3) Environnement de simulation 3
En pratique, la méthode cycle limite est une bonne méthode, elle donne des résultats
satisfaisants mais malheureusement ces résultats ne sont pas toujours optimaux. Dans le
but d’augmenter l’efficacité de la méthode cycle limite, nous avons opté pour une
hybridation avec contrôleur flou pour optimiser son fonctionnement.
Figure IV.11. Evitement d’obstacles avec oscillations
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
56
IV.5. Solution proposée par la logique floue
Nous proposons d’ajouter au module évitement d’obstacle un sous-module basé sur un
contrôleur flou qui permet de normaliser le changement d’orientation du robot lors
de l’évitement et rendre le mouvement du robot plus flexible.
Le contrôleur a 3 entrées :d, ∆θ, N et une sortie normalisé.
Où
: est la distance de séparation minimale que le robot doit respecter pour
éviter de renter en collision avec l’obstacle
: est le changement d’orientation
: est le nombre de changement de par unité de temps
Le contrôleur flou développé est une version classique, utilisée pour les processus de
type multi-entrées, multi-sorties. Les contrôleurs de ce type utilisent l’approche de
Mamdani [Mam 77], [Aco 97] dans laquelle chaque règle est représentée par une
conjonction (minimum) et l’agrégation des règles par une disjonction (maximum).
Figure IV.12 Le contrôleur flou pour la régulation de l’orientation du robot
Fuzzyfication
Règles d’Inférence
Fonctions
d’appartenance
d’entrée
Evaluation des
règles d’inférence
Fonctions
d’appartenance de
sortie
Deffuzzyfication
N
D
Entrées floues
Sorties Floues
Normalisé
y imputs
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
57
En se basant sur les caractéristiques techniques du robot, la conception du contrôleur
flou est proposée en définissant les propriétés fonctionnelles et opérationnelles ci-
dessous :
Fonctions d’appartenance
Consiste à spécifier le domaine de variation des variables : l’univers de discours (sous
ensemble flous ou valeurs linguistiques). Cette répartition, qui consiste à fixer le
nombre de ces valeurs et les distribuer su le domaine, est faite en se basant sur des
connaissances du système et selon la précision désirée. Les fonctions d’appartenance
des variables d’entrée et de sortie sont explicitées dans les figures qui suivent.
Figure IV.13 Représentation des sous ensembles flous de la distance
La figure IV.13 représente les fonctions d’appartenance de la distances d qui est évaluée
par rapport aux deux sous-ensembles flous P et L, qui correspondent respectivement à
Prés et Loin.
Figure IV.14 Représentation des sous ensembles flous de N
La figure IV.14 représente les fonctions d’appartenance de N qui est évaluée par rapport
aux deux sous-ensembles flous Petit et grand.
0 d d1 d2 d (unités)
Près Loin 1
Degré d'appartenance
Petit Grand 1
Degré d'appartenance
0 n1 n2 N
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
58
Figure IV.15 Représentation des sous-ensembles flous de
La figure IV.15 représente les fonctions d’appartenance du changement d’orientation
du robot qui est représenté par cinq intervalles flous : GG (gauche grand), GP (gauche
petit), Z (zéro), DP (droit petit), DG (droit grand).
Figure IV.16. Représentation des sous-ensembles flous de normalisé
La figure IV.16 représente les fonctions d’appartenance du changement de l’angle
d’orientation normalisé du robot qui est représenté par cinq intervalles flous : GG
(gauche grand), GP (gauche petit), Z (zéro), DP (droit petit), DG (droit grand),
TdP(droit très petit) et TGP(tés petit gauche).
Règles d’inférence
Cette étape, concerne l’élaboration des règles, pour définir le comportement attendu du
robot selon ses paramètres intrinsèques. Pour chacune des combinaisons des valeurs des
variables d’entrée, une action sur les variables de sortie lui est associée. En totalité on
obtient 20 règles floues. Le tableau suivant résume l’ensemble des règles :
Degré d'appartenance
GG GP Z DP DG
-60 -30 0 30 60 ( degré)
-60 -30 -10 5 0 5 10 30 60 (degrés)
GG GP TGP Z TDP DP DG
Degré d'appartenance
1
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
59
Tableau IV.1. Règles d’inférences
La Déffuzzyfication
Après avoir mis en place les fonctions d’appartenance et établir les règles d’inférence
définissant le comportement du contrôleur, on passe à choisir une méthode de
Déffuzzyfication. Cette dernière permet de transformer les valeurs de commande du
domaine flou vers le domaine réel (variables physiques). Nous avons opté par la
méthode de Déffuzzyfication dite "méthode de centre de gravité discret». Ce choix est
généralement conditionné par un compromis entre la facilité d’implémentation et
performance de calcul [Buh 94].
D
N
normalisé
SI
L GG P
alors
GP
L GP P Z
L Z P Z
L DP P Z
L DG P DP
L GG G TPG
L GP G Z
L Z G Z
L DP G Z
L DG G TPD
P GG G GP
P GP G TPG
P Z G Z
P DG G DP
P DP G TPD
P GG P GP
P GP P TPG
P Z P Z
P DG P DP
P DP P TPD
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
60
Variables Valeur Ensemble flou Valeur de vérité
Distance 0.3 unités Prés 1
D Loin 0
N 2 Petit 1
Grand 0
GG 0
L’orientation GP 0
60° Z 0
DP 0
DG 1
Tableau IV.2. Déffuzyfication des variables floues
IV.6. Simulations et Résultats par l’hybridation des cycles-limites et la logique
floue
Dans le but de tester et valider les solutions obtenues, plusieurs tests de navigation ont
été simulés pour différentes configurations de la cible et du robot et sur plusieurs
environnements différents. Les figures décrites ci-dessous montrent le chemin pris par
le robot pour atteindre sa cible avant et après la correction par la logique floue.
Figure IV.17. Scénarion de navigation de l’environnement de simulation 1 sans
l’utilisation du contrôleur flou
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
61
Figure IV.18. Scénarion de navigation de l’environnement de simulation 1 aprés
l’utilisation du contrôleur flou
Figure IV.19. Scénarion de navigation de l’environnement de simulation 2 sans
l’utilisation de contrôleur flou
Chapitre IV Navigation d’un robot mobile par cycles –
limites et logique floue
62
Figure IV.20. Scénarion de navigation de l’environnement de simulation 2 aprés
l’utilisation de contrôleur flou
IV.7. Conclusion
Dans ce chapitre, nous avons développé une architecture de contrôle comportementale
pour une navigation autonome d’un robot mobile dans un environnement contraint en
évitant toute collision avec des obstacles statiques. Nous nous sommes surtout
intéressées au module d’évitement d’obstacle dans cette architecture. Pour ce but, nous
avons implémenté une approche hybride basée sur la méthode des cycles-limites et un
contrôleur flou. Le but de cette combinaison est de rendre l’évitement plus souple en
réduisant le nombre de changement d’orientation lors de l’évitement [Bou et al 14b].
Dans le chapitre suivant, nous allons expérimenter notre contrôleur flou sur un robot
réel Thymio II afin de valider l’approche proposée.
Chapitre V
La navigation autonome d’un groupe de robots
mobiles Thymio II
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
63
V.1. Introduction
Ce chapitre aborde le problème de navigation d'un système robotique en environnement
dynamique et incertain. Plus particulièrement, il s'intéresse à la détermination du
mouvement pour un robot, permettant de rejoindre une position donnée tout en assurant
sa propre sécurité et celle des différents agents qui l'entourent. Pour atteindre ces
objectifs, nous avons adopté un contrôleur flou pour la navigation et l’évitement
d’obstacle statiques et dynamiques (les autres robots), en tenant compte de la nature
changeante de l’environnement. L’approche a été expérimentée et validé sur un
ensemble de robots Thymio II. Comme champ d’application, nous avons choisi le
problème de stationnement parking. Ce travail a fait l’objet d’une autre publication
[Bou et al 14a].
V.2. Présentation du robot Thymio II
Notre objectif est le développement d’un outil d’évitement d’obstacle simple et
totalement réactif qui peut être implémenté sur le robot ThymioII.
Thymio II est une évolution du robot Thymio, les deux développés dans le cadre d'une
collaboration entre l'Ecole Polytechnique Fédérale de Lausanne (EPFL groupe
MOBOTS) et l'École Cantonale d'Art de Lausanne (ECAL). Pour Thymio II, le
développement a été réalisé dans le cadre du programme NCCR (The National Centre
of Competence in Research) Robotics et l'association Mobsya a contribué au
développement et gère sa production [web1]. L'objectif du projet Thymio II est de
permettre au grand public d'accéder à la robotique par un robot programmable et riche
en possibilités, afin de permettre l'exploration des technologies liées à la robotique.
Accessoirement cet objectif peut s'appliquer de façon plus spécifique aux écoles, avec
l'utilisation de la robotique comme outil pédagogique.
Figure V.1. Robot Thymio II
Le Thymio II est un robot éducatif. Il se base sur trois piliers:
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
64
Une grande quantité de capteurs et d'actionneurs ;
Une interactivité très poussée, surtout en ce qui concerne la compréhension du
fonctionnement des capteurs ;
Une programmation facile grâce à l'environnement d'Aseba.
V.2.1.Capteurs et actionneurs
Thymio II dispose d'un grand nombre de capteurs et d'actuateurs :
Les capteurs de proximité. Ils permettent de mesurer s'il y a un objet à
proximité. Ils fonctionnent en émettant de la lumière infrarouge et en mesurant
combien de lumière retourne en arrière. S'il y a un objet en face, il va réfléchir
de la lumière en arrière.
Les accéléromètres Thymio possèdent un accéléromètre 3 axes.
Un capteur de température (un thermomètre électronique).
Un microphone, qui permet de percevoir des sons.
Figure V.2. Configuration du robot Thymio II
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
65
V.2.2. Interactivité
L'interactivité apparaît à différents niveaux:
les boutons capacitifs,
les couleurs du corps,
les LEDs colorées associées à chaque capteur.
Figure V.3 Les LEDs colorées
V.3. Environnement de Programmation Aseba
Aseba est un ensemble d'outils permettant à des novices de programmer des robots
facilement et efficacement. Pour ces raisons, Aseba est bien adapté à la recherche et
l'enseignement en robotique. Aseba est open-source.
Figure V.4. Environnement Aseba
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
66
Aseba est disponible sur plusieurs robots: Thymio II, MarXbot, Handbot et epuck ,
Techniquement, Aseba est une architecture de contrôle distribuée de robot mobile,
basée sur des événements. Aseba vise les robots à plusieurs micro-contrôleurs ou les
groupes de robots à simple micro-contrôleurs, réels ou simulés. Le cœur d'Aseba est une
machine virtuelle légère, suffisamment compacte pour fonctionner sur micro-
contrôleurs. Aseba permet de programmer les robots dans un langage ergonomique et
simple d'accès, à partir d'un environnement de développement intégré. Aseba est
intéressant dans divers contextes :
Dans un robot multi-micro-contrôleurs, Aseba permet d'exploiter la puissance de
calcul périphérique des micro-contrôleurs, et fournit une modularité matérielle,
une faible latence entre la perception et l'action, ainsi qu'un usage économique
de la bande passante du bus du robot. De plus, le langage de programmation
facile à comprendre permet un développement rapide des comportements du
robot.
En robotique collective, Aseba améliore l'efficacité du processus de
développement en permettant d'éditer concurrentiellement le programme des
robots et en permettant de débugger en parallèle sur tous les robots.
Dans l'éducation, le langage facile à apprendre d'Aseba, son environnement de
développement intégré ergonomique.
Figure V.5. Aseba Studio pour Thymio II
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
67
V.4. Approche de navigation proposée
Notre système est constitué d’un ensemble de robots mobile Thymio II [Web2] qui
naviguent dans un environnement dynamique et incertain. Les robots doivent explorer
l’environnement et chercher une place pour stationner, Ceci en évitant les obstacles
statiques et dynamiques (les autres robots). Chaque robot du groupe exécute les actions,
adapte ses plans et ses comportements en fonction de ses objectifs et de l’environnement
tel qu’il le perçoit. Son comportement et ses réactions sont guidés par ses objectifs.
Pour que chaque robot Thymio II arrive à éviter les obstacles statique et dynamique et
faire l’agrégation (dans notre cas, stationnement aux zones limite de l’espace de
configuration) nous avons développé un système de contrôle réactif en utilisant la
logique floue (figure V.6). Notre système met en œuvre une stratégie de contrôle
purement réactive en ce sens que le robot réagit immédiatement en fonction de
l’'environnement. Le but de ce système flou sera de décider de la vitesse des deux roues
du robot afin que celui-ci ne percute aucun obstacle et aller vers son objectif.
Figure V.6. Contrôleur de navigation pour le robot Thymio II
Le système de contrôle flou est constitué de deux modules basés sur les données
d’entrées sensorielles du robot Thymio II :
Module d’évitement d’obstacle ;
Module d’agrégation.
Ce système flou détermine la vitesse des roues droite et gauche motor_right_target (B) et
motor_left _target (A) en fonction de la distance des obstacles autour du robot mesuré
par les capteurs S0, S1, S2, S3, S4 et deux valeurs données par les capteurs du sol DS1
et DS2. Les distances mesurées par les capteurs sont présentées dans le tableau suivant :
Thymio possède sept capteurs de distances présentés par la variable prox.horizontal.
Évitement
d’obstacle
dG
dMG
dF
dMd
dD
DG1
DG2
A
B
B
Agrégation DS1
DS2
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
68
prox.horizontal[S0] : avant gauche
prox.horizontal[S1] : avant milieu-gauche
prox.horizontal[S2] : avant milieu
prox.horizontal[S3] : avant milieu-droite
prox.horizontal[S4] : avant droite
prox.horizontal[S5] : arrière gauche
prox.horizontal[S6] : arrière droite
Figure V.7. Configuration des capteurs de distance du robot Thymio II
Dans le cas des données relatives aux capteurs, L’action réflexe du robot est déduite de
l’analyse de données suivant les cinq cotés du robot (dG, dMG, dF, dMD, dD : les
distances par rapport aux obstacles) et pour détecter le but par les deux valeurs de ces
capteurs de sol S7, S8.
V.4.1. Module d’évitement d’obstacles
Dans cette section, nous allons décrire les différentes étapes du contrôle flou pour
l’évitement d’obstacles (Fuzzification, Inférence flou et Déffuzzyfication).
Fuzzyfication des données d’entrée
Il s’agit de la fuzzyfication des distances : dG, dMG, dF, dmd et dD.
Le même modèle de fuzzyfication sera donné aux différentes distances mesurées par les
capteurs. Les distances sont représentées par la variable proxy_horizontal. Des fonctions
d’appartenances (prés (P)-loin (l)) ont été fixées après plusieurs tests et expérimentations.
S4
S3
S2
S1
S0
S6 S5
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
69
Figure V.8. Représentation des sous ensembles flous de la distance
Cette figure représente la quantification des distances mesurées par les différents
capteurs.
Fuzzyfication des données de sortie
Il s’agit de la fuzzyfication de la vitesse des roues droite et gauche motor_right _target
et motor_left _target. La première valeur correspond à la roue gauche et la deuxième
à la roue droite. Les valeurs peuvent aller de -500 à 500. Une valeur de 500 correspond
à une vitesse linéaire de 20 cm/s.
Figure V.9. Représentation des sous-ensembles flous de la sortie motor-target
La variation de la vitesse motor_right_target et motor_left_target sont décrites par trois
sous-ensembles: Dacc (diminuer la vitesse), Zacc (pas de changement de vitesse) et Acce
(augmenter la vitesse).
Inférence floue
Cette étape, concerne l’élaboration des règles, pour définir le comportement attendu du
robot selon ses paramètres intrinsèques. Pour chacune des combinaisons des valeurs des
variables d’entrée, une action sur les variables de sortie lui est associée.
Près Loin
1
Degré
d'appartenance
0 04 08 12 prox_horizontal (unités) cm
-20 0 20 (cm/s)
Dacc Zacc Acce
1
Degrés d’appartenance
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
70
Selon le degré d’appartenance des différentes distances de capteurs, nous allons
commander le robot par le contrôle des vitesses : motor_right_target et
motor_left_target.
Pour le robot, Nous pouvons définir les situations suivantes :
Tableau V.1. Les huit situations d’évitement d’obstacles.
Pour chaque situation, nous définissons un ensemble de règles selon les distances
d’obstacles, nous avons huit cas de situation.
Situation1 : « Evite prés devant »
On arrête le mouvement de translation du robot et on demande soit :
Une rotation à droite.
Une rotation à gauche
Une rotation d’un demi-tour.
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
71
dG
dMG
dF
dMD
dD
alors
Action
SI
L
L
P
L
L
Tourner à droit
Motor_left_target 200
Motor_right_target -200
ou
Tourner à gauche
Motor_left_target -200
Motor_right_target 200
ou
Demi tour
Motor_left_target -200
Motor_right_target -200
Situation 2 : « Evite prés gauche »
Pas de consigne pour la vitesse de translation et on demande soit :
Tourner à droite.
Pas de changement
dG
dMG
dF
dMD
dD
alors
Action
SI
P
L
L
L
L Tourner à droite
L P L L L Motor_left_target 200
P P L L L Motor_right_target -200
Situation 3 : « Evite près droit »
Une rotation vers la gauche.
Pas de changement
dG
dMG
dF
dMD
dD
alors
Action
SI
L
L
L
P
L Tourner à gauche
L L L L P Motor_left_target -200
L L L P P Motor_right_target 200
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
72
Situation 4 : « Couloir »
Pas de changement pour les consignes d’actionnaires
dG
dMG
dF
dMG
dD
alors
Action
SI
L
P
L
L
P
avancer
L P L P L
L P L P P
P L L L P
P L L P L
P L L P P
P P L L P
P P L P L Motor_left_target 200
P P L P P Motor_right_target 200
Situation 5 : « blocage »
On arrête le mouvement de translation du robot et on demande au robot de faire un demi
tour.
dG
dMG
dF
dMD
dD
alors
Action
L
P
P
P
L
Demi tour P L P L P
P L P P P
P P P L P Motor_left_target -200
P P P P P Motor_right_target -200
Situation 6 : « Coin gauche »
On arrête le mouvement et on demande soit :
Une rotation à droite.
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
73
dG
dMG
dF
dMD
dD
alors
Action
L
P
P
L
L
Tourner à droite P L P L L
P P P L L
P L P P L Motor_left_target 200
P P P P L Motor_right_target -200
Situation 7 : « Coin droit »
On arrête le mouvement et on demande soit :
Une rotation à gauche.
dG
dMG
dF
dMD
dD
alors
Action
L
L
P
L
P
Tourner à gauche L L P P L
L L P P P
L P P L L Motor_left_target -200
L P P P P Motor_right_target 200
Situation 8 :
Le robot continue son trajet.
dG
dMG dF dMD dD
alors
Action
SI
L
L
L
L
L
avancer
Motor_left_target 200
Motor_right_target 200
La défuzzyfication
Après avoir mis en place les fonctions d’appartenance et établi les règles d’inférence
définissant le comportement du contrôleur, nous passons à l’étape défuzzyfication. Elle
permet de transformer les valeurs de commande du domaine flou vers le domaine réel
(variables physiques).
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
74
V.4.2. Module d’agrégation
L’objectif de ce module est de faire arrêter le robot à la zone limite de l’espace de
configuration. Pour définir ces bords, nous avons utilisé une autre couleur (couleur noire)
assez différente en intensité lumineuse de la couleur de l’intérieur de l’environnement.
Ainsi les capteurs de sol du robot Thymio peuvent les détecter facilement. Les variables
mesurées par ces capteurs de sol sont :
1. prox.ground.ambiant : intensité lumineuse ambiante au sol, varie entre 0 (pas de
lumière) et 1023 (lumière maximale)
2. prox.ground.reflected : quantité de lumière reçue pendant que le capteur émet de
l'infrarouge, varie entre 0 (aucune réflexion) et 1023 (lumière maximale)
3. prox.ground.delta : différence entre la lumière réfléchie et la lumière ambiante, liée
à la distance et à la couleur du sol.
Figure V. 10. Représentation des sous ensembles flou de la lumière réfléchie par le sol
La variation de la lumière réfléchie par le sol est décrite par deux sous-ensembles: Au
bord et intérieur.
V.5. Expérimentations et résultats
Dans cette section, nous allons procéder à l’évaluation de l’approche adaptée par
l’expérimentation sur un ensemble de robots Thymio II (4 robots).
La figure V.11 montre l’environnement d’expérimentation
800 1023 lumière réfléchie par le sol
Au
bord
Interieur
Degré
d’appartenance
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
75
Figure V.11. Environnement de Thymio II
Les scènes de l’expérimentation sont filmées par plusieurs caméras fixées et
chronomètrées. Nous montrons plusieurs cas d’expérimentations sur des
environnements plus au moins complexes pour valider l’approche proposée (figures
V.12-V.15 ).
Dans cette figure le robot va choisir de tourner à gauche ou à droite.
Figure V.12. Navigation et évitement d’obstacle dans un environment 1.
Robot
Thymio
Bords de
l’environnement
Obstacles
Espace de navigation
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
76
Figure V.13. Navigation et évitement d’obstacle dans un environment 2.
Le robot a détecté deux obstacles de son coté gauche et son coté droit, il termine son
chemin (couloir).
Figure V.14. Navigation, évitement d’obstacle dans l’environment 3.
Figure V.15. Navigation et évitement d’obstacle dans l’environnement 4.
La figure V.15 est constituée de quatre robots, chaque robot évite les obstacles statiques
et les autres robots.
Les traits en couleurs représentent les traces d’évolution des robots.
Chapitre V La navigation autonome d’un groupe de robots
mobiles Thymio II
77
Pour les différents cas expérimentés, nous avons constaté que l’approche proposée est
valide et éfficace. Le robot ThymioII arrive à naviguer toujours de façon très fléxible et
sécurisé en évitant les différents obstacles statiques et dynamiques rencontrés et
s’arréter au bord de l’environnement.
V.6. Conclusion
Le problème de navigation des robots mobile dans un environnement incertain, est un
des plus importants et récents problèmes de la robotique mobile. Plusieurs recherches
ont été faites pour résoudre ce problème, Dans ce travail, nous avons présenté une
solution à ce problème par le développement d’un contrôleur de navigation flou dédié
pour des robots bon marché tel que Thymio II sous l’environnement Aseba. Les
résultats d’expérimentation obtenus sont satisfaisants et valident l’approche proposée du
fait que le robot navigue de façon autonome et sécurisée malgré la complexité de
l’environnement [Bou et al 14a].
Conclusion Générale
Conclusion Générale
78
Conclusion générale
Nos travaux de recherches traitent la problématique de la navigation autonome
des robots mobiles dans des environnements dynamiques et incertains. Ce cadre
est défini par les spécificités des systèmes considérés et des applications
envisagées, que nous pouvons résumer par la navigation pour robot mobiles à
proximité des obstacles.
Dans le cadre de cette problématique, notre travail de thèse se résume à travers
les aspects suivants :
Tout d’abord, nous nous sommes intéressées à l’état de l’art de la
robotique mobile, ses problématiques et les solutions apportées
actuelles, nous vous avons présenté également un panorama des
architectures de contrôle dont la portée va au delà de leur
application en robotique mobile.
Ensuite, le troisième chapitre traite le problème de la navigation
ainsi qu’un panorama des stratégies d’évitement d’obstacles
existant dans le monde de la robotique mobile.
Dans le chapitre suivant, nous avons présenté notre architecture
de contrôle pour une navigation autonome d’un robot mobile en
évitant les obstacles de différentes formes en utilisant la méthode
des cycles limites et la logique floue.
Dans le cinquième chapitre, nous avons expérimenté notre
contrôleur flou sur un robot réel Thymio II afin de valider
l’approche proposée.
CONTRIBUTIONS
Nos contributions portent sur le développement de nouvelles méthodes inspirées
de l’intelligence artificielle permettant de résoudre certaines de ces
fonctionnalités et assurant une navigation optimisée avec un évitement
d’obstacles en toute sécurité quelque soit ses formes.
nous avons développé et implémenté des architectures de contrôle
comportementales, basées sur un contrôle flou, permettant à chaque
étape de navigation de sélectionner le comportement adéquat à exécuter
par le robot mobile afin d’atteindre la configuration désirée. Ces
architectures de contrôle ont été testées avec succès sur différentes
configurations de la cible et des robots ainsi que sur plusieurs
environnements distincts. Les robots arrivent toujours à atteindre la cible
en évitant les obstacles. Les architectures de contrôle développées
présentent aussi l’avantage d’être robustes, de par leur cotés réactifs et
de par leur conception modulaire.
Conclusion Générale
79
Pour optimiser la trajectoire du robot mobile lors de sa navigation
(choisir le plus court chemin), nous avons ajouté au contrôleur flou un
module d’optimisation basé sur des métaheuristiques à recherche locale
et à recherche globale : recherche taboue [Bou et al 07] et algorithme de
colonie de fourmis respectivement. Nous avons privilégié, par rapport à
l'ensemble des méthodes d’apprentissage et d'optimisation possibles, le
recours à des méthodes basées sur la minimisation d'une fonction de
coût. Ceci est dans l'objectif que l'étape d'optimisation est d'obtenir la
meilleure commande possible du processus en s'imposant la contrainte
que cette optimisation ne détruise pas la lisibilité et la cohérence logique
des règles d’inférence.
Une nouvelle méthode d’évitement réactif d’obstacles pour des systèmes
robotiques non-holonomes a été proposée et développée. Cette méthode
est inspirée de la méthode des cycles- limites développé par [Kim 03],
[Ado 09]. Dans sa version de base, cette méthode prend en considération
seulement les obstacles de formes circulaires. Dans notre version de
cycles-limites [Bou et al 14b], nous pouvons considérer n’importe quelle
forme. Malgré ces améliorations cette méthode présente des oscillations
de mouvement lors de l’évitement. Pour pallier à ce problème, nous
avons hybridé cette méthode avec un contrôleur flou permettant de
réduire le nombre de ces oscillations et rendre la trajectoire plus souple.
Les résultats trouvés par cette nouvelle approche hybride : cycles-limites
floue prouve la performance de la logique floue dans la régulation et
l’évitement d’obstacle.
Nous avons présenté une solution au problème de navigation et
évitement d’obstacles par le développement d’un contrôleur de
navigation flou dédié pour des robots bon marché tel que Thymio II sous
l’environnement Aseba évoluant dans des environnements variés [Bou et
al 14a]. Les résultats d’expérimentation obtenus sont satisfaisants et
valident l’approche proposée du fait que le robot navigue de façon
autonome et sécurisée malgré la complexité de l’environnement. Ces
résultats montrent la maturité du contrôle proposé et sa capacité à
résoudre des problèmes réels.
Tous ces contributions ont été valorisé par des publications dans des journaux à
commuté de lecture et communications internationaux. La figure suivante
résume l’ensemble de ces travaux.
Conclusion Générale
80
Figure.1. Résumé des contributions et travaux
Architecture de contrôle
floue pour navigation et
évitement d’obstacle :
Rencontre francophones
sur la logique floue et ses
applications, Nîmes ,22-
23 novembre 2007
LFA’07
Contrôleur flou pour la
navigation autonome d’un
groupe de robots mobile Thymio
II :
International Conference on
Intelligent Information and
Network Technology, settat
Morocco, Novembre 2013.
Contrôleur flou pour la
navigation autonome d’un
groupe de robots mobile
Thymio II :
International journal
Technologies in web
Intelligence, Volume 6,
Number 1, February 2014.
L’hybridation de la
méthode des cycles limites
et la logique floue pour
une navigation autonome
d’un robot mobile :
International Journal
Intelligent Systems and
Applications, Volume 6,
Number 7, Juin 2014.
Contrôleur flou pour le
problème de parking d’un
groupe de robots et mobile
Thymio II :
2014 2nd International
Conference on Electronics
Engineering and
Technology, Dubai.UAE.
Certificat pour meilleure
présentation :
2014 2nd International
Conference on Electronics
Engineering and Technology,
Dubai.UAE
Conclusion Générale
81
Perspectives
Plusieurs perspectives sont envisageables suite à nos travaux. Ces pers sont
résumées par les points suivants : résume l’ensemble de ces perspectives:
Figure.2. Résumé des travaux futurs
Navigation et Evitement d’obstacle
Expérimenter les approches d’évitement d’obstacle et
de navigation sur des robots réels tels que Khépéra ou
Pioneer.
Etudier la stabilité d'un système robot-cycles-limites
dans différents contexte de navigation.
Utilisation de la méthode des cycles-limites pour un
groupe de robots mobiles dans un environnement
incertain et dynamique.
Application
Envisager les robots mobiles Thymio II dans d’autres
applications tels que les problèmes de manipulation
des objets, le tri, la surveillance, distribution
courrier...etc.
Robotique en Essaim
Etudier le déplacement en formation d’un groupe de
robots mobiles de type Thymio II dans un
environnement contraint par un contrôleur flou hybridé
avec des approches de l’intelligence en essaim.
Annexes
Annexes
82
Annexe A
La logique floue
A.1. logique floue
La théorie classique des ensembles et la logique classique ont montré leur
incapacité à modéliser les notions vagues du langage naturel qui arrive à décrire
parfaitement le monde réel qui lui-même est d'essence imprécise et incertaine.
La logique floue est définie comme un formalisme permettant de construire une
transformation continue entre un espace d’entrée et un espace de sortie à l’aide
de connaissances fournies par le concepteur et exprimées sous formes de règles.
La transformation obtenue peut être facilement éditée, modifiée localement ou
non, offrant ainsi une grande souplesse pour la mise au point. Mais il n’existe
pas de principe général permettant de déterminer les règles à partir du problème
[Rei 94].
A.2. Concepts de la logique floue
A.2.1. Les variables floues
Contrairement aux variables binaires qui sont définies par les deux états
« vrai » ou « faux », les variables floues présentent toute une graduation
entre ces deux valeurs. D‘une part, on préfère représenter l‘état de la
variable à l‘aide de son degré de vérité en associant la valeur 1 (degré de
vérité de 100%) à la valeur « vrai » et le degré de vérité nul à la valeur « faux ».
D‘autre part, on constate que cette façon de faire est très éloignée de ce que
fait l‘être humain lorsqu‘il résout ce genre de problème. En effet,
l‘homme ne fait pas naturellement une distinction franche entre « petit » et «
moyen » par exemple. Il utilise des expressions du genre « plutôt petit »
[Oua 06].
A.2.2. Les ensembles flous
La notion d'ensembles flous, telle qu'elle a été présentée par Lofti Zadeh [Mam
77], est une extension de la notion classique d'ensembles. Son but est de
permettre de capturer l'imprécision des données et des concepts nous entourant.
Par exemple, on n'apprend pas à une personne à conduire en lui disant :
"commence à freiner 12 mètres avant l'intersection " mais plutôt en lui disant :
"commence à freiner lorsque tu seras proche de l'intersection ".
Annexes
83
A.2.3. Variables linguistiques
Une variable linguistique est caractérisée par le quintuple (X; T(x); S; G; M).
X : représente le nom de la variable (par exemple, la température).
T(x) : représente l'ensemble des noms des valeurs linguistiques pouvant être
prises par x.
Chacune de ces valeurs linguistiques est un nombre ou sur S. Par exemple,
toujours dans le cas de la température, on peut avoir T (température) = {très
froid, froid, plus ou moins froid, tiède, chaud, très chaud, …} La figure A.1
illustre les différentes fonctions d'appartenance associées. G est une règle
permettant d'associer un nom à une valeur de x.
Figure A.1. Fonctions d'appartenance associées aux différents nombres flous
permettant de décrire la variable linguistique température.
A.2.3. Règles d’inférence
On appelle règles d’inférence l’ensemble des différentes règles reliant les
variables floues d’entrée d’un système aux variables floues de sortie de ce
système. Ces règles se présentent sous la forme :
Si (condition 1) et/ou (condition 2) et/ou …(condition N) alors (action sur
les sorties).
En termes d’intelligence artificielle, ces règles résument en fait l’expérience de
l’expert et elles ne sont en général pas définissables de façon unique puisque
chaque individu crée ses propres règles [Oua 06].
A.3. Le contrôle flou
Le contrôle flou tire son nom des applications de contrôle ou de commande en
automatique, mais il déborde maintenant ce cadre par ses multiples applications,
partout où une modélisation mathématique est difficile. Le principe de
Annexes
84
l’algorithme de ce contrôle est très simple, il consiste à réaliser une
« interpolation » entre un petit nombre de situations connues données par un
expert sous la forme de règles floues. La mise au point des prédicats évoqués
par ces règles se fait généralement de façon empirique, mais de plus en plus,
différents méthodes d’apprentissage ont été appliquées dans le but d’avoir des
systèmes de contrôle adaptatifs [Gac 97].
Le schéma général d’un contrôleur est donné par la figure A.2. Nous allons
décrire chaque composant.
Figure A.2. Architecture générale d'un contrôleur flou.
A.3.1. Fuzzyfication - Module de codage
Les systèmes à logique floue traitent de variables d’entrées floues et fournissent
de résultats sur des variables de sorties elles-mêmes floues. La fuzzyfication est
l’étape qui consiste en la quantification floue des valeurs réelles d’une variable.
Le module de codage a pour rôle de transformer des données numériques
provenant des capteurs en ensembles flous pouvant être manipulés par le
contrôleur. Par conséquent, il est nécessaire de transformer les variables non
floues provenant du mode extérieur en des sous-ensembles flous.
A.3.2. Raisonnement flou – Module d’inférence
Le module d’inférence représente le cœur du contrôleur flou. Il contient le
mécanisme d'inférence permettant, à partir des données provenant du module de
fuzzyfication et des règles contenues dans la base de connaissances, de calculer
les commandes devant être envoyées (via le module de défuzzyfication ) au
système à contrôler.
Base de connaissances
Floue
Moteur d’inférences
flou
Entrées non floues
Sorties non floues
Fuzzyfication
Interface
Non flou / flou
Interface
Flou / Non flou
Défuzzyfication Raisonnement flou
Annexes
85
Les règles d’inférence doivent être définies par le concepteur de système de
réglage en fonction de son expérience (rôle d’expert) et mémorisées dans
l’organe de commande.
A.3.3. Défuzzyfication – Module de décodage
La défuzzyfication consiste à décoder les résultats fournis afin de les envoyer
vers le système à contrôler. Le rôle de ce décodage est de transformer un
ensemble ou un résultat de l'évaluation des règles en un nombre réel
représentant le mieux la distribution de possibilité induite par cet ensemble
c'est-à-dire convertir cette information en une grandeur physique. On distingue
trois grandes méthodes :
Défuzzyfication par calcul du centre de gravité.
Défuzzyfication par valeur du maximum.
Défuzzyfication par la moyenne des maxima.
Annexes
86
Annexe B
Recherche Taboue et Algorithme des Colonies
de Fourmis
B.1. Principe général de la recherche taboue
La méthode de recherche taboue (RT) est une technique adaptative efficace
introduite dans les années 70 en optimisation combinatoire pour résoudre les
problèmes difficiles. Elle est considérée comme une approche métaheuristique,
qui peut être utilisée pour résoudre différents types de problèmes [Glo 89] [Glo
93].
Présentons dans un premier temps l’algorithme de descente simple : Il part
d’une solution initiale S qu’il essaie d’améliorer de manière itérative. Pour cela,
il génère à chaque étape un sous ensemble V du voisinage N(S) de la solution
courante. Ensuite, il choisit dans cet ensemble V la meilleure solution, c'est-à-
dire celle qui minimise la fonction objectif sur V. Cette dernière solution
devient la solution courante et l’algorithme continu jusqu’au moment où aucun
élément de V ne permet d’avoir une meilleure valeur de la fonction objectif [Pie
04].
La méthode de recherche taboue est une amélioration de l'algorithme général de
descente. Elle essaie principalement d'éviter le piège des minima locaux. Pour
cela, il est nécessaire d'accepter de temps en temps des solutions qui
n'améliorent pas la fonction « objectif », en espérant ainsi parvenir plus tard à
de meilleures solutions. Cependant, le fait de vouloir accepter des solutions non
forcément meilleures introduit un risque de cycle, c'est- à -dire un retour vers
des solutions déjà explorées. D'ou l'idée de conserver une liste taboue T (tabu
list) des solutions déjà visitées. Ainsi, lors de la génération de l'ensemble des
solutions voisines candidates, on enlève toutes les solutions appartenant à la
liste taboue. Notons tout de même que, d'une part, le stockage de toutes les
solutions déjà visitées peut nécessiter beaucoup de mémoire et que, d'autre part,
il peut s'avérer utile de revenir à une solution déjà visitée pour continuer la
Annexes
87
recherche dans une autre solution. Un compromis a été adopté en ne gardant
dans la liste taboue que les dernières solutions. L'algorithme s'arrête quand
aucune amélioration n'est intervenue depuis un certain nombre d'itérations ou si
toutes les solutions voisines candidates sont taboues.
La démarche adoptée consiste globalement à modifier itérativement une
solution initiale en espérant aboutir à une solution finale respectant les
contraintes du problème [Pie 02] [Vas 96]. La figure suivante présente
l’algorithme général de la recherche taboue
Figure B.1. Algorithme de la recherche taboue
B.2. Principe général des algorithmes de colonies de fourmis
Les sociétés d’insectes ont une capacité à résoudre des problèmes d’une manière
très flexible (la colonie s’adapte aux brusques changements d’environnement) et
robuste (la colonie continue de fonctionner lorsque certains individus échouent
à accomplir leur tâche). Les problèmes quotidiens résolus par une colonie sont
nombreux et de nature très variée : recherche de nourriture, construction du nid,
division du travail et allocation des tâches entre les individus, etc. La plupart de
ces problèmes se retrouvent dans le domaine des sciences de l’ingénieur.
Annexes
88
Figure .B.2. Comportement collectif des fourmis
Les informaticiens et les ingénieurs ont pu transformer des modèles du
comportement collectif des insectes sociaux en méthodes utiles pour
l’optimisation et le contrôle. Un nouveau domaine de recherche a vu le jour qui
a pour objet la résolution de problèmes sociaux des insectes en techniques
artificielles de résolution de problèmes : c’est l’intelligence en essaim. Parmi les
techniques de l’intelligence en essaim, certaines sont arrivées à maturité. Les
algorithmes de contrôle et d’optimisation inspirés de modèles de recherche
collective de nourriture chez les fourmis en particulier, ont connu un succès
inattendu et portent le nom d’optimisation par colonie de fourmis » et de «
routage par colonie de fourmis ».
Les colonies de fourmis sont des systèmes distribués qui, malgré la simplicité de
leurs individus, présentent une véritable organisation sociale structurée. Comme
résultat de cette organisation, les colonies de fourmis peuvent accomplir des
taches complexes qui, dans certain cas, dépassent la capacité individuelle d’une
simple fourmi.
Plusieurs aspects du comportement des colonies de fourmi ont inspiré des types
différents d'algorithmes de fourmi. Les exemples sont le fourrage, le partage des
travaux, la reproduction des espèces, et le transport coopératif. Dans tous ces
exemples, les fourmis coordonnent leurs activités à travers une forme de
communication indirecte par des modifications de l'environnement appelée
‘stigmergie’(stigmergy en anglais) [Col 91]. Par exemple, la fourmi dépose un
produit chimique sur la terre qui augmente la probabilité que d'autres fourmis
Annexes
89
suivront le même chemin. Les biologistes ont vu que la majorité des
comportements des niveaux de colonies observés dans les insectes sociaux
peuvent être expliqués par des modèles plutôt simples formés que de
communication stigmergique. Ce comportement collectif, basé sur une sorte de
mémoire partagée entre tous les individus de la colonie, peut être adapté et
utilisé pour la résolution de problèmes d’optimisation combinatoire ou de
satisfaction de contraintes. Ces problèmes sont alors encodés comme des
problèmes de recherche d’un chemin optimal dans un graphe. L'idée derrière
des algorithmes de fourmi est alors d’employer une forme de stigmergie
artificiel pour coordonner des sociétés d’agents d'artificiels.
Les recherches sur le comportement des fourmis ont révélé que la majeure
partie de la communication entre les individus, ou entre les individus et
l'environnement, est basée sur l'utilisation de substances chimiques produites
par les fourmis. Ces substances s'appellent les phéromones. C'est différent, par
exemple, de ce qui se produit chez l'homme et d’autre espèces plus grandes,
dont les sens les plus importants sont visuels ou acoustiques. Particulièrement
important pour la vie sociale de certaines espèces de fourmi est le phéromone
de traînée (trail pheromone). La phéromone de traînée est un type spécifique de
phéromone que quelques espèces de fourmi, telles que Lasius niger ou les
fourmis de l’Argentine humilis d'Iridomyrmex, l’utilise pour marquer des
chemins sur la terre. Par la sensation de la phéromone de traînée, les fourmis
peuvent suivre le chemin à la nourriture découverte par les autres fourmis [Col
91] [Dor 99a] [Dor 99b].
Cette nouvelle méta-heuristique imite le comportement de fourmis cherchant de
la nourriture. A chaque fois qu'une fourmi se déplace, elle laisse sur la trace de
son passage une odeur (la phéromone). Comme la fourmi est rarement une
exploratrice isolée, avec plusieurs de ses congénères, elle explore une région en
quête de nourriture. Face à un obstacle, le groupe des fourmis explore les deux
côtés de l'obstacle et se retrouvent, puis elles reviennent au nid avec de la
nourriture. Les autres fourmis qui veulent obtenir de la nourriture, elles aussi
vont emprunter le même chemin. Si celui-ci se sépare face à l'obstacle, les
fourmis vont alors emprunter préférablement le chemin sur lequel la phéromone
sera la plus forte.
Annexes
90
Mais la phéromone est une odeur qui s'évapore. Si peu de fourmis empruntent
une trace, il est possible que ce chemin ne soit plus valable au bout d'un
moment, il en est de même si des fourmis exploratrices empruntent un chemin
plus long (pour le contournement de l'obstacle par exemple). Par contre, si le
chemin est fortement emprunté, chaque nouvelle fourmi qui passe redépose un
peu de phéromone et renforce ainsi la trace, donnant alors à ce chemin une plus
grande probabilité d'être emprunter. Même si le principe est simple, des
difficultés peuvent apparaître comme, la quantité de phéromone à déposer, le
coefficient d'évaporation, la définition du choix biaisé, etc [Col 91] [Dor 99b]
[Dor 03].
Figure B.3. Détermination du plus court chemin par une colonie de fourmis
Le principe général est résumé par l’algorithme suivant :
Les techniques d’optimisation issues des colonies de fourmis (Ant Colony
Optimization ou ACO en anglais) ont été appliquées à divers problèmes
1. Initialiser la nourriture aux positions des individus de l’échantillon d’apprentissage
2. Tant qu’il reste de la nourriture :
a. Pour chaque fourmi faire :
i. Absorber une partie de la nourriture et calculer la quantité de phéromone
déposée par la fourmi
b. Pour chaque position faire :
i. Calculer l’évaporation des phéromones
ii. Calculer la diffusion des phéromones sur les positions adjacentes
Annexes
91
d’optimisation comme la coloration de graphes [Cos 97] et le problème du
voyageur de commerce [Col 91] [Dor 97]. Les travaux sur les problèmes de
tournées sont plus récents et ne concernent que les tournées sur les nœuds d’un
réseau [Bul 99] [Rei 02]. Gutjahr [Gut 00] a prouvé la convergence en
probabilité de certains types d’algorithmes à fourmis, propriété connue pour le
recuit simulé et les algorithmes génétiques.
Références Bibliographique
Références Bibliographique
92
[Aco 97] L. Acogne, Eléments de logique floue. Edition Hermes, Paris, 1997.
[Ado 05] L. Adouane, Architecture de contrôle comportementale et
réactive pour la coopération d’un groupe de robots mobiles.
Thèse de doctorat, Laboratoire d’automatique de Besançon
UMR (CNRS 6589) France, Avril 2005.
[Ado 09] L. Adouane. Orbital obstacle avoidance algorithm for reliable
and on-line mobile robot navigation. 9th Conference on
Autonomous Robot Systems and Competitions, Portugal, May
2009.
[Ado 06] L. Adouane and N. Le Fort-Piat, Behavioral and distributed
control architecture of control for minimalist mobile robots,
Journal Européen des Systèmes Automatisés, vol. 40, no. 2, pp.
pp.177–196, 2006.
[Ado 11] L. Adouane, and A. Benzerrouk, and P. Martinet. Mobile Robot
Navigation in cluttered Environment using Reactive illiptic
Trajectories, 18th IFAC World Congress, Milano-Italy, August
. 2011
[Ahu 94] J.M. Ahuactzin Larios. Le fil d’Ariane : une méthode de
planification générale. Application automatique de trajectoires.
Thèse de doctorat. Institut polytechnique de Grenoble. France,
1994.
[Amo et al 11] L. Amouri, C. Novales, M. Njah, M. Jallouli et G. Poisson,
DVZ-based Obstacle Avoidance Control of a Wheelchair
Mobile Robot. IEEE International Conference on Mechtronics
(ICM), Istambul, Turky, 2011.
[Ark 98] R.C.Arkin, Formation Behaviors, behavior-Base robotics, The
MIT Press. Cambridge, MA, USA, 1998.
[Arn 00] Pierre Arnaud, Des moutons et des robots : architecture de
contrôle réactive et déplacements collectifs de robots, PPUR
presses polytechnique, 2000.
[Ayc 98] O. Aycard, Architecture de contrôle pour robot mobile en
environnement intérieur structuré. Thèse de doctorat, université
Henri Poincaré-Nancy 1, LORIA, Nancy, Juin 1998.
[Bay 08] Bernard BAYLE, Robotique mobile, Thèse de doctorat, Ecole
Nationale Supérieure de Physique de Strasbourg, Université de
Strasbourg 2008.
[Bea 06] Éric Beaudry, Planification de tâches pour un robot mobile
autonome, Thèse de Maître de sciences, Université de
Sherbrooke, Québec, Canada. Août 2006.
Références Bibliographique
93
[Ben et al 10] A.Benzerrouk, L. Adouane, and P.Martinet, Lyapunov Global
Stability for a Reactive Mobile Robot Navigation in Presence of
Obstacles, ICRA'10 International Workshop on Robotics and
Intelligent Transportation System, Anchorage-Alaska, May 7,
2010
[Beo et al 95] H. R.Beom and A. Cho, Sensor-Based Navigation for a Mobile Robot Using Fuzzy Logic and Reinforcement Learning, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 25, No. 3, March 1995.
[Bon 03] D. Bonnafous, Exécution réactive de trajectoires pour robots
mobiles non-holonomes. Thèse de doctorat. Institut National
Polytechnique de Toulouse, Systèmes Automatiques. France,
2003.
[Bou et al 07] F.Boufera, F.Debbat, M.F.Khelfi, apprentissage d’inférence
flou par la recherché taboue: Application à la robotique mobile.
LFA 2007. rencontres francophones sur la logique floue et ses
applications Nimes , Cépaduès éditions, France 22 et 23
novembre 2007.
[Bou et al 2014a] F.Boufera, F.Debbat, Francesco Mondada, M.F.Khelfi, Fuzzy
Control System for Autonomous Navigation of Thymio II Mobile
Robots, IJETWI International journal Technologies in web
Intelligence, Volume 6, Number 1, pp 101-105, February 2014.
[Bou et al 2014b] F.Boufera, F.Debbat, L.Adouane, M.F.Khelfi, Mobile Robot
Navigation using Fuzzy Limit-Cycles in Cluttered Environment,
IJISA, International Journal Intelligent Systems and
Applications, Volume 6, Number 7,pp12-21 , Juin 2014.
[Bro 86] R.A Brooks, A robust layered control system for a mobile robot.
IEEE Journal of Robotics and Automation, Vol. 2, No.1, pp 14–
23, 1986.
[Buh 94] H.Buhler. Réglage par la logique floue .Presses, polytechniques
et universitaires Romandes, 1994.
[Bul 99] B.Bullnheimer, R.F. Hartl et C. Strauss. Applying the ant
systems to the vehicle routing problem. S. Voss, S. Martello,
I.H. Osman et C. Roucairol, Meta-Heuristics: Advances and
Trends in Local Search Paradigms for Optimization, Kluwer.
1999.
[Cas et al 96] G. Castellano. G. Attolico, E. Stella. Automatic generation of rules for a fuzzy robotic controller, IEEE International Conference on Intelligent Robots and Systems, Vol. 3, pp. 1179-1186, 1996.
Références Bibliographique
94
[Col 91] A. Colorni, M.Dorigo, V.Maniezzo, Distributed Optimization by Ant Colonies. Proceedings of ECAL’91 - European Conference on Artificial Life. Elsevier Publishing, Paris pp 134–142, december 1991
[Cos 97] D. Costa et A. Hertz. Ants can colour graphs, JORS, 48(3), pp. 295-305. 1997.
[Cza et al 95] C.Czarneki, R.John and S.Bennett, The Application of Fuzzy Logic to Real Time Multiple Robot Collision Avoidance, the ICSC International conference of Fuzzy Logic Symposium, pp. C116-C121.Zurich, 1995
[Dal 01] A.Dalgalarrondo. Intégration de la fonction perception dans une
architecture de contrôle de robot mobile autonome. Thèse
doctorat, université de paris sud centre d’ORSAY. France, 2001.
[Dor 91] M. Dorigo, V. Maniezzo, and A. Colorni. The Ant System: An
autocatalytic optimizing process. Technical Report 91-016
Revised. Dipartimento di Elettronica, Politecnico di Milano.
Italy, 1991.
[Dor 01] M. Dorigo. Ant Algorithms Solve Difficult Optimization
Problems. In J. Kelemen, editor, Advances in Artificial Life, 6th
European Conference ECAL 2001, volume 2159, pp 11-22.
Springer, Berlin, Germany, 2001.
[Dor 02] M. Dorigo and L. M. Gambardella. Guest editorial special on
ant colony optimization. IEEE Transactions on evolutionary
computation, vol 6 N° 4, pp 317–319, 2002.
[Dor 04] M. Dorigo, T.Stützle. Ant colony optimization. Cambridge, MA:
MIT Press. 2004.
[Dor 03] M..Dorigo, and t.Stützle, ” Handbook of Metaheuristics, chapter
The ant colony optimization metaheuristique: algorithms,
applications, and advances ”. Kluwer. 2003.
[Dor 97] M.Dorigo et L.M. Gambardella. Ant Colony System: a
cooperative leaning approach to the Travelling Salesman
Problem, IEEE Transactions on Evolutionary Computation,
1(1), pp. 53-66. 1997.
[Dor 99a] M. Dorigo et G. Di Caro. The ant colony optimization meta-
heuristic. New Ideas in Optimization, pp 11.32, London, 1999.
[Dor 99b] M. Dorigo, G. Di Caro, et L.M. Gambardella. Ant algorithms
for discrete optimization, Arti_cial Life, 5 :137.172, 1999.
[Fay et al 99] C.Fayad and P. Webb Optimized fuzzy Logic based on algorithm for a mobile robot collision avoidance in an unknown environment. The 7th European Congress on Intelligent Techniques and Soft Computing, Aachen, Germany. 1999.
Références Bibliographique
95
[Fil 01] D. Filliat, Cartographie et estimation globale de la position
pour un robot mobile autonome, Thèse de doctorat de
l’universuté Paris 6 Pierre et Marie Curie. 2001
[Gia 06] F. Giamarchi. Petits robots mobiles. Edition Dunod, 2006.
[Glo 93] F.Glover, A user’s guide to tabu search. Annals of Operations
Research, 41, n° 3, pp. 3-28, 1993.
[Glo 89] ] F. Glover, Tabu search part I. ORSA Journal on Computing,
Vol. 1, pp.190–206, 1989.
[Hai 03] B. Haibe-Kains, Apprentissage d’une Tâche de Contrôlepour un
Robot Mobile en LEGO Mindstorms. Thèse de doctorat,
université libre de Bruxellex, 2003.
[Hol 75] J.h.Holland, adaptation in naturel and artificial systems, mit
press, 1975.
[Kha et al 97] Khatib M. and H. Jaouni, R. Chatila& J.P. Laumond, Dynamic
Path Modi_cation for Car-Like Nonholonomic Mobile Robots.
IEEE International Conference on Robotics and Automation, pp
2920-2925. Albuquerque, USA, 1997.
[Kha 86] O. Khatib. Real-Time Obstacle Avoidance for Manipulators and
Mobile Robots. International Journal of Robotic Research
volume 5. pp 90-99, 1986.
[Kim 03] D. Kim & J. Kim. A real-time limit-cycle navigation method
for fast mobile robots and its application to robot soccer.
Robotics and Autonomous Systems, vol. 42, pp. 17 30, 2003.
[Hec 00] P. S. Heck and S. Ghosh. A study of synthetic creativity :
Behavior modeling and simulation of an ant colony. IEEE
Intelligent Systems, vol 15 pp 58–66, 2000.
[Hol et al 00]. Robert Holmberg, Oussama Khatib, development and control of
a holonomic mobile robot for mobile manipulation tasks,
International Journal of Robotics Research, vol. 19, N°11,
november 2000.
[Hos 00] R. Hoshyar, S. H. Jamali, and C. Locus. Ant colony algorithm
for finding good interleaving pattern in turbo codes. IEE Proc-
commun, vol 147N 5, pp 257–262, 2000.
[Hua 01] S.J. Huang. Enhancement of Hydroelectric Generation
Scheduling Using Ant Colony System based optimization
Approaches. IEEE Transactions on energy conversion, vol 16 N
3, pp 296–301, 2001.
[Lar 03] F.Large. Navigation autonome d’un robot mobile en
Références Bibliographique
96
environnement dynamique et incertain. Thèse de doctorat,
Institut National de recherche en informatique et en
automatique, Université de Savoie, 2003.
[Lat 99] J.-C. Latombe. Motion Planning: A Journey of Robots,
Molecules, Digital Actors, and Other Artifacts. The
International Journal of Robotics Research, vol 18, pp 1119-
1128, 1999.
[Lee et al 94] P. S. Lee, and Wang. Collision Avoidance by Fuzzy Logic
Control for Automated guided Vehicle Navigation, Journal of
Robotics Systems, Vol. 11 No.8, pp 743-760. 1994.
[Len 08] S. Lens. Locomotion d'un robot mobile. Thèse de doctorat,
Faculté des Sciences Appliquées, Université de Liege, 2008.
[Luc 03] P. Lucidarme. Apprentissage Et Adaptation Pour Des
Ensembles De Robots Réactifs Coopérants. Thèse de doctorat
Montpellier II , 2003.
[Mam 77] E.H.Mamdani. Application of Fuzzy Logic to Approximate
Reasoning Using Linguistic Synthesis. IEEE Transactions on
Computers, Vol 26, No 12. 1977
[Mat 92] Emmanuel Mazer, Juan-Manuel Ahuactzin, El-Ghazali Talbi,
Pierre Bessire. The Araidne’s clew algorithm. From Animals to
Animats, the Second International Conference on Simulation of
Adaptative Behavior (SAB92), Honolulu Hawa. Décembre
1992.
[Mat 93] Emmanuel Mazer, Juan-Manuel Ahuactzin, El-Ghazali Talbi,
Pierre Bessire. Robot motion planning with the Ariadne’s clew
algorithm. International Conference on Intelligent Autonomous
Systems, Pittsburgh PA USA, Février 1993.
[Mer 02] D.Merkle, M. Middendorf, and H. Schmeck. Ant colony
optimization for resource constrained project scheduling. IEEE
Transactions on Evolutionary Computation, vol 6 n°4, pp 333–
346, 2002.
[Mor 83] H. Moravec, Stanford card and the CMU rover, proceeding of
IEEE vol 71, N° 7, pp 872-884, juillet 1983.
[Oua 06] N. Ouadah, O. Azouaoui, M. Hamerlain. Implémentation d’un
Contrôleur Flou pour la Navigation d’un Robot Mobile de type
Voiture. Division Productique et Robotique. Centre de
Développement des Technologies Avancées. Alger, 2006.
[Par 02] R. S. Parpinelli, H. S. Lopes, and A. A. Freitas. Data mining
with an Ant Colony Optimization Algorithm. IEEE Transactions
on Evolutionary Computing, vol 6 N 4, pp 321–332, 2002.
Références Bibliographique
97
[Pie 02] S.Pierre, F.Houeto, Assigning Cells to Switches in Cellular
Mobile Networks Using Tabu Search. IEEE Transactions on
Systems, Man and Cybernetics : Part B (Cybernetics), 32 : Part
B, n° 3, pp. 229-239, June 2002.
[Pie 04] S. Pierre, A. Quintéro, A. Montgolfier, Approches heuristiques
pour l’affectation de cellules aux commutateurs dans les réseaux
mobile. IEEE Canadian Review, 2004.
[Rei 02] M.Reimann, M. Stummer et K. Doerner. A savings based Ant
System for the Vehicle Routing Probl, Proceedings of the
Genetic and Evolutionary Computation Conference (GECCO
2002), Morgan Kaufmann, New York, pp. 1317-1325. 2002.
[Rei 94] P. Reignier, Pilotage réactif d'un robot mobile étude du lien
entre la perception et l'action, Thèse de doctorat, Institut
national polytechnique de Grenoble, 1994.
[Ros 95] L. Nemes and T. Roska. A cnn model of oscillation and chaos in
ant colonies : a case study. IEEE Transactions on Circuits and
Systems : Fundamental Theory and Applications,vol 42 N 10 pp
741–745, 1995.
[Sem 04] F. Sempe, Auto-organisation d'une collectivité de robots
:Application à l'activité de patrouille en présence de
perturbations. Thèse de Doctorat de l'Université Pierre et Marie
Curie, Paris 6, 2004.
[Sim 03] K. M. Sim and W. H. Sun. Ant colony optimization for routing
and load-balancing : survey and new directions. IEEE
Transactions on Systems, Man, and Cybernetics-Part A :
Cybernetics, 33(5) :560–572, 2003.
[Sol 02] C. Solnon. Ants can solve constraint satisfaction problems.
IEEE Transactions on EvolutionaryComputing, 347-357(4) :11,
2002.
[Ste 95] L. Steels. When are robots inteligent autonomous agents?,
journal of robotics, Volume 15 pp 3-9, 1995.
[Teg 09] H. Teggar. Navigation coopérative d’un système multi-robots
dans un environnement dynamique et incertain. Mémoire de
magister, Université de Mascara, Algérie, Juin 2009.
[Tig 96] Y. Tigli, Vers une Architecture de contrôle pour Robot Mobile
orientée Comportement, SMACH. PhD thesis, Université de
Nice - Sophia Antipolis, 1996.
[Tru 07] O. Trullier et J. A. Meyer, Biomimetic navigation models and
strategies in animat. AI Communications, vol. 10, pp. 79–92,
Références Bibliographique
98
1997.
[Vas 96] J. A.Vasconcelos, L.Krahenbuhl, A.Nicolas, Simulated
annealing coupled with the tabu search method for continuum
optimization in electromagnetics. IEEE Trans. Magnetics, 32,
pp. 1206-1209, 1996.
[web1] http://ros.org/wiki/thymio_navigation_driver
[Web2] https://aseba.wikidot.com/fr:thymio
[Wij et al 01] W.S. Wijesoma, P.P Khaw. and E.K.Teak. Sensor modelling
and fusion for fuzzy navigation of an AGV .International journal
of robotic and automation, Vol 16, N 1, pp 14-25, 2001.