La logique floue et le contrôle avancé en milieu industriel Monographie: La logique floue et le contrôle avancé en milieu industriel Présenté par: S. KHELKHAL Chargé de cours: Z. AHMED FOUATIH
Introduction: l’utilisation croissante de l’outil informatique et le développement des techniques de régulation dans le domaine industriel est devenu une réalité qui se manifeste car la fiabilité et la puissance du calculateur numérique qui offre la possibilité d’implantation de la loi de commande avec une grande flexibilité du fait qu’elle peut être modifiée par un programme. La commande peut être perçue comme la gestion automatique d’un processus en fonction de consigne d’entrée par action sur une consigne de sortie. La commande floue traite elle aussi ce type de problème, mais avec des outils qui lui sont propres. Pour cela, la logique floue a connu un intérêt importent dans la communauté scientifique au cours des dernières années. L’une des raisons principales est l’énorme succès des équipements domestiques produits par l’industrie japonaise, utilisant des régulateurs flous .
La logique floue: La logique floue (fuzzy logic ) propose, une approche des problèmes beaucoup plus pragmatique que mathématique , dans certains problèmes où les mathématiques peinent par impossibilité ou difficulté de modélisation, la logique floue apporte une étonnante efficacité. La logique floue est très proche du processus de la pensée humaine. Elle met en oeuvre un jeu de règles comme, implicitement, nous en utilisons chaque jour. Elle apprécie les variables d'entrées de façon approximative (faible, élevée, loin, proche), fait de mêmes pour les variables de sorties (freinage léger ou fort) et édicte un ensemble de règles permettant de déterminer les sorties en fonction des entrées.
Définitions Un ensemble flou A est défini sur un univers de discours U (ensemble d’éléments discrets ou continus) par sa fonction d’appartenance mA. La grandeur mA(x) définit le degré d’appartenance de l’élément x à l ’ensemble A. l’ensemble flou vide est noté f , il est défini par : Le plus grand ensemble flou sur U est noté 1U , il est défini par : noyau = noy(A) frontière support : supp(A) 1 mA(x) x
Les fonctions d’appartenance peuvent avoir diverses formes selon leur définition : triangulaire, trapézoïdale, Gaussienne, Sigmoïdes...
Exemples :
Opérations sur les ensembles flous - Comme dans le cas des ensembles «classiques», les opérations logiques d’union (ou), d’intersection (et) et de complémentation (non) peuvent être appliquées aux ensembles flous. Leur définition ne sont pas uniques. Les définitions les plus souvent rencontrées sont : le max et le min (Mandani), le produit et la somme moins le produit (Sugeno) Exemple dans le cas Mandani 1 mAB(x) x mA(x) mB(x) 1 mAB(x) x mA(x) mB(x) 1 mAB(x) x mA(x) mB(x) 1 mAB(x) x mA(x) mB(x) 1 x mA(x) mA (x) 1 x mA(x) mA (x)
Propriétés des ensembles flous Comme dans le cas des ensembles «classiques», les ensembles flous possèdent certaines propriétés. Les deux propriétés suivantes ne sont pas «classiques» L’intersection d’un ensemble flou et de son complément n’est pas vide 1 x A mAA (x) L’union d’un ensemble flou et de son complément ne donne pas l’univers du discours 1 x A mAA (x)
Le contrôle flou : Lorsque le nouveau concept de la logique floue a été proposé par Zadeh, ses premières applications étaient dans le domaine du contrôle des systèmes fait par des experts humains. Le contrôle de ces systèmes fait apparaître deux types d’informations : - Des informations numériques obtenues par les mesures des capteurs - Des informations linguistiques obtenues par les experts humains. Le contrôle flou utilise la logique floue comme une démarche qui peut couvrir la stratégie du contrôle linguistique. Il est intégré dans la partie qui gère les données de commandes et de contrôle de la partie opérative du système, appelée contrôleur flou (figure 3).
Figure.4 –Système à commande floue. Erreur Contrôleur flou Partie opérative Sortie Consigne Commande + Figure.4 –Système à commande floue. Structure d’un contrôleur flou : Un contrôleur flou est composé de 4 blocs principaux (fig.5) - Base de connaissances. - Interface de fuzzification. - Mécanisme d’inférence flou. - Interface de défuzzification.
Base de connaissance Base de données Base des règles X dans U Y dans V fuzzification défuzzification Mécanisme d’inférence Configuration de base d’un contrôleur flou
a- Base de connaissances : La base de connaissances comprend les connaissances de l’expert humain pour le contrôle du système ainsi que le domaine de variation des variables d’E/S . Elle est donc constituée de : Base de données : On regroupe dans ce bloc, l’ensemble des définitions utilisées dans les règles du contrôleur flou (univers du discours, partition flou, choix des opérateurs ,…) La base des règles floues La base de l’expert est généralement exprimée par des règles de la forme ‘’ SI – ALORS ‘’ . La base de des règles est donc une collection de règles floues : Règle : Si x1 est F1ℓ et … et x n est Fn ℓ alors y Є Gℓ .
Où : x = ( x1, x2, … , x n) Є U1 x U2 x…x Un et y Є V sont des variables linguistiques d’entrée et de sortie du système respectivement pour ℓ = 1, …, n F1, … , Fn , G représentants des ensembles flous sur les référentiels U1,…, Un . b- Fuzzification : La fuzzification est la première étape dans la réalisation d’un contrôle flou. Elle transforme chaque valeur réelle d’entrée (mesure) en un ensemble flou. En lui attribuant sa fonction d’apparence à chacune des classes préalablement définit. m petite(x) mmoyenne(x) Distance : 5 cm
c- L’inférence floue : Ce bloc exprime la relation qu’il existe entre les variables d’entrée (exprimées comme variables linguistiques) et la variable de sortie (également exprimée comme variable linguistique). Agrégation : Sachant que pour un état donné des entrées, plusieurs règles peuvent être validées pour fournir des consignes aux sorties, il faut disposer d’une méthode de composition pour obtenir le résultat final . Cette tâche appelée agrégation fait correspondre à chaque règle un degré qui dépend de sa prémisse . La méthode d’inférence Max – Min utilise l’agrégation comme une première étape pour calculer les ensembles flous de la sortie . Il existe plusieurs méthodes d’inférence floue qui dépendent des implications de la forme des fonctions .
Règle d’inférence (au sens Mandani): 1 : si x est A1 alors z est C1 fait : x est x0 conséquence : z est C1 où la conséquence C1 est déterminée par : mC1 (z) C1 1 x A1 mA1 (x) 1 z C1 mC1 (z) x0
Agrégation des règles (au sens Mandani): ... 1 :si x est A1 alors z est C1 ... n :si x est An alors z est Cn Fait : x est x0 Conséquence :z est C où la C est déterminée par : mC1 (z) C1 1 x A1 mA1 (x) 1 z C1 mC1 (z) x0 x0 mC2 (z) C2 1 x A2 mA2 (x) z 1 C2 mC2 (z) 1 z mC1 (z) C1 mC (z) C mC2 (z) C2
1 : si x est A1 et y est B1 alors z est C1 mC1 (z) C1 1 x A1 mA1 (x) z C1 mC1 (z) y B1 mB1 (y) x0 y0 x0 y0 OU mC2 (z) C2 1 x A2 mA2 (x) z C2 mC2 (z) y B2 mB2 (y) 1 z mC1 (z) C1 mC (z) C mC2 (z) C2 1 : si x est A1 et y est B1 alors z est C1 2 : si x est A2 ou y est B2 alors z est C2 Fait : x est x0 et y est y0 Conséquence : z est C
Exemple: Méthodes d’inférence: Supposons que l’on ait deux entrées x1 et x2 et une sortie xR, toutes trois définies par les sous-ensembles suivants :
Supposons que x1 = 0.44 , x2 = – 0.67 et que dans l’inférence, les deux règles suivantes aient été activées : Si (x1 PG ET x2 EZ), Alors xR EZ ou Si (x1 EZ OU x2 NG), Alors xR NG La prochaine étape consiste à « traduire » les opérateurs ET, OU et l’implication par une des fonctions (Minimum, Maximum, Produit, …). La combinaison de ces différentes fonctions conduit à plusieurs méthodes d'inférences. Méthode MAX-MIN - Au niveau de la condition : ET est représenté par la fonction Min OU est représenté par la fonction Max - Au niveau de la conclusion : ou est représenté par la fonction Max Alors est représenté par la fonction Min (d’où la désignation)
La première règle donne : 1 La première règle donne : 1. x1 = 0,44 est PG avec un degré de 0,67 et x2 = -0,67 est EZ avec un degré de 0,33 2. (x1 PG ET x2 EZ) équivaut à min(0,67 ; 0,33) ce qui donne 0,33 3. Alors = min équivaut à tronquer la fonction d'appartenance de xR est EZ par 0,33
X1 est PG ET X2 est EZ alors Xr est EZ -1 NG EZ PG 1 -1 NG EZ PG 1 -1 0.67 0.33 MIN 0.33 MIN X1=0.44 -1 x A1 NG EZ PG 1 X2=-067 -1 x A1 NG EZ PG 1 -1 x A1 NG EZ PG 1 -1 x A1 NG EZ PG 1 0.67 0.33 MIN MAX 0.67 X1 est EZ OU X2 est NG xr est NG Alors
La 2 règle donne : 1. x1 = 0,44 est PG avec un degré de 0,67 et x2 = -0,67 est EZ avec un degré de 0,33 2. (x1 EZ OU x2 NG) équivaut à max(0,67 ; 0,33) ce qui donne 0,67 3. Alors = min équivaut à tronquer la fonction d'appartenance de xR est NG par 0,67 Résultat :une fonction d'appartenance résultante donnée par la surface hachurée (qui sera traitée lors de la défuzzification). d- 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 a pour objectif de la transformer en une valeur non floue permettant ainsi la commande effective du système. Cette opération est effectué par l’opérateur de défuzzification.
méthode de la moyenne des maximums : cette stratégie génère l’action de contrôle représentant la moyenne des valeurs supports des fonctions d’appartenance maximales : z0 = j / l oû j est la valeur support dont la fonction d’appartenance atteint le maximum de ses valeurs µz (j ), l : le nombre de valeurs support. Defuzzification par centre de gravité : C’est la méthode la plus utilisée, elle consiste à générer le centre de gravité de la possibilité de l’action de contrôle. z0 = µz(j ) . j / µz(j ) oû n le nombre de sous ensembles flous distincts.
Exemple : déplacement du robot le long du mur -Si la distance est petite, tourner à gauche (angle négatif) -Si la distance est autour de 10 cm, garder la direction actuelle -Si la distance est grande, tourner à droite (angle positif) a d Distance : 5 cm -14 : angle de rotation
Des exemples d’applications dans le domaine industriel 1979 Cimenterie au Danemark 1987 Métro de Sendai (Hitachi) 1990 Conduite de hauts-fourneaux Dunkerque 1992 Usine de papier au Portugal Produits de consommation courante Autocuiseurs de riz, aspirateurs, machines à laver, système de climatisation… Appareils photos : autofocus, autoexposition, autozoom (Canon,..). Caméras : autofocus, autoexposition, stabilisateur d’image (Sanyo, Canon, Matsushita). Photocopieurs : qualité d’image, distribution d’encre (Sanyo, Canon, Ricoh). Industrie automobile régulation du moteur, système de transmission, système de suspension, ABS, climatisation. Ascenseur : temps d’attente réduit, ascension et arrêt plus régulier (Hitachi)
Application de la commande floue a un système 2 eme ordre: Dans le domaine industrielle les régulateurs les plus répondu ou bien les plus utilisé se sont les régulateurs classiques PID (Proportionnel Intégral et Dérivée.), PI, PD. De ce fait Différents types de contrôleurs (régulateurs) flous ont été proposés, par exemple: Contrôleur Flou Proportionnel (CF-P), Contrôleur Flou Proportionnel Dérivée (CF-PD), Contrôleur Flou Proportionnel Intégral (CF-PI), Contrôleur Flou Proportionnel Intégral et Dérivée (CF-PID). On vas voire un example de l’application de la commande floue CF-PD a un système linéaire du 2eme ordre. La commande du système s'obtient en fonction de l'erreur, e(k), et de sa dérivée première, e‘(k), suivant des règles de la forme : "Si e(k) est E et e‘(k) est DE alors u(k) est U".
La loi de commande du contrôleur PD flou est : u=(e,e’). avec: e(k) = X(k) – Y(k), e’(k)= e(k)-e(k-1)/Te la structure de commande est comme stuit: e X Ge CF-PD e’ Gu (1-Z-1)/Te Ge’ Système Y
Exemple des règles d’un contrôle PD: Règle #1 : si E est P et DE est N, alors U est P Règle #2 : si E est N et DE est N, alors U est N
Règle #4 : si E est Z et DE est N, alors U est N Règle #3 : si E est N et DE est P, alors U est N
Règle #6 : si E est Z et DE est P, alors U est P Règle #5 : si E est N et DE est Z, alors U est N
Règle #8 : si E est P et DE est P, alors U est P Règle #7 : si E est P et DE est Z, alors U est P
Règle #9: si E est Z et DE est Z, alors U est Z
Construction des règles Souvent les règles sont représentés sous une forme matricielle : E U N Z P P N P P DE Z N Z P N N N P Agrégation des règles Exemple : U N (0) Z (0.2) P (0.8) P (0.03) N (0) N P P (0.03) P (0.03) P Z (0.97) N (0) N Z (0.2) Z P P (0.8) N (0) N (0) N N (0) N P P (0) Conclusion: P(U) = 0.8, Z(U) = 0.2 et N(U) = 0.0
La défuzzification Étape #1: Troncation des ensembles flous à leur niveau d’appartenance maximal. Étape #2: Opération « ou » appliquées aux ensembles flous de sortie (max). commande 1 P Z N commande 1
Étape #3: Détermination de la commande. Centre de gravité; Moyenne des maximums. 1 -10 10 commande Méthode du centre de gravité: Dans notre exemple: u = 5.57
Conclusion : Enfin , 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 où ceux qui ont plusieurs E/S et des réponses non linéaires. elle est intéressante dans les domaines de la reconnaissance de la parole , Intelligence artificielle et systèmes experts ,programmation et base de données relationnelles ,Robotique (Navigation réactive des robots mobile dans des environnement inconnus ). mais les problèmes majeur de la logique floue est l’élaboration des règles et les largeur des sous ensembles floues ou il faut des experts pour les déterminés, mais en fais appelle a d’autre éléments de soft computing tel que les RN et les AG pour joué le rôle de l’expert humain.