Filtrare Adaptiva

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

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]:
n

E{X} = pi xi
i =1

E{X} =

(3.1)

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]:

[n] = E{u[n]}

Valoarea medie:

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

Funcia de autocorelaie:
Funcia de autocovarian:

(3.2)

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:

[ n] = , n

(3.5)

Funcia de autocorelaie:

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

(3.6)

Funcia de autocovarian:

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

(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

3.1

CAPITOLUL 3: FILTRARE ADAPTIV

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

105

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


- 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


2

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

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

i =1

(3.12)

i =1

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

Ieire

Sistem
necunoscut

d[n]
Intrare

Filtru adaptiv

y[n] - +

e[n]

a)
Z-D
Ieire
Intrare

Sistem
necunoscut

Filtru adaptiv

y[n]

d[n]

-
e[n]

b)
Ieire
Intrare

Z-D

Filtru adaptiv

y[n]

d[n]

-
e[n]

c)
Semnal primar
Intrare
de referin

Filtru adaptiv

y[n] - +

d[n]
Ieire

e[n]

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

115

unde Jmin este valoarea minim a erorii descris prin relaia (3.13).
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:

J [n] = J min +

M -1

2n

k (1- k ) vk [0]

(3.18)

k =0

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:

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]

Matricea de autocorelaie a intrrii:

R = E{u[n]uH[n]}

Vectorul de intercorelaie intrare-ieire:

p = E{u[n]d*[n]}

Gradientul funciei de eroare la iteraia n:


Constanta de adaptare:

JW [n] = 2p + 2Rw[n]
01

Iniializare:
Valoarea inial a coeficienilor:

w[0] (tipic = 0)

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


Se adapteaz valorile coeficienilor:

w[n+1] = w[n] + {p - Rw[n]}

3.2 Algoritmi de filtrare adaptiv

117

Tabelul 3.2: Algoritmul Least-Mean Squares (LMS)

Variabile i parametri:
Vectorul de coeficieni la iteraia n:
Vectorul de intrare la iteraia n:
Rspunsul dorit 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]

Rspunsul filtrului la iteraia n:

y[n] = wH[n]u[n]

Eroarea de estimare la iteraia n:

e[n] = d[n] y[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:

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


R

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

W
01

Iniializare:
Valoarea inial a coeficienilor:

w[0] (tipic = 0)

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

CAPITOLUL 3: FILTRARE ADAPTIV

Convergen n valoare medie:

E{w[n]} w opt

Convergen n valoare ptratic medie:

(3.19)

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

Pentru a asigura convergena conform acestor definiii, constanta de adaptare


trebuie s satisfac urmtoarele condiii [4]:
2

0 < <

max
i
<1
2 i

i =1

(3.21)

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
M

1
i =1

(3.22)

i
2 i

Parametrul denumit misadjustement exprim cantitativ aceast abatere (de regul,


n valori procentuale):

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

A =

J () J min
J min

(3.23)

Constanta de timp asociat procesului de convergen a algoritmului este:

1
2mediu

, unde mediu =

1
M

(3.24)

i =1

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):

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

LMS cu semn

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

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

% 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

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

w *[k ] u[n - k ]

(3.25)

k =0

Funcia de cost utilizat pentru determinarea coeficienilor filtrului este dat de


suma valorilor ptratice ale erorilor de estimare instantanee:
J (w ) =

n2

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

(3.26)

n = n1

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 ] =

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

(3.27)

n=M

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


i=M

w =

(3.29)

121

3.2 Algoritmi de filtrare adaptiv

n ultima relaie intervin urmtoarele mrimi:


[0, 0]
[0,1]
=
#

[0, M 1]

Matricea de
autocorelaie
temporal:
Vectorul de
intercorelaie
temporal:

[1, 0] "
[1,1] "

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

(3.30)

#
%
#

[1, M 1] " [ M 1, M 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] = n -i u[i ] u H [i ] = [n -1] + u[n] u H [n]


i =1
n

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

(3.33)

n -i

i =1

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:

w[n] = {w0[n] w1[n] w2[n]...wM-1[n]}T


u[n] = {u[n] u[n-1] u[n-M+1]}T

Rspunsul dorit la iteraia n:


Eroarea de estimare a priori la iteraia n:

d[n]
[n] = d[n] wH[n-1]u[n]

Vectorul de ctig (gain) la iteraia n:

k[n]

Inversa matricii de autocorelaie temporal


la iteraia n:

P[n] = 1[n]

Iniializare:
Valoarea iniial a matricii P:

P[0] = -1I

Valoarea inial a vectorului


de coeficieni:

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

123

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

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
moment dat n, notat cu x[n] , 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
actualizat a strii estimate la momentul n, notat x[n] , se alege sub forma unei

combinaii liniare ntre valoarea anterioar x[n] 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

CAPITOLUL 3: FILTRARE ADAPTIV

Tabelul 3.5: Filtrul Kalman

Variabile i parametri:
Vector de stare la iteraia n:

x[n]

Matrice de tranziie a strii de la


momentul n la iteraia (n+1):

[n+1,n]

Vector de valori msurate la


iteraia n:

y[n]

Matrice corespunztoare ecuaiei


de msur:

C[n]

Matrice de autocorelaie a
zgomotului asociat procesului:

Q1[n]

Ctig Kalman la iteraia n:

G[n]

Eroare de predicie la iteraia n:

[n]

Matrice de autocorelaie a zgomotului


asociat ecuaiei de msur:

Q2[n]

Iniializare:
Stare iniial:

X[0]

Valoare inial a matricii de


autocorelaie a erorii de predicie:

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

127

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;

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

wM-1

...

y[n]

LMS

+
d[n]

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

129

3.3 Algoritmi adaptivi n domeniul frecven


Tabelul 3.6: Algoritmul LMS n domeniul frecven

Variabile i parametri:
Vectorul de coeficieni 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

Vectorul de intrare la iteraia n:

U[k,n] =

Transformata FFT a intrrii

M 1

u[n] e

2 nk
M

, k = 0...M-1

n=0

U norm [k,n] =

Normalizarea puterii*:
Eroarea de estimare:

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:
N

X[k ] = x[n] e

-j

2 nk
N

, k = 1 N

(3.40)

n =1

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

, 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:
N

H k ( ) = hk [n] e j n
n =1

(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

133

Convergena algoritmului LMS


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:
[ n]
J [ n] = e 2 [ n] + w

(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:
N

y[n] = - a[k ] y[n - i ] +


i =1

b[ j ]u[n - j ]

(3.44)

j =0

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:
N

y[n] = a[k ] y[n - i ] +


i =1

b[ j ] d [n - j ]

(3.45)

j =0

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

;
L
(
z
,
)
=
0
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 ) =

(3.47)

z (1 )

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 )

(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

P( z )

. Din punct de

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).

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.
250

1.4

=0.01
=0.05
=0.75

1.35

1.3

=5
=10
=30
=50

200

1.25

MSE

MSE

150
1.2

1.15

100
1.1

1.05

50

0.95

0
0

10

20

30

40

50

60

70

10

20

30

40

50

Iteratii

Iteratii

a)

b)

60

70

80

90

100

w(2)

2
0
-2
-3

-2

-1

w(1)

w(2)

2
0
-2
-3

-2

-1

w(1)

w(2)

2
0
-2
-3

-2

-1

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:

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

MSE

10

-1

10

W=3.5

W=3.3

-2

10

W=3.1
W=2.9
-3

10

50

100

150

200

250

300

350

400

450

500

Iteratii

a)
1

10

MSE

10

eta = 0.0075

-1

10

eta = 0.025
-2

10

eta = 0.075

-3

10

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