4.1. Principe
Au cours de sa mission, un robot mobile élabore des
lois de contrôles et prend des décisions à partir de la
connaissance de son environnement. Les données qui proviennent des
différents capteurs embarqués à bord du robot mobile sont
parfois peu précises, peu fiables et quelquefois manquantes qui
influence sur l'objectif qu'il doit atteindre. Le contrôle de robots
mobile est classé dans la catégorie de problèmes qui sont
trop complexes. Généralement ces systèmes utilisent des
capteurs à ultrasons, ces capteurs n'ont pas une capacité de
détection précise. Les techniques de l'intelligence artificielle
basée sur la logique floue sont considérées comme une
solution très intéressante pour les systèmes non
linéaires où il est difficile d'établir un modèle
mathématique [10].
La logique floue fournit un meilleur moyen d'automatiser les
expertises humaines, donc gain de temps et d'espace mémoire, ce qui
donne une rapidité considérable à ses moteurs
d'inférence par apport aux méthodes classiques. Des
expériences ont montrés qu'un contrôleur flou donne des
résultats supérieurs que les contrôleurs classiques, et
parfois même de meilleurs résultats que l'opérateur humain.
La logique floue a montré son efficacité dans la gestion de
l'incertitude et/ou l'incomplétude des données, ce qui en fait un
outil robuste, simple et adéquat pour traiter ces problèmes.
Chapitre 03
Planification de localisation et trajectoire
37
Chapitre 03
Planification de localisation et trajectoire
38
Dans ce travail, notre objectif est d'utiliser la logique
floue pour l'évitement d'obstacles d'un robot mobile en utilisant un
minimum de matériel.
4.2. Problématique
Il s'agit ici d'éviter la collision du robot avec les
obstacles présents dans l'environnement. On ne se soucie pas de la
direction que prend le robot pour éviter l'obstacle ni de la
mémorisation des obstacles rencontrés. Pas de construction de
carte.
La définition d'un problème en logique floue se
décompose en trois parties principales : ? Définition des
variables : quelles sont les entrées, les sorties disponibles et
pertinentes. ? Partitionnement des domaines de définitions de ces
variables, on crée alors des sous-ensembles flous (obstacle près,
très près ou éloigné).
? Définition des règles qui vont donner un
comportement à suivre pour chacune des Situations.
4.3. Définition des variables
Le problème de l'évitement d'obstacles doit
forcément s'appuyer sur des capteurs donnant des renseignements sur
l'environnement. Nous utiliserons ici des capteurs à ultrasons. Un
capteur nous permet de relever les distances des obstacles situés dans
les zones droites, gauche et devant (Figure 3.8).
Figure 3.8 : Les secteurs de détection
du robot
Nos règles possèderont donc trois variables
d'entrées. Voyons maintenant les variables de sorties :
Pour déplacer le robot, on fournit au robot une valeur
d'angle et une valeur de distance. Dans notre cas, nous ne peux coupler les
deux, on doit effectuer les actions successivement. Nous choisissons d'abord de
tourner puis d'avancer. On peut noter que cette notion d'ordre dans lequel on
effectue les actions pourrait faire partie des variables de sortie des
règles.
La variable d'angle est donnée en degrés, en
valeur négative pour tourner à gauche, et positive pour tourner
à droite. La distance est donnée en centimètres, positive
pour avancer et négative pour reculer (Figure 3.9).
Figure 3.9 : La fonction d'appartenance.
4.4. Partitionner les domaines variables
Ensuite, nous avant partitionner ces variables : les variables de
gauche et de droite seront identiques (le robot n'est pas droitier ni gaucher
et possède donc une symétrie exacte).dans la figure suivante :
Figure 3.10 : Variables droite et gauche
Par contre, on peut très bien choisir un découpage
différent pour la variable devant. Voici le donc le partitionnement
proposé (Figure 3.11) :
Figure 3.11 : Variable devant.
Ensuite nous avant partitionner les variables de sorties angle
et distance. La variable angle va être la première à
être utilisée et va permettre de donner au robot la future
direction de navigation. Pour ne pas donner trop de variations dans le
mouvement du robot (aller et retour sur un même axe) le domaine de
définition de la variable angle sera : 90 à -90. Plus l'angle
sera
Chapitre 03
Planification de localisation et trajectoire
39
faible plus nous aurons besoin d'être précis,
plus l'angle sera grand plus de sous ensemble sera grand (Figure 3.12).
Figure 3.12 : Variable angle
Il reste enfin le partitionnement de la variable distance. Comme
il exclut de faire avancer d'un seul coup le robot à plus de 20cm, nous
limiterons le domaine de définition de (-10 à 20 cm) (Figure
3.13). Nous combiner ces variables dans un ensemble de règles (voir
ANNEXE A).
Figure 3.13 : Variable distance (cm)
|