Академический Документы
Профессиональный Документы
Культура Документы
4.1. Introduction
Les rgulateurs flous sont reconnus comme une solution viable, face aux rgulateurs
classiques, pour la commande de processus complexes, non linaires ou imparfaitement
connus. La littrature propose dj plusieurs approches pour leur conception [LIV 98,
WAN 97]. Ce chapitre prsente un rgulateur flou adaptatif et prdictif sur plusieurs
units de temps, plusieurs entres et plusieurs sorties (MSDAFC : Multiple Step
Direct Adaptive Fuzzy Controller). Un tel rgulateur a t utilis lIRIDIA dans le
cadre du projet europen : Fuzzy Algorithm for the control of Multi-Input, Multi-Output
processes (FAMIMO) (ESPRIT LTR project 21911).
139
140 Commande floue 1
processus sont estims (p) chaque instant et les paramtres w du rgulateur sont
calculs sur base des p. Les p sont assimils aux vrais paramtres p du processus. Dans
ce chapitre, nous nous intressons la commande adaptative directe. Les paramtres du
rgulateur sont ajusts afin de minimiser une fonction de cot donne. Cet ajustement
des paramtres est ralis via un algorithme dapprentissage ; nous utilisons la descente
de gradient.
Le travail prsent ici est inspir de travaux raliss dans le cadre de la commande
neuronale adaptative [REN 95, REN 96]. Nous proposons une extension des rsultats
la commande floue et une gnralisation de la procdure.
Les systmes flous sont des approximateurs universels [CAS 95, YIN 94]. Cette
proprit est une des hypothses ncessaire lapplication de notre algorithme. Les
systmes flous peuvent donc tre utiliss en tant que rgulateur sous forme de bote
noire paramtrisable [REN 94, WAN 93].
Les techniques de rgulation floue ont toutes un point commun : laction de contrle
est obtenue par la combinaison de rgulateurs simples (gnralement linaires) dfi-
nis localement sur lespace dentre du rgulateur. Laction de contrle dfinie par
la consquence de la rgle sapplique dans la zone de lespace dentre limite par
lantcdent. Lorsque plusieurs rgles sont actives en mme temps, dans une certaine
partie de lespace, laction de contrle applique est obtenue par combinaison floue
des diverses rgles.
Le prsent chapitre a t inspir du travail ralis par les auteurs de [BER 00], de
[BER 96] et de [BAK 97].
A chaque appel du rgulateur, celui-ci adaptera les paramtres des systmes flous
Ri qui le composent (un systme flou par signal de contrle ui ). Il calculera ensuite
les signaux de contrle (qui sont simplement la sortie des systmes flous Ri ).
avec :
u(t)
n1 : sorties : actions de commande du rgulateur au temps t ;
v(t)
n2 : entres : perturbations observables du systme ;
y(t)
q : entres : la consigne voulue au temps t (idalement y(t) y(t)) ;
y(t)
q : entres : la sortie du processus au temps t ;
w(t) : les paramtres du rgulateur cest--dire les centres (Cj ) et variances (Fj )
des ensembles flous et les paramtres Lj des consquences de chaque rgle floue (voir
paragraphe 4.3.3.) ;
Ri (. . .) : le systme flou permettant de calculer ui ;
nrs
n1 , nre
n1 , nrv
n1 : ordres connus du systme.
Remarque. Associ y(t) nous trouvons nre (voir [4.2]). nre est un ordre associ
une entre du rgulateur.
Des dlais nrde , nrdv peuvent tre intgrs au rgulateur, mais ils prsentent peu
dintrt, cest pourquoi ils ne sont pas repris dans [4.2].
Nous utilisons un prdicteur P sous forme de systme flou qui se prsente comme
suit :
yi (t + 1) = Pi [i (t)], 1iq [4.3]
i (t) = [y(t), . . . , y(t (nps )i + 1),
u(t (npde )i + 1), . . . , u(t (npe )i (npde )i + 2),
v(t (npdv )i + 1), . . . , v(t (npd )i (npdv )i + 2)] [4.4]
142 Commande floue 1
avec :
u(t)
n1 : entres : actions de commande du rgulateur au temps t ;
v(t)
n2 : entres : perturbations observables du systme ;
y(t)
q : sorties : prdiction pour le temps t ;
Pi (. . .) : le systme flou permettant de prdire yi ;
nps
q , npe
q , npv
q : ordres connus du systme ;
npde
q , npdv
q : dlais connus du systme.
Remarque. Les lments des vecteurs npde et npdv doivent tre suprieurs 1 pour
avoir un rel sens physique.
Exemple. Nous voulons rguler un processus 3 entres (2 signaux de commande,
1 perturbation observable) et 2 sorties. Si nous incluons le seul signal non contrlable
v1 (t) dans les u(t), nous obtenons (u3 (t) := v1 (t)) (pas de npv et de npdv ) :
3
nps = : caractrise les signaux de sortie de P ;
1
2
npe = : caractrise les signaux dentre de P ;
1
2
npde = : caractrise le dlai sur les signaux dentre de P.
1
Ce qui donne :
y1 (t + 1) = P1 [y1 (t), y1 (t 1), y1 (t 2), y2 (t), y2 (t 1), y2 (t 2),
u1 (t 1), u1 (t 2), u2 (t 1), u2 (t 2), u3 (t 1), u3 (t 2)]
y2 (t + 1) = P2 [y1 (t), y2 (t), u1 (t), u2 (t), u3 (t)]
Soit un rgulateur 3 entres et 2 sorties. Si nous prenons nre = npe , nrs = nps
(voir ci-dessus) (et nrde = 0) nous avons :
u1 (t) = R1 [u1 (t 1), u1 (t 2), u2 (t 1), u2 (t 2), u3 (t 1), u3 (t 2))
y1 (t), y1 (t 1), y1 (t 2), y2 (t), y2 (t 1), y2 (t 2)]
u2 (t) = R2 [u1 (t 1), u2 (t 1), u3 (t 1), y1 (t), y2 (t)]
Avant de procder aux calculs, nous devons faire les hypothses suivantes :
Rgulation directe adaptative et prdictive 143
il existe une srie de signaux de contrle unique [ut , ut+1 , . . . , ut+Hc ] qui guident
y vers y au temps t + Hc . Hc est lhorizon de contrle. Le rgulateur doit avoir un
horizon de prdiction Hp Hc ;
P R P R
= = = =0 t < k [4.5]
ut ut yt yt
la vitesse dadaptation des paramtres est suffisamment faible pour pouvoir spa-
rer la mesure de lerreur, dune part, et des effets de lajustement des paramtres dautre
part ;
4.3.2. Algorithme
avec :
Remarquons que la fonction de cot fait intervenir des valeurs pour y(t) et u(t) avec
t > k. Cest--dire, elle utilise des valeurs inconnues des variables. Nous devons prdire
lvolution de ces variables. Nous utiliserons P qui est un prdicteur du processus
rguler pour simuler la boucle ferme sur un horizon Hp . Cette simulation de la boucle
ferme est pour t = k jusqu k + Hp :
construire (t) ;
u(t) = R(y(t), (t); w(t)) ;
construire (t) en tenant compte des saturations sur u(t) ;
y(t + 1) = P((t)).
avec :
w(k)
: la valeur linstant k du paramtre en cours doptimisation. Ce para-
mtre est choisi parmi lensemble des paramtres des systmes flous Ri qui composent
le rgulateur ;
1 : la vitesse dapprentissage.
Nous avons :
k+Hp
y(t)
w(k) = w(k 1) (y(t) y(t))T Qk,t
w
t=k+1
k+Hp 1
( u(t))
+ ( u(t))T Rk,t [4.9]
w
t=k
Ri (t) ui (t)
= [4.11]
w w
Ri Ri i (t)
= +
w i (t) w
q (nre )i 1
Ri Ri yj (t k)
= +
w yj (t k) w
j =1 k=0
n1 (n
rs )i 1
Ri uj (t k 1)
+ [4.12]
uj (t k 1) w
j =1 k=0
y(t + 1) P((t))
=
w w
P1 ((t)) Pq ((t)) T
=
w w
P1 (t) Pq (t) T
= [4.13]
w w
Pi (t) yi (t + 1)
= [4.14]
w w
Pi (t)
=
(t) w
q (nps)
i 1 Pi yj (t k)
=
yj (t k) w
j =1 k=0
n1 (npe
)i 1
Pi uj (t k (npde )i + 1)
+
uj (t k (npde )i + 1) w
j =1 k=0
[4.15]
Les deux quations importantes sont [4.12] et [4.15]. A lintrieur de ces deux
quations est cache une rcurrence. En effet, elles font intervenir des termes en y/w
et en u/w qui doivent tre dvelopps suivant respectivement [4.11] et [4.14].
146 Commande floue 1
Remarquons, aussi, la notation employe pour crire les drives dans les qua-
tions [4.12] et [4.15]. Cette notation fait apparatre, clairement, la diffrence entre les
drives partielles () et les drives totales(). Lors dune drive partielle (), la
rcurrence sarrte. Pour une drive totale (), nous devons continuer le dveloppe-
ment, ce qui reprsente une lourde charge de calcul. Lessentiel du temps de calcul lors
de ladaptation est utilise pour trouver ces drives ().
Si nous voulons viter une charge de calcul trop importante, nous commenons par
calculer les y(t)/w et les u(t)/w partir de t = k car, ce moment, le calcul est
trs simple daprs lquation [4.5]. Ensuite, nous calculons les drives pour t > k
sur la base des drives prcdentes soigneusement gardes en mmoire. Il est hors de
question deffectuer les calculs selon un algorithme rcursif (cest--dire en partant de
t = k + Hp et ensuite en remontant vers t = k).
Les quations [4.12] et [4.15] font intervenir les drives partielles dun systme
flou par rapport un paramtre interne et par rapport une de ses entres (gradient).
Ce paragraphe dtaille le calcul de ces drives.
n
si (U est dans E j ) alors yj = i=1 Ui .Li,j + Ln+1,j ,
j = 1, . . . , r
a = ( (U )) = 1
,
j Ej e (U Cj )T Fj (U Cj )
[4.16]
r
j =1 aj yj
y =
r [4.17]
j =1 aj
La figure 4.2 est une reprsentation graphique dun systme flou une entre u et
une sortie y, compos de deux rgles floues. La fonction dappartenance de la premire
rgle est 1 (x) et sa sortie locale est y1 = a1 u + h1 . Nous pouvons voir sur la partie
gauche du schma 4.2 le rsultat obtenu en utilisant [4.18].
Figure 4.2. Deux dfinitions pour le calcul du gradient en u dun systme flou
La drive dun systme flou par rapport un de ses paramtres ne pose pas de
problme. Nous obtenons les drives suivantes :
R ak Ul si (l n)
(U ) =
r . [4.20]
Lk,l j =1 aj 1 si (l = n + 1)
n
R 2 ak
(U ) =
r (Fk )l,s (U Ck )s (yk R(U )) [4.21]
(Ck )l j =1 aj s=1
R ak
(U ) =
r (U Ck )l (U Ck )m (yk R(U )) [4.22]
(Fk )l,m j =1 aj
Il est possible demployer comme prdicteur, non pas un systme flou, mais nim-
porte quelles fonctions dcrivant le processus. Pour pouvoir appliquer lalgorithme
148 Commande floue 1
Un rgulateur bas sur une prdiction dune unit de temps dans le futur ne pourra
contrler ce systme car celui-ci est non-minimum de phase. Il est donc ncessaire
dutiliser un algorithme qui peut prdire le comportement du systme sur plusieurs
occurences dans le futur.
Dans cet exemple, il est intressant de noter la forme typique de la rponse dun
systme non-minimum de phase. A chaque changement de consigne, le systme
part dans la direction oppose la consigne. Ce systme, impossible rguler en
utilisant une prdiction un pas, est facilement contrl en utilisant une prdiction sur
plusieurs pas.
Un systme biologique constitu dun bioracteur continu, ciel ouvert, utilis pour
le traitement des eaux uses dans lindustrie du papier, est la cible de notre seconde
Rgulation directe adaptative et prdictive 149
La concentration du energetic substrate ne doit pas tre rgule car celui-ci est
facilement dgradable. Le processus est caractris par sa haute non-linarit, sa dyna-
mique changeante et des problmes de couplage entre les variables. De plus, nous ne
disposons pas de capteur pour connatre la masse du xenobiotic polluant substrate.
Celle-ci est donc obtenue grce un observateur asymptotique. Le volume deau dans
le racteur est maintenu constant. Il est possible de rguler la concentration en substrats
en jouant sur les deux dbits deau entrant dans le racteur. La premire arrive deau
provient dun rservoir deau pure et la seconde provient dun rservoir deau pollue
(voir figure 4.4).
Soit :
c(t) [g/l] : (entre ; rguler) concentration de la biomasse. Les micro-organismes
dgradent les deux substrats prsents dans le racteur ;
s(t) [g/l] : ( rguler) concentration du xenobiotic polluant substrate ;
e(t) [g/l] : (entre) concentration du energetic substrate ;
150 Commande floue 1
Nous pouvons constater sur les figures 4.5 et 4.6 quaprs un temps dapprentissage
suffisament long (6 400 units de temps), les deux systmes donnent de bons rsultats
et cela malgr des conditions fort bruites. La principale diffrence entre les deux
algorithmes tient dans le temps ncessaire pour apprendre la loi de contrle optimale.
La mthode base sur un horizon de prdiction de 10 apprend plus vite que celle
base sur un horizon de 3 car, chaque unit de temps, elle regarde plus loin et peut
donc retirer plus dinformations du systme. Malheureusement, elle exige plus de
puissance de calcul ( chaque unit de temps, il faut plus de temps pour mettre jour
les paramtres du rgulateur que lorsque lhorizon est de 3). Cela implique que, bien
que lapprentissage soit plus rapide, la simulation pourra prendre plus de temps que sa
concurrente.
152 Commande floue 1
4.5. Conclusion
Les algorithmes adaptatifs prsents ici sont trs proches des algorithmes prsents
dans les rgulateurs neuronaux. Ces algorithmes adaptatifs peuvent fonctionner partir
de paramtres initiaux alatoires ; mais, si le rgulateur de dpart est dj correctement
initialis, ladaptation est plus rapide et donne de meilleurs rsultats. Il est facile, dans
le cas de systmes flous, de retirer de linformation dun expert et de lintgrer dans un
rgulateur. En effet, la structure dun systme flou est facilement comprhensible pour
un humain. Linitialisation partielle dun rgulateur est donc possible. Cette facilit ne
se retrouve pas, par exemple, dans les rseaux de neurones. Cest pourquoi les systmes
flous sont dexcellents candidats pour raliser des rgulateurs dits botes noires .
4.6. Bibliographie
[BAK 97] Bakuska R., Fuzzy Modeling and Identification, PhD thesis, TU Delft, Delft, Pays-
Bas, 1997.
[BER 96] Bersini H., Adaptive fuzzy control for the state feedback optimal control , Pro-
ceedings of the XI I I th IFAC World Congress, San Francisco, juillet 1996.
[BER 00] Bertolissi E., Duchateau A., Bersini H., Berghen F.V., Direct Fuzzy Control
for MIMO Processes , Proceedings FUZZ-IEEE 2000, San Antonio, Texas, 7-10 mai 2000.
[CAS 95] Castro J., Fuzzy logic controllers are universal approximtors , IEEE Trans. on
Systems, Man and Cybernetics, vol. 25, p. 629-635, 1995.
[GUS 79] Gustafson D.E., Kessel W.C., Fuzzy clustering with a fuzzy covariance matrix ,
Proc. IEEE CDC, San Diego, Etats-Unis, p. 761776, 1979.
[LIV 98] Livchitz M., Avershitz A., Soudak U., Kandel A., Development of an automated
fuzzy-logic-based expert system for unmanned landing , Fuzzy Sets and Systems, vol. 2,
p. 145-159, 1998.
[REN 94] Renders J.M., Saerens M., Bersini H., On the stability of direct adaptive fuzzy
controllers ; Rapport IRIDIA/ULB, Bruxelles, 1994.
[REN 95] Renders J.M., Saerens M., Bersini H., dans Hunt K.J., Irvin G.R., Warwick K.,
(Eds.), Adaptive neurocontrol of a certain class of MIMO discrete-time processes based
on stability theory , Neural Network Engineering in Dynamic Control Systems, Springer
Verlag, p. 43-60, 1995.
[REN 96] Renders J.M., Saerens M., Bersini H., Neurocontrol based on the backpropaga-
tion algorithm , dans M.M. Gupta, N.K. Sinha (dir.) Intelligent Control Systems, p. 292-326,
IEEE Press, 1996.
[WAN 93] Wang L.-X., Stable adaptive fuzzy control of nonlinear systems , IEEE Trans.
on Fuzzy Systems, vol. 1, p. 146-155, 1993.
[WAN 97] Wang L.-X., Combining mathematical model & heuristics into controllers, an
adaptive fuzzy control approach , Fuzzy Sets and Systems, vol. 89, p. 151-156, 1997.
[YIN 94] Ying H., Sufficient conditions on general fuzzy systems as function approximators ,
Automatica, vol. 30, p. 521-525, 1994.
[YOU 96] Youssef C.B., Filtrage, estimation et commande adaptive dun procd de traitement
des eaux usues, PhD thesis, Institut national polytechnique, Toulouse, 1996.