1
S2
Commande Avancée
Les bases de la commande Floue <1>
Lahoussine BOUHOUCH
2
Plan
Logique Floue / Logique classique ;
Variables linguistiques ;
Univers de discours ;
Fonctions d'appartenances ;
Différentes formes des fonctions d'appartenances ;
3
Introduction
La commande floue
Formaliser mathématiquement les concepts de la logique flou.
1° Comment Fuzzifier (Variable réelle Variable floue) ?
2° Comment construire un schéma de commande par la définition de
règles d'inférence ?
4
Logique Floue / Logique classique
Qu'est-ce qu'un état logique en "Logique Floue" ?
Etat Logique Flou = "Amplitude" entre 0 et 1.
Un nombre réel dans l'intervalle [0, 1].
Par exemple : 0, 0.1, 0.25, 0.4563, 0.99, …, 1.
On pourrait dire ainsi :
0 veut dire "Complètement Faux" Etat 0 Logique Classique
0.2 veut dire "Un peu Vrai"
0.5 veut dire "A moitié vrai"
0.9 veut dire "Presque tout à fait Vrai"
1 veut dire "Tout à fait Vrai" Etat 1 Logique Classique
5
Logique Floue / Logique classique
Qu'est-ce qui engendre des états Logiques Flous ?
Le contenu de tables de vérité, ou des constantes.
Des capteurs : Porte plus ou moins ouverte, Lampe plus ou moins
allumée, Moteur plus ou moins accéléré ...
Par exemple, si "le capteur 3" est un détecteur de fumée :
e = CAPTEURFLOU(3)
Mettra un nombre entre 0 et 1 dans la variable e, suivant la quantité
de fumée détectée, par exemple :
0 quand il n'y a pas de fumée,
1 pour toute fumée dense, et
entre 0 et 1 pour une fumée plus ou moins légère.
6
Variables linguistiques
La description de situation d'un phénomène ou d'un procédé
Expressions floues :
valeurs des Variables Linguistiques de la logique floue, comme :
Quelque ;
Beaucoup ;
Souvent ;
Chaud ;
Froid ;
Rapide ;
Lent ;
Grand ;
Petit ; …
7
Variables linguistiques
Exemple décrivant la manière d'aborder un virage avec une voiture.
Par un Automobiliste «Normal»
Il donne la description très individuelle et subjective suivante :
« Sur une route rectiligne, je roule Assez Rapidement.
Quelques centaines de mètres avant un virage, je commence à Ralentir
Doucement en Rétrogradant éventuellement.
A l'entrée du virage, je tourne le volant.
A la sortie du virage, je remets le volant dans sa position droite et je
commence à Accélérer Progressivement ».
8
Variables linguistiques
Par un Pilote de Formule 1
Réponse différente :
« Sur une route rectiligne, je Pousse l'accélérateur à Fond.
Environ à 100 m avant le virage, je Freine Fortement, de sorte que les
roues ne se bloquent pas et je Rétrograde en même temps.
A l'entrée du virage, je tourne le volant afin que la voiture suive la ligne
idéale et je redonne à moitié les gaz pour stabiliser la voiture.
Après la tangente, je commence à accélérer et à la sortie du virage, je
continue à accélérer pleinement en montant Progressivement les
rapports».
Description beaucoup plus précise mais il reste encore un certain degré de
liberté (floues) pour interpréter ce phénomène.
9
Univers de discours
Soit le concept de Température : (VL Variables linguistiques)
Description de VL « Température » par un certain nombre de mots :
Exemple : « Chaud », « Froid », « Tiède », ou « Très chaud »,
« Assez chaud », « Tiède », « Assez froid », « Très froid ».
Pour chacun de ces Prédicats (Valeurs linguistiques)
Fonction d'appartenance µ(x).
Univers de discours : Domaine de fonctionnement du processus.
Problèmes posées :
Combien de prédicats sont nécessaire à la commande et comment les choisir ?
Est-il nécessaire de choisir chaque prédicat ?
On peut donner un nombre de prédicat important mais préférer Petit
Nombre de prédicats dépend de :
la manière dont l'expert peut décrire le processus et de
la précision souhaitée
10
Univers de discours
Exemple, en Commande Floue :
Bon compromis avec 5 prédicats :
« Très Petit », « Petit », « Moyen », « Grand » et « Très Grand ».
Parfois 3 suffisent
Cas extrêmes : 7
3 prédicats servent à la régulation :
« Petit », « Moyen » et « Grand » ou
« Négatif », « Proche de zéro » et « Positif »
Univers de discours d'une variable couvrira l'ensemble des valeurs
prise par cette variable.
11
Univers de discours
En pratique l’intersection entre 2 prédicats consécutifs est ≠ 0.
Chevauchement des variables suffisant
Description continue des variables mais
Pas trop important pour limiter l'imprécision
Il est préférable d'éviter que les µ(x) de 2 prédicats voisins soient
simultanément égale à 1.
12
Fonctions d'appartenances
Ensembles « Floues » Considérer des classes d'objets dont les frontières ne
sont pas clairement déterminées, en introduisant une
Fonctions d'Appartenance des objets à la classe, prenant des valeurs [0,1],
Exemple : ensemble des nombres proches de 7
Fonction d’appartenance : : X [0, 1]
Contrairement aux ensembles « Booléens» Fonction Caractéristique : 0 et 1
Exemple : ensemble des nombres compris entre 6 et 8
Fonction caractéristique : m : R {0, 1}
m(x) = 1 SI 6 x 8 et sinon m(x) = 0.
Différences majeures : Fonction d‘APPARTENANCE : Infinité
Fonction CARACTERISTIQUE : Unicité
13
Fonctions d'appartenances
Le résultat d'un
test de
Température de
l'eau si une
valeur se trouve
dans une zone
donnée.
Dans le cas de "Tiède" : (31, 36, 38, 41) veut dire que "Tiède" est une
zone de température,
Commençant à 31 °C, pleinement réalisée entre 36 °C et 38 °C, et
finissant à 41 °C.
14
Fonctions d'appartenances
En définissant par exemple la zone : Tiède = ZONE(31, 36, 38, 41)
Alors l'évaluation de la fonction Si(mesure, Tiède) donnera :
0 Si mesure vaut 22
0 Si mesure vaut 31
0.25 Si mesure vaut 32
0.5 Si mesure vaut 33
0.75 Si mesure vaut 34
1 Si mesure vaut 36
1 Si mesure vaut 37
1 Si mesure vaut 38
0.5 Si mesure vaut 39
0.33 Si mesure vaut 40
0 Si mesure vaut 41
0 Si mesure vaut 42
15
Fonctions d'appartenances
On peut donner un coefficient de confiance à l'affirmation :
« x appartient à un ensemble A ».
Exemple :
Coefficient d'appréciation vaut 0.6 pour « L'air à T = 30°C est chaud »
Cette température correspond à « Plutôt chaude ».
Pour toute température d'air (tout x) On peut définir ce coefficient
directement vis-à-vis de x.
Propriété présentée par la Fonction dite d'appartenance µA(x) [0,1] ;
notation signifiant :
« Coefficient d'appartenance de x à l'ensemble caractérisé par A »
Argument x se rattache à la Variable Linguistique (ici T) et
Indice A désigne l'ensemble concerné.
16
Fonctions d'appartenances
De même : la variable y appartiendra à l’ensemble B avec la f. app. µB(y)
Exemple « Le Vent est Fort ».
On peut associer x et y dans une même phrase Variable z
Exemple l'ensemble C : « L‘Air est Chaud ET le Vent est Fort ».
Variable z définie par : « Air Chaud ET Vent Fort »
Intersection de « Air est Chaud » et de « Vent est Fort ».
Ensemble C Intersection des ensembles A et B.
Valeur de µC(z) déduite des valeurs de µA(x) et µB(y).
Si c’est un Fait certain µ = 1 Sinon (Fait incertain) µ ≤ 1
Fait certain :
Enoncée de la valeur d'une variable x = x0
µx0(x0) = 1 pour x = x0 et µx0(x) = 0 pour x ≠ x0 Un Singleton.
Fait incertain tel que x ≈ x0 aura une µ(x) en forme Trianglaire.
Affirmation de (x1 ≤ x environ ≤ x2) µ(x) en forme Trapézoïdale.
17
Différentes formes des fonctions d'appartenances
Exemple de µ(x) : Température (Q) d’un réservoir d'eau.
Cas simple : 3 valeurs de la Variable Linguistique « Température Q » :
« Froid », « Tiède » et « Chaud »
Forment 3 ensembles flous.
Froid Tiède Chaud
Q de 12°C appartient avec :
µ = 0.8 ou 80% à l'ensemble « Froid » et
µ = 0.2 ou 20% à l'ensemble « Tiède ».
Choix assez arbitraire du trapézoïdal caractérisant µ(x) et doit tenir
compte des circonstances particulières.
18
Différentes formes des fonctions d'appartenances
Subdivision plus fine :
Exemple de 5 valeurs :
« Très Froid » (TF), « Froid » (F), « Tiède » (T),
« Chaud » (C) et « Très Chaud » (TC)
pour la Variable Linguistique « Température Q »
Fonctions µ(x) avec 5 Ensembles Floues.
TF F T C TC
Q = 12°C appartient, avec µ = 0.25,
à l'ensemble « Tiède » et 0.75 à l’ensemble « Froid »
Valeur n'appartenant ni à l'ensemble « Chaud » ni à « Très Chaud »,
ni à « Très Froid ».
19
Différentes formes des fonctions d'appartenances
Souvent, on utilise pour µ(x) les formes Trapézoïdales ou Triangulaires.
Formes plus simples, composées de morceaux de droites.
Pour le réglage par Logique floue, ces 2 formes sont suffisantes pour
délimiter des ensembles flous.
Allure passant par :
La forme Triangulaire : 3 points A, B et C
La forme Trapézoïdale : 4 points A, B, C et D
Triangle = cas particulier du Trapèze (B = D).
Logique classique
Forme Rectangulaire = Trapèze si les droites
passant par les points (A, B) et (C, D) sont parallèles.
20
Différentes formes des fonctions d'appartenances
Remarque :
Il existe d'autres formes de µ(x) appelés formes de Cloches exprimée par :
x0 Position du sommet µ = 1,
Paramètre a : Largeur du domaine.
µ(x) → 0 pour x → ±∞.
Autre possibilité :
Rarement utilisé car complexe à programmer.
21
Différentes formes des fonctions d'appartenances
Ou encore composer µ(x) par des morceaux de droites.
Réaliser des formes Concaves et Convexes.
22
Différentes formes des fonctions d'appartenances
Considérations générales sur les fonctions d'appartenances :
Les µ(x) peuvent être Symétriques et distribuées de manière équidistante
• Forme Symétrique Si les µ(x) sont symétriques par rapport à x = 0.
• Forme Equidistante : Si les maxima des µ(x) des différents ensembles
sont écartées de manière équidistante.
µ(x) Symétrique et
Non Equidistante.
23
Différentes formes des fonctions d'appartenances
Fonction µ(x) Non symétrique et
Non équidistante.
Fonction µ(x) avec Lacunes ou Chevauchement insuffisant
A éviter des Lacunes ou un Chevauchement insuffisant entre fonctions
µ(x) de 2 ensembles voisins.
Provoque des zones de
non-intervention du régulateur
Instabilité de réglage.
Fonction µ(x) avec Chevauchement trop important
De même, A éviter un Chevauchement trop important entre 2
ensembles voisins, surtout autour de µ = 1