Vous êtes sur la page 1sur 4

UNIVERSITE DE BATNA - FACULTE DE TECHNOLOGIE - DEPARTEMENT D'ELECTRONIQUE

Master 1 - Automatique et (Systèmes & Informatique Industrielle)

TP Logique Floue

Annexe - TP 3

Interface graphique de la boîte à outils Fuzzy Logic TOOLBOX


La commande fuzzy permet d’ouvrir l’interface graphique FIS Editeur dans laquelle on peut
définir complètement le système flou.

Par défaut, l’interface propose une entrée et une sortie avec la méthode de Mamdani. Les
opérateurs ET et OU sont réalisés respectivement par le min et le max, l’implication se fait par
le min, l’agrégation des règles par le max et la défuzzification par la méthode du centre de
gravité (centroid).
On décrit ci-après les différents menus et leurs options.
Menu File
New FIS : Mamdani : nouveau système flou de type Mamdani.
Sugeno : nouveau système flou de type Sugeno.
Import : from workspace : lecture de la matrice floue de l’espace de travail.
from file : lecture d’un système flou sauvegardé sur disque (fichier .FIS).
Export : to workspace : sauvegarde du système flou dans l’espace de travail sous
forme d’une matrice (ceci est indispensable lorsqu’on veut inclure ce système
dans SIMULINK).
: to file : sauvegarde sur disque du système flou encours.
Menu Edit
Undo : annuler la dernière modification.
Add Variable : Input : ajout d’une variable d’entrée.
Output : ajout d’une variable de sortie.
Remove Selected Variable : suppression de la variable d’entrée ou de sortie préalablement
sélectionnée à l’aide de la souris.
Annexe du TP3 : Comment utiliser l’interface graphique de la boîte à outils ‘Fuzzy Logic’ de Matlab

Menu View
View Rules : permet de passer à la fenêtre Rule Viewer dans laquelle on peut
donner à toutes les variables d’entrée des valeurs quelconques à
l’aide de la souris ou par des valeurs numériques en les entrant
dans le vecteur ligne Input. On observe ainsi la surface floue de
la variable de sortie ainsi que sa valeur numérique après
défuzzification.
View Surface : permet de passer à la fenêtre Surface Viewer dans laquelle est
affichée la surface représentant la variable de sortie en fonction
des variables d’entrée.
Edit FIS Properties : permet de revenir à la fenêtre FIS Editor dans laquelle sont
définies toutes les propriétés du système lorsqu’on est dans la
fenêtre Rule Editor (éditeur des règles) ou Membership Function
(éditeur de fonctions d’appartenance).
Edit Membership Functions : permet de passer à l’éditeur de fonctions d’appartenance pour
la variable sélectionnée.
Manipulation
Dans la fenêtre FIS Editor : untitled, ouverte par la commande fuzzy, on ajoute d’autres
entrées par l’option Add Input du menu Edit.
Pour chacune de ces entrées ou sorties, sélectionnées à la souris, on a la possibilité de
spécifier un nom ou de choisir entre les méthodes max-min, som-prod, etc.

En double-cliquant sur l’une d’elles, on ouvre la fenêtre d’édition des fonctions


d’appartenance dans laquelle on peut choisir le nombre et le type de ces fonctions, l’intervalle
de valeurs de cette variable.
La sélection à la souris de chacune des fonctions d’appartenance permet de lui donner un nom
auquel on fera référence dans les règles floues.

2
Annexe du TP3 : Comment utiliser l’interface graphique de la boîte à outils ‘Fuzzy Logic’ de Matlab

Lorsque toutes les variables d’entrée et de sortie sont complètement définies, on ouvre la
fenêtre Rule Editor par l’option Edit Rules pour l’édition des règles.

Dans cette fenêtre, un nouveau menu, Options, permet de choisir la langue dans laquelle on
écrit les règles. Chaque règle peut être pondérée par un coefficient que l’on écrit à la fin et
entre parenthèses. Par défaut ce coefficient vaut 1.
L’option Edit FIS Properties du menu View permet de revenir à la fenêtre FIS Editor.
On sauvegarde ensuite le système sous forme d’un fichier d’extension .FIS, tp3_fuzzy dans le
cas de notre exemple.
Pour pouvoir utiliser ce système dans l’espace de travail, dans SIMULINK, ou dans un fichier
M, il faut impérativement le sauvegarder dans l’espace de travail sous forme d’une matrice
qui le décrit complètement, à l’aide de l’option Export To Workspace.
>> sys_flou=readfis('tp3_fuzzy')
sys_flou =
name: 'tp3_fuzzy'
type: 'mamdani'
andMethod: 'min'
orMethod: 'max'
defuzzMethod: 'centroid'
impMethod: 'min'

3
Annexe du TP3 : Comment utiliser l’interface graphique de la boîte à outils ‘Fuzzy Logic’ de Matlab

aggMethod: 'max'
input: [1x3 struct]
output: [1x1 struct]
rule: [1x6 struct]

Si par exemple, on veut voir la sortie du système flou face à trois notes données, on définit ces
trois notes x1 , x2 et x3 , puis on évalue le résultat avec la commande ‘evalfis’, comme suit :
>> x=[x1 x2 x3]
>> y=evalfis(x,sys_flou)

On peut regarder l’éditeur de règles en tapant la commande :

>> ruleview(sys_flou)

Vous pouvez changer les 3 notes dans la rubrique “Input”, vous verrez que les ensembles en
jaune et bleu changeront avec le changement du vecteur d’entrées, et évidemment, la sortie
qui est représentée par la barre rouge et dont la valeur est affichée en haut des conclusions
(haut à droite), changera aussi.

Vous aimerez peut-être aussi