You are on page 1of 18

SVEUILITE JOSIPA JURJA STROSSMAYERA U OSIJEKU

ELEKTROTEHNIKI FAKULTET OSIJEK







Slaven Sakai

MAP ALGORITAM I PRIMJENA

SEMINARSKI RAD






Osijek, 2011.
SADRAJ
1. UVOD..1
2. UVODNA RAZMATRANJA O KODIRANJU2
2.1 TURBO DEKODIRAJUI ALGORITMI.....2
2.2 VITERBI ALGORITAM......................................................3
2.3 MAXIMUM A-POSTERIORI PROBABILITY ALGORITAM........3
2.4 DEKODIRANJE TVRDIM I MEKIM ODLUIVANJEM...........4
2.5 PARALELNO I SERIJSKO ULANAVANI KONVOLUCIJSKI
KODOVI....5
3. PRIMJENA MAP BCJR ALGORITMA.....6
3.1 LOG VJEROJATNOSNI OMJER....6
3.2 RAUNANJE .........9
3.3 REKURZIVNI RAUN ...9
3.4 RAUNANJE POMOU REETKASTOG DIJAGRAMA.....10
3.5 IZRAUN VJEROJATNOSTI

I L(

.......11
4. LOG-MAP I MAX-LOG MAP ALGORITAM....13
5. ZAKLJUAK.......15
LITERATURA.........16

1. UVOD
Godine 1974. Bahl, Cocke, Jelinek i Raviv objavili su algoritam za dekodiranje temeljen na
a posteriori vjerojatnosti kasnije poznat kao BCJR, Maximum a Posteriori (MAP). BCJR je
naprijed-nazad MAP algoritam. U Turbo dekodiranju ovaj algoritam je modificiran, BCJR
algoritam pronalazi marginalnu vjerojatnost da vidi jel je primljen bit 1 ili 0. Budui da se bit 1
(ili 0) moe pojaviti u mnogim razliitim kodnim rijeima, moramo zbrojiti preko svih tih
kodnih rijei njihove vjerojatnosti pojavljivanja. Odluka je napravljena pomou vjerojatnosnog
omjera tih marginalnih distribucija od 1 i 0. Proraun moe biti strukturiran pomou reetkastog
dijagrama. Za svako stanje niza postoji jedinstveni put kroz reetku i obrnuto. Cilj dekodera je
ispitati stanja

i izraunati a posteriori vjerojatnosti povezane s prijelazom.












2. UVODNA RAZMATRANJA O KODIRANJU
2.1 TURBO DEKODIRAJUI ALGORITMI

Sustavni podatak,

i dva paritetna bita sa izlaza rekurzivnog sustavnog konvolucijskog (RSC)


kodera,

su izlazi dobiveni iz turbo kodera. Dva RSC kodera su u paralelnoj strukturi


definirana poslije. Duina memorije za svaki RSC koder je v, a time ukupan broj stanja za svaki
dekoder je M =

. Primljeni sustavni podatak i paritetni bitovi iz i-tog kodera su prikazani kao

. Duljina turbo bloka je N. Ova dva RSC koderi su odvojeni sa N-bitnim interleaverom.
Stoga, ulaz u drugi koder je transformirana verzija ulaznih podataka sa prvog kodera. Uloga
interleavera u performanci turbo koda je vana, posebno kada veliina turbo bloka (N) je mala.
Svaki RSC koder ima generator matricu [1,

.

Slika 2.1. prikazuje jedan primjer RSC kodera pogodan za turbo kodove .


Slika 2.1.: Primjer RSC kodera za turbo kodove sa generatorskom matricom


2.2 VITERBI ALGORITAM

Kod Viterbijevog algoritama za razliku od MAP algoritma definiran dolje, aposteriorna
vjerojatnost za svaki bit nije dostupan. Umjesto toga, Viterbijev algoritam nalazi najvjerojatniji
niz koji se mogao prenijeti preko kanala. Njegova je primarna uporaba u ispravljanju pogreaka
unutar bunog digitalnog komunikacijskog kanala. Razvijen od strane Andrewa Viterbia za
koritenje u digitalnim komunikacijskim linkovima. Koriten je i u dial-up modemima,
satelitskim i digitalnim celularnim sustavima, duboke svemirske komunikacije, odreene beine
lokalne mree, and 802.11 wireless LANovima i drugim.

Algoritam nije openit, ini niz pretpostavki.

1. Vjerojatnost sljedeeg stanja ovisi samo o trenutnom stanju

2. Vjerojatnost generiranja trenutnog izlaznog simbola ovisi samo o trenutnom stanju

Zajedno, ove pretpostavke znae da se ne trebaju prebrojavati sve staze.

2.3 MAXIMUM A-POSTERIORI PROBABILITY ALGORITAM
MAP algoritmi su bazirani na tome da znamo apriornu (zakljuak temeljen na dedukciji)
vjerojatnost signala. Ako bit +1 ima vjerojatnost od 80%, onda ako signal padne ispod
negativnog raspona odluke (0), proces e odluiti da je -1 primljen. Meutim, apriornu
vjerojatnost, to je ovdje 80% treba uzeti u obzir. Ova metoda koja uzima u obzir ovu uvjetnu
vjerojatnost se zove MAP. Takoer se zove i pravilo minimalne pogreke. MAP maksimizira
izlaznu vjerojatnost na temelju znanja o ulaznim apriorim vjerojatnostima i mekanim izlazima iz
demodulatora. Stoga se takoer naziva soft in soft out algoritam ( SISO). MAP algoritam srodan
je sa drugim algoritmima, kao to algoritmi za prepoznavanje glasa,i i algortimi obrade glazbe.
Ostali slini algoritmi su Baum-Welch algoritm, expectation maximazition, belief propagacija,
naprijed-nazad algoritam, i jo mnogo drugih. Bcjr je sloen algoritam, teak za razumjeti i teak
za objasniti.
2.4 DEKODIRANJE TVRDIM I MEKIM ODLUIVANJEM
Dekodiranje tvrdim odluivanjem uzima niz bitova iz " detektora praga na prijemniku, i
odreuje dali je primljena jedinica ili nula. Ako je napon vei od praga odluivanja tada se
definitivno smatra '1' da je primljen bez obzira koliko blizu je do praga. Ako je manja, primljen
je '0'.Dekodiranje s mekim odluivanjem zahtijeva niz 'soft bitova' gdje smo dobili ne samo
odluku 1 ili 0, ali i pokazivatelj koliko smo sigurni da je odluka ispravna. Jedan od naina
provedbe ovog bi bila da detektor odluke umjesto da generira 0 ili 1, generira:

Tablica 1 : Generirane vrijednosti bitova na detektoru odluke
000 (definitivno 0)
001 (vjerojatno 0)
010 (moda 0)
011 (pretpostavljam 0)
100 (valjda 1)
101 (moda 1)
110 (vjerojatno 1)
111 (definitivno 1)

Iz tablice 1. moemo zakljuiti da posljednja dva bita mogu biti bitovi za provjeru ispravnosti
bita.Ova metoda kodiranja pomae kada predviamo pogreke tokom dekodiranja.




2.5. PARALELNO I SERIJSKO ULANAVANI KONVOLUCIJSKI
KODOVI
Kod paralenog ulananog konvolucijskog kodera (PCCC) ulazni niz koji se kodira organiziran
je u blok duljine N. Prvi blok podataka je kodiran EC1 koderom. Isti blok podataka bita je
doveden na interliver i transofrmiran u novi niz koji je kodiran EC2 koderom. Kodirani niz
proizveden od strane kodera je izlaz iz svakog bloka kodera.

Slika 2.5.1 : Paralelni ulanani konvolucijski turbo kod
Jedan od popularnih varijanti turbo kodera je serijski ulanani konvolucijski koder. Ovaj koder
ima dva sustavna konvolucijska kodera odvojena interliverom. Ova struktura se naziva serijsko
ulanavanje konvolucijskog kodera (SCCC). Zove se ovako zato to se iste informacije niza
kodiraju dvaput.

Slika 2.5.2 :Serijski ulanani konvolucijski turbo kod


3. PRIMJENA MAP BCJR ALGORITAM

3.1. LOG VJEROJATNOSNI OMJER L(


Ako imamo konvolucijski koder opisan reetkastim dijagramom, i nizom


ou N n bita kodnih rijei ili simbola na njegovom izlazu, gdje

je simbol
generiranod strane kodera u vremenu k. Odgovarajua informacija ili poruka na ulazu,

, mou
imati vrijednosti 1 i -1 sa a priori vjerojatnou P(u

ouakle moemo ueiniiati takozvani


log-likelihood-ratio(LLR)


Pu




Pretpostavimo da je kodirani niz x prenesen preko kanala bez pamenja sa dodanim bijelim
Gaussovim umom (AWGN) i da smo primili niz realnih brojeva y=

, kao to je prikazano na
slici 3.1.1.Ovaj slijed dovodimo na dekoder koji koristi BCJR algoritam kako bi mogli
procijeniti izvorni niz

, gdje algoritam izraunava a posteriori(zakljuak temeljen na


indukciji) LLR

, stvarni broj odreen omjerom




Brojnik i Nazivnik u jedn. (2) sadre a posteriori uvjetnu vjerojatnost, vjerojatnost izraunatu
nakon to saznamo za y infomraciju. Pozitivan ili negativan predznak je pokazatelj koji
bit, 1 ili -1, je bio kodiran u vremenu k. Njegova veliina je mjera povjerenja koju imamo u
prethodnu odluku: to je via udaljena veliina

od praga odluivanja vie imamo


povjerenja u procjenu bita. Ova mekana odluka dobivena pomou

onda moe biti


prenesena na drugi dekodirajui blok, ako postoji, ili jednostavno pretvorena u bitnu vrijednost
pomou tekog odluivanja. Ako je

dekoder e procijeniti bit

= -1 da je poslan.
Inae e procijeniti

.



Slika 3.1.1: pojednostavljeni blok dijagram sustava s AWGN umom na kanalu
Neka imamo brzinu 1/2 , n=2, konvolucijsiki kod, sa M=4, stanjima S = {0,1,2,3} i kodnu
reetku prikazanu na slici 3.1.2. Isprekidane linije znai da je generiran bit -1 ,a puna linija znai
da je generiran bit 1. Svaka grana je povezana s dvije kodne rijei

, gdje je, zbog


jednostavnosti, 0 i 1 odgovaraju -1 i +1.

Slika 3.1.2: konvolucijski kod prikazan kao kodna reetka
Pretpostavimo da smo u vremenu k. Odgovarajue stanje je

= s , prethodno stanje je

=s'
i dekoder je primio simbol

. Prije vremena

k-1 simbola su primljeni i nakon toga N-k


simbola e biti primljenih. Potpuni niz y moe se podijeliti u tri skupine, gdje jedna
predstavlja prolost, jedna sadanjost i jo jedna budunost:


Raunanje aposteriorne vjerojatnosti :

predstavlja zajedniku vjerojatnost primanja N-bitnog slijeda y koji se nalazi u stanju


s' u vremenu k-1 i u stanju s u trenutku k. U brojniku

je zbroj raunat preko svih tranzicija


stanja od s' do s koje su dospjele od

=1. Isto tako, u nazivniku

je skup svih grana nastalih


od poruke bita

= -1.
Zajednika vjerojatnost

se moe izraunati kao proizvod tri vjerojatnosti,

(5)
Oni su definirani kao:


U vremenu k, vjerojatnosti , i povezani su s prolosti, sadanjosti i budunosti niza y.
3.2. RAUNANJE
Vjerojatnost

je uvjetna vjerojatnost da je primljeni simbol

u
vremenu k u sadanjem stanju

= s, znajui da je stanje iz koje dolazi grana



.
Ispada da je




U sluaju da imamo AWGN kanal prethodni izraz postaje:

exp


gdje

je koliina koja e se ponititi kada se izrauna LLR L(

, i

je mjera pouzdanosti
kanala koja je jednaka:

/2 je bilateralna buka spektralne gustoe snage, a je iezavanje,

su prijenosne energiji
po kodiranom bitu i bitom poruke, i

je kodni omjer.

3.3. REKURZIVNI RAUN
Vjerojatnosti i raunamo rekurzivno. Odgovarajue rekurzivne formule su:

(10)

(11)
U oba sluaja moramo imati vrijednost

. Koja se mora izraunati prvo.Vjerojatnost


se izraunava kako je niz y primljen. To jest, kada raunamo idemo naprijed od poetka do
kraja reetke.Vjerojatnost izrauna se samo nakon to smo dobili itav niz y. To jest, kada
raunamo idemo od kraja prema poetku reetke.

3.4. RAUNANJE POMOU REETKASTOG DIJAGRAMA

Slika 3.4.1. prikazuje reetku sa slike 3.1.2., ali s novim oznakama.
Svaku granu reetke oznaavamo zadanom

izraunatom prema formuli (9).


U svakom voru po stanju izraunamo vrijednost

pomou formule (10)


Izraunamo

pomou formule (11)



Slika 3.4.1: , i kao reetka oznake
Pretpostavimo da znamo

. Vjerojatnost

bez normalizacije je dobivena zbrajanjem


produkta

koji su povezani s granama koje konvergiraju u s. Na primjer,


vidimo na slici 3.4.1. da u trenutku k dvije grane stiu u stanje

= 2, jedna iz stanje 0, a drugi


dolazi iz stanja 1, kao to slika. 3.4.2. prikazuje. Nakon to su svi M

izraunati kao
objanjeno moraju biti dijeljivi sa svojom sumom.

Slika 3.4.2: Dijagramski prikaz rekurzivnog prorauna
Procedura je ponovljena sve dok ne stignemo do kraja primljenog niza i kada izraunamo

.
Koliina moe se izraunati rekurzivno tek nakon to potpuni niz y je primljen.
Znajui

izraunavamo na nain slian kao



Kada pronaemo grane koje izlaze iz stanja

, zbrojimo odgovarajue produkte

i podijelimo po sumi

.

3.5. IZRAUN VJEROJATNOSTI P(s,s,y) i L(


Uz sve vrijednosti , i dostupne pomou rauna gore moemo izraunati zajednike
vjerojatnosti


A posteriori L(



Slika 3.4.3: Vjerojatnost P(s ', s, y) kao produkt tri faktora

Slika 3.4.4.: Saetak izrauna MAP algoritma
4. LOG-MAP I MAX-LOG MAP ALGORITAM
U MAP algoritmu, usprkos tome to su normalizirane mnoge vrijednosti, brojevi i dalje mogu
narasti u velike brojeve. Duljina niza je velika tako da broj viestrukih operacija mnoenja unosi
u sustav velika kanjenja. Poto je zbrajanje mnogo bri strojni proces, moemo prebaciti sve
operacije mnoenja u logaritamsku domenu gdje onda moemo zbrojiti zadane vrijednosti.

Definiramo dvije nove varijable A, B i :

ln

max

max


Gdje
max


max ln

log
max

(13)

Vrijednosti funkcije ln

su inae spremljene u 'tablicu za pogledati' sa samo osam


vrijednosti |a-b| izmeu 0 i 5 ( to je zapravo dovoljno).
Element ln

u formuli (12) nee biti upotrebljen u izraunu L(


LLR je dan:

max

max

] (14)
Formula (14) nije odmah raunata u log-MAP algoritmu. Funkcija max* u log-MAP alogritmu
ima vie od dvije varijable, vidi formulu (13). Ona se rauna rekurzivno.
Log-MAP algoritam upotrebljava precizne formule tako da su njegove performance jednake
MAP algoritmu iako je jednostavniji, to znai da je preferiran u implimentaciji. Dok max-log-
MAP algoritam upotrebljava aproksimacije, njegove performance su loije.

Slika 4.1.: Saetak izrauna log-MAP algoritma




5. ZAKLJUAK

MAP algoritam je raunski vrlo sloen algoritam. Ovaj algoritam zahtijeva ne-linearne funkcije
za izraunavanje vjerojatnosti, zahtijeva mnogo mnoenja i zbrajanja koji su potrebni za izraun
svih varijabli. MAP algoritam nije praktian za implimentirati u ipove, dok logaritamska
verzija MAP algoritma je praktinija i jednostavnija za implimentaciju jer je potrebno samo
zbrajanje varijabli, to je za raunalne sustave lake od mnoenja. MAP maksimizira izlaznu
vjerojatnost na temelju znanja o ulaznoj a priori vjerojatnosti i mekanom odluivanju na izlazu iz
demodulatora.













LITERATURA

[1] http://users.soe.ucsc.edu/~hamid/PSI00073.pdf

[2] http://www.complextoreal.com/chapters/turbo3.pdf

[3] http://ptgmedia.pearsoncmg.com/images/art_sklar4_map/elementLinks/art_sklar4_map.pdf

[4] http://www.scribd.com/doc/12729459/From-BCJR-to-Turbo

[5] predloci s predavanja

You might also like