Chapitre 1
LOGIQUE FLOUE
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 1
Historique :
Les bases théoriques de la logique floue ont été établies en 1965 par LOTFI A. ZADEH,
automaticien de réputation internationale, professeur à l'université de Berkeley en Californie.
En 1974, E. MAMDANI expérimentait la théorie énoncée par ZADEH sur une chaudière à
vapeur, introduisant ainsi la commande floue dans la régulation d'un processus industriel.
Plusieurs applications ont alors vu le jour en Europe, pour des systèmes parfois très
complexes, telle la régulation de fours de cimenterie réalisée par la société F. L. SMIDT-
FULLER.
Grâce au chercheurs japonais T. TAKAGI & M. SUGENO, la logique floue était introduite au
Japon dès 1985.
Selon la logique classique (logique de Boole), qui n'admet pour les variables que les deux
valeurs 0 et 1, une telle classification pourrait se faire comme le montre la figure 01.a. On peut
fixer des seuils et considérer que l’on attribue tel ou tel qualificatif en fonction de la valeur de la
variable par rapport à ces seuils. Par exemple, toutes les personnes âgées de moins de 30 ans
sont alors considérées comme des jeunes et toutes les personnes âgées de plus de 50 ans comme
des vieux.
Cependant, une telle logique de classification n'est même pas logique. Une personne ne
devient pas vieille du jour au lendemain. En réalité, un tel passage se fait progressivement et
individuellement.
Fonction Fonction
d'appartenance d'appartenance
Entre Entre
Jeune deux âges Vieux Jeune deux âges Vieux
1 1
0,75
0,25
0 Âge 0 Âge
25 65
10 20 30 40 50 60 70 80 10 20 30 40 50 60 70 80
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 2
La logique floue, dont les variables peuvent prendre n'importe quelle valeur entre 0 et 1,
permet de tenir compte de cette réalité. Les limites ne varient pas soudainement, mais
progressivement.
La figure 01.b montre une classification possible pour l'exemple précédent, cette fois-ci à
l'aide de la logique floue. Ainsi, une personne de 25 ans appartient à l'ensemble « Jeune » avec
une valeur = 0,75 de la fonction d'appartenance et à l'ensemble « Entre deux âges » avec =
0,25. Par contre une personne âgée de 65 ans appartient avec une valeur = 1 de la fonction
d'appartenance à l'ensemble « Vieux ».
La notion d’ensemble est une des notions fondamentales des mathématiques, mais elle ne
permet cependant pas de rendre compte de situations simples et assez fréquentes, car dans la
théorie des ensembles classiques, un élément appartient ou n’appartient pas à un ensemble
donné.
Par exemple, il est aisé de définir parmi les personnes, l'ensemble des hommes. Par contre, il
est impossible de définir l'ensemble des hommes vieux puisque les hommes ne deviennent pas
vieux du jour au lendemain. Ils vieillissent graduellement.
C’est pour tenir compte de ce genre de situations que ZADEH a introduit la notion
d’ensembles flous. Elle repose sur la notion d’appartenance partielle. Chaque élément peut :
Le contour de chaque ensemble flou n’est pas « rigide » ou « net » mais « graduel » ou
« flou ».
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 3
La description d’une certaine situation, d’un problème ou d’un procédé contient en général
des expressions floue comme :
Les expressions de ce genre forment les valeurs des variables linguistiques de la logique
floue.
Afin de permettre un traitement numérique par ordinateur des variables linguistiques, une
définition de ces variables s’impose. Dans ce contexte, on attribue à chaque valeur de la variable
linguistique des fonctions d’appartenance , dont la valeur varie entre 0 et 1, en tenant compte
de la classification en un certain nombre d’ensembles flous.
Pour la variable floue x, on définit un ensemble flou A sur un univers de discours X par une
fonction d’appartenance :
A : X [0 , 1 ]
x A(x)
L’univers de discours est l’ensemble des valeurs réelles que peut prendre la variable floue x
et A(x) est le degré d’appartenance de l’élément x à l’ensemble flou A.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 4
1
1 ( x m)2
gaussienne ( x ) exp
2 2 2 2
0
m
1
1 pente=b/2
en forme de cloche
( x ) 2b
xc 0,5
1
a
0
c-a c c+a
0,5
0
sigmoïde 1 c-2/a c c+2/a
( x )
1 exp ( a ( x c ) ) 1
0,5
Singleton
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 5
1 1
0 0
Le plus souvent, on utilise pour les fonctions d'appartenance des formes trapézoïdales ou
triangulaires. Il s’agit des formes les plus simples, composées par morceaux de droites. La
forme est complètement définie par trois points pour la forme triangulaire, voir quatre points
pour la forme trapézoïdale. Dans la plupart des cas, en particulier pour le réglage par logique
floue, ces deux formes sont suffisantes pour délimiter des ensembles flous.
Ils permettent d’écrire des combinaisons entre les variables linguistiques et de faire des
calculs sur leurs degrés d’appartenance. Les trois opérations de bases utilisées pour la
manipulation des ensembles classiques peuvent être généralisées aux ensembles flous. Cette
généralisation n’est pas unique. Il existe de nombreuses variantes pour ces opérateurs.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 6
a) Complémentation (NON) :
L’intersection des ensembles flous A et B est définie par une norme triangulaire (t-norme) :
ET : [0 1] [0 1] → [0 1]
(x,y) → z = x ET y
Commutativité : x ET y = y ET x
Associativité : x ET ( y ET z ) = ( x ET y ) ET z
Monotonie : ( x ET y ) ( z ET u ) si ( x z et y u )
Cet opérateur peut être réalisé de plusieurs façons. Cependant, les solutions les plus simples
et les plus utilisées sont :
A ( x ) Si B ( x ) 1
Produit drastique (d’après WEBER) : A B ( x ) B ( x ) Si A ( x ) 1
0 Sinon
L’union des ensembles flous A et B est définie par une conorme triangulaire (t-conorme) :
OU : [0 1] [0 1] → [0 1]
(x,y) → z = x OU y
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 7
Commutativité : x OU y = y OU x
Associativité : x OU ( y OU z ) = ( x OU y ) OU z
Monotonie : ( x OU y ) ( z OU u ) si ( x z et y u )
Comme pour l’opérateur ET, il existe de nombreuses possibilités pour représenter l’opérateur
OU. Les plus répandus sont :
A ( x ) Si B ( x ) 0
Somme drastique (d’après WEBER) : A B ( x ) B ( x ) Si A ( x ) 0
1 Sinon
Intersection
(Conjonction, ET) AB = min { A , B }
Union
(Disjonction, OU) AB = max { A , B }
Négation Ā = 1 - A
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 8
2.1- Exemple :
Lorsqu’on se retrouve pour la première fois devant une douche possédant deux robinets
distincts, un pour l'eau chaude et un pour l'eau froide, on ouvre les deux robinets. Puis, en
fonction de la température de l'eau on applique des règles de ce type :
Si l'eau est trop chaude ALORS ouvrir plus le robinet d'eau froide.
Si l'eau est trop froide ALORS ouvrir plus le robinet d'eau chaude.
Si l'eau est trop froide ET le robinet d'eau chaude est ouvert au maximum ALORS fermer
plus le robinet d'eau froide.
Voilà, on fait donc de la commande floue de température sans le savoir. Il s'agit maintenant
de formaliser tout cela afin de le faire comprendre à un microprocesseur. Pour formaliser
mathématiquement ces concepts, on verra dans l'ordre :
Comment fuzzifier, c'est-à-dire passer d'une variable réelle à une variable floue.
Comment appliquer ces règles, c'est-à-dire définir les opérateurs logiques (ET, OU, NON),
puis définir une méthode pour prendre en compte simultanément toutes ses règles.
La mise en œuvre d’un système basé sur la logique floue fait apparaître les quatre modules
principaux suivant :
La base de données qui contient la définition des ensembles flous, les facteurs d’échelle pour
la normalisation des ensembles de référence et la partition de l’espace flou d’entrée et de
sortie.
La base des règles floues qui contient les relations entre les variables d’entrée (variables
linguistiques) et les variables de sortie (variables linguistiques aussi).
Le bloc de décision ou le moteur d’inférence : qui contient les inférences des opérations sur les
règles.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 9
Base de connaissance
Base de données Base de règles
Moteur d’inférence
Entrée Fuzzification ou Défuzzification Sortie
Bloc de décision
Figure 05- Structure générale d’un système basé sur la logique flou
2.2.1- Fuzzification :
Les entrées du régulateur flou sont les sorties du processus et donc ne sont pas des valeurs
floues mais des valeurs exactes. Il faut transformer ces valeurs exactes en valeurs floues. Il faut
donc accorder des fonctions d'appartenance aux valeurs d'entrées.
Il existe plusieurs formes pour les fonctions d'appartenance. Le plus souvent, on utilise des
formes trapézoïdales ou triangulaires. Il s'agit des formes les plus simples, composées par
morceaux de droites. L'allure est complètement définie par 3 points pour la forme triangulaire,
ou 4 points pour la forme trapézoïdale. Dans la plupart des cas, en particulier pour le réglage
par logique floue, ces deux formes sont suffisantes pour délimiter des ensembles flous.
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 10
L'univers de discours d'une variable couvrira l'ensemble des valeurs prises par cette variable.
En pratique, l'intersection entre deux prédicats consécutifs est non nulle, de façon à pouvoir
exercer une pondération sur la commande. Il en résulte un chevauchement des variables qui
doit être suffisant pour permettre une description continue des variables mais pas trop
important pour limiter l'imprécision. Il est notamment préférable d'éviter que les fonctions
d'appartenance de deux prédicats voisins soient simultanément égales à 1.
En tout état de cause, il faut éviter des lacunes ou un chevauchement insuffisant entre les
fonctions d'appartenance de deux ensembles voisins (Figure 06.a). En effet, cela provoque des
zones de non intervention du régulateur, ce qui conduit à une instabilité de réglage. De même,
on doit éviter un chevauchement trop important, surtout avec = 1 entre deux ensembles
voisins (Figure 06.b).
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 11
SI (un ensemble de conditions est satisfait) ALORS (un ensemble de conséquences est validé)
La partie antécédente exprimée par « SI » décrit l’état du système. C’est une combinaison de
propositions par des opérateurs ET, OU, NON.
La partie conséquente exprimée par « ALORS » correspond à l’action que l’opérateur doit
effectuer. C’est une combinaison de propositions liées par des opérateurs ET uniquement.
L’opérateur OU n’est pas admis dans les conclusions car il signifierait que l’expertise ne permet
pas de déterminer quelle décision prendre. La négation n’est également pas permise car une
conclusion du type « ALORS vitesse NON moyenne » est insuffisante. Elle ne tranche pas entre
les décisions « vitesse forte », « vitesse faible » et « vitesse nulle ».
b) Implication floue :
Les règles floues sont basées sur l’implication floue. Elles relient les variables floues d’entrée
d’un système à ses variables floues de sortie. Il existe divers opérateurs d’implication floue dont
ceux mentionnés ci-dessous :
Linguistiquement :
SI la température est élevée ET la vitesse est faible Alors la tension est grande positive
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 12
Symboliquement :
Il s’agit en fait d’une description linguistique où l’on remplace la désignation des ensembles
flous et des variables floues par des abréviations, par exemple :
Elle rassemble toutes les règles d’inférence sous forme de matrice. Dans le cas d’une matrice
à deux dimensions (Tableau 05.a), les lignes correspondent à l’une des ensembles flous des
variables d’entrée et les colonnes à l’autre.
L’intersection d’une ligne et d’une colonne donne l’ensemble flou de la variable de sortie
définie par une règle d’inférence. Il y a autant de cases que de règles.
Les variables d’entrée sont liées par l’opérateur « ET », tandis que les variables de sortie des
différentes règles sont à combiner par l’opérateur « OU », afin d’obtenir la variable de sortie de
l’inférence. La représentation par matrice d’inférence impose donc une restriction au cas, le plus
fréquent, où la condition de chaque règle ne contient que l’opérateur « ET ».
Il arrive que quelques cases de la matrice ne soient pas remplies, on parle dans ce cas de
règles d’inférence incomplètes. Cela ne signifie pas que la sortie n’existe pas, mais plutôt que le
degré d’appartenance est nul pour la règle en question.
X3
C T F
Xr
X1
L N R L N R L N R
N PG PG PM PM EZ EZ
F Z PG PM EZ PM EZ NM EZ NM NG
P PG EZ PM NM EZ NG
N PG PM PM PM EZ EZ NM
X4 M X2T Z PG PM EZ PM EZ NM EZ NM NG
U
F M PE PM EZ EZ NM NM NM NG
F Z P GP
N PG EZ PM NM EZ NG
V
E EZ Z ZP PG PM EZ PM EZ NM EZ NM NG
P EZ EZ NM NM NG NG
a- pour deux variables
linguistiques b- pour quatre variables linguistiques
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 13
Une autre possibilité de description des inférences est celle d’un tableau d’inférence. Elle se
prête particulièrement bien à un nombre élevé de variables linguistiques et surtout à des
systèmes multivariables avec plusieurs variables de sortie.
Pour chaque règle, il y a une ligne indiquant les ensembles des variables d’entrée qui sont
liées par l’opérateur « ET » et montre l’ensemble correspondant pour chaque variable de sortie.
Enfin, les opérations des inférences s’obtiennent par combinaison avec l’opérateur « OU », sur
chaque variable de sortie. Dans ce cas aussi, il y a une restriction au niveau des règles, dont la
condition ne peut contenir que l’opérateur « ET ».
Il est impossible de donner des directives précises concernant l'établissement des règles,
cependant les conseils peuvent être utiles :
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 14
e) Méthodes d'inférence :
En se basant sur les différentes règles floues et leurs méthodes de génération, les approches
de la commande floue peuvent être classées en trois catégories :
La base des règles dans cette approche comporte des règles floues du type :
Après l’application de la règle d’inférence, le résultat est un ensemble flou caractérisé par sa
fonction d’appartenance. Afin d’obtenir la valeur réelle de la sortie il faut passer par une étape
de défuzzification.
Il existe plusieurs méthodes pour définir les degrés d’appartenance de la variable de sortie
au sous ensembles flous. Ces méthodes se diffèrent essentiellement par la manière dont vont
être réalisés les opérateurs ET, OU et ALORS utilisés dans les règles d’inférence. Les méthodes
les plus usuelles sont :
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 15
Exemple :
T
1 F U M E 1 F E 1 Z P GP
F M E
F Z P GP
T V U
1 F M E 1 F E 1 Z P GP
T V U
1 F M E 1 F E 1 Z P GP
T V U
1 Z P GP 1 Z P GP 1 Z P GP
U U U
OU
(MAX)
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 16
Exemple :
T
1 F U M E 1 F E 1 Z P GP
F M E
F Z P GP
T V U
1 F M E 1 F E 1 Z P GP
T V U
1 F M E 1 F E 1 Z P GP
T V U
1 Z P GP 1 Z P GP 1 Z P GP
U U U
OU
(MAX)
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 17
Exemple :
T
1 F U M E 1 F E 1 Z P GP
F M E
F Z P GP
T V U
1 F M E 1 F E 1 Z P GP
0,7
T V U
1 F M E 1 F E 1 Z P GP
T V U
1 Z P GP 1 Z P GP 1 Z P GP
U U U
OU
(SOMME = VALEUR MOYENNE)
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 18
La base des règles dans cette approche comporte des règles floues du type :
Étant donnée que chaque règle donne une sortie numérique, la sortie globale est obtenue par
le calcul de la moyenne pondérée de toutes les sorties :
n
wi y i
i1
yr n
wi
i1
Exemple :
MIN
ou
PROD
1 F M E 1 F E
w1 y1 = a1 x1 + b1 x2 + c1
T
x1 x2 V w1y1 w2y 2
y
w1 w2
1 F M E 1 F E
w2 y2 = a2 x1 + b2 x2 + c2
T
x1 x2 V
Figure 10- Exemple d’inférence basée sur l’approche de TAKAGI & SUGENO
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 19
La base des règles dans cette approche comporte des règles floues du type :
La sortie inférée par chaque règle est définie comme la valeur induite par le degré
d’activation da chaque règle. La sortie globale est obtenue par le calcul de la moyenne pondérée
de toutes les sorties :
n
wi y i
i1
yr n
wi
i1
Exemple :
T
1 F U M E 1 F E 1 N P
F M E
F N P P
T V U
MIN
ou
PROD
1 F M E 1 F E 1 N P
w1
T
x1 x2 V y1 U
1 F M E 1 F E 1 N P
w2
T
x1 x2 V y2 U
w1y1 w2y 2
y
w1 w2
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 20
2.2.3- Défuzzification :
À la fin de l’inférence basées sur l’approche de MAMDANI, le résultat est un sous ensemble
flou qui n’est pas directement utilisable pour donner une information précise à l’opérateur ou
commander un actionneur. La défuzzification permet de transformer ces fonctions
d’appartenance en informations déterministes et donc de définir des variables de sortie
numériques précises. Il s’agit de calculer, à partir des fonctions d’appartenance à tous les
ensembles flous de sortie, l’abscisse qui correspond à la valeur de cette sortie.
y y
yr yr
y y
yr yr
y y
yr yr
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 21
yr
Exemple :
1
0 1 2 3 4 5 6 7 8 9 10
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 22
yr
y ( y )dy
( y )dy
Lorsque la fonction (y) est discrétisée, le y
centre de gravité est donné par : yr
Exemple :
1
0 1 2 3 4 5 6 7 8 9 10
n
yi ( y i ) y
i1
yr n yr
( yi )
i1 Figure 18- Méthode des hauteurs pondérées
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique
Chapitre 1 : Logique floue 23
n
yi Ai
i1
yr n
Ai y
i1
A1 A2 A3
y y y
y1 y2 y3
Exemple :
1
0 1 2 3 4 5 6 7 8 9 10
yr
y ( y )dy yr
Exemple :
1
0 1 2 3 4 5
Cours : Techniques de l’Intelligence Artificielle Université Mohammed Seddik Ben Yahia - Jijel / Faculté des Sciences et de la Technologie
Enseignant : N. LOURCI Département d'Électrotechnique / 2ème année Master / Option : Commande Électrique