Algorytm Viterbiego prezentacja

background image

1

1

Algorytm Viterbiego

Algorytm Viterbiego

background image

2

2

Wstęp

Wstęp

Jego pierwszym zastosowaniem było,

Jego pierwszym zastosowaniem było,

i nadal jest,

i nadal jest,

dekodowanie

dekodowanie

kodów splotowych

kodów splotowych

. Jednak stosowany

. Jednak stosowany

jest również w innych

jest również w innych

zaawansowanych technologiach

zaawansowanych technologiach

telekomunikacyjnych, np. jako

telekomunikacyjnych, np. jako

odbiornik

odbiornik

nieliniowy dla kanału z

nieliniowy dla kanału z

interferencją międzysymbolową

interferencją międzysymbolową

.

.

background image

3

3

Działanie tego algorytmu oparte jest o

Działanie tego algorytmu oparte jest o

kryterium maksymalnej wiarygodności,

kryterium maksymalnej wiarygodności,

a jego ideą jest to, że optymalna ścieżka

a jego ideą jest to, że optymalna ścieżka

dojścia przez dekoder do aktualnego

dojścia przez dekoder do aktualnego

stanu składa się ze ścieżki o

stanu składa się ze ścieżki o

najmniejszej metryce dojścia do

najmniejszej metryce dojścia do

któregoś ze stanów poprzednich oraz

któregoś ze stanów poprzednich oraz

przejścia do aktualnego stanu. Jak widać

przejścia do aktualnego stanu. Jak widać

proces ten jest procesem iteracyjnym

proces ten jest procesem iteracyjnym

background image

4

4

Dekodowane z maksymalną

Dekodowane z maksymalną

wiarygodnością - algorytm

wiarygodnością - algorytm

Viterbiego

Viterbiego

Znając własności kodów splotowych i działanie

Znając własności kodów splotowych i działanie

koderów możemy rozpatrzyć dekodowanie

koderów możemy rozpatrzyć dekodowanie

Viterbiego. (Istnieje wiele sposobów dekodowania

Viterbiego. (Istnieje wiele sposobów dekodowania

kodów splotowych. Dekodowanie sekwencyjne

kodów splotowych. Dekodowanie sekwencyjne

zaproponowali Wozencraft , Fano , Zigangirov i

zaproponowali Wozencraft , Fano , Zigangirov i

Jelinek . Dekodowanie metodą większościową

Jelinek . Dekodowanie metodą większościową

zaproponował Massey.)

zaproponował Massey.)

W roku 1967 Viterbi publikował swój algorytm

W roku 1967 Viterbi publikował swój algorytm

dekodowania kodów splotowych, który później

dekodowania kodów splotowych, który później

okazał się być algorytmem maksymalnej

okazał się być algorytmem maksymalnej

wiarygodności równoważnym rozwiązaniu

wiarygodności równoważnym rozwiązaniu

zagadnienia poszukiwania najkrótszej drogi

zagadnienia poszukiwania najkrótszej drogi

poprzez graf metodą programowania

poprzez graf metodą programowania

dynamicznego

dynamicznego

background image

5

5

Zasada dekodowania z maksymalną

Zasada dekodowania z maksymalną

wiarygodnością

wiarygodnością

(ang. maximum likehood - ML)

(ang. maximum likehood - ML)

Załóżmy, że nadajnik transmituje jedną z sekwencji sygnałów należącą do zbioru

Załóżmy, że nadajnik transmituje jedną z sekwencji sygnałów należącą do zbioru

{s1(t), s2(t),..., sN(t)},

{s1(t), s2(t),..., sN(t)},

np. sekwencję sk(t), do której w kanale AWGN dodawany jest szum n(t).

np. sekwencję sk(t), do której w kanale AWGN dodawany jest szum n(t).

Odbiornik o maksymalnej wiarygodności (ang. ML) zadecyduje, że nadana została

Odbiornik o maksymalnej wiarygodności (ang. ML) zadecyduje, że nadana została

sekwencja, która maksymalizuje prawdopodobieństwo warunkowe

sekwencja, która maksymalizuje prawdopodobieństwo warunkowe

P[si(t)|r(t)]

P[si(t)|r(t)]

po wszystkich i.

po wszystkich i.

Stosując wzór Bayesa otrzymujemy następujący wzór

Stosując wzór Bayesa otrzymujemy następujący wzór

background image

6

6

The maximum-likelihood decoding -

The maximum-likelihood decoding -

Viterbi algorithm

Viterbi algorithm

Na

Na

rys. 1.

rys. 1.

pokazany jest model

pokazany jest model

binarnego kanału symetrycznego

binarnego kanału symetrycznego

(ang. binary symmetric channel -

(ang. binary symmetric channel -

BSC). Dla tego kanału niech q będzie

BSC). Dla tego kanału niech q będzie

prawdopodobieństwem, że symbol

prawdopodobieństwem, że symbol

nadany został prawidłowo odebrany,

nadany został prawidłowo odebrany,

natomiast niech p=1-q będzie

natomiast niech p=1-q będzie

prawdopodobieństwem, że symbol

prawdopodobieństwem, że symbol

nadany został odebrany błędnie.

nadany został odebrany błędnie.

background image

7

7

Rys.1 Binary symmetric channel - BSC

Rys.1 Binary symmetric channel - BSC

background image

8

8

Zakładamy, że q>p oraz, że p<1/2

Zakładamy, że q>p oraz, że p<1/2

Mówimy, że kanał jest kanałem

Mówimy, że kanał jest kanałem

bezpamięciowym

bezpamięciowym

, jeżeli kolejne symbole na wyjściu kanału nie sa od siebie zależne. W takim

, jeżeli kolejne symbole na wyjściu kanału nie sa od siebie zależne. W takim

kanale prawdopodobieństwo odebrania bloku symboli r z powodu nadania bloku symboli v dane jest wzorem

kanale prawdopodobieństwo odebrania bloku symboli r z powodu nadania bloku symboli v dane jest wzorem

Kanał dyskretny

Kanał dyskretny

jest to taki kanał w którym liczność alfabetu wejściowego i wyjściowego jest skończona. Kanał, który jest

jest to taki kanał w którym liczność alfabetu wejściowego i wyjściowego jest skończona. Kanał, który jest

jednocześnie dyskretny i bezpamięciowy nazywany jest dyskretnym kanałem bezpamięciowym (ang. discrete memoryless channel -

jednocześnie dyskretny i bezpamięciowy nazywany jest dyskretnym kanałem bezpamięciowym (ang. discrete memoryless channel -

(DMC).

(DMC).

background image

9

9

Rozpatrzymy dwa przypadki algorytmu Viterbiego :

Rozpatrzymy dwa przypadki algorytmu Viterbiego :

1. Dekodowanie twardodecyzyjne

1. Dekodowanie twardodecyzyjne

Załóżmy najpierw, że przez kanał DMC transmitowana

jest sekwencja sk(t) równa słowu kodowemu v=(v1,

v2,...,vN) o długości N. Sekwencję odebraną oznaczmy

przez r=(r1,...,rN). Ponieważ kolejne próbki szumu w

kanale bezpamięciowym są od siebie niezależne więc

prawdopodobieństwo P(r|v) może być zapisane w

następujący sposób:

 gdzie

P(ri|vi)

i jest elementem macierzy

prawdopodobieństw przejść.

background image

10

10

Rozpatrzymy teraz dekodowanie

Rozpatrzymy teraz dekodowanie

miękkodecyzyjne

miękkodecyzyjne

.

.

Rozpatrzmy transmisję sygnału BPSK przez

Rozpatrzmy transmisję sygnału BPSK przez

kanał AWGN. Niech sekwencja sygnału

kanał AWGN. Niech sekwencja sygnału

oznaczona jako

oznaczona jako

s=(s1, s2,...,sN) 

s=(s1, s2,...,sN) 

reprezentuje słowo kodowe v

reprezentuje słowo kodowe v

gdzie

gdzie

v

v

i = {1,0}.

i = {1,0}.

Wówczas funkcja wiarygodności

Wówczas funkcja wiarygodności

(prawdopodobieństwo warunkowe) P(r|s)

(prawdopodobieństwo warunkowe) P(r|s)

można zapisać następująco:

można zapisać następująco:

 

 

background image

11

11

Dekodowanie z maksymalną

Dekodowanie z maksymalną

wiarygodnością - algorytm Viterbiego

wiarygodnością - algorytm Viterbiego

( cd)

( cd)

Do znalezienia najlepszego czyli najbardziej wiarygodnego

Do znalezienia najlepszego czyli najbardziej wiarygodnego

(ang. ML) sygnału możemy posłużyć się wykresem

(ang. ML) sygnału możemy posłużyć się wykresem

kratowym. Dekoder musi o prostu znaleźć najlepszą

kratowym. Dekoder musi o prostu znaleźć najlepszą

ścieżkę wzdłuż wykresu kratowego. Najlepsza ścieżka, a

ścieżkę wzdłuż wykresu kratowego. Najlepsza ścieżka, a

właściwie sekwencja przyporządkowana tej ścieżce

właściwie sekwencja przyporządkowana tej ścieżce

najbardziej przypomina (w sensie odległości Hammiga)

najbardziej przypomina (w sensie odległości Hammiga)

odebraną sekwencję kodową. Próba bezpośredniego

odebraną sekwencję kodową. Próba bezpośredniego

rozwiązania tego zadania poprzez rozpatrzenie wszystkich

rozwiązania tego zadania poprzez rozpatrzenie wszystkich

możliwych ścieżek wykresu kratowego i znalezienie

możliwych ścieżek wykresu kratowego i znalezienie

najlepszej z nich jest niemożliwa do realizacji ponieważ

najlepszej z nich jest niemożliwa do realizacji ponieważ

liczba ścieżek poprzez kratę rośnie wykładniczo z długością

liczba ścieżek poprzez kratę rośnie wykładniczo z długością

kraty. Nawet w przypadku prostego kodu splotowego

kraty. Nawet w przypadku prostego kodu splotowego

(2,1,2) i dość krótkiej sekwencji sygnału informacyjnego

(2,1,2) i dość krótkiej sekwencji sygnału informacyjnego

liczącego N=100 bitów, dekoder musiałby sprawdzić

liczącego N=100 bitów, dekoder musiałby sprawdzić

2100>1030 ścieżek!, co czyni taki sposób podejścia do

2100>1030 ścieżek!, co czyni taki sposób podejścia do

zagadnienia bezużytecznym.

zagadnienia bezużytecznym.

background image

12

12

Poszczególne kroki

Poszczególne kroki

Algorytmu

Algorytmu

Viterbiego

Viterbiego

--

--

Dla każdej kolejnej chwili czasu (nT)

Dla każdej kolejnej chwili czasu (nT)

 

 

Dla każdego stanu końcowego (po prawej stronie segmentu

Dla każdego stanu końcowego (po prawej stronie segmentu

kraty)

kraty)

 

 

Dla każdej gałęzi dochodzącej do tego stanu

Dla każdej gałęzi dochodzącej do tego stanu

 

 

Oblicz odległość Hamminga odebranej sekwencji sygnału od

Oblicz odległość Hamminga odebranej sekwencji sygnału od

sekwencji przyporządkowanej tej gałęzi (stanowiącej jej

sekwencji przyporządkowanej tej gałęzi (stanowiącej jej

etykietę)

etykietę)

 

 

dodaj metrykę gałęzi (odległość Hamminga) do metryki

dodaj metrykę gałęzi (odległość Hamminga) do metryki

ocalonej ścieżki w poprzedni stanie, której gałąź jest

ocalonej ścieżki w poprzedni stanie, której gałąź jest

przedłużeniem

przedłużeniem

 

 

Wybierz ścieżkę o najmniejszej metryce i zapamiętaj ją jako

Wybierz ścieżkę o najmniejszej metryce i zapamiętaj ją jako

ścieżkę ocaloną, apamiętaj jej metrykę. (Pozostaw tylko jedną

ścieżkę ocaloną, apamiętaj jej metrykę. (Pozostaw tylko jedną

ścieżkę ocaloną dochodzącą do każdego stanu. Porzuć

ścieżkę ocaloną dochodzącą do każdego stanu. Porzuć

pozostałe ścieżki.)

pozostałe ścieżki.)

 

 

Jeżeli ścieżki ocalałe pokrywają się z pewnym opóźnieniem w

Jeżeli ścieżki ocalałe pokrywają się z pewnym opóźnieniem w

stosunku do chwili bieżącej to możesz dane (bity

stosunku do chwili bieżącej to możesz dane (bity

informacyjne) przyporządkowane tej części ścieżki uznać jako

informacyjne) przyporządkowane tej części ścieżki uznać jako

najbardziej wiarygodne. Stanowią one wynik działania

najbardziej wiarygodne. Stanowią one wynik działania

dekodera Viterbiego

dekodera Viterbiego

background image

13

13

Działanie

Działanie

----------------

----------------

Miękkodecyzyjny dekoder Viterbiego

Miękkodecyzyjny dekoder Viterbiego

(Krok 1)

(Krok 1)

Rys. 1. Dekodowanie Viterbiego. Liczby powyżej gałęzi oznaczają

Rys. 1. Dekodowanie Viterbiego. Liczby powyżej gałęzi oznaczają

metryki gałęzi, metryki ocalonych ścieżek są zapisane w ramkach.

metryki gałęzi, metryki ocalonych ścieżek są zapisane w ramkach.

background image

14

14

Miękkodecyzyjny dekoder

Miękkodecyzyjny dekoder

Viterbiego

Viterbiego

(Krok 2)

(Krok 2)

background image

15

15

Miękkodecyzyjny dekoder Viterbiego

Miękkodecyzyjny dekoder Viterbiego

(Krok 3)

(Krok 3)

Rys. 3. Dekodowanie Viterbiego. Liczby powyżej gałęzi oznaczają metryki

Rys. 3. Dekodowanie Viterbiego. Liczby powyżej gałęzi oznaczają metryki

gałęzi, metryki ocalonych ścieżek i są zapisane w ramkach

gałęzi, metryki ocalonych ścieżek i są zapisane w ramkach

background image

16

16

Miękkodecyzyjny dekoder Viterbiego

Miękkodecyzyjny dekoder Viterbiego

(Krok 4)

(Krok 4)

background image

17

17

Miękkodecyzyjny dekoder Viterbiego

Miękkodecyzyjny dekoder Viterbiego

(Krok 5)

(Krok 5)

background image

18

18

Miękkodecyzyjny dekoder Viterbiego

Miękkodecyzyjny dekoder Viterbiego

(Krok 6)

(Krok 6)

Sekwencja kodowa (binarna) przyporządkowana do tej ścieżki

Sekwencja kodowa (binarna) przyporządkowana do tej ścieżki

wynosi 11 10 00 01 01 11

wynosi 11 10 00 01 01 11

background image

19

19

MAŁY, KRÓTKI TEŚCIK

MAŁY, KRÓTKI TEŚCIK

background image

20

20

background image

21

21

background image

22

22

background image

23

23

background image

24

24

background image

25

25

background image

26

26

background image

27

27


Document Outline


Wyszukiwarka

Podobne podstrony:
Teorie algorytmow genetycznych prezentacja
Algorytm noworodka, Prezentacje dla ratownika
algorytm defibrylacji, Prezentacje dla ratownika
Teorie algorytmow genetycznych prezentacja
Serologia, Zabiegi medyczne - prezentacje i algorytmy
Tachykardia z wąskimi zespołami QRS ERC, Zabiegi medyczne - prezentacje i algorytmy
Nadciśnienie tętnicze - Andrzejczak, Zabiegi medyczne - prezentacje i algorytmy
System opieki zdrowotnej w Polsce, Zabiegi medyczne - prezentacje i algorytmy
Zatrzymanie krążenia, Zabiegi medyczne - prezentacje i algorytmy
Lewatywa1, Zabiegi medyczne - prezentacje i algorytmy
Lewatywa2, Zabiegi medyczne - prezentacje i algorytmy
Migotanie Przedsionków ERC, Zabiegi medyczne - prezentacje i algorytmy
Algorytm resuscytacyjny u dzieci, Prezentacje dla ratownika
MIGOTANIE PRZEDSIONKÓW, Zabiegi medyczne - prezentacje i algorytmy
POSTĘPOWANIE W NADCIŚNIENIU TĘTNICZYM, Zabiegi medyczne - prezentacje i algorytmy
ZABURZENIA ŚWIADOMOŚCI - wykład, Zabiegi medyczne - prezentacje i algorytmy
Podawanie tlenu, Zabiegi medyczne - prezentacje i algorytmy
BLS, Zabiegi medyczne - prezentacje i algorytmy

więcej podobnych podstron