Documente Academic
Documente Profesional
Documente Cultură
L2 Adaptive
L2 Adaptive
1. Introducere
^
Estimatoarele recursive determină matricea parametrilor estimaţi la momentul t, ( t ) , prin
^
aplicarea unei corecţii valorii ( t 1) , determinată la pasul anterior. Corecţia se va calcula
luând în considerare numai ultimul set de valori u( t ), y( t ) achiziţionate la pasul t.
^
Fie ( t 1) estimarea determinată la pasul t-1 pe baza relaţiei
^ 1
( t 1) T ( t 1)( t 1) T
( t 1)Y( t 1)
(2)
unde:
T
( t 1) T (1), T (2), ..., T ( t 1)
1
^ ^
y( t ) T ( t ) ( t 1) (4)
predicţie ce se va abate de la valoarea adevărată y(t) cu valoarea ( t ) (eroarea de predicţie):
^ ^
( t ) y( t ) y( t ) y( t ) T ( t ) ( t 1) (5)
c ( t)
Eroarea de predicţie va furniza, pe baza unui mecanism de ajustare, corectorul ce se
^
va aplica vectorului ( t 1) astfel încât:
^ ^
( t ) ( t 1) c ( t ) (6)
( t )
-
u(t) Proces y(t)
+
+ ( t )
-
^
Model ajustabil y( t )
^ ^
( t ) ( t 1) c ( t )
c (t)
Mecanism de
ajustare
1
= P -1 ( t 1) ( t ) T ( t )
(10)
sau echivalent:
P 1 ( t ) P 1 ( t 1) ( t ) T ( t ) (11)
În mod similar se poate dezvolta o relaţie de calcul recursiv pentru matricea R(t):
R ( t ) T ( t )Y( t ) T ( t 1), ( t )
y ( t )
Y( t 1)
T
( t 1)Y( t 1) ( t ) y( t )
2
^
1
Înlocuind în ecuaţia (13) R ( t 1) P ( t 1) ( t 1) se obţine:
^ ^ (11) ^
( t ) P( t ) P 1 ( t 1) ( t 1) P( t )( t ) y( t ) P( t ) P 1 ( t ) ( t ) T ( t ) ( t 1) P( t )( t ) y( t )
^ ^ ( 5)
( t 1) P( t )( t ) T ( t ) ( t 1) P( t )( t ) y( t )
^ ^ ^
( t 1) P( t )( t ) T ( t ) ( t 1) P( t )( t ) ( t ) T ( t ) ( t 1)
^ ^
( t ) ( t 1) P( t )( t ) ( t ) (14)
3
1) resetarea algoritmului de identificare în momentul depistării variaţiei parametrice,
^
reţinându-se estimaţia ( t 1) ca estimaţie iniţială şi modificând matricea de covarianţă P(t) la
valoarea iniţială I.
2) adăugarea unui termen de corecţie suplimentară în momentul depistării variaţiei
parametrice. În acest caz reactualizarea P(t) se va face cu relaţia:
1
P( t ) P( t 1) I ( t ) T ( t ) 1 T P( t 1)( t ) P0
(18)
unde termenul suplimentar P0 este ales de forma:
P0=I, R
sau
P0=diag{i}, iR, i=1,(na+nb+1)
în cazul în care modelul variază diferit şi într-un mod cunoscut.
În cazul unor variaţii continue ale parametrilor procesului se folosesc algoritmi ponderaţi
de tipul CMMP. Ponderarea se referă la accentuarea influenţei informaţiilor proaspăt culese
de la proces, în raport cu informaţia mai veche, asupra mecanismului de calcul al corectorului.
^
Estimaţia ( t ) va fi o soluţie a ecuaţiei:
^ ^
y( t ) T ( t ) ( t ) ( t ) (19)
găsită în sensul minimizării criteriului:
2
^ 1 t t i ^
J ( ) (i)
2 i 1
(20)
unde (0,1] este constanta de ponderare.
Alegerea valorii se face în funcţie de viteza de variaţie a parametrilor procesului: cu cât
viteza va fi mai mare cu atât se va considera mai mic şi influenţa datelor mai vechi în
calculul corectorului va fi mai mică. Totuşi valori foarte mici ale lui produc oscilaţii ale
estimaţiilor, în mod uzual constanta de ponderare alegându-se în plaja de valori (0.9..1].
Se poate arăta că, prin ponderare, estimarea recursivă se face luându-se în considerare
1
aproximativ ultimele (1 ) valori ale ieşirii şi comenzii procesului; secvenţele de date mai
vechi au ponderi extrem de mici şi vor fi practic ignorate în cadrul rutinei de identificare.
^
Estimaţia ( t ) obţinută prin metoda CMMP ponderată cu factor de uitare este:
1
^ t t
( t ) (i)t i T (i) ( i ) y ( i )
T
i 1 i 1
(21)
În varianta recursivă expresia estimatorului se păstrează:
^ ^
( t ) ( t 1) P( t )( t ) ( t ) (22)
În schimb, factorul de ponderare apare în matricea de covarianţă P(t), care se
reactualizează la fiecare pas cu relaţia:
P 1 ( t ) P 1 ( t 1) ( t ) T ( t ) (23)
sau echivalent:
1 1
P( t ) P( t 1) I ( t ) T ( t ) P( t 1)
T
( t ) P( t 1)( t )
(24)
4
Utilizarea algoritmilor de identificare recursivă de tipul CMMP cu factor de ponderare se
va realiza cu precauţie deoarece prezintă o serie de dezavantaje precum:
Pentru cazurile în care parametrii procesului nu se modifică estimarea cu <1 nu va
^
converge niciodată exact. Estimaţia ( t ) va
oscila în jurul valorii adevărate ( t ) ; plaja de
oscilaţie va fi cu atât mai mare cu cât va fi mai mic.
În cazul în care pentru un set suficient de mare de măsurători (N>1/(1-)) semnalul de
intrare folosit în identificare nu este persistent se poate pierde complet stabilitatea
estimatorului. Spre exemplu în situaţia în care procesul se găseşte într-un punct de
funcţionare, aportul de informaţie furnizat de valorile actualizate ale datelor (t) este
nesemnificativ iar matricea P(t) va lua valori succesive determinate cu relaţia:
1
P( t ) P( t 1).
(25)
Acest lucru va conduce evident la o creştere permanentă a lui P(t) (<1) şi implicit la o
^
corecţie eronată a lui ( t ) .
Eliminarea acestor neajunsuri presupune folosirea unui factor de ponderare variabil astfel
încât:
<1 (de valoare mică) când parametrii procesului suferă modificări semnificative;
=1 când parametrii sunt constanţi.
În general, toate aceste date iniţiale ale algoritmului la pasul t sunt cunoscute, fiind
furnizate de calcule şi/sau reactualizările făcute la pasul anterior t-1. Problema care se pune
constă în iniţializarea algoritmului CMMP recursiv în sensul determinării/alegerii iniţiale a
acestor date.
5
Cu excepţia valorilor y(0) şi u(0) ce pot fi achiziţionate de la proces se impune o
iniţializare a datelor y(t) şi u(t) pentru t<0.
Această iniţializare poate fi:
arbitrară: uzual u(t)=y(t)=0, pentru t0
O astfel de presupunere nu va afecta semnificativ rezultatele dar va determina o
convergenţă mai lentă a algoritmului.
bazată pe precolectarea datelor: momentul începerii estimării t=0 este precedat de o
perioadă de funcţionare a procesului (uzual se foloseşte conducerea în regim manual) în care
se face precolectarea datelor. Lungimea acestei perioade de precolectare, exprimată în tacte de
eşantionare, este max(na,nb+1).
^
Determinarea estimaţiei (1) presupune aplicarea unei corecţii vectorului:
T
^ ^ ^ ^ ^ ^ ^
(0) a 1 , a 2 ,...., a n a , b 0 , b 1 ,...., b n b t 0
^
Iniţializarea (0) se poate face:
dezvoltând un model teoretic al procesului pe baza cunoştinţelor aprioric existente,
^ ^ ^
referitoare la comportarea sistemului. În acest fel fi construit din parametrii (0) va ai , bi
estimaţi aprioric.
arbitrar, atunci când nu există posibilitatea estimării apriorice a modelului procesului
^
(0) 0 0 ...... 0
T
^
Un punct de plecare în alegerea (0) constă în considerarea procesului ca fiind de tip
integrator pur cu câştig unitar:
1 T
G (s) G ( z 1 )
s 1 z 1
^ ^
a1 t 0 1; a i t 0 0; i 2, n a
^ ^
b0 t 0 T; b i t 0 0; i 1, n b
^
Alegerea (0) nu este esenţială pentru acurateţea estimaţiei prin utilizarea algoritmului
CMMP recursiv, însă va influenţa rata de convergenţă a parametrilor estimaţi către valorile
^
reale. Algoritmul va converge mai lent (în mai mulţi paşi) dacă (0) a fost arbitrar, îndepărtat
de valoarea adevărată ( 0) .
6
^
semnificative ale vectorului parametrilor iniţiali. Complementar, pentru estimaţii (0) bune,
determinate din cunoştinţele iniţiale referitoare la model, P(0) va avea elemente de valoare
mică.
Influenţa P(0) asupra evoluţiei matricei de covarianţă P(t) poate fi stabilită prin formularea
relaţiei recursive (10) succesiv de t ori rezultând:
1
t
P( t ) P 1 (0) (i) T (i)
i 1
Această ultimă relaţie arată că, în cazul unei incertitudini mari, P(t) va fi determinată
esenţial de evoluţia vectorului de date (i) , i=1...t; P(0), aleasă în acest caz cu elemente de
^
valoare mare, contribuie neglijabil la valoarea P(t). Dacă în schimb estimaţia iniţială (0) este
bună, atunci iniţializarea la valori mici a matricii P(0) va influenţa puternic calculul lui P(t). În
^
acest ultim caz corecţia estimării ( t ) va fi mai puţin influenţată de zgomotul indus în secvenţa
de date ( t ) .
Implicit, mărimea oricărei funcţii scalare monoton crescătoare dependentă de P(t), cum ar
fi det(P(t)) sau urma tr(P(t)), reflectă gradul de incertitudine în determinarea estimaţiei.
7
bandă de valori, definită de saltul estimat în modificarea regimului staţionar şi de nivelul
zgomotului din instalaţie.
4. Aplicații
a). Folosind SIMULINK (blocul “Recursive Least Squares Estimator”) sau funcția
“rarx.m”, să se realizeze estimarea recursivă a parametrilor (vizualizarea grafică a
valorilor parametrilor la fiecare moment de timp).
b). Determinați parametrii de acord ai algoritmului de estimare recursivă (na,nb,d,,).
Să se analizeze influența valorii parametrului asupra ratei de convergenţă a
parametrilor. Să se analizeze influența persistenței semnalului de excitației asupra
convergenței parametrilor. Evidențiați regimul tranzitoriu al algoritmului de
estimare recursivă cu ajutorul urmei matricei de covarianță P (trace(P)).
2. Se consideră un proces industrial supus automatizării caracterizat prin modelul
continuu de forma:
0 .5 s+0 . 1
H ( s )= 2
s +0 . 4 s+0 . 28
Folosind răspunsul indicial al sistemului să se aleagă perioada de discretizare adecvată
1 1
( )
T e= .. t c 95 %
25 5 . Determinați parametrii modelului discret folosind metoda de
discretizare cu extrapolator de ordin zero (funcția MATLAB c2dm -vezi help c2dm).
8
Să se implementeze schema de estimare recursivă folosind modelul continuu al
procesului şi extrapolatorul de ordin zero. Reluați problematica de studiu de la punctul
1.b)
Observații: