• Aucun résultat trouvé

Logique floue

Dans le document Présenté par : AKKA ALI. Intitulé (Page 31-37)

Chapitre II: Techniques de l'intelligence artificielle

II.1 Logique floue

De nos jours, la logique floue (fuzzy logic) est un axe de recherche important sur lequel se focalisent de nombreux scientifiques [28].

Les commandes à base de logique floue ont connu un succès croissant depuis la fin du dernier siècle, notamment dans le domaine du génie électrique. Celles-ci apportent en effet une amélioration significative des performances par rapport à des commandes linéaires plus classiques. Cependant, les paramètres de ce type de commande sont nombreux et délicats à régler. Le fil conducteur de ces travaux consiste alors à proposer des méthodologies de réglage simples pour des commandes à base de logique floue dédiée à des systèmes électriques [29].

II.1.1 Systèmes flous

Les systèmes flous peuvent être considérés comme des systèmes logiques qui utilisent des règles linguistiques pour établir des relations entre leurs variables d’entrée et de sortie. Ils sont apparus pour la première fois dans les années soixante-dix avec des applications dans le domaine du contrôle des processus [6]. Aujourd’hui, les applications des systèmes flous sont très nombreuses outre la commande, ils sont largement utilisés pour la modélisation, le diagnostic et la reconnaissance de formes [30][31][32]. Pour une meilleure compréhension de leur fonctionnement, nous présentons brièvement quelques notions de base de ces systèmes.

II.1.2 Ensembles flous

La notion d’ensemble flou a été proposée par Zadeh [5] en introduisant un caractère graduel de l’appartenance d’un élément à un ensemble donné. Cela permet une meilleure représentation des termes et des connaissances vagues que nous, les humains, manipulons au quotidien.

Mathématiquement, un ensemble flou A d’un univers de discours U, est caractérisé par une fonction d’appartenance, notée µA, à valeur dans l’intervalle [0,1] et qui associe à chaque élément x de U un degré d’appartenance µA(x) indiquant le niveau d’appartenance de x à A.

µA(x) = 1 et µA(x) = 0 correspondent respectivement à l’appartenance et la non-appartenance.

Exemple: la taille d’un homme est représentée par les figures (II.1, 2):

0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1

0 1 . 5 5 1 . 6 1 . 6 5 1 . 7

µ

( )

T a i l l e m

Petite M oyenne Grande

1 . 7 5 1 . 8

Figure (II.1) : Représentation de la taille d’un homme par les ensembles classiques

- En logique booléenne (figure (II.1)), le degré d’appartenance µ ne peut prendre que deux valeurs (0 ou 1). Dans ce cas la taille peut être :

- Petite : µpetite = 1, µmoyenne = 0, µgrande= 0 ; - Moyenne : µpetite = 0, µmoyenne = 1, µgrande= 0 ; - Grande : µpetite = 0, µmoyenne = 0, µgrande= 1 ;

La taille ne peut pas prendre deux qualificatifs à la fois.

- En logique floue, le degré d’appartenance devient une fonction qui peut prendre une valeur réelle intermédiaire comprise entre 0 et 1 inclus. Dans ce cas, la taille peut être considérée à la fois, comme Petite avec un degré d’appartenance de 0.25 et comme Moyenne avec un degré d’appartenance de 0.75 (figure (II.2)).

Petite Grande

0.2 0.4 0.6 0.8 1

0

1.5 1.55 1.6 1.65 1.7 1.75 1.8 1.85 1.9 M oyenne

( ) T aille m

Figure (II.2) : Représentation de la taille d’un homme par les ensembles flous

L’allure de la fonction d’appartenance est à choisie selon l’application traitée. La figure (II.3), illustre les différentes formes de fonctions d’appartenance les plus utilisées.

Figure (II.3) : Différents types de fonctions d’appartenance utilisées

II.1.3 Variables linguistiques

Une variable linguistique appelée aussi attribut linguistique peut être définie à partir du triplet (X, U, Tx) où x est une variable définie sur l’univers de discours U et Tx = A1,…….An, est un ensemble composé de sous-ensembles flous de U qui caractérise X. On associe souvent à chaque sous ensemble flou de TX une valeur ou un terme linguistique (étiquette). La figure (II.4) illustre un exemple de la variable linguistique ’Taille’ avec trois termes linguistiques: petite, moyenne et grande.

Petite Moyenne Grande

µ

1

Taille V ariable linguistique

Termes linguistiques

'

Fonctions d appartenance

( ) T a i l l e m

Figure (II.4) : Variables linguistiques

II.1.4 Règles et opérateurs flous

On appelle proposition floue élémentaire, une proposition de type x est A où (X, U, Tx) est une variable linguistique et A un sous ensemble de Tx. Une telle proposition possède un degré de vérité égal à µA(x) où x est une valeur réelle de X. D’une manière générale, on peut combiner ces

propositions élémentaires à l’aide des opérateurs logiques de conjonction et de disjonction (’et’

et ’ou’) mis en œuvre respectivement par des T-normes et T-conormes. Le degré de vérité des nouvelles propositions obtenues peut être calculé entre autre par les équations suivantes:

Conjonction: (X est A) ET (Y est B) – minimum (µA(x),µB(y))

– produit µA(x) × µB(y)

Disjonction: (X est A) OU (Y est B) – maximum (µA(x), µB(y))

– somme µA(x) + µB(y) − µA(x) × µB(y)

L’opérateur d’implication permet d’introduire la notion de règle floue qui caractérise les relations de dépendance entre plusieurs propositions floues:

(X1 est A1) ET (X2 est A2) ⇒(Y est B)

Où X1, X2 et Y sont des variables linguistiques et A1 et A2 et B sont des sous-ensembles flous. Une telle règle se trouve habituellement dans les systèmes flous avec une formulation légèrement différente :

Si (X1 est A1) ET (X2 est A2) Alors (Y est B)

Dans cette dernière formulation la partie (X1 est A1) ET (X2 est A2) est appelée prémisse de la règle et la partie (Y est B) est appelée conclusion (conséquent).

II.1.5 Structure d'un système flou

La structure du système flou, présentée sur la figure (II.5), peut être décomposée en trois grands modules.

Entrée Sortie

Fuzzification

Mécanisme '

d inference

Défuzzification

Base de regle

Figure (II.5) : Structure générale d’un système flou

- La fuzzifiction proprement dite consiste à définir les fonctions d’appartenance pour les différentes variables d’entrée et de sortie. On réalise ainsi le passage des grandeurs physiques en variables linguistiques qui peuvent être traitées par les inférences. Elle permet d’associer à chacune des variables réelles, par le biais des fonctions d’appartenances, un degré d’appartenance pour chacun des sous-ensembles flous définis sur l’univers de discours [33].

- Le mécanisme d’inférence est basé sur un ensemble défini de règles. Ces règles de type : Si..., Alors... permettent de passer des degrés d’appartenance des grandeurs d’entrées aux degrés d’appartenance aux sous-ensembles flous des variables de sortie. Ce mécanisme d’inférence va nous permettre donc de générer une conclusion à partir des entrées et des règles actives [29].

- Enfin, le dernier bloc, l’interface de défuzzification, va permettre de transformer les degrés d’appartenance des sous-ensembles flous de commande en grandeur numérique. C’est la transformation inverse du module de fuzzification. Plusieurs méthodes permettent de réaliser l’étape de défuziffication [33]. La méthode du centre de gravité est l’un des moyens les plus simples et les plus utilisés. Elle consiste à rechercher le centre de gravité d’un système de sous-ensembles flous dont les poids sont leurs coefficients d’appartenance.

II.1.6 Choix des éléments du mécanisme d’inférences floues

Le premier élément est le choix de la nature des fonctions d’appartenance en entrée. Afin de faciliter les réglages du contrôleur flou, nous utiliserons des formes triangulaires, ce qui permet de traiter très simplement des fonctions linéaires par morceaux en entrée. Les fonctions d’appartenance sont placées de telle manière qu’à tout moment il n’y ait que deux fonctions d’appartenances activées pour chaque entrée. Ce choix apporte plusieurs avantages. Tout d’abord, en limitant les interactions entre les paramètres, la commande est ainsi considérablement simplifiée. De plus, une action très localisée sur la surface de commande est ainsi rendue possible. Enfin, limitant le nombre de fonctions actives simultanément, le temps de calcul nécessaire au traitement flou sur le calculateur est également réduit.

Ayant choisi le type de fonction d’appartenance en entrée, il faut maintenant déterminer leur nombre, c’est-à-dire la couverture de l’univers du discours. Plus ce nombre sera important, plus le nombre de sous-ensembles flous sera conséquent, et plus la sensibilité de la commande floue augmentera. Cependant, une telle augmentation se traduit aussi par un nombre de paramètres à régler de plus en plus important, ce qui peut s’avérer problématique en termes de temps et difficulté de réglage. Nous fixons alors à sept le nombre de fonctions d’appartenance.

Celles-ci sont représentées par la figure (II.6) et notées : NB (Negative Big), NS (Negative Small), NVS (Negative Very Small), Z (Zero), PVS (Positive Very Small), PS (Positive Small) et PB (Positive Big). La grandeur µ(x) définit le degré d’appartenance au sous-ensemble flou considéré.

Univers du discour s

PB PS

PVS NVS Z

NS NB

-1 1 1

0

µ(x)

Figure (II.6) : Fonctions d’appartenance

Dans l’optique du réglage simple d’une commande floue, il est préférable de fixer les règles de la table de règles car régler séparément chacune des règles augmenterait de façon considérable le nombre de paramètres à régler. De plus, leur influence sur la surface de commande étant locale, un tel choix ne pénalise pas fortement le comportement global. Pour ce faire une table antidiagonale classique, (tableau (II.1)) va être utilisée.

Tableau(II.1): Base d’inférence

e

NB NS NVS Z PVS PS PB

e

NB NB NB NB NB NS NVS Z

NS NB NB NB NS NVS Z PVS

NVS NB NB NS NVS Z PVS PS

Z NB NS NVS Z PVS PS PB

PVS NS NVS Z PVS PS PB PB

PS NVS Z PVS PS PB PB PB

PB Z PVS PS PB PB PB PB

Ce tableau donne l’ensemble des règles linguistiques et se lit, par exemple : Si e est PS et ∆e est PVS alors u est PB

La perception humaine de la commande du procédé est ainsi traduite, c’est-à-dire que lorsque la valeur du signal est éloignée de la référence et qu’elle continue à s’en éloigner, un très fort gain va être appliqué au système. Au contraire, au voisinage de la référence, le gain sera moindre. Il est donc aisé d’introduire la non-linéarité de la commande. Le tableau de règles permet d’agir très localement sur la surface de commande et donc une variation de l’un de ses paramètres n’aura qu’une répercussion locale sur la réponse globale [29].

II.1.7 Règles de Mamdani

Dans le cas de règles de Mamdani, le calcul de la valeur numérique de sortie s’effectue en deux étapes:

II.1.7.1Composition des règles

Une fois la phase d’inférence terminée, il s’agit de regrouper (par union) les sous ensemble flous issus de l’inférence pour en obtenir un seul ensemble représentatif des différentes conclusions des règles floues. Comme méthode de composition, on peut citer en particulier les compositions maximum (en général couplée avec l’inférence minimum) et somme (en général couplée avec l’inférence produit). La première consiste à caractériser l’ensemble de sorties par une fonction d’appartenance égale au maximum des fonctions d’appartenance des ensembles flous. La deuxième consiste à faire la somme de fonctions d’appartenance des sous-ensembles issus de l’inférence [6].

II.1.7.2Passage du symbolique vers le numérique

C’est la phase de défuzzification proprement dite qui permet de générer une valeur numérique à partir de l’ensemble obtenu par composition des règles. Il existe plusieurs méthodes de défuzzification ; les plus communément employées sont [30]:

Dans le document Présenté par : AKKA ALI. Intitulé (Page 31-37)