Upload
dr-chebloune-habib
View
816
Download
3
Embed Size (px)
Citation preview
Présenté par
Melle BABA Nawel,
Mmme DJAMAI Hayet
M. LAOUFI Mourad
Encadré par: Mr CHEBLOUNE Habib
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE
CHAMBRE DE COMMERCE
BECHAR
Mémoire de fin d’études pour l’obtention du diplôme d’ingénieur d’application en
informatique de gestion
TTHHEEMMEE
PPllaanniiffiiccaattiioonn ddee llaa ttrraajjeeccttooiirree dd’’uunn rroobboott mmoobbiillee ppaarr llaa llooggiiqquuee fflloouuee
Promotion : 2008 - 2010
C'est grâce au bon Dieu que Je suis arrivée à finaliser ce travail que je dédie à mes chères parents (HAWAS Fatiha & BABA Boualem); que Dieu les accorde sa bénédiction; ainsi toute ma famille.
A ma chère copine sœur Nadjwa et sa noble famille.
A ma chère sœur Hayet. Sans oublier les nobles professeurs, les collègues
de la section informatique
Nawel
Je dédie ce travail à tous qui m'aime
C'est grâce au bon Dieu que Je suis arrivée à finaliser ce travail que je dédie à mes chères parents; que Dieu les accorde sa bénédiction; ainsi toute ma famille.
Mr DJAMAI Djelloule (mon père)
Mme GASMI Malika (ma mère)
M. MEZRAG Omar (mon époux)
A ma chère sœur Nawel (ma Binôme)
Nour el-Yakin Rawane (ma fillette)
Hayet
Je dédie ce travail à tous qui m'aime
C'est grâce au bon Dieu que Je suis arrivé à finaliser ce travail que je dédie à mes chères parents; que Dieu les accorde sa bénédiction; ainsi toute ma famille.
Toute la famille LAOUFI
Tous collègue d'Algérie télécom
Tous collègue de la session informatique
Mourad
Je dédie ce travail à tous qui m'aime
Tout d’abord nous remercions Dieu qui nous a aidé à élaborer notre
mémoire.
Nous tenons à remercier tous les membres de jury qui ont bien
voulu juger et examiner le présent mémoire. Et d’ailleurs, nos
remerciements s’adressent à tous les professeurs qui ont contribué à notre
formation est pour les conseils apportés au mémoire, aussi qu’a
Mr CHEBLOUNE Habib, notre encadreur pour l’aide technique et morale
qui nous ; a durant toute la période de l’élaboration du mémoire,
beaucoup estimées.
Nous remercions toute personnes ayant contribues de prés ou de
loin au bon déroulement de ce travail.
Sommaire Introduction générale……….……….……….……….……….…......... 01 Chapitre I : robot mobile
I.1) Introduction ….……………….……….……….……….……….….. 03 I.2) Définition d’un robot et robotique…..……….……….……….……….. 04 I.3) types des robots mobiles.….……….……….……….……….……….. 04 I.4) Architecture d’un robot mobile.…..……….……….……….……….…. 05
I.4.1) La locomotion.….……….……….……….……….……….……. 05
I.4.1.1) la structure mécanique et motricité….……….……….………... 05
I.4.1.1.1) Les mobiles à roues….……….……….……….…………. 05
I.4.1.1.2) Les mobiles à chenilles….……….……….……….…….... 06
I.4.1.1.3) Les mobiles à marcheurs.….……….……….……….……. 07
I.4.1.1.4) Les robots à rampants.….……….……….……….………. 07
I.4.1.1.5) La motricité et l’énergie….……….……….……….…….. 08
I.4.2) La perception …….……….……….……….……….……….…... 08
I.4.2.1) Les types de capteurs....…….……….……….……….……… 09
I.4.2.1.1) Les capteurs ultrasonores …….……….……….……….…... 09
I.4.2.1.2) Les capteurs à infrarouge …….……….……….……….…… 10
I.4.2.1.3) Les capteurs télémétriques laser …….……….……….……... 11
I.4.3) La décision …….……….……….……….……….……….………. 12
I.4.3.1) Autonomie d’un robot mobile …….……….……….……….… 13
I.5) Architecture de robot mobile adopté …….……….……….……….…... 13
I.6) Domaines d’application de la robotique mobile …….……….……….…. 14
I.7) Conclusion …….……….……….……….……….……….………… 16 Chapitre II : Stratégie de navigation d’un robot mobile
II.1) Introduction …….……….……….……….……….……….………. 18
II.2) Architecture de commande d’un robot mobile …….……….……….…. 18
II.2.1) Planification…………………………………………………… 19
II.2.2) Navigation. …….……….……….……….……….……….…… 19
II.2.3) Le pilotage.….……….……….……….……….……….……… 19
II.3) Tactique de navigation...……….……….……….……….………...... 19 II.3.1) Navigation dans un environnement totalement inconnu………………. 19 II.3.2) Navigation dans un environnement totalement connu….……….…... 20
II.3.3) Navigation dans un environnement partiellement connu.….………... 20
II.4) Les méthodes de navigation d’un robot mobile.….……….……….…… 21
II.4.1) Approches classiques.….……….……….……….……….……... 21
II.4.2) Approches actuelles.….……….……….……….……….………. 22
II.5) La stratégie de navigation...……….……….……….……….……...... 24 II.6) Problèmes de la navigation des robots mobiles……………………………. 27 II.7) Planification d’une trajectoire….……….……….……….……….….. 27
II.8) Conclusion….……….……….……….……….……….……….….. 28 Chapitre III : La logique floue
III.1) Introduction..….……….……….……….……….……….………... 30
III.2) Q’est-ce que la logique floue ?.….……….……….……….………… 30
III.3) Historique….……….……….……….……….……….……….….. 31
III.4) Pourquoi utiliser la logique floue ?.….……….……….……….…….. 31
III.5) Théorie de sous-ensemble flou…………….……….……….………... 32
III.5.1) Concept de sous-ensemble flou….……….……….……….……. 32
III.5.2) Définition d’un sous-ensemble flou….……….……….………… 33
III.5.3) Fonction d’appartenance….……….……….……….…………... 35
III.5.4) Caractéristiques d’un sous-ensemble flou….……….……….……. 35
III.5.5) Opérations sur les sous-ensembles flous….……….……….…….. 37
III.5.6) Les relations floues….……….……….……….……….………. 39
III.5.6.1) Définition d’une relation floue….……….……….……….…. 39
III.5.6.2) Les différents relations floues….……….……….……….….. 39
III.6) Les variables linguistiques….……….……….……….……….……. 40
III.6.1) Définition des variables linguistiques….……….……….………... 41
III.6.2) Univers de discours….……….……….……….……….……… 41
III.6.3) Propositions floues….……….……….……….……….……….. 41
III.7) Le contrôleur flou….……….……….……….……….……….…… 44
III.7.1) Algorithme du contrôleur flou….……….……….……….……... 44
III.7.2) Configuration générale d’un contrôleur flou….……….……….…. 44
III.7.3) Structure d’un contrôleur flou….……….……………...……... 46
III.7.3.1) Base de connaissances….……….……….……….………… 46
III.7.3.2) Fuzzification….……….……….……….……….………… 46
III.7.3.3) Inférence floue….……….……….……….……….………. 47
III.7.3.4) Défuzzification.……….……….……….……….…………. 47
III.7.4) Avantages du contrôleur flou….……….……….……….…….... 49
III.7.5) Inconvénients du contrôleur flou….……….……….…………… 49
III.8) Domaines d’application….……….……….……….……….……….. 50
III.9) Conclusion….……….……….……….……….……….………….. 52 Chapitre IV : Simulation et résultats
IV.1) Introduction….……….……….……….……….……….………… 54
IV.2) Les comportements du robot….……….……….……….……….….. 54
IV.3) Description du robot simulé….……….……….……….……….….... 54
IV.4) Architecture du système de commande….……….……….………….. 56
IV.5) Description du contrôleur flou….……….…….……….……….…… 57 IV.5.1) La quantification floue des entrées et des sorties du système (fuzzification) .……….……….……….……….……………...
57
IV.5.2) Établissement des règles liant les sorties aux entrées (mécanisme d’inférence) ……...……...……...……...……......................................
59
IV.5.3) La combinaison des règles pour la génération des sorties (défuzzification)…...……...……...……...............................................
63
IV.6) L’organigramme du simulateur..….……….……….……….……….. 67 IV.7) Implémentation…………………………………………………………….. 68 IV.7.1) Langage de programmation….……….……….……………….. 68
IV.7.2) Description du logiciel…………………………….....……………. 68
IV.8) Résultat….……….……….……….……….……….……….……. 70
IV.9) Conclusion….……..….……….……….……….……….………… 77
Conclusion générale….……….……….……….……….……….…….
78
Bibliographie………………………………………………………………….. 79
Les systèmes robotisés sont devenus les premiers outils d’automatisation de la
production et dans toutes les branches de l’industrie moderne.
Leur productivité et la qualité du travail obtenue sont directement liées à leur rapidité,
à leurs précisions et à leur capacité d’adaptation dans leur milieu de travail. Ces
contraintes apportent la nécessité de développer des méthodes de commande de plus en
plus élaborées concernant la génération de la trajectoire et la poursuite en temps réel de
ces trajectoires.
Les recherches et les développements dans ce domaine ont permis de dégager
plusieurs approches sur la planification de mouvement.
Dans le cas de l’évolution dans des environnements inconnus et évolutifs, le
problème reste encore très ouvert.
L’objectif de notre mémoire consiste à l'étude en simulation de la commande du
déplacement d’un robot mobile autonome dans un environnement totalement inconnu,
en utilisant une approche basée sur la logique floue.
Cette approche peut être considérée comme une méthode bien adaptée à notre
problème puisque d’une part, on ne dispose pas d’un modèle précis de
l’environnement, et d’autre part les informations qui sont issues des différents capteurs
du robot mobile sont souvent entachées d’erreurs. L’intérêt supplémentaire du flou
réside dans sa capacité d’impliquer l’intelligence humaine dans la stratégie de la
commande à travers des règles comportementales.
L’organisation du présent mémoire est structurée comme suite :
• Dans le premier chapitre nous présentons les notions de base d'un robot mobile.
• Le deuxième chapitre présente la stratégie de navigation d'un robot mobile.
• Le troisième chapitre présente les concepts de la logique floue.
• Le quatrième chapitre concerne la partie simulation et les résultats
expérimentaux que nous avons obtenus.
I.1) Intelligence artificielle et la robotique
Le domaine des applications de l’intelligence artificielle à la robotique, bien qu’est
utilisé depuis longtemps comme démonstration de l’efficacité des systèmes
intelligents, est en réalité encore vaste et mal défini.
La possibilité d’avoir une intelligence artificielle est d’introduire un système de
programmation approprié ; il s’agit de mettre au point des programmes spécialisés.
L’intelligence artificielle comprend deux phases principales : représentation de la
connaissances et la recherche de la solution.
L’intelligence artificielle voit dans la robotique, un domaine d’application
particulièrement riche pour élaborer et expérimenter ses propres modèles.
I.2) Définition d'un robot et robotique Pour le sens commun, un robot est un dispositif mécanique articulé capable
d'imiter certaines fonctions humaines telles que la manipulation d'objets ou la
locomotion, dans le but de se substituer à l'homme pour la réalisation de certaines
tâches matérielles. Cette réalisation est plus ou moins autonome selon les facultés de
perception de l'environnement dont est doté le robot.
La robotique est l'ensemble des activités de construction et de mise en œuvre des
robots.
La robotique est branche de l’intelligence artificielle concernée par l’étude de
systèmes automatiques capables d’une interaction directe avec le monde physique.
I.3) Définition d'un robot mobile
La tâche essentielle qui incombe aux robots mobiles est le déplacement dans un
environnement connu ou inconnu Il est donc nécessaire de connaître la position du
robot au sein de son univers de façon précise ou relative selon le cas.
La solution pour un robot mobile doit être globale, c’est-à-dire qu’il ne faut pas
simplement rendre autonome une plate-forme en oubliant provisoirement l’outil de
travail qui l’équipe.
La plupart des recherches sont concentrées sur les reconnaissances de
l’environnement immédiat du robot. Des capteurs (infrarouges, ultrasons, laser,
caméra CCD) associés à des logiciels adaptés permettent, par la reconnaissance de
formes, d’optimiser les déplacements du mobile.
I.4) Architecture d'un robot mobile
On décompose un robot mobile en trois grandes modules fonctionnaires : la
locomotion, la perception et la décision.
I.4.1) La locomotion
La locomotion se décompose en deux parties : celle qui réalise l’appui vis-à-vis
du milieu dans le quel on entend se déplacer et celle qui permet la propulsion. Celle-ci
inclut les moteurs et les mécanismes conduisant au déplacement.
I.4.2) La perception
Cette partie du robot est souvent la plus difficile à réaliser et les recherches dans
ce domaine utilisent une plate-forme à trois ou quatre roues pour étudier les problèmes
de comportement.
La perception passe par deux étapes successives : la lecture des capteurs, puis le
traitement de l’information. L’interprétation, qui permet de délivrer un message clair à
la fonction «locomotion», est dévolue à la fonction «décision» du robot.
I.4.3) La décision
Les informations en provenance des différents captures 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.
I.5) Domaines d'application de la robotique mobile Commençons par les trois domaines majeurs: le nucléaire, le spatial et le sous
marin qui présentent des points communs:
- La nécessité d'adaptation au milieu est primordiale
- La tache à effectuer est non répétitive.
- En spatial, comme en nucléaire et en sous marin. La difficulté de
communication nécessite L'autonomie du robot.
- Le nucléaire
- le spatial
- le sous-marin
- la médecine
- les véhicules automatiques
II.1) Architecture de commande d'un robot mobile
La commande d'un robot mobile autonome passe par trois niveaux hiérarchiques
selon leur niveau de priorités: planificateur – navigateur – pilote, ceci constitue le
module de raisonnement du robot mobile. (Fig1)
UFig 1: décomposition hiérarchique classique de la commande
Udu robot mobile
II.1.1) Planification
Planification c'est le sommet de la structure hiérarchique de la commande, sa
fonction est de générer une trajectoire pour le robot mobile de sa position courante à la
position finale. Le planificateur est appelé avec un modèle de l'environnement, il
produit une trajectoire qui est passée au contrôleur du robot qui à son tour l'exécute.
Lorsque, l'environnement est inconnu (la dimension, la forme et la localisation des
obstacles sont inconnus), le planificateur se base sur les informations sensorielles.
II.1.2) Navigation
La navigation est définie comme l'art de se diriger vers une destination finale et
cela pour déterminer sa localisation et sa route, ainsi que la distance parcourue. Le
module assurant cette action est le navigateur, il a deux fonctions:
1. Il est chargé de suivre les contours du lieu d'évolution et de transmettre les
informations sur l'environnement au planificateur.
2. Il prend en charge les modifications de la trajectoire en fonction du changement de
l'environnement lors d'une mission donnée.
PLANIFICATEUR
NAVIGATEUR
PILOTE Perception de L'environnement
Actionneurs
II.1.3) Le pilotage
Le pilotage consiste à asservir le mouvement lors de suivi d'une trajectoire
planifiée. Le pilote gère les fonctions de bas niveaux, tels que les asservissements,
ainsi que les informations issues des capteurs de trouver les consignes à appliquer aux
actionneurs.
II.3) Les méthodes de navigation d'un robot mobile
II.3.1) Approches classiques
Plusieurs méthodes classiques ont été développées, mais la plupart elles ont le
point commun de planifier une trajectoire continue, libre d'obstacles. Et on peut citer
parmi ces méthodes:
Ua) Approches basées sur le raisonnement géométrique
Ub) Approches basées sur le champ de potentiel artificiel
Uc) Approches basées sur la configuration de l'espace
Dans cette approche, l'espace de travail du robot est divisé en petites cellules
(sous forme de rectangles ou carrés) ayant une taille fixe. Le centre de chaque cellule
est localisé dans un espace cartésien dont les éléments sont 0 et 1 suivant que la cellule
correspondante est libre ou occupée par un obstacle. L'environnement est donc
complètement connu est configuré en un modèle de grille. La génération d'une
trajectoire libre d'obstacles est basée sur ce modèle. figure
II.3.2) Approches actuelles
L'environnement dans lequel se navigue un robot mobile n'est pas toujours
connu, pour le plus part des cas est les impossibles de générer des trajectoires sans
collision à l'avance dans tous les cas. Un robot mobile au cours de la navigation doit
éviter les obstacles statiques ou dynamiques et localiser la cible.
Plusieurs heuristiques simulant le raisonnement humain ont été proposé dans la
navigation d'un robot mobile ce qui est appelé 'soft computing'. Les nouvelles
approches se base essentiellement sur les réseaux de neurones, les algorithmes
génétiques et la logique floue.
Ua) La navigation d'un robot mobile par la logique floue
La logique floue est un mode de raisonnement très proche de la pensée humaine,
elle traduit les connaissances et le raisonnement d'un expert humain en règles simples
qu'un système artificiel peut utiliser. La logique floue est utilisée dans la navigation
d'un robot mobile en intégrant la connaissance de l'être humain dans le système mobile,
son comportement est généré par un mécanisme d'inférence flou se basant sur cette
connaissance. La logique floue offre de grands avantages: comme la réaction en temps
réel du mobil, puisque la connaissance est incorporée à priori. Elle tolère l'imprécision
des données prises par les capteurs, ce qui permet de réduire le coût de conception.
Nous avons choisi la logique floue pour la navigation d'un robot mobile dans notre
exposé.
II.4) Planification d'une trajectoire
C'est l'un des objectifs principaux de la recherche en robotique, c'est une
production d'une séquence d'actions pour atteindre un but. Une situation précise est
définie à l'avance, à partir d'une base de connaissance initiale de l'environnement et
d'un ensemble de règles déterminant l'environnement.
III.1) Qu’est-ce que la logique floue ? Le terme de ‘’logique flou’’ a deux acceptions :
- La première, que nous avons adoptée correspond à tous les développements
concernant la théorie de sous-ensembles flous.
- La seconde représente une extension de la logique classique, dans le but de
raisonner sur des connaissances imparfaites.
III.2) Pourquoi utiliser la logique floue ? Il convient d’utiliser la logique floue lorsque des imperfections entachent la
connaissance dont nous disposons sur le système, lorsqu’il modélisation rigoureuse de
celui-ci est difficile, lorsqu’il est très complexe, lorsque notre façon naturelle de
l’aborder passe par une vue globale de certains de ses aspects.
Si elle impose une standardisation de la signification des description du système
exprimées linguistiquement, ce qui peut sembler rédacteur par rapport à une utilisation
purement symbolique des descriptions linguistiques, la logique floue présente
l’avantage de permettre le passage d’une telle description d’un expert ou d’un
observateur à l’autre.
III.3) Théorie de sous ensemble floue
III.3.1) Concept de sous-ensemble flou
Le concept de sous-ensemble flou a été introduit pour éviter les passages
brusques d’une classe à une autre (dans la classe noire à la classe blanche par exemple)
et autoriser des éléments à n’appartenir complètement ni à l’une ni à l’autre (à être gris,
par exemple), ou encore à appartenir partiellement à chacune (avec un fort degré à la
classe noire et un faible degré à la classe blanche dans le cas du degré foncé).
La notion de sous-ensemble flou permet de traiter :
- des catégories aux limites mal définies (comme "centre ville" ou "ancien"),
- des situations intermédiaires entre le tout et le rien ("presque noire"),
- le passage progressif d’une propriété à une autre (de "proche" à "éloigné"
selon la distance),
III.3.2) Définition d’un sous-ensemble flou
Un sous-ensemble classique A de X est défini par une fonction caractéristique
XRAR qui prend la valeur 0 pour les éléments de X n’appartenant pas à A et la valeur 1
pour ceux qui appartiennent à A :
XRAR : X → {0,1}
Par contre un sous-ensemble flou A de X est défini par une fonction
d’appartenance qui associe à chaque élément x de X, le degré ƒRA R(x), compris entre 0 et
1, avec lequel x appartient à A :
fRAR : X → [0, 1].
Dans le cas particulier où fRAR ne prend que des valeurs égales à 0 ou 1, le sous-
ensemble flou A est un sous-ensemble classique de X. Un sous-ensemble classique est
donc un cas particulier de sous-ensemble flou.
III.3.3) Fonction d’appartenance
L’application µRAR est appelée fonction d’appartenance de l’ensemble flou A
généralisant ainsi le concept d’appartenance de la théorie classiques des ensembles :
A tout élément x de U la valeur µRAR (x) associées n’est pas nécessairement égale à 0 ou
à 1, elle est à priori quelconque et désigne le degré d’appartenance de x à l’ensemble
de A.
µ(A) µ(A) µ(A)
1 1 xR0R 1 0 xR0R x 0 xR0R x 0 xR1R xR2R x UFig2: fonctions d’appartenance pour les 3 cas.
III.4) La logique Floue
La logique floue, généralement appelée logique linguistique manipulant des
valeurs de vérité floues servira par conséquent de modèle mathématique pour le
raisonnement humain et pour tout système basé sur l'inférence floue. La plupart des
objets de base manipulée par la logique linguistiques sont flous par nature. Il s'agit en
particulier des objets suivants:
- Uvaleurs de vérités floues: U vrai, faux, presque vrai, plus ou moins faux, …etc.
- Uquantificateurs flous: U habituellement, presque tout, généralement, beaucoup,
rarement, …etc.
- Uprédicats flous: U jeune, vieux, grand, petit, intelligent, cher, normal, …etc.
- Umodificateur flous: U très, plus ou moins, vraisemblablement, hautement, plutôt, …etc.
III.4.1) variables linguistiques
Une variable linguistique est définie par un triplet (X, U, TRxR) ou X désigne le
nom de la variable, U le référentiel, et TRxR l'ensemble fini ou non des valeurs
linguistiques de la variable X appelées termes. Les termes sont des mots ou des
expressions vagues du langage naturel tels que petit, jeune, vieux, plus ou moins grand,
qui caractérisent X est sont modélisés par des ensembles flous.
III.4.2) Univers de discours
Soit X la variable linguistique qui désigne la température de l'eau, on peut la
décrire par un certain nombre de mots par exemple : « Chaude », « Froide », « Tiède »,
chaque terme est modélisé par un ensemble flou et donc par une fonction
d'appartenance. L'un vers de discours est définit comme le domaine de variable
linguistique, il couvrira par conséquent l'ensemble des valeurs prises par cette variable.
(Fig3 )
µ(θ) tiède
1
θR1R θR2R θR3R θR4R θR5R θ (température) froide chaude Univers de discours U
Fig3:Exemple de variation d'une variable linguistique U.
III.4.3) Propositions floues
Une proposition floue est un énoncé contenant un ou plusieurs prédicats flous
selon qu'elle est simple ou composée.
. Proposition floue simple
Soit une variable linguistique (X, U, TRx R), une proposition floue simple est de la
forme « X est A » ou A est un élément de TRx R, associé à un prédicat flou tel que «
jeune », « chaude »…etc.
La valeur de vérité de la proposition floue est par la fonction d'appartenance µA
de A.
. Proposition floue composée
Une proposition composée peut être une négation d'une proposition simple,
comme elle peut être une juxtaposition de plusieurs propositions simples reliées avec
des opérateurs logiques 'ET' conjonction, 'OU' disjonction.
Avec les connecteurs logiques on peut suivre le tableau suivant:
Opérateur Opération sur le degré de vérité
Et
Minimum
Produit
Ou
Maximum
Valeur moyenne
Non Complément à 1
UExemple
0.2 Pour minimum
SI ConditionR1 R(0.4) UETU ConditionR2R(0.2) ALORS Action
0.8 Pour produit 0.8 Pour maximum
SI ConditionR1 R(0.8) UOUU ConditionR2R(0.2) ALORS Action
0.8 Pour moyenne
SI Condition (0.6) ALORS Action 0.4 Pour le complément à 1
III.5) 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 cet algorithme
de 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 du
genre « si x est petit et y est modéré, alors u doit être très grand ». 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 auto-adaptatifs.
III.5.1) Structure d'un contrôleur flou
Un contrôleur flou est composé de 4 blocs principaux (Fig6)
. Base de connaissances.
. Interface de fuzzification.
. Mécanisme d'inférence flou.
. Interface de défuzzification.
UIII.5.1.1) Base de connaissances
La base de connaissances comprend les connaissances de l'expert humain
pour le contrôle du système ainsi le domaine de variation des variables d'E/S. Elle est
donc constituée de :
. Base de données: regroupe dans ce bloc, l'ensemble des définitions utilisées dans les
règles du contrôle flou (univers de discours, partition flous, choix des capteurs,…).
. Base des règles floues : La connaissance de l'expert est généralement exprimée par
des règles et donc une collection de règles de la forme « SI-ALORS ». La base des
règles et donc une collection de règles floues:
R(l) : U Si U xR1R est FR1R(l) UETU xR2R est FR2R(l) UETU…UETU xRnR est FRnR(l) UALORSU y est G(l)
Ou : x = (xR1R, xR2R, …, xRnR) ∈ UR1R × UR2 R× …× URnR et y ∈ V sont des variables linguistiques
d'entrée et de sortie du système respectivement pour l=1,…,m. FR1R,…, FRnR, G
représentants des ensembles flous sur les référentiels UR1R,…, URnR, avec URiR ⊂ R, V ⊂ R
respectivement.
Chaque règle définit une implication floue : FR1R(l) × FR2R(l) ×…× FRnR(l) → G qui
décrit le comportement du système.
UIII.5.1.2) Fuzzification
La fuzzification est la première étape dans la réalisation d'un contrôleur flou.
Elle transforme chaque valeur réelle d'entée (mesure) en un ensemble flou, en lui
attribuant sa fonction d'appartenance à chacune des classes préalablement définie.
UIII.5.1.3) Inférence floue
A partir de la base des règle (fournies par l'expert) et du sous ensembles XR0R
correspond à la fuzzification du vecteur de mesure x R0R= [xR01R,…, xR0nR]'∈U. Le
mécanisme d'inférence calcule le sous ensemble flou Y∈V qui est la sortie floue du
système.
. y dans V x dans U
Ensembles Ensembles
Flous dans U Flous dans V UFig6 : Configuration de base d'un contrôleur flou.
Il existe plusieurs méthodes d'inférence floue qui dépendent des applications
et de la forme des fonctions d'appartenance.
. Méthode d'inférence Max-Min:
La méthode d'inférence Max-Min est la méthode utilisée dans notre travail,
elle peut être décrite de la manière suivante :
UPremière étape: U Evaluer chacune des règles activées R(l) (avec l=1,2,…,m), en
calculant la valeur de vérité de la prémisse. A notre que les opérateurs (ET), (ALORS)
réalisée respectivement par la formation du minimum. La valeur obtenue est notée µRdlR.
UDeuxième étape: U Sachant que pour un état donné des entrées, plusieurs règles peuvent
être validées ce qui implique des valeurs µRdlR différentes. Il faut donc disposer d'une
méthode de composition de ces règles. Cette méthode est appelée agrégation.
L'inférence par le Max-Min prend le maximum de ces valeurs comme la
fonction d'appartenance résultante de la sortie et qui définit son ensemble flou.
µRRESR(Y) = Max [µRd1R, µRd2R,…, µRdnR] n:le nombre de règles en conflits.
Base de
Données. Base des Règles.
Interface de
f uzzification
Interfqce de défuzzification
Mécanisme d'inférence
UIII.5.1.4) Défuzzification
Le sous ensemble flou Y de l'univers de discours V ayant été calculé par le
mécanisme d'inférence, l'interface de défuzzification à pour objectif de la transformer
en une valeur non floue permettant ainsi la commande effective du système. Cette
opération est effective par l'opérateur de défuzzification.
. La technique de MAX-MIN
C’est la plus simple surtout au point de vue de volume de calcule, elle
consiste à ne consédèrer pour chaque sortie que la règle représentent de maximum de
la validité et engnore les règles secondaires.
La grandeur de sortie doit être normalisée, et la définition des intervalles
flous doit se résumer à une valeur.
La défuzzification consiste à prendre le min entre la valeur produite par la
règle et la valeur de la variable floue, en suite en va prendre la max des valeurs
trouvées (voir exemple)
. La technique de la moyenne pondérée
La moyenne pondérée elle est plus évoluée. Elle considère comme valeur de
sortie la moyenne des valeurs trouvées par chaque règle pondérée par leur degré de
vérité respectif (voir exemple).
URemarque
C’est une technique très utilisée en programmation.
. La technique du centre de gravité
Consiste à tracer sur un même diagramme, les différentes zones
correspondant à chacune des règles et calculer le centre de gravité de la zone de
chevauchement.
UExemple µ
1 faible moyenne élevé
0,8
0,2
0
Centre de gravité vitesse
Zone de chevauchement
URemarque
C’est une technique plus performante, très complexe puis qu’il nécessite le
calcule d’un intégrale.
S’il n y a pas de chevauchement implique que les règles ne sont pas correcte.
III.6) Domaines d’application La logique floue n’est pas restreinte aux systèmes dont la modélisation est
difficile, qui sont contrôlés par des experts humains ou ceux qui ont plusieurs E/S et
des réponses nom linéaire. Elle est intéressante dans tous les domaines, ou un flou
persiste. La liste proposée reste limitée, car les domaines d’applications sont multiples.
. Informatique
De nombreuses disciplines informatiques utilisent également la logique floue.
On peut citer notamment l'intelligence artificielle, les bases de données et la
programmation.
Ua) Intelligence artificielle et systèmes experts
Les connaissances manipulées par les systèmes experts sont en général
incomplètes, vague et incertaines. Le très célèbre système expert MYCIN développée
en 1974 afin d'organiser un ensemble de diagnostics sur certaines maladies, et de
permettre à un non expert de prescrire la thérapeutie adéquate, est un exemple de la
prise en compte du vague et du incertain dans la base des règles et des faits et donc
l'utilisation de l'approche floue pour modéliser certains de ces systèmes.
Ub) Programmation et développement
Il s'agit des langages de programmation flous (ou à base orientation linguistique)
qui permettent d'implémenter des algorithmes flous.
Un algorithme flou est une séquence finie d'instructions floues. Une instruction
floue peut être une (x = petit, x = environ 50), une instruction inconditionnelle
(décrémenter légèrement x) ou une structure de contrôle (si y est petit alors ajouter
plusieurs fois 2 à x).
La programmation floue permet la conception des langages naturels.
. Reconnaissance des formes
. Automatisme
- Automatismes industriels
- Automatismes d'entreprise et de transport
- Automatismes dans les appareils grand public
. Mathématiques appliquées
- Statistiques
- Recherche opérationnelle
Conclusion générale
La robotique mobile, domine qui ne cesse d'évoluer, cherchant tout les atouts
possibles pour dépasser les limites actuellement rencontrées en navigation dans
différents environnements.
Les systèmes à base de la logique floue ont un grand degré d'autonomie, et une
capacité de déterminer la conclusion (action) en temps réel à l'aide d'un moteur
d'inférence floue plus proche du mode de raisonnement humain.
Robot mobile
Chapitre I : Robot mobile
I.1) Introduction
Le domaine des applications de l’intelligence artificielle à la robotique, bien qu’il
soit utilisé depuis longtemps comme démonstration de l’efficacité des systèmes inte
lligents, est en réalité encore vaste et mal défini.
L’intelligence artificielle voit dans la robotique, un domaine d’application
particulièrement riche pour élaborer et expérimenter ses propres modèles.
Les robots mobiles ont une place particulière en robotique. Ils ont vu le jour aux
ETATS-UNIS : le robot SHAKEY (Stanford Research Institut) en 1968, le robot
JASON (Barkey) en 1970, et le robot ROVER (Jet Propulsion Laboratory) en 1975
[LIM 91]. Leur intérêt réside dans leur mobilité qui ouvre des applications dans de
nombreux domaines.
Depuis l'avènement des robots, les outils et méthodes de contrôle utilisés en
robotique se sont développés de pair avec l'électronique et l'informatique. En effet, les
progrès constants dans le domaine de la technologie et le domaine de la méthodologie
ont permis de concevoir des robots mobiles ayant la faculté de percevoir, de prendre
des décisions, et d'agir d'une manière intelligente dans un univers non contrôlé
directement par l'homme, en utilisant des moyens et outils nouveaux tels que :
perception de l'environnement, intelligence artificielle, contrôle flou… . Tous ces
moyens et outils contribuent à l'accroissement de l'autonomie et à la simplicité
d'utilisation. Ce qui permet de réaliser des opérations de plus en plus complexes avec
une autonomie accrue.
La mobilité et l'autonomie des robots permettent d'envisager des applications allant
du chariot de l'atelier flexible à l'exploration planétaire. Cette autonomie pose des
problèmes complexes en matière de génération de trajectoire dans des espaces
fortement contraints, d'élaboration d'une commande et de prise de décision à partir
d'information capteurs imprécises et / ou incomplètes.
Chapitre I : Robot mobile
I.2) Définition d'un robot et robotique [ZEG 94]
Pour le sens commun, un robot est un dispositif mécanique articulé capable d'imiter
certaines fonctions humaines telles que la manipulation d'objets ou la locomotion, dans
le but de se substituer à l'homme pour la réalisation de certaines tâches matérielles.
Cette réalisation est plus ou moins autonome selon les facultés de perception de
l'environnement dont est doté le robot.
La robotique est l'ensemble des activités de construction et de mise en œuvre des
robots.
La robotique est branche de l’intelligence artificielle concernée par l’étude de
systèmes automatiques capables d’une interaction directe avec le monde physique
[GIA 00].
I.3) Type des robots [GIA 00]
On distingue deux groupes de robots, les robots fixes et les robots mobiles. Les
robots fixes sont utilisés dans l’industrie pour réaliser des tâches dangereuses (soudure
du châssis ou peinture de la carrosserie dans une usine automobile), les robots mobiles
pour transporter des tâches (depuis les chaînes de fabrication jusqu’aux zones de
stockage) ou encore pour transporter le courrier dans les bureaux.
La tâche essentielle qui incombe aux robots mobiles est le déplacement dans un
environnement connu ou inconnu Il est donc nécessaire de connaître la position du
robot au sein de son univers de façon précise ou relative selon le cas.
La solution pour un robot mobile doit être globale, c’est-à-dire qu’il ne faut pas
simplement rendre autonome une plate-forme en oubliant provisoirement l’outil de
travail qui l’équipe.
La plupart des recherches sont concentrées sur les reconnaissances de
l’environnement immédiat du robot. Des capteurs (infrarouges, ultrasons, laser,
caméra CCD) associés à des logiciels adaptés permettent, par la reconnaissance de
formes, d’optimiser les déplacements du mobile.
Chapitre I : Robot mobile
I.4) Architecture d'un robot mobile On décompose un robot mobile en trois grandes modules fonctionnels : la
locomotion, la perception et la décision [GIA 00].
I.4.1) La locomotion [GIA 00]
La locomotion se décompose en deux parties : celle qui réalise l’appui vis-à-vis du
milieu dans lequel on entend se déplacer et celle qui permet la propulsion. Celle-ci
inclut les moteurs et les mécanismes conduisant au déplacement.
Les moyens de déplacement sont nombreux, ils dépendent du milieu où le mobile est
censé se déplacer (mobile sur le sol, avion, sous-marin, …).
Dans notre étude nous traiterons seulement le cas des robots qui se déplacent sur une
surface.
I.4.1.1) La structure mécanique et motricité [PRU 88]
On peut dénombrer quatre types de structures mécaniques assurant la motricité.
UI.4.1.1.1) Les mobiles à roues
La mobilité par roues est la structure mécanique la plus communément appliquée.
Cette technique assure selon l'agencement et les dimensions des roues un déplacement
dans toutes les directions avec une accélération et une vitesse importante. Le
franchissement d'obstacles ou l'escalade de marches d'escalier est possible dans une
certaine mesure. Toutes les configurations (nombre, agencement, fonction) des roues
sont appliquées.
Chapitre I : Robot mobile
UI.4.1.1.2) Les mobiles à chenilles
L'utilisation des chenilles présente l'avantage d'une bonne adhérence au sol et d'une
faculté de franchissement d'obstacles. L'utilisation est orientée vers l'emploi sur sol
accidenté ou de mauvaise qualité au niveau de l'adhérence (présence de boue,
herbe…).
Fig I.1 : Robot à roue
Fig I.2 : Robot à chenille
Chapitre I : Robot mobile
UI.4.1.1.3) Les mobiles marcheurs
Les robots mobiles marcheurs sont destinés à réaliser des tâches variées dont l'accès
au site est difficile, dangereux ou impossible à l'homme. Leur autonomie à nombreux
degrés de liberté permet un rapprochement avec les robots manipulateurs. La
locomotion est commandée en termes de coordonnées articulaires. Les méthodes de
commande des articulations définissent le concept d'allure qui assure le déplacement
stable de l'ensemble. Les différentes techniques étudiées se rapprochent de la marche
des animaux et notamment de celle des insectes.
L'adaptation au support est un problème spécifique aux marcheurs. Il consiste à
choisir le meilleur emplacement de contact en alliant l'avance et la stabilité avec l'aide
de capteurs de proximité, de contact ou de vision
UI.4.1.1.4) Les robots rampants
La reptation est une solution de locomotion pour un environnement de type "tunnel"
qui conduit à réaliser des structures filiformes.
Le système est composé d'un ensemble de modules ayant chacun plusieurs mobilités.
Les techniques utilisées découlent des méthodes de locomotion des animaux.
Fig I.3 : Robot marcheur
Chapitre I : Robot mobile
- Le type scolopendre constitue une structure inextensible articulée selon deux
axes orthogonaux.
- Le type lombric comprend trois articulations, deux rotations orthogonales et une
translation dans le sens du mouvement principal.
- Le type péristaltique consiste à réaliser un déplacement relatif d'un module par
rapport aux voisins.
UI.4.1.1.5) La motricité et l'énergie
Le déplacement des robots est réalisé par des moteurs de types:
- électrique
- thermique
- hydraulique
L'énergie électrique la plus fréquemment employée offre l'avantage d'une commande
aisée. Par contre le transport et la généralisation présentent des difficultés. Plusieurs
méthodes sont employées:
- par batteries qui sont
* soit rechargées périodiquement de manière automatique ou manuelle.
* soit par un échange avec d'autres lorsqu'elles sont déchargées.
- par groupe électrogène embarqué dont l'inconvénient constitue la masse
élevée. L'énergie de base est alors thermique.
- par cordon ombilical qui réduit l'autonomie du robot.
L'énergie thermique est essentiellement employée par des véhicules de forte
puissance comme énergie de base pour la traction ou pour activer un compresseur
hydraulique.
I.4.2) La perception [GIA 00]
Cette partie du robot est souvent la plus difficile à réaliser et les recherches dans ce
domaine utilisent une plate-forme à trois ou quatre roues pour étudier les problèmes de
comportement.
Chapitre I : Robot mobile
La perception passe par deux étapes successives : la lecture des capteurs, puis le
traitement de l’information. L’interprétation, qui permet de délivrer un message clair à
la fonction «locomotion», est dévolue à la fonction «décision» du robot.
On peut imaginer la situation d’un robot mobile devant son environnement en
comparant celui-ci avec un aveugle qui découvrirait un nouveau lieu. Le robot doit être
capable d’analyser un objet localement, puis de positionner globalement tous les objets
les uns par rapport aux autres. De cette manière, il construit un modèle de son
environnement au fur et à mesure de son exploration.
Les capteurs les plus simples sont utilisés pour analyse locale (les capteurs de
contact, les capteurs de proximité avec ou sans mesure, les capteurs de lumière, les
capteurs de pression mouvement), alors que la télémétrie laser ou ultrason autorise
l’analyse d’une image simple ou d’un mouvement.
I.4.2.1) Les types de capteurs
Les capteurs jouent un rôle indispensable dans la modélisation de l'environnement,
car ils fournissent des renseignements sur l'univers du robot, et grâce à ces
informations ce dernier peut connaître sa position, et il peut aussi évoluer librement en
évitant les obstacles.
UI.4.2.1.1) Capteur ultrasonores U [BEN 97]
La mesure de la distance objet-capteur se fait par une mesure temporelle entre
l'instant d'émission et l'instant de réception (appelé temps de vol) de train d'ondes
ultrasonores émis par un transducteur piézo-électrique. (Fig I.4)
Fig I.4 : Principe d'un capteur ultrasonore
Objet
Impulsions
t0 Emetteur
t0+tv Récepteur
d
Chapitre I : Robot mobile
La distance d séparant l'émetteur et l'obstacle est donnée par:
2
* ytcd =
Avec :
yt : temps de vol.
c : célérité du son.
La célérité du son dépend de la nature du milieu et de sa température (à 25 P
oP c,
airC = 346 m/s).Les avantages d'un système ultrasonore sont:
- Temps de propagation facilement mesurable. - Une mise en œuvre simple.
Le principal inconvénient réside dans le mouvement d'air qui entraîne des
fluctuations de la vitesse de propagation des ultrasons ce qui introduit des erreurs sur la
mesure de la distance.
UI.4.2.1.2) Les capteurs à infrarouge U [BEN 97]
Ce type de télémètre utilise les rayons infrarouges pour mesurer la distance entre
l'objet et le robot. Son principe de fonctionnement est le suivant: Un émetteur (souvent
une diode) est associé à un récepteur (phototransistor) qui est excité par la lumière
réfléchie par l'objet dont on souhaite évaluer la distance ou déterminer la présence. La
figure (fig I.5) donne le principe de base.
Emetteur Récepteur
Objet à détecter
Volume sensible
FigI.5 : Principe d'un capteur infrarouge
Chapitre I : Robot mobile
Ces capteurs présentent un certain nombre d'avantages:
- Des mesures beaucoup plus précises que l'on peut obtenir par les capteurs
ultrasonores.
- Leurs distances minimales de détection descendent au dessous du centimètre, ils
présentent la meilleure solution pour une distance minimum de la détection (de l'ordre
de un millimètre).
- Un coût faible et petit volume.
UI.4.2.1.3) Les capteurs télémétriques laser U [BEN 97]
Avec ce type de capteurs, on peut calculer la distance à partir de différentes
méthodes:
UMesure du temps du vol:
C'est-à-dire de l'intervalle de temps séparant l'émission d'un train d'impulsions, et la
réception de son écho. Une impulsion optique est générée sur une diode Laser
recueillie en retour sur un photodétecteur.
UTriangulation optique:
La distance peut être aussi calculé en mesurant le déphasage entre le signal émis et le
signal reçu. Ce qu'on appelle la triangulation optique.
Une diode Laser émet un faisceau lumineux sur un point de surface, celle-ci diffuse
une partie de la lumière reçue dans tout l'espace dont une partie est collectée par
lentille de détection puis focalisée sur un capteur. Basée sur la mesure de l'angle entre
la direction du faisceau émis et celle sous la quelle est vu le point d'impact (Fig I.6-a).
Cette technique ne marche pas s'il existe des zones d'ombre (Fig I.6-b).
Chapitre I : Robot mobile
I.4.3) La décision [GIA 00]
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.
Dans un robot mobile, il est nécessaire de donner des priorités en fonction des
informations reçues. Par exemple, si un capteur de contact informe d’un choc sur
l’avant, cette information est prioritaire sur un déplacement du robot vers l’avant et
doit entraîner un arrêt ou un déplacement dans une autre direction.
On comprend ainsi toute la difficulté à réaliser cette fonction, car c’est elle qui
donnera vie à notre robot. 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 la 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.
Cette fonction est de loin la plus incomplète, car elle tente d’approcher la
psychologie animale, voire humaine.
Diode Laser Lentille De
focalisation
Capteur
Lentille de détection
Zone ombragée
(a) (b)
Fig I.6 : Télémétrie optique par triangulation
Chapitre I : Robot mobile
I.4.3.1) Autonomie d’un robot mobile [CHO 98]
La principale caractéristique d'un robot mobile est l'autonomie, c'est la capacité du
robot mobile à prendre ses décisions, déterminer ses actions lui-même, dans son
environnement, par le biais des informations collectées par son système de perception
et des connaissances incorporées à priori ou acquises par apprentissage.
I.5) Architecture du robot mobile adopté Nous avons opté pour une architecture assez standard : le robot considéré est
circulaire (ce qui permet au robot de tourner dans la même place sans toucher les
obstacles) doté d'un dispositif de déplacement constitué de deux roues motrices,
directrices et indépendantes. Ainsi que deux roues folles d'équilibrage et trois capteurs
infrarouges (parce qu'il donne des mesures beaucoup plus précises, distance minimale
de détection (de l’ordre de centimètre) et un coût faible et un encombrement minimal) :
l'un frontal et deux latéraux pour assurer le système de perception du robot mobile. Ce
dernier est capable d'effectuer un mouvement de retournement (Fig I.7).
νθ ,
Y yr
0 xr X
Roues folles Equilibrages Roues motrices
Capteurs Infrarouges
Fig I.7: Configuration du robot
Chapitre I : Robot mobile
θ : Orientation du robot.
ν : La vitesse du robot.
),( rr yx : Les coordonnées du robot. R R
I.6) Domaines d'application de la robotique mobile [HROB]
Commençons par les trois domaines majeurs: le nucléaire, le spatial et le sous marin
qui présentent des points communs:
- La nécessité d'adaptation au milieu est primordiale
- La tâche à effectuer est non répétitive.
- En spatial, comme en nucléaire et en sous marin, la difficulté de
communication nécessite l'autonomie du robot.
a) Le nucléaire C'est le domaine le plus ancien, le nucléaire reste un grand utilisateur pour ses
applications classiques: décontamination, inspection et éventuellement intervention en
cas d'accidents. Comme on peut le constater au Service de Téléopération et Robotique
du CEA (Commissariat à l'énergie atomique) à Fontenay-aux-Roses (France).
C'est certainement le domaine ou les architectures utilisés sont les plus variées, car
chaque problème trouve sa solution spécifique: robots longs et fins pour passer dans
des canalisations, hexapodes, véhicules à chenilles, à roues, en trains…
b) Le spatial La robotique spatiale a vraiment progressé dans les années 80. Après des fortunes
diverses dues en partie aux pressions des astronautes pour favoriser les vols habités, la
robotique mobile est revenue en force avec l'exploration martienne et le succès très
médiatisé du petit robot Séjourner qui est un véhicule a six roues déposé le 4 juillet
1997 chargé d'explorer le site.
c) Le sous-marin
Chapitre I : Robot mobile
En sous-marin, la variété des applications s'étend de la recherche océanographique
fondamentale à l'ingénierie. Nous citons: La cartographie des fonds sous marins,
l'inspection des pavés comme l'exploration du TITANIC, l'observation de la flore, de
la faune, de la géologie. Comme en nucléaire les systèmes utilisés diffèrent selon les
applications et la profondeure : Engins téléopérés, véhicules autonomes de longues
portée.
d) Médecine Le monde de la santé est l'un des principaux utilisateurs potentiels de techniques de
la robotique mobile; dans des hôpitaux ou des maisons de retraite, des prototypes de
robots mobiles circulants dans les couloirs et les chambres pour livrer des médicaments
et plateaux-repas.
e) Les véhicules automatiques Les recherches en assistance à la conduite des automobiles ou des camions, incluant
même une automatisation partielle de celle-ci, utilisent largement les résultats des
travaux sur les robots mobiles en localisation, évitement d'obstacles, planification des
mouvements. Plus spécifique est le développement assez récent des études sur les
'drones', petits véhicules volants (dirigeables, avions hélicoptères), partiellement
téléopérés ou autonomes. Outre que les applications militaires de surveillance ou de
renseignement, il existe de nombreux besoins civils qui pourront être satisfait par de
tels systèmes: cartographie automatique, inspection de lignes de haute tension,
localisation d'accidentés en montagnes, sécurité, …etc. On retrouve dans ce domaine
les problèmes de localisation et de perception de l'environnement des robots mobiles
terrestres, auxquels s'ajoutent des questions délicates de pilotage.
Chapitre I : Robot mobile
I.7) Conclusion Dans ce chapitre nous avons présenté : les différents types des robots, architecture
d'un robot mobile (c'est-à-dire la locomotion, la perception et la décision) et
l'architecture adoptée.
La robotique mobile connue une grande révolution. Elle est devenue indispensable et
ces applications sont reparties dans presque dans tous les domaines de la vie.
La robotique mobile va bien sûr continuer à intégrer les progrès de l’informatique, et
en premier lieu bénéficier d’algorithmes de plus en plus complexes, exécutables en
temps réel. Mais aussi, via les techniques d’accès aux réseaux Internet par mobiles.
Plus largement, un couplage avec de futurs agents de recherches intelligents sur
Internet permettra par exemple à un robot de compagnie d’être aussi une interface
avec des connaissances repartis dans le monde entier. Les robots mobiles vont aussi se
bénéficier du développement de la mécanique, l’électronique. Il va être composé de
capteurs intelligents, micro contrôleurs, se sont des facteurs de fiabilité et de baisse de
coût.
Les robots mobiles vinrent en principe gagner en autonomie. Ils se déplaceront dans
des lieus publics, comme par exemple un robot guide de musée ou chien d’aveugle, et
devront éviter toute collision.
Stratégie de navigation d'un robot mobile
Chapitre II : Stratégie de navigation d'un robot mobile
II.1) Introduction La possibilité de naviguer avec une certaine autonomie dans un environnement
contenant des obstacles est l'un des problèmes des robots mobiles. Le manque
d'autonomie en navigation peut conduire à des résultats erronés et des difficultés de
modélisation de l'environnement.
L'autonomie de navigation d'un robot mobile est la capacité des robots à prendre des
décisions indépendamment de l'opérateur humain dans leurs déplacements.
Il existe deux approches de navigation : approches classiques qui présentent certaines
limites d'application et approches actuelles, qui sont les nouvelles techniques basant
sur l'intelligence artificiel tell que les réseaux de neurones, algorithmes génétiques et la
logique floue. Offrant les nouveaux apports à la robotique mobile en particulier
l'autonomie du robot. Pour cette raison nous avons adopté pour la navigation d'un robot
mobile, la logique floue.
II.2) Architecture de commande d'un robot mobile [LIM 91]
La commande d'un robot mobile autonome passe par trois niveaux hiérarchiques
selon leur niveau de priorités: planificateur – navigateur – pilote, ceci constitue le
module de raisonnement du robot mobile (Fig II.1).
PLANIFICATEUR
NAVIGATEUR
PILOTE Perception de L'environnement
Actionneurs
Fig II.1: Décomposition hiérarchique classique de la commande
du robot mobile
Chapitre II : Stratégie de navigation d'un robot mobile
II.2.1) Planification Planification est le sommet de la structure hiérarchique de la commande, sa fonction
est de générer une trajectoire pour le robot mobile de sa position courante à la position
finale. Le planificateur avec un modèle de l'environnement produit une trajectoire qui
est passée au contrôleur du robot qui à son tour l'exécute. Lorsque, l'environnement est
inconnu (la dimension, la forme et la localisation des obstacles sont inconnus), le
planificateur se base sur les informations sensorielles.
II.2.2) Navigation
La navigation est définie comme l'art de se diriger vers une destination finale et cela
détermine la localisation du robot et sa route, ainsi que la distance parcourue. Le
module assurant cette action est le navigateur, il a deux fonctions:
1. Il est chargé de suivre les contours du lieu d'évolution et de transmettre les
informations sur l'environnement au planificateur.
2. Il prend en charge les modifications de la trajectoire en fonction du changement de
l'environnement lors d'une mission donnée.
II.2.3) Le pilotage Le pilotage consiste à asservir le mouvement lors de suivi d'une trajectoire planifiée.
Le pilote gère les fonctions de bas niveaux, tels que les asservissements, ainsi que les
informations issues des capteurs. Il permet de trouver les consignes à appliquer aux
actionneurs.
II.3) Tactique de navigation [BEN 97]
On peut classer les tactiques de navigation en trois groupes, suivant que le robot ne
connaît rien de son univers de déplacement, qu'il le connaît totalement, ou qu'il le
découvre au fur et à mesure de son déplacement.
II.3.1) Navigation dans un environnement totalement inconnu Cette tactique concerne les robots mobiles isolés de toute information de
l’environnement du travail, donc le chemin ne peut être planifié avant l’action, pour
Chapitre II : Stratégie de navigation d'un robot mobile
cela, les robots chercheront seulement à éviter les obstacles pour atteindre leurs buts à
l’aide d’un télémètre. Les primitives suivantes sont prises en compte :
- aller en ligne droite sur une longueur donnée ;
- tourner d’un angle donné ;
- orienter un télémètre dans une direction donnée.
Comme les robots ne possède aucune information concernant l’univers de travail, ils
sont appelés à prendre en charge les trois primitives déjà citées pour déterminer
l’enchaînement des tâches à accomplir. Si un obstacle est détecté, le robot le contourne
par tâtonnement ou en tournant d’un angle et en avançant d’une certaine distance et
cela d’une façon continue jusqu’à atteindre le but.
II.3.2) Navigation dans un environnement totalement connu Comme la connaissance de l’univers est donnée par l’utilisateur, alors le seul objectif
principal du robot est de modéliser cet environnement. Dans ce type d’environnement,
la tactique de circulation du robot est bien évidente, elle est basée sur les méthodes de
recherche des chemins optimaux engendrés par la théorie des graphes, et ceci en
considérant l’environnement comme étant un graphe.
II.3.3) Navigation dans un environnement partiellement connu Ce type d’environnement est dû : aux limites de son organe de " vision", ou aux
ajouts des obstacles à l’environnement. La tactique suivie dans ce cas est une
combinaison des deux tactiques précédentes, le robot commence par l’exécution de la
deuxième tactique, en utilisant sa mémoire qui contient des informations globales con-
cernant son environnement, et en gardant les coordonnées de départ et les obstacles
éventuels, ensuite il estime la trajectoire optimale. En cas où le robot détecte un nouvel
obstacle inconnu pour sa mémoire, il prend en compte la première tactique, et intègre
les connaissances impliquant cet obstacle dans sa carte mémoire.
Chapitre II : Stratégie de navigation d'un robot mobile
II.4) Les méthodes de navigation d'un robot mobile [CHO 98] Le choix des approches de planification et de contrôle de la navigation est
étroitement lié à la nature de l'environnement où se déplace le robot mobile, les
approches classiques de navigation souvent supposent une connaissance à priori de
l'environnement, c'est-à-dire l'environnement est totalement ou partiellement connu.
Contrairement aux approches actuelles où le robot n'a aucune idée sur son
environnement, donc il n'a pas la possibilité de planifier son chemin.
II.4.1) Approches classiques Plusieurs approches classiques ont été développées, mais la plupart d’elles ont le
point commun de planifier une trajectoire continue et libre d'obstacles. Parmi ces
méthodes:
a) Approches basées sur le raisonnement géométrique
Cette approche, le robot est modélisé comme une forme géométrique, ou un point
dans un environnement statique, complètement connu. Le problème se transforme en
un problème géométrique de planification de chemins et de génération de trajectoires
pour le contrôle.
b) Approches basées sur la configuration de l'espace
Dans cette approche, l'espace de travail du robot est divisé en petites cellules (sous
forme de rectangles ou carrés) ayant une taille fixe. Le centre de chaque cellule est
localisé dans un espace cartésien dont les éléments sont 0 et 1 suivant que la cellule
correspondante est libre ou occupée par un obstacle. L'environnement est donc
complètement connu est configuré en un modèle de grille. La génération d'une
trajectoire libre d'obstacles est basée sur ce modèle.
c) Approches basées sur le champ de potentiel artificiel
Ces approches basées sur le champ de potentiel artificiel développées par O.Khatib
[KHA 86] ont été les plus utilisés pour la planification et le contrôle de la navigation.
Par contre, ces approches peuvent être envisagées pour une éventuelle application en
temps réel à condition de résoudre le problème de 'serrure' c'est-à-dire, dans le cas
d'équilibre des forces.
Chapitre II : Stratégie de navigation d'un robot mobile
En réalité, la navigation d'un robot mobile dans son environnement est un problème
ci complexe, car on ne peut pas connaître tous les environnements où il navigue. Un
robot mobile est destiné à réaliser des tâches bien définies dans différents
environnements qui peuvent être complexes. Son comportement doit être basé sur la
manière dont se comporte l'être humain. Le processus de navigation doit être décrit
d'une façon comportementale et non pas mathématique comme le fait les approches
classiques.
II.4.2) Approches actuelles L'environnement dans lequel se navigue un robot mobile n'est pas toujours connu, et
pour la plus part des cas il est impossible de générer des trajectoires sans collision à
l'avance dans tous les cas. Un robot mobile au cours de la navigation doit éviter les
obstacles statiques ou dynamiques et localiser la cible. L'environnement où il se trouve
est donc inconnu et changeable, les informations obtenues sur son environnement
peuvent être imprécise et incertaines. Une description mathématique de ce problème ne
tolère pas l'imprécision ni l'incertitude, ce qui ne constitue pas une solution adéquate à
un tel problème.
Un problème de navigation d'un robot mobile nécessite que le robot soit intelligent,
autonome et arrive à réagir en temps réel dans toute situation. Son comportement est
semblable au comportement de l'être humain dans de telles situations. Plusieurs
heuristiques simulant le raisonnement humain ont été proposées dans la navigation
d'un robot mobile ce qui est appelé 'soft computing'. Les nouvelles approches se basent
essentiellement sur les réseaux de neurones, les algorithmes génétiques et la logique
floue.
a) Les réseaux de neurones et la robotique mobile
Les réseaux de neurones sont utilisés pour mimer le cerveau humain. L'intérêt de les
utiliser est de construire des systèmes artificiels capables d'apprendre, et d'exécuter des
tâches complexes exigeants un traitement parallèle. Dans la navigation d'un robot
mobile se basant sur les réseaux de neurones, le robot doit prévoir et percevoir
l'environnement, son comportement est basé sur des règles acquises au fur et à mesure
Chapitre II : Stratégie de navigation d'un robot mobile
de sa navigation. Les réseaux de neurones sont des techniques d'apprentissages et
d'auto adaptation.
b) Les algorithmes évolutionnaires et la navigation du mobile [VIC 98]
Les algorithmes évolutionnaires (stratégies d'évolution, Algorithmes génétiques, …)
sont des heuristiques bases sur la théorie d'évolution des espèces.
Les organismes biologiques peuvent être une source d'inspiration pour construire et
contrôler des robots autonomes. Les animaux, les êtres humains sont des vrais agents
autonomes qui représentent une adaptation robuste, et un comportement stable dans
des environnements changeables sans une supervision externe.
Les algorithmes génétiques sont donc appelés pour la conception d'un comportement
robuste et adaptatif du robot dans un environnement changeable et inconnu.
c) La navigation d'un robot mobile par la logique floue
La logique floue est un mode de raisonnement très proche de la pensée humaine, elle
traduit les connaissances et le raisonnement d'un expert humain en règles simples qu'un
système artificiel peut utiliser. La logique floue est utilisée dans la navigation d'un
robot mobile en intégrant la connaissance de l'être humain dans le système mobile, son
comportement est généré par un mécanisme d'inférence flou se basant sur cette
connaissance. La logique floue offre de grands avantages: comme la réaction en temps
réel du mobil, puisque la connaissance est incorporée à priori. Elle tolère l'imprécision
des données prises par les capteurs, ce qui permet de réduire le coût de conception.
Nous avons fournies la logique floue pour la navigation d'un robot mobile dans notre
thème.
d) Soft computing
Ces méthodes et encore d'autres du 'soft computing' sont très intéressantes pour la
résolution du problème de la navigation du robot mobile autonome. Plusieurs
approches portent sur l'utilisation de l'une de ces méthodes qu'on appelle les systèmes
intelligents ou bien l'hybridation entre deux ou plusieurs méthodes en exploitant leurs
propriétés complémentaires. Ce qu'on appelle les systèmes hybrides intelligents.
Chapitre II : Stratégie de navigation d'un robot mobile
II.5) La stratégie de navigation La stratégie de navigation concerne les diverses méthodes de déplacement du mobile
en accord avec le type de tâches envisagées. Trois types de navigation sont à
distinguer :
- le déplacement d’un point vers un autre est la stratégie la plus courante. Elle
consiste à générer les commandes afin que le robot atteigne un point de l’espace (2D
ou 3D). Les primitives de commande sont du type "aller à (x, y) "[PRU 88].
On utilise aussi deux comportements afin d'assurer au mieux la navigation d'un robot
mobile.
UComportement évitement d'obstacles fixes
Il permet au robot de réagir en temps réel aux éventuels obstacles rencontrés.
A titre d’exemple : si le robot détecte un obstacle à l'avant, un obstacle à droite, aucun
obstacle à gauche et la cible est à droite, alors il tournera à gauche avec un vitesse
moyenne. A titre d’exemple nous citons la règle suivante :
SI la distance gauche est loin ET la distance frontale est près ET la distance droite est
près ET la cible à droite ALORS tourne gauche ET vitesse moyenne.
Fig II.2: Evitement l’obstacle
robot
cible
Chapitre II : Stratégie de navigation d'un robot mobile
UComportement rapprochement du but
Il permet au robot de rapprocher la cible et de s'immobiliser lorsque celle-ci est
atteinte. Pour ce comportement nous donnons deux exemples.
SI la distance gauche est loin ET la distance frontale est loin ET la distance droite est
loin ET la cible à droite ALORS tourne droite ET vitesse nulle.
SI la distance gauche est loin ET la distance frontale est loin ET la distance droite est
loin ET la cible à gauche ALORS tourne gauche ET vitesse nulle.
- Le balayage de zone est essentiellement utilisé par le robots dont la tâche
consiste à parcourir toute la surface afin d’y effectuer un travail (notamment le
nettoyage). Deux algorithmes définissent les tactiques de déplacement :
* le déplacement en spirale constitue une méthode de déplacement
parallèlement aux trajectoires déjà utilisées à partir du périmètre extérieur de
l’environnement et en allant de proche en proche vers le centre [PRU 88].
Fig II.3: Rapprochement la cible
robot
cible
Chapitre II : Stratégie de navigation d'un robot mobile
* le déplacement en zig-zag consiste à parcourir la zone utile de gauche à
droite et de haut en bas (ou inversement) [PRU 88].
Dans le cas environnement complexe, c'est-à-dire avec de nombreux obstacles, la
méthode consiste à partager l’ensemble en zones dans lesquelles seront appliqués un
des algorithmes cités. Le problème consiste à minimiser le nombre de surfaces
élémentaires traverses plusieurs fois ainsi que le nombre de mouvements de rotation à
appliquer au mobile [PRU 88].
Fig II.4: Navigation en spirale
Fig II.5 : Navigation en zig-zag
Chapitre II : Stratégie de navigation d'un robot mobile
- La poursuite consiste à suivre :
* un autre mobile qui se déplace
* un élément de l’environnement (exemple : poursuite de route) [PRU 88].
II.6) Problèmes de la navigation des robots mobiles [BEN 97]
Les problèmes de la navigation des robots mobiles sont :
- contrainte géométrique, planification de la trajectoire et évitement obstacles, il
s’agit de trouver une séquence continue de positions et d’orientations d’un robot
mobile dans l’environnement ;
- contrainte cinématique, une trajectoire géométrique sans collision peut être une
trajectoire cinématiquement non réalisable ;
- estimation de la position instantanée (localisation), c'est-à-dire estimer à chaque
instant les coordonnées x, y et l’orientation.
II.7) Planification d'une trajectoire [RDIS]
La planification de trajectoires sans collision dans des environnements a été le sujet
d'un nombre très important de recherches ces dernières années. Toutefois, de nos jours,
Fig II.6 : Partage de l’environnement en zones
Chapitre II : Stratégie de navigation d'un robot mobile
très peu de planificateurs sont efficaces lorsque l'espace de travail est très encombré.
Le problème peut se traduire de la façon suivante : étant données une configuration
initiale et une configuration finale, trouver une trajectoire qui amène le robot à la
position finale souhaitée, si elle existe, tout en évitant les obstacles.
Il existe deux types d'approches pour la recherche de trajectoires : les méthodes
globales et locales. Les méthodes globales sont basées sur la connaissance de
l'ensemble de l'espace libre. La construction de cet espace est très coûteuse en temps de
calcul et n'autorise pas l'utilisation de telles méthodes en temps réel. Les méthodes
locales se caractérisent par la connaissance locale de l'environnement et l'ensemble de
règles. A chaque pas de déplacement l'algorithme détermine l'existence ou non de
collisions, si c'est le cas, alors la trajectoire est modifiée localement. Toutefois avec ces
méthodes on peut trouver des minima locaux dus à la nature locale de l'approche.
II.8) Conclusion Dans ce chapitre nous avons présenté l’architecture de commande d'un robot mobile,
les tactiques de navigation, les stratégies de navigation et planification d'une
trajectoire. Le choix d’une méthode de navigation dépend fortement de
l’environnement.
Les approches actuelles de navigation d’un robot mobile sont : les réseaux de
neurones, les algorithmes évolutionnaires et la logique floue.
Dans ce contexte nous avons choisi la logique floue pour la navigation du robot
mobile. La logique floue est un outil très robuste de l’intelligence artificielle. Elle sera
étudie dans le chapitre suivant.
La logique floue
Chapitre III : La logique floue
30
III.1) Introduction 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.
Pour s'approcher du mode de raisonnement humain dans la manipulation des
connaissances vagues, imprécises et incertaines, plusieurs théories ont été
développées. La théorie des ensembles flous énoncée par L.A.ZADEH (professeur à
l'université de BERKLEY en Californie) est l'une des théories qui a connu un
véritable engouement actuellement, pour les applications de contrôle des systèmes et
dans plusieurs autres domaines.
Les ensembles flous constituent une généralisation de la théorie classique des
ensembles et admettent des situations intermédiaires entre le 'vrai' et le 'faux', ils
établissent une interface entre des données décrites symboliquement (des mots) et des
données numériques (des chiffres), ce qui a fait de cette théorie le modèle préférable
pour représenter les notions vagues du langage naturel afin de pallier l'inadaptation de
la théorie des ensemble dans ce domaine.
La logique floue est donc un outil pour la manipulation et la représentation des
connaissances imparfaitement décrites, ses objets sont modélisés par des ensembles
flous support de base des notions vagues.
III.2) Qu’est-ce que la logique floue ? [BER 95]
Le terme de ‘’logique flou’’ a deux acceptions :
- La première, que nous avons adoptée correspond à tous les
développements concernant la théorie de sous-ensembles flous.
- La seconde représente une extension de la logique classique, dans le but
de raisonner sur des connaissances imparfaites.
Chapitre III : La logique floue
31
III.3) Historique [JEA95] Les racines de logique floue se trouvent dans le principe d’incertitude de
Heisenberg. Dans les années 20, les physiciens ont introduit la troisième valeur ½
dans le système logique bivalent {0,1}.
Au début des années 30, le logicien polonais Jan Lukasiewiez a développé le
système logique avec trois valeurs puis tous les nombres rationnels entre 0 et 1. Il a
défini la logique floue comme une logique qui utilise la fonction générale de vérité,
laquelle associe à une affirmation un niveau de vérité qui peut prendre toutes les
valeurs entre 0 (faux) et 1 (vrai), c'est-à-dire
T : {Affirmation} → [0,1].
Dans les années 30. Max Blak a appliqué la logique floue aux ensembles d’éléments
ou des symboles. Il a appelé imprécision l’incertitude de ces ensembles. Il a dessiné la
première fonction d’appartenance (membership function) d’un ensemble flou.
En 1965 Lotfi Zadeh a publié l’article «fuzzy set » dans lequel il a développé la
théorie des ensembles flous et introduit le thème fuzzy dans la littérature technique.
Les premiers résultats en commande floue ont été publiés par Mamdani et assilian
en 1975, ce qui encouragé différentes activités en Angleterre, au Danemark et en
France.
Après 1980, les recherches s’arrêtent en Europe mais les Japonais les reprennent.
Leur industrie a lancé de nombreux produits basés sur la logique floue, notamment des
appareils électroménagers et des matériels audio visuel. Actuellement, la logique floue
est considérée comme un outil de base au Japon, et les principales directions de
recherche sont la combinaison de la logique floue, des algorithmes génétiques et des
réseaux de neurone.
III.4) Pourquoi utiliser la logique floue ? [BER 95]
Il convient d’utiliser la logique floue lorsque des imperfections entachent la
connaissance dont nous disposons sur le système, et lorsque la modélisation
rigoureuse de celui-ci est difficile, lorsqu’il est très complexe, lorsque notre façon
Chapitre III : La logique floue
32
naturelle de l’aborder passe par une vue globale de certains de ses aspects.
Si elle impose une standardisation de la signification des descriptions du système
exprimées linguistiquement, ce qui peut sembler rédacteur par rapport à une utilisation
purement symbolique des descriptions linguistiques, la logique floue présente
l’avantage de permettre le passage d’une telle description d’un expert ou d’un
observateur à l’autre et la mise au point d’une standardisation consensuelle en cas de
divergence de signification entre deux individus. De toutes façons, les descriptions
linguistiques ne sont elles-mêmes que des schématisations de la situation réelle,
dépendant du langage utilisé et également du modèle du monde dans lequel se situer le
système. Un expert exprime différemment ses connaissances sur un même point, donc
représente différemment ses connaissances, selon qu’il participe à une émission de
radio ou qu’il s’adresse à ses condisciples, par exemple, et l’introduction de sous-
ensembles flous n’est qu’une autre représentation de ses connaissances, dans un but
d’automatisation de processus concernant le système.
Insistons pour terminer sur le fait que la logique floue est le seul cadre dans lequel
puissent être traitées des imprécisions et des incertitudes, qui autorise également le
traitement de certaines incomplétudes, et le seul cadre dans lequel puissent être traitées
des connaissances numériques et des connaissances exprimées symboliquement par
des qualifications du langage naturel.
III.5) Théorie de sous ensemble flou
III.5.1) Concept de sous-ensemble flou [BER 95]
Le concept de sous-ensemble flou a été introduit pour éviter les passages brusques
d’une classe à une autre (de la classe noire à la classe blanche par exemple) et autoriser
des éléments à n’appartenir complètement ni à l’une ni à l’autre (à être gris, par
exemple), ou encore à appartenir partiellement à chacune (avec un fort degré à la classe
noire et un faible degré à la classe blanche dans le cas du degré foncé).
Chapitre III : La logique floue
33
La notion de sous-ensemble flou permet de traiter :
- des catégories aux limites mal définies,
- des situations intermédiaires entre le tout et le rien ("presque noire"),
- le passage progressif d’une propriété à une autre (de "proche" à "éloigné"
selon la distance),
Le concept de sous-ensemble flou constitue un assouplissement de celui de sous-
ensemble flou d’un ensemble donné. Il n’existe pas d’ensemble flou au sens propre,
tous les ensembles considérés étant classiques et bien définis. On utilise toutefois
souvent le terme d’ensemble flou au lieu de sous-ensemble flou, par abus de langage,
conformément à la traduction du terme original de "fuzzy set", que l’on peut oppose à
«grisp set» désignant un sous-ensemble non flou.
III.5.2) Définition d’un sous-ensemble flou [BER 95]
Un sous-ensemble classique A de X est défini par une fonction caractéristique XA qui
prend la valeur 0 pour les éléments de X n’appartenant pas à A et la valeur 1 pour ceux
qui appartiennent à A :
XA : X → {0,1}
Par contre un sous-ensemble flou A de X est défini par une fonction
d’appartenance qui associe à chaque élément x de X, le degré ƒA (x), compris entre 0 et
1, avec lequel x appartient à A :
fA : X → [0, 1].
Dans le cas particulier où fA
Dans un ensemble de référence E, depuis [Zadeh 65] et [kaufmann 72], un sous-
ensemble flou de référentiel E est caractérisé par une fonction d’appartenance µ de E
dans l’intervalle des nombres réels [0,1] (degré d’appartenance qui est l’extension de la
fonction caractéristique d’un sous-ensemble classique). En fait un sous-ensemble flou
(nous dirons plus brièvement un ensemble flou) est formellement défini par
ffffffffffffff
ne prend que des valeurs égales à 0 ou 1, le sous-
ensemble flou A est un sous-ensemble classique de X. Un sous-ensemble classique est
donc un cas particulier de sous-ensemble flou.
Chapitre III : La logique floue
34
l’application µ, mais pour se ramener au langage des mathématiques classiques, nous
parlerons d’un ensemble flou A, et noterons µA sa fonction d’appartenance [GAC 97].
Cependant, si on prend un concept aux limites floues par exemple : "cet homme est
d’un âge moyen" c’est une propriété qui est vague. Si l’on considère que l’âge moyen
est de 45 ans, les personnes de 35 ans ou 55 ans ne peuvent être situées "tout à fait en
dehors de l’âge moyen" Au contraire les gent dont l’âge est inférieur à 30 ans ou
supérieur à 60 ans peuvent être considérés comme "tout à fait dehors de l’âge
moyen".Un tel concept peut être représenté avec un ensemble flou d’âge entre 30 et 60
ans est une échelle, un degré d’appartenance entre 0 et 1, afin de restituer les nuances
inhérentes à ce concept vague, mal adapté à la notion d’appartenance du modèle
ensembliste classique. On pourrait donc par convention attribuer un degré
d’appartenance 1 à l’âge de 45 ans pour dire qu’il est vraiment de l’âge moyen, alors
qu’un homme de 55 ans se verrait attribuer un degré de 0.3 pour dire qu’il est plus ou
moins d’un âge moyen. Un ensemble flou se présente grâce à cette fonction
d’appartenance (Fig III.1) [JEA 95].
Dans notre exemple U peut être l’ensemble de tous les âges U = [0, 120], l'ensemble
flou A est l'ensemble des âges satisfaisant la propriété vague "âge moyen" avec un
degré de confiance représenté par la fonction d’appartenance µA
[JEA 95].
âge moyen
0 30 45 55 60 âge (années)
1 0.3
Degré d'appartenance
Fig III.1 : Représentation d’un ensemble flou
Chapitre III : La logique floue
35
III.5.3) Fonction d’appartenance [BOR 98]
L’application µA est appelée fonction d’appartenance de l’ensemble flou A
généralisant ainsi le concept d’appartenance de la théorie classiques des ensembles :
A tout élément x de U la valeur µA (x) associées n’est pas nécessairement égale à 0 ou
à 1, elle est à priori quelconque et désigne le degré d’appartenance de x à l’ensemble
de A.
L’argument x se rattache à la propriété vague représenté par l’ensemble flou A.
Lorsque cette propriété correspond à l’énoncé de la valeur de variable x = x0, on aura
µA(x) = 1 pour x = x0 et µA(x) = 0, pour x ≠ x0 on alors un singleton. Le tel que x à
peu prés égal à x0 aura une fonction d’appartenance en forme triangle. L’affirmation x
à peu prés compris entre x1 et x2
La théorie des ensembles flous ne fournie pas assez d’outils d’aide pour la
détermination de la fonction d’appartenance appropriée, le plus souvent on utilise les
deux dernières formes : Triangulaire et trapézoïdale.
III.5.4) Caractéristiques d’un sous-ensemble flou [BER 95]
Les caractéristiques d’un sous-ensemble flou A de X les plus utiles pour le décrire
sont celles qui montrent à quel point il diffère d’un sous-ensemble classique de X.
correspond à une fonction d’appartenance
trapézoïdale (Fig III.2).
Fig III.2 : Fonction d'appartenance pour les trois cas
0 x0 x
1
µ(A)
0 x1 x2 x
1
µ(A)
0 x0 x
1
µ(A)
Chapitre III : La logique floue
36
a) Support
La première de ces caractéristiques est le support de A, c’est-à-dire l’ensemble des
éléments de X qui appartiennent, au moins un peu, à A.
Le support de A, noté Supp (A), est la partie de X sur laquelle la fonction
d’appartenance de A n’est pas nulle :
Supp (A) = {x ∈X / fA (x) ≠ 0}.
b) Hauteur
La deuxième caractéristique de A est sa hauteur, notée h (A), c’est-à-dire le plus fort
degré avec lequel un élément de X appartient à A.
La hauteur, notée h (A), du sous-ensemble flou A de X est la plus grande valeur
prise par sa fonction d’appartenance :
h (A) = sup x∈X fA (x).
c) Normalisé
On utilise souvent des sous-ensembles flous normalisés, c’est-à-dire pour lesquels il
existe au moins un élément de X appartenant de façon absolue (avec un degré 1) à A.
La théorie des possibilités, fait appel à des sous-ensembles flous normalisés.
Le sous-ensemble flou A de X est normalisé si sa hauteur h (A) est égale à 1.
d) Noyau
Un sous-ensemble flou normalisé suppose qu’il existe des éléments de X typiques de
la propriété à laquelle il est associé. Ce sont éléments appartenant de façon absolue à
A, dont l’ensemble est appelé le noyau de A.
Le noyau de A, noté noy (A), est l’ensemble des éléments de X pour lesquels la
fonction d’appartenance de A vaut 1 :
noy (A) = {x∈X / fA
(x) = 1}.
e) Cardinalité
Lorsque X est fini, on caractérise également le sous-ensemble flou A de X par sa
cardinalité, qui indique le degré global avec lequel les éléments de X appartiennent à
A.
Chapitre III : La logique floue
37
La cardinalité du sous-ensemble flou A de X est défini par :
|A| = ∑ x ∈X fA (x).
Si A est un sous-ensemble flou ordinaire de X, sa hauteur est égale à 1 ; il est
normalisé et identique à son support et à son noyau ; sa cardinalité est le nombre
d’éléments qui le composent, selon la définition classique.
f) α-coupes
Pour un seuil donné α de [0, 1], on définit la α-coupe du sous-ensemble flou A de X
(ou sous-ensemble de niveau α associé à A) comme le sous-ensemble Aα = {x ∈ X / fA
(x) ≥ α} de X, dont la fonction caractéristique XAα est telle que :
XAα (x) = 1 si et seulement si fA
∀ x ∈X f
(x) ≥ α .
III.5.5) Opérations sur les sous-ensembles flous [BER 95]
La description d’un sous-ensemble flou A de l’ensemble de référence X correspond à
l’identification des degrés avec lesquels une propriété Prop (A) est satisfaite,
éventuellement imparfaitement, par les éléments de X. peut-on construire le sous-
ensemble flou défini par les règles avec lesquelles Prop (A) n’est pas satisfaite ? Peut-
on construire celui défini par les degrés avec lesquels deux propriétés Prop (A) est
Prop (B) sont satisfaites simultanément ? Des opérations sur les ensembles flous sont
définies pour répondre à de telles questions. Le concept de sous-ensemble flou de X
étant une généralisation de la notion sous-ensemble classique de X, ces opérations sont
choisies de façon à être équivalentes aux opérations classiques de la théorie des
ensembles lorsque les fonctions d’appartenance ne prennent que les valeurs 0 ou 1.
a) Egalité et inclusion de sous-ensembles flous [BER 95]
Deux sous-ensembles flous A et B de X sont égaux si leurs fonctions
d’appartenances prennent la même valeur pour tout élément de X :
A (x) = ƒB
Etant donné deux sous-ensembles flous A et B de X, on dit que A est inclus dans B et
on note A ⊆ B, si leurs fonctions d’appartenance sont telles que :
∀ x ∈X f
(x).
A (x) ≤ ƒB (x)
Chapitre III : La logique floue
38
b) Intersection et union de sous-ensembles flous [BER 95]
L'intersection de deux sous-ensembles flous A et B de X est le sous-ensemble flou C,
que l'on note A ∩ B, tel que :
∀ x ∈ X fC (x) = min (fA (x), fB (x)).
L'union de deux sous-ensembles flous A et B de X est le sous-ensemble flou D, que
l'on note A ∪ B, tel que :
∀ x ∈ X fD (x) = max (fA (x), fB (x)).
c) Complément d'un sous-ensemble flou [BER 95]
Le complément Ac d'un sous-ensemble flou A de X défini comme le sous-ensemble
flou de X de fonction d'appartenance :
∀ x ∈ X fAc (x) = 1 – fA (x).
d) Définitions des T_normes et T_conormes [GAC 97]
Les t_normes [Menger 42] étendent la conjonction ordinaire. Les t_normes T sont les
applications commutatives, associatives, croissantes de [0,1]2 dans [0,1] (telles que a ≤
Les t_conormes sont les applications S commutatives associatives croissantes depuis
[0, 1]
c et b≤ d entraînement T (a, b) ≤ T (c, d)) vérifiant T (0, 0) = 0 et où 1 est neutre, pour
tout a T (a, 1) = a (la stricte monotonie n'est pas exigée par la définition).
Une t_norme est dite diagonale si et seulement si T (x, x) ≤ x pour x < 1.
Les plus connues sont :
2 dans [0, 1] (telles que a ≤ c et b≤ d entraînement S (a, b) ≤ S (c, d)) vérifiant
T0 (a, b) = si max (a, b) = 1 alors min (a, b) si non 0 (produit drastique de weber)
T1 (a, b) = max (0, a+b-1) (Lukasiewiez) T1,5 (a, b) = ab/(2-a-b+ab) (Einstein) T2 (a, b) = ab (algébrique ou probabiliste) T2,5 (a, b) = ab/(a+b-ab) (Hamacher) T3 (a, b) = min (a, b) (Zadeh)
Chapitre III : La logique floue
39
S (1, 1) = 1 et telles que pour tout a, on ait S (a, 0) = a (0 pour neutre). En notant
N (a) = 1- a la négation, les deux notions sont évidemment duales ce qui signifie :
S (a, b) = N (T (N (a), N (b))). On a donc les t_conormes associées :
III.5.6) Les relations floues
III.5.6.1) Définitions d’une relation floue [HEN 94)
Soit U=U1×U2 le produit cartésien de deux univers U1 et U2. On appelle relation
floue entre U1 et U2 un ensemble flou R dans U1×U2 (relation binaire) cette définition
peut généraliser à produit cartésien d’ordre n, dans ce cas R est un ensemble flou dans
U1× U2×…× Un (relation n-aire).
La fonction d’appartenance µR (x1, x2,…, xn) est une application du produit cartésien
U dans l’intervalle [0,1].
µR : U1, U2,…, Un → [0,1]
III.5.6.2) Les différentes relations floues
a) Le produit cartésien [HEN 94]
Soient n ensembles flous A1, A2,…, An de référentiels U1, U2,…, Un; le produit
cartésien des ensembles flous est l’ensemble flou noté A1× A2×…× An
Dont la fonction d’appartenance est
µA1xA2x…xAn (x1, x2, …, xn) = Min (µA1(x1), µA2(x2), ..., µAn(xn))
Pour un produit cartésien d’ordre 2 on a :
µA1xA2 (x1, x2) = Min (µA1(x1), µA2 (x2))
S (a, b) = si min (a, b) = 0 alors max (a, b) si non 1 (weber) S1 (a, b) = min (1, a+b) (Lukasiewiez) S1,5 (a, b) = (a+b)/(1+ab) (Einstein) S2 (a, b) = a+b-ab (Probabiliste) S2,5 (a, b) = (a+b-2ab)/(1-ab) (Hamacher) S3 (a, b) = max (a, b) (Zadeh)
Chapitre III : La logique floue
40
b) Projection d’un ensemble flou [JEA 95]
Soit un sous ensemble flou A défini sur univers U1 × U2, produit cartésien de deux
ensembles de référence U1 et U2. La projection sur U1 du sous ensemble flou A de U1
× U2 est le sous ensemble flou projU1 (A) de U1 dont la fonction d’appartenance est
définie par :
∀ x1 ∈ U1, µprojx1(U1) = supx2∈U2 µ(x1, x2)
c) Composition des relations floues [HEN 94]
Il existe différents types d’opérations permettant la composition de deux ou plusieurs
relations floues. Nous proposons ici uniquement les opérations de types max-min et
max-prod pour la composions de deux relations floues R entre U1 et U2 et S entre U2
et U3.
1) Composition max-min :
La relation floue composée de R et de S est une relation floue entre U1et U3 et notée
RoS et dont la fonction d’appartenance est défini par :
µRoS(x, z) = Maxy∈U2 [Min (µR(x, y), µS(y, z))]
2) Composition Max-prod :
On désigne par * une opération de type produit, on a
µRoS(x, z) = Maxy∈U2 (µR(x, y)* µS
(y, z))
III.6) Les variables linguistiques [JEA 95]
La logique floue, généralement appelée logique linguistique manipulant des valeurs
de vérité floues servira par conséquent de modèle mathématique pour le raisonnement
humain et pour tout système basé sur l'inférence floue. La plupart des objets de base
manipulée par la logique linguistiques sont flous par nature. Il s'agit en particulier des
objets suivants:
- valeurs de vérités floues: vrai, faux, presque vrai, plus ou moins faux, …etc.
- quantificateurs flous: habituellement, presque tout, généralement, beaucoup,
rarement, …etc.
Chapitre III : La logique floue
41
- prédicats flous: jeune, vieux, grand, petit, intelligent, cher, normal, …etc.
- modificateur flous:
III.6.1) Définition des variables linguistiques [JEA 95]
très, plus ou moins, vraisemblablement, hautement, plutôt, …etc.
Une variable linguistique est définie par un triplet (X, U, Tx) ou X désigne le nom
de la variable, U le référentiel, et Tx
III.6.2) Univers de discours [BOR 98]
l'ensemble fini ou non des valeurs linguistiques de
la variable X appelées termes. Les termes sont des mots ou des expressions vagues du
langage naturel comme petit, jeune, vieux, plus ou moins grand, qui caractérisent X et
ils sont modélisés par des ensembles flous.
Soit X la variable linguistique qui désigne la température de l'eau, on peut la décrire
par un certain nombre de mots par exemple : « Chaude », « Froide », « Tiède », chaque
terme est modélisé par un ensemble flou et donc par une fonction d'appartenance.
L'univers de discours est défini comme le domaine de variable linguistique, il couvrira
par conséquent l'ensemble des valeurs prises par cette variable (Fig III.3 ).
III.6.3) Propositions floues [BOR 98][JEA 95]
Une proposition floue est un énoncé contenant un ou plusieurs prédicats flous selon
qu'elle est simple ou composée.
tiède
θ1 θ2 θ3 θ4 θ5 θ (température)
1
µ(θ)
Fig III.3 : Exemple de variation d'une variable linguistique
Froide Chaude
Univers de discours
Chapitre III : La logique floue
42
a) Proposition floue simple
Soit une variable linguistique (X, U, Tx), une proposition floue simple est de la forme
« X est A » ou A est un élément de Tx, associé à un prédicat flou tel que « jeune »,
« chaude »…etc.
La valeur de vérité de la proposition floue est par la fonction d'appartenance µA de
A.
b) Proposition floue composée
Une proposition composée peut être une négation d'une proposition simple, comme
elle peut être une juxtaposition de plusieurs propositions simples reliées avec des
opérateurs logiques 'ET' conjonction, 'OU' disjonction.
La négation:
La négation exprimée par « X est non A » a comme valeur de vérité pour tout point x
du référentiel U : 1-µA(x).
La conjonction:
La valeur de vérité de la proposition « X est A ET Y est B» pour tout point (x,y) de
U×V est calculée par les deux opérations suivantes:
min ( µA(x), µB(y) ) (Fig III.4) (III.1)
µA(x). µB(y) (III.2)
La disjonction:
Si l'on prend pour ET la formule (III.1), on prendra la formule:
max (µA(x), µB(y)) (Fig III.4) pour calculer la valeur de vérité de la proposition « X est
A OU Y est B » pour tout point (x,y) de U × V.
L'opérateur dual de (III.2) est : µA(x) + µB (y) - µA (x). µB (y).
Chapitre III : La logique floue
43
Une autre manière de combiner les propositions floues consiste à utiliser
l'implication.
L'implication:
L'implication, exprimée par « si X est A alors Y est B» noté 'A→B' est souvent
sous le nom de la relation floue. La valeur de vérité est définie par la fonction
d'appartenance µR(x, y) qui s'exprime pour tout point (x, y) de U×V comme:
min (µA(x), µB(y)) Mamdani.
µA(x). µB(y) Larsen.
min ( 1- µA(x) +µB(y), 1 ) Lukasiewiez.
Une proposition floue utilisant une implication entre deux propositions floues
quelconques par exemple de forme « si X est A ET Y est B alors Z est C » est appelée
« règle floue ».
Fig III.4 : Représentation des opérateurs logique ET, OU sur un même référentiel
x
1
µB(x)
x
1
µA(x)
x
1
µA et B(x)
µA ou B(x)
x
1
Chapitre III : La logique floue
44
III.7) Le contrôleur flou [GAC 97]
Le contrôleur 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 cet algorithme
de 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 du
genre « si x est petit et y est modéré, alors u doit être très grand ». 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érentes méthodes d'apprentissage ont été appliquées dans le but d'avoir des
systèmes de contrôle auto-adaptatifs.
III.7.1) Algorithme du contrôleur flou [GAC 97]
Le contrôle flou est l'étude, la mise au point et l'expérimentation de systèmes basés
sur des règles exprimées par des catégories linguistiques mal définies telles que :
Si (X est A1) Et (Y est A2) Alors (U est B)
Où A1, A2, B sont des prédicats mentionnés comme « grand positif », «moyen »,
« Presque nul ».
La plupart du temps ces règles ont une, deux voire trois prémisses portant souvent
sur un paramètre d'entrée E (erreur ou écart entre une valeur mesurée et une valeur
cible ou « consigne » C) et sur la variation ∆E de ce paramètre entre deux mesures
consécutives (E et sa dérivée E' si on préfère).
III.7.2) Configuration générale d'un contrôleur flou [BER 95]
Un contrôleur flou peut être regardé comme un système expert particulièrement
simple, fonctionnant à partir d'une représentation des connaissances basée sur ses
ensembles flous. Il est décrit dans la (Fig III.5). Ses particularités sont, d'une part que
les règles fournissent directement une conclusion sans avoir besoin d’enchaîner, d'autre
part que les observations sont fournies par des capteurs et sont donc généralement
numériques et précises.
Chapitre III : La logique floue
45
La base de connaissances contient les définitions des termes utilisés dans la
commande et les règles caractérisant la cible de la commande et décrivant la conduite
de l'expert. Un module d'interface avec le flou établit une représentation des
connaissances adéquates, en utilisant généralement une discrétisation de l'univers de
définition des variables ou une normalisation dans l'intervalle [0, 1] et il définit les
caractérisations floues des variables correspondant à des qualifications linguistiques.
Le module d'interface avec le non flou détermine une action précise à partir de
descriptions floues des variables de sortie. Chaque état du système à commandes passe
par le filtre de l'interface avec le flou avant d'être traité par le module de raisonnement
à partir des connaissances de la base. Le résultat flou ainsi obtenu passe par le second
filtre, celui de l'interface avec le non flou, qui fournit une commande précise, non
floue, directement applicable au système à commander. Cette dernière étape n'est
habituellement pas réalisée dans un système expert.
Base de connaissances
Interface avec le flou Interface avec le non flou
Raisonnement flou
Système commandé Command non floue
Etat du Système
Fig III.5 : Configuration générale d'un contrôleur flou
Chapitre III : La logique floue
46
III.7.3) Structure d'un contrôleur flou
Un contrôleur flou est composé de 4 blocs principaux
. Base de connaissances.
. Interface de fuzzification.
. Mécanisme d'inférence flou.
. Interface de défuzzification.
III.7.3.1) Base de connaissances [BOR 98]
La base de connaissances comprend les connaissances de l'expert humain pour le
contrôle du système ainsi le domaine de variation des variables d'E/S. Elle est donc
constituée de :
a) Base de données: regroupe dans ce bloc, l'ensemble des définitions utilisées dans
les règles du contrôle flou (univers de discours, partition flous, choix des capteurs,…).
b) Base des règles floues : La connaissance de l'expert est généralement exprimée par
des règles et donc une collection de règles de la forme « SI-ALORS ». La base des
règles et donc une collection de règles floues:
R(l) : Si x1 est F1(l) ET x2 est F2(l) ET…ET xn est Fn(l) ALORS y est G(l)
Où : x = (x1, x2, …, xn) ∈ U1 × U2 × …× Un et y ∈ V sont des variables linguistiques
d'entrée et de sortie du système respectivement pour l=1,…,m. F1,…, Fn, G
représentant des ensembles flous sur les référentiels U1,…, Un, avec Ui ⊂ R, V ⊂ R
respectivement.
Chaque règle définit une implication floue : F1(l) × F2(l) ×…× Fn
III.7.3.2) Fuzzification [BOR 98]
(l) → G qui décrit
le comportement du système.
La fuzzification est la première étape dans la réalisation d'un contrôleur flou. Elle
transforme chaque valeur réelle d'entée (mesure) en un ensemble flou, en lui attribuant
sa fonction d'appartenance à chacune des classes préalablement définie.
Chapitre III : La logique floue
47
III.7.3.3) Inférence floue [BOR 98]
A partir de la base des règles (fournies par l'expert) et du sous ensemble X0
correspond à la fuzzification du vecteur de mesure x0= [x01,…, x0n]'∈U. Le
mécanisme d'inférence calcule le sous ensemble flou Y∈V qui est la sortie floue du
système.
Il existe plusieurs méthodes d'inférence floue qui dépendent des applications et de la
forme des fonctions d'appartenance.
a) Méthode d'inférence Max-Min:
La méthode d'inférence Max-Min est la méthode utilisée dans notre travail, elle peut
être décrite de la manière suivante :
Première étape: Evaluer chacune des règles activées R(l) (avec l=1,2,…,m), en
calculant la valeur de vérité de la prémisse en cas de présence des opérateurs (ET),
(ALORS) la valeur de vérité est réalisée respectivement par la formation du minimum.
La valeur obtenue est notée µdl.
Deuxième étape: Sachant que pour un état donné des entrées, plusieurs règles peuvent
être validées ce qui implique des valeurs µdl différentes. Il faut donc disposer d'une
méthode de composition de ces règles. Cette méthode est appelée agrégation.
L'inférence par le Max-Min prend le maximum de ces valeurs comme la fonction
d'appartenance résultante de la sortie et qui définit son ensemble flou.
µRES(Y) = Max [µd1, µd2,…, µdn
C’est la plus simple surtout au point de vue de volume de calcul, elle consiste à ne
concéderais pour chaque sortie que la règle représente de maximum de la validité et
ignore les règles secondaires.
] n:le nombre de règles en conflits.
III.7.3.4) Défuzzification
Le sous ensemble flou Y de l'univers de discours V ayant été calculé par le
mécanisme d'inférence, l'interface de défuzzification pour objectif de la transformer en
une valeur non floue permettant ainsi la commande effective du système. Cette
opération est effective par l'opérateur de défuzzification [BOR 98].
a) La technique de MAX-MIN
Chapitre III : La logique floue
48
La grandeur de sortie doit être normalisée, et la définition des intervalles flous doit se
résumer à une valeur.
La défuzzification consiste à prendre le minimum entre la valeur produite par la
règle et la valeur de la variable floue, en suite va prendre la max des valeurs trouvées.
∑∑==
÷∗=n
iii
n
ii BCBA
11)(
b) La technique de la moyenne pondérée
La moyenne pondérée, elle, est plus évoluée. Elle considère comme valeur de sortie
la moyenne des valeurs trouvées par chaque règle pondérée par leur degré de vérité
respectif.
A : grandeur physique finale.
Bi : degré de vérité de la sortie de la règle (i).
Ci : grandeur physique de la sortie (action de règle (i)).
c) La technique du centre de gravité
Consiste à tracer sur un même diagramme, les différentes zones correspondant à
chacune des règles et calculer le centre de gravité de la zone de chevauchement (Fig
III.6).
faible moyenne élevé
Vitesse
1 0.8 0.2
µ
Fig III.6 : Exemple du centre de gravité
Centre de gravité
Zone de chevauchement
Chapitre III : La logique floue
49
Remarque
C’est une technique plus performante, très complexe puis qu’elle nécessite le calcul
d’une intégrale.
S’il n y a pas de chevauchement de zones cela implique qu’il y a une certaine
incohérence entre les règles.
III.7.4) Avantages du contrôleur flou [GAC 97]
Les variables linguistiques sont bien adaptées en traduisent le raisonnement qualitatif
humain, comme lui, on décrit des situations locales avec des règles représentant
chacune une information partielle. Un opérateur expérimenté prend en effet ses
décisions seulement sur des situations spécifiques dont il n’a qu’une connaissance
imparfaite, mais qu’il agrège le long de son expérience. Le fait d’utiliser des prédicats
flous, loin de traduire une pauvreté de l’information, permet d’exprimer des situations
graduelles.
Le contrôle flou s'est surtout montré robuste, son comportement vis-à-vis des
situations pathologiques, sa flexibilité (adaptation facile à des domaines, et ils sont
nombreux, dont on ne possède pas de modèle mathématique) sont bons, et bien sûr il
est rapide en temps réel.
III.7.5) Inconvénients du contrôleur flou
- Pas de méthode systématique pour la détermination du nombre des sous ensembles
flous, leur forme et plus particulièrement des règles floues ainsi que leur nombre.
- L'empirisme dans le choix de la règle de la défuzzification (soit MM, soit CG).
De nombreuses études dans le domaine de la commande floue sont en cours dans les
laboratoires de recherches et en industrie.
Les études portant sur l'élaboration de méthodes déterministes concernant la
fuzzification et l'obtention d'un ensemble de règles optimisées (techniques neuronales,
algorithmes génétiques) ainsi que l'étude de la stabilité des régulateurs flous. D'autres
études portent sur l'implantation matérielle des régulateurs flous.
Chapitre III : La logique floue
50
III.8) Domaines d’application [JEA 95]
La logique floue n’est pas restreinte aux systèmes dont la modélisation est difficile,
qui sont contrôlés par des experts humains ou ceux qui ont plusieurs E/S et des
réponses nom linéaire. Elle est intéressante dans tous les domaines, ou un flou persiste.
La liste proposée reste limitée, car les domaines d’applications sont multiples.
a) Automatisme
Après les travaux de M.MAMDANI en 1974, pour expérimenter la théorie énoncée
par Zadeh sur une chaudière à vapeur, matériel qu'on connaît la complexité. Les
automatismes ont constitué le domaine d'application par excellence de la logique floue
car c'est là ou existe le grand nombre d'applications. On peut classer ses applications
par domaines d'utilisation.
1) Automatismes industriels
Ateliers de production, machines-outils, processus industriels divers, automates
programmables.
2) Automatismes d'entreprise et de transport
Chaîne de tri ou de gestion des stocks, pilotes d'avions, trains automatiques etc.
3) Automatismes dans les appareils grand public
Machines à laver, caméra, magnétoscopes, téléviseurs, automobiles, conditionneurs
d'air, etc.
Quelle que soit la nature de l'automatisme considéré, les notions fondamentales sont
celles du contrôleur flou.
b) Informatique
De nombreuses disciplines informatiques utilisent également la logique floue. On
peut citer notamment l'intelligence artificielle, les bases de données et la
programmation.
1) Intelligence artificielle et systèmes experts
Chapitre III : La logique floue
51
Les connaissances manipulées par les systèmes experts sont en général incomplètes,
vagues et incertaines. Le très célèbre système expert MYCIN développée en 1974 afin
fournir un ensemble de diagnostics sur certaines maladies, et de permettre à un non
expert de prescrire la thérapie adéquate, est un exemple de la prise en compte du vague
et incertain dans la base des règles et des faits et donc l'utilisation de l'approche floue
pour modéliser certains de ces systèmes.
2) Programmation et développement
Il s'agit des langages de programmation flous (ou à base orientation linguistique) qui
permettent d'implémenter des algorithmes flous.
Un algorithme flou est une séquence finie d'instructions floues. Une instruction floue
peut être une (x = petit, x = environ 50), une instruction inconditionnelle (décrémenter
légèrement x) ou une structure de contrôle (si y est petit alors ajouter plusieurs fois 2 à
x).
La programmation floue permet la conception des langages naturels.
c) Mathématiques appliquées
1) Statistiques
La décision statistique, la régression et d'autres aspects de la statistique utilisent le
modèle flou.
2) Recherche opérationnelle
Programmation linéaire, Réseaux de pétri, Files d'attente, etc. Toutes ces applications
de la Recherche opérationnelle utilisent le modèle flou.
c) Reconnaissance des formes
La reconnaissance des formes permet de représenter dans une mémoire d'ordinateur
des manifestations (appelées formes) des objets extérieurs à la machine, tels que les
signaux et les images.
Elle permet par des algorithmes de décision et au moyen des capteurs, de reconnaître
un son, une image, etc. Grâce aux formes enregistrées.
Chapitre III : La logique floue
52
Le flou est utilisé dans plusieurs approches en reconnaissance des formes, citons à
titre d'exemple : l'approche structurelle ou une forme a une certaine structure que l'on
peut décrire en utilisant une grammaire : la reconnaissance des formes devient un
problème d'analyse syntaxique. La prise en compte du flou passe par les modèles
syntaxiques flous (automates finis flous, grammaire régulière floue).
III.9) Conclusion Nous avons vu dans ce chapitre que la résolution d'un problème en intelligence
artificielle par la logique floue passe par trois phases:
- la quantification floue des entrées et des sorties du système (fuzzification).
- l'établissement des règles liant les sorties aux entrées (l'inférence des règles).
- la combinaison des règles pour la génération des sorties (défuzzification).
Les systèmes à base de logique floue ont un grand degré d’autonomie et une capacité
de déterminer la conclusion (action) en temps réel à l’aide d’un moteur d’inférence
floue plus proche du raisonnement humain.
La logique floue regroupe certain nombre d’avantages techniques et commerciaux :
- Non nécessité de connaître le modèle mathématique du système à contrôler.
- Possibilité de l’intégration du savoir de l’expert.
- Résolution de certains problèmes de contrôle ou de commande voir, même la
supervision des processus complexes notamment les systèmes non linéaires
- Robustesse vis-à-vis des incertitudes.
- Facilité d’implémentation et développement moins coûteux.
- Base mathématique solide.
Simulation et résultats
Chapitre IV : Simulation et résultats
IV.1) Introduction
Dans ce chapitre, nous présentons la maquette du logiciel, qui consiste à simuler la
planification de la trajectoire d’un robot mobile avec un télémètre infrarouge dans un
environnement inconnu.
Avant d’implémenter un problème quelconque, il faut bien le connaître et l’analyser
dans les moindres détails. Pour cela nous avons fait une recherche approfondie dans la
partie théorique pour planifier la trajectoire d’un robot mobile sans collision avec
l’obstacle fixe.
Nous avons décrit par simulation les phases principales du contrôleur flou
(fuzzification, inférence floue et défuzzification).
IV.2) les comportements du robot
Le principe fondamental de la navigation réactive d’un robot autonome est
l’évitement de collision avec les obstacles fixes (premier comportement) et le
déplacement vers la cible (deuxième comportement). Le contrôleur flou est appliqué
pour réaliser les comportements réactifs.
IV.3) Description du robot simulé
Le robot mobile simulé est une plate-forme circulaire, doté de trois capteurs
télémétriques infrarouges. Les distances par rapport aux obstacles (dG, dF et dD) sont
fournies par les capteurs (latéral gauche, avant et latéral droit) respectivement (fig
IV.1).
Chapitre IV : Simulation et résultats
R : est le rayon de la plate-forme circulaire. φ : est l’angle d’ouverture du capteur infrarouge (60°).
La position du robot à un instant donné est donnée par les équations cinématiques
suivantes.
)()1()()()1()(
:))(sin()()1()())(cos()()1()(
tttttt
AvecttVttttVtt
νννθθθ
θθ
∆+−=∆+−=
∗+−Υ=Υ∗+−Χ=Χ
La position relative du robot par rapport à la cible est l’angle que fait le robot avec
cette dernière notée γ (fig IV.2).
ϕ
ϕ
ϕ
Champ de perception gauche
Champ de perception frontal
Champ de perception droite
Capteur gauche
Capteur frontal
Capteur droit
Fig IV.1 : Représentation du robot simulé
R
Chapitre IV : Simulation et résultats
IV.4) Architecture du système de commande
Le système de navigation est constitué d’un système de localisation de
l’environnement (les capteurs) et un contrôleur flou réactif qui a comme entrée les
distances dG, dF et dD (une distance gauche, une distance frontale et une distance
droite) respectivement, par rapport aux obstacles et la position relative du robot par
rapport à la cible d, ainsi que γ l’angle existant entre l’orientation de la cible et
l’orientation de robot (fig IV.3). Les sorties de ce contrôleur sont :
1) l’angle d’orientation du robot θ∆ .
2) la variation de la vitesse ν∆ .
Cible Obstacle
Robot γ = α - θ
θ
α γ
Fig IV.2 : Localisation du robot et de la cible
Chapitre IV : Simulation et résultats
A partir des données d’entrées et d’un mécanisme d’inférence flou basé sur des
règles extraites de l’expérience humaine, le contrôleur doit déduire l’orientation du
robot et sa vitesse.
IV.5) Description du contrôleur flou IV.5.1) La quantification floue des entrées et des sorties du
système (fuzzification)
Les distances dG, DF, dD et d sont évoluées par rapport aux deux intervalles flous
caractérisés par les variables linguistiques (floues) P : près et L : loin (fig IV.4).
Près Loin
0 1 2 4 6 7 8 dG, dF, dD, d (mètre)
1
Degré d'appartenance
Fig IV.4 : Représentation des sous ensembles flous de la distance
Information sur l’environnement
Robot Mobile
Le contrôleur Flou
Information sur La cible
γ d ∆θ ∆v
d γ
dD dF dG dG dF dD
Fig IV.3 : Le contrôleur réactif flou
Chapitre IV : Simulation et résultats
L’angle d’orientation de la cible par rapport au robot γ est représenté par cinq
intervalles flous : GG (gauche grand), GP (gauche petit), Z (zéro), DP (droite petit) et
DG (droite grand) couvrant le demi espace frontal du robot (fig IV.5).
La variable de sortie θ∆ (l’angle d’orientation du robot) est représentée par les cinq
sous-ensembles flous : TGG, TGP, TZ, TDP et TDG (T pour thêta) avec la
variation d’angle maximale d’orientation de 30° P
P(fig IV.6).
La variation de la vitesse ν∆ est décrite par trois sous-ensembles flous : Acce, Zacc
et Dece dénotant respectivement : augmenter la vitesse, pas de changement et
diminuer la vitesse (fig IV.7).
1
Degré d'appartenance
Fig IV.5 : Représentation des sous ensembles flous de l'entrée γ
GG GP Z DP DG
-60 -30 0 30 60 γ (degré)
Degré d'appartenance
Fig IV.6 : Représentation des sous ensembles flous de la sortie ∆θ
T GG T GP TZ T DP T DG
-30 -15 0 15 30 ∆θ (degré)
1
Chapitre IV : Simulation et résultats
IV.5.2) Établissement des règles liant les sorties aux entrées
(mécanisme d’inférence)
Le comportement du robot est gouverné par une base des règles floues (fig IV.9)
extraites de la connaissance de expert humain suivant huit situations de base (fig IV.8).
A partir de la définition d’un point d’arrivée, le robot se déplace en direction de
celui-ci selon une stratégie définie par la première situation où le robot est considéré
loin des obstacles. Lorsque le robot s’approche des obstacles fixes le dispositif de
contrôle du robot fait appel à la stratégie d’évitement d’obstacles définie par les sept
dernières situations (au moins une distance est petit (P)).
Degré d'appartenance
Fig IV.7 : Représentation des sous ensembles flous de la sortie ∆V
Dece Zacc Acce
-0.1 0 0.1 ∆V (m/s)
1
Cas (1) Cas (2)
Cas (5)
Cas (3) Cas (4)
Cas (6) Cas (7) Cas (8)
Fig IV.8 : Les huit situations de base
Chapitre IV : Simulation et résultats
Les tableaux suivants représentent le mécanisme d'inférence flou du robot mobile :
dG dF dD d γ θ∆ ν∆
Cas(1)
Si
L
∧
L
∧
L
∧
L
∧
GG
Alors
TGG
∧
Acce
L L L L GP TGP Acce
L L L L Z TZ Acce
L L L L DP TDP Acce
L L L L DG TDG Acce
L L L P GG TGG Dece
L L L P GP TGP Dece
L L L P Z TZ Dece
L L L P DP TDP Dece
L L L P DG TDG Dece
Cas(2)
Si
P
∧
L
∧
L
∧
L
∧
GG Alors
TZ ∧
Zacc
P L L L GP TZ Zacc
P L L L Z TZ Acce
P L L L DP TDP Zacc
P L L L DG TDG Zacc
P L L P GG TZ Zacc
P L L P GP TZ Zacc
P L L P Z TZ Dece
P L L P DP TDP Dece
P L L P DG TDG Dece
Cas(3)
Si
L
∧
P
∧
L
∧
L
∧
GG
Alors
TGG
∧
Zacc
L P L L GP TGP Zacc
L P L L Z TGP Zacc
L P L L DP TDP Zacc
L P L L DG TDG Zacc
L P L P GG TGG Dece
L P L P GP TGP Dece
L P L P Z TGP Dece
L P L P DP TDP Dece
L P L P DP TDG Dece
Chapitre IV : Simulation et résultats
Suite de tableau :
dG dF dD d γ θ∆ ν∆
Cas(4)
Si
L
∧
L
∧
P
∧
L
∧
GG
Alors
TGG
∧
Zacc
L L P L GP TGP Zacc
L L P L Z TZ Acce
L L P L DP TZ Zacc
L L P L DG TZ Zacc
L L P P GG TGG Dece
L L P P GP TGP Dece
L L P P Z TZ Dece
L L P P DP TZ Zacc
L L P P DG TZ Zacc
Cas(5)
Si
P
∧
P
∧
L
∧
L
∧
GG Alors
TDG ∧
Zacc
P P L L GP TDP Zacc
P P L L Z TDP Zacc
P P L L DP TDP Zacc
P P L L DG TDG Zacc
P P L P GG TDG Zacc
P P L P GP TDP Zacc
P P L P Z TDP Dece
P P L P DP TDP Dece
P P L P DG TDG Dece
Cas(6)
Si
L
∧
P
∧
P
∧
L
∧
GG
Alors
TGG
∧
Zacc
L P P L GP TGP Zacc
L P P L Z TGP Zacc
L P P L DP TGP Zacc
L P P L DG TGG Zacc
L P P P GG TGG Dece
L P P P GP TGP Dece
L P P P Z TGP Dece
L P P P DP TGP Zacc
L P P P DP TGG Zacc
Chapitre IV : Simulation et résultats
Suite de tableau :
dG dF dD d γ θ∆ ν∆
Cas(7)
Si
P
∧
L
∧
P
∧
L
∧
GG
Alors
TZ
∧
Zacc
P L P L GP TZ Zacc
P L P L Z TZ Acce
P L P L DP TZ Zacc
P L P L DG TZ Zacc
P L P P GG TZ Zacc
P L P P GP TZ Zacc
P L P P Z TZ Dece
P L P P DP TZ Zacc
P L P P DG TZ Zacc
Cas(8)
Si
P
∧
P
∧
P
∧
L
∧
GG Alors
TGG ∧
Dece
P P P L GP TGG Dece
P P P L Z TGG Dece
P P P L DP TDG Dece
P P P L DG TDG Dece
P P P P GG TGG Dece
P P P P GP TGG Dece
P P P P Z TGG Dece
P P P P DP TDG Dece
P P P P DG TDG Dece
Après la localisation du robot, On détermine les degrés d’appartenance des données
(dG, dF, dD, d et γ) aux ensembles flous, une fois, les ensembles flous des entrées
sont obtenus, les règles floues qui leurs prémisses correspondent aux ensemble floues
d’entrées sont activées.
Les ensembles flous de sorties sont des ensembles flous représentés en degrés de
vérités, pour simplifier le calcul des sorties.
Tableau IV.1 : Table des règles
Chapitre IV : Simulation et résultats
Le mécanisme d'inférence flou évalue la prémisse de chaque règle activée par le
minimum de degrés d'appartenance des entrées de la règle. Si plusieurs règles donnent
même sortie on prend le minimum de chacune puis on prend le maximum de
l'ensemble des minimaux.
IV.5.3) La combinaison des règles pour la génération des sorties (défuzzification)
La sortie du contrôleur est obtenue par la méthode de défuzzification dite "moyenne
pondéré" par ce qu'elle est très utilisée en côté programmation.
∑∑
∑∑
==
==
÷∗=∆
÷∗=∆
n
ii
n
iii
n
ii
n
iii
C
D
11
11
)(
)(
ααν
ααθ
Minimum (µ(dG),µ(dF), µ(dD), µ(d), µ(γ)).
αRiR =
Maximum (Minimum (règle L)) L=1,…, m.
DRiR : grandeur physique de l'orientation du robot (∆θ) pour αRi R(µP
-1P(∆θ)).
CRiR : grandeur physique de la vitesse du robot (∆V) pour αRi R(µP
-1P(∆V)).
µ(dG) : fonction d'appartenance de la distance gauche.
µ(dF) : fonction d'appartenance de la distance frontal.
µ(dD) : fonction d'appartenance de la distance droite.
µ(d) : fonction d'appartenance de la distance entre la cible et robot.
µ(γ) : fonction d'appartenance de l'orientation de la cible par rapport le robot.
µP
-1P : fonction inverse de µ.
Exemple :
Les règles d'inférence :
RR1R : Si distance gauche est près Et distance frontale est près Et distance droite est loin
Et distance entre la cible et robot est loin Et l'angle d'orientation de la cible par rapport
au robot est droite grand Alors l'orientation de sortie )( θ∆ est droite grand Et la vitesse
)( ν∆ est zéro accélération.
Chapitre IV : Simulation et résultats
RR2R : Si distance gauche est près Et distance frontale est près Et distance droite est loin
Et distance entre la cible et robot est loin Et l'angle d'orientation de la cible par rapport
au robot est zéro Alors l'orientation de sortie )( θ∆ est droite petit Et la vitesse )( ν∆ est
zéro accélération.
RR3R : Si distance gauche est près Et distance frontale est près Et distance droite est loin
Et distance entre la cible et robot est loin Et l'angle d'orientation de la cible par rapport
au robot est droite petit Alors l'orientation de sortie )( θ∆ est droite petit Et la vitesse
)( ν∆ est zéro accélération.
RR4R : Si distance gauche est près Et distance frontale est près Et distance droite est loin
Et distance entre la cible et robot est petit Et l'angle d'orientation de la cible par
rapport au robot est droite grand Alors l'orientation de sortie )( θ∆ est droite grand Et
la vitesse )( ν∆ est décélérée.
La valeur d'entrée :
Près avec un degré de vérité : 0.5
Distance gauche (3m) :
Loin avec un degré de vérité : 0.2
Près avec un degré de vérité : 0.6
Distance frontale (2.6m) :
Loin avec un degré de vérité : 0
Près avec un degré de vérité : 0.3
Distance droite (5m) :
Loin avec un degré de vérité : 0.6
Près avec un degré de vérité : 0
Distance (10m) :
Loin avec un degré de vérité : 1
Chapitre IV : Simulation et résultats
PppppppppppppppppppppppppppppppppppppppppPrès avec un deg de vér : 0.25
L'orientation (cible par rapport au robot) (20°)): ppDroit petit avec un deg de vér :0.5
pppppppppppppppppppppppppppppppppppppppppDroit grand avec un deg de vér :0
deg de vér : degré de vérité.
Les règles d'inférence donnent les valeurs (degré de vérité) :
Droite grand avec un degré de vérité : 0 min (0.5,0.6,0.6,1,0)
RR1R :
Zéro accélération avec un degré de vérité : 0 min (0.5,0.6,0.6,1,0)
Droite petit avec un degré de vérité : 0.25 min (0.5,0.6,0.6,1,0.25)
RR2R :
Zéro accélération avec un degré de vérité : 0.25 min (0.5,0.6,0.6,1,0.25)
Droite petit avec un degré de vérité : 0.5 min (0.5,0.6,0.6,1,0.5)
RR3R :
Zéro accélération avec un degré de vérité : 0.5 min (0.5,0.6,0.6,1,0.5)
Droite grand avec un degré de vérité : 0 min (0.5,0.6,0.6,0,0)
RR4R :
Décéléré avec un degré de vérité : 0 min (0.5,0.6,0.6,0,0)
Donc:
Droite grand avec un degré de vérité : 0 min (0.5,0.6,0.6,1,0)
RR1R :
Zéro accélération avec un degré de vérité : 0 min (0.5,0.6,0.6,1,0)
Droite petit avec un degré de vérité : 0.5 max (0.25,0.5)
RR2R et RR3R :
Zéro accélération avec un degré de vérité : 0.5 max (0.25,0.5)
Chapitre IV : Simulation et résultats
Droite grand avec un degré de vérité : 0 min (0.5,0.6,0.6,0,0)
RR4R :
Décéléré avec un degré de vérité : 0 min (0.5,0.6,0.6,0,0)
Calcul grandeur physique des sorties (moyenne pondéré) :
Droite petit (0) est 0°
µP
-1 P )( θ∆ =
Droite grand (0.5) est 8°
)( θ∆ = (0*0+0.5*8+0*0)/(0+0.5+0) = 8°
Zéro accélération (0) est 0 m/s
µP
-1 P )( ν∆ = Zéro accélération (0.5) est 0.05 m/s
Décéléré (0) est 0 m/s
)( ν∆ = (0*1+0.5*0.05+0*0)/(0+0.5+0) = 0.05 m/s
∆θ = 8°.
∆V = 0.05 m/s.
Chapitre IV : Simulation et résultats
IV.6) L'organigramme du simulateur
Fig IV.9 : Organigramme de navigation du robot mobile
Début
Elaboration du contrôleur flou
Choix de l'environnement
Localisation du robot et de la cible dG, dF, dD, d et γ
Détection au moins un obstacle (dG, dF et dD)
Evitement obstacle fixe Rapprochement de la cible
Calcule ∆θ et Calcule ∆V
θ = θ+∆θ V=V+∆V
Déplacement de robot
But atteint
Autre environnement
fin
Non
Oui
Non
Oui
Non Oui
Chapitre IV : Simulation et résultats
L'interface du logiciel :
ENVIRONNEMENT : contient huit Champs.
AIDE : contient des informations concernant l’utilisation du logiciel.
QUITTER : pour quitter le programme.
ROBOT : contient deux caractéristiques : la vitesse et l'orientation du robot
courantes.
CIBLE : comprend deux caractéristiques : la distance et l'orientation de la cible par
rapport au robot courantes.
DETECTION DES OBSTACLES : Contient les différents états d'obstacles proches par
rapport au robot courants.
ATTEINDRE LA CIBLE : activer le robot (lancer l’exécution).
PAUSE : pour stopper le robot temporairement.
Fig IV.11 : Interface du logiciel
Chapitre IV : Simulation et résultats
NOUVEAU ENVIRONNEMENT : pour changer l'environnement où se déplace le robot
et préparer donc une nouvelle exécution.
COMPORTEMENT ET RESULTAT : pour afficher le comportement actif ou bien le
résultat final.
IV.8) Résultat
Nous présentons dans cette partie les résultats de planification de la trajectoire et
navigation du robot mobile (plate forme circulaire) avec trois capteurs en différents
environnements par un contrôleur flou.
Nous avons simulé plusieurs environnements très différents pour étudier le
comportement du robot dans chaque environnement et tester à la fois la robustesse et
l’efficacité de la logique floue.
Les figures [IV.13, IV.18] montre le comportement du robot dans chaque
environnement pour atteindre la cible tout on évitant les obstacles.
Chaque environnement contient des obstacles fixes représentés sous formes de
rectangles ou de carrés, la cible est représentée comme deux cercles l'un à l'intérieur
de l’autre et le robot est représenté par un cercle et une flèche de l'orientation à
l'intérieure.
Chapitre IV : Simulation et résultats
Fig IV.12: Résultat de l'environnement 1
Fig IV.13 : Résultat de l'environnement 2
Chapitre IV : Simulation et résultats
Fig IV.14 : Résultat de l'environnement 3
Fig IV.15 : Résultat de l'environnement 4
Chapitre IV : Simulation et résultats
Fig IV.16 : Résultat de l'environnement 5
Fig IV.17 : Résultat de l'environnement 6
Chapitre IV : Simulation et résultats
Dans les simulations suivantes nous avons gardé le même environnement mais nous avons changé à chaque fois la position initiale du robot et la cible.
Fig IV.18 : Résultat de l'environnement 7
Fig IV.19 : Résultat de l'environnement 8/1
Chapitre IV : Simulation et résultats
Fig IV.20 : Résultat de l'environnement 8/2
Fig IV.21 : Résultat de l'environnement 8/3
Chapitre IV : Simulation et résultats
D’après ces résultats de simulation nous remarquons que le robot peut atteindre la
cible dans environnement même très complexe (le cas des figures IV17, IV.18).
Nous constatons aussi que même si on change la position initiale du robot ou la
position de la cible le robot peut facilement s’adapter à son environnement et atteindre
la cible et ceci grâce à son contrôleur flou. On peut dire que la logique floue est une
méthode très efficace et optimale pour la planification de la trajectoire du robot mobile.
Fig IV.22 : Résulta de l'environnement 8/4
Chapitre IV : Simulation et résultats
IV.9) Conclusion
Dans ce chapitre nous avons présenté la simulation du problème de planification de
la trajectoire et navigation du robot mobile par la logique floue.
Nous avons développé un contrôleur flou à cinq entrées présentant la localisation de
la cible et des obstacles par apport au robot et deux sorties présentant la variation de la
vitesse et de l’orientation du robot pour atteindre la cible. Son mécanisme d’inférence
contient quatre vingt règles regroupant tout les situations possibles où peut se trouver
le robot.
Les résultats des simulations de commande du robot par ce contrôleur flou sont très
satisfaisants. Le robot peut atteindre la cible dans n’importe quel environnement tout
en évitant les obstacles fixes.
navigation du robot mobile dans un environnement inconnu à l'aide de la logique floue.
Notre travail est réparti en deux phases principales : la première, description et
l’étude d’un robot mobile et la logique floue, la deuxième, le développement du
contrôleur flou pour la navigation du robot.
Les systèmes à base de la logique floue ont un grand degré d'autonomie, et une
capacité de déterminer la conclusion (action) en temps réel à l'aide d'un moteur
d'inférence flou plus proche du mode de raisonnement humain.
Les résultats obtenus après l'implémentation de ce contrôleur flou ont été très
satisfaisants, car le robot peut se déplacer d'après une situation initiale vers une
situation finale tout en évitant les obstacles fixes à n’importe quel environnement.
soit au niveau développement, soit au niveau application en particulier dans la
robotique mobile, ainsi que les techniques utilisées en programmation.
N ous avons présenté dans ce mémoire la planification de la trajectoire et la
E nfin, ce projet nous a donné une grande expérience et maîtrise du contrôle flou
Référence Bibliographique
[BEN 97] BENHALIMA Noreia et BELLAHCENE Latéfa, « Maquette logicielle
pour la simulation de la téléopération d'un robot mobile à l'aide d'un
joystick », Mémoire d'ingénieur USTO, 1997.
[BER 95] BERNADETTE Bouchon-Meunier, « La logique floue et ses application
», Edition addison-wesley, France, 1995.
[BOR 98] P.Borne, « Introduction à la commande floue », Edition Technip, 1998.
[CHO 98] A.Chohra, « Planification et control de la navigation des Véhicules
Autonomes Intelligents (VIA) en environnements dynamiques »,
Thèse de doctorat d'état en électronique 1998.
[GAC 97] Gacôgne et Louis, « Élément de logique floue », Edition Hermes, Paris,
1997.
[GIA 00] Frédéric GIAMARCHI, « Petits robots mobiles », Edition Technique et
Scientifiques Françaises (ETSF), 2000.
[HEN 94] HENK Scholten, « Logique floue et réglage PID : Théorie et pratique
de régulation active avec interfaces à réaliser soi-même et
programme d'expérimentation », Edition Denis Meyer, France, 1994.
[JEA 95] JEAU Raphaël Tong-Tong, « La logique floue », Edition Hermes, Paris,
1995.
[KHA 86] O.Khatib, « Real-Time obstacle avoidance for manipulators and mobile
robots », Int. J of Robotics Research Vol 5, N° 1, p 90-98, 1986.
[LIM 91] Komol LIMSAKOUNE, « Étude de la modélisation des robots mobiles
et de leur environnement; Application du développement d'un
logiciel CAO une mission d'optimisation », Thèse pour l'obtention le
titre du Doctorat de l'université de Paris 6, Mai 1991.
[MAA 95] H.Maaraf, M.Benreguieg et C.Barket, « Aides floues à la navigation
d'un robot mobile autonome », Groupe système complexe, CIMIF
1995.
[NIN 98] Nino Silverio, « Langage C++ migrer du C au C++ exploiter la
bibliothèque standard maîtriser les techniques objet avancées »,
Edition Eyrolles, 1998.
[OUA 97] Steve OUALLINE, « Programmation C++ par la pratique », Editions
O'Reilly Paris, 1997.
[PRU 88] Alain BRUSKI, « Robotique générale », Edition Ellipses Paris, 1988.
[VIC 98] VICENTE Metallan, COMINA Fernandej et JOSÉ Molira, « Genetic
learning of fuzzy reactif controlers », Departmento de informatica.
Universidad Catlos III de Madrid, 02 Mars 1998.
[ZEG 94] J.-P.LALLEMAND et S.Zeghloul, « Robotique. Aspects fondamentaux
», Edition Hasson Paris, 1994.
USite Internet :
[HROB]: Document Internet, « La robotique histoire et perpectives.html », Bernand
Espiau INRIA Rhône-Alpes.
[RDIS]:Document Internet,« http:// 0TUwww.lms.univ-poitiers.fr\robot\Distance.html»U0T. [IMAG]: Document Internet, «http:// Uwww.images.google.fr/images U ».
La liste des Figures Figure Chapitre I : Robot mobile
I.1 Robot à roue………..……………………..………………………………. 06 I.2 Robot à chenille ……………..……………………..……………………… 06 I.3 Robot marcheur…………………………..……………………..………… 07 I.4 Principe d'un capteur ultrasonore ……………………..………………….. 09 I.5 Principe d'un capteur infrarouge……………………..……………………. 10 I.6 Télémétrie optique par triangulation…………………..…………………… 12 I.7 Configuration du robot…………………..………………………………… 13 Figure Chapitre II : Stratégie de navigation d'un robot mobile
II.1 Décomposition hiérarchique classique de la commande du robot mobile… 18 II.2 Evitement d’obstacle………………………………………………………. 24 II.3 Rapprochement de la cible…………………………………………………. 25 II.4 Navigation en spirale…………………..…………………..………………. 26 II.5 Navigation en zig-zag…………………..………………………………….. 26 II.6 Partage de l'environnement en zones…………………..………………….. 27 Figure Chapitre III : La logique floue
III.1 Représentation d’un ensemble flou…..…………..………………………. 34 III.2 Fonction d'appartenance pour les trois cas…………………..…………… 35 III.3 Exemple de variation d'une variable linguistique…………………..……... 41 III.4 Représentation des opérateurs logique ET, OU sur un même référence…. 43 III.5 Configuration générale d'un contrôleur flou…………………..…………... 45 III.6 Exemple du centre de gravité…………………..…………………………. 48
Figure Chapitre IV : Simulation et résultats IV.1 Représentation du robot simulé…………………..………………………. 55 IV.2 Localisation du robot et de la cible…………………..…………………… 56 IV.3 Le contrôleur réactif flou…………………..…………………………….. 57 IV.4 Représentation des sous ensembles flous de la distance…………………. 57 IV.5 Représentation des sous ensembles flous de l'entrée γ…………………… 58 IV.6 Représentation des sous ensembles flous de la sortie ∆θ ……………….. 58 IV.7 Représentation des sous ensembles flous de la sortie ∆V………………… 59 IV.8 Les huit situations de base…………………..……………………………. 59 IV.9 Organigramme de navigation du robot mobile…………………..……….. 67 IV.10 Main logiciel……………………………………………………………... 68 IV.11 Interface du logiciel…………………..………………………………….. 69 IV.12 Résultat de l'environnement 1…………………..………………………... 71 IV.13 Résultat de l'environnement 2…………………..………………………... 71 IV.14 Résultat de l'environnement 3…………………..………………………... 72 IV.15 Résultat de l'environnement 4…………………..………………………... 72 IV.16 Résultat de l'environnement 5…………………..………………………... 73 IV.17 Résultat de l'environnement 6…………………..………………………... 73 IV.18 Résultat de l'environnement 7…………………..………………………... 74 IV.19 Résultat de l'environnement 8/1…………………..……………………… 74 IV.20 Résultat de l'environnement 8/2…………………..……………………… 75 IV.21 Résultat de l'environnement 8/3…………………..……………………… 75 IV.22 Résultat de l'environnement 8/4…………………..……………………… 76