User:AndjelaVujovic/Рекурзивни алгоритам најмањих квадрата (RLS алгоритам)

Рекурзивни алгоритам најмањих квадрата (RLS) је адаптивни филтер који рекурзивно утврђује коефицијенте који смањују линеарни најмањи квадрат функција трошкова у вези улазних сигнала. Ово је за разликa у односу на друге алгоритме као што је алгоритам најмањих средњих квадрата (LMS) чији је циљ да смањи средње квадратне грешке. У извођење рекурзивног алгоритма најмањих квадрата, улазни сигнал се сматра детерминистичким, док се алгоритам најмањих средњих квадрата  и слични алгоритми сматрају стохастичком. У поређењу са већином својих конкурената, експонати рекурзивног алгоритма најмањих квадрат изузетно брзо конвергирају. Међутим, ова корист долази по цену високог рачунарске комплексности.

Мотивација
RLS је открио Карл Фридрих Гаус али остаје неискоришћен или игнорисан до 1950. године, када Плацкет открива оригинални рад Гауса од 1821. У принципу, RLS алгоритми могу да се користе за решавање сваког проблема који могу да реше адаптивни филтери, На пример, претпоставимо да је сигнал d(n) који се преноси преко еха, бучни канал који узрокује да буде примљен као


 * $$x(n)=\sum_{k=0}^q b_n(k) d(n-k)+v(n)$$

где $$v(n)$$ представља додатну буку. Ми ћемо покушати да опоравимо жељени сигнал $$d(n)$$ употребом $$p+1$$-tap импулса коначних одзива, $$\mathbf{w}$$:
 * $$\hat{d}(n) = \sum_{k=0}^{p} w_n(k)x(n-k)=\mathbf{w}_n^\mathit{T} \mathbf{x}_n$$

где $$\mathbf{x}_n=[x(n)\quad x(n-1)\quad\ldots\quad x(n-p)]^T$$ је вектор који садржи $$p+1$$ Најновији узорци $$x(n)$$. Наш циљ је да се процени параметре филтера $$\mathbf{w}$$, и у сваком тренутку n мислимо на нове најмањих квадрата процена $$\mathbf{w}_n$$. Како време пролази, желимо да се у потпуности избегну преправке алгоритма најмањих квадрата и да пронађу нову процену за $$\mathbf{w}_{n+1}$$, у смислу $$\mathbf{w}_n$$.

Корист од RLS алгоритма је да нема потребе обрнути матрицу, чиме се штеди рачунарска снага. Још једна предност је у томе што даје интуицију иза таквих резултата као Калман филтер.

Дискусија
Идеја РЛС филтера је да се минимизира функцију трошкова $$C$$ адекватно избором филтер коефицијенти $$\mathbf{w}_n$$, ажурирање филтера као стиже нови подаци. Сигнал грешке <матх> $$e(n)$$ и жељени сигнал $$d(n)$$ су дефинисани у дијаграму негативне повратне спреге:



Грешка имплицитно зависи од коефицијента филтера путем процене $$\hat{d}(n)$$:


 * $$e(n)=d(n)-\hat{d}(n)$$

Најмања функција квадрата грешка$$C$$—желимо да се функција трошкова минимизира у функцији e(n) која такође зависи од коефицијента филтера:
 * $$C(\mathbf{w}_n)=\sum_{i=0}^{n}\lambda^{n-i}e^{2}(i)$$

где $$0<\lambda\le 1$$ је "фактор заборављања" који даје експоненцијално мању тежину старијим узорцима грешака.

Функција трошкова је сведена на минимум узимањем парцијалних извода за све ставке$$k$$ коефицијената вектора $$\mathbf{w}_{n}$$ и постављање резултата на нулу
 * $$\frac{\partial C(\mathbf{w}_{n})}{\partial w_{n}(k)}=\sum_{i=0}^{n}\,2\lambda^{n-i}e(i)\,\frac{\partial e(i)}{\partial w_{n}(k)}={-}\sum_{i=0}^{n}\,2\lambda^{n-i}e(i)\,x(i-k)=0 \qquad k=0,1,\cdots,p$$

Даље, замени $$e(n)$$ са дефиницијом сигнала грешке
 * $$\sum_{i=0}^{n}\lambda^{n-i}\left[d(i)-\sum_{l=0}^{p}w_{n}(l)x(i-l)\right]x(i-k)= 0\qquad k=0,1,\cdots,p$$

Преуређење једначине приноса
 * $$\sum_{l=0}^{p}w_{n}(l)\left[\sum_{i=0}^{n}\lambda^{n-i}\,x(i-l)x(i-k)\right]= \sum_{i=0}^{n}\lambda^{n-i}d(i)x(i-k)\qquad k=0,1,\cdots,p$$

Овај образац може да се изрази у смислу матрице
 * $$\mathbf{R}_{x}(n)\,\mathbf{w}_{n}=\mathbf{r}_{dx}(n)$$ где $$\mathbf{R}_{x}(n)$$ је измерен узорак коваријанси матрица за $$x(n)$$, и $$\mathbf{r}_{dx}(n)$$ је еквивалентна процена за попречну-коваријансу од $$d(n)$$ и $$x(n)$$. На основу овог израза налазимо коефицијенте који минимизирају функцију трошкова као:$$\mathbf{w}_{n}=\mathbf{R}_{x}^{-1}(n)\,\mathbf{r}_{dx}(n)$$

Ово је главни резултат дискусије.

Избор $$\lambda$$
Мањи $$\lambda$$ је, мањи допринос претходних узорака. То чини филтера  више  осетљивији на недавним узорака, што значи више флуктуације у филтеру ко-еффициентс.The $$\lambda=1$$ случај се као  растућег прозор РЛС алгоритам . У пракси, $$\lambda$$ је обично бира између 0,98 и 1.