Implementacja algorytmów filtracji adaptacyjnej o strukturze transwersalnej na platformie CUDA.

Podobne dokumenty
Praca dyplomowa magisterska

Politechnika Gdańska WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI. Praca dyplomowa

Adaptacyjne Przetwarzanie Sygnałów. Filtracja adaptacyjna w dziedzinie częstotliwości

Systemy. Krzysztof Patan

Transformata Laplace a to przekształcenie całkowe funkcji f(t) opisane następującym wzorem:

Przedmowa Wykaz oznaczeń Wykaz skrótów 1. Sygnały i ich parametry Pojęcia podstawowe Klasyfikacja sygnałów

Filtr Kalmana. Struktury i Algorytmy Sterowania Wykład 1-2. prof. dr hab. inż. Mieczysław A. Brdyś mgr inż. Tomasz Zubowicz

[d(i) y(i)] 2. Do wyprowadzenia algorytmu RLS posłuży kryterium autokorelacyjne: J n = e 2 (i) i=1. λ n i [d(i) y(i)] 2 λ (0, 1]

Optymalizacja ciągła

Podstawy Automatyki. wykład 1 ( ) mgr inż. Łukasz Dworzak. Politechnika Wrocławska. Instytut Technologii Maszyn i Automatyzacji (I-24)

ADAPTACYJNE PRZETWARZANIE SYGNAŁÓW LABORATORIUM. Ćwiczenie 2. Badanie algorytmów adaptacyjnych LMS i RLS

ADAPTACYJNE PRZETWARZANIE SYGNAŁÓW LABORATORIUM. Ćwiczenie 2. Badanie algorytmów adaptacyjnych LMS i RLS

Narzędzia matematyczne zastosowane w systemie biomonitoringu wody

b n y k n T s Filtr cyfrowy opisuje się również za pomocą splotu dyskretnego przedstawionego poniżej:

Podstawy Sztucznej Inteligencji (PSZT)

#09. Systemy o złożonej strukturze

Prognozowanie i Symulacje. Wykład I. Matematyczne metody prognozowania

Technika audio część 2

ADAPTACYJNE PRZETWARZANIE SYGNAŁÓW LABORATORIUM. Ćwiczenie 1. Modelowanie i analiza widmowa dyskretnych sygnałów losowych

Aproksymacja funkcji a regresja symboliczna

Egzamin / zaliczenie na ocenę*

Ćwiczenie 4. Filtry o skończonej odpowiedzi impulsowej (SOI)

AiR_TSiS_1/2 Teoria sygnałów i systemów Signals and systems theory. Automatyka i Robotyka I stopień ogólnoakademicki

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Układ regulacji ze sprzężeniem zwrotnym: - układ regulacji kaskadowej - układ regulacji stosunku

ANALIZA SYGNAŁÓ W JEDNÓWYMIARÓWYCH

Przetwarzanie sygnałów z zastosowaniem procesorów sygnałowych - opis przedmiotu

Analiza szeregów czasowych: 2. Splot. Widmo mocy.

Egzamin / zaliczenie na ocenę*

WYKŁAD 9 METODY ZMIENNEJ METRYKI

CYFROWE PRZETWARZANIE SYGNAŁÓW

Metody Prognozowania

Przetwarzanie i transmisja danych multimedialnych. Wykład 6 Metody predykcyjne. Przemysław Sękalski.

Sterowanie napędów maszyn i robotów

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

FFT i dyskretny splot. Aplikacje w DSP

Opis efektów kształcenia dla modułu zajęć

Analiza szeregów czasowych: 2. Splot. Widmo mocy.

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Kartkówka 1 Opracowanie: Próbkowanie częstotliwość próbkowania nie mniejsza niż podwojona szerokość przed spróbkowaniem.

Procedura modelowania matematycznego

x x 1. Przedmiot identyfikacji System x (1) x (2) : x (s) a 1 a 2 : a s mierzone, a = zestaw współczynników konkretyzujacych F ()

9. Dyskretna transformata Fouriera algorytm FFT

Podstawy Automatyki. Wykład 2 - podstawy matematyczne. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

1. POJĘCIA PODSTAWOWE I RODZAJE UKŁADÓW AUTOMATYKI

Dyskretne układy liniowe. Funkcja splotu. Równania różnicowe. Transform

Teoria sygnałów Signal Theory. Elektrotechnika I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

KARTA PRZEDMIOTU. Techniki przetwarzania sygnałów, D1_3

Ćw. 7 Wyznaczanie parametrów rzeczywistych wzmacniaczy operacyjnych (płytka wzm. I)

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

KARTA MODUŁU KSZTAŁCENIA

Podstawy automatyki. Energetyka Sem. V Wykład 1. Sem /17 Hossein Ghaemi

Metody systemowe i decyzyjne w informatyce

Rozpoznawanie obrazów

Laboratorium Przetwarzania Sygnałów Biomedycznych

Sposoby modelowania układów dynamicznych. Pytania

Teoria sterowania - studia niestacjonarne AiR 2 stopień

KARTA MODUŁU / KARTA PRZEDMIOTU

Uczenie sieci typu MLP

Wprowadzenie do technik regulacji automatycznej. prof nzw. dr hab. inż. Krzysztof Patan

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

Automatyka i robotyka ETP2005L. Laboratorium semestr zimowy

INSTRUKCJA DO ĆWICZENIA NR 7

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obieralny (obowiązkowy / nieobowiązkowy) polski semestr VI

Tematyka egzaminu z Podstaw sterowania

2. Próbkowanie Sygnały okresowe (16). Trygonometryczny szereg Fouriera (17). Częstotliwość Nyquista (20).

ZAJĘCIA II. Zmienne losowe, sygnały stochastyczne, zakłócenia pomiarowe

Przetwarzanie sygnałów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Podstawy Automatyki

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

Cyfrowe algorytmy sterowania AR S1 semestr 4 Projekt 4

Estymacja wektora stanu w prostym układzie elektroenergetycznym

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Instrukcja do laboratorium z cyfrowego przetwarzania sygnałów. Ćwiczenie 3. Transformata Z; blokowe struktury opisujące filtr

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 7 AiR III

Wprowadzenie. Spis treści. Analiza_sygnałów_-_ćwiczenia/Filtry

Projektowanie układów metodą sprzężenia od stanu - metoda przemieszczania biegunów

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka ADALINE.

Analiza szeregów czasowych: 7. Liniowe modele stochastyczne

Rys 1 Schemat modelu masa- sprężyna- tłumik

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

ANALIZA WŁAŚCIWOŚCI FILTRU PARAMETRYCZNEGO I RZĘDU

Transformata Fouriera

TEORIA OBWODÓW I SYGNAŁÓW LABORATORIUM

Sterowanie napędów maszyn i robotów

Kwantyzacja wektorowa. Kodowanie różnicowe.

Adam Korzeniewski - p. 732 dr inż. Grzegorz Szwoch - p. 732 dr inż.

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Rys. 1 Otwarty układ regulacji

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Wprowadzenie do teorii ekonometrii. Wykład 1 Warunkowa wartość oczekiwana i odwzorowanie liniowe

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna.

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Transkrypt:

Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Automatyka i Robotyka Praca magisterska Implementacja algorytmów filtracji adaptacyjnej o strukturze transwersalnej na platformie CUDA. Jakub Kołakowski Promotor: dr inż. Michał Meller Gdańsk, 2011

Spis treści Spis treści i 1 Wstęp 1 2 Podstawy teoretyczne 3 2.1 Wprowadzenie... 3 2.1.1 Strukturyfiltrów... 3 2.1.2 Zastosowania... 4 2.2 Filtracjaoptymalna-filtrWienera... 7 2.3 Metodygradientowe... 9 2.3.1 Algorytmynajszybszegospadku... 10 2.3.2 AlgorytmyNewtona-Raphsona... 11 2.3.3 AlgorytmyQuasi-Newtona... 11 2.4 Adaptacyjnealgorytmygradientustochastycznego(LMS)... 11 2.4.1 FiltrLMS... 12 2.4.2 FiltrNLMS... 12 2.5 Blokowefiltryadaptacyjne... 13 3 Opis platformy CUDA 15 Bibliografia 17 Spis rysunków 19 i

Rozdział 1 Wstęp...jakiśtekst... 1

Rozdział 2 Podstawy teoretyczne 2.1 Wprowadzenie 2.1.1 Strukturyfiltrów Dobór struktury filtra ma znaczący wpływ na działanie algorytmu adaptacyjnego. Wyróżnia się kilka podstawowych struktur filtrów, które określa się filtrami o skończonej pamięci lub skończonej odpowiedzi impulsowej(fir, ang. finite-duration impulse response). Takie struktury, w odróznieniu od filtrów o nieskończonej odpowiedzi impulsowej (IIR, ang. infinite-duration impulse response), nie zawierają ścieżek sprzężeń zwrotnych. Obecność sprzężeń niesie ze sobą problem zapewnienia stabilności filtra, który może wpaść w oscylacje. Z tego powodu algorytmy filtracji adaptacyjnej typu IIR są bardziej złożone, a co za tym idzie, rzadziej wykorzystywane w praktyce. Niniejsza praca traktuje o filtrach o skończonej odpowiedzi impulsowej. Dwie najpopularniejsze struktury takich filtrów sa następujące: Filtr transwersalny Struktura transwersalna to struktura opierająca się o linię opóźniającą. Przykład takiej struktury zaprezentowano na Rysunku 2.1. Liczba elementów opóźniających(identyfikowanychprzezoperatoropóźnieniajednostkowegoz 1 ),użytychwfiltrze,wyznacza skończoną długość odpowiedzi impulsowej. Określa ona także rząd filtra. Wyjście filtra transwersalnego rzędu M 1 przedstawionego na Rysunku 2.1 jest dane równaniem: y(n)= M 1 k=0 w k u(n k) (2.1) gdziew k tok-tywspółczynnikfiltra(k=0,1,...,m 1). Implementacja filtrów o strukturze transwersalnej(i jej modyfikacjach) jest przedmiotem tej pracy. 3

4 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE Rysunek 2.1: Filtr transwersalny[2, str. 5] Filtr drabinkowy Struktura drabinkowa(zwana także kratową), a dokładniej filtr predykcyjny o strukturze drabinkowej, składa się z modułów, a ich liczbę nazywa się rzędem predykcji. Na Rysunku2.2pokazanofiltrpredykcyjnyrzęduM 1.StopieńmfiltrazRysunku2.2 jest opisany parą wzorów(przy założeniu, że dane wejściowe są zespolone i stacjonarne w szerokim sensie): f m (n)=f m 1 (n)+κ mb m 1 (n 1) (2.2) b m (n)=b m 1 (n 1)+κ m f m 1 (n) (2.3) gdzie: f m (n) błądpredykcjiwprzód,m=1,2,...,m 1, b m (n) błądpredykcjiwstecz,m=1,2,...,m 1, κ m współczynnikodbicia,m=1,2,...,m 1. Warunki początkowe są następujące: f 0 (n)=u(n) (2.4) b 0 (n)=u(n) (2.5) Jakpodanowpracy[2,str.6]dlaskorelowanejsekwencjipróbeku(n),u(n 1),..., u(n M+1)pochodzącychzestacjonarnegoprocesu,błędypredykcjiwsteczb 0,b 1 (n),..., b M 1 (n)tworząsekwencjęnieskorelowanychzmiennychlosowych.dodatkowoliniowa kombinacjabłędówpredykcjiwsteczb 0,b 1 (n),...,b M 1 (n)możebyćwykorzystanado wyznaczenia estymaty pewnego sygnału odniesienia d(n)(dolna część Rysunku 2.2). Różnica między estymatą a sygnałem d(n) daje w rezultacie błąd estymacji e(n). Proces tak opisany znany jest pod angielską nazwą joint-process estimation. 2.1.2 Zastosowania Zdolność filtrów adaptacyjnych do zadowalającego działania w nieznanym środowisku oraz do śledzenia statystycznych cech sygnałów czyni je potężnymi narzędziami w cyfrowym przetwarzaniu sygnałów. Układy zdolne do przystosowania się, mają zdecydowaną

2.1. WPROWADZENIE 5 Rysunek 2.2: Filtr drabinkowy[2, str. 7] przewagę nad tymi, które tego nie potrafią. Na Rysunku 2.3 wyróżniono cztery podstawowe zastosowania filtracji adaptacyjnej. Są one następujące: Identyfikacja (Rysunek 2.3a) Filtr adaptacyjny jest używany, aby zapewnić najlepszy w pewnym sensie liniowy model nieznanego obiektu. Obiekt i filtr adaptacyjny są pobudzane tym samym sygnałem wejściowym u. Wyjściem obiektu jest sygnał odniesienia d(zwany także wzorcowym), a różnica tego sygnału z wyjściem y filtra daje w rezultacie błąd estymacji e, wykorzystywany do adaptacjyjnej korekcji wag filtra. Jeśli obiekt jest dynamiczny, to jego model będzie zmiennoczasowy. Modelowanie odwrotne (Rysunek 2.3b) Zadaniem filtra adaptacyjnego w tej konfiguracji jest wyznaczenie modelu odwrotnego, będącego najlepszym dopasowaniem(w pewnym sensie) do nieznanego obiektu. Model ma transmitancję równą odwrotności transmitancji obiektu. Jeśli obiektem jest kanał transmisyjny, deformujący przesyłany przez nadajnik sygnał, to filtr adaptacyjny, o odwrotnej funkcji przenoszenia, przeprowadza korekcję otrzymanego sygnału. Niweluje tym samym skutki działania medium transmisyjnego. Jednak aby wykonać taką operację niezbędne jest znanie przez odbiornik sygnału przesyłanego przez kanał, którego właściwości mogą się zmieniać w czasie. Nadajnik wysyła więc okresowo tak zwanego pilota, czyli odpowiedni sygnał znany odbiornikowi.

6 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE - + (a) Identyfikacja 0'1)#2 3(4&53',!" #$#%#&'()' - - * 0'1)#2 3'(4&53' + + %./)) (b) Modelowanie odwrotne J?KA;L M?@N>7OM? P J?KA;L MI@N>7OM? F=GHA7IA7I D 6789: B ;<;=9;>?@A? - + C E J?KA;L M?@N>7OM? Q (c) Predykcja b[c]wd gx]shish]sw b[c]wd eh\fzsge[ + ` RSTUV ^ a b[c]wd WXWYUWZ[\][ - e[\fzsge[ _ (d) Usuwanie interferencji Rysunek 2.3: Cztery podstawowe zastosowania filtracji adaptacyjnej[2, str. 19]

2.2. FILTRACJA OPTYMALNA- FILTR WIENERA 7 Predykcja (Rysunek 2.3c) Filtra adaptacyjny pełni funkcję predyktora, czyli zapewnia najlepszą (w pewnym sensie) predykcję aktualnej wartości sygnału wejściowego. Aktualne próbki tego sygnału są sygnałem wzorcowym d filtra adaptacyjnego. Natomiast przeszłe wartości sygnału d podawane są na wejście filtra. W zależności od zastosowania, wyjściem konfiguracj z Rysynku 2.3c może być sygnał wyjściowy y filtra lub sygnał błędu estymacji (predykcji) e. Usuwanie interferencji (Rysunek 2.3d) W ostatniej klasie zastosowań, filtr adaptacyjny wykoszystuje się do usuwania nieznanych interferencji zawartych w sygnale odniesienia d, który przenosi także informację. Zadaniem filtra jest takie przekształcenie sygnału wejściowego u, aby w jak najlepszym stopniu skorelować go0 z interferencjami w syngale wzorcowym. Wyjściem jest w tym przypadku sygnał błędu e, czyli sygnał odniesinia pozbawiony niepożądanych zakłóceń. 2.2 Filtracja optymalna- filtr Wienera Model obiektu, przedstawionego na rysunku 2.4, opisany jest równaniem różnicowym: d(n)= M 1 i=0 gdzie: u(n) sygnał wejściowy, d(n) sygnał wyjściowy, w o i współczynnikifiltra,i=0,...,m 1. wi o u(n i) (2.6) ~ rlsot uvuwouxyz{y p - + jklmno p q } Rysunek 2.4: Filtr adaptacyjny w konfiguracji identyfikacji obiektu Wzór(2.6) można zapisać w formie d(n)=(w o ) T u(n) (2.7)

8 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE gdzie: u(n)=[u(n),...,u(n M+1)] T (2.8) Estymatorem FIR powyższego systemu jest: w o = [ w o 0,...,w o M 1] T (2.9) y(n)=w T u(n) (2.10) gdziew=[w 0,...,w M 1 ] T sąestymatamiparametrówrzeczywistegosystemu.celem jest takie wyznaczenie w aby błąd średniokwadratowy pomiędzy zmierzonym sygnałem d(n)(sygnałem odniesienia) a sygnałem wyjściowym modelu y(n) był minimalny. Kryterium błędu wygląda następująco: J=E [ ] ( ) 2 ] e 2 (n) =E[ d(n) y(n) (2.11) gdzie E[.] oznacza wartość oczekiwaną. Podstawienie wzoru(2.10) do(2.11) daje w rezultacie: ( )] 2 J(w)=E[ d(n) w T u(n) (2.12) Dalsze przekształcenia: ( )] 2 J(w) = E[ d(n) w T u(n) = [ ] [ ] = E d 2 (n) 2E d(n)w T u(n) [ ] [ ] = E d 2 (n) 2w T Ed(n)u(n) [ ] = E d 2 (n) 2w T p (n) du +wt E [ ] = E d 2 (n) ( )] 2 +E[ w T u(n) [ +E = ] w T u(n)u T (n)w = ] w= [ u(n)u T (n) 2w T p (n) du +wt R (n) uu w (2.13) i wyznaczenie minimum funkcji poprzez obliczenie pochodnej wyrażenia(2.13) względem w oraz przyrównanie jej do zera: J(w) w = 2p(n) du +2R(n) uuw=0 (2.14) prowadzi do wyrażenia na optymalne wartości wag w filtra, który nosi nazwę filtra Wienera: [ ] 1p w o = R (n) (n) uu du (2.15) gdzie: R (n) uu estymata macierzy autokorelacji sygnału u(n) w n-tej chwili czasowej, p (n) du estymata wektora korelacji wzajemnej sygnału wejściowego i odniesienia.

2.3. METODY GRADIENTOWE 9 J(w 0,w 1 ) w 0 0 0 w 1 Rysunek 2.5: Przykładowa powierzchnia błędu średniokwadratowego 2.3 Metodygradientowe Praktyczne wykorzystanie równania(2.15) dla każdej chwili czasu n pociąga za sobą kłopot z poprawną estymacją wartości oczekiwanych, co jest typowym problemem stochastycznej optymalizacji. Wynika to z faktu, że w większości przypadków funkcje rozkładu gęstości prawdopodobieństwa obserwowanych zmiennych losowych nie są znane lub też zmienne te są niestacjonarne. Aby przezwyciężyć ten problem adoptuje się znane iteracyjne metody optymalizacji określone dla deterministycznych funkcji kosztu. Najczęściej stosowanymi algorytmami, które optymalizują deterministyczną funkcję kosztu(celu) są adaptacyjne algorytmy gradientowe. Rekursywny estymator ma postać: w(n+1)=w(n)+µv(n) (2.16) gdzie: w(n+1) wektorwspółczynnikówfiltrawchwilin+1, w(n) wektor współczynników filtra w chwili n, µ współczynnik skalujący, v(n) kierunek modyfikacji. We wzorze(2.16) pokazano uaktualnianie parametrów filtra w kierunku v(n). Wraz ze współczynnikiem skalującym powinien on zostać tak dobrany, aby zapewnić zbieżność parametróww(n)dowartośćioptymalnychw o określonychprzezfiltrwienera(rozdział 2.2). Najczęstszym wyborem v(n) jest kierunek przeciwny do określonego przez

10 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE œ œ ž œ Ÿ œ Ÿ ž ƒ ƒ ƒˆ ƒˆ - + Š Œ Ž Œ Ž š Ž Rysunek 2.6: Transwersalny filtr adaptacyjny gradient z funkcji celu J(.). Na rysynku 2.5 przedstawiono przykładową powierzchnię błęduśredniokwadratowegofunkcjij=e[e 2 (n)]=e[(d(n) y(n)) 2 ]dlafiltraodwóch rzeczywistychwspółczynnikachw 0 iw 1.Minimumtejpowierzchniwyznaczaoptymalny wektorwagfiltrawieneraw o =[w o 0,wo 1 ]T,spełniającyrównanie(2.15). 2.3.1 Algorytmy najszybszego spadku Mają one postać: w(n+1)=w(n) 1 2 µ J( w(n) ) (2.17) gdzieµtowspółczynnikskalujący,natomiast J ( w(n) ) towektorgradientufunkcji kosztu równy: J ( w(n) ) = 2p (n) du +2R(n) uuw(n) (2.18) Wektor wag w(n) jest więc korygowany zgodnie z formułą: [ w(n+1)=w(n)+µ p (n) ] du R(n) uu w(n) (2.19) W ogólności współczynnik µ jest zmienny w czasie. Dodatkowo wprowadza się dodatnio określoną macierz wagową W(n) poprawiającą zbieżność(szybkość adaptacji) algorytmu. Otrzymuje się zatem: w(n+1)=w(n) 1 2 µ(n)w(n) J( w(n) ) (2.20) Warunek zbieżności Aby zapewnić zbieżność algorytmu najszybszego spadku do wartośći optymalnych, oprócz właściwego doboru kierunku korekcji wag filtra, również parametr µ musi spełniać na-

2.4. ADAPTACYJNE ALGORYTMY GRADIENTU STOCHASTYCZNEGO(LMS) 11 stępujący warunek: 1 µλ k <1 (2.21) gdzieλ k,k=1,2,...,m,towartościwłasnemacierzyautokorelacjir (n) uu. Warunek(2.21) jest równaważny poniższemu ograniczeniu wartości parametru µ: 0<µ< 2 λ max (2.22) gdzieλ max oznaczanajwiększąwartośćwłasnąmacierzyautokorelacjisygnałuwejściowego u(n). Dodatkowo jak napisano w pracy[9, str. 386], szybkość zbieżności adaptacji wpółczynników filtra do wartości optymalnych jest zależna od rozrzutu wartości własnych macierzyr (n) uu. Zmniejszenie tego rozrzutu skutkuje poprawieniem zbieżności. 2.3.2 AlgorytmyNewtona-Raphsona W algorytmach Newtona-Raphsona za macierz W(n) przyjmuje się odwrotność hesjanu funkcjiceluj ( w(n) ) wn-tejchwiliczasowej: Zatem: W(n)= [ 2 J ( w(n) )] 1 w(n+1)=w(n) 1 2 µ(n) [ 2 J ( w(n) )] 1 J ( w(n) ) (2.23) (2.24) 2.3.3 AlgorytmyQuasi-Newtona W przypadkach gdy wyznaczenie wartości hesjanu jest trudne, wykorzystywana jest jego aproksymata A(n): w(n+1)=w(n) 1 2 µ(n)[a(n)] 1 J ( w(n) ) (2.25) 2.4 Adaptacyjne algorytmy gradientu stochastycznego(lms) Niech minimalizowana funkcja kosztu wynosi: J=e 2 (n) (2.26) Filtr adaptacyjny ma zatem za zadanie minimalizować chwilową a nie oczekiwaną wartość błędu. Jak napisano w pracy[6] jest to równoznaczne z zastąpieniem w równaniu(2.19) elementów macierzy autokorelacji R oraz składowych wektora korelacji wzajemnej p ich obserwacjami, zgodnie z symbolicznym zapisem: R (n) uu =E[u(n)uT (n)] u(n)u T (n) (2.27) p (n) du =E[d(n)u(n)] d(n)u(n) (2.28)

12 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE Zatem: [ ] w(n+1) = w(n)+µ d(n)u(n) u(n)u T (n)w(n) [ ] = w(n)+µ d(n) w T (n)u(n) u(n)= [ ] = w(n)+µ d(n) y(n) u(n)= = w(n) + µe(n)u(n) (2.29) = Uwzględniając więc uogólnienia z równania(2.20), zależność(2.29) przyjmuje postać wzoru(2.30) charakteryzującą szeroką grupę filtrów: w(n + 1) = w(n) µ(n)w(n)e(n)u(n) (2.30) gdzie: W(n) macierzwagowaowymiarachmxm, µ(n) współczynnik skalujący zależny od czasu, e(n) sygnałbłęduwchwilin. 2.4.1 FiltrLMS Otrzymywany jest po uniezależnieniu współczynnika skalującego od czasu(µ(n) = µ) oraz po wprowadzeniu identycznościowej macierzy wagowej W(n) = I. Wzór(2.30) przyjmuje postać: w(n+1)=w(n) µe(n)u(n) (2.31) Warunek zbieżności Błąd dopasowania dasd 2.4.2 FiltrNLMS Unormowany filtr LMS(NLMS) otrzymywany jestw wyniku uzależnienia w równaniu(2.31) parametru µ od czasu w następujący sposób: µ µ(n)= γ+u T (n)u(n) = µ M 1 γ+ u 2 (n i) i=0 (2.32) gdziestałaadaptacjiµspełniazalezność:0<µ<2.wmianownikuwyrażeniawprowadza się parametr γ > 0 zapobiegający występowaniu problemów numerycznych, w przypadku gdy próbka sygnału wejściowego u(n) jest mała i występuje dzielenie przez niewielką wartość. Zmiany wprowadzone w algorytmie NLMS, w porównaniu do podstawowej wersji algorytmu gradientu stochastycznego(lms), powodują poprawę zbieżności zarówno dla nieskorelowanych jak i skorelowanych danych wejściowych.

2.5. BLOKOWE FILTRY ADAPTACYJNE 13 2.5 Blokowe filtry adaptacyjne Jeśli w dziedzinie czasu użyje się algorytmu LMS wymagającego dużej ilości pamięci, można zaobserwować znaczący wzrost w złożoności obliczeniowej. Jak podaje Haykin w pracy[2, str. 446], istnieją dwa sposoby na radzenie sobie z tym problemem: 1. Wybór algorytmu o nieskończonej odpowiedzi impulsowej(iir), co wymaga także zapewnienia jego stabilności. 2. Filtracja adaptacyjna w dziedzinie częstotliwości łącząca dwie uzupełniające się metody stosowane w cyfrowym przetwarzaniu sygnałów: blokowa implementacja filtra FIR, pozwalając ana skuteczne wykorzystanie równoległego przetwarzania, co skutkuje przyspieszeniem wykonywanych obliczeń algorytmy szybkiej transformaty Fouriera(FFT, ang. Fast Fourier Transform), usprawniąjce wykonywanie splotów, co pozwala w efektywny sposób przeprowadzać adaptację parametrów filtra w dziedzinie częstotliwości Powyższe podejście nazywane jest blokowym algorytmem LMS(BLMS) i umożliwia zastosowanie filtrów FIR o wielu współczynnikach, w sposób efektywny obliczeniowo. Filtry blokowe obniżają więc koszt obliczeniowy, jednocześnie poprawiając szybkość zbieżności algorytmu. Wynika to z faktu, iż dane przetwarzane są na zaszdzie blok po bloku, zamiast próbka po próbce. Jednakże obniżenie liczby obliczeń i polepszenie zbieżności niesie ze sobą wady. W implementacjach blokowych pojawia się problem opóźnienia w ścieżce sygnału. Jest to rezutlatem konieczności zebrania bloków danych przed ich dalszym przetwarzaniem....jakiśtekst... Pewne symbole: DMC, LZ77, LZ78.

14 ROZDZIAŁ 2. PODSTAWY TEORETYCZNE Rysunek 2.7: Blokowy filtr adaptacyjny[8, str. 443]

Rozdział 3 Opis platformy CUDA 15

Bibliografia [1]G.A.Clark,S.K.Mitra,andS.R.Parker.Blockimplementationofadaptivedigitalfilters. IEEE Transactions on Circuits and Systems, CAS-28(6):584 592, June 1981. [2] S. Haykin. Adaptive Filter Theory. Prentice Hall, Englewood Cliffs, New Jersey, 3rd edition, 1996. [3] NVIDIA Corporation. CUDA C Best Practices Guide, 4.0 edition, March 2011. [4] NVIDIA Corporation. CUDA C Programming Guide, 4.0 edition, March 2011. [5] NVIDIA Corporation. CUFFT Library User Guide, February 2011. [6] L. Rutkowski. Filtry adaptacyjne i adaptacyjne przetwarzanie sygnałów: teoria i zastosowania. Wydawnictwa Naukowo-Techniczne, Warszawa, 1994. [7] J. Sanders and E. Kandrot. CUDA by Example. An Introduction to General-Purpose GPU Programming. Addison-Wesley, Upper Saddle River, NJ, 2011. [8] A. H. Sayed. Adaptive Filters. Wiley-Interscience, New Jersey, 2008. [9] T. P. Zieliński. Cyfrowe przetwarzanie sygnałów: Od teorii do zastosowań. Wydawnictwa Komunikacji i Łączności, Warszawa, 2007. 17

Spis rysunków 2.1 Filtrtranswersalny[2,str.5]... 4 2.2 Filtrdrabinkowy[2,str.7]... 5 2.3 Czterypodstawowezastosowaniafiltracjiadaptacyjnej[2,str.19]... 6 2.4 Filtradaptacyjnywkonfiguracjiidentyfikacjiobiektu... 7 2.5 Przykładowapowierzchniabłęduśredniokwadratowego... 9 2.6 Transwersalnyfiltradaptacyjny... 10 2.7 Blokowyfiltradaptacyjny[8,str.443]... 14 19