Metode de decodare - Decoding methods

În teoria codificării , decodarea este procesul de traducere a mesajelor primite în cuvinte de cod ale unui cod dat . Au existat multe metode comune de mapare a mesajelor la cuvinte de cod. Acestea sunt adesea folosite pentru a recupera mesajele trimise pe un canal zgomotos , cum ar fi un canal binar simetric .

Notaţie

este considerat un cod binar cu lungimea ; vor fi elemente ale ; și este distanța dintre acele elemente.

Decodare ideală a observatorului

Unul poate primi mesajul , apoi decodarea ideală a observatorului generează cuvântul de cod . Procesul are ca rezultat această soluție:

De exemplu, o persoană poate alege cuvântul de cod care este cel mai probabil să fie primit ca mesaj după transmisie.

Convenții de decodare

Fiecare cuvânt de cod nu are o posibilitate așteptată: poate exista mai mult de un cuvânt de cod cu o probabilitate egală de a muta în mesajul primit. Într-un astfel de caz, expeditorul și receptorul (receptorii) trebuie să fie de acord din timp cu privire la o convenție de decodare. Convențiile populare includ:

  1. Solicitați ca cuvântul cod să fie retrimis - cerere repetată automată .
  2. Alegeți orice cuvânt de cod aleatoriu din setul de cuvinte de cod cel mai probabil care este mai aproape de acesta.
  3. Dacă urmează un alt cod , marcați biții ambigui ai cuvântului cod ca ștergeri și sperați că codul exterior îi dezambiguizează

Decodare cu probabilitate maximă

Dat fiind un vector primit, decodificarea cu probabilitate maximă alege un cuvânt de cod care maximizează

,

adică cuvântul de cod care maximizează probabilitatea de primire, având în vedere că a fost trimis. Dacă toate cuvintele de cod sunt la fel de probabil să fie trimise, atunci această schemă este echivalentă cu decodarea ideală a observatorului. De fapt, prin teorema lui Bayes ,

După remediere , este restructurat și este constant, deoarece toate cuvintele de cod sunt la fel de susceptibile de a fi trimise. Prin urmare, este maximizată în funcție de variabilă exact atunci când este maximizată, iar revendicarea urmează.

Ca și în cazul decodării observatorului ideal, trebuie convenită o convenție pentru decodarea non-unică.

Problema de decodare a probabilității maxime poate fi, de asemenea, modelată ca o problemă de programare întreagă .

Algoritmul de decodare a probabilității maxime este o instanță a problemei „marginalizați o funcție de produs” care este rezolvată prin aplicarea legii distributive generalizate .

Decodare la distanță minimă

Având în vedere un cuvânt de cod primit , decodarea la distanță minimă alege un cuvânt de cod pentru a minimiza distanța de Hamming :

adică alegeți cuvântul de cod cât mai aproape de .

Rețineți că, dacă probabilitatea de eroare pe un canal discret fără memorie este strict mai mică de jumătate, atunci decodarea distanței minime este echivalentă cu decodarea probabilității maxime , deoarece dacă

atunci:

care (deoarece p este mai mic de jumătate) este maximizat prin minimizarea d .

Decodarea la distanță minimă este, de asemenea, cunoscută sub numele de decodare a celui mai apropiat vecin . Poate fi asistat sau automatizat folosind o matrice standard . Decodarea la distanță minimă este o metodă rezonabilă de decodificare atunci când sunt îndeplinite următoarele condiții:

  1. Probabilitatea apariției unei erori este independentă de poziția simbolului.
  2. Erorile sunt evenimente independente - o eroare la o poziție din mesaj nu afectează alte poziții.

Aceste ipoteze pot fi rezonabile pentru transmisiile pe un canal binar simetric . Ele pot fi nerezonabile pentru alte suporturi, cum ar fi un DVD, unde o singură zgârietură pe disc poate provoca o eroare în multe simboluri sau cuvinte de cod învecinate.

Ca și în cazul altor metode de decodificare, trebuie convenită o convenție pentru decodarea non-unică.

Decodarea sindromului

Decodarea sindromului este o metodă extrem de eficientă de decodare a unui cod liniar pe un canal zgomotos , adică unul pe care se fac erori. În esență, decodarea sindromului este decodarea la distanță minimă utilizând un tabel de căutare redus. Acest lucru este permis de liniaritatea codului.

Să presupunem că acesta este un cod liniar de lungime și distanță minimă cu matricea de verificare a parității . Atunci este clar că este capabil să corecteze până la

erorile făcute de canal (deoarece dacă nu se fac mai mult decât erori, atunci decodarea la distanță minimă va decoda în mod corect cuvântul de cod transmis incorect).

Acum, să presupunem că un cuvânt de cod este trimis pe canal și că apare modelul de eroare . Apoi este primit. Decodarea la distanță minimă obișnuită ar căuta vectorul într-un tabel de dimensiuni pentru cea mai apropiată potrivire - adică un element (nu neapărat unic) cu

pentru toți . Decodarea sindromului profită de proprietatea matricei de paritate care:

pentru toți . Sindromul de Received este definit ca fiind:

Pentru a efectua decodarea ML într-un canal binar simetric , trebuie să căutați un tabel precomputat de dimensiuni , mapat la .

Rețineți că aceasta are deja o complexitate semnificativ mai mică decât cea a unei decodificări standard a matricei .

Cu toate acestea, în ipoteza că nu s-au făcut mai multe erori în timpul transmisiei, receptorul poate căuta valoarea într-un tabel redus de dimensiuni.

Listă decodare

Decodarea setului de informații

Aceasta este o familie de metode probabiliste din Las Vegas , toate bazate pe observația că este mai ușor să ghiciți destule poziții fără erori decât să ghiciți toate pozițiile de eroare.

Cea mai simplă formă se datorează Pdomeniului: Să fie generatorul matricea utilizată pentru codificare. Selectați coloane ale la întâmplare și indicați prin submatricea corespunzătoare a . Cu o probabilitate rezonabilă va avea rang complet, ceea ce înseamnă că , dacă vom lăsa să fie sub-vector pentru pozițiile corespunzătoare ale oricărui cuvânt de cod al unui mesaj , putem recupera ca . Prin urmare, dacă am avea norocul că aceste poziții ale cuvântului primit nu conțin erori și, prin urmare, au egalat pozițiile cuvântului cod trimis, atunci putem decoda.

Dacă au apărut erori, probabilitatea unei astfel de selecții norocoase de coloane este dată de .

Această metodă a fost îmbunătățită în diferite moduri, de exemplu de Stern și Canteaut și Sendrier.

Probabilitate maximă de răspuns parțial

Probabilitatea maximă de răspuns parțial ( PRML ) este o metodă de conversie a semnalului analogic slab de la capul unui disc magnetic sau unitate de bandă într-un semnal digital.

Decodor Viterbi

Un decodor Viterbi folosește algoritmul Viterbi pentru decodarea unui flux de biți care a fost codificat folosind corecția de eroare directă pe baza unui cod convoluțional. Distanța Hamming este utilizată ca metrică pentru decodoarele Viterbi cu decizie dificilă. Distanța euclidiană pătrată este utilizată ca metrică pentru decodoarele de decizie soft.

Vezi si

Referințe

Lecturi suplimentare