Sunteți pe pagina 1din 50

Capitolul 3

Filtrare adaptiv

3.1 Introducere 3.2 Algoritmi de filtrare adaptiv 3.3 Algoritmi adaptivi n domeniul frecven 3.4 Discuie asupra algoritmilor adaptivi 3.5 Aplicaii ale filtrelor adaptive

100

CAPITOLUL 3: FILTRARE ADAPTIV

Cuvntul adaptiv este ntlnit deseori n vorbirea curent, n contexte care nu au neaprat o conotaie tehnic. Adaptarea vitezei de rulare a unei maini condiiilor meteorologice, adaptarea unei plante la un mediu ostil sau adaptarea unei persoane la un nou loc de munc sunt exemple care ilustreaz un acelai principiu: modificarea comportrii unui sistem fizic sub aciunea unor factori externi n sensul optimizrii performanelor acestuia. Aceleai exemple practice pun n eviden i cteva caracteristici specifice oricrui proces adaptiv: a) modificrile nu se petrec brusc, ci gradual, iar efectul acestora poate avea, temporar, un efect nedorit, dei pe ansamblu conduc la efectul scontat (controlul unui autoturism pe un drum acoperit de polei este un exemplu edificator n acest sens). n plus, modificrile in cont n mod nemijlocit de diferena existent ntre comportarea considerat dorit i cea real; b) pe msur ce procesul de adaptare evolueaz, iar comportarea sistemului analizat se apropie de cea dorit, amplitudinea modificrilor succesive se diminueaz; c) de regul, putem cuantifica inta nspre care tinde sistemul. n multe situaii practice, chiar dac obiectivul nu este atins cu exactitate, plasarea performanelor suficient de aproape de acesta este acceptabil; d) este posibil ca uneori procesul de adaptare s scape de sub control, iar rezultatele s fie complet nedorite. n cuprinsul acestui capitol vom trece n revist principiile de operare, terminologia, parametrii caracteristici i ariile de aplicabilitate ale principalilor algoritmi adaptivi descrii n literatur. Fr a diminua importana versiunilor neliniare ale tehnicilor adaptive, accentul va fi pus pe prezentarea metodelor cu caracter liniar care, pe de o parte, beneficiaz de posibilitatea analizei riguroase a dinamicii sistemelor considerate, iar pe de alt parte domin cu autoritate piaa aplicaiilor practice. Ne vom concentra cu precdere pe algoritmul de tip scdere dup gradient, respectiv pe implementarea practic a acestuia sub forma familiei de algoritmi de tip LMS (Least Mean- Squares), a cror eficien va fi ilustrat prin intermediul unor exemple sugestive. Nu n ultimul rnd, vom evidenia i o serie de elemente specifice implementrii algoritmilor adaptivi prin metode digitale. nainte de a intra efectiv n subiectul filtrrii adaptive este important s recapitulm sumar cteva dintre noiunile fundamentale specifice teoriei proceselor

3.1 Introducere

101

aleatoare, care ofer suportul matematic necesar formalizrii riguroase a diverselor aspecte specifice acestui domeniu. n Dicionarul Explicativ al limbii romne ntlnim urmtoarea definiie a cuvntului aleator: Aleator: care depinde de un eveniment nesigur; supus ntmplrii Sunetul emis de un receptor radio dezacordat, imaginea de pe ecranul televizorului la ntreruperea accidental a emisiei, distana total pe care o parcurgem pe jos n fiecare zi, ori rezultatul aruncrii cu zarul reprezint exemple care ilustreaz n mod concret cele de mai sus. Caracteristica distinctiv a unor astfel de semnale (n sensul de manifestri fizice purttoare de informaie) const n faptul c acestea nu pot fi descrise prin relaii matematice explicite, care s permit precizarea cu exactitate a valorii lor la un moment dat. n fapt, evoluia acestora este ghidat de legi probabilistice, care presupun un anumit grad de ans, de ntmplare pentru ca manifestarea respectiv s conduc la un rezultat predefinit. Din acest punct de vedere, semnalele aleatoare se deosebesc de cele deterministe, ale cror valori pot fi precizate cu acuratee n orice moment. Suportul teoretic care permite analiza semnalelor cu caracter aleator este oferit de teoria probabilitilor care, n principiu, analizeaz valorile medii ale unor manifestri fizice care se produc pe scar larg (de exemplu succesiunea simbolurilor binare n transmisiunile de date, rezultatele jocurilor de noroc, ori evoluia seriilor financiare). Puntea de legtur dintre multitudinea de manifestri fizice concrete i formalismul matematic unificator l joac noiunea de variabil aleatoare, exprimat prin funcia ce asociaz cte un numr fiecrui rezultat posibil al unui experiment dat. Un ansamblu de variabile aleatoare definete un proces aleator. n Fig. 3.1 se prezint cteva realizri individuale ale unui proces aleator fictiv. Reprezentarea grafic este caracteristic unui proces continuu n timp (analogic) cu valori necuantizate (de exemplu, un semnal radio), ns putem ntlni i procese aleatoare discrete n timp, cu valori cuantizate (rezultatul aruncrii cu zarul) sau necuantizate (cantitatea total de ap but n decursul unei zile). n exemplele enumerate se

102

CAPITOLUL 3: FILTRARE ADAPTIV

Fig. 3.1 Realizri individuale ale unui proces aleator

presupune c avem la ndemn mai muli subieci care permit nregistrarea succesiv a rezultatelor instantanee ale experimentelor propuse. Un rol central n teoria probabilitilor l joac operatorul denumit speran matematic (expectation) care ataeaz unei variabile aleatoare valoarea rezultat prin medierea aritmetic a unui numr teoretic infinit de realizri individuale ale manifestrii fizice considerate. n funcie de natura discret sau analogic a experimentului, definiiile sunt [7]:

E{X} = pi xi
i =1

(3.1)
X

E{X} =

xf

( x) dx

n care X desemneaz variabila aleatoare presupus a avea n realizri posibile cu probabilitile pi n cazul discret, respectiv densitatea de probabilitate fX(x) n cazul analogic. n cele ce urmeaz ne vom referi exclusiv la procese aleatoare discrete n timp, ale cror realizri individuale sunt denumite serii de timp. Astfel de semnale se ntlnesc n mod natural n numeroase aplicaii practice sau pot proveni n urma

3.1 Introducere

103

eantionrii unor semnale analogice. Dup cum s-a menionat anterior valorile exacte ale unor variabile aleatoare (i, n consecin, ale unor procese aleatoare la un moment dat) nu pot fi precizate cu exactitate. n schimb, pot fi determinate mrimi statistice care ofer o caracterizare parial a procesului considerat. Astfel, pentru un proces aleator oarecare notat u[n] se definesc urmtoarele mrimi [4]: Valoarea medie: Funcia de autocorelaie: Funcia de autocovarian:

[n] = E{u[n]}

(3.2)

r[n, n - k ] = E{u[n] u *[ n - k ]} (3.3) c[n, n - k ] = E{(u[n] - [n]) (u[n - k ] - [n])*} (3.4)

Aceast form de caracterizare parial ofer dou avantaje majore: a) se preteaz la msurtori practice; b) permite procesarea liniar a proceselor aleatoare. Un proces aleator este denumit staionar dac toate mrimile statistice care l caracterizeaz nu depind n mod explicit de timp. n acest caz relaiile de mai sus capt forme mai simple, dup cum urmeaz: Valoarea medie: Funcia de autocorelaie: Funcia de autocovarian:

[ n] = , n
r[n, n - k ] = r[k ], n c[n, n - k ] = c[k ], n

(3.5) (3.6) (3.7)

Mrimea c[0] = u2 desemneaz dispersia procesului aleator. Un rol important l joac matricea de autocorelaie, definit astfel (simbolul H desemneaz operaia de transpunere Hermitic, obinut prin combinaia dintre conjugarea complex i transpunerea uzual):

r[1] r[ M -1] r[0] r[1] r[ M - 2] r[0] R = E{u[n]u H [n]} = r[-M + 1] r[-M + 2] r[0]

(3.8)

104

CAPITOLUL 3: FILTRARE ADAPTIV

3.1

Introducere

Metoda cea mai rspndit prin care se introduc, n literatura de specialitate, algoritmii adaptivi o reprezint exemplul binecunoscutei probleme de filtrare (liniar) optimal din teoria transmisiunii informaiei [4], descris generic prin schema-bloc din Fig. 3.2. n esen, aplicaia urmrete determinarea parametrilor care definesc un filtru (liniar) la intrarea cruia se aplic un semnal care include dou componente, una considerat util, iar cealalt nedorit, astfel nct rspunsul acestuia s fie ct mai curat, adic s conin cu precdere semnal util. n figur se distinge prezena unui semnal de eroare rezultat din compararea rspunsului real al sistemului cu cel dorit, ce urmeaz a fi utilizat (tipic, mpreun cu semnalul de intrare) pentru a determina valorile parametrilor filtrului. Acesta poate fi analogic sau discret, liniar sau neliniar, iar semnalele de intrare, respectiv de ieire dorit, sunt considerate, n general, realizri individuale ale unor procese aleatoare1. Dei prezente n literatur, filtrele adaptive analogice sunt foarte rar utilizate, astfel nct n cele ce urmeaz ne vom ocupa numai de varianta discret a acestora. De asemenea, vom aborda doar tangenial cazul filtrelor adaptive neliniare, teoria acestora fiind pe larg descris n lucrrile dedicate aa-numitelor reele neurale artificiale [2].

Fig. 3.2 Schema-bloc a unui filtru adaptiv

Cuvntul care ilustreaz intuitiv noiunea de semnal aleator este zgomotul. De regul,

acest cuvnt este asociat cu senzaia de disconfort, care trebuie nlturat sau mcar atenuat. Deseori, zgomotul se suprapune peste ceea ce denumim de regul informaie util, iar efortul de a le separa poate fi uneori extrem de anevoios.

3.1 Introducere n legtur cu schema-bloc din Fig. 3.2 se pot face cteva observaii:

105

- dei caracterul liniar al filtrului utilizat nu este implicit, o astfel de condiie simplicatoare a permis obinerea unor rezultate teoretice importante, referitoare n particular la determinarea, ntr-o form compact i elegant, a expresiei setului optim de coeficieni ai filtrului sau a valorii erorii de estimare. - filtrul este cu funcionare discret n timp, cu avantajul particular c algoritmii de procesare pot fi implementai folosind circuite digitale specializate. Mai mult, n cele ce urmeaz vom utiliza n exclusivitate filtre discrete cu rspuns finit la impuls (Finite Impulse Response - FIR) datorit stabilitii intrinseci a acestora. - ieirea filtrului, notat y[n], furnizeaz o valoare estimat a unui semnal dorit d[n]. Diferena dintre aceste semnale constituie eroarea de estimare e[n]. n condiiile n care att semnalul de intrare ct i cel dorit reprezint realizri individuale ale unor procese aleatoare, eroarea devine ea nsi un proces aleator cu caracteristici statistice proprii. Scopul urmrit este ct se poate de evident: minimizarea erorii de estimare conform unui criteriu statistic precizat. Acesta este ales de regul dintre urmtoarele variante: a) valoarea ptratic medie a procesului e[n]; b) media aritmetic a valorilor absolute ale erorii; c) media aritmetic a unor puteri de ordin superior ale valorilor absolute ale erorii. Teoria filtrrii optimale utilizeaz prima dintre cele 3 variante dintr-un motiv justificat: doar n aceast situaie funcia de cost (indexul de performan), a crei minimizare va furniza ca rezultat valorile optime ale coeficienilor filtrului, este o funcie convex cu o valoare minim unic. Fr a prezenta o demonstraie matematic care s conduc la soluia problemei de filtrare liniar optimal expus anterior, menionm direct rezultatul de interes, exprimat sub forma celebrelor ecuaii WienerHopf [4]:

R w opt = p w opt = R 1p

(3.9)

n care wopt desemneaz valorile optime ale coeficienilor filtrului (denumit n acest context filtru Wiener), R este matricea de autocorelaie a procesului aleator aplicat la intrare, iar p este vectorul de intercorelaie dintre intrare i ieirea dorit: p = E{u[ n] d *[n]} (3.10)

106

CAPITOLUL 3: FILTRARE ADAPTIV

Este uor de observat c determinarea valorilor setului de coeficieni ai unui filtru optimal Wiener presupune cunoaterea exact a proprietilor statistice ale datelor prelucrate. Cnd aceste informaii nu sunt disponibile (iar aceasta este situaia tipic ntlnit n practic!) vectorul wopt nu se poate calcula, iar dac se ncearc rezolvarea ecuaiilor de mai sus folosind valori estimate (i deci imprecise) ale matricii R i vectorului p valorile coeficienilor filtrului nu vor mai fi optime. Ca urmare, n aceste condiii se dovedete util folosirea unui filtru adaptiv, adic a unui filtru care se autoproiecteaz astfel nct rspunsul acestuia s se apropie ct mai mult (n sens statistic) de cel dorit. Din nou sunt necesare cteva precizri: - funcionarea unui filtru adaptiv se bazeaz pe utilizarea unui algoritm (a unei reete) care permite modificarea ntr-o manier recursiv a valorilor setului de coeficieni - alei iniial n mod arbitrar! - astfel nct s fie asigurat convergena n sens statistic ctre valorile optime corespunztoare soluiei ecuaiilor Wiener Hopf. - dup cum vom vedea, n decursul procesului de adaptare valorile setului de coeficieni depind n mod explicit de valorile semnalelor de intrare, astfel nct un filtru adaptiv este n realitate un sistem neliniar, n sensul c nu respect principiul superpoziiei (dei rspunsul filtrului este totui obinut sub forma unei combinaii liniare a semnalelor de intrare). n decursul timpului au fost elaborate numeroase variante de algoritmi adaptivi, fiecare cu avantaje i dezavantaje specifice. Se pot distinge urmtoarele 3 abordri de principiu [4]: a) Filtrul Wiener: ecuaiile Wiener-Hopf prezentate anterior sunt rescrise sub o form convenabil folosind o tehnic binecunoscut de optimizare denumit scdere dup gradient (gradient descent). Deoarece n continuare ecuaiile includ valorile matricii R i vectorului p (presupuse necunoscute), se nlocuiesc valorile exacte ale acestora cu valori estimate (n fapt, cu valorile instantanee). Algoritmul obinut este denumit LMS (Least Mean-Squares) i reprezint n multe situaii referina n raport cu care se compar performanele altor algoritmi. b) Filtrul Kalman: teoria filtrului optimal Wiener a fost elaborat pentru procese aleatoare staionare. n cazul n care proprietile statistice ale proceselor aleatoare

3.1 Introducere

107

implicate se modific n timp abordarea anterioar devine mult mai dificil deoarece suprafaa de eroare al crei minim este cutat se modific n permanen, astfel nct algoritmul adaptiv trebuie s asigure nu numai convergena ctre soluia optim, dar i urmrirea modificrii nencetate a acestei valori optime. Soluia este oferit de teoria filtrului Kalman, care admite drept punct de pornire formularea unui model al aplicaiei considerate sub forma ecuaiilor de stare. Algoritmul recursiv rezultat este mult mai rapid dect algoritmul LMS i mai puin dependent de caracteristicile statistice ale datelor de intrare, ns presupune un volum de calcul considerabil sporit. c) Metoda Least-Squares: cele 2 tehnici prezentate anterior utilizeaz n mod explicit o abordare statistic, bazat pe considerarea aciunii operatorului E{.} asupra unui ansamblu de realizri individuale ale unor procese aleatoare. Un punct de vedere complementar este oferit de luarea n consideraie a mediilor aritmetice calculate n domeniul timp, pe cte o singur realizare individual a procesului aleator de intrare, respectiv de ieire. Problema de filtrare liniar optimal se formuleaz n acest caz ntr-o manier principial asemntoare cu ecuaiile WienerHopf (relaiile poart denumirea de ecuaii normale), iar rezolvarea lor iterativ este oferit de algoritmul Recurrent Least-Squares. Funcia de cost Dup cum s-a artat anterior, coeficienii unui filtru adaptiv sufer un proces repetitiv de modificare sub aciunea unui algoritm menit s conduc la obinerea unui rspuns ct mai apropiat de cel dorit, asemnarea fiind apreciat conform unui criteriu statistic precizat. Unul dintre cele mai des utilizate puncte de vedere n definirea cadrului matematic al unei astfel de aplicaii l reprezint teoria optimizrii. Conform acestei abordri fiecrui set posibil de valori ale vectorului de coeficieni ai filtrului adaptiv i se asociaz o valoare scalar, corespondena fiind asigurat de o aa-numit funcie de cost. Scopul urmrit este de a identifica valori particulare ale setului de parametri pentru care acest index de performan atinge valori extreme. n cea mai mare msur, teoria filtrrii adaptive se bazeaz pe utilizarea criteriului denumit eroare ptratic medie, definit pe baza erorii de estimare n felul urmtor:

108

CAPITOLUL 3: FILTRARE ADAPTIV

J ( w) = E{ e[n]2 } = E{ d [n] - y[n] }

(3.11)

unde y[n] = w H u[n] desemneaz ieirea filtrului adaptiv. Definiia anterioar


include aciunea operatorului E{.} asupra unui ansamblu de realizri individuale ale proceselor aleatoare implicate i este specific abordrii de tip filtru Wiener. n mod alternativ, se poate utiliza i operaia de mediere n domeniul timp, specific abordrii de tip Least-Squares i care conduce la urmtoarea definiie [4]:
n n

J ( w , n) = e[i ] = d [i ] w H u[i ]
2 i =1 i =1

(3.12)

Este important de observat c n acest caz expresia funciei de cost depinde n mod explicit i de intervalul de timp considerat, astfel nct valorile optime ale vectorului de coeficieni se vor modifica ele nsele n timp. Avantajul major al unei astfel de funcii de cost rezid n caracterul convex al acesteia, manifestat prin prezena unei valori minime unice care va conduce la determinarea unui set de asemenea unic de valori optime ale coeficienilor filtrului adaptiv considerat. Merit menionat n acest context faptul c aceast caracteristic nu este prezent n cazul unor filtre adaptive discrete cu rspuns infinit la impuls (Infinite Impulse Response - IIR) i nici al celor neliniare (implementate sub forma reelelor neurale), situaii n care sunt prezente numeroase valori minime locale, corespunztoare unor soluii suboptimale. n aceste condiii, alegerea judicioas a valorilor iniiale ale setului de coeficieni ai filtrului este determinant pentru obinerea unor performane acceptabile1. n Fig. 3.3 sunt ilustrate modalitile tipice de reprezentare ale funciei de cost sub forma unei suprafee de eroare, respectiv prin curbe de nivel constant (de forma unor elipse). Valoarea minim a funciei de eroare (atins pentru w = wopt) este:

J min = 2 d p H Wopt

(3.13)

Acesta este motivul pentru care, n practic, n astfel de situaii se vor efectua experimente

repetate, pornind din condiii iniiale diferite.

3.1 Introducere

109

w2

w1

a)

b)

Fig. 3.3 Eroarea ptratic medie: a) hipersuprafa parabolic; b) curbe de nivel constant

Parametri specifici Exist o serie de parametri care caracterizeaz modul de operare al unui filtru adaptiv, utili n a aprecia comparativ performanele numeroaselor soluii propuse n literatur [4]: - viteza de convergen: reprezint numrul de iteraii necesar unui algoritm adaptiv care opereaz cu semnale provenind din procese aleatoare staionare pentru a ajunge suficient de aproape de (ideal, s coincid cu) soluia corespunztoare ecuaiilor Wiener-Hopf. Dei este de dorit ca viteza de convergen s fie ct mai mare, n realitate optimizarea acestui parametru se poate face doar n detrimentul altor caracteristici. - misadjustment: vom vedea pe parcursul urmtorului paragraf c nu este ntotdeauna posibil ca valorile finale ale setului de coeficieni ai filtrului s coincid cu cele furnizate de soluia ecuaiilor Wiener-Hopf, notate wopt. Ca urmare, nici valoarea final a funciei de eroare nu va fi optim, ci va fi mai mare dect cea corespunztoare utilizrii setului wopt (acesta este unul dintre preurile pltite pentru imposibilitatea practic de a preciza cu exactitate mrimile statistice de interes, adic matricea de autocorelaie R i vectorul p). Parametrul denumit misadjustment msoar (printr-o mrime relativ, exprimat n procente) tocmai aceast ndeprtare a erorii finale fa de cea ideal. - proprieti numerice: n implementarea oricrui algoritm de prelucrare numeric de semnal sunt fundamentale aspectele legate de efectul utilizrii unei rezoluii

110

CAPITOLUL 3: FILTRARE ADAPTIV

finite n reprezentarea numerelor n form binar. De interes n acest context sunt erorile de cuantizare, respectiv cele de trunchiere. Dou sunt aspectele care trebuie avute n vedere n cazul particular al algoritmilor adaptivi: stabilitatea numeric, care se refer la faptul c setul de coeficieni ai filtrului converge ctre valori finite chiar n condiiile efectelor datorate procesului de cuantizare, respectiv acurateea numeric, care indic rezoluia necesar (numrul de bii) n reprezentarea datelor de lucru, respectiv a setului de coeficieni ai filtrului. - arhitectura sistemului digital: se refer de asemenea la aspecte viznd implementarea hardware a diverilor algoritmi de procesare numeric de semnal, fiind atractive soluiile care presupun un grad nalt de paralelism, de modularitate i un flux sporit de date prelucrate. - complexitatea algoritmului: operaiile tipice implicate n definirea unor tehnici de prelucrare numeric de semnal sunt adunarea i nmulirea. Timpul necesar efecturii unei singure iteraii a unui algoritm adaptiv exprim complexitatea sa i va fi influenat direct de numrul acestor operaii aritmetice, de frecvena apelurilor de memorie i nu n ultimul rnd de efortul de programare solicitat. Aplicaii specifice Filtrele adaptive au fost aplicate cu succes n numeroase domenii, printre care transmisiuni de date, prelucrarea semnalelor radar, seismologie, inginerie biomedical. Se disting patru clase principale de aplicaii, ale cror scheme-bloc se prezint n Fig. 3.4, abordate cu succes folosind att filtre adaptive liniare ct i versiuni neliniare (n toate aceste categorii de aplicaii rezultatele obinute cu metodele neliniare sunt de regul mai performante, ns preul pltit se refer la dificultile sporite de a asigura stabilitatea sistemelor, volumul mai mare de calcul i posibilitatea de cantonare n soluii suboptimale). Diferenele dintre acestea se refer n special la natura semnalului cu rol de rspuns dorit la ieirea filtrului. De asemenea, menionm din nou c abordarea folosit predominant este de natur discret, ns au fost raportate i aplicaii bazate pe folosirea unor filtre adaptive analogice. identificare de sistem: rolul filtrului adaptiv este de a furniza un model al unui sistem necunoscut. n acest gen de aplicaii att filtrul adaptiv ct i sistemul necunoscut primesc la intrare acelai semnal, iar diferena dintre ieirile acestora

3.1 Introducere

111

definete semnalul de eroare care este folosit pentru modificarea recursiv a coeficienilor filtrului. Exist mai multe elemente care trebuie avute n vedere n acest gen de aplicaii, indiferent dac metoda utilizat are sau nu caracter adaptiv, dintre care menionm: achiziionarea datelor de intrare-ieire ntr-o manier care s limiteze (sau mcar s permit estimarea ct mai precis pentru) nivelul de zgomot suprapus peste semnalele utile, alegerea unui model adecvat i a algoritmului de estimare a valorilor parametrilor acestuia, utilizarea drept intrare a unui semnal capabil s excite toate frecvenele naturale ale sistemului necunoscut (de regul, de tip zgomot alb), folosirea unei metode de validare a calitii modelului obinut. Aceast direcie de cercetare este foarte bine acoperit n literatur i beneficiaz de o palet extrem de larg de tehnici, nu neaprat adaptive. Testarea validitii modelului obinut este fundamental, fiind disponibile criterii statistice riguroase n special n cazul modelelor liniare. modelare invers (deconvoluie): n acest caz rolul filtrului adaptiv este de furniza un model invers pentru un sistem necunoscut, n general nsoit de zgomot. n cazul unor sisteme liniare, modelul cutat are o funcie de transfer egal cu inversa funciei de transfer a sistemului necunoscut. Semnalul dorit este dat de versiunea, n general ntrziat, a semnalului de intrare n sistem. Un aspect fundamental este legat de asigurarea stabilitii modelului invers obinut, un exemplu n acest sens fiind oferit de aplicaiile n care sistemul original este un sistem discret liniar i invariant n timp, care nu este de faz minim (zerourile funciei de transfer sunt plasate n afara doemniului de stabilitate al filtrului). Au fost elaborate tehnici speciale care permit asigurarea stabilitii unor astfel de filtre adaptive, de exemplu prin readucerea forat a singularitilor sistemului n domeniul de stabilitate ca etap premergtoare actualizrii propriu-zise a coeficienilor filtrului considerat. Un exemplu practic de aplicaie inclus n aceast categorie este egalizarea adaptiv a canalelor de transmisiuni de date. predicie: rolul filtrului adaptiv este de a aproxima ct mai bine valoarea unui semnal la un moment dat pe baza unui numr finit de valori anterioare ale acestuia. Ideea fundamental care justific atingerea unui asemenea obiectiv const n supoziia c valorile succesive ale semnalului analizat respect n mod obiectiv o dependen

112

CAPITOLUL 3: FILTRARE ADAPTIV

funcional (n cazul cel mai simplu, liniar) bazat pe un numr limitat de parametri, ale cror valori pot fi estimate folosind un algoritm adaptiv adecvat. n cazul liniar, modelele considerate se aleg de regul dintre urmtoarele 3 variante: autoregresiv (AR), cu medie alunectoare (MA), respectiv combinaia acestora (ARMA) [7]. Numrul de parametri care descriu modelul (i care definesc ordinul acestuia) se estimeaz folosind criterii statistice consacrate. n unele situaii informaia de ieire este dependent nu numai de valorile anterioare ale semnalului analizat, ci i ale altor semnale. n plus, natura acestei dependene poate varia n timp, sistemul adaptiv fiind forat s asigure pe de o parte convergena rapid a valorilor parametrilor i pe de alt parte urmrirea modificrilor aprute n procesul fizic analizat. Exemple practice de aplicaii sunt tehnica LPC (Linear Predictive Coding) utilizat n prelucrarea semnalelor vocale, metoda ADPCM (Adaptive Differential Pulse Code Modulation) folosit n transmisiuni de date, predicia seriilor financiare. filtrare de zgomot: spre deosebire de cazurile anterioare, n acest gen de aplicaii apar 2 intrri. Intrarea primar este constituit dintr-un semnal util peste care este suprapus zgomot. La cea de a doua intrare se aplic numai un semnal de tip zgomot prelevat dintr-un punct foarte apropiat sursei de semnal primar, astfel nct acesta s fie puternic corelat cu cel prezent n semnalul primar. Rolul filtrului adaptiv este de a furniza la ieire un semnal ct mai apropiat de componenta de zgomot prezent n semnalul primar, astfel nct prin scdere s obinem un semnal mai curat. Exemple concrete sunt oferite de aplicaiile de tip ANC (Active Noise Control) folosite pentru diminuarea nivelelor de zgomot n instalaii industriale (spre exemplu, n sistemele de ventilaie sau estorii), dar i n spaii nchise de mici dimensiuni (habitaclul autoturismului, cti audio), eliminarea ecourilor pe liniile de comunicaii (echo cancelling), mbuntirea calitii recepiei n medii afectate de nivele mari de zgomot (cabine de tancuri sau elicoptere). n unele situaii componenta util din semnalul primar poate fi de amplitudine mult mai mic dect cea datorat zgomotului.

3.1 Introducere

113

Sistem necunoscut

Ieire d[n]

Intrare

Filtru adaptiv a) Z-D

y[n] - +

e[n]

Ieire Intrare Sistem necunoscut b) Ieire Intrare

Filtru adaptiv

y[n]

-
e[n]

d[n]

Z-D

Filtru adaptiv c)

y[n]

-
e[n]

d[n]

Semnal primar Intrare de referin Filtru adaptiv y[n] - + d[n]

e[n]

Ieire

d)
Fig. 3.4 Aplicaii ale filtrelor adaptive: a) identificare de sistem; b) filtrare invers; c) predicie; d) filtrarea zgomotului

114

CAPITOLUL 3: FILTRARE ADAPTIV

3.2 Algoritmi de filtrare adaptiv


Este important de subliniat nc de la nceput c o aplicaie de filtrare adaptiv nu admite o soluie unic. n fapt, avem la dispoziie un ntreg arsenal de tehnici diferite, fiecare avnd avantaje i dezavantaje specifice, iar alegerea uneia sau alteia dintre variantele posibile trebuie s ia n considerare criterii precum viteza de convergen, volumul de calcul i de memorie necesar, ori efectul apariiei erorilor specifice implementrii algoritmului folosind circuite care ofer precizie limitat. n cele ce urmeaz vom trece n revist cteva exemple de algoritmi adaptivi reprezentativi, anume algoritmul LMS (Least Mean-Squares), algoritmul RLS (Recurrent Least-Squares) i filtrul Kalman. Aceti algoritmi au fost elaborai n contextul utilizrii unor filtre liniare, ns cu modificri specifice se regsesc i n cazul filtrelor neliniare, n particular al reelelor neurale. Aspectele teoretice fundamentale sunt prezentate n binecunoscute lucrri de referin [4, 9], astfel nct ne vom rezuma la a introduce terminologia corespunztoare, a defini expresiile matematice proprii fiecrui algoritm i de a sublinia o serie de elemente utile n aplicaiile practice. 3.2.1 Algoritmul LMS Dup cum s-a prezentat n paragraful anterior, una dintre abordrile cele mai des utilizate n teoria filtrrii adaptive este cea bazat pe formularea unei astfel de aplicaii sub forma unei probleme de optimizare. n mod concret, se definete un criteriu de performan sub forma unei funcionale care asociaz fiecrui vector de coeficieni ai filtrului o valoare scalar care depinde i de proprietile statistice ale semnalelor de la intrarea i ieirea dorit a acestuia. Aspectul geometric al suprafeei multidimensionale corespunztoare funciei de eroare rezultate poate fi foarte complicat, ns n cazul particular al unui filtru discret liniar de tip FIR i al erorii ptratice medii aceasta se prezint ca o suprafa parabolic de form convex, avnd o valoare minim unic. innd cont de relaiile (3.9) i (3.11) expresia funciei de eroare se poate scrie sub forma:

J (w ) = w H Rw p H w w H p + d 2 = J min + (w w opt ) H R (w w opt )

(3.14)

3.2 Algoritmi de filtrare adaptiv unde Jmin este valoarea minim a erorii descris prin relaia (3.13).

115

Se observ imediat c vectorul de coeficieni corespunztor acestei valori minime este chiar setul optim definit de ecuaiile Wiener-Hopf! n principiu, rezolvarea acestui sistem de ecuaii s-ar putea efectua dintr-un singur foc printr-un calcul pur algebric indicat n ecuaia (3.9), ns n multe situaii practice apar dificulti datorate dimensiunilor mari ale matricilor implicate sau probleme de stabilitate ale metodelor numerice folosite n inversarea matricii de autocorelaie R. Determinarea valorilor extreme ale unei funcii de mai multe variabile poate fi asigurat printr-o palet larg de metode, expuse cu acuratee n textele referitoare la tehnicile de optimizare. Una dintre cele mai des folosite soluii o reprezint scderea dup gradient (gradient descent), care n esen se bazeaz pe modificarea succesiv a variabilelor pe direcia i n sens invers gradientului funciei supuse procesului de optimizare. n cazul particular al erorii ptratice medii expresia gradientului se poate scrie compact sub forma [4]:
J W J = = 2p + 2Rw wi

(3.15)

Modul de operare al algoritmului este descris prin relaia urmtoare i prezentat detaliat n Tabelul 3.1 (constanta pozitiv este denumit constant de adaptare):
1 w[n + 1] = w[n] W J = w[n] + ( p Rw[n]) 2

(3.16)

Analiza teoretic a algoritmului de tip scdere dup gradient permite evidenierea urmtoarelor aspecte [4, 9]: - stabilitatea algoritmului (convergena ctre valorile optime) este asigurat pentru o gam de valori ale constantei de adaptare cupins n intervalul 0 < < 2/max , unde max desemneaz valoarea proprie maxim a matricii de autocorelaie R. - viteza de convergen a componentelor vectorului w ctre valorile optime wopt poate fi apreciat cu ajutorul unor constante de timp cuprinse n intervalul:
1 1 ln(1 max ) ln(1 min ) (3.17)

116

CAPITOLUL 3: FILTRARE ADAPTIV

- evoluia n decursul procesului de convergen a erorii ptratice medii este descris de relaia:
M -1 k =0 2n

J [n] = J min +

k (1- k ) vk [0]

(3.18)

n care vectorul v[n] se definete prin relaia v[n] = Q H ( w opt w[n]) (matricea Q are drept coloane vectorii proprii ai matricii de autocorelaie R). Este uor de observat c relaia recursiv care exprim modul de operare al algoritmului include matricile R i p. n multe situaii practice, datorit imposibilitii de a caracteriza corect din punct de vedere statistic procesele aleatoare implicate, aceste mrimi nu sunt disponibile, astfel nct suntem nevoii s utilizm valori estimate ale acestora. Cea mai simpl metod de estimare const n nlocuirea valorilor exacte ale matricilor menionate anterior calculate prin aciunea operatorului de mediere E{.} pe un ansamblu de realizri individuale ale proceselor aleatoare considerate prin valorile lor instantanee. Procedeul st la baza formulrii algoritmului denumit Least Mean-Squares (LMS) i este prezentat n Tabelul 3.2. Tabelul 3.1: Algoritmul de tip scdere dup gradient (gradient descent)

Variabile i parametri:
Vectorul de coeficieni la iteraia n: Vectorul de intrare la iteraia n: Rspunsul dorit la iteraia n: Matricea de autocorelaie a intrrii: Vectorul de intercorelaie intrare-ieire: Gradientul funciei de eroare la iteraia n: Constanta de adaptare: w[n] = {w0[n] w1[n] w2[n] ...wM-1[n]}T u[n] = {u[n] u[n-1] u[n-M+1]}T d[n] R = E{u[n]uH[n]} p = E{u[n]d*[n]}

JW [n] = 2p + 2Rw[n]
01 w[0] (tipic = 0)

Iniializare:
Valoarea inial a coeficienilor:

Calcul iterativ: n = 1, 2, ...


Se adapteaz valorile coeficienilor: w[n+1] = w[n] + {p - Rw[n]}

3.2 Algoritmi de filtrare adaptiv Tabelul 3.2: Algoritmul Least-Mean Squares (LMS)

117

Variabile i parametri:
Vectorul de coeficieni la iteraia n: Vectorul de intrare la iteraia n: Rspunsul dorit la iteraia n: Rspunsul filtrului la iteraia n: Eroarea de estimare la iteraia n: Valoarea estimat a matricii de autocorelaie a intrrii: Valoarea estimat a vectorului de intercorelaie intrare-ieire dorit: Valoarea estimat a gradientului funciei de eroare la iteraia n: Constanta de adaptare: w[n] = {w0[n] w1[n] w2[n] ...wM-1[n]}T u[n] = {u[n] u[n-1] u[n-M+1]}T d[n] y[n] = wH[n]u[n] e[n] = d[n] y[n]

R[n] = u[n] u H [n]

p[n] = u[n]d*[n] JW [n] = 2u[n]d*[n] + 2u[n]u H [n]w[n]


01 w[0] (tipic = 0)

Iniializare:
Valoarea inial a coeficienilor:

Calcul iterativ: n = 1, 2, ...


Se adapteaz valorile coeficienilor: w[n+1] = w[n] + u[n]e*[n]

Avantajul principal al acestui algoritm const n simplitatea sa, ns sunt necesare o serie de observaii: - spre deosebire de algoritmul de scdere dup gradient, la care modificarea setului de coeficieni se face determinist, strict pe direcia gradientului funciei de eroare, n cazul algoritmului LMS apare un zgomot de gradient (datorat lucrului cu valorile estimate i nu cele exacte ale acestei mrimi), care imprim modificrilor un caracter aleator - nu ntotdeauna pe direcia gradientului! - dei n medie evoluia urmrete aceast direcie. - din acelai motiv, valorile finale ale setului de coeficieni ai filtrului nu se mai stabilizeaz la wopt (soluia ecuailor Wiener-Hopf), ci fluctueaz permanent n mod aleator n jurul acestora. Ca urmare, avem de-a face i cu o modificare a noiunii de convergen a algoritmului. Astfel, se consider urmtoarele 2 definiii:

118
Convergen n valoare medie:

CAPITOLUL 3: FILTRARE ADAPTIV


E{w[n]} w opt

(3.19)

Convergen n valoare ptratic medie:

J [n] J (), J () > J min (3.20)

Pentru a asigura convergena conform acestor definiii, constanta de adaptare trebuie s satisfac urmtoarele condiii [4]:
0 < < 2 (3.21)

i =1

max i <1 2 i

Se poate arta c relaiile anterioare conduc la formularea unei condiii uor de utilizat n practic, anume c valoarea constaneu de adaptare trebuie aleas invers proporional cu puterea semnalului aplicat la intrare [4]. - exist un pre care se pltete pentru simplificarea major datorat estimrii valorilor matricilor R i p: valoarea final a erorii ptratice medii, notat J () , va fi mai mare dect cea corespunztoare folosirii setului de coeficieni optim wopt:
J ( ) = J min 1
i =1 M

i 2 i

(3.22)

Parametrul denumit misadjustement exprim cantitativ aceast abatere (de regul, n valori procentuale): J () J min J min

A =

i 2 i M mediu M = i =1M i = i 2 i =1 2 1 i =1 2 i

(3.23)

Constanta de timp asociat procesului de convergen a algoritmului este:

1 2mediu

, unde mediu =

1 M

i =1

(3.24)

Au fost elaborate i o serie de variante la algoritmul LMS standard, menite s corecteze unele dintre dezavantajele acestuia, printre care viteza redus de

3.2 Algoritmi de filtrare adaptiv

119

convergen, apariia unor probleme de natur numeric la implementarea hard a algoritmului datorate preciziei finite de lucru (n acest caz se manifest efectul erorilor de cuantizare), zgomot de gradient apreciabil n cazul lucrului cu semnale de intrare cu gam dinamic mare (n acest situaie variaia valorilor coeficienilor filtrului de la o iteraie la alta este prea mare). n Tabelul 3.3 se prezint cteva dintre variantele utilizate des n aplicaii, iar mai jos se indic funcia MATLAB care implementeaz varianta standard a algoritmului. Tabelul 3.3: Variante ale algoritmului LMS LMS cu moment: LMS normalizat: w[n] = u[n]e*[n] + w[n-1]

w[n] = w[n+1] w[n] =

u[n]e*[n]
u[n]

LMS cu pierderi (leaky-LMS): LMS cu semn

w[n+1] = (1-)w[n] + u[n]e*[n] w[n] = u[n] sign{e[n]}

lms.m: Funcie MATLAB care implementeaz algoritmul LMS function [W, MSE] = lms(u, d, mu, K, M); % u - semnal de intrare % d - semnal de iesire dorit % mu - constanta de adaptare % K - numar iteratii % M - ordinul filtrului adaptiv % W - coeficientii filtrului adaptiv % MSE - eroarea patratica medie MSE = zeros(1,K); W = zeros(M,1); X = zeros(M,1); % alocare memorie pentru salvarea erorii experimentului curent % valori initiale ale coeficientilor filtrului % initializarea ferestrei de date aplicate la intrarea filtrului % bucla indexata de numarul de iteratii pentru un experiment % vector de intrare la iteratia curenta % iesirea filtrului la iteratia curenta % eroarea de estimare laiteratia curenta % actualizarea valorii coeficientilor % eroarea patratica instantanee

for k=1:K X = [u(k); X(1:M-1)]; y = W'*X; e = d(k)-y; W = W+2*mu*e*X; MSE(k)=e^2; end

120

CAPITOLUL 3: FILTRARE ADAPTIV

3.2.2 Algoritmul Recurrent Least-Squares (RLS)

Problema de filtrare liniar optimal poate fi abordat i dintr-o perspectiv complementar celei specifice filtrului Wiener, renunnd la punctul de vedere statistic, bazat pe considerarea unui ansamblu de realizri individuale ale unor procese aleatoare cu rol de intrare i ieire dorit a filtrului i nlocuindu-l cu o abordare temporal. n mod concret, aciunea operatorului statistic de mediere E{.} este nlocuit cu simpla mediere aritmetic a valorilor unor realizri particulare
unice ale proceselor aleatoare menionate anterior.

Ca i n paragrafele precedente vom considera n continuare un filtru discret cu rspuns finit la impuls de ordin M, avnd setul de coeficieni w = [w0 w1 wM-1]T, a crui ieire la un moment dat se poate calcula pe baza relaiei:
y[n] =
M 1 k =0

w *[k ] u[n - k ]

(3.25)

Funcia de cost utilizat pentru determinarea coeficienilor filtrului este dat de suma valorilor ptratice ale erorilor de estimare instantanee:
J (w ) =

n = n1

n2

e[n] , unde e[n] = d [n] - y[n]

(3.26)

Valorile n1 i n2 desemneaz limitele intervalului de timp pe care efectuez minimizarea. Urmnd un mod de calcul oarecum similar celui care conduce la formularea ecuaiilor Wiener-Hopf se poate ajunge la un sistem de ecuaii asemntor, cunoscut sub denumirea de ecuaii normale [4, 9], cu particularitatea c matricea de autocorelaie R corespunztoare intrrii, precum i vectorul de intercorelaie intrare-ieire p sunt nlocuite de variantele calculate prin mediere temporal, conform relaiilor urmtoare:
Funcia de autocorelaie temporal: Funcia de intercorelaie intrare-ieire dorit: Sistemul de ecuaii normale:
[t , k ] =

n=M

u[n - k ] u *[n - t ] , 0 t , k M 1
N

(3.27)

[-k ] = u[n - k ] d *[n] , 0 k M 1 (3.28)


i=M

w =

(3.29)

3.2 Algoritmi de filtrare adaptiv

121

n ultima relaie intervin urmtoarele mrimi:


Matricea de autocorelaie temporal: Vectorul de intercorelaie temporal:
[0, 0] [0,1] = [0, M 1]

[1, 0] [1,1] [1, M 1]

(3.30) [ M 1, M 1]

[ M 1, 0] [ M 1,1]

= { [0] [1]

[ M + 1]}T

(3.31)

Valorile optime ale setului de ponderi ale filtrului rezult sub forma:
w opt = 1

(3.32)

Rezolvarea ecuaiei matriciale de mai sus nu este, de regul, o chestiune simpl. n particular, merit observat faptul c matricea de autocorelaie temporal nu este n general ptratic, astfel nct pentru calculul matricii -1 trebuie s apelm la ceea ce se numete pseudoinvers [11]. Un instrument elegant i eficient pentru calculul inversei unei matrici cu dimensiuni oarecare este oferit de metoda Singular
Value Decomposition (SVD) [11]. O soluie alternativ este oferit de posibilitatea

de a calcula valorile optime ale setului de coeficieni w ntr-o manier recursiv, astfel nct la apariia fiecrei noi perechi de date intrare-ieire dorit s putem actualiza vechile rezultate. n acest scop, matricile care intervin n formularea setului de ecuaii normale se rescriu sub forma:
[n] = n -i u[i ] u H [i ] = [n -1] + u[n] u H [n]
i =1 n n

[n] = u[i ] d *[i ] = [n -1] + u[n] d *[n]


n -i i =1

(3.33)

unde parametrul 0 < 1 , denumit factor de uitare (forgetting factor), exprim proprietatea potrivit creia n evaluarea acestor matrici valorile cele mai recente au o pondere mai important dect cele vechi. Pasul urmtor l reprezint utilizarea unui rezultat algebric celebru denumit lema de inversiune a matricilor [4], care ofer posibilitatea de a calcula inversa matricii de autocorelaie temporal [n] pe baza unei relaii de recuren. Se ajunge astfel la formularea algoritmului adaptiv

122

CAPITOLUL 3: FILTRARE ADAPTIV

denumit Recursive Least-Squares (RLS), a crui expresie matematic este prezentat n Tabelul 3.4, iar n continuare funcia MATLAB care indic implementarea algoritmului. n relaiile din tabel semnalul [n] desemneaz eroarea de estimare corespunztoare utilizrii vechilor valori ale setului de coeficieni ai filtrului (anterioare etapei de actualizare de la momentul n, motiv pentru care aceast mrime este denumit eroare a priori), iar parametrul reprezint o valoare scalar pozitiv mic, utilizat n iniializarea matricii
P[n] = 1[n] . Algoritmul RLS asigur o vitez de convergen mult mai mare

dect algoritmul LMS, ns este mult mai laborios. n plus, dup cum se va arta n paragraful urmtor, acest algoritm este sensibil la aspectele de natur numeric datorate utilizrii unei rezoluii finite n implementarea hardware.
Tabelul 3.4 Algoritmul RLS

Variabile i parametri:
Vectorul de coeficieni la iteraia n: Vectorul de intrare la iteraia n: Rspunsul dorit la iteraia n: Eroarea de estimare a priori la iteraia n: Vectorul de ctig (gain) la iteraia n: Inversa matricii de autocorelaie temporal la iteraia n: w[n] = {w0[n] w1[n] w2[n]...wM-1[n]}T u[n] = {u[n] u[n-1] u[n-M+1]}T d[n] [n] = d[n] wH[n-1]u[n] k[n]

P[n] = 1[n]

Iniializare:
Valoarea iniial a matricii P: Valoarea inial a vectorului de coeficieni: P[0] = -1I w[0] (tipic = 0)

Calcul iterativ: n = 1, 2, ...


Se adapteaz valorile parametrilor de interes:
k[ n ] =

1P[n 1]u[n]
1 + 1u H [n]P[n 1]u[n]

[n] = d[n] WH[n-1]u[n] W[n] = W[n-1] + k[n]*[n] P[n] = -1P[n-1] - -1k[n]uH[n]P[n-1]

3.2 Algoritmi de filtrare adaptiv


rls.m: Funcie MATLAB care implementeaz algoritmul RLS function [W] = rls(u, d, lambda, delta, K, M); %u - semnal de intrare %d - semnal de iesire dorit % lambda, delta - constante din Tabelul 3.4 %K - numar iteratii %M - ordinul filtrului adaptiv %W - coeficientii filtrului adaptiv W = zeros(M, 1); % initializarea coeficientilor filtrului P = eye(d)/delta; % initalizarea matricii P X=zeros(M,1); % initializarea ferestrei de date aplicate la intrarea filtrului for k = 1:K X = [u(k); X(1:M-1)]; kappa = lambda + u'*P*u; k_gain = P*u / kappa; alpha = d(k) - W'*X; W = W + k_gain * alpha; Pp = k_gain * u' * P; P = (P - Pp) / lambda; end

123

3.2.3 Filtrul Kalman

Problema de filtrare liniar optimal a fost abordat pe parcursul paragrafelor anterioare din perspectiva teoriei filtrului Wiener, bazat pe minimizarea unei funcii de cost dependente de eroarea de estimare, calculat la rndul ei pornind de la ecuaia care exprim legtura intrare-ieire a filtrului considerat. n plus, algoritmul RLS expus anterior a introdus principiul elegant al calculului iterativ al mrimilor de interes, cu avantaje majore asupra performanelor algoritmului. Un alt punct de vedere n soluionarea problemei studiate este oferit de aa-numitul filtru Kalman, care pstreaz ideea calculului recursiv, ns introduce descrierea sistemului adaptiv analizat prin ecuaii de stare. O asemenea abordare permite extinderea comod a teoriei la aplicaii cu intrri/ieiri multiple i, mai important, ofer cadrul de operare cu semnale reprezentnd manifestri ale unor procese aleatoare nestaionare. n cele ce urmeaz ne vom referi la varianta discret a acestui algoritm, cu meniunea c exist analize teoretice i ale variantei analogice, mai puin ntlnit n aplicaii. Astfel, s considerm vectorul notat x[n] ca reprezentnd un set de M

124

CAPITOLUL 3: FILTRARE ADAPTIV

parametri ai unui sistem dinamic liniar ce definesc starea sistemului la momentul de timp n. Sistemul furnizeaz un semnal de ieire accesibil msurtorii pentru un interval de timp cu durata de N eantioane i poate fi caracterizat prin ecuaiile [4]:
x[n + 1] = [ n + 1, n] x[n] + v1[ n] y[n] = C[n] x[n] + v 2 [n]

(3.34)

n care [n+1,n] desemneaz aa-numita matrice de tranziie a strilor, v1[n] este denumit zgomot de proces i este modelat ca un proces aleator de tip zgomot alb cu valoare medie nul i matrice de autocorelaie Q1[n], C[n] este o matrice de dimensiune NxM, iar v2[n] este zgomotul de msur, considerat de asemenea cu valoare medie nul i matrice de autocorelaie Q2[n]. Matricile [n+1,n] i C[n] se consider cunoscute, iar procesele aleatoare v1[n] i v2[n] sunt statistic independente. S presupunem acum c dispunem de o valoare prezis a vectorului de stare la un
[n] moment dat n, notat cu x , bazat pe totalitatea informaiei disponibile

naintea momentului n. n plus, se cunoate i matricea de covarian a erorii de

estimare corespunztoare momentului n (presupus cu valoare medie nul): P[n] = E{e[n] e[n] H } = E{(x[n] x[n] )(x[n] x[ n] ) H } (3.35)

Ideea de baz este de a mbunti valoarea prezis x[n] folosind informaia


suplimentar adus de valoarea msurat la momentul n, anume y[n]. Valoarea

[n] actualizat a strii estimate la momentul n, notat x , se alege sub forma unei
[n] combinaii liniare ntre valoarea anterioar x i eroarea de predicie la

momentul n: x[n] = x[n]- + G[n]( y[n] - C[n]x[n]- ) (3.36)

unde factorul G[n] este denumit ctig Kalman (Kalman gain) i se determin n aa fel nct valoarea estimat x[n] s fie optim conform unui criteriu statistic precizat. n literatur este folosit eroarea ptratic medie drept criteriu de apreciere a optimalitii soluiei i n acest caz se demonstreaz c valoarea optim a factorului G[n] se poate scrie sub forma:

3.2 Algoritmi de filtrare adaptiv


G[n] = [n + 1, n]P[n] C[n]H (C[n]P[n] C[n]H + Q 2 [n]) 1

125 (3.37)

Un element de dificultate n ecuaia anterioar este dat de necesitatea de a dispune de matricea de corelaie P[n] . Aceasta se calculeaz n mod recursiv sub forma unei ecuaii cu diferene de tip Ricatti:
P[n + 1] = [n + 1, n]P[n] H [n + 1, n] + Q1[ n]

(3.38)

n care matricea de corelaie P[n] este descris de ecuaia:


P[n] = P[n -1] [n, n + 1]G[n]C[ n]P[ n -1]

(3.39)

Relaiile anterioare se aplic iterativ, permind calcularea valorilor prezise ale mrimilor de interes la momentul (n+1) pe baza informaiilor disponibile pn la
momentul n inclusiv, dup cum se prezint n Tabelul 3.5. Singurii parametri

disponibili pentru a controla evoluia filtrului Kalman sunt valoarea iniial a matricii de covarian a erorii de estimare P[0] i matricile de autocorelaie Q1[n] i
Q2[n]. Alegerea unor valori mari ale acestora are efectul micorrii ctigului

Kalman, operaiune oarecum asemntoare micorrii constantei de adaptare din cazul algoritmilor de tip scdere dup gradient. Mecanismul de operare a filtrului Kalman poate fi reprezentat sugestiv prin schema-bloc din Fig. 3.5. Denumirea de filtru este oarecum nepotrivit n contextul evocat anterior, n realitate fiind vorba de un algoritm de calcul care urmrete minimizarea unei funcii de eroare i nu de interpretarea obinuit de sistem cu rspuns n frecven selectiv. Merit subliniat posibilitatea de a extinde acest algoritm i n cazul sistemelor neliniare, pe baza aa-numitului filtru Kalman
extins (EKF), prin liniarizarea ecuaiilor de stare n jurul punctului curent de
funcionare, nlocuind practic sistemul neliniar printr-unul liniar variabil n timp.

Fig. 3.5 Schema-bloc corespunztoare filtrului Kalman

126
Tabelul 3.5: Filtrul Kalman

CAPITOLUL 3: FILTRARE ADAPTIV

Variabile i parametri:
Vector de stare la iteraia n: Matrice de tranziie a strii de la momentul n la iteraia (n+1): Vector de valori msurate la iteraia n: Matrice corespunztoare ecuaiei de msur: Matrice de autocorelaie a zgomotului asociat procesului: Ctig Kalman la iteraia n: Eroare de predicie la iteraia n: Matrice de autocorelaie a zgomotului asociat ecuaiei de msur: x[n] [n+1,n] y[n] C[n] Q1[n] G[n] [n] Q2[n]

Iniializare:
Stare iniial: Valoare inial a matricii de autocorelaie a erorii de predicie: X[0] P[0]

Calcul iterativ: n = 1, 2, ...


Se adapteaz valorile parametrilor de interes:
G[n] = [n+1,n] P[n]-C[n]H * *(C[n] P[n]-C[n]H +Q 2 [n])-1

[n] = y[n] C[n] x[n]

x[n] = x[n] + G[n] [n]

P[n] = P[n-1]- - [n,n+1]G[n]C[n] P[n-1]P[n+1] = [n+1,n]P[n] H [n+1,n] + Q1[n]

3.3 Algoritmi adaptivi n domeniul frecven


Analiza algoritmului LMS prezentat n paragraful anterior a artat c valorile constantelor de timp asociate evoluiei parametrilor unui filtru adaptiv pe parcursul procesului de convergen variaz invers proporional cu valorile proprii ale matricii de autocorelaie a intrrii R. n consecin, pentru a obine o vitez mare de

3.3 Algoritmi adaptivi n domeniul frecven


kalman.m: Funcie MATLAB care implementeaz filtrul Kalman function [x_new, P]=kalman_w(x, d, Phi, C, x_0, P_0, Q1, Q2, numIter); % Semnificatia parametrilor de intrare este dat n Tabelul 3.5 % x_new: valoarea actualizata a vectorului de stare % P: valoarea actualizata a matricii de corelaie a erorii % MSE: erorea ptratic medie Phat_old=P_0; xhat_old=x_0; for i=1:numIter S=C*Phat_old*C'+Q2; g=Phi*Phat_old*C'*inv(S); xhat_new=xhat_old+g*(d(i)-C*xhat_old); P=Phat_old-Phi*g*C*Phat_old; Phat_new=Phi*P*Phi'+Q1; xhat_old=xhat_new; Phat_old=Phat_new; end x_new=xhat_old; P=Phat_old;

127

convergen este necesar ca valorile proprii s fie ct mai mari. Pe de alt parte, din considerente legate de stabilitatea algoritmului, valoarea proprie maxim limiteaz amplitudinea constantei de adaptare, care la rndul ei influeneaz performanele de vitez ale sistemului. Rezult din aceste observaii c este de dorit ca mprtierea acestor valori s fie ct mai mic, situaia ideal corespunznd condiiei ca toate valorile proprii s fie identice, caz n care matricea de autocorelaie R devine proporional cu o matrice unitate. Ca urmare, variabilele de intrare ale filtrului adaptiv devin necorelate (ortogonale) i au puteri identice. Una dintre posibilitile cele mai simple de a asigura atingerea acestui obiectiv l constituie aplicarea unei transformri liniare adecvate, iar candidatul cel mai la ndemn este Transformata Fourier Discret (DFT). Schema-bloc a unui filtru adaptiv bazat pe utilizarea unei transformate liniare cu efect de decorelare (ortogonalizare) a intrrilor se prezint n Fig. 3.6 [1]. Relaiile care descriu modul de operare al algoritmului LMS pentru un filtru care utilizeaz pentru ortogonalizare varianta DFT (denumit intuitiv filtru adaptiv n domeniul

128

CAPITOLUL 3: FILTRARE ADAPTIV

frecven) sunt prezentate n Tabelul 3.6, iar n continuare se indic funcia MATLAB corespunztoare utilizrii unui algoritm adaptiv de tip LMS cuplat cu
Transformata Cosinus Discret.

Observaii:

a) alegerea DFT este dictat n special de familiarizarea sporit a proiectanilor cu acest instrument de analiz i nu de optimalitatea rezultatului. n fapt, se poate arta c alte transformate liniare, precum
Transformata Cosinus Discret (DCT) sau Transformata Wavelet Discret

(DWT) asigur o reducere mai pronunat a gamei dinamice a valorilor proprii ale matricii de autocorelaie a intrrii pentru clase largi de procese aleatoare staionare [1]. b) asigurarea decorelrii printr-una dintre transformatele enumerate anterior este independent de natura particular a semnalului prelucrat.

x[n]

Z-1

Z-1

...

Z-1

Transformare unitar

w0

w1
G

...

wM-1

y[n]

LMS

+
d[n]

Fig. 3.6 Schema-bloc a unui filtru adaptiv n domeniul frecven

3.3 Algoritmi adaptivi n domeniul frecven Tabelul 3.6: Algoritmul LMS n domeniul frecven

129

Variabile i parametri:
Vectorul de coeficieni la iteraia n: Vectorul de intrare la iteraia n: Transformata FFT a intrrii W[n] = { w0[n] w1[n] w2[n] ...wM-1[n] }T u[n] = {u[n] u[n-1] u[n-M+1] }T

U[k,n] =

M 1 n=0

u[n] e

2 nk M

, k = 0...M-1

Normalizarea puterii*: Eroarea de estimare:

U norm [k,n] =

U[k,n] , k = 0...M-1 P[k,n]

e[k] = d[k] y[k]

Calcul iterativ: k = 1, 2, ...


Adaptarea coeficienilor: W[k+1] = W[k] + Unorm [k]e*[k]

* Valorile individuale ale puterii pe fiecare component n parte se estimeaz pe baza relaiei: P[k , n] = P[k , n 1] + (1 )u 2 [k , n] [1].
O explicaie intuitiv a motivului pentru care DFT reuete s asigure decorelarea informaiilor aplicate la intrare se poate obine fcnd apel la interpretarea modului de operare al acestei transformate din perspectiva rspunsului n frecven al filtrelor liniare. Astfel, considernd un semnal discret x[n] avnd un numr finit de eantioane N, formula care definete DFT este:
2 nk N

X[k ] = x[n] e
n =1

-j

, k = 1 N

(3.40)

Un punct de vedere interesant este cel potrivit cruia oricare dintre eantioanele X[k] se obine ca rezultat al produsului de convoluie dintre semnalul x[n] i un semnal de forma h k [n] = e
j 2kn N

, cu indicele k fixat la una dintre valorile cuprinse

ntre 1 i N. n aceste condiii semnalul hk[n] poate fi interpretat ca funcia pondere a unui filtru discret cu rspuns finit la impuls (FIR), avnd rspunsul n frecven: H k ( ) = hk [n] e j n
n =1 N

(3.41)

130

CAPITOLUL 3: FILTRARE ADAPTIV

dct_lms.m: Funcie MATLAB care implementeaz algoritmul DCT_LMS


function [W, MSE] = dct_lms(u, d, mu, alpha, K, M); %u - semnal de intrare %d - semnal de iesire dorit % mu - constanta de adaptare % alpha - constanta pentru estimarea puterii %K - numar iteratii %M - ordinul filtrului adaptiv %W - coeficientii filtrului adaptiv % MSE - eroarea patratica medie MSE=zeros(1,K); % alocare memorie pentru salvarea erorii experimentului curent W=zeros(M,1); % valori initiale ale coeficientilor filtrului X=zeros(M,1); TW=zeros(M,1); sigma2=zeros(M,1); % Matricea asociat transformatei DCT for j=1:M T(1,j)=1/sqrt(M); for i=2:M T(i,j)=sqrt(2/M)*cos(pi*(i-1)*(2*j-1)/2/M); end end for k=1:K X=[u(k);X(1:N)]; S=T*X; % transformata DCT aplicat intrrii y=TW'*S; % ieirea (transformat) a filtrului sigma2=(1-alpha)*sigma2+alpha*S.*S; % estimarea puterii intrrii (transformate) isigma2=1./(sigma2+gamma); % inversa puterii estimate e=d(k)-y; % eroare de estimare TW=TW+2*mu*isigma2.*(e*S); % actualizarea setului de coeficieni MSE(k)=e^2; % eroarea ptratic end

n Fig. 3.7 este reprezentat grafic modulul acestei funcii, care corespunde unui filtru trece-band avnd frecvena central 2k/N. Rezult de aici c obinerea tuturor celor N eantioane care definesc DFT presupune de fapt trecerea semnalului de intrare printr-un ansamblu de filtre trece-band, ale cror frecvene centrale sunt rspndite echidistant pe intervalul [0, 2]. Interpretarea acestei observaii n contextul discuiei anterioare referitoare la decorelarea unui filtru adaptiv este imediat: dac filtrele trece-band ar fi fost ideale (adic ar fi avut rspunsuri n

3.3 Algoritmi adaptivi n domeniul frecven

131

frecven sub forma unor ferestre dreptunghiulare care nu se suprapun) atunci informaiile regsite la ieirea lor ar fi fost necorelate (intuitiv, n-ar fi avut legtur unele cu altele, extrgnd caracteristici distincte din semnalul comun de intrare). Cum ns rspunsurile n frecven ale fiecruia dintre filtre ocup n realitate ntreaga band de frecven [0, 2], suprapunndu-se parial, rezult c n realitate toate filtrele vor extrage caracteristici comune ale intrrii, diferit fiind numai ponderea n care diversele caracteristici se regsesc la ieirea fiecrui filtru. O explicaie la fel de intuitiv se poate da i dintr-o perspectiv geometric. Pentru aceasta, reamintim mai nti c funcia de cost de tip eroare ptratic medie asociat unui filtru liniar adaptiv definete o hipersuprafa cu aspect elipsoid n sistemul de coordonate format de setul de coeficieni ai filtrului, ca n Fig. 3.8. innd cont de observaia potrivit creia o matrice Q format din coloane ortogonale i norm Euclidian comun egal cu 1 cum este cazul matricii corespunztoare DFT obinute prin reunirea vectorilor hk[n] definii anterior este unitar (n sensul c Q-1 = QH) i de proprietatea c o transformare unitar permite rotaia obiectului asupra cruia acioneaz fr s i modifice forma, rezult c aplicarea DFT conduce la situaia reprezentat n Fig. 3.8 pentru cazul simplu al unui filtru cu numai 2 coeficieni, adic axele principale ale elipsei se apropie de axele de coordonate [1]. n acelai timp, devine evident i rolul etapei de normalizare a puterilor pe fiecare component a DFT, anume tendina de transformare a suprafeei cu aspect elipsoid ntr-una sferic (din punct de vedere matematic, efectul este de egalizare a valorilor proprii ale matricii de autocorelaie a semnalului obinut n urma aplicrii DFT). Este important de subliniat c o analiz riguroas a eficienei utilizrii transformatelor ortogonale asupra vitezei de convergen a filtrelor adaptive liniare depinde de clasa semnalelor de intrare considerate. Un exemplu n acest sens este prezentat n [1] pentru aa-numitele procese aleatoare de tip Markov de ordinul I (obinute prin aplicarea unui semnal de tip zgomot alb la intrarea unui filtru trecejos de ordinul I), care indic reducerea semnificativ a mprtierii valorilor proprii ale matricii de autocorelaie a intrrii folosind variantele DFT i DCT. Utilizarea Transformatei Wavelet Discrete (DWT) este abordat n [5].

132

CAPITOLUL 3: FILTRARE ADAPTIV

Fig. 3.7 Rspunsul n frecven al unui filtru trece-band corespunztor FFT

Fig. 3.8 Efectul transformrii unitare i normalizrii asupra funciei de eroare

3.4 Discuie asupra algoritmilor adaptivi


Exist o serie de aspecte att de ordin teoretic ct i practic care merit discutate n contextul utilizrii algoritmilor adaptivi. Acestea vizeaz condiii, constrngeri, ipoteze i restricii care influeneaz n mod nemijlocit comportarea sistemelor bazate pe folosirea acestor instrumente de procesare a semnalelor i fixeaz cadrul adecvat funcionrii corecte a aplicaiilor avute n vedere. n cele ce urmeaz vom trece n revist o parte dintre aceste elemente, cu accent pe aspectele specifice algoritmilor LMS i RLS descrii n paragraful anterior, referitoare n special la performanele acestora i la implementarea hardware folosind procesoare numerice de semnal.

3.4 Discuie asupra algoritmilor adaptivi Convergena algoritmului LMS

133

Utilizarea unor mrimi estimate n locul valorilor exacte ale parametrilor statistici implicai n formularea algoritmului de tip scdere dup gradient are numeroase efecte asupra comportrii algoritmului LMS, n particular asupra convergenei acestuia. Justificarea teoretic riguroas a convergenei se face, de regul, n condiiile aa-numitei teorii a independenei (statistice), care se bazeaz pe urmtoarele ipoteze simplificatoare [4]: - ferestrele de timp succesive aplicate la intrarea filtrului, adic vectorii u[1],

u[2], sunt considerai statistic independeni


- la momentul n, vectorul de intrare u[n] este statistic independent fa de toate valorile anterioare ale semnalului dorit d[1], d[2], , d[n-1] - la momentul n, semnalul dorit d[n] este independent statistic fa de toate valorile sale anterioare d[1], d[2], , d[n-1] - la orice moment de timp, semnalul de intrare u[n] i cel dorit d[n] respect o distribuie normal (gaussian). Este interesant de menionat faptul c, n practic, aceste condiii nu sunt ntotdeauna respectate cu exactitate (sau valabilitatea lor este dificil de verificat) i totui algoritmul LMS funcioneaz cu bune rezultate. n particular, prima ipotez simplificatoare este rareori valabil, deoarece 2 ferestre de timp succesive vor avea n comun majoritatea eantioanelor (dac ns semnalele discrete aplicate la intrare nu reprezint serii de timp, ci secvene spaiale de exemplu, ca n cazul antenelor adaptive atunci condiia este mai uor de ndeplinit). Exist posibilitatea de a analiza convergena algoritmului LMS i fr a face apel la constrngerile anterioare, n condiiile n care constanta de adaptare are valori mici [4]. Un alt efect al lucrului cu valori estimate se manifest n modalitatea de calcul a curbei care desemneaz evoluia n timp a erorii ptratice medii Jw(n) (aa-numita curb de nvare). n cazul algoritmului de tip scdere dup gradient expresia acestei mrimi este indicat n relaia (3.14), n care intervine o operaie de mediere prin intermediul aciunii operatorului statistic E{}. Pe de alt parte, n cazul algoritmului LMS intervine zgomotul de gradient, astfel nct modificarea valorilor coeficienilor filtrului nu se face ntotdeauna strict n sensul descreterii erorii.

134

CAPITOLUL 3: FILTRARE ADAPTIV

Acest aspect impune ca, n practic, s fie necesare experimente repetate folosind aceeai valoare a constantei de adaptare i pornind din aceleai valori iniiale ale coeficienilor filtrului, iar datele de intrare i de ieire dorit s fie extrase ca realizri individuale ale unor acelorai procese aleatoare. Se obine astfel un

ansamblu de curbe de nvare zgomotoase, care prin mediere aritmetic vor


conduce la o curb care, la limit, va corespunde cu evoluia funciei J[n] din relaia (3.18). Aceast concluzie este valabil ns doar dac valoarea constantei de adaptare utilizate este suficient de mic, n caz contrar apar diferene ntre cele 2 funcii de eroare [6]. Efectul rezoluiei finite Studiul algoritmilor adaptivi, n particular analiza convergenei acestora, se face de regul n condiiile n care valorile mrimilor implicate (semnale de intrare i de ieire, coeficieni ai filtrului, rezultate intermediare) sunt considerate ca fiind numere reale, altfel spus precizia de lucru este considerat teoretic infinit. n practic ns, atunci cnd astfel de tehnici de prelucrare a semnalelor urmeaz a fi implementate folosind procesoare numerice de semnal (sau, dup caz, microprocesoare de uz general) suntem nevoii s folosim o rezoluie finit, cu alte cuvinte mrimile de interes vor fi reprezentate prin cuvinte binare avnd un numr finit de bii. Ca urmare, apar binecunoscutele erori de cuantizare, a cror identificare, modelare i tratare corect vor avea efecte decisive asupra funcionrii previzibile a algoritmului. Exist dou surse ale acestor erori: a) procesul de conversie analog-numeric a semnalelor prelucrate, n care aspectele eseniale vizeaz caracterul uniform sau neuniform al pasului de cuantizare, codul binar utilizat n reprezentarea datelor, precum i nivelul zgomotului de cuantizare generat; b) procesul de trunchiere/rotunjire a rezultatelor calculelor aritmetice, care conduce la erori ale cror proprieti statistice sunt diferite de cele specifice conversiei analog-numerice (de exemplu, valoarea medie a erorilor de trunchiere/rotunjire poate fi nenul). n cazurile cele mai neplcute astfel de erori se pot acumula progresiv, conducnd n final la saturarea valorilor mrimilor de interes. Aceast situaie corespunde unei instabiliti numerice a algoritmului considerat i, foarte important, nu poate fi evitat prin creterea suplimentar a

3.4 Discuie asupra algoritmilor adaptivi

135

rezoluiei folosite. Pentru a minimiza efectele acestor erori, procesoarele de semnal moderne includ regitri de lucru (n care se stocheaz rezultatele intermediare) de lungime mult mai mare dect rezoluia utilizat n reprezentarea rezultatelor finale (biii suplimentari se numesc bii de gard). Pe de alt parte, performanele unui algoritm numeric stabil vor fi evident influenate de dimensiunea cuvintelor binare, iar parametrul denumit acuratee numeric indic tocmai care este rezoluia necesar pentru ca dinamica i parametrii caracteristici ai algoritmului s se plaseze suficient de aproape de cei ai versiunii necuantizate. Din acest punct de vedere sunt cunoscute soluii constructive (de exemplu, arhitecturile de tip latice) sau de sistem (algoritmul leaky-LMS) care ofer robustee sporit n raport cu apariia acestor erori. n final acestor consideraii, s menionm c procesul de cuantizare este n esen un fenomen neliniar i, ca urmare, analiza teoretic a convergenei, stabilitii i dinamicii acestuia este mult mai dificil dect n cazul versiunii liniare ideale. n cazul algoritmului LMS, se demonstreaz c setul de coeficieni ai filtrului reprezint parametrii cei mai sensibili la apariia erorilor de cuantizare [4]. Se poate calcula o mrime de gen misdjustment care msoar amplitudinea perturbaiei introduse prin considerarea valorilor cuantizate ale coeficienilor n raport cu cele exacte, a crei mrime, ca i n cazul altor caracteristici, va depinde att de constanta de adaptare ct i de valorile proprii ale matricii de autocorelaie a intrrii. Una dintre cele mai des utilizate soluii de stabilizare a comportrii acestui algoritm o reprezint varianta leaky-LMS, care urmrete minimizarea simultan a erorii de estimare dar i a amplitidinii coeficienilor filtrului. Funcia de cost folosit este n acest caz de forma: J [n] = e 2 [n] + w[n]
2

(3.42)

unde este un parametru pozitiv, iar minimizarea acesteia conduce la formularea urmtoarei expresii pentru modalitatea de actualizare a coeficienilor: w[n + 1] = (1 ) w[n] + e[ n]u[n] (3.43)

Excepie fcnd de factorul care pondereaz primul termen, relaia anterioar este identic practic cu versiunea standard. Se poate arta c includerea acestui factor

136

CAPITOLUL 3: FILTRARE ADAPTIV

este echivalent cu introducerea, peste semnalul de intrare original, a unui zgomot alb cu valoare medie nul i dispersie , denumit dither [4]. Exist 2 tipuri de erori care pot fi ntlnite n cazul implementrii hardware a algoritmului LMS [4, 9]: a) fenomenul denumit stalling apare atunci cnd termenul de corecie a setului de coeficieni ai filtrului calculat innd cont de cuantizare! are amplitudine prea mic (mai mic dect cel mai puin semnificativ bit LSB), adic

e[n]u[n-i] LSB . Implicaia acestei observaii este imediat: valoarea constantei


de adaptare nu poate fi aleas orict de mic, dei acest lucru ar fi fost de dorit din perspectiva minimizrii zgomotului de gradient i a apropierii dinamicii de cea a algoritmului de tip scdere dup gradient. b) alunecarea parametrilor (parameter drift) se refer la posbilitatea ca, n anumite situaii, valorile coefiecienilor filtrului s tind s cresc orict de mult (n practic valorile lor se satureaz la nivelele maxime posibil de reprezentat folosind rezoluia aleas), dei semnalele de intrare i eroarea de estimare rmn mrginite. Fr a intra n amnunte, s menionm totui c acest fenomen nedorit este cauzat de utilizarea drept intrri a unor clase de semnale particulare, iar constanta de timp specific manifestrii acestor erori este extrem de mare, astfel nct detectarea lor prin simulri tipice este greu de realizat (numrul de iteraii necesar depete cu mult valorile uzuale). n cazul algoritmului RLS (ca, de altfel, i n cazul filtrului Kalman) se manifest o instabilitate numeric generat de faptul c inversa matricii de autocorelaie a erorii de estimare, notat P[n] n Tabelul 3.4 care trebuie s fie o matrice pozitiv definit! este calculat prin diferena a 2 matrici care nu sunt neaprat pozitiv definite (conform ultimei relaii din tabel). O soluie care pstreaz nealterat caracterul pozitiv-definit al matricii P[n] este indicat n [12], n care se calculeaz efectiv numai valorile matricii situate deasupra diagonalei principale, iar restul se completeaz prin simetrie. De asemenea, fenomenul de stalling amintit anterior poate apare i n cazul algoritmului RLS, mai ales dac factorul de uitare folosit n actualizarea matricii P[n] este apropiat de valoarea 1. Soluia practic o

3.4 Discuie asupra algoritmilor adaptivi

137

reprezint calculul valorilor acestei matrici folosind un registru de acumulare cu o lungime mare, adic avnd un numr suficient de bii de gard. Filtre adaptive de tip IIR Exist aplicaii practice care necesit utilizarea unor filtre FIR de ordin foarte mare. ntrzierea mare introdus, ca i creterea volumului de calcul sugereaz posibilitatea folosirii ca alternativ a unui filtru adaptiv de tip IIR. Analiza teoretic a unor algoritm adaptivi aplicai unor astfel de filtre a fost fcut n literatur n special n cazul aplicaiilor de tip identificare de sistem [10]. S-au utilizat cu precdere modele statistice de tip ARMA (autoregresiv cu medie alunectoare), la care ieirea filtrului este descris de o relaie de forma:
y[n] = - a[k ] y[n - i ] +
i =1 N M

b[ j ]u[n - j ]
j =0

(3.44)

unde a[k] i b[j] sunt coeficieni numere reale. Au fost formulate 2 metode de adaptare a valorilor acestor coeficieni [10]: - metoda output-error aplic o procedur de tip scdere dup gradient asupra unei funcii de cost de tip eroare ptratic medie. Dezavantajele acestei soluii sunt legate pe de o parte de instabilitatea potenial (nu putem garanta c, n decursul procesului de adaptare, polii filtrului vor rmne ntotdeauna n domeniul de stabilitate, astfel nct sunt necesare msuri speciale de garantare a stabilitii), iar pe de alt parte de faptul c funcia de cost nu mai prezint o valoare minim unic, aa cum se ntmpla n cazul filtrelor FIR, ci va avea o multitudine de valori minime locale, astfel nct iniializarea coeficienilor va avea o importan hotrtoare n fixarea performanelor acestuia. - metoda equation-error elimin acest ultim neajuns, nlocuind n membrul drept al ecuaiei anterioare valorile propriu-zise ale ieirii filtrului cu valorile ntrziate ale semnalului dorit:
y[n] = a[k ] y[n - i ] +
i =1 N

b[ j ] d [n - j ]
j =0

(3.45)

n acest fel ns filtrul obinut nu mai este identic cu cel iniial, motiv pentru care ecuaia anterioar, nsoit de un algoritm de tip scdere dup gradient pentru

138

CAPITOLUL 3: FILTRARE ADAPTIV

determinarea coeficienilor, este folosit n special n faza de nceput a procesului de adaptare, dup care se revine practic la o funcionare de tip output-error. O soluie superioar este furnizat de o clas de filtre care mprumut caracteristicile optime ale ambelor tipuri de filtre discrete. Acestea respect n continuare o arhitectur de tip FIR, ns nlocuiesc aciunea operatorului clasic de ntrziere prin operatori particulari, corespunztori unor filtre IIR. Un exemplu n acest sens l reprezint filtrele de tip Laguerre [9], a cror arhitectur se prezint n Fig. 3.9. Funciile de transfer implicate sunt descrise prin relaiile: L( z , ) = 1 2 z 1 1 2 ; L0 ( z , ) = 1 z 1 1 z 1 (3.46)

Se observ astfel c operatorul de ntrziere z-1 este nlocuit printr-un filtru de tip trece-tot de ordinul I (excepie face funcia de transfer L0(z, ), care corespunde unui filtru trece-jos), al crui unic pol este plasat n domeniul de stabilitate dac este ndeplinit condiia <1 . Un alt caz particular l reprezint aa-numitele filtre gamma [8], la care operatorul de ntrziere este nlocuit prin funcia de transfer: ( z ) = z (1 )

(3.47)

stabilitatea fiind asigurat pentru domeniul de valori 0 < < 2 .

x[n]

L0(z, )

L(z, )

...

L(z, )

Fig. 3.9 Filtru de tip Laguerre

Analiza comparativ LMS-RLS Dei nu au fost prezentate demonstraii riguroase ale convergenei celor 2 exemple importante de algoritmi adaptivi descrii n cuprinsul acestui paragraf, merit s menionm totui o serie de concluzii raportate n literatur, cu implicaii semnificative n utilizarea practic a acestora:

3.4 Discuie asupra algoritmilor adaptivi

139

- evoluia n decursul procesului de adaptare a erorii (ptratice) de estimare este descris de regul prin aa-numita curb de nvare (learning curve), care se traseaz separat pentru fiecare experiment n parte, urmnd ca prin mediere aritmetic s se obin o caracteristic apropiat de valoarea teoretic a erorii ptratice medii (experimentele individuale au n comun acelai set de valori iniiale ale coeficienilor filtrului adaptiv, precum i caracteristicile statistice ale semnalelor de intrare i ieire dorit). Viteza de convergen a algoritmului RLS este mult mai mare dect a algoritmului LMS, tipic cu un ordin de mrime, ns volumul de calcul necesar pentru efectuarea unei singure iteraii este de asemenea mult sporit. - teoretic, algoritmul RLS poate converge ctre soluiile optime corespunztoare rezolvrii setului de ecuaii normale (3.32), cu alte cuvinte parametrul misadjustment se poate anula. - definiia noiunii de convergen n cazul ambilor algoritmi face distincia ntre convergena n valoare medie i cea n valoare ptratic medie. Spre deosebire de LMS, n cazul RLS aceste definiii nu sunt influenate de mprtierea valorilor proprii ale matricii de autocorelaie (temporal) a intrrii. - exist numeroase aplicaii practice importante n care un filtru adaptiv evolueaz ntr-un mediu nestaionar, cnd proprietile statistice ale semnalelor de intrare i de ieire dorit variaz n timp. n aceste condiii, algoritmului utilizat i se cere nu numai s asigure convergena coeficienilor filtrului ctre valorile optime, dar s fie capabil i s urmresc modificarea permanent a poziiei acestor valori optime. Performanele de urmrire (tracking) sunt puternic dependente de natura aplicaiei considerate i de particularitile mrimilor statistice implicate. De multe ori algoritmul LMS are totui o evoluie mai robust dect RLS n astfel de situaii, astfel nct acest argument, alturi se simplitatea sporit, constituie motive pentru a-l prefera n aplicaii. Filtre adaptive neliniare n cuprinsul acestui paragraf ne-am ocupat numai de clasa algoritmilor adaptivi utilizai pentru determinarea valorilor optime ale coeficienilor unor filtre discrete liniare, capabili s rezolve probleme pentru care nu beneficiem de informaii exacte

140

CAPITOLUL 3: FILTRARE ADAPTIV

privind mrimile statistice de interes sau pentru care rezolvarea direct, de regul prin metode algebrice, presupune un volum mare de calcul i sensibilitate la aspectele de natur numeric. Exist ns i posibilitatea de a extinde aceste principii de operare i la sisteme cu carecter neliniar, exemplul cel mai elocvent fiind oferit de aa-numitele reele neurale artificiale. Dei nu exist o definiie general acceptat, majoritatea cercettorilor sunt de acord c acestea reprezint ansambluri de elemente de procesare simple, interconectate prin canale de comunicaii prin care se propag informaie numeric. Din perspectiv istoric, multe dintre ideile vehiculate n acest context sunt motivate de dorina de a construi sisteme capabile s rezolve cu succes sarcini uzuale pentru creierul uman precum nelegerea vorbirii sau recunoaterea formelor. n fapt, aceast abordare s-a dovedit util n special pentru probleme dificil de formalizat sub forma unui algoritm (adic a unei reete care s garanteze rezultatul), situaie care presupune o nelegere profund a aplicaiei considerate. Majoritatea reelelor neurale utilizeaz mecanisme pe baza crora intensitatea legturilor dintre neuroni sunt ajustate n funcie de calitatea rspunsului la stimuli externi. Ajungem astfel la principala trstur a acestor sisteme, anume capacitatea de a nva pe baz de exemple, folosind experiena anterioar pentru a-i mbunti permanent performanele, dar i de a oferi un anumit grad de generalizare, care se traduce printr-un rspuns adecvat la informaii de intrare care nu au fost folosite n faza de antrenare. Se pot identifica dou direcii distincte nspre care este canalizat atenia cercettorilor din domeniul reelelor neurale. Prima o reprezint identificarea unor modele plauzibile din punct de vedere biologic pentru neuronii elementari i structura de interconexiuni dintre acetia. Interesul este justificat de preocuprile pentru studierea creierelor naturale i de nivelul tehnologic actual, n sperana c ntr-o zi vom putea reproduce artificial performanele remarcabile ale acestora. Cea de-a doua, pe care am putea-o denumi "inginereasc", i propune un scop mai puin ambiios dar la fel de necesar, anume identificarea unor principii de procesare suficient de simple i robuste, dependente de un numr relativ restrns de parametri i care s poat fi folosite pentru rezolvarea unor probleme concrete.

3.4 Discuie asupra algoritmilor adaptivi

141

Gama aplicaiilor n care se utilizeaz reelele neurale artificiale este extrem de vast, extinzndu-se mult n afara preocuprilor legate de tehnic n general i de electronic n particular. n ultimii ani au fost raportate rezultate foarte ncurajatoare privind folosirea acestora n medicin, finane sau construcia de automobile i viitorul va demonstra cu siguran nmulirea i diversificarea acestor exemple. Aceast abordare s-a dovedit util i n cazul unor probleme "clasice", ca de exemplu conversia analognumeric sau calculul de transformate liniare. Reelele neurale artificiale sunt caracterizate de 3 elemente: modelul adoptat pentru elementul de procesare individual (neuronul), structura particular de interconexiuni (arhitectura) i mecanismul de ajustare a legturilor dintre neuroni (algoritmul de nvare). Aspectul neliniar intervine n mod nemijlocit n descrierea neuronului elementar, pentru care aa-numitul model aditiv, reprezentat n Fig. 3.10, este de departe cea mai frecvent opiune. Caracterul adaptiv se manifest prin aciunea algoritmului de nvare, pentru care au fost formulate numeroase clase de metode, unele dintre cele mai cunoscute fiind bazate, de exemplu, din nou pe mecanismul de scdere dup gradient.

Fig. 3.10 Modelul aditiv pentru neuronul elementar

Tipul de reea neural care se apropie cel mai mult de categoria filtrelor liniare analizate anterior l reprezint cele denumite Radial Basis Functions (RBF) [3], a cror arhitectur se prezint n Fig. 3.11.

142

CAPITOLUL 3: FILTRARE ADAPTIV

Fig. 3.11 Arhitectura de tip Radial Basis Functions

Relaia care descrie legtura intrare-ieire este formulat astfel: f ( X) = w0 + wii ( X Ci )


i

(3.48)

n care: ||.|| reprezint distana (n general, Euclidian) ntre doi vectori aparinnd unui spaiu multidimensional, i reprezint funcii neliniare alese dintr-un set de funcii tipice, vectorii Ci (avnd aceeai dimensiune cu cei de intrare) se numesc centri, iar wi sunt coeficieni scalari. Mecanismul de selectare a centrilor este ghidat de principiul ca numrul i poziiile acestora s ofere o aproximare ct mai fidel a densitii de repartiie a datelor de intrare. Odat alese aceti parametri, valorile setului de coeficieni wi rezult n urma aplicrii unui algoritm adaptiv din arsenalul celor specifici filtrelor liniare, de regul chiar algoritmul LMS. De altfel, n raport cu semnalele de la ieirea neuronilor avnd funciile de activare I, ne putem imagina o reea neural de tip RBF ca fiind un simplu filtru FIR, cu aceleeai avantaje privind viteza sporit de convergen i unicitatea soluiei finale (se poate arta c n cazul altor modele de reele neurale, neliniaritatea funciei de activare implic un aspect puternic neregulat al erorii ptratice medii, caracterizat de prezena a numeroase valori minime locale). O posibilitate de generalizare a arhitecturii o reprezint nlocuirea valorilor scalare ale setului de coeficieni wi prin filtre discrete, de regul de tip FIR.

3.5 Aplicaii ale filtrelor adaptive

143

3.5 Aplicaii ale filtrelor adaptive


n cele ce urmeaz prezentm o serie de exemple concrete de utilizare a algoritmilor adaptivi prezentai anterior n aplicaii de procesare de semnal, ilustrnd diferenele dintre performanele acestora i influena diverilor parametri specifici asupra vitezei de convergen, dinamicii i calitii soluiei finale obinute. Predicie liniar n acest tip de aplicaii rolul filtrului adaptiv este de a aproxima ct mai bine valoarea unui semnal la un moment dat pe baza unui numr finit de valori anterioare ale acestuia. Ideea fundamental care justific atingerea unui asemenea obiectiv const n supoziia c valorile succesive ale semnalului analizat respect n mod obiectiv o dependen funcional (n cazul cel mai simplu, liniar) dependent de un numr limitat de parametri, ale cror valori pot fi estimate folosind un algoritm adaptiv adecvat. n cazul liniar, modelele considerate se aleg de regul dintre urmtoarele 3 variante: autoregresiv (AR), cu medie alunectoare (MA), respectiv combinaia acestora (ARMA). Numrul de parametri care descriu modelul (i care definesc ordinul acestuia) se estimeaz folosind criterii statistice consacrate. n unele situaii informaia de ieire este dependent nu numai de valorile anterioare ale semnalului analizat, ci i ale altor semnale. n plus, natura acestei dependene poate varia n timp, sistemul adaptiv fiind forat s asigure pe de o parte convergena rapid a valorilor parametrilor i pe de alt parte urmrirea modificrilor aprute n procesul fizic analizat. Exemple practice de aplicaii sunt tehnica LPC (Linear Predictive Coding) utilizat n prelucrarea semnalelor vocale, metoda ADPCM (Adaptive Differential Pulse Code Modulation) folosit n transmisiuni de date, predicia seriilor financiare. Ca exemplu, s considerm un proces aleator de tip AR de ordinul 2, generat pe baza ecuaiei cu diferene: u[n] + u[n 1] + u[n 1] = v[n] (3.49)

unde v[n] este un zgomot alb cu valoare medie nul i dispersie v2, iar i reprezint paremetri scalari reali, alei astfel nct rdcinile ecuaiei caracteristice asociate acestei ecuaii cu diferene s fie plasate n interiorul cercului de raz

144

CAPITOLUL 3: FILTRARE ADAPTIV

unitate. n mod concret, s presupunem = = -0.5, v2 = 1. Urmrim s determinm valorile succesive ale semnalului u[n] (care va juca acum rolul semnalului dorit d[n] utilizat n formularea ecuaiilor Wiener-Hopf) folosind drept semnal de intrare vectorul bidimensional {u[n-1], u[n-2]}. n acest scop folosim algoritmul de tip scdere dup gradient, iar rezultatele experimentale se prezint n Fig. 3.12. Se pot trage urmtoarele concluzii: a) cu ct valoarea constantei de adaptare este mai mare cu att crete viteza de convergen (ctre o aceeai valoare minim a funciei de eroare!); b) cu ct mprtierea valorilor proprii ale matricii de autocorelaie a intrrii este mai mare cu att viteza de convergen scade; c) curbele de contur constant corespunztoare erorii ptratice medii sunt de forma unor elipse (n figur este trasat cte o elips pentru fiecare actualizare a setului de coeficieni ai filtrului). Dac se alege o valoare prea mare a constantei de adaptare atunci algoritmul nu mai converge. Egalizarea canalelor de transmisiuni de date Egalizarea canalelor de transmisiuni reprezint o aplicaie tipic de modelare invers (deconvoluie), conform schemei-bloc din Fig. 3.3c. Presupunnd ca sistemul necunoscut este liniar i are funcia de transfer P(z), filtrul adaptiv ar trebui sa realizeze n mod ideal funcia de transfer H ( z ) = 1
vedere practic trebuie s inem cont de urmatoarele aspecte: - sistemul ce urmeaz a fi modelat introduce de regul ntrzieri, care trebuie compensate decalnd n mod corespunztor semnalul dorit de la ieirea filtrului adaptiv. Pentru filtrele FIR cu faz liniar variabil se cunoate c aceast ntrziere este egal cu jumtate din ordinul filtrului. - ntotdeauna vor aprea zgomote suprapuse peste semnalele utile, acestea vor afecta n sens negativ determinarea modelului invers (rezultate satisfctoare se obin dac zgomotul este considerat alb, cu valoare medie nul). - riguros vorbind, un filtru FIR poate constitui modelul invers al unui sistem necunoscut doar dac acesta are numai poli, nu i zerouri (altfel spus, un filtru IIR nu poate fi modelat perfect folosind un filtru FIR de ordin finit). P( z ) . Din punct de

3.5 Aplicaii ale filtrelor adaptive

145

- semnalul de intrare trebuie s fie capabil s excite toate modurile (frecvenele naturale) corespunztoare funciei de transfer a sistemului modelat, n caz contrar unele moduri nu vor fi observabile i deci nu vor putea fi modelate. Din acest motiv se prefer aplicarea la intrarea sistemului modelat a unui semnal cu spectru bogat, de tip zgomot alb.
1.4

250

1.35

1.3

=0.01 =0.05 =0.75

200

=5 =10 =30 =50

1.25

150

MSE

1.15

MSE
100 50 0
0 10 20 30 40 50 60 70

1.2

1.1

1.05

0.95

10

20

30

40

50

60

70

80

90

100

Iteratii

Iteratii

a)
2

b)

w(2)

0 -2 -3 -2 -1 0 1 2 3

w(1)
2

w(2)

0 -2 -3 -2 -1 0 1 2 3

w(1)
2

w(2)

0 -2 -3 -2 -1 0 1 2 3

w(1)

c) Fig. 3.12 Predicie liniar: a) evoluia erorii ptratice medii n funcie de constanta de adaptare; b) evoluia erorii ptratice medii n funcie de mprtierea valorilor proprii ale matricii R (=max/min); c) curbe de contur constant ale erorii ptratice medii i evoluia setului de coeficieni ai filtrului adaptiv

146

CAPITOLUL 3: FILTRARE ADAPTIV

n mod concret, s presupunem un canal de transmisiuni avnd funcia pondere:

2 0.5* 1 + cos [n 2] , n =1, 2,3 h[n] = W 0 , n rest

(3.50)

la intrarea cruia se aplic o secven aleatoare binar bipolar, cu valoare medie nul i dispersie unitar. Parametrul W influeneaz gradul de distorsiune introdus de canal i, implicit, mprtierea valorilor proprii ale matricii de autocorelaie a semnalului de intrare n filtrul adaptiv. n plus, se consider c pe canal se suprapune i un nivel de zgomot v[n] cu valoare medie nul i dispersie v2 = 0.001. Filtrul adaptiv este de tip FIR, de ordin M=11. ntrzierea total introdus pe calea de propagare a semnalului este egal cu jumtate din suma ordinelor funciilor de transfer ale canalului i filtrului adaptiv, adic = 7 perioade de tact. Schema-bloc a aplicaiei se prezint n Fig. 3.13, iar algoritmul utilizat este varianta standard LMS. n Fig. 3.14a se prezint evoluia erorii ptratice medii n raport cu mprtierea valorilor proprii ale matricii de autocorelaie a intrrii R: se observ, ca i n exemplul de predicie analizat anterior care utiliza algoritmul de scdere dup gradient, c viteza de convergen scade odat cu creterea mprtierii. Efectul constantei de adaptare este ilustrat n Fig. 3.14b, de unde rezult din nou c odat cu creterea valorii acesteia crete i viteza de convergen, ns preul pltit se refer pe de o parte la creterea zgomotului de gradient, iar pe de alt parte la stabilizarea erorii ptratice medii n jurul unei valori mai mari.

Fig. 3.13 Schema-bloc a unei aplicaii de egalizare adaptiv

3.5 Aplicaii ale filtrelor adaptive

147

10

10

MSE

10

-1

W=3.5

10

-2

W=3.3 W=3.1 W=2.9

10

-3

50

100

150

200

250

300

350

400

450

500

Iteratii

a)
10
1

10

MSE

10

-1

eta = 0.0075

eta = 0.025
10
-2

eta = 0.075

10

-3

500

1000

1500

Iteratii

b) Fig. 3.14 Evoluia erorii ptratice medii: a) n raport cu mprtierea valorilor proprii ale matricii de autocorelaie a intrrii; b) n raport cu valoarea constantei de adaptare

148

Bibliografie
[1] Beaufays, F., Orthogonalizing adaptive algorithms: RLS, DFT/LMS, and DCT/LMS, in Adaptive Inverse Control, NJ: Prentice Hall, 1995 [2] Ciocoiu, I.B., Reele neurale artificiale, Iai: Cantes, 2001 [3] Haykin, S., Neural Networks - A Comprehensive Foundation, IEEE Press, 1994 [4] Haykin, S., Adaptive Filter Theory, 4th ed., New Jersey: Prentice-Hall, 2002 [5] Hosur, S., Tewfik, A.H., Wavelet Transform Domain Adaptive FIR Filtering, IEEE Trans. on Signal Processing, vol. 45, no. 3, pp. 617-629, 1997 [6] Nascimento, V.H., Sayed, A.H., On the learning mechanism of adaptive filters, IEEE Trans. on Signal Processing, vol. 48, no. 6., pp. 1609-1625, 2000 [7] Papoulis, A., Probability, Random Variables, and Stochastic Processes, New York: McGraw-Hill, 1984 [8] Principe, J.C., B. de Vries, P.G. de Oliveira, "The Gamma Filter-A New Class of Adaptive IIR Filters with Restricted Feedback", IEEE Trans. Sign. Process., vol. 41, 1993 [9] Sayed, A.H., Fundamentals of adaptive filtering, New Jersey: Wiley, 2003 [10] Shynk, J.J., "Adaptive IIR filtering", IEEE ASSP Mag., pp. 4-21, 1989 [11] Strang. G., Introduction to linear algebra, Wellesley: Cambridge Press, 1993 [12] Yang, B., A note on the error propagation analysis of recursive least squares algorithms, IEEE Trans. on Signal Processing, vol. 42, pp. 3523-3525, 1994

S-ar putea să vă placă și