Professional Documents
Culture Documents
Facult de Technologie
Dpartement de Gnie Electrique
Cours
Commande Intelligente
Spcialit :
Master 2 Automatique
Master 2 Commande des Systmes Electriques
Dr Samir ZEGHLACHE
Sommaire
2A Master AUT+CSE
01
01
01
01
02
03
04
05
05
05
06
07
07
07
08
08
08
09
09
10
11
11
11
12
12
14
14
15
15
19
21
21
21
29
31
33
35
38
38
38
39
39
40
41
41
42
42
42
43
44
44
44
45
45
45
48
49
50
51
51
51
53
54
57
60
60
60
61
61
BIBLIOGRAPHIE..
64
II
Chapitre I
Commande par Logique Flou
2A Master AUT+CSE
A (x)
Grand
E (x)
1
170 cm
Petit
Grand
0.5
A (x)
160 170 180
1
Petit
4- Si la temprature est trop leve Et que la pression n'est pas trop haute, Alors le
chauffage doit tre arrt Et le volet en position mdiane.
5- et ainsi de suite.. .
On dcrit ainsi des situations l'aide de combinaisons de l'appartenance des valeurs
mesures un ensemble dtermin de valeurs d'entres. Chaque situation demande une action
dtermine, pour cela on fait appel un certain nombre d'opration sur les ensembles, que nous
allons examiner dans la suite.
Les lments de base de la logique floue sont les suivants [8]:
*
les ensembles flous (fuzzy sets) pour la reprsentation de variables linguistiques ;
*
les fonctions dappartenance (memberships functions) qui dcrivent le degr
dappartenance de grandeurs physiques (vitesse, courant, temprature) un ensemble flou (faible,
lev, chaud) ;
*
les oprateurs flous qui permettent lnonciation de relations logiques entre les assertions
floues (conclusion du genre Si, Alors );
linfrence floue cest dire la dduction de nouvelles informations dj disponibles sur
la base des rgles linguistiques.
Le premier concept important expliquer est celui de variable linguistique et de sousensemble floue [7].
lente
moyenne
rapide
1
0.5
Km/h
40
55
70
Figure I- 2 Reprsentation floue de la variable Vitesse
3
A(x)
A(x)
A(x)
1
1
1
x
26
22
0
21
26
Intervalle flou
Ensemble net
Nombre flou
moyenne
Petit
Grand
0
1m 65
Taille
= Si Condition 1 Et Condition 1,
Si Condition 2 Et Condition 2,
.
.
Si Condition m Et Condition m,
Alors Consquence 1, ou
Alors Consquence 2, ou
.
Alors Consquence m.
Si les conditions, qui sont exprimes par la condition (prmisse), sont vraies, alors laction
spcifie la consquence (conclusion), aura lieu.
Les infrences avec plusieurs rgles sont caractrises par le fait qu'en gnral plusieurs
rgles sont (plus ou moins) simultanment vrifies. L'opration qui doit tre effectue doit tenir
compte des diffrentes conditions et s'obtient par les rgles de calcul de la logique floue.
c) Illustration
(x)
non (x)
1
0
0
70
80
80
70
(A)
(A Et B)
(B)
100
130
100
130
(commutativit)
(croissance)
(associativit)
(conditions aux limites)
b) Choix
Plusieurs choix sont galement possibles, dont les plus courants sont repris dans le tableau
illustratif ci-aprs. C'est gnralement la fonction maximum qu'on slectionne. Elle est illustre cidessous (figure I-7 ).
c) Illustration
(A)
(B)
(A Ou B)
40
60
60 80
80
60
80
ET
min(x , y)
xy
max (x + y-1, 0)
x y/(+(1- )(x + y - x y ))
Weber
x si y = 1, y si x = 1
0 sinon
OU
max(x , y)
x+y-xy
min(x + y, 1)
(x + y +x y - (1-) x y)
/(1- (1 - ) x y)
x si y = 0, y si x = 0
1 sinon
NON
1-x
1-x
1-x
1-x
1-x
L'oprateur Et dans ce cas est ralis par la fonction du produit des fonctions
d'appartenances:
c(x) = a(x)* b(x)
(I-1)
L'oprateur Ou est ralis par la formation de la somme (valeur moyenne) des fonctions
dappartenances:
c(x) = [ a(x) + b(x) ] / 2
(I-2)
I.5. Le raisonnement flou
I.5.1 Gnralits
Aprs avoir expos la rpartition des valeurs mesures en ensembles flous et dfini les
oprations sur ces ensembles, nous allons maintenant introduire le raisonnement flou et voir
comment un rgulateur peut tre excut sur la base des rgles logiques.
L'exemple prcdent de la commande de la temprature nous a donn un aperu du concept
du raisonnement utilis : Si les conditions sont remplies, Alors la conclusion est valide.
Avec cet unique schma de raisonnement et les trois oprateurs Et , Ou et Non , nous
pouvons dj prendre un grand nombre de dcisions logiques Nous produisons aussi une nouvelle
information (une dcision) partir d'informations anciennes.
Le raisonnement flou fait appel trois notions et tapes fondamentales [6]:
- limplication floue,
- linfrence floue,
- lagrgation des rgles.
I.5.2. Limplication floue
Limplication floue donne une information sur le degr de vrit dune rgle floue [7]. En
dautres termes, on quantifie la force de vracit entre la prmisse et la conclusion. Considrons par
exemple les deux propositions floues
x est A
y est B
(I-3)
(I-4)
prmisse
conclusion
Rgle floue :
Si x est A
Alors y est B
Fait observ:
Si x est A'
-----------------------------------------------------------------Consquence :
y est B'
A' et B' sont les ensembles flous constats dans le cas que l'on traite et ne sont pas
ncessairement strictement gaux A et B. B' est lensemble flou rsultant de A' par l'application
de l'implication.
Les informations disponibles pour dterminer la consquence sont donc dune part celles
relatives la rgle, quantifies par limplication floue B/A(x, y) , dautre part celles relatives au fait
observ, quantifies par la fonction dappartenance A.
I.5.4. Agrgation des rgles
Lorsque la base de connaissance comporte plusieurs rgles (comme notre exemple de la
rgulation de temprature), lensemble flou infr B est obtenu aprs une opration appele
agrgation des rgles. En dautres termes lagrgation des rgles utilise la contribution de toutes les
rgles actives pour en dduire une action de commande floue. Gnralement, les rgles sont
actives en parallle et sont lies par loprateur Ou [7].
Nous pouvons considrer que chaque rgle donne un avis sur la valeur attribuer au signal
de commande, le poids de chaque avis dpend du degr de vrit de la conclusion.
Dans lexemple suivant :
Si x est A Et y est B Alors z est C Ou
Si x est A Et y est B Alors z est C Ou .....
Lensemble flou rsultant est obtenu en prenant, pour chaque valeur de sortie z, la valeur
maximale des degrs dappartenance de chaque contribution.(figure I-7).
Dans cet exemple, loprateur Et est reprsent par loprateur min , limplication
est reprsent par loprateur minet loprateur Ou est reprsent par loprateur max :
9
R1:
}
min
x0
y0
max.
A
C
z
R2:
}
min
x0
y0
I.6. Conclusion
Dans ce chapitre, nous avons vu ce qu'tait la logique floue, quels taient ses intrts et
pos ses bases mathmatiques. Le principes de la logique floue, lutilisation du concept densemble
flou peuvent tre appliqus beaucoup de problmes o, selon la nature de linformation, la
manipulation de limprcis ou vague est indispensable: (classification, dcision multicritre, base
de donnes, commande).
Nous sommes maintenant arms pour voir comment un contrle de processus peut tre
ralis en logique floue. Ce sera l'objet du chapitre suivant.
10
La commande floue est simple raliser, flexible et donc facilement adaptable aux
conditions de fonctionnement du processus ou une installation particulire. Elle est robuste face
aux perturbations qui peuvent affecter le processus.
Les rgles sont faciles comprendre et modifier puisquelles sont exprimes par des
termes de la langue naturelle. Le dveloppement dun rgulateur flou est conomique, dautant plus
quil existe des logiciels dapplication et de plus en plus des composants spcialiss.
Enfin, un contrleur flou bnficie dun aspect d'adaptabilit, de robustesse et de stabilit et
plusieurs tudes et ralisations industrielles ont montr que ce dernier peut donner des meilleures
rsultats que les rgulateurs classiques [7].
I.7.3. Principe dun contrleur flou
Un contrleur flou (figure II-1) ne diffre pas tellement d'un contrleur traditionnel. On
retrouve chaque fois un bloc de traitement, un bloc d'entre (quantification, calculs pralables...)
et un bloc de sortie (pour la dtermination de la commande u partir de l'incrment du par
exemple) [7].
Deux blocs supplmentaires apparaissent dans le cas d'un contrleur flou: un bloc de
fuzzification et un bloc de dfuzzifcation . Le bloc de fuzzification constitue l'interface entre le
monde physique et celui des sous - ensemble d'infrence (infrence engine) et une base de rgles
(rules base). Le rle de ce dernier bloc sera d'chafauder le raisonnement.
Le bloc de fuzzification convertira les valeurs d'entres en sous ensembles flous. Le moteur
d'infrence activera les rgles dont les prmisses seront vrifies. Chaque rgle active donnera lieu
un sous-ensemble de sortie. Il restera au bloc de dfuzzification agrger ceux-ci et en extraire
une action prcise et ralisable au niveau de la commande.
I.7.3.1. La fuzzification
Dans les problmes de commande, les donnes observes sont habituellement physiques
(relles). Or le traitement de ces donnes est bas sur la thorie des ensembles flous; ceci ncessite
donc une procdure de fuzzification.
Lopration de fuzzification reprsente le passage des grandeurs relles (ou physiques) aux
valeurs floues. Cette tape ncessite souvent une conversion analogique/digitale, ainsi que le
traitement des grandeurs mesures et leur transformation en variables linguistiques avec la
dfinition des fonctions dappartenance.
A l'univers de discours d'une entre X (ensemble des valeurs possibles de x ), on associera
N sous - ensemble flous nots Ei (valeurs linguistiques). Chacun de ceux-ci sera dfini par sa
fonction d'appartenance Ei(x), 0 < Ei(x) < 1.
Le rle du bloc de fuzzification sera de dterminer pour un xi donn (variable observe ou
mesure) les degrs d'appartenance de xi chacun des sous - ensemble flous Ei.
12
Variables
dobservation
et
Normalisation
Facteurs dchelle
Jeu de
rgles
Fuzzification
Infrence
Dfuzzification
Dnormalisation
Facteurs
dchelle
Variation
de commande
u
13
Symboles
NG
NM
NP
EZ
PP
PM
PG
Significations
Ngatif Grand
Ngatif Moyen
Ngatif Petit
Environ Zro
Positif Petit
Positif Moyen
Positif Grand
NG
N
M
EZ
PM
PG
x
-1
- 0.5
0.5
14
XR
X1
NG
X2
NG
NM
EZ
PM
PG
PG
PM
NM
PM
EZ
NM
EZ
PG
PM
EZ
NM
NG
PM
PM
EZ
NM
PG
NM
NG
Mthodes
Max-min
Max-prod
Som-prod
Oprateur Implication
Imp
Min
Prod
Prod
Oprateur Agrgation
Max
Max
Som
Ri(xR) = ci . 0i (xR),
(II-1)
i = 1......,m
Pour illustrer cette mthode on prsente lexemple suivant ; celle dun rgulateur flou avec
deux variables dentre (x1) et (x2) et une variable de sortie (xR). Chacune est dcompose en trois
ensembles NG, EZ, PG. On suppose que les valeurs sont : x1 = 0.44 et x2 = 0.67
Pour linfrence :
xR : = Si (x1 PG Et x2 EZ) Alors xR=EZ
Si (x1 EZ Ou x2 NG) Alors xR=NG
Ou
Avec les facteurs d'appartenance PG(x1 = 0.44) = 0.67 et EZ(x2 = 0.67) = 0.33, la
premire condition prend le facteur d'appartenance Ci = 0.22 (produit des deux valeurs).
Pour la condition de la deuxime rgle, on a :
EZ(x1 = 0.44) = 0.33 et NG(x2= 0.67) = 0.67 , ce qui donne Ci = 0.5
Les fonctions d'appartenance hachures sur la figure (II-4), sobtiennent par la formation de
la somme (valeur moyenne de R1 et R2).
16
Et
x1 PG
Si
x2 EZ
NG
EZ
PG
NG
EZ
0.67
-1
xR=EZ
Alors
x1
C1=0..22
0..33
-1
NG
PG
EZ
PG
Rgle 1
0..22
x2
-1
x1
1
x1=0.44
RES(xR
)
x2=-0.67
Som Ou
-1
NG
EZ
PG
NG
EZ
Si
x1 EZ
x1
-1
Ou
NG
PG
EZ
1
C2=0..5
0.33
xR
0.67
-1
x2
PG
0.5
-1
Alors
x2 NG
x1
Rgle 2
xR=NG
Figure II-4: Mthode dinfrence Som-Prod pour deux variables dentre et deux rgles
17
x1 PG
Si
x2 EZ
Et
NG
EZ
PG
NG
EZ
NG
PG
x1
EZ
min
-1
xR=EZ
Alors
PG
Rgle 1
min
-1
x2
-1
x1
RES (xR)
x1=0.44
1
max Ou
x2=-0.67
-1
NG
EZ
PG
NG
EZ
x1
x1 EZ
Si
Si
NG
EZ
Et
PG
NG
EZ
x1
-1
x2 EZ
PG
Alors
NG
PG
x1
Rgle 2
xR=NG
Alors
EZ
xR=EZ
1
PG
Rgle 1
min
-1
EZ
min
x2
x2 NG
Ou
x1 PG
NG
PG
1
C2=0..67
-1
xR
max
-1
-1
1 x2
-1
x1
RES
(x )
x1=0.44
1
max Ou
x2=-0.67
-1
NG
EZ 1
PG
NG
EZ
-1
x1 EZ
Ou
xR
PG
x1
-1
Alors
x2 NG
EZ 1
x2
-1
NG
PG
1
C2=0..67
x1
max
Si
xR=NG
18
Rgle 2
I.7.4. La dfuzzification
La dernire tape du contrle, appele dfuzzification consiste dfinir prcisment quelle
doit tre laction sur le processus. En effet, le procd ne peut pas interprter des ordres du type
Petit ou Grand , etc., on doit lui envoyer une valeur physique.
Les mthodes dinfrences fournissent une fonction dappartenance rsultante rs(xR) pour
la variable de sortie xR. L'opration de dfuzzification permet de calculer partir de cette dernire
la valeur relle de la variable de sortie appliquer au processus. On doit souvent prvoir un
traitement de signal de sortie et sa conversion numrique - analogique
Le choix d'une mthode de dfuzzification est un point trs dlicat lors de l'laboration
d'une technique de contrle en logique floue. Celui-ci conditionnera en effet grandement
l'volution dynamique de la commande. On distingue trois mthodes diffrentes (figure II-6): celle
du maximum, celle de la moyenne des maxima et celle du centre de gravit (ou centrode ). Il est
toutefois reconnu que la mthode de centre de gravit donne les meilleurs rsultats [1], [6].
(x)
(x)
(x)
Mthode de la moyenne
des maxima
Mthode du maxima
ui
19
u=
x R rs ( x R )d x R
1
1
(II-2)
rs ( x R )d x R
(II-3)
o Ai et Bi sont des sous-ensembles flous, par contre Ci peut appartenir aussi bien au
domaine symbolique ( sous-ensemble flou) quau domaine numrique.
Loriginalit de la mthode de Sugeno rside dans le fait que la conclusion de chaque
rgle nappartient pas au domaine symbolique, mais est dfinie sous forme numrique comme une
combinaison linaire des entres
.
Selon la mthode de Sugeno, les rgles floues, dans le cas de deux variables, sexpriment
donc selon la forme suivante :
SI x est Ai Et y est Bi Alors z = p0+p1.x +p2.y
On parle dans ce cas de contrleur flou de type Sugeno dordre 1.
20
(II-4)
(II-5)
Dans le contrleur flou type Sugeno, les tapes dagrgation et de dfuzzification des
rgles floues se font simultanment et la relation (II.2) devient :
u=
i zi
i
i
(II-6)
Cette mthode est plus simple mettre en uvre et donne aussi de bons rsultats en
commande floue que la mthode de Mamdani . Le calcul en temps rel de cette expression ne pose
pas de problme.
Une remarque peut tre formule sur le nom donn cette tape. En effet, elle est
appele dfuzzification alors quelle ne manipule aucune donne floue. Ce choix a t dict afin
dtablir une similitude entre ce type de contrleur et le contrleur de type Mamdani o le
cheminement fuzzification infrence floue dfuzzification a t introduit. A la place de
dfuzzification , le terme agrgation aurait t prfrable.
I.8. CONCEPTION DES REGULATEURS FLOUS
I.8.1. Exemple 1 : Rgulateur flou de vitesse et de position dune machine lectrique
Nous allons maintenant illustrer les principes du contrleur flou sur l'exemple de la
rgulation de vitesse et de position dune machine lectrique.
La phase de conception dun contrleur flou passe toujours par quatre stades que nous
allons dtailler successivement.
I.8.1.1 Rgulateur flou de vitesse
1 re tape : Choix des entres et sorties
Il sagit de dterminer les caractristiques fonctionnelles (1) et oprationnelles (2) du
contrleur.
(1)- Il faut dabord choisir les variables dentre et de sortie. Leur choix dpend du contrle
que lon veut raliser. Que souhaite-t-on au juste commander ? A laide de quels paramtres va-ton obtenir la commande ?
(2)- Il faudra ensuite se pencher sur le domaine des valeurs que pourront prendre ces
variables). On partitionne alors ces domaines en intervalles, auxquels on associe un label descriptif
(valeurs linguistique). Cette tape revient dfinir les univers des discours des variables dentre et
de sortie et les diviser en sous-ensembles flous. Cette rpartition est intuitif et bas sur
lexprience. On est dailleurs gnralement amen laffiner en cours de conception. Une rgle de
bonne pratique est de fixer 5 9 intervalles par univers de discours. Il faut galement prvoir un
plus grand nombre de zones proximit du point de fonctionnement optimal pour en faciliter
lapproche rgulire [2].
21
e(k ) = rref (k ) r (k )
(III-1)
Ke
diq
Contrleur
flou
de
Kdiq
Kde
de ;
(III-2)
e
Ke
de
Contrleur
flou
iq
Kiq
Kde
22
Kdiq
e
Ke
Contrleur
flou
de
iq
Kiq
+
Kde
Ke
ref
+ -
Calcul de
de
Fuzzificati
on
de
Rgles
de
contrle diq
flou
~
de~
Infrence
e~
Kdiq
Dfuzzification
diq
Kde
Processus
Limitation
du couple
iq
23
iq
PB : Postive Big
PM : Postive Medium
PS : Postive Small
(Positive Grand)
(Positive Moyenne)
(Positive Petit)
On constate que les fonctions dappartenance de lerreur ont une forme asymtrique crant
une concentration autour de zro qui amliore la prcision prs du point de fonctionnement dsir.
Pour la mme raison, les formes des fonctions dappartenance de la variable de sortie sont
galement asymtriques (figure III-6). Cependant, nous introduisons deux sous-ensembles
additionnels compte-tenu de la sensibilit de cette variable [2].
NVB : Negative Very Big
PVB : Positive Very Big
NB
NM
NS
EZ
PS
-0.2
0.2
PM
PB
0.8
0.6
0.4
0.2
0
-1
-0.8
-0.6
-0.4
erreur e
24
0.4
0.6
0.8
D e g r d 'a p p a r t e n a n c e ( d e )
N B
N M
N S
E Z
P S
P M
P B
0 .8
0 .6
0 .4
0 .2
0
-1
-0 .5
0
0 .5
V a r i a t i o n d e l 'e r r e u r d e
N B
N M
N S
E Z
P S
P M
P B
P V B
0 .8
0 .6
0 .4
0 .2
0
-1
-0 .5
0
V a ria tio n d u C o u ra n t:
0 .5
d iq
25
*
*
*
*
*
*
*
*
*
1 Si e = PB Et de = ZE
2 Si e = PB Et de = NS
Alors du = PB
Alors du = PM
6
5
R f re n ce
te m p s
NB
ZE
NS
NM
NB
NB
NB
NB
NM
NS
ZE
PS
PM
PB
PS
ZE
NS
NM
NB
NB
NB
PM
PS
ZE
NS
NM
NB
NB
PB
PM
PS
ZE
NS
NM
NB
PB
PB
PM
PS
ZE
NS
NM
PB
PB
PB
PM
PS
ZE
NS
PB
PB
PB
PB
PM
PS
ZE
26
et le signe de la variation derreur de, la rponse de vitesse est divise en quatre rgions. Les
indices utiliss pour identifier chaque rgion sont dfinies comme suit :
a1 : e > 0 et de < 0,
a3 : e < 0 et de > 0,
a2 : e < 0 et de < 0,
a4 : e > 0 et de > 0,
R p o n se
a1
a2 a3
a4
R f re n ce
1.0
0.8
0.6
0.4
0.2
te m p s
0.5
Rponse
1.5
Rponse
C1
C2
m1
m2
m3
Rfrence
C3
Rfrence
C4
C5
C6
m4
m5
m6
Temps
b)
Temps
c)
Pour identifier la pente de la rponse lors du passage par le point de rfrence on utilise
lindice ci dfini comme suit :
Figure III -9 Comportement dynamique de la rponse de vitesse
c1
c2
c3
c4
c5
c6
:(e>0e<0)
:(e>0e<0)
:(e>0e<0)
:(e<0e>0)
:(e<0e>0)
:(e<0e>0)
et
et
et
et
et
et
de <<< 0
de << 0
de < 0
de > 0
de >> 0
de >>> 0
27
m1 : de 0 et e <<< 0
m2 : de 0 et e << 0
m3 : de 0 et e < 0
m4 : de 0 et e > 0
m5 : de 0 et e >> 0
m6 : de 0 et e >>> 0
NB
NM NS
ZE
c1
c2
c3
ZE
c4
c5
c6
a2
m1
m2
m3
a3
PS
PM
PB
a1
m4
m5
m6
a4
Finalement le tableau de la figure (III-8) est lgrement modifi pour tenir compte de la
variable de sortie qui est forme de neuf valeurs floues (figure III-11).
NB
NM
NS
de ZE
PS
PM
PB
NB
NM NS
NVB NVB NVB
NVB NVB NB
NVB NB NM
NB
NM
NS
NM
NS
ZE
NS
ZE
PS
ZE
PS
PM
e
ZE
NB
NM
NS
ZE
PS
PM
PB
PS
NM
NS
ZE
PS
PM
PB
PVB
PM
NS
ZE
PS
PM
PB
PVB
PVB
PB
ZE
PS
PM
PB
PVB
PVB
PVB
Kde = 1.25
Kdiq = 14.9
Dans une deuxime approche dun rgulateur logique floue, on utilise diffrentes
fonctions dappartenance pour la variable de sortie (figure III-12):
Degr dappartenance (diq)
1 NVB
NB
NM
NS ZE PPS
PM
PB
PVB
0.5
0
-1
-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
diq
(diq )diq
res
= i =1
(III-3)
(diq )
i =1
erreur, comme pour la rgulation de vitesse. Finalement, il tait le plus simple, et avec le meilleur
rsultat, de choisir un rgulateur avec une variable dentre et une variable de sortie, notamment
lerreur epos de la position pour lentre et la vitesse de rfrence ref pour la sortie.
Lide de ce rgulateur est justifie par les principes suivants :
Si lerreur est nulle, la vitesse lest aussi.
Si lerreur nest pas nulle, il faut tourner trs rapidement pour liminer cette erreur.
Enfin, ce but peut tre atteint par un couplage trois tats :
vitesse maximale positive,
vitesse maximale ngative,
vitesse nulle.
La figure (III-13) illustre les fonctions dappartenance des deux variables :
On constate, que les sous-ensembles de ref (sauf ZE) sont tous assez loin de zro. En
mme temps, les sous-ensembles de lerreur sont plutt orients vers zro. Ces faits correspondent
la deuxime rflexion.
En consquence, les rgles pour la ralisation sont les suivantes :
Degr dappartenane (epos)
1
NB
NM
NS
EZ
PS
0.2
PM
PB
0.8
0.6
0.4
0.2
0
-1
-0.8
-0.6
-0.4
-0.2
30
0.4
0.6
0.8
1 NB
ZE
NS
PM
PS
PB
0.5
0
-1
-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
tr/min
tr/min
2500
2000
200
1500
1000
Rglage dtat
500
150
Rgulateur PI
Rglage dtat
100
Rgulateur flou
Rgulateur PI
500
Rgulateur flou
0
0
0.
0.
0.
0.
0.
1.
temps (s)
rds
rds
40
35
30
25
Rgulateur PI
Rglage dtat
20
15
Rgulateur PI
10
Rgulateur Flou
-10
Rgulateur Flou
-20
5
0
temps (s)
Rglage dtat
-30
0.1
0.2
0.3
0.4
-40
0
0.5
0.
temps (s)
1.
temps (s)
32
33
dm
ds
Distance(mm)
Figure III-18 : Sous-ensembles flous dfinis pour les variables distances (gauche, face, droite)
34
Les distances dans les trois directions ( gauche, en face, droite) permettent de dfinir
huit situations synoptiques de base, notes (Si) avec i=1 8) immdiatement interprtables et pour
lesquelles la conduite tenir dcoule du simple bon sens.
Ainsi, la situation S1 (des obstacles proches dans les trois directions) correspond un culde-sac : il faut sarrter et tourner fortement vers la droite ou la gauche. La situation S2 correspond
un chemin libre droite, donc le robot doit tourner droite. La situation S7 correspond un
obstacle sur la droite, quil faut viter en tournant lgrement gauche.
Les angles sont valus par rapport au sens trigonomtrique : positif vers la gauche et
ngatif sinon.
Ainsi, la politique consistant se diriger directement vers le point darrive en vitant les
obstacles en longeant les murs en tenant sa droite s'exprime symboliquement par les huit rgles
floues suivantes :
SI
SI
SI
SI
SI
SI
SI
SI
S1 : (P ,P, P)
S2 : (P ,P, L)
S3 : (P ,L, P)
S4 : (P ,L, L)
S5 : (L ,P, P)
S6 : (L ,P, L)
S7 : (L ,L, P)
S8 : (L ,L, L)
Alors
Alors
Alors
Alors
Alors
Alors
Alors
Alors
V est ZR
V est ZR
V est Vmoy
V est Vmax
V est ZR
V est ZR
V est Vmax
V est Vmax
Et
Et
Et
Et
Et
Et
Et
Et
est NG
est NG
est ZR
est NP
est PG
est PG
est PP
est (obj)
(III-5)
= i. i
et
pour i = 1 8
(III-6)
35
(a)
(b)
Figure III.18 : Exemples du niveau Atteindre un point darrive.
Le robot fait demi-tour et soriente vers le point cible. Dans la figure (III-18-.b), le robot ne
rencontrant aucun obstacle devant lui se dirige directement vers le point darrive.
Niveau 1 : Evitement des obstacles fixes :
A ce niveau, les obstacles ne posent pas de limitations majeures lvolution du robot.
Lopration consiste simplement faire progresser le robot autour des diffrents objets situs dans
son espace de travail en modifiant constamment la direction suivie par le robot. Des exemples de
tels environnements ainsi que les trajectoires correspondantes du robot sont prsents sur la figure
(III-19).
36
(a)
(b)
(a)
(b)
Chapitre II
Commande et Identification par les
Rseaux de Neurone Artificiels
2A Master AUT+CSE
II.1. Introduction
Lun des dfis de lhomme aujourdhui est de copier la nature et de reproduire des modes de
raisonnement et de comportement qui lui sont propre. Les rseaux de neurones, sont ns de cette
envie, ils constituent une famille de fonctions non linaires paramtres, utilises dans de nombreux
domaines (physique, chimie, biologie, finance, etc.), notamment pour la modlisation de processus et
la synthse de lois de commandes, Ce cours dcrit une technique intelligente nouvellement introduite
dans le monde de lautomatique. Il sagit principalement des rseaux de neurones artificiels et les
diffrentes structures qui leurs sont associes ainsi que nous abordons par la suite lidentification et le
contrle de processus par les rseaux de neurones pour la synthse de lois de commandes.
II.2. Gnralits
Lorigine des rseaux de neurones vient de lessai de modlisation mathmatique du cerveau
humain. Les premiers travaux datent de 1943 et sont luvre de MM. Mac Culloch et Pitts. Ils
supposent que limpulsion nerveuse est le rsultat dun calcul simple effectu par chaque neurone et
que la pense ne grce leffet collectif dun rseau de neurones interconnects (figure I.1). Ils ont
connu des dbuts prometteurs vers la fin des annes 50, mais le manque dapprofondissement de la
thorie a gel ces travaux jusquaux annes 80.
2A Master AUT+CSE
quelques dizaines dAngstroms (10- 9 m) entre laxone du neurone affrent et les dendrites (on dit une
dendrite) du neurone effrent. La jonction entre deux neurones est appele la synapse (figure I.2).
2A Master AUT+CSE
Un neurone formel est une fonction algbrique non linaire et borne, dont la valeur dpend des
paramtres appels poids synaptiques ou poids des connexions. Dune faon plus gnrale, un neurone
formel est un lment de traitement (oprateur mathmatique) possdant n entes (qui sont les
neurones externes ou les sorties des autres neurones), et une seule sortie. Ce modle est dcrit
mathmatiquement par les quations suivantes:
n
s=
w x
i i
i =1
yn = (s )
O xi, wi, et yn sont respectivement, les entres, les poids synaptiques, la fonction d'activation et la
sortie du neurone.
2A Master AUT+CSE
J=
1
2
(y (X ) y (X ))
m
rq
d
q
q =1
O y rq et y qd sont la sortie du rseau et la sortie dsire pour le vecteur d'entre Xp. Cette optimisation
se fait d'une manire itrative, en modifiant les poids en fonction du gradient de la fonction de cot
selon la loi d'adaptation suivante:
wlji (k + 1) = wlji (k )
J
wlji
41
2A Master AUT+CSE
O wlji est le poids de la connexion entre le jme neurone de la couche l et le ime neurone de la couche
l-1
i=1,,n+1 la ime composante du vecteur d'entre,
j=1,,m+1 la ime composante du vecteur de sortie,
l=1,,L l'ordre d'une couche dans le rseau de neurone,
est une constante positive (>0) appele taux d'apprentissage.
Le gradient est calcul par une mthode spcifique aux rseaux de neurones, dites mthode de rtro
propagation. Dans cette mthode il est possible de calculer le gradient de la fonction cot en
retropropageant l'erreur commise en sortie vers les couches caches.
42
2A Master AUT+CSE
Figure II.6 Schma didentification directe dun processus par rseau de neurones.
Considrons un systme non linaire avec une entre u(k) et une sortie y(k)
y(k) peut dpendre de u(k) seulement, ou de u(k) et les tats prcdents de y et/ou u cest dire
y(k)=F(u(k))
Ou
y(k)=F(u(k-1),,u(k-m),y(k-1),y(k-2),,y(k-n))
Le principe de lidentification directe par rseau de neurones consiste construire le rseau (en
gnrale MLP) qui approxime la fonction F, cette approximation se fait par apprentissage hors ligne.
Etant donn la fonction F, il faut construire un RNA pour raliser lapproximation, on gnre une base
de donnes de N chantillon y(k-1), y(k-2),.,y(k-n), u(k-1),,u(k-m) (les entrs) et on obtient y(k)
(la sortie) partir de F. Lobjectif de lapprentissage est de dterminer la fonction F partir de ces
donnes. A linstant t, on donne au RNA :
1
J=
2
y y
i
i =1
43
2A Master AUT+CSE
Figure II.7 Schma didentification inverse dun processus avec un rseau de neurones.
Figure II.7 Schma didentification directe dun contrleur conventionnel avec un RNI.
Le but de cette architecture nest pas de perfectionner les performances du contrleur
conventionnel dj existant, mais de saffranchir des contraintes dimplmentations matrielles que
peuvent ncessiter certains rgulateurs. La mthode de rgulation de type RST par exemple est
reconnue pour ses bonnes performances en commande mais elle pose de srieux problmes en
intgration numrique.
2A Master AUT+CSE
modifier les paramtres du rseau en ligne. Aprs avoir appris le modle inverse, le neuro-contrleur
dlivre la sortie u du RNC qui est la commande injecte en entre du processus, lerreur est alors nulle
et la sortie y est gale la rfrence r. Ce principe est identique au RNI de la figure II.6 ou lorsque
lapprentissage du modle inverse est accompli, la sortie du RNI est gale lentre du processus.
Lavantage de la commande inverse avec un RNC est le suivi en temps rel de lvolution du
processus, car lapprentissage est ralis en ligne.
45
2A Master AUT+CSE
Exemple 1 :
Le but de cet exemple est de mettre en place un rseau de neurones qui contient une couche cache de
10 neurones et une couche de sortie de 1 neurone, on utilisant la rtropropagation du gradient avec une
base dapprentissage qui contient 70 point, pour laborer un programme didentification de la fonction
f (x ) = sin(x )
2 x 2 .
1.5
1
0.8
1
0.6
0.4
0.5
0.2
0
-0.2
-0.5
-0.4
-0.6
-1
-0.8
-1
-2
-1.5
-1
-0.5
0.5
1.5
-1.5
-2
0.5
0.5
-0.5
-0.5
-1
-1
-1.5
-1
-0.5
0.5
-1
-0.5
0.5
1.5
1.5
-1.5
-2
-1.5
1.5
-1.5
-2
-1.5
-1
-0.5
0.5
1.5
Exemple 2 :
Soit le systme discret donn par la fonction de transfert suivante :
H ( z ) = z 1
b1 + b2 z 1
1 a1 z 1
Avec
b1 = 1 , b2 = 0.8 , a1 = 0.5
et lquation de rcurrence liant la sortie y ( k ) lentre u ( k )
y ( k ) = a1 y ( k 1) + b1 u ( k 1) + b2 u ( k 2 )
Le but de cet exercice est lidentification des paramtres (b1, b2, a1) on utilisant une base
dapprentissage qui contient 500 points dentrs sortie (u(k),y(k)) et un rsaux de neurone exprim par
la figure suivante :
y ( k 1)
b
W1
u ( k 1)
W2
u ( k 2)
W3
Wp+b
o (k )
2A Master AUT+CSE
Lapprentissage du rseau consiste modifier, a chaque pas les poids et les biais afin de minimiser la
somme des carrs des erreurs en sortie.
A chaque pas dapprentissage, lerreur en sortie est calcule comme la diffrence entre la cible
recherche y ( k ) et la sortie o ( k ) du rseau.
La quantit minimiser, a chaque pas dapprentissage k est :
J=
T
1 T
1
e ( k ) e ( k ) = ( y ( k ) o ( k )) ( y ( k ) o ( k ))
2
2
Ladaptation des poids se faisant dans le sens inverse du gradient, la matrice de poids de ltape future
(t+1) est :
J
W
W ( t + 1) = W ( t )
J
J o ( k )
=
W o ( k ) W
J
= o (k ) y (k )
o ( k )
o ( k )
W
(W p ( k ) + b )
W
b ( t + 1) = b ( t ) + ( y ( k ) o ( k ) )
1.5
0.5
-0.5
0
100
200
300
iteration
400
500
On remarque que les poids du rseau convergent vers les paramtres (b1, b2, a1) du systme
47
Chapitre III
Commande par les Rseaux de Neurone
Floue
2A Master AUT+CSE
deux
mthodes,
appliques
au
contrle,
prsentent de bonnes
systme contrler et elles peuvent donc toutes deux s'appliquer des systmes non
linaires sans complications particulires.
L'ide est donc apparue tout naturellement au dbut des annes 90 de crer un systme
d'infrence floue optimis, cherchant utiliser les mthodes d'apprentissage supervis, comme
par exemple la rtropropagation du gradient, pour optimiser automatiquement certains
paramtres d'un systme d'infrence floue.
Dans ce qui suit, nous allons prsenter trois architectures neuro-flou qui permettent
d'optimiser un systme d'infrence flou : l'architecture Nomura, l'architecture LSC et
l'architecture ANFIS.
48
2A Master AUT+CSE
Enfin, il faut agrger les rgles et tirer la conclusion. Les valeurs Wi des parties
conclusion des rgles sont pondres par les valeurs de vrit des prmisses:
W
y=
(III.1)
Chacune de ces tapes sera ralise par les neurones d'une des couches du systme
d'infrence floue (figure II.1).
49
Couche 3
A1
Couche 1
Couche 4
ET
Valeurs
Fonctions
D'apparte
nance
X1
2A Master AUT+CSE
An
des
rgles
ET
de
B1
X2
Conclusion
ET
vrit
Bn
W1
Wi
y
Agrgation
Wn
ET
La deuxime couche calcule les degrs d'appartenance des entres aux diverses
fonctions d'appartenance.
La troisime couche calcule les valeurs de vrit l'aide des poids entre les deux
La
quatrime
couche
est
la
couche
de
diffrentes rgles et calcule la valeur de sortie. Les poids Wi du rseau entre la troisime et
la dernire couche constituent la partie conclusion des rgles.
50
2A Master AUT+CSE
de
sont de type triangulaire caractrises par leur centre aij pour positionner la fonction
sur l'univers du discours, et la largeur bij pour caractriser son tendue sur cet univers
(figure III.6).
Aij(xj)
A ij (x j ) = 1
2. x j a ij
bij
xj
aij
bij
(III.2)
1
( y y r )2
2
(III.3)
Ti ( k + 1) = Ti ( k ) (E / Ti )
(III.4)
aij (t + 1) = a ij (t ) K a
( E )
(a ij )
(III.5)
bij (t + 1) = bij (t ) K b
( E )
(bij )
(III.6)
Wi ( t + 1) = Wi ( t ) K w
( E )
(Wi )
(III.7)
51
2A Master AUT+CSE
K a .i
2
bij (t ). Aij ( x j )
(III.8)
i =1
bij (t + 1) = bij (t )
K b . i
.( y y r ) (Wi (t ) y ).
1 Aij ( x j )
Aij ( x j )
1
bij (t )
(III.9)
i =1
Wi (t + 1) = Wi (t )
K w . i
n
.( y y r )
(III.10)
i =1
Il ya dautre travaux qui utilise le produit pour le calcule le degr de vrit i dans
larchitecture de Nomura, soit le contrleur neuro-floue qui contient deux entr (e, e) avec
deux fonction dappartenance de type triangle pour chaque entr, et deux sous ensemble floue
(small, Large)
Rgle
Rgle
Rgle
Rgle
R1:
R2:
R3:
R4:
If e
If e
If e
If e
est
est
est
est
Small
Small
Large
Large
and
and
and
and
e
e
e
e
is
is
is
is
Small
Large
Small
Large
then
then
then
then
y
y
y
y
is
is
is
is
bl ,
b2 ,
b3 ,
b4 ,
i
A11
Small
a11
b11
e
A21
A22
R1
b1
2
R2
b2
b3
b4
R4
Large
a22
b22
R3
Small
a12
b12
Large
a21
b21
A12
2A Master AUT+CSE
Ladaptation des paramtres des fonctions dappartenances des prmisses et des conclusions
est donne par les lois suivantes :
aij (t + 1) = aij (t ) K a
( E )
(a ij )
(III.5)
bij (t + 1) = bij (t ) K b
( E )
(bij )
(III.6)
bi (t + 1) = bi ( t ) K w
( E )
(Wi )
(III.7)
de
la
prmisse proposes par cette architecture sont de type gausienne dfinies par la relation
(III.8):
x i cij
2 ij
ij (xi ) = exp
) 2
(III.8)
ij
cij - ij
cij
cij + ij
xi
53
2A Master AUT+CSE
1
(y yr )
2
Wi (t + 1) = Wi (t )
(III.9)
K w .Oi
9
.( y y r )
i = 1,2,....,9
(III.10)
k =1
architecture
appartient
une
classe
de
rseaux
adaptatifs
RBF
(III.11)
(III.12)
Jang a propos de reprsenter cette base de rgles par le rseau adaptatif de la figure (III.7)
La mthode ANFIS est base sur l'utilisation de rseaux multicouches (adaptative
networks) o chaque cellule ralise une fonction propre respectant les paramtres qui lui ont
54
2A Master AUT+CSE
(III.13)
o nk 1 est le nombre de nuds dans la couche k 1 , et a, b, c,... sont les paramtres du nud
A1
couche 2
couche 3
x1 x2
x1
couche 5
A2
w1
v1
v1.F1
B1
w2
x2
v2.F2
v2
x1 x2
B2
(III.14)
2A Master AUT+CSE
termes, Oi1 est le degr dappartenance de x Ai . Les paramtres dun nud de cette couche
sont ceux de la fonction dappartenance correspondante. Gnralement les fonctions
d'appartenance utilises par la mthode ANFIS sont des gaussiennes ou
des fonctions
cloches.
Couche 2 : Chaque nud i de cette couche est un nud circulaire appel qui engendre
en sortie le produit de ses entres. Ce produit reprsente le degr dactivation dune rgle :
(III.15)
vi =
(III.16)
Couche 4 : Chaque nud de cette couche est un nud carr avec une fonction ralisant le
calcul :
(III.17)
o vi est la sortie de la couche 3, et {ai, bi, ci } est lensemble des paramtres de sortie de la
rgle i .
Couche 5 : Le seul nud de cette couche est un nud circulaire qui effectue la somme des
signaux provenant de la couche 4, cest dire,
O15 = y = vi.Fi
(III.18)
Nous remarquons que la sortie globale du rseau est quivalente la sotie du modle de TS1.
La gnralisation du rseau un systme n entres ne pose aucun problme
particulier. Le Nombre de nuds de la couche 1 est toujours gal au nombre total de termes
linguistiques dfinis. Le Nombre de nuds des couches 2, 3 et 4 est toujours gal au nombre
de rgles floues.
La figure III.7 montre un exemple de rseau ANFIS correspondant un SIF deux
entres avec 9 rgles. A chaque entre, correspondent trois fonctions d'appartenance ce qui
implique que l'espace d'entre est partag en 9 sous-espaces flous o chacun couvre une rgle
floue.
56
2A Master AUT+CSE
x
A1
A2
A3
N
N
N
B1
B2
B3
B3
B2
f
B1
x
1
1
A1
A2
A3
57
( (
A j (x i ) = exp 0.5 v i j xi ci j
i
))
2
2A Master AUT+CSE
Avec v i j =
(III.18)
i j
o c est la moyenne, v est l'inverse de la variance (cette dernire est adopte afin d'viter la
division par zro lors de son adaptation) s'effectue comme suit:
Considrons l'ensemble des paramtres des prmisses caractris par le vecteur , et
soit un ensemble de donnes entre-sortie ( x( k ), y d ( k )) . Notre objectif est de trouver les
valeurs du vecteur pour que la sortie du systme flou approche le mieux possible la sortie
dsire yd ( k ) , en minimisant le critre :
J=
2
1
f ( x( k ), ) y d ( k )
(III.20)
(III.21)
J J J
=
c v
(III.22)
cij k I j k A j cij
ci
o I
c ij
(III.23)
: est l'ensemble des indices (l) des rgles floues (Rl) dont lesquelles apparat l'ensemble
flou Ai j .
J
( y yd )
= k Mk
k
l =1
58
(III.24)
Ai
2A Master AUT+CSE
n
=
l =1
Alkl
( xl )
(III.24)
l i
Aij
ci
= v i j ( xi c i j )
Ai j
( xi )
(III.25)
J
=
cij
kI
j
ci
(III.26)
l =1
j
ci
(III.27)
l =1
59
Chapitre IV
Optimisation de Commandes Floue par
les Algorithmes Gntiques
2A Master AUT+CSE
Alatoire
e
Population initiale
CF-PFF
Modle
Enregistrement du
meilleur chromosome
oui
Arrt ?
non
- Reproduction
- Croisement
- Mutation
C1,1 C1,m1
C2,1 C2,m2
Cn,1 Cn,mn
W11 Wnmn
Les ( Ci , j ) j =i1 reprsentent les valeurs modales des triangles dfinis sur le domaine de
l'entre i. De plus, nous imposons la contrainte :
( i ) ( Ci ,1 < Ci ,2 < ... < Ci ,m )
(III.1)
Par contre, les Wij reprsentent les conclusions des rgles (dans notre cas, des
singletons).
IV.3 Oprateurs gntiques
Au dbut du processus d'optimisation, la population initiale comporte un ensemble de
chromosomes qui sont disperss partout dans l'espace de recherche. La population initiale
60
2A Master AUT+CSE
peut tre alatoirement produite ou peut tre en partie fournie par l'utilisateur. Cependant,
dans toutes nos simulations, la population se compose de 200 chromosomes qui sont tous tirs
alatoirement au dbut.
La slection par la mthode de "la roue biaise" est utilise pour dterminer les
membres de la nouvelle population [Goldgerg 94]. Une fois que la nouvelle population est
construite, le croisement est effectu et ensuite est suivi par l'opration de mutation.
IV.4 Rsultats de simulation
Dans ce paragraphe nous examinons les performances de la mthode prsente cidessus en l'appliquant pour la conception d'un contrleur, de type Sugeno d'ordre zro, du
pendule inverse. Le contrleur flou de type Sugeno dterminer a une structure 2 entres(
trois fonctions d'appartenance pour l'erreur (e) et trois fonctions d'appartenance pour la
variation de l'erreur (e)) et une sortie u(t), avec 9 rgles. Les fonctions d'appartenance sont
de type triangulaire formant une partition floue forte. Lobjectif global du systme de
commande est de rduire au minimum l'erreur chaque instant k entre la rponse relle du
systme et le point de consigne, l'indice de performance, F est choisi comme suit:
F = e 2 ( k )
(III.2)
k =1
Les valeurs modales des triangles respectivement C11, C12, C13 pour l'erreur (e) et
C21,C22,C23 pour la variation de l'erreur (e), sont choisis entre [-1 1], et chacun est cod
sur une chane de 8 bits, tout en respectant la contrainte (III.1) lors du processus
d'optimisation,
Les conclusions des rgles W11 W33 sont choisies entre [-1 1], et chacun est cod sur
une chane de 8 bits,
La population contient 200 chromosomes (chacun de longueur de 120 bits) et le nombre
maximal de gnration est 100,
La valeur du critre de performance F pour la solution obtenue est gale 277.9652.
Le tableau (III.1 (a),(b)) nous donne les paramtres optimaux obtenus par l'AG aprs 40
gnrations:
Fcts d'appartenance
e
e
W11
-0.1042
W12
-0.7482
W32
0.9015
(b)
TAB.III.1 Paramtres optimaux obtenus par l'AG
La figure III.2 reprsente les fonctions d'appartenance trouves aprs optimisation :
61
W33
0.2321
A1
A2
A3
1
Degr d'appartenance
Degr d'appartenance
0.8
0.6
0.4
0.5
B3
0.4
0
-0.5
B2
0.6
0.2
-1
B1
0.8
0.2
-1.5
2A Master AUT+CSE
1.5
-1.5
-1
-0.5
Erreur (e)
0.5
Temps (s)
Temps (s)
62
1.5
2A Master AUT+CSE
-1
-2
-3
-0.4
-0.2
0.2
0.4
0.6
0.8
1.2
1.4
0.2
0.15
0.1
0.05
-0.05
0
0.5
1.5
2.5
Temps (s)
La commande u
0.02
-0.02
-0.04
-0.06
-0.08
-0.1
-0.12
0
0.2
0.4
0.6
0.8
1.2
Temps (s)
63
1.4
1.6
1.8
2A Master AUT+CSE
0.05
0.1
0.15
0.2
0.25
64
Bibliographie
BIBLIOGRAPHIES
[1] R.KETATA
" Mthodologies de rgulation numrique incluant la logique floue "-Thse de Docteur
L.A.A.S Toulouse 1992
[2] M. BAUER
" Application de contrleurs logique floue pour la commande vectorielle des
machines
[11] K.BENMANSOUR
Etude et implantation de contrleurs robustes et flous dune machine synchrone aimants
permanents avec pilotage vectoriel , Thse de magister- Novembre 1999
66