Sunteți pe pagina 1din 7

Noi algoritmi de tip RLS cu convergent a variabil a

SINTEZA FAZEI UNICE / 2012


Contract nr. 7/5.08.2010, Cod TE-50
November 25, 2012
Algoritmii de tip RLS (recursive least-squares) au o aplicabilitate mai redus a comparativ cu algoritmii
LMS (least-mean-square), n special datorit a complexit at ii aritmetice ridicate si a potent ialelor probleme de
instabilitate numeric a. Cu toate acestea, viteza de convergent a este net superioar a algoritmilor de tip LMS.
Parametrul de adaptare din cadrul algoritmilor de tip RLS poart a denumirea de parametru de ponderare sau
factor de uitare (forgetting factor). Este un parametru pozitiv si subunitar, care inuent eaz a memoria
algoritmului. Utilizarea unei valori foarte apropiate de 1 este benec a pentru dezadaptarea algoritmului,
dar inuent eaz a negativ capacitatea sa de urm arire. Pentru a creste aceast a capacitate de urm arire, valoarea
parametrului de ponderare trebuie redus a, ceea ce conduce ns a la cresterea dezadapt arii. Aceasta a fost
motivat ia ce a stat la baza dezvolt arii algoritmilor de tip RLS cu convergent a variabil a (VFF - variable
forgetting factor). O prim a solut ie are la baz a algoritmii de tip Newton, ceea ce implic a o complexitate
aritmetic a foarte ridicat a. Mai recent a fost propus un algoritm de tip VFF-RLS ce determin a parametrul
de ponderare variabil ntr-o manier a recursiv a, prin minimizarea gradientului unei funct ii cost denit a pe
baza energiei erorii. Desi performant ele obt inute sunt superioare comparativ cu cele ale algoritmului clasic,
procedura de calcul a parametrul de ponderare r am ane destul de complex a.

In cadrul acestei etape de cercetare a proiectului, am dezvoltat o nou a familie de algoritmi adaptivi de
tip RLS cu convergent a variabil a, pe baza controlului parametrului de ponderare (factorului de uitare). S-au
elaborat expresii optimale pentru acest parametru, t in and cont de prezent a si nivelul zgomotului ce afecteaz a
semnalul de referint a al ltrului adaptiv. Prezentarea detaliat a a acestor rezultate, precum si extinderea
n cazul altor algoritmi au fost publicate n [1], [2], [3], [4].

In acest a sintez a, se vor prezenta succint
principalele contribut ii n contextul aplicat iei de compensare a ecoului acustic stereofonic pe baza modelului
WL (widely linear) [5].

In cadrul acestei aplicat i este necesar a identicarea unui sistem cu dou a intr ari si dou a iesiri (cu variabile
reale). Cele dou a semnale de intrare vor notate cu x
L
(n) si x
R
(n), iar semnalele de iesire cu d
L
(n) si
d
R
(n), unde n reprezint a indicele de timp. Prin urmare, obt inem:
d
L
(n) = y
L
(n) + v
L
(n), (1)
d
R
(n) = y
R
(n) + v
R
(n), (2)
1
unde y
L
(n) si y
R
(n) reprezint a semnalele de ecou, iar v
L
(n) si v
R
(n) sunt semnalele de la cap atul apropiat
(near-end). Semnalele de ecou pot exprimate ca:
y
L
(n) = h
T
t,LL
x
L
(n) +h
T
t,RL
x
R
(n), (3)
y
R
(n) = h
T
t,LR
x
L
(n) +h
T
t,RR
x
R
(n), (4)
unde h
t,LL
, h
t,RL
, h
t,LR
, h
t,RR
sunt r aspunsurile la impuls acustice,
T
este operat ia de transpunere si
x
L
(n) =
_
x
L
(n) x
L
(n 1) x
L
(n L + 1)

T
x
R
(n) =
_
x
R
(n) x
R
(n 1) x
R
(n L + 1)

T
sunt semnalele de difuzor. Pentru a compensa ecoul este necesar s a estim am cele patru r aspunsuri la impuls
h
t,LL
, h
t,RL
, h
t,LR
, h
t,RR
, din semnalele de microfon d
L
(n) si d
R
(n).

In [4] am propus o modicare a schemei clasice cu dou a intr ari si dou a iesiri, ca o un sistem cu o intrare
si o iesire, dar cu variabile complexe. Prin urmare, putem scrie:
d(n) = d
L
(n) + jd
R
(n) = y(n) + v(n), (5)
unde j =

1, y(n) = y
L
(n) + jy
R
(n) si v(n) = v
L
(n) + jv
R
(n). De asemenea, denim:
x(n) = x
L
(n) + jx
R
(n). (6)
Astfel rezult a semnalul de ecou (complex)
y(n) = h
H
t
x(n) +h
H
t
x

(n), (7)
unde
H
si

reprezint a operat ia hermitic a si respectiv de conjugare, iar
h
t
= h
t,1
+ jh
t,2
, (8)
h

t
= h

t,1
+ jh

t,2
, (9)
cu h
t,1
= (h
t,LL
+h
t,RR
) /2, h
t,2
= (h
t,RL
h
t,LR
) /2, h

t,1
= (h
t,LL
h
t,RR
) /2, si h

t,2
=
(h
t,RL
+h
t,LR
) /2.

In acest context, putem exprima (7) ca
y(n) =

h
H
t
x(n), (10)
unde

h
t
=
_
h
T
t
h
T
t

T
si x(n) =
_
x
T
(n) x
H
(n)

T
.

In consecint a, rezult a c a
d(n) =

h
H
t
x(n) + v(n). (11)
Se observ a c a avem acum un r aspuns la impuls complex, de lungime 2L,

h
t
, cu intrarea si iesirea
complexe, x(n) si d(n). Din (7) sau (10), se poate recunoaste modelul WL pentru variabile complexe. De
asemenea, aceast a abordare este n concordant a cu principiul dualit at ii.
Pentru a compensa ecoul trebuie estimat sistemul

h
t
. Not am cu

h(n) un ltru adaptiv si cu
e(n) = d(n)

h
H
(n 1) x(n) = d(n) y(n) (12)
2
semnalul de eroare la momentul de timp n. Vom redeni vectorul semnalului de eroare (de lungime 2L) ca
x(n) =
_

T
(n)
T
(n 1)
T
(n L + 1)

T
, (13)
unde (n) =
_
x(n) x

(n)

T
. Astfel obt inem

h
t
=
_
h
t,0
h

t,0
h
t,L1
h

t,L1

T
,

h(n) =
_
h
0
(n) h

0
(n) h
L1
(n) h

L1
(n)

T
,
unde h
t,l
, h

t,l
, h
l
(n) si h

l
(n), cu l = 0, 1, . . . , L 1, sunt elementele vectorilor h
t
, h

t
, h(n) si respectiv
h

(n). Aceste noi denit ii nu modic a expresiile semnalelor d(n) si e(n) din relat iile (11) si respectiv (12).

In acest context, funct ia cost n sens LS (least-squares) este denit a ca


J
_

h(n)
_
=
n

i=1

ni

d(i)

h
H
(n) x(i)

2
, (14)
unde (0 < 1) este factorul de uitare (parametrul de ponderare). Astfel, putem exprima (14) ca
J
_

h(n)
_
=
n

i=1

ni
|d(i)|
2

h
H
(n)p
xd
(n) p
H
xd
(n)

h(n) +

h
H
(n)R
x
(n)

h(n),
unde R
x
(n) =

n
i=1

ni
x(i) x
H
(i) si p
xd
(n) =

n
i=1

ni
x(i)d

(i). Minimizarea funct iei J


_

h(n)
_
n
raport cu

h(n) conduce la setul de ecuat ii normale:
R
x
(n)

h(n) = p
xd
(n). (15)
Presupun and c a R
x
(n) > 0 (matricea este pozitiv denit a), ltrul optimal n sens LS poate dedus ca

h(n) = R
1
x
(n)p
xd
(n). De asemenea, se poate evalua recursiv:
p
xd
(n) = p
xd
(n 1) + x(n)d

(n), (16)
R
x
(n) = R
x
(n 1) + x(n) x
H
(n). (17)
Pe baza identit at ii Woodbury aplicat a n (17), inversa matricei R
x
(n) se poate exprima
R
1
x
(n) =
1
R
1
x
(n 1)
1

k(n) x
H
(n)R
1
x
(n 1), (18)
unde

k(n) =
R
1
x
(n 1) x(n)
+ x
H
(n)R
1
x
(n 1) x(n)
(19)
este vectorul c astig Kalman. Pe baza (19) si t in and cont de (18), vectorul c astig Kalman se poate exprima
de asemenea ca

k(n) = R
1
x
(n) x(n). (20)
3
Astfel, solut ia pentru (15) rezult a ca

h(n) = R
1
x
(n)p
xd
(n 1) +R
1
x
(n) x(n)d

(n). (21)

Inlocuind (18) n primul termen al p art ii drepte din (21) si utiliz and (12), relat ia de reactualizare a algorit-
mului RLS rezult a ca

h(n) =

h(n 1) +

k(n)e

(n). (22)
Se poate observa c a acest algoritm poate interpretat ca un algoritm RLS cu dou a canale cu intr arile x(n)
si x

(n).
Algoritmul RLS prezentat anterior utilizeaz a o valoare constant a a factorului de uitare , ceea ce conduce
la un compromis ntre criteriile de performant a ale ltrului adaptiv. Pentru a dezvolta o variant a VFF a
acestui algoritm, se pleac a de la premisa c a semnalul de referint a d(n) din (11) cont ine ecoul complex y(n)
[a se vedea (10)] si semnalul de la cap atul apropiat (near-end), v(n).

In acest context, scopul ltrului adaptiv
nu este de a anula eroarea, ci de a recupera semnalul de la cap atul apropiat n eroarea ltrului adaptiv.
Dup a cum se poate observa, semnalul e(n) din (12) reprezint a eroarea a priori a ltrului, deoarece
este calculat a pe baza coecient ilor de la momentul de timp n 1.

In contextul modelului WL, eroarea a
posteriori (rezultat a pe baza ltrului adaptiv de la momentul de timp n) este denit a ca
(n) = d(n)

h
H
(n) x(n). (23)
Utiliz and (12) si (22) n (23), relat ia dintre erorile a posteriori si a priori rezult a ca
(n) = e(n)
_
1

k
H
(n) x(n)
_
. (24)
Fie u(n) = x
H
(n)R
1
x
(n1) x(n), care este o variabil a real a deoarece matricea R
1
x
(n1) este hermitic a.
Astfel, t in and cont de (19), relat ia (24) se poate rescrie ca
(n) = e(n)

+ u(n)
. (25)
Condit ia de recuperare a semnalului de la cap atul apropiat n eroarea ltrului adaptiv poate impus a n
termenii estimat ilor de putere astfel:
E
_
|(n)|
2
_
=
2
v
(n), (26)
unde
2
v
(n) = E
_
|v(n)|
2
_
este variant a semnalului v(n). Multiplic and (25) cu conjugatul ei, apoi aplic and
operatorul de mediere statistic a si presupun and c a semnalul de intrare si eroarea sunt necorelate (ceea ce
este adev arat n faza de convergent a), condit ia (26) devine

2
_

2
e
(n)
2
v
(n)

2
2
v
(n)
u
(n)
2
v
(n)
2
u
(n) = 0, (27)
unde
2
e
(n) = E
_
|e(n)|
2
_
si
2
u
(n) = E
_
u
2
(n)

sunt variant ele lui e(n) si respectiv u(n).



In continuare,
s a presupunem c a factorul de uitare este deterministic si dependent de timp. Astfel, rezolv and ecuat ia (27),
rezult a expresia pentru VFF:
(n) =

u
(n)
v
(n)

e
(n)
v
(n)
. (28)
4
Pentru a evalua (28) n practic a avem nevoie de estimat ii parametrilor
2
e
(n),
2
u
(n) si
2
v
(n). Deoarece
semnalele e(n) si u(n) sunt disponibile, estimat ii lor de putere pot evaluat i recursiv ca

2
e
(n) =
2
e
(n 1) + (1 ) |e(n)|
2
, (29)

2
u
(n) =
2
u
(n 1) + (1 )u
2
(n), (30)
unde = 1 1/(2KL), cu K 1; valorile init iale sunt
2
e
(0) = 0 si
2
u
(0) = 0.
Estimarea parametrului
2
v
(n) este mai dicil a. De exemplu, n cazul vorbirii simultane (double-talk),
semnalul de la cap atul apropiat este o combinat ie ntre zgomotul de fond si semnalul vocal.

In acest caz,
parametrul
2
v
(n) poate estimat plec and de la presupunerea c a ltrul adaptiv a convers deja, astfel nc at

2
v
(n) =


2
d
(n)
2
y
(n)

, (31)
unde
2
d
(n) si
2
y
(n) sunt estimat ii de putere a lui d(n) si respectiv y(n) [a se vedea (12)], calculat i similar
cu (29).

In acest moment, av and la dispozit ie tot i parametrii necesari n (28), se poate observa comportarea
global a a factorului de uitare variabil (n). Se observ a c a la numitorul relat iei (28) avem teoretic
e
(n)

v
(n). Cu toate acestea, deoarece se utilizeaz a estimat ii de putere, aceast a condit ie poate s a nu e adevarat a
n orice moment de timp; pentru a evita aceast a situat ie, se poate utiliza modulul numitorului.

In faza
de convergent a init ial a sau c and are loc o schimbare de sistem,
e
(n) este mult mai mare dec at
v
(n).
Prin urmare, numitorul relat iei (28) creste, astfel nc at (n) scade, oferind astfel o convergent a rapid a si
o capacitate de urm arire crescut a. Atunci c and algoritmul se a a n faza de convergent a,
e
(n)
v
(n).
Pentru a evita probleme de natur a numeric a n (28), propunem s a limit am valoarea lui (n) la o limit a
maxim a
max
(foarte apropiat a de 1). De asemenea, pentru a evita calcule suplimentare, putem impune ca
(n) =
max
atunci c and algoritmul se a a n faza de convergent a, prin vericarea condit iei

e
(n)
v
(n), (32)
unde 1 < 2. Astfel, atunci c and (32) este indeplinit a, valoarea factorului de uitare atinge valoarea
maxim a, conduc and astfel la o dezadaptare scazut a.

In consecint a, expresia (28) poate rescris a astfel:
(n) =
_
min
_
u(n) v(n)
+| e(n) v(n)|
,
max
_
, dac a
e
(n) >
v
(n)

max
, dac a
e
(n)
v
(n)
(33)
unde este o constant a pozitiv a mic a ce prevede mp art irea prin zero. Ment ion am c a volumul de calcule
necesar evalu arii VFF este mult mai redus comparativ cu complexitatea global a a algoritmului RLS.
O serie de simul ari au fost efectuate n contextul unei aplicat ii de compensare a ecoului acustic stereo-
fonic, n contextul modelului WL. Frecvent a de esantionare este de 8 kHz, iar ltrul adaptiv are lungimea
2L = 1024. Semnalul de intrare x(n) este o secvent a vocal a. Zgomotul de fond este presupus alb si Gaus-
sian, cu SNR = 30 dB. Performant ele algoritmilor au fost evaluate prin prisma dezalinierii normate (n dB)
si a MSE. Rezultatele prezentate n gurile anexate justic a validitatea solut iei VFF propuse.
5
0 5 10 15
15
10
5
0
5
10
15
20
Time (seconds)
M
i
s
a
l
i
g
n
m
e
n
t

(
d
B
)
(a)
RLS, = 1 1/(2L)
RLS, = 1 1/(10L)
RLS,
max
VFFRLS
Figure 1: Dezalinierea algoritmilor RLS cu = 1 1/(2L), = 1 1/(10L),
max
= 0, 99999 si
VFF-RLS. Scenariu single-talk, calea de ecou se schimb a dup a 7,5 secunde.
0 5 10 15
40
35
30
25
20
15
10
5
0
5
Time (seconds)
M
S
E

(
d
B
)
(b)
RLS, = 1 1/(2L)
RLS, = 1 1/(10L)
RLS,
max
VFFRLS
Figure 2: MSE pentru algoritmii RLS cu = 1 1/(2L), = 1 1/(10L),
max
= 0, 99999 si VFF-RLS.
Scenariu single-talk, calea de ecou se schimb a dup a 7,5 secunde.
References
[1] C. Stanciu, J. Benesty, C. Paleologu, T. G ansler, and S. Ciochin a, A novel perspective on stereophonic acoustic echo
cancellation, in Proc. ICASSP, 2012, pp. 2528.
[2] C. Stanciu, C. Paleologu, J. Benesty, T. G ansler, and S. Ciochin a, An efcient RLS algorithm for stereophonic acoustic echo
cancellation with the widely linear model, in Proc. Inter-Noise, 2012, 12 pagini.
[3] C. Stanciu, C. Paleologu, J. Benesty, S. Ciochin a, and F. Albu, A variable-forgetting factor RLS algorithm for stereophonic
acoustic echo cancellation with the widely linear model, in Proc. EUSIPCO, 2012, pp. 19601964.
6
0 5 10 15
15
10
5
0
5
10
15
20
25
Time (seconds)
M
i
s
a
l
i
g
n
m
e
n
t

(
d
B
)
(a)
RLS, = 1 1/(2L)
RLS, = 1 1/(10L)
RLS,
max
VFFRLS
Figure 3: Dezalinierea algoritmilor RLS cu = 1 1/(2L), = 1 1/(10L),
max
= 0, 99999 si
VFF-RLS. Scenariu double-talk, vocea de la near-end apare ntre 5 si 10 secunde.
0 5 10 15
40
35
30
25
20
15
10
5
0
Time (seconds)
M
S
E

(
d
B
)
(b)
RLS, = 1 1/(2L)
RLS, = 1 1/(10L)
RLS,
max
VFFRLS
Figure 4: MSE pentru algoritmii RLS cu = 1 1/(2L), = 1 1/(10L),
max
= 0, 99999 si VFF-RLS.
Scenariu double-talk, vocea de la near-end apare ntre 5 si 10 secunde.
[4] C. Stanciu, J. Benesty, C. Paleologu, T. G ansler, and S. Ciochin a, A widely linear model for stereophonic acoustic echo
cancellation, Signal Processing, vol. 93, pp. 511516, Feb. 2013.
[5] J. Benesty, C. Paleologu, T. G ansler, and S. Ciochin a, A Perspective on Stereophonic Acoustic Echo Cancellation. Berlin,
Germany: Springer-Verlag, 2011.
Director de proiect
Conf. dr. ing. Constantin Paleologu
7

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