109
Présenté par M elle BABA Nawel, M mme 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 T T H H E E M M E E P P l l a a n n i i f f i i c c a a t t i i o o n n d d e e l l a a t t r r a a j j e e c c t t o o i i r r e e d d u u n n r r o o b b o o t t m m o o b b i i l l e e p p a a r r l l a a l l o o g g i i q q u u e e f f l l o o u u e e Promotion : 2008 - 2010

Memoire_1

Embed Size (px)

Citation preview

Page 1: Memoire_1

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

Page 2: Memoire_1

 

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

Page 3: Memoire_1

 

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

Page 4: Memoire_1

 

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

Page 5: Memoire_1

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.

Page 6: Memoire_1

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

Page 7: Memoire_1

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

Page 8: Memoire_1

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

Page 9: Memoire_1
Page 10: Memoire_1

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.

Page 11: Memoire_1

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.

Page 12: Memoire_1

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.

Page 13: Memoire_1

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

Page 14: Memoire_1

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

Page 15: Memoire_1

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.

Page 16: Memoire_1

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.

Page 17: Memoire_1

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"),

Page 18: Memoire_1

- 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.

Page 19: Memoire_1

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 )

Page 20: Memoire_1

µ(θ) 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.

Page 21: Memoire_1

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.

Page 22: Memoire_1

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.

Page 23: Memoire_1

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

Page 24: Memoire_1

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.

Page 25: Memoire_1

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

Page 26: Memoire_1

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

Page 27: Memoire_1

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.

Page 28: Memoire_1

Robot mobile

Page 29: Memoire_1

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.

Page 30: Memoire_1

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.

Page 31: Memoire_1

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.

Page 32: Memoire_1

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

Page 33: Memoire_1

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

Page 34: Memoire_1

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.

Page 35: Memoire_1

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

Page 36: Memoire_1

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

Page 37: Memoire_1

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).

Page 38: Memoire_1

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

Page 39: Memoire_1

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

Page 40: Memoire_1

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

Page 41: Memoire_1

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.

Page 42: Memoire_1

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.

Page 43: Memoire_1

Stratégie de navigation d'un robot mobile

Page 44: Memoire_1

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

Page 45: Memoire_1

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

Page 46: Memoire_1

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.

Page 47: Memoire_1

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.

Page 48: Memoire_1

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

Page 49: Memoire_1

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.

Page 50: Memoire_1

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

Page 51: Memoire_1

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

Page 52: Memoire_1

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

Page 53: Memoire_1

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

Page 54: Memoire_1

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.

Page 55: Memoire_1

La logique floue

Page 56: Memoire_1

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.

Page 57: Memoire_1

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

Page 58: Memoire_1

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é).

Page 59: Memoire_1

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.

Page 60: Memoire_1

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

Page 61: Memoire_1

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)

Page 62: Memoire_1

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.

Page 63: Memoire_1

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)

Page 64: Memoire_1

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)

Page 65: Memoire_1

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)

Page 66: Memoire_1

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.

Page 67: Memoire_1

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

Page 68: Memoire_1

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).

Page 69: Memoire_1

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

Page 70: Memoire_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.

Page 71: Memoire_1

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

Page 72: Memoire_1

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.

Page 73: Memoire_1

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

Page 74: Memoire_1

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

Page 75: Memoire_1

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.

Page 76: Memoire_1

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

Page 77: Memoire_1

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.

Page 78: Memoire_1

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.

Page 79: Memoire_1

Simulation et résultats

Page 80: Memoire_1

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).

Page 81: Memoire_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

Page 82: Memoire_1

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

Page 83: Memoire_1

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

Page 84: Memoire_1

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

Page 85: Memoire_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

Page 86: Memoire_1

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

Page 87: Memoire_1

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

Page 88: Memoire_1

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

Page 89: Memoire_1

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.

Page 90: Memoire_1

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

Page 91: Memoire_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)

Page 92: Memoire_1

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.

Page 93: Memoire_1

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

Page 94: Memoire_1

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

Page 95: Memoire_1

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.

Page 96: Memoire_1

Chapitre IV : Simulation et résultats

Fig IV.12: Résultat de l'environnement 1

Fig IV.13 : Résultat de l'environnement 2

Page 97: Memoire_1

Chapitre IV : Simulation et résultats

Fig IV.14 : Résultat de l'environnement 3

Fig IV.15 : Résultat de l'environnement 4

Page 98: Memoire_1

Chapitre IV : Simulation et résultats

Fig IV.16 : Résultat de l'environnement 5

Fig IV.17 : Résultat de l'environnement 6

Page 99: Memoire_1

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

Page 100: Memoire_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

Page 101: Memoire_1

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

Page 102: Memoire_1

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.

Page 103: Memoire_1
Page 104: Memoire_1
Page 105: Memoire_1

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

Page 106: Memoire_1

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.

Page 107: Memoire_1

[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 ».

Page 108: Memoire_1

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

Page 109: Memoire_1

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