Sunteți pe pagina 1din 200

Gheorghe M.

Panaitescu

TRANSMITEREA I CODAREA
INFORMAIEI
Note de curs

Universitatea Petrol-Gaze Ploieti


Departamentul Automatic, Calculatoare i Electronic
2015

1
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

2
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CUVNT INTRODUCTIV
Lucrarea prezent este suportul cursului cu numele din titlu, tinut pe durata
unui semestru, trei ore pe sptmn, la anul II specializarea Electronic
aplicat din cadrul Faculttii de Inginerie mecanic si electric a Universittii
Petrol-Gaze Ploieti. Este produsul unei experiente de predare care se
ntinde pe un interval de peste cinsprezece ani. Versiunea de fa este revzut
si adugit n 2015 pentru instruirea unei noi promoii de la specializarea
amintit.
Textul cuprins ntre copertile virtuale ale acestei lucrri constituie aproape un
manual de Transmiterea i codarea informaiei. S-a subliniat cuvntul
aproape deoarece n unele sectiuni ale lucrrii se poate observa o expunere
mai curnd rezumativ a temelor aduse n discutie. De aceea a fost mentinut
subtitlul Note de curs, dat fiind caracterul multor pasaje mai curnd de ghid al
expunerilor celui care pred disciplina sau, ocazional, de posibil referint
concis a initiatilor n domeniu. n acele sectiuni nu sunt continute toate
explicatiile i comentariile care cu sigurant ar fi necesare pentru ca textul
lucrrii s devin pe de-a-ntregul un manual. Asemenea adaosuri se fac de
obicei la expunerea oral i, n afar de asta, n cursul predrii pot aprea
actualizri din mers ale unor teme, ntr-o dinamic mic a disciplinei,
produs de lecturile curente ale titularului cursului.
Aadar, pentru studenti, lectura celor scrise mai departe nu poate suplini total
audierea cursului. Dac lucrarea se difuzeaz n formatul acesta, se difuzeaz
mai ales ca un ajutor n ntelegerea notielor proprii, n vederea pregtirii
testelor intermediare i a examenului. Studentii sunt ndemnati s consulte
concomitent bibliografia indicat, att pentru subiectele care nu se regsesc
aici ct i pentru subiectele care sunt preluate din sursele citate si reformulate
n Notele de curs de mai jos.
Alturi de prezentele Note de curs, cititorul poate accesa i consulta on line,
pentru studiu individual sau n timpul orelor de aplicatii prevzute n orar, un
volum de Aplicaii la disciplina Transmiterea i codarea informaiei.

3
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

4
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CUPRINS
INTRODUCERE

p.9
13

SURSE DE INFORMAIE
Informaie. Surse de informaie. Entropie
Entropia relativ
Surse de informatie multiple
Surse de informatie cu memorie. Modelul Markov
Legea numerelor mari i AEP (Asymptotic Equipartition Property)
Entropia diferenial
Discretizarea
Entropiile difereniale combinate, condiionate i relative
CANALE DE TRANSMITERE A INFORMAIEI

35

Generalitti
Entropii a priori, entropii a posteriori.
Informaia mutual (transinformaia)
Tipuri speciale de canale
Capacitatea canalelor
Modelul de canal AWGN (Additive White Gaussian Noise)
O problem special privind canalele
Canale de tip continuu
CODURI PENTRU CANALE FR ZGOMOT
Generalitti despre coduri
Particulariti ale codurilor
Inegalitatea lui Kraft i teorema lui McMillan
Lungimea medie a unui cod. Coduri compacte
Teorema de codare a lui Shannon
Teorema lui Shannon pentru surse Markov
Teorema lui Shannon i capacitatea canalelor
Coduri compacte coduri Huffman
Principii generale pentru compresia de date
Codarea run-length

5
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

51

Codoare Markov
Codarea aritmetic
Compresia LZW (Lempel, Ziv, Welch)
Compresia cu pierdere de informaie
Codarea rat-distorsiune
Msuri ale distorsiunii
Proprieti ale functiei R(D)
Funcia rat-distorsiune i informaia
CRIPTAREA

101

Primalitatea numerelor ntregi


Criptografia i algoritmul RSA (Rivest, Shamir, Adleman)
Semnturi electronice
Criptografia RSA i teorema restului chinezesc
Teorema lui Euler
Autentificarea
Utilizarea practic a criptrii RSA
CODAREA PENTRU CANALE AFECTATE DE PERTURBAII
Observaii generale
Debit de informatie (rata)
Reguli de decizie la decodare
Distana Hamming. Decodarea bazat pe distana Hamming
Detectarea i corectarea erorilor prin distanta Hamming
Coduri cu paritate constant
Coduri cu repetiie
Probabilitatea de eroare n bloc i debitul de informaie
Coduri binare liniare
Generarea biilor de control, sindromul
Decodarea prin sindrom
Proiectarea matricii de verificare
Coduri perfecte pentru corectarea erorilor
Tipuri de erori, probabiliti ale erorilor nedetectate/nedetectabile
Alte coduri detectoare sau corectoare de erori
Coduri polinomiale/ciclice
Coduri polinomiale
Coduri ciclice
Coduri convoluionale

6
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

109

Anexa 1: COMPLEMENTE DE TEORIA PROBABILITTILOR


I DE STATISTIC MATEMATIC

183

Spatiul evenimentelor
Probabilitti, probabilitti conditionate
Variabile aleatoare
BIBLIOGRAFIE

199

7
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

8
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

INTRODUCERE
Informatia este generat i vehiculat n foarte multe mprejurri. Observarea
unui fenomen, lectura unei crti, experimentele stiintifice de pild sunt
generatoare de informatie. Frecvent, informatia trebuie transmis la distant
si/sau stocat eficient i n conditii de sigurant.
Ideea principal a cursului Transmiterea i codarea informatiei este de a
descrie i a prelucra informatia astfel nct ea s poat fi cuantificat la surs,
adaptat la particularittile mediilor de transmitere sau de stocare, recuperat n
form utilizabil la locul receptiei sau dup un interval de timp de depozitare.
Exist asadar surse care genereaz informatie. Informatia trebuie msurat
Canalele de transmitere i operatiile de memorare trebuie s lucreze optim.
Receptoarele, utilizatorii trebuie s recupereze informatia din canal sau din
memorie ntr-o manier care s o fac utilizabil, inteligibil. Astfel de subiecte
sunt abordate de-a lungul acestui curs i n bun parte n aceste Note de curs.
ntr-o sumar enumerare, obiectivele acestei discipline sunt:
caracterizarea informatiei generate de surse diverse, transmise prin canale
variate, receptionate de receptoare de genuri diferite;
optimizarea transmiterii i stocrii informatiei (de regul prin utilizarea unor
coduri);
transmiterea protejat prin medii/canale, stocarea eficient n conditii sigure
n diverse tipuri de memorie (protectia la perturbatii i erori).
ntr-o prim faz, n centrul atentiei sunt sursele de informatie discrete i
informatia discret/discretizat. Discutia se va extinde ori de cte ori va fi cazul
i la sursele continue generatoare de informatie.
Un exemplu simplu aduce cititorul mai aproape de cteva aspecte de baz ale
teoriei informatiei: Se presupune c din localitatea A se transmit spre localitatea
B, dup un anumit program, informatii despre starea vremii din A. Simplificnd
lucrurile, presupunem c n A poate s strluceasc soarele, cerul poate fi
nnorat, poate s plou sau poate s fie cea, acestea fiind descrieri exhaustive.
Starea vremii din A poate fi caracterizat asadar ca nsorit, nnorat, ploioas
sau cetoas. Lista aceasta de descriptori ai strii vremii n A alctuieste un
alfabet al sursei. Fiecare din acesti descriptori este un simbol al sursei de
informatie i o secven de astfel de referiri la vremea din A, chiar i foarte
scurt format dintr-un singur simbol se constituie ntr-un mesaj. Este
convenabil i n mare msur natural ca informatia s fie legat cantitativ de
gradul de incertitudine n care se afl receptorul/utilizatorul fa n fat cu ceea
ce se transmite i/sau se receptioneaz. Dac, de pild, vremea n A este uzual
nsorit (65% din cazuri) receptionarea mesajului de un simbol nsorit este

9
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

purttor de relativ putin informatie: este de asteptat ntr-o mare msur ca n A


s fie soare. n schimb, simbolul cetoas (5% din cazuri) este mult mai
informativ deoarece prezenta cetei n A este n oarecum surprinztoare pentru
receptorul din B. Grade intermediare de incertitudine i cantitti de informatie
pe msur poart simbolurile nnorat (20% din cazuri) i ploioas (10%
din cazuri).
De observat c teoria informatiei se ocup numai de observare-transmiterereceptionare i nu de continutul semantic al mesajelor transmise. Teoria
informatiei nu se ocup de adevrul sau de semnificatia mesajelor.
ntr-o viziune mai general, o surs de informatie discret genereaz un numr
de simboluri (grupate ntr-un alfabet) asociate cu anumite probabilitti de
generare. Pentru sursa de informare a unui receptor din localitatea B despre
vremea din localitatea A, tabelul urmtor contine aceste dou elemente.
Simbol de
caracterizare
a vremii din A
Probabilitatea
aparitiei

nsorit

nnorat

ploioas

cetoas

0,65

0,20

0,10

0,05

ntr-o zi oarecare, un mesaj transmis poate fi: nsorit nsorit nsorit


nsorit nsorit nnorat nnorat ploioas cetoas. Mesajul ar putea fi
transmis ntr-o form binar. Un cod asociat ar putea fi cel din tabelul care
urmeaz:
Simbol de
caracterizare
a vremii din A
Cod (a)

nsorit

nnorat

ploioas

cetoas

00

01

10

11

i transmisia efectiv ar fi 00 00 00 00 00 01 01 10 11, n total 18 biti.


Daca se foloseste un alt cod, cel din tabelul care urmeaz:
Simbol de
caracterizare
a vremii din A
Cod (b)

nsorit

nnorat

ploioas

cetoas

10

110

111

atunci se transmite secventa 0 0 0 0 0 10 10 110 111 care numr 15 biti. Apare


c transmiterea n codificarea a doua (b) este mai economic, n mai putini biti,
cu mai putin timp de ocupare a canalului de transmitere. Exist o limit n ceea
ce priveste acesti mai putini biti, care va fi investigat ntr-unul din capitolele
acestor Note de curs. Anticipnd putin, numrul de biti utilizat pentru
transmitere fr pierdere de informatie sugereaz cuvinte de cod mai scurte

10
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

pentru simbolurile mai probabile i cuvinte de cod mai lungi pentru simboluri
mai putin probabile. De aici o dubl sugestie: de a msura informatia n biti i
de a observa o relatie de crestere concomitent a informatiei i a inversului
(valorii reciproce a) probabilittii atasate simbolurilor. O definire logaritmic a
cantittii de informatie pare n acest context foarte potrivit
Informatia purtat de un simbol = log(1/Probabilitatea acelui simbol)
Cu aceast definire logaritmic (logaritmii n baza 2) se pot face evaluri ale
surselor de informatie i ale canalelor prin care informatia se transmite.
Dar, dup cum cititorul a observat, s-au utilizat aici unele notiuni care se cer
explicate. Anexele acestui curs i sectiunile urmtoare vor (re)introduce unele
elemente de calcul al probabilittilor, de teorie a codurilor etc., care vor aduce o
lumin mai complet asupra caracterizrii informatiei n mprejurri variate.
n ceea ce priveste siguranta stocrii/transmiterii informatiei, codurile
protectoare la erori au un rol determinant. Despre ce erori este vorba? Sunt
posibile erori datorate unei functionri neconforme a aparaturii implicate n
operatii de transmitere/stocare, sunt posibile interferente ale unor perturbatii
numite frecvent zgomote etc. Desigur, acest vast subiect nu poate fi evitat, ci
dimpotriv, va fi foarte prezent n paginile care urmeaz ca i n versiunea
vorbit a acestui curs.

11
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

12
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

SURSE DE INFORMAIE
Informaie. Surse de informaie. Entropie
Fie un cmp de probabilitate discret An (v.Anexa 1) format din n evenimente
elementare A1, , An care alctuiesc o familie exhaustiv; Fie p1, , pn
probabilittile acestor evenimente. Probabilitile satisfac obligatoriu relaiile
n

p k 0, 1 k n,

k 1

Definitie. Se numeste entropie a cmpului finit An, notat cu Hn(An), valoarea


dat de expresia
n

Hn(An) = H n ( p1 ,..., p n ) p k log p k


k 1

unde logaritmul este luat de obicei n baza 2. ntr-o baz diferit a


n

Hn(An) = H n ( p1 ,..., p n ) log 2 a pk log a p k


k 1

Entropia poate fi considerat o msur a gradului (mediu) de nedeterminare n


cmpul de probabilitate finit An.
Observatie. Oricare dintre termenii sumei din expresia de definitie a entropiei,
de pild cel de indice k, se mai poate scrie sub forma pklog(1/pk), prin
transferarea semnului din fata sumei la fiecare termen i apoi sub logaritm.
Termenul este produsul dintre probabilitatea pk i valoarea informatiei purtate
de evenimentul Ak. Revenind la expresia de calcul al mediei unei functii de o
variabil aleatoare (vezi Anexa), variabil care ia n particular valorile log(1/pk)
cu probabilittile pk, k = 1, , n, rezult c entropia este n acelai timp
informatia medie pe simbol a sursei de informatie care genereaz simbolurile
A1, , An din alfabetul sursei.
Proprietti ale entropiei:
1. Nenegativitate
Hn ( p1 ,..., pn ) 0
2. Dac pi 1, pk 0, k i , 1 k n , atunci
Hn( p1, , pn) = 0
cu alte cuvinte un cmp cu un eveniment elementar sigur, celelalte fiind
imposibile, nu are nici o nedeterminare.
3. Entropia satisface inegalitatea
1
1
Hn ( p1 ,..., pn ) Hn ,...,
n
n

13
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Demonstratia face apel la inegalitatea lui J.L.Jensen conform creia fiind


dat o functie real convex pe intervalul [a, b], y = f(x), fiind date n valori
arbitrare x1, , xn ale argumentului ei, situate n intervalul de convexitate i
n numere nenegative 1, , n care nsumate dau unitatea, atunci are loc
inegalitatea
n
n

k f ( xk ) f k xk

k 1

k 1
Aplicarea acestei inegalitti pentru functia f(x) = xlogx, pentru xk = pk i n
= 1/n, 1 k n conduce la
n
n 1 n 1
1
pk log pk pk log pk
k 1 n k 1 n
k 1 n
n

si, ntruct

1 , rezult

k 1

1
1
1
Hn ( p1 ,..., pn ) log
n
n
n

adic

1
1
Hn ( p1 ,..., pn ) Hn ,...,
n
n
Proprietatea aceasta arat c entropia este maxim atunci cnd
probabilittile p1, , pn sunt egale. Orice cmp de probabilitate cu
probabilitti asociate evenimentelor elementare componente altfel dect
egale este redundant.
4. Are loc egalitatea
Hn+1( p1, , pn, 0) = Hn( p1, , pn)
ceea ce arat c dou cmpuri de probabilitate care difer prin adugarea
unui eveniment, i acela imposibil au aceeai nedeterminare.
Entropia relativ
Se admite c o variabil aleatoare are distributia teoretic p. Apoi, cum se va
vedea n capitolele despre codare, variabila aceasta se poate reprezenta printrun cod caracterizat n mare msur de entropia H(p). Dar, datorit unor
informatii incomplete, distributia p nu este cunoscut i de aceea se foloseste o
distributie diferit q. n acest caz, codul va fi afectat negativ n performantele
lui. Cantitatea care cuantific diferenta de performant este notat uzual cu
D(p||q) i este cunoscut sub numele de entropia relativ, n unele lucrri sub
numele de i-divergen.
Definitie. Entropia relativ sau distana Kullback-Leibler ntre dou functii de
probabilitate p(x) i q(x) se defineste ca

p( x)
p ( x)
D ( p || q ) p( x) log
E p log
q( x)
q ( x)
x

14
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

De observat c entropia relativ nu este simetric n argumentele sale i c al


doilea argument, q apare numai la numitor.
Cteva proprietti ale entropiei relative:
1. Nenegativitate. Entropia relativ este totdeauna nenegativ, D(p||q) 0, cu
egalitate dac i numai dac p = q.
2. Semicontinuitate inferioar. Pentru un ir de functii de probabilitate (pn, qn),
n = 1, 2, , care converg ctre (p, q),
lim inf n D( pn || qn ) D( p || q)
Dac q(x) > 0 pentru orice x X , atunci D(p||q) este continu pentru
perechea (punctul) (p, q).
3. Convexitate. Pentru orice [0, 1] i pentru orice p1, q1, p2, q2
D( p1 || q1 ) (1 ) D ( p2 || q2 ) D(p1 (1 ) p2 || q1 (1 )q2 )
4. Inegalitatea partiiei. Dac A = {A1, , AK} este o partitie a lui X, adic X
=

i 1

Ai i i j Ai A j i se definesc
pA(i) =

p( x) , i = 1, , K

xAi

qA(i) =

q( x) , i = 1, , K

x Ai

atunci
D(p||q) D(pA||qA)
cu egalitate dac i numai dac p(x/x Ai) = q(x/x Ai), x Ai, pentru toi
indicii i.
5. Inegalitatea procesrii datelor. Dac W este o matrice stochastic |X||Y|
(cu liniile avnd suma elementelor egal cu unitatea) i dac se definesc
p W(x, y) = p(x)W(y/x), x X, y Y
q W(x, y) = q(x)W(y/x), x X, y Y
pW(y) = p W ( x, y ) ,
y Y
xX

qW(y) =

q W ( x, y ) ,

yY

xX

atunci
D(p||q) D(pW||qW)
cu egalitate dac numai i numai dac probabilitatea a posteriori a lui x
cnd se d y este aceeai pentru orice y n ambele distribuii combinate
P W i Q W.
6. Inegalitatea lui Pinsker. Distana variaional ntre dou functii de
probabilitate
d ( p, q ) | p( x ) q ( x) |
x X

este mrginit superior de entropia relativ a celor dou funcii de


probabilitate n sensul c
1
D(p||q) d2(p, q)
2

15
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

7. Identitatea paralelogramului. Pentru funciile de probabilitate p, q i r


pq
pq
pq

D(p||r) + D(q||r) = 2 D
|| r D p ||
D q ||

2
2
2

Acum, o inegalitate foarte util n demonstrarea relaiilor de mai sus:


Inegalitatea log-sum. Fie {ai }in1 i {bi }in1 secvene de numere nenegative. Fie
n

a i 1 ai i b i 1 bi . Atunci
n

ai

a
b
i 1
i
cu egalitate dac i numai dac ai/bi = c pentru toi indicii i, cu c o constant.
Demonstratie: Mai nti se observ c:
este suficient a demonstra inegalitatea pentru ai > 0. Ignorarea indicilor i
pentru care ai = 0 nu schimb partea din stnga a inegalittii i poate numai
s fac mai mare partea din dreapta prin posibila reducere a sumei b;
este suficient a demonstra inegalitatea pentru bi > 0, altminteri, partea
stng este + i nu mai este nimic de demonstrat;
este suficient a demonstra inegalitatea pentru a = b. Inegalitatea este
invariant la scalarea numerelor bi deoarece
n
n
a
a
1
a
a
1
ai log i ai log i ai log i a log
a log a log

bi i 1
bi

i 1
bi

a log b
i

a log

Asadar, este suficient ca pentru {ai }in1 i {bi }in1 cu ai, bi > 0 i a = b s se arate
c
n
a
ai log i 0

bi
i 1
cu egalitate dac i numai dac ai = bi pentru orice i = 1, , n. Se reamintete
faptul c
log t t 1 pentru t > 0
cu egalitate numai pentru t = 1. Mai departe, punnd ti = ai/bi, se obtine
succesiv
n
n
n
n
a
ai log i ai log ti ai (ti 1) (bi ai )

bi
i 1
i 1
i 1
i 1
ceea ce dovedete inegalitatea urmrit, concomitent cu conditia de egalitate.
Surse de informatie multiple
n continuare, fie cmpurile
A ... An
B ... B m
i Bm = 1

An = 1
p1 ... p n
q1 ... q m
ambele finite, independente, complete, adic cu sumele probabilittilor egale cu
unitatea

16
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1 i

k 1

i 1

Probabilitatea producerii concomitente a evenimentelor Ak i Bi este n acest caz


ki = pk qi. Totalitatea evenimentelor de forma (Ak, Bi), 1 k n , 1 i m i
probabilittile atasate ki formeaz un cmp de probabilitate notat cu AnBm.
Dac An i Bm sunt dou cmpuri de probabilitate finite independente atunci
Hnm(AnBm) = Hn(An) + Hm(Bm)
Demonstratia urmeaz relatia de definitie a entropiei
n

Hnm(AnBm) = ki log ki p k qi (log p k log qi )


k 1 i 1

k 1 i 1

p k log p k qi log qi = Hn(An) + Hm(Bm)


k 1

i 1

Dac cele dou cmpuri nu sunt independente, atunci probabilitile evenimentelor (Ak , Bi), 1 k n , 1 i m se calculeaz diferit: ki = pk qi/k, cu qi/k
probabilitatea evenimentului Bi conditionat de Ak.
Dac se defineste mai nti o entropie conditionat de evenimentul/simbolul Ak
m

Hm(Bm/Ak) = qi / k log qi / k
i 1

apoi se defineste entropia conditionat cmp/cmp


n

Hm(Bm/An) =

Hm(Bm/Ak)

k 1

rezult imediat proprietatea:


Dac An i Bm sunt dou cmpuri de probabilitate finite oarecare atunci
Hnm(AnBm) = Hn(An) + Hm(Bm/An)
exprimat n cuvinte, nedeterminarea asociat celor dou cmpuri rezult din
nedeterminarea unui cmp la care se adaug nedeterminarea celuilalt cmp
condiionat de primul cmp de probabilitate.
Fiind date dou cmpuri de probabilitate finite An i Bm, are loc inegalitatea
Hm(Bm/An) Hm(Bm)
Demonstratia apeleaz din nou la inegalitatea lui Jensen pentru f(x) = xlogx,
xk = qi/k i k = pk, 1 k n . n prima faz
n
n
n

pk qi / k log qi / k pk qi / k log pk qi / k qi log qi


k 1
k 1

k 1
i dup nsumarea dup indicele i
n

pk qi / k log qi / k qi log qi
k 1

i 1

i 1

ceea ce nu este altceva dect


Hm(Bm/An) Hm(Bm)
n cuvinte, cunoasterea unor rezultate din cmpul An nu poate duce dect la
diminuarea nedeterminrii cmpului Bm.
Dac An i Bm sunt dou cmpuri de probabilitate finite oarecare atunci

17
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Hnm(AnBm) Hn(An) + Hm(Bm)


ceea ce rezult din dou proprietti de mai sus.
Fiind date dou cmpuri de probabilitate finite oarecare An i Bm, atunci
Hn(An/Bm) = Hm(Bm/An) + Hn(An) Hm(Bm)
Pentru demonstratie, se scriu relatiile
Hnm(AnBm) = Hn(An) + Hm(Bm/An)
Hnm(AnBm) = Hm(Bm) + Hn(An/Bm)
i de aici rezult proprietatea.
Cmpurile de probabilitate An i Bm pot fi surse de informatie, iar evenimentele
componente pot consta n generarea de simboluri purttoare de informatie.
Sursele discutate pn acum sunt din categoria celor fr memorie, adic la
fiecare generare a unui nou simbol, probabilittile de aparitie a unui simbol sau
a altuia sunt aceleasi, indiferent de simbolul/simbolurile generat(e) anterior.
n continuare modificm notatiile deoarece numrul de simboluri/evenimente
(trecute pn acum la indice) nu mai are foarte mare relevan. Schimbarea
notatiilor aduce i o facilitare a scrierii unor proprietti legate de sursele
multiple, surse pentru care mulimile alfabetice sunt produsul cartezian al mai
multor multimi alfabetice simple. Pe baza celor prezentate relativ la perechile
de surse simple, se poate stabili acum, recursiv, entropia unei surse multiple.
Fie n surse simple fr memorie S1, S2, , Sn cu numrul de simboluri q1, q2, ,
qn. Din aproape n aproape se poate stabili relatia
H(S1, S2, , Sn) = H(Sn/S1, S2, , Sn1) + H(S1, S2, , Sn1) =
= H(Sn/S1, S2, , Sn1) + H(Sn1 /S1, S2, , Sn2) + + H(S1) =
n 1

H ( S ni / S1 , S 2 ,..., S ni 1 )
i 0

ntreaga demonstratie fiind o chestiune de calcul.


Relatia ultim are o consecint important exprimat de relatia
H(Sn/S1, S2, , Sn1) H(Sn)
care spune c entropia unei surse nu crete niciodat prin condiionare.
Surse de informatie cu memorie. Modelul Markov
Aa cum s-a mentionat, sursele de pn acum au fost considerate fr memorie,
adic probabilittile ataate simbolurilor sursei nu depindeau n nici un fel de
simbolurile generate anterior. Aceast situatie nu corespunde dect unui numr
limitat de surse din lumea real. Uzual, exist o legtur, o conditionare ntre
simbolurile succesive generate de sursele de informatie. irurile de caractere
din limba englez sunt ilustrative n acest sens : dup grupul th foarte
probabil urmeaz e, o, r, a, u, i; grupului ac i succede mai
curnd c, t, q, h i mai rar, dac nu extrem de rar alte caractere. Efecte
i determinri similare pot fi observate n orice limb scris, n particular n
limba romn. Asadar, probabilitile de producere a unor simboluri noi depind
n oarecare msur de contextul simbolurilor produse deja. Pentru astfel de
surse sunt necesare modele perfecionate care s transforme sursa ntr-una cu un

18
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

anumit gen de memorie. Probabilitile asociate simbolurilor, constante n cazul


surselor fr memorie trebuie nlocuite cu probabilitti conditionate. Modelul
cel mai utilizat pentru sursele cu memorie este modelul Markov.
Modelul Markov de ordinul m introduce n calcule probabilitti pentru simbolul
curent care depind de m simboluri generate de surs anterior. O surs Markov
de ordinul m cu un alfabet de q simboluri are probabilittile conditionate de
forma
Pr(si / s j1 , s j 2 ,..., s j m ) Pr( si / S m )
scris pentru toti indicii i, j1 , j 2 ,..., j m {1, 2,..., q} , n care S m noteaz starea
curent a sursei. Aceast stare curent este descris de secventa imediat
precedent de simboluri generate. Pentru n > m, relatia de condiionare de mai
sus se scrie
Pr(si / s j1 , s j 2 ,..., s jn ) Pr(si / s j1 , s j2 ,..., s j m ) Pr( si / S m )
i pentru m = 0 , deci pentru surse fr memorie, aceasta devine
Pr(si / s j1 , s j 2 ,..., s j n ) Pr( si )
pentru orice n > m = 0 .
Cu un alfabet de q simboluri, o surs Markov de ordinul m are qm stri distincte
cu qm+1 probabilitti de trecere (de tranziie) de la o stare la alta. Un graf al
tranziiilor ilustreaz foarte bine o asemenea surs.
Pe un exemplu, cel al unei surse Markov de ordinul 2 cu alfabet binar, se poate
constata c sunt patru (22) stri, 00, 01, 10, 11 i opt (23) tranziii posibile, cu
probabilittile respective de producere, de pild
Pr(0/S2 = 00) = Pr(0/00) = 0,8
Pr(1/S2 = 11) = Pr(1/11) = 0,8
Pr(0/11) = Pr(1/00) = 0,2
Pr(0/01) = Pr(0/10) = Pr(1/01) = Pr(1/10) = 0,5
Graful tranziiilor acestei surse este cel din figur.

19
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Cum lucreaz sistemul se poate exemplifica pe un caz particular. Se consider


secventa observat 00100110 i starea iniial 00. Secventa de stri ale
sistemului este 00 00 00 01 10 00 01 11 10 i se obtine prin deplasarea
progresiv cu o pozitie spre dreapta a unei ferestre de lrgime 2, n lungul
secventei de simboluri generate, completat n prima parte cu starea initial a
sistemului (scris cu liter distinct).
Evenimentele succesive se descriu astfel:
Starea initial 00 i generarea primului 0 produce tranzitia n starea 00;
Starea 00 i generarea urmtorului 0 produce tranzitia n starea 00;
Starea 00 i generarea lui 1 produce tranzitia n starea 01;
Starea 01 i generarea lui 0 produce tranzitia n starea 10 .a.m.d.
Un sistem Markov de ordinul m este definit de o matrice P a probabilittilor de
tranzitie astfel:
1. Se enumer strile, Sm;1, Sm;2, , Sm;n unde n = qm este numrul de stri ale
sistemului. Matricea P are dimensiunile nn i elementul din pozitia (i, j),
linia i i colana j este probabilitatea ca pornind din starea S m; i s j1 s j2 ...s jm ,
simbolul urmtor generat s fie si i, n consecin, starea urmtoare a sursei
s fie S m; j s j2 s j3 ...s jm si . Asadar pij Pr( S m; j / S m;i ) .
2. Suma probabilittilor pe fiecare linie a matricii P trebuie s fie egal cu
unitatea.
3. Pentru trecerea de la S m;i la S m;j n urma a k tranzitii succesive i pentru
generarea a k simboluri, matricea probabilittilor de trecere este exact P k.
Pentru exemplul de mai devreme matricea discutat este
0
0,8 0,2 0
0
0 0,5 0,5

P
0,5 0,5 0
0

0 0,2 0,8
0
cu strile mentionate acolo i elementele pij Pr( S m; j / S m;i ) .
Sursele Markov ergodice reprezint o clas important de surse Markov. O
surs Markov ergodic este una care observat timp ndelungat genereaz o
secvent de simboluri care este tipic. Cele mai multe surse Markov sunt
ergodice. O surs neergodic este dat n figura alturat.

20
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Dup un timp suficient de ndelungat aceast surs eueaz n secvena


000000 sau n secvena 111111 care nu sunt tipice. Mai mult dect att,
odat ajuns n starea 00 sau n starea 11 sursa intr ntr-o fundtur fr
iesire deoarece Pr(1/00) = 0 i Pr(0/11) = 0. Aceasta este o surs Markov tipic
neergodic.
Prin definitie o surs Markov este ergodic dac dup un numr finit de pai
exist posibilitatea de a trece, cu probabilitti nenule, n orice stare.
O proprietate important a surselor Markov ergodice este staionaritatea.
Distributia strilor sistemului dup un numr foarte mare de tranzitii este
independent de starea initial. Starea sistemului/sursei tinde ctre o stare
numit stationar, independent de starea de pornire.
Distribuia stationar a strilor unei surse ergodice este caracterizat de
matricea T = P k i se atinge atunci cnd k . Cu alte cuvinte tranzitia de la
starea S m;i la starea S m;j n k pai se apropie de starea stationar dac numrul k
devine din ce n ce mai mare. Mai mult, starea final S m;j este mereu aceeai i
independent de starea de plecare S m;i. Prin urmare matricea nn
t1 t2 ... tn
t t ... t
1
2
n
lim k P k T
... ... ... ...

t1 t2 ... tn
are liniile identice. Matricea T este numit matricea de distributie stationar a
strilor i este deplin determinat de una din liniile ei.
n exemplul de mai devreme
0,1
0,64 0,16 0,1
0,25 0,25 0,1 0, 4

P2 P P
0,4
0,1 0, 25 0, 25

0,1 0,16 0,64


0,1
0,1
0,16
0,562 0,178
0,25
0,1 0,205 0,445
3
2

P P P
0, 445 0,205
0,1
0,25

0,1
0,178 0,562
0,16
i urmrind puterile succesive ale matricei P, se poate spune c sunt semne de
convergen.
Evaluarea elementelor din matricea T prin continuarea calculelor pentru puteri
k din ce n ce mai mari nu este tocmai productiv i nici foarte precis. Calea de
determinare a elementelor matricii T este alta, i anume aceea care tine seama
c
T lim k P k 1 lim k P k P T P

21
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

ceea ce este un sistem liniar de ecuatii n elementele matricii de distributie


stationar a strilor, sistem care produce soluia exact. Scrierea ecuatiei n
form transpus
PTTT = TT
este mai convenabil deoarece din aceasta se obtine imediat
t1 t1
t t
2
2
PT
... ...

tn tn
un sistem n necunoscutele t1, t2, , tn care trebuie rezolvat cu ndeplinirea
conditiei t1 t 2 ... t n 1 .
Exemplul de mai devreme produce
5
2
t1 t 4
0,357 i t 2 t 3
0,143
14
14
adic probabilittile asociate strii stationare sunt
Pr(00) = Pr(11) = 0,357 i Pr(01) = Pr(10) = 0,143
Entropia unei surse Markov se calculeaz pornind de la aceleai relatii
prezentate la sursele fr memorie. Este natural ca n locul probabilittilor
permanent constante ale simbolurilor din cazul surselor fr memorie, n cazul
surselor Markov s fie folosite probabilittile conditionate de simbolurile
generate anterior. Dac sursa Markov de ordinul m cu q simboluri este n starea
S m (s j1 s j2 ...s jm ) atunci probabilitatea de aparitie a simbolului si ca simbol
urmtor este Pr(si / S m ) i informatia purtat de acel simbol este
1
I ( si / S m ) log
Pr( si / S m )
Informatia medie pe simbol este atunci
q

H ( S / S m ) Pr(si / S m ) I ( si / S m )
i 1

O mediere pe toate cele qm stri posibile produce entropia sursei


H ( S ) Pr( S m ) H ( S / S m )
Sm

Pr(S m ) Pr(si / S m ) I ( si / S m ) Pr(S m ) Pr( si / S m ) I ( si / S m )


Sm

S m i 1

i 1

i, n cele din urm

H ( S ) Pr(S m si ) log
S m 1

1
Pr(si / S m )

cu operatorul de sumare

i cu S m si ( s j1 s j2 ...s jm si ) .

S m 1

S m i 1

22
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

si
0
1
0
1
0
1
0
1

S2

Pr(si / S 2 )

0,8
0,2
0,5
0,5
0,5
0,5
0,2
0,8

00
01
10
11

Pr(S 2 )
5/14
2/14
2/14
5/14

Pr(S 2 si )

4/14
1/14
1/14
1/14
1/14
1/14
1/14
4/14

Pentru exemplul enuntat mai sus i reluat de mai multe ori, tabelul alturat
faciliteaz evaluarea entropiei sistemului i conduce la entropia sursei
1
H ( S ) Pr(S 2 si ) log

Pr( si / S 2 )
S3
4
1
1
1
1
1
4
1
log
log
log
... log
0,81
14
0,8 14
0,2 14
0,5
14
0,8
msurat n biti/simbol.
Un model alternativ pentru aceeai surs este sursa adjunct.
Sursa adjunct este sursa fr memorie, cu simboluri mutual independente,
specificate deplin de probabilittile Pr(s1 ), Pr(s2 ),..., Pr(sq ) . Fa de o surs

oarecare S, sursa adjunct S este echivalenta acesteia dar fr memorie i


calculul entropiei H (S ) se face cu formula de la sursele de tipul respectiv.
Pentru o surs Markov de ordinul m, sursa adjunct S se defineste prin
evaluarea probabilittilor P( si ) Pr(si / S m ) Pr(S m ) . Dat fiind dependena
Sm

simbolului curent de starea sistemului generator, conform unei discuii din


prima parte a sectiunii de fa
H (S ) H (S )
cu egalitate atunci cnd simbolurile produse sunt independente statistic de
starea curent a sistemului. Aadar, la sursele Markov cunoasterea simbolurilor
precedente reduce incertitudinea asupra simbolului care urmeaz a fi generat.
Ca de obicei, cunostintele n plus diminueaz ignorana.
Revenind la sursa Markov de ordinul 2 din exemplul de mai devreme, s
stabilim sursa adjunct. Se poate calcula Pr(0) fie pe calea
P(0) Pr(0 / S 2 ) Pr(S 2 )
S2

Pr(0 / 00) Pr(00) Pr(0 / 01) Pr(01) Pr(0 / 10) Pr(10) Pr(0 / 11) Pr(11) 0,5
fie pe calea alternativ
Pr(0) Pr(S 2 ) Pr(00) Pr(01) 0,5
S

Analog sau prin diferent Pr(1) = 0,5. Rezult H ( S ) 1 i inegalitatea ateptat

23
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

H ( S ) 0,81 H ( S ) 1
n continuare se discut calitatea unor modele variate ale surselor de informatie
foarte generale.
Fie
~
H ( S m ) H (S / S m ) H (S / S1 , S 2 ,..., S m )
entropia unei surse reale, evaluat pe baza unui model Markov de ordinul m.
Cazul particular H ( S 0 ) corespunde unui model de ordinul 0, deci al unei surse
fr memorie. Pe baza unui rezultat obtinut relativ la sursele multiple este de
observat c
H ( S m ) H (S m1 ) ... H (S 1 ) H ( S 0 )
i, mrind pe m, se obtine
H ( S ) lim m H (S m )
care poart numele de entropia real a sursei. Pentru cazul unui model Markov
perfect de ordinul k se poate scrie
H ( S k ) H (S k 1 ) H (S k 2 ) ... H ( S )
n unele cazuri este mai la ndemn a se lucra cu blocuri de simboluri i nu cu
simboluri simple, izolate. Se nate astfel extensia unei surse de informatie.
Dac sursa S genereaz simbolurile {s1 , s 2 ,..., s q } atunci extensia ei de ordinul
n, notat Sn este o surs cu qn simboluri { 1 , 2 ,..., q n } , secvene distincte de
lungime n alctuite cu simbolurile sursei S. Dac sursa S este fr memorie,
probabilitile acestor blocuri sunt
Pr( i ) Pr(si1 ) Pr(si 2 )...Pr( sin )
iar dac sursa este foarte general
Pr( i ) Pr(sin / si1 , si 2 ,..., si ( n 1) ) Pr(si ( n 1) / si1 , si 2 ,..., si ( n 2) )... Pr(si1 )
Dac sursa S este lipsit de memorie atunci extensiile ei sunt toate fr
memorie.
Dac sursa originar este markovian de ordinul m atunci extensia ei de ordinul
n este markovian de un ordin egal cu primul ntreg superior sau egal
numrului m/n.
Fie ca exemplu sursa S = {0, 1} cu q = 2. Extensia a doua se prezint sub forma
S 2 { 1 00, 2 01, 3 10, 4 11}
iar extensia urmtoare, a treia, are opt simboluri
S 3 { 1 000, 2 001, 3 010, 4 011,

5 100, 6 101, 7 110, 8 111}


Dac sursa S este fr memorie, atunci extensia ei Sn este tot fr memorie.
Dac S este o surs Markov cu m = 2 atunci S 2 este o surs Markov de ordinul
1. Evaluarea probabilittii Pr(101) se face n cazul sursei fr memorie cu
relatia Pr(101) = Pr(1)Pr(0)Pr(1). n cazul Markov, probabilitatea aceluiai
simbol compus se calculeaz pe calea mai complicat Pr(101) = Pr(1/10)Pr(10)

24
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

= Pr(1/10)Pr(0/1)Pr(1) unde n fiecare ir de simboluri simbolul cel mai din


dreapta este cel mai recent generat. Descompunerea Pr(101) = Pr(1/01)Pr(01)
este corect matematic, dar nu este de valoare practic deoarece probabilitatea
condiionat care apare n relatie include dependena de simboluri viitoare care
nu sunt accesibile dect mai trziu.
Revenind n cadrul general, pentru o surs fr memorie, conform relatiei
pentru entropia surselor multiple (dar identice) dat mai devreme, se evalueaz
H(Sn) = H(S1, S2, , Sn) =
= H(Sn/S1, S2, , Sn1) + H(Sn1 /S1, S2, , Sn2) + + H(S2/S1) + H(S1) =
= H(Sn) + H(Sn1) + + H(S2) + H(S1) = nH(S)
Se propune ca exemplu de calcul extensia a doua a unei surse cu trei simboluri
i probabilittile 0,5, 0,25, 0,25.
Fie acum o surs Markov S de ordinul m. Entropia extensiei ei de ordinul n se
calculeaz pas cu pas pornind de la
~
H (S n ) H (S n / S m )
Apoi
~
~
H ( S n ) H ( S n / S n 1 ) H ( S n 1 / S n 2 ) ... H ( S1 )
~
care conditionat de S m se transform n
~
~ ~
~ ~
~
H ( S n / S m ) H ( S n / S m S n 1 ) H ( S n 1 / S m S n 2 ) ... H ( S1 / S m )
~ ~
Expresia H ( S i / S m S i 1 ) definete entropia unei surse Markov de un ordin egal
cu m + i 1. Dar sursa Markov are ordinul m aa nct
~ ~
~
H ( S i / S m S i 1 ) H ( S i / S i m , S i m 1 ,..., S i 1 ) H ( S i / S m ) H ( S )
i n final
~
H (S n ) H (S n / S m )
~
~
~
~
H (S n / S m ) H (S n 1 / S m ) ... H ( S1 / S m ) nH ( S / S m ) nH ( S )
ntr-un exemplu tratat mai devreme (sursa Markov de ordinul 2) H(S) = 0,81.
Iat o interpretare a extensiei S2 i a entropiei acestei extensii. Deoarece m = 2
i n = 2 sursa S2 este markovian de ordinul 1 n raport cu simbolurile
i (s i1 s i 2 ) . Probabilittile condiionate ale sursei extinse sunt
Pr( i / j ) Pr( si1si 2 / s j1s j 2 ) Pr( si1 / s j1s j 2 ) Pr(si 2 / s j1s j 2 )
i este destul de clar c matricea P2 este aceea care descrie i tranziiile ei.
Astfel, H ( S 2 ) 2 H ( S ) 2(0,81) 1,62 biti/simbol (dublul entropiei sursei
simple).
n stabilirea unui ordin potrivit pentru modelul Markov al unei surse reale care
este vdit cu memorie, este de interes o relatie ntre entropiile H(Sn) i H(S/Sn1)
care poate servi la apropierea asimptotic de entropia real a sursei, H ( S ) .
O cale de a face modelul mai adecvat la o surs dependent de toate simbolurile
generate anterior, orict de multe, este a defini un model de ordinul m i cu
~
relatia H ( S / S m ) H ( S m ) , prin cresterea treptat a lui m, se poate ajunge
orict de aproape de entropia H ( S ) . Functia H ( S m ) este descresctoare cu m

25
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

astfel nct aceasta ar putea fi un sondaj relativ ct de sczut poate ajunge


valoarea entropiei reale H ( S ) . Efortul de calcul este ns foarte mare
deoarece complexitatea modelului Markov crete exponenial cu ordinul m.
O alternativ este evaluarea entropiei H(Sn) ca estimare a entropiei H ( S ) .
Intuitiv, evalurile nlnuite
Pr(si1, si 2 ,..., sin ) Pr( sin / si1, si 2 ,..., si ( n 1) ) Pr(si ( n 1) / si1 , si 2 ,..., si ( n 2) )... Pr(si1 )
includ i efectul istoriei sursei. Urmeaz
~
~
H ( S n ) H ( S n / S n 1 ) H ( S n1 / S n 2 ) ... H ( S1 )
H ( S n1 ) H ( S n 2 ) ... H ( S 0 )
de unde rezult
H ( S n ) nH ( S n1 )
i dac se utilizeaz un rezultat de mai sus, H ( S n ) H ( S n ) / n , se obtine
rezultatul important
H ( S n ) H (S n1 )
care d o limitare inferioar a entropiei pe simbol, simbol multiplu de ordinul n.
Cu rezultatul ultim i cu relatia de mai sus se poate scrie succesiv
H ( S n ) H ( S n1 ) H ( S n1 )

H (S n )
H ( S n1 )
n
n
nH (S ) H ( S n ) nH ( S n1 )
H (S n )

H ( S n ) H (S n1 )

n
n 1
Rezult c entropiile combinate pe simbol sunt n relatia
H ( S n ) H ( S n 1 )
Dar H ( S ) lim
H ( S n ) aa nct lim
H (S n ) H ( S ) .
n

Aceasta este o modalitate mult mai la ndemn de a estima H ( S ) . Entropiile


H ( S n ) se evalueaz mult mai uor dect H ( S m ) . Mai mult, pentru n din ce n
ce mai mare, probabilittile atasate unor iruri de lungime n, Pr(si1 , si 2 ,..., sin ) se
difereniaz. Unele se situeaz la valori semnificative i constant semnificative,
altele tind ctre valori apropiate de zero. Apare aadar o clas a mesajelor de
lungime n foarte probabile i o alt clas a mesajelor de aceeai lungime, care
sunt, dimpotriv, foarte putin probabile.
ntr-un exemplu simplu, cel al unei surse fr memorie, cu alfabetul S = {0,1},
i probabilitile simbolurilor P(0) = 0,75 i P(1) = 0,25, sunt produse secvene
de zerouri i unitti binare variate ntre care irul de lungime n format numai
din 0 i, asemenea, sirul de lungime n format numai din 1, cu probabilittile
(0,75)n, respectiv (0,25)n. Pentru n = 4 probabilittile sunt 3,2101 i 3,9103,
iar pentru n = 16 probabilittile evolueaz ctre 1,0102 i 2,61010, asadar

26
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

sirul alctuit numai din 0 devine comparativ din ce n ce mai probabil pe cnd
sirul alctuit numai din 1 devine din ce n ce mai puin probabil. Alte mesaje
arbitrare au probabilitti de forma C nni (0,75)i(0,25)ni, cu i numrul zerourilor
din secvena-mesaj. Expresia probabilittilor este bernoullian, dat fiind
ordinea variat n care pot aprea zerourile i unittile binare. Variatia
probabilittilor cu cresterea lui i de la 0 la n este mai nti cresctoare apoi
descresctoare, cum se ntmpl obinuit cu termenii unei dezvoltri binomiale.
Este momentul s fie aduse acum n discutie detaliile comportrii surselor
extinse la n foarte mare, acea proprietate de echipartitie asimptotic, cunoscut
mai ales n versiunea prescurtat, AEP Asymptotic Equipartition Property.
Legea numerelor mari i AEP (Asymptotic Equipartition Property)
Legea numerelor mari afirm c pentru variabilele aleatoare X1, X2, ..., Xn
independente i identic distribuite (i.i.d.), suma
1 n
Xi
n i 1
este apropiat de valoarea medie E[X].
AEP mai nseamn i c pentru variabile aleatoare i.i.d. valoarea
1
1
log
n
p( X 1, X 2 ,..., X n )
este apropiat de entropia H(X).
Exprimat altfel, faptul poate fi scris ca
p(x1, x2, , xn) 2 nH
Exemplul 1: Fie X {0, 1} cu p(1) = p, p(0) = q. Probabilitatea secventei i.i.d.
X
n
X
X , X , , X este p i q i . Dac n particular, p(0) = 0,7 i p(1) = 0,3
1

probabilittile secvenelor de lungime n = 10 sunt trecute n tabelul alturat.


Secvena
0000000000
0000000001
0000000011
0000000111
0000001111
0000011111
0000111111
0001111111
0011111111
0111111111
1111111111

Probabilitatea
secvenei
0,0282
0,0121
0,005
0,0022
0,00095
0,0004
0,00017
0,000075
0,000032
0,0000138
0,0000059

Numrul
secvenelor
1
10
45
120
210
252
210
120
45
10
1

27
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Probabilitatea
secvenelor
0,0282
0,121
0,225
0,264
0,1995
0,1008
0,036
0,009
0,00144
0,000138
0,0000059

Este vizibil c nu toate cele 2n secvene de lungime n au aceeai probabilitate.


Secventele cu numrul de unitti binare de aproximativ np au cea mai mare
probabilitate total: acestea sunt tipice. Proprietatea aceasta devine mai evident
pe msur ce n creste.
Care este probabilitatea p(X1, X2, ..., Xn) a rezultatului X1, X2, ..., Xn? Se
dovedeste c foarte probabil p(X1, X2, ..., Xn) are o valoare de cca. 2 nH. Adic
Pr{(X1, X2, ..., Xn)| p(X1, X2, ..., Xn) = 2 n(H + )} 1
Deoarece entropia este o msur a surprizei la observarea rezultatului unei
variabile aleatoare, se poate aprecia aceast regul n sumar ca: Aproape toate
evenimentele sunt la fel de surprinztoare. Altfel spus, cele mai multe
evenimente se produc cu o probabilitate n relatie cu entropia ansamblului.
n exemplul particular de mai sus, se afirm simplu c numrul de unitti
observate este apropiat de np (cu mare probabilitate) i toate aceste secvente au
grosier aceeai probabilitate. Aceasta nu este altceva dect legea numerelor
mari.
Convergena n probabilitate: nainte de a ajunge la teorem este necesar o
discutie despre convergena n probabilitate.
Exist o varietate de moduri n care se trateaz convergena n sfera
probabilittilor. Exist o convergen n distributie (ca la teorema limit
central), exist convergena aproape sigur (care este foarte tare), exist
convergena n media ptratic i exist convergena n probabilitate. Se pot
consuma sptmni pentru studiul semnificatiei acestor fapte cu implicatii
reciproce. Totui, pentru moment este suficient o oprire asupra convergentei n
probabilitate.
Definitia 1. O secvent X1, X2, , Xn este convergent la X n probabilitate
dac Pr[|X Xn| > ] 0 odat cu n .
Rememornd definitia convergentei de la siruri, se poate spune: pentru orice >
0 i pentru orice > 0 exist un n0 astfel nct P[|X Xn| < ] > 1 oricare ar
fi n > n0.
Exemplul 2. Fie Xi (i = 1, 2, , n) o secven de variabile aleatoare i.i.d. i fie
1 n
S n X i media de selecie. Fie S = E[X] media real, teoretic. Atunci (din
n i 1
nou legea numerelor mari n varianta slab) P[|Sn S| > ] 0 odat cu n .
Mai pe scurt, se spune Sn S n probabilitate.
O modalitate de apreciere a convergentei o constituie inegalitatea lui Markov:
pentru o variabil aleatoare pozitiv i pentru orice > 0, are loc inegalitatea
P[X ] E[X]/.
De aici se poate deriva inegalitatea lui Cebev: pentru o variabil aleatoare Y
cu media i dispersia 2, are loc inegalitatea P[|Y | > ] 2/2.
Se poate arta apoi convergenta mediei de selectie (legea numerelor mari n
varianta slab).
Acum despre AEP Asymptotic Equipartition Property:

28
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Teorema 1 (AEP). Dac X1, X2, ..., Xn sunt variabile aleatoare i.i.d. cu
1
distribuia p(x), atunci log p( X 1 , X 2 ,..., X n ) H ( X ) n probabilitate.
n
Demonstratie: Deoarece Xi (i = 1, 2, ..., n) sunt variabile aleatoare i.i.d., la fel
sunt i log p(Xi). Din independen i WLLN Weak Low of Large Numbers
1
1
log p ( X 1 , X 2 ,..., X n ) log p( X i ) E[log p( X )] H ( X )
n
n i
n probabilitate.
Mulimea secventelor care apar cel mai frecvent (potrivit legii probabilistice a
variabilei aleatoare) sunt secvene tipice. Tipicalitatea este definit astfel:
Definiia 2. Multimea tipic A(n ) n raport cu distribuia p(x) este mulimea de
secvente x1, x2, ..., xn Xn cu proprietatea
2 n( H ( X ) ) p( x1 , x2 ,..., xn ) 2 n( H ( X ) )
Aadar secvenele tipice apar cu o probabilitate care este n apropierea
numrului 2 nH(X).
Exemplul 3. Revenim la primul exemplu, H(X) = 0,88129 i nH(X) = 8,8129.
Atunci 2nH(X) = 0,00223 ceea ce este foarte aproape de probabilitatea unei
secvene cu trei unitti binare, restul zerouri.
O multime tipic A(n ) are urmtoarele proprieti:
Teorema 2.
1. Dac ( x1, x2 ,..., xn ) A( n ) atunci
1
H(X) p( x1 , x2 ,..., xn ) H(X) +
n
2. Pentru n suficient de mare, Pr{ A(n ) } 1 .
3. | A( n ) | 2n ( H ( X ) ) , cu |A| numrul de elemente din multimea A.
4. Pentru n suficient de mare, | A( n ) | (1 )2n( H ( X ) ) .
Interpretri: Din proprietatea 1: aproape toate elementele dintr-o multime tipic
sunt practic echiprobabile. Din proprietatea 2: mulimea tipic apare cu o
probabilitate apropiat de unitate (de aceea este denumit tipic!). Din
proprietile 3 i 4: numrul de elemente ale unei multimi tipice este apropiat de
2nH(X).
Demonstratie.
1. Se ia (1/n) i logaritmul (n baza 2) din relatia de definiie a multimii
tipice:
1
1
1
( n( H ( X ) )) log p( x1 , x2 ,..., xn ) ( n( H ( X ) ))
n
n
n
2. Din definiia multimilor tipice, AEP i definitia convergentei n
probabilitate: Pr{( X 1 , X 2 ,..., X n ) | ( X 1 , X 2 ,..., X n ) A( n) } 1 concomitent cu
n . Aceasta nseamn c pentru orice > 0 exist un n0 astfel nct

29
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1
pentru n n0 are loc Pr{| log p( X 1 , X 2 ,..., X n ) H ( X ) | } 1 . Se
n
pune = i se obtine proprietatea 2.
3. Succesiv, 1 = p ( x) p ( x ) 2 n ( H ( X ) ) = 2 n ( H ( X ) ) | A( n ) | .
x X n

x A( n )

x A( n )

4. Pentru n suficient de mare, Pr{ A(n ) } 1 i de aici 1 Pr{ A(n) }

n ( H ( X ) )

= 2 n( H ( X ) ) | A( n ) | .

x A( n )

Aceste detalii privind proprietatea de echipartitie asimptotic (AEP) sunt de


interes aparte n compresia de date.
Entropia diferenial
O variabil aleatoare continu (pentru uzul acestui curs) este una pentru care
functia de distributie F(x) este continu: nu exist salturi (iesiri/valori discrete).
Definita 1. Entropia diferential h(x) a unei variabile aleatoare continue X cu
densitatea de probabilitate f(x) i suportul S este
h( x) f ( x) log f ( x)dx
S

Exemplul 1. Fie X ~ U(0, a) o variabil distribuit uniform pe intervalul (0, a).


Atunci
a
1
1
h( x) log dx log a
a
a
0
Se observ c entropia diferenial poate fi negativ (dac a < 1). De aceea se
numeste entropia diferenial, deoarece entropia n general trebuie s fie
pozitiv.
Exemplul 2. Pentru variabila normal
2
2
1
X ~
e x /( 2 ) ( x)
2
de medie zero, entropia diferenial n nai (uniti n baza logaritmilor naturali)
este
x2

h( x) ln dx ( x)
ln( 2 ) dx
2
2

E[ X 2 ] 1
1
ln( 2 2 ) ln(e 2 )
2
2
2
2
Cu notiunea de entropia diferenial clarificat, se pot reformula acum lucruri
deja definite pentru variabilele aleatoare discrete.
Proprietatea de echipartiie asimptotic (AEP Asymptotic Equipartition
Property)
Teorema 1. Fie X1, , Xn o secvent de valori ale unor variabile aleatoare i.i.d.
descrise de functia de repartitie f(x). atunci

30
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1
log f ( X 1,..., X n ) E[ log f ( X )] h( X )
n
cu convergena n probabilitate.
Demonstratie: Este vorba exact de aceeai WLLN.
Definitia 2. Mulimi tipice. Pentru orice > 0 i orice n, o multime tipic A(n )
n raport cu f(x) este

1
A( n ) ( x1 ,..., xn ) S n | log f ( x1 ,..., xn ) h( X ) |
n

cu alte cuvinte, A(n ) este multimea pentru care entropia diferential empiric
este apropiat de entropia diferential.
Pentru variabilele aleatoare discrete, se vorbete de numrul de elemente dintr-o
multime tipic. Pentru variabilele aleatoare continue, conceptul analog este cel
de volum al unei multimi tipice.
Definitia 3. Volumul unei multimi A Rn este
vol(A) = dx1dx2 ...dxn
A

Teorema 2. O multime tipic are urmtoarele proprieti:


1. Pentru n suficient de mare, Pr( A(n ) ) > 1 (valorile cuprinse n multimile
tipice apar foarte frecvent).
2. Pentru orice n, vol( A(n ) ) 2n(h(X) + )
3. Pentru n suficient de mare, vol( A(n ) ) (1 )2n(h(X) ).
Demonstratie:
1. Din nou, exact prin WLLN.
2. Se observ c
1 f ( x1 ,..., xn )dx1...dxn f ( x1 ,..., xn )dx1...dxn
sn

A( n )

n ( h ( X ) )

dx1...dxn 2 n ( h ( X ) ) vol( A( n ) )

A( n )

3. Dac n este suficient de mare, atunci proprietatea 1 este adevrat si


1 f ( x1,..., xn )dx1...dxn 2 n ( h( X ) ) dx1...dxn 2 n ( h ( X ) ) vol( A( n) )
A( n )

A( n )

Discretizarea
Dac o variabil aleatoare X cu distributie continu este studiat pe domenii
adiacente, atunci (teorema valorii medii) exist o valoare xi n fiecare domeniu
care verific egalitatea
f(xi) =

( i 1)

f ( x)dx

Fie X variabila aleatoare cuantizat definit ca X = xi cu probabilitatea pi =


f(xi). Entropia variabilei aleatoare cuantizate este

31
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

H(X) = f ( xi ) log( f ( xi ) ) f ( xi ) (log f ( xi ) log )


La limit, cnd 0 egalitatea se transform n
H(X) h(f)
Entropia unei cuantizri pe n biti a unei variabile aleatoare continue creste cu n.
Entropiile difereniale combinate, condiionate i relative
Alte definitii:
Entropia diferential combinat:
h(X1, ..., Xn) = f ( x1 ,..., xn ) log f ( x1 ,..., xn )dx1...dxn
Entropia diferential conditionat:
h(X|Y) = f ( x, y ) log( x | y )dxdy
Un caz special important:
Teorema 3. Fie X1, ..., Xn o distributie normal multivariabil cu media i
matriea de covariaie K. Pentru aceast variabil aleatoare, entropia este
1
h(X1, ..., Xn) = log(2e)n | K |
2
n biti.
Demonstratie: Fr a pierde din generalitate, este convenabil a se presupune
= 0. i atunci
1
1

h( f ) f ( x ) xT K 1 x ln ( 2 ) n | K | 2 dx
2

1
1
E xi ( K 1 )ij x j ln (2 )n | K |
2 i, j
2
1
1
E ( x j xi )( K 1 )ij ln (2 ) n | K |
2 i, j
2
1
1
1
1
K ji ( K 1 )ij ln (2 )n | K | ( KK 1 ) jj ln (2 )n | K |
2 j i
2
2 j
2

1
1
1
n ln (2 ) n | K | ln (2e) n | K |
2
2
2
Entropia relativ are expresia
f
D ( f || g ) f log
g
Retinem o functie numit informatie mutual care are n cazul variabilelor
aleatoare continue expresia
f ( x, y )
dxdy D( f ( x, y ) || f ( x ) f ( y ))
I(X;Y) = f ( x, y ) log
f ( x) f ( y )
n care apare i o entropie relativ.

32
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Unele proprietti cunoscute, adaptate variabilelor aleatoare continue:


1. D(f||g) 0
2. I(X;Y) 0
3. H(X|Y) h(X)
n

4. Regula lanului:

h(X1, ..., Xn) =

h( X

| X i 1,..., X 1 )

i 1

5. h(X + c) = h(X) (deplasarea nu afecteaz entropia)


6. h(aX) = h(X) + log|a|. Pentru a dovedi aceasta, fie Y = aX; atunci f Y(y) =
(1/|a|)fX(y/a).
7. h(AX) = h(X) + log|A|
Un rezultant important este urmtorul:
Teorema 4. Fie un vector aleator X de medie zero i de covaian K = E[XXT].
Atunci h(X) (1/2)log(2pe)n|K|, cu egalitate dac i numai dac X ~ N(0,K).
Asta nseamn c pentru o covarian dat, distributia normal (gaussian) are
acea covarian care maximizeaz entropia.
Demonstratie: Fie g(x) o distributie cu aceeai covariaie i fie densitatea
gaussian.
0 D(g||f) = g log( g / ) h( g ) g log h( g ) log h( g ) h( )
Pasul cheie al demonstratiei const n observatia c
T
1
g log a g ( x K x)
i c att g ct i au aceleai momente de ordinul al doilea.

33
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

34
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CANALE DE TRANSMITERE A INFORMAIEI


Generalitti
Definitie. Un canal de transmisie este descris pe deplin dac se dau un alfabet
de intrare A {a i }, i 1,2,..., r , un alfabet de iesire B {b j }, j 1,2,..., s i un
set de probabilitti conditionate P(bj/ai) pentru toti indicii i i j. Probabilitatea
P(bj/ai) corespunde evenimentului constnd n receptionarea simbolului bj cnd
s-a transmis simbolul ai.
Alfabetul de intrare A reprezint multimea simbolurilor aplicate la intrarea
canalului. Alfabetul de ieire B este multimea simbolurilor observate la iesirea
canalului. Uzual, simbolurile receptionate sunt aceleai cu cele transmise, dar
de cele mai multe ori aa-numitele zgomote, perturbatii din canal pot schimba
simbolurile transmise n alte simboluri, pot modifica continutul fluxului
informational transferat de la intrare ctre iesire. Din acest motiv, pentru
generalitate, se consider c cele dou multimi alfabetice sunt diferite.
Un canal are ataat o matrice care are ca elemente exact probabilittile
conditionate din definitie. Matricea are r linii i s coloane i pentru simplitate
probabilittile P(bj/ai) sunt notate mai scurt cu Pij. Aadar, matricea canalului se
scrie
P11 P12 ... P1s
P
P22 ... P2 s
21

P
... ... ... ...

Pr1 Pr 2 ... Prs


Matricea P are cteva proprietti:
1. Fiecare linie corespunde unui simbol de intrare;
2. Fiecare coloan corespunde unui simbol de iesire;
3. Deoarece expedierea simbolului ai produce la ieire totdeauna unul din
s

simbolurile bj (sistem complet de evenimente),

ij

1 pentru fiecare i =

j 1

1, 2, , r, adic suma probabilittilor de pe fiecare linie este egal cu


unitatea.
Exemple de canale de transmitere a informatiei i reprezentarea lor prin matrici:
1 0
a) un canal binar fr zgomot, P

0 1

35
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

b) un canal binar simetric cu zgomot (1% din biti sunt inversati),


0,99 0,01
P

0,01 0,99
c) un canal binar cu zgomot foarte general, pentru care alterarea celor dou
0,8 0,2
simboluri se produce n proportii diferite, P
.
0,3 0,7
O alt posibil reprezentare a unui canal este printr-un graf orientat cu
probabilittile Pij nscrise pe arce.

Dou tipuri de canale au o importan practic aparte:


p q
canalele binare simetrice care au matricea P
simetric i
q p
canalele binare cu anulare (sau cu tergere) care au matricea de forma
p q 0
P
i care produc la ieire un simbol n plus asociat unei
0 q p
imposibiliti de a decide dac s-a transmis un simbol sau altul din cele
aplicate la intrare.
ntre probabilittile asociate simbolurilor de la intrare i cele asociate
simbolurilor de la iesire exist relatia
r

Pr(b j ) Pr(b j / ai ) Pr(ai )


i 1

oricare ar fi indicele j (formula probabilitii totale). Aadar, cunoaterea sursei


de la intrare i a canalului face cunoscut sursa observat la iesire. Calculul
inversat, al probabilittilor la intrare din cele de la ieirea canalului este n
general imposibil. Aplicarea la intrarea canalului de simboluri din alfabetul A
asociate cu alte probabilitti s produc la iesire simboluri cu aceleai
probabilitti. Dac ns este dat o list de probabilitti pentru simbolurile din A
atunci probabilittile pentru simbolurile din B sunt unic determinate.
Din formulele pentru probabilitti conditionate rezult relatia
Pr(b j / ai ) Pr(ai ) Pr(ai , b j )
Pr(ai / b j )

Pr(b j )
Pr(b j )

36
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

care exprim probabilitatea de a se fi generat simbolul ai dac s-a receptionat


simbolul bj.
Entropii a priori, entropii a posteriori.
Probabilittile Pr(ai) se numesc probabilitti a priori ale simbolurilor la intrarea
canalului. Probabilittile Pr(ai / b j ) se numesc probabilitti a posteriori ale
simbolurilor respective. Pe baza celor dou secvene de numere se pot evalua
entropia a priori a sursei de la intrare
1
H ( A) Pr(a ) log
Pr(a)
A
i entropia a posteriori
1
H ( A / b j ) Pr(a / b j ) log
Pr(a / b j )
A
a aceleiai surse, la observarea la ieire a simbolului bj.
Exemplu: Pentru un canal binar cu Pr(a = 0) = 3/4, Pr(a = 1) = 1/4 i cu
matricea
2 1

3
P3
1 9

10 10
entropia a priori este H(A) = 0,811 i entropiile a posteriori sunt H(A/b = 0) =
0,2762 i H(A/b = 1) = 0,9980. Aadar, n acest exemplu, la apariia la ieire a
simbolului 0 incertitudinea asupra valorii simbolului aplicat la intrare scade, iar
la apariia simbolului 1 la ieire incertitudinea asupra simbolului transmis
crete.
Informaia mutual (transinformaia)
Cu entropia a priori i cu entropia a posteriori relative la alfabetul de intrare se
poate calcula asa-numita echivocatie a intrrii la iesire
1
H ( A / B) Pr(b) H ( A / b) Pr(a, b) log
Pr(a / b)
B
A B
Exprimat altfel, H(A) este informatia sau incertitudinea medie la intrare nainte
de a observa iesirea canalului, iar H(A/B) este informatia sau incertitudinea
medie la intrarea canalului dup observarea ieirii. Diferena H(A) H(A/B)
este o msur a lucrrii canalului care const n a transmite informatia generat
de surs i aplicat la intrarea lui. Diferena este numit informatie mutual sau
transinformatie i se noteaz
I(A;B) = H(A) H(A/B)
Valoarea I(A;B) reprezint informatia furnizat de canal asupra sursei A de la
intrare. Este de ateptat ca ntr-un canal fr zgomote I(A;B) = H(A). Dac

37
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

zgomotele sunt prezente, atunci H(A) se reduce cu incertitudinea H(A/B). Dac


nivelul de zgomot este foarte mare, atunci H(A/B) se apropie de H(A) i I(A;B)
se apropie de zero. Asadar, H(A/B) se poate considera un indicator al nivelului
de zgomot din canal. Expresii alternative pentru informatia mutual:
1
1
I ( A; B) Pr(a) log
Pr(a, b) log
Pr(a ) A B
Pr(a / b)
A
1
1
I ( A; B) Pr(a, b) log
Pr(a, b) log
Pr(a) A B
Pr(a / b)
A B
Pr(a / b)
I ( A; B) Pr(a, b) log
Pr(a)
A B
Pr(a, b)
I ( A; B) Pr(a, b) log
Pr(a) P(b)
A B
n exemplul prezentat mai devreme, sursa producea entropia a priori H(A) =
0,811 i entropiile a posteriori evaluate dup cunoaterea ieirii erau H(A/b = 0)
= 0,2762, H(A/b = 1) = 0,9980. n acel exemplu informatiile mutuale relativ la
sursa A sunt n particular o dat pozitiv, alt dat negativ. Ce se poate spune
despre semnul informatiei mutuale medii I(A;B)? Se poate afirma i se poate
demonstra conform celor prezentate n capitolul anterior c I ( A; B) 0 , cu
egalitate n cazul Pr(a, b) = Pr(a)Pr(b) pentru toate perechile (a, b), adic
atunci cnd sursele observate la intrare i la ieire sunt independente.
Una din formele expresiei pentru transinformatie, ultima n lista de mai sus
evideniaz simetria ei, adic
I(A;B) = I(B;A)
Aadar informatia pe care canalul o ofer asupra intrrii A prin observarea
ieirii B este aceiai cu informatia pe care o avem asupra lui B atunci cnd se
transmite din B ctre A. Din formulele simetrice de mai sus se deduce
I(A;B) = I(B;A) = H(B) H(B/A)
n care
1
H ( B) Pr(b) log
Pr(b)
B
i

1
Pr(b / a )
A B
Ultima expresie este o echivocaie a lui B condiionat de A sau o eroare medie
de transmitere.
O figur sugestiv pentru relatia ntre numerele caracteristice ale unui canal este
prezentat alturat. Figura ca i calculul direct arat c
H ( A, B) H ( A) H ( B) I ( A; B) H ( A) H ( B / A) H ( B) H ( A / B)
O exprimare n cuvinte a acestei egaliti multiple: incertitudinea total n A i
B este suma incertitudinilor din A i din B minus informatia transferat prin
canal sau este suma incertitudinii n A cu incertitudinea n B dup ce este dat A.
H ( B / A) Pr(a, b) log

38
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Tipuri speciale de canale


Canale lipsite de zgomot sunt acele canale pentru care simbolurile de la intrare
se aplic pe submulimi disjuncte ale alfabetului de iesire. n acest caz,
totdeauna, oricare ar fi simbolul produs la iesire, simbolul de la intrare este
identificat fr echivoc. Un exemplu este dat de canalul caracterizat de matricea
0
0
0
1 / 2 1 / 4 1 / 4

P 0
0
0 11 / 30 19 / 30 0
0
0
0
0
0
1
Matricea are particularitatea c pe fiecare coloan are un singur element nenul.
n cazul exemplificat, multimea B, de elemente b care poart indici de la 1 la 6
se partitioneaz n {b1 , b2 , b3 }, {b4 , b5 }, {b6 } , astfel nct posibilitatea de confuzie
asupra identittii simbolului transmis, a1, a2 sau a3 este exclus. Odat cunoscut
simbolul produs la ieire, una din probabilittile condiionate devine o msur a
certitudinii, Pr(ak / b j ) 1 , iar celelalalte se anuleaz: Pr(ai / b j ) 0, i k .
Echivocaia calculat este nul, ceea ce este de ateptat deoarece n canal nu
sunt prezente zgomote.
Asadar, H(A/B) = 0 i I(A;B) = H(A) deoarece nu exist nici o incertitudine
asupra intrrii cnd este observat iesirea i informatia produs de canal la
ieire este aceeai cu cea aplicat la intrarea canalului.
Canalele deterministe sunt acelea pentru care simbolurile de la intrare care
produc la iesire acelai simbol se grupeaz n submultimi disjuncte. Se ntelege
c un asemenea canal poate avea n multimea A mai multe simboluri dect n
multimea B, ntocmai cum un canal fr zgomote poate avea un alfabet de iesire
B cu mai multe elemente dect alfabetul de intrare A. La un canal determinist,
odat cunoscut simbolul de la intrare se poate spune exact care va fi simbolul
de la iesire. Un exemplu este canalul caracterizat de matricea

39
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1 0 0 0 0 0
P 0 1 1 1 0 0
0 0 0 0 1 1
care are particularitatea c pe fiecare linie are un singur element nenul i acela
egal cu 1. Pe matrice se poate citi c odat cunoscut simbolul la intrare, asupra
simbolului de la iesire nu mai exist nici o incertitudine. Echivocatia/eroarea
medie este nul, H(B/A) = 0 i informatia mutual devine I(A;B) = H(B).
Canalele n cascad sunt conectate astfel nct, succesiv iesirea unui canal
constituie intrarea altui canal. ntr-un lan de numai dou canale de pild, se
utilizeaz trei multimi alfabetice, A, B i C cu r, s, respectiv t simboluri, cu B un
alfabet intermediar, alfabet de iesire din primul canal i de intrare n al doilea.
Dac se transmite simbolul ai, la iesirea primului canal se poate observa
simbolul bj. Acesta este aplicat la intrarea canalului al doilea care produce la
iesirea sa simbolul ck. Dac simbolul intermediar bj este cunoscut atunci
probabilitatea ca la iesire s apar simbolul ck depinde numai de bj
Pr(ck / ai , b j ) Pr(ck / b j )
relatie care este o definitie a canalelor n cascad. ntr-un parcurs invers are loc
Pr(ai / b j , ck ) Pr(ai / b j )
Calculul diferenei de entropii H(A/C) H(A/B) conduce la expresiile succesive
1
1
H ( A / C ) H ( A / B ) Pr(a, c) log
Pr(a, b) log

Pr(a / c ) AC
Pr(a / b)
AB
1
1
Pr(a, b, c ) log
Pr(a, b, c ) log

Pr(a / c) ABC
Pr(a / b)
A BC
Pr(a / b)
Pr(a, b, c) log
Pr(a / c)
A BC
Cu relatia
Pr(a, b, c) Pr(b, c) Pr(a / b, c)
A B C

BC

i cu o relatie expus mai devreme se poate deduce

H ( A / C ) H ( A / B)

Pr(b, c) Pr(a / b, c) log

BC

Pr(a / b, c )
Pr(a / c)

1
1 x pentru x (0,1) rezult
x
H ( A / C ) H ( A / B) 0
cu egalitate dac i numai dac din Pr(a/c) = Pr(a/b, c), caz n care rezult
Pr(a/c) = Pr(a/b). Detaliile demonstratiei rmn n seama cititorului.
Relatia ultim se mai poate scrie i sub forma H ( A / C ) H ( A / B) . Deoarece
I ( A; B) H ( A) H ( A / B) i I ( A; C ) H ( A) H ( A / C ) rezult de aici un
fapt important:
I ( A; B) I ( A; C )

Din inegalitatea binecunoscut ln

40
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

cu egalitate dac i numai dac Pr(a / c ) Pr(a / b) .


Relatia ultim arat c exist o pierdere de informatie pe canalele succesive i
informatia de la iesire nu este niciodat mai mare (este uzual mai mic) fa de
orice punct intermediar n cascada de canale. Informatia mutual intrare-iesire
se calculeaz cu relatia
Pr(a / c)
Pr(a, c)
I ( A; C ) Pr(a, c ) log
Pr(a, c ) log
Pr(a)
Pr(a) Pr(c)
A C
A C
Dac tronsonul al doilea este lipsit de zgomote, atunci I(A;C) = I(A;B) (Se
propune ca exercitiu dovedirea acestei afirmaii). Cu toate acestea, conditia
Pr(a/c) = Pr(a/b) nu oblig la lipsa zgomotelor n tronsonul secund al cascadei
de canale. Un exemplu ilustreaz aceasta. Fie canalele descrise de matricile
0
1 0
1 / 3 1 / 3 1 / 3

PI
, PII 0 2 / 3 1 / 3

0 1 / 2 1 / 2
0 1 / 3 2 / 3
Canalul secund nu este lipsit de zgomote i totui I(A;C) = I(A;B). Calculul
verific afirmatia.
1 / 3 1 / 3 1 / 3
P PI PII
PI
0 1 / 2 1 / 2
Problema aditivittii informaiei mutuale are sens dac intereseaz informatia
medie dat de o secvent de simboluri de iesire despre o secvent de simboluri
de intrare. Cazul apare cnd un acelai simbol de intrare este repetat de mai
multe ori i transmis printr-un canal cu zgomote sau cnd un simbol de intrare
este receptionat la iesire ca o secven de simboluri de iesire. Ideea general
este c informatia asupra unui simbol transmis este n ctig prin efectuarea mai
multor observatii. De pild, pentru fiecare simbol transmis se pot receptiona
dou simboluri la iesirea canalului (v.figura).

Alfabetul de intrare are r simboluri, mulimile alfabetice de iesire au s, respectiv


t simboluri. Ordinea n care sosesc i sunt citite simbolurile la ieirea canalului
se presupune a fi bj, ck. Pentru intrarea A, probabilittile a priori ale
simbolurilor sunt Pr(ai), probabilittile a posteriori sunt Pr(ai/bj), probabilittile
mai a posteriori sunt Pr(ai/bj, ck).
Conform formulelor deja cunoscute, se pot scrie entropiile a priori H(A) i a
posteriori H(A/bj) i, mai departe, entropia mai a posteriori
1
H ( A / b j , ck ) Pr(a / b j , ck ) log
Pr(a / b j , ck )
A
Prin medierea pe B a entropiei a posteriori se obine

41
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

H ( A / B) Pr(b) H ( A / b)
B

Prin medierea pe BC a entropiei mai a posteriori se obine


H ( A / B C ) Pr(b, c) H ( A / b, c)
BC

Este cunoscut c I(A;B) = H(A) H(A/B). Analog, I(A;BC) = H(A)


H(A/BC). Acestea sunt expresii ale informatiei mutuale pentru canalul AB i
pentru canalul A(BC). Diferena lor este suplimentul de informatie asupra lui
A obinut prin utilizarea cvasiconcomitent a canalelor AB i AC cu lectura
ieirii C ntructva ntrziat fat de B. Mai concret
I ( A; C / B) H ( A / B ) H ( A / B C ) I ( A; B C ) I ( A; B)
cu sensul unei informatii mutuale de la A la C n condiiile cunoaterii lui B.
Relaia ultim rescris sub forma
I ( A; B) I ( A; C / B) I ( A; B C )
exprim aditivitatea adus n discuie mai devreme. n cuvinte, informatia
furnizat de canalul AB plus informatia furnizat (condiionat) de canalul AC
reprezint informatia total pe care o furnizeaz canalelele AB i AC reunite.
Mai rezult faptul c pentru canalele aditive AB i AC are loc inegalitatea
I ( A; B C ) I ( A; B) , cu egalitate dac i numai dac entropiile H(A/B) i
H(A/BC) sunt egale. Aadar informatia asupra lui A este de regul mai bogat
dac se folosesc ambele canale AB i AC dect dac se foloseste numai unul din
ele. Ca exerciiu, cititorul poate aprofunda cazul egalittii informatiilor mutuale
din relatia de mai sus cu aprecieri mai detaliate asupra canalului AC.
ntre mai multe posibilitti de a calcula transinformatia suplimentar exist i
fornula
Pr(a / b, c)
Pr(a, b, c)
I ( A; B C ) Pr(a, b, c ) log
Pr(a, b, c) log
Pr(a )
Pr(a ) Pr(b, c )
A B C
A B C
Pentru o alt relatie util, se defineste entropia
1
H ( B C / A) Pr(a, b, c) log
Pr(b, c / a )
A B C
i cu
I(A;BC) = I(BC) I(BC/A)
analoga relatiei I(A;B) = I(B;A) = H(B) H(B/A) dat mai devreme, se scrie
I ( A; B C ) I ( A; C ) I ( A; B / C )
ceea ce este reluarea unei relatii de mai sus, cu ordinea simbolurilor la iesire
inversat: ck , bj n loc de bj , ck, ordine care apare ca irelevant n calculul
informaiei mutuale pe combinatia de canale AB, AC.
Fie acum ca exemplu un canal binar simetric prin care fiecare simbol ai se
transmite prin canal de dou ori. Se recepioneaz bj mai nti i ck mai apoi.
Deoarece se utilizeaz acelai canal, matricile
p q
PAB PAC

q p

42
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

sunt egale. Simbolurile de la intrare sunt considerate echiprobabile. Se pune


intrebarea: dublarea transmiterii este de natur s aduc mai mult informaie la
iesire? Se calculeaz pentru aceasta I(A;B) i I(A;BC).

1
1
I ( A; B ) 1 p log q log
p
q

Acum, pentru calculul informatiei mutuale I(A;BC) se completeaz tabelul


care urmeaz.
a

Pr(a,b,c)
1 2
p
2
1 2
q
2
1
pq
2
1
pq
2
1
pq
2
1
pq
2
1 2
q
2
1 2
p
2

Pr(b,c)

Tip

1 2
( p q2 )
2

X
Y
Z

pq

Z
Z
pq

Z
1 2
( p q2 )
2

Y
X

Prin nlocuire n formula

I ( A; B C )

Pr(a, b, c ) log

A B C

Pr(a, b, c )
Pr(a) Pr(b, c )

se obtine (se recomand verificarea ca exercitiu)


2 p2
2q 2
2
I ( A; B C ) p 2 log 2

q
log
p q2
p2 q2
Graficul alturat arat n culori diferite variaia n functie de eroarea q a celor
dou informatii mutuale, I(A;B) i I(A;BC). Se observ trei puncte n care are
loc egalitatea: punctele extreme, cnd transmiterea se face fr erori (chiar dac
la q = 1 are loc o inversare a biilor) i punctul central, q = 0,5, cnd nu exist
nici o diferen ntre transmiterea corect sau eronat, inversat a simbolurilor
sursei A.

43
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1
I(A;B)
I(A;BxC)

0.9

Informatia mutuala maxima

0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

0.1

0.2

0.3
0.4
0.5
0.6
0.7
Probabilitatea inversarii bitilor

0.8

0.9

Capacitatea canalelor
Capacitatea unui canal este o noiune de mare importan practic i se leag de
faptul c informatia mutual
Pr(a, b)
I ( A; B) Pr(a, b) log
Pr(a) Pr(b)
A B
depinde nu numai de canal, de probabilittile condiionate care-l definesc, ci i
de probabilittile simbolurilor de la intrare.
1
Eroare 1%
Eroare 10%

0.9
0.8

Transinformatia

0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

0.1

0.2

0.3
0.4
0.5
0.6
0.7
0.8
Probabilitatea primului simbol al sursei

44
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

0.9

O sugestie asupra modului n care variaz informatia mutual (sau transinformatia) cu probabilitile simbolurilor aplicate la intrare, n cazul simplu al
canalelor binare simetrice produce graficul alturat, trasat pentru dou niveluri
diferite ale erorilor introduse de canal.
Se observ c informatia mutual are de fiecare dat un maxim pentru cazul n
care simbolurile aplicate la intrarea canalului sunt echiprobabile. Acest extrem
are valoarea (a se calcula ca exercitiu)
1
1
I ( A; B) max 1 p log q log
p
q
Pentru o surs A mai general, asimetric i/sau cu mai multe simboluri,
stabilirea maximului transinformatiei nu este o operatie uoar. Dar de fiecare
dat cnd un simbol al sursei de intrare are aparitie cert, Pr(ai) = 1 i celelalte
sunt excluse, informatia mutual este nul. Valoarea maxim a informatiei
mutuale arat limita de sus a performanei canalului n transmiterea informatiei
generate de sursa de la intrare.
Se poate defini acum capacitatea canalului: maximum de transinformaie pe
multimea de surse care pot fi conectate la intrarea canalului
C = maxP(a)I(A;B) = maxP(a)[H(A) H(A/B)]
Aadar, capacitatea unui canal este deteminat exclusiv de matricea canalului,
notat mai devreme cu P.
n cazul canalelor binare simetrice cu nivelul erorilor q = 0,1 i q = 0,01
reprezentate n graficul de mai devreme, capacitatea variaz n raport cu nivelul
zgomotului: la nivel sczut (q = 0,01) capacitate mai mare, la nivel mai mare (q
= 0,1) capacitate mai redus. Lipsa total a zgomotelor aduce certitudinea n
transmitere i face capacitatea canalului maximal. Incertitudinea total de la p
= q = 0,5 aduce anularea capacittii de transmitere a canalului.
Cum s-a mai spus, calculul capacittii unui canal este oarecum delicat: este
vorba de stabilirea unui extrem n condiiile satisfacerii unor restricii. Un caz
mai simplu i interesant sub aspect practic l reprezint canalele uniforme. Un
canal este calificat ca uniform dac matricea P ataat are particularitatea c
elementele ei sunt de aa natur nct fiecare linie i fiecare coloan este o
permutare distinct a elementelor de pe prima linie. Rezult imediat c alfabetul
de iesire are acelai numr de simboluri ca i alfabetul de la intrare. Un canal
binar simetric este uniform, un canal binar cu anulare nu este uniform. Canalele
cu matricile de probabilitti conditionate
0.3 0.2 0.5
0.5 0.3 0.2, 0.7 0.3

0. 3 0. 7

0.2 0.5 0.3


sunt uniforme, dar canalele
0.2 0.3 0.5
0.7 0.2 0.1

0.1 0.7 0.2, 0.5 0.2 0.3


0.5 0.3 0.2

45
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

nu sunt uniforme.
Pentru un canal uniform oarecare calculul pornete de la relatia

1
Pr(b / ai )
A
B
Suma a doua este suma unei linii din matricea P i este mereu aceeai oricare ar
fi linia i luat n considerare. Cum Pr(ai ) 1 rezult
I ( A; B) H ( B) H ( B / A) H ( B) Pr(ai ) Pr(b / ai ) log

1
Pr(b / ai )
B
cu termenul al doilea constant, independent de probabilittile P(ai). n aceste
conditii speciale

1
C max P ( ai ) I ( A; B ) max P ( ai ) H ( B ) Pr(b / ai ) log

Pr(b / ai )
B

i problema se reduce la a stabili un maxim pentru entropia H(B) pe mulimea


de valori a probabilittilor Pr(ai). Se tie n general c entropia unei surse, fie ea
cea observat la iesire, este maxim dac simbolurile ei sunt echiprobabile. Nu
exist vreo garanie c sursa de la intrare ar putea produce simboluri cu
probabilitti Pr(ai) care s fac simbolurile de la iesirea canalului echiprobabile.
Pentru un canal uniform, faptul c liniile matricei P sunt permutri distincte ale
uneia dintre ele face ca sumele elementelor pe coloane s fie totdeauna egale cu
unitatea i din simboluri echiprobabile la intrare se obtin simboluri
echiprobabile i n acelai numr la iesire. Entropiile maxime sunt
H ( A) log r log s H ( B) , capacitatea canalului este
1
C log r Pr(b / ai ) log
log r Pr(b / ai ) log Pr(b / ai )
Pr(b / ai )
B
B
i se atinge atunci cnd simbolurile la intrare au toate aceeai probabilitate,
Pr(a) = 1/r. Mai devreme s-au dat ca exemplu canale care sunt uniforme. Un
calcul (propus ca exercitiu) pentru canalul uniform alimentat de o surs cu trei
simboluri produce C = 0,0995, capacitate atins la probabilitti egale pentru
simbolurile de la intrare, 1/3, 1/3, 1/3.
Pentru un canal oarecare extremul este de tipul cu restricii i se stabileste prin
metoda multiplicatorilor Lagrange sau prin alt metod specific. Restriciile
constau n conditia ca numerele Pr(ai) s fie nenegative i subunitare i suma lor
s fie egal cu unitatea.
I ( A; B) H ( B) Pr(b / ai ) log

Modelul de canal AWGN (Additive White Gaussian Noise)


Perturbatiile care afecteaz canalele de transmitere a informatiei se manifest i
lucreaz asupra informatiei vehiculate n forme variate. De aceea, cuprinderea
lor ntr-o descriere cantitativ unic, utilizabil n orice mprejurare practic
este o iluzie. n consecin, n operatiile de analiz i de proiectare a sistemelor

46
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

de comunicatie, se recurge la modele particulare, dac acestea exist, potrivite


cu una sau alta dintre aplicatii.
Un model utilizat frecvent de specialitii n domeniu este cel al unui canal n
care semnalul transmis este deformat, modificat, corupt n principal de un
zgomot alb gaussian care se suprapune aditiv peste semnalul util (modelul
AWGN Additive White Gaussian Noise zgomot alb gaussian aditiv).
Modelul AWGN este o distributie de tensiuni care poate fi descris n orice
moment printr-o lege statistic normal (sau gaussian). Distributia aceasta are
media nul i o deviatie standard care intervine n aa-numitul raport semnalzgomot (SNR Signal-to-Noise-Ratio) un parametru important caracteristic
unei transmisii. Pentru ilustrare, fie un semnal al crui nivel este fixat. Dac
raportul semnal-zgomot este mare atunci deviatia standard este mic, iar dac
dimpotriv raportul semnal-zgomot este mic atunci deviatia standard este
comparativ mai mare.
n comunicatiile digitale raportul semnal-zgomot se exprim ca Eb/N0, un raport
ntre energia pe bit i densitatea energetic a zgomotului.
Un exemplu: Fie un sistem n care bitul 1 al canalului este transmis ca o
tensiune de 1 volt i bitul 0 ca o tensiune de +1 volt. Acesta este un sistem
bipolar fr revenire la zero (NRZ Non-Return-to-Zero). Se mai numeste i
sistem binar antipodal deoarece cele dou stri sunt opuse una alteia.
Receptorul contine un comparator care decide c bitul receptionat este 1 dac
tensiunea este sub 0 volti i 0 dac tensiunea este egal cu sau mai mare de 0
volti. Ar fi de dorit ca iesirea comparatorului s fie eantionat/msurat n
mijlocul fiecrui interval de timp dedicat unui bit.
S vedem cum functioneaz acest sistem, nti cnd raportul semnal/zgomot
este mare, apoi cnd acelai raport este redus.
DISTRIBUTIA TENSIUNILOR LA S/Z = 20 dB
4
3.5

Densitatea de probabilitate

3
2.5
2
1.5
1
0.5
0
-4

-3

-2

-1

0
volti

47
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Figura alturat arat densitatea de repartitie a tensiunilor la intrarea n receptor,


sum a tensiunilor semnalului i zgomotului, la un nivel al raportului semnalzgomot Eb/N0 de 20 dB, adic atunci cnd tensiunea semnalului este de 10 ori
mai mare dect tensiunea medie ptratic (deviatia standard) a zgomotului. Se
observ dou distributii identice ca form, bine separate, una centrat pe
tensiunea de 1 volt, cealalt centrat pe tensiunea de +1 volt.
Receptorul simplu din exemplul n discutie, aproape sistematic detecteaz bitul
1 dac tensiunea este negativ i detecteaz bitul 0 dac tensiunea este nul sau
pozitiv. Receptorul nu are dificultti prea mari n a primi i a interpreta corect
un semnal precum cel din figur. Vor aprea, dac vor aprea, foarte putine
erori la receptie. ntr-o simulare a unei transmisii constnd n 1.000.000 de biti,
cu raportul semnal-zgomot Eb/N0 de 20 dB, un 0 transmis n-a fost niciodat
receptionat ca 1 i nici vreun 1 transmis n-a fost receptionat ca 0.
Deocamdat lucrurile merg practic fr cusur.
Figura urmtoare arat alte distributii ale tensiunilor receptionate tot printr-un
canal AWGN dar la un raport semnal-zgomot Eb/N0 sczut la 6 dB, adic atunci
cnd tensiunea semnalului este numai dublul tensiunii medii ptratice a
zgomotului.
DISTRIBUTIA TENSIUNILOR LA S/Z = 6 dB
0.8
0.7

Densitatea de probabilitate

0.6
0.5
0.4
0.3
0.2
0.1
0
-4

-3

-2

-1

0
volti

Se observ acum c cele dou distributii centrate pe 1 volt i pe +1 volt nu mai


sunt att de net separate: partea din dreapta extrem a curbei centrate pe 1 volt
trece peste 0, iar partea stng a curbei centrate pe +1 volt trece la rndu-i sub
0. Erorile de interpretare/detectie sunt acum greu de evitat: mai multe unitti
binare pot fi interpretate ca zero binar, mai multe zerouri binare pot fi
interpretate ca unitti. ntr-o simulare a unei transmisii ntins tot pe 1.000.000
biti, 0 a fost receptionat ca 1, la fel 1 a fost interpretat ca 0 de un numr
apreciabil de ori. Apare o rat a erorilor care nu mai poate fi ignorat (Se
propune ca exercitiu stabilirea proportiei de erori n transmisia simulat).

48
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Ceea ce se ntmpl de data aceasta nu este tocmai n regul, mai ales cnd se
efectueaz o transmisie de date n care precizia este de mare importan.
O problem special privind canalele
Inginerii de telecomunicatii au de rezolvat uneori problema urmtoare:
Fie un canal cu banda de trecere W Hz. Canalul este afectat de perturbaii. Ce
debit de informaie se poate transmite prin acel canal la un raport
semnal/zgomot cunoscut?
Dac sursa cu alfabetul A are entropia H(A) atunci ea genereaz n medie H(A)
bii per simbol. Dac prin canal se transmite 1 simbol/secund atunci prin canal
se transmit n medie H(A) bii/secund. Zgomotul din canal reduce aceast
vitez cu echivocatia H(A/B). Aadar canalul nu poate produce la iesire o rat,
un debit de informaie mai mare dect R = I(A;B) = H(A) H(A/B) bii/secund.
Capacitatea canalului este valoarea maxim a transinformatiei I(A;B) i ea poate
fi numeric egal cu viteza maxim cu care se pot alimenta simboluri la intrarea
canalului de transmisie.
Urmeaz acum dezvoltarea unei expresii specifice pentru capacitatea canalului.
O teorem a eantionrii spune c dac un semnal este eantionat de N ori pe
secund atunci semnalul respectiv este limitat ca spectru de frecvente la N/2 Hz.
Sau, pentru un semnal de band limitat de mediul de transmisie la W Hz,
numrul de eantioane pe secund trebuie s depeasc Nmin = 2W pentru a
putea fi reconstituit din eantioanele sale.
Fie acum P puterea semnalului i = N0W puterea zgomotului n canal, cu N0
densitatea spectral de putere a zgomotului presupus constant n banda de
frecvene a semnalului transmis (zgomot alb).
Rdcina ptrat a unei puteri are dimensiunea unei tensiuni (curent) dac
sarcina este rezistiv de 1 ohm. Se admite c transmiterea informatiei se face n
trepte de tensiune care nu pot fi mai mici dect tensiunea eficace a zgomotului.
Numrul de trepte se calculeaz prin raportarea a dou tensiuni (cureni)

P 2

P
2
2
urmat de o rotunjire la un numr ntreg apropiat. Cu S niveluri ale semnalului
(altfel spus cu un alfabet cu S simboluri) entropia maxim se obine atunci cnd
nivelurile au aceeai probabilitate
S
1
1
P
log S log S log1 2

2
i 1 S
Dac se preiau Nmin = 2W eantioane pe secund i fiecare eantion poart logS
bii de informaie, atunci viteza maxim de transmitere este Rmax = 2WlogS bii
pe secund i din
1
P
Rmax C 2W log S 2W log1 2
2
rezult
S

49
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

C W log1 2

expresia unei teoreme (Shannon-Hartley) asupra capacittii unui canal definit
din unghiul de vedere al inginerului de telecomunicatii, n functie de raportul
semnal/zgomot, P/2 i de banda de frecvene a semnalului. Logaritmii sunt n
baza 2 i rezultatul este n bii/secund.
Un exemplu: Care este nivelul minim al raportului semnal/zgomot al unui canal
telefonic dac el trebuie s serveasc un modem de 56 kbps (kilobii pe
secund)?
Viteza de 56 kbps necesit o capacitate a canalului de cel puin C = 56000
biti/secund (bps). Lrgimea benzii unui canal telefonic W este de cca. 3,6 kHz.
Ecuaia
P

56000 3600 log1 2



2
are solutia P/ 48160. Uzual, raportul semnal/zgomot se exprim n dB
(decibelli) (P/2)dB = 10 lg(P/2), cu logaritmul n baza 10.
Rezultatul problemei este P/2 = 46,8 dB.
Un exercitiu propus: care este limita capacittii unui canal cnd W ? O
indicaie: trebuie avut n vedere c = N0W, cu N0 densitatea spectral de
putere a zgomotului presupus constant pe ntreg spectrul de frecvene.
Canale de tip continuu
Pentru sursele i canalele continue, informatia mutual (transinformatia) are
expresia


f ( x, y )
f ( x / y)
I ( X ; Y ) f ( x, y ) log
dxdy f ( x, y ) log
dxdy
f ( x) f ( y )
f ( x)


Transinformatia este totdeauna finit i nenegativ. Are aceleai proprietti ca
i n cazul discret.

50
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CODURI PENTRU CANALE FR ZGOMOT


Generalitti despre coduri
Pentru dezvoltarea subiectului care urmeaz este necesar mai nti precizarea
ctorva aspecte de terminologie. Se va vorbi n continuare de multimi de litere,
sau de simboluri, sau de caractere, multimi care poart numele generic de
alfabet. Cu elementele unui alfabet se pot forma cuvinte sau mesaje care sunt
secvene finite de litere/simboluri/caractere din acel alfabet. Cuvintele au o
lungime reprezentat de numrul de litere/simboluri/caractere din cuvnt.
Fie mulimea de simboluri S = {s1, s2, , sq} alfabetul unei surse de informatie.
Fie mulimea de simboluri X = {x1, x2, , xr} un alt alfabet numit mai departe
alfabetul codului.
O aplicatie a simbolurilor si din S pe mulimea cuvintelor alctuite cu caractere
din X
si X i xi1 xi2 ...xin
face o operatie de codare.
Operaia invers, de revenire de la cuvintele Xi la simbolurile si face o
decodare.
Secvenele de lungime n alctuite din simboluri din S sunt considerate a fi
generate de o surs care poart numele de extensia a n-a a sursei S, notat
frecvent i cu Sn.
O aplicatie a secvenelor bloc din Sn, secvene de lungime n, pe secvenele
corespunztoare de cuvinte de cod ( X i1 , X i2 ,..., X in ) se numeste extensia a n-a a
codului.
Particulariti ale codurilor
Cteva definitii:
Cod nesingular: un cod alctuit din cuvinte distincte.
Cod bloc: un cod nesingular cu cuvintele avnd aceeai lungime.
Un cod este unic decodabil dac i numai dac extensia n-a a codului este
nesingular pentru orice n finit (aceasta este o definitie corect i complet).
Un cod este unic decodabil dac nu exist mprejurri de neunicitate (de
ambiguitate) la decodare pentru nici unul din cuvintele de cod posibile
(aceasta este o definitie operational).
De notat c toate codurile de utilitate practic trebuie s fie unic decodabile.
Rezult din definitiile de mai sus c un cod bloc de lungime n care este
nesingular este i unic decodabil.

51
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

De ce este necesar codarea? Codarea este necesar pentru a trece de la


reprezentarea prin alfabetul sursei la reprezentarea prin alfabetul canalului de
transmisie sau al spatiului de memorare. Un exemplu l constituie reprezentarea
textelor n limba englez n binar prin codarea ASCII (a se citi "aschii"). Prin
codare se poate exploata redundana surselor (diferenta fa de entropia
maxim), pentru o reprezentare mai eficient n cod (la entropie nalt). Un
exemplu n acest sens este compresia de date fr pierdere de informatie. n
continuare se va uza din plin de codarea binar, X = {0, 1}, deoarece acesta este
alfabetul de memorare i de transmitere n comunicatiile numerice i n
sistemele de calcul. Vor fi utilizate uneori i coduri ternare, cu X = {0, 1, 2},
deoarece, chiar dac mai rar i acestea servesc ca baz a unor tehnici de codare
n transmiterea semnalelor. Scopul major al codrii surselor de informatie este
gsirea unor strategii de reprezentare care prin intermediul codurilor unic
decodabile s fac transmiterea si/sau stocarea posibil i eficient.

n tabelul urmtor sunt prezentate trei exemple de codare n cazul simplu al


unei surse cu alfabetul S = {s1, s2, , sq}, q = 4 i cu alfabetul codului binar, X
= {0, 1}.
Simboluri ale
sursei
s1
s2
s3

s4

Codul A

Codul B

Codul C

0
11
00

0
11
00

00
01
10

11

010

11

Se observ imediat c primul cod, A nu este nesingular deoarece X2 = X4 = 11.


Codul B este nesingular deoarece cuvintele de cod sunt distincte, dar nu este
unic decodabil deoarece secvena 00 poate fi decodat fie ca s3, fie ca s1s1,
asadar decodarea nu este unic. Codul C este un cod bloc nesingular de
lungime 2 i este unic decodabil.
Este de observat c nu este uor a califica un cod ca fiind sau nu unic decodabil,
cu exceptia poate a unor cazuri speciale cum este cel al codurilor bloc. Un cod
nu este unic decodabil dac exist fie i numai un caz de decodare neunic.
Despre un cod unic decodabil se spune c este instantaneu dac orice cuvnt
dintr-o secvent se poate decoda fr referire la simboluri care aparin altor
cuvinte succesive ale codului. Pentru a obtine o decodare corect, un cod care
este unic decodabil dar nu este instantaneu cere ca un numr de cuvinte de cod
anterioare i/sau ulterioare, precum i cuvntul curent s fie memorate temporar
la receptie. O codare care se face cu un cod instantaneu permite receptorului s

52
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

decodeze cuvintele de cod la simbolul codat transmis, imediat i corect, de


ndat ce cuvntul codului a fost integral recepionat. Se vorbete de o decodare
din mers.
Exemplul care urmeaz ia n considerare aceeai surs din exemplul anterior i
din nou codul cu alfabetul binar X = {0, 1}. Se consider trei coduri distincte,
A, B i C ca n tabelul alturat.
Simboluri ale
sursei
s1
s2
s3

s4

Codul A

Codul B

Codul C

0
10
110

0
01
011

00
01
011

1110

0111

111

Cele trei coduri sunt unic decodabile deoarece n nici o mprejurare nu exist
decodri neunice, dar numai codul A este instantaneu. De ce? Fie secvena
01011101100100010 s1 s 2 s 4 s 3 s1 s 2 s1 s1 s 2
n momentul cnd apare simbolul terminal 0 receptorul poate imediat s fac
decodarea. Simbolul 0 are aici rol de separator i decodarea este instantanee
(i codul este unic decodabil).
Fie acum secventa
01101011100 s 3 s 2 s 4 s1 s1
codat cu codul B. i acum simbolul 0 are rol de separator, dar pentru o
decodare corect a cuvntului curent este necesar citirea primului caracter din
cuvntul urmtor. De exemplu cuvntul 011 nu poate fi interpretat ca s3 dect
dup ce avem confirmarea prin lectur c urmtorul caracter este primul (0)
din cuvntul urmtor. Dac urmtorul simbol este 1 atunci decodarea corect
este 0111 s 4 . Dei codul B este unic decodabil, separatorul 0 garanteaz
aceast calitate, dar el nu este un cod instantaneu.
n cazul codului C argumentarea este nc mai convingtoare. Pentru aceasta se
ia secventa 01111111. Receptorul este incapabil s decodeze pn nu primeste
un simbol 0 sau un marcaj de final de transmisie. Este clar c acest cod nu
este instantaneu i receptorul trebuie s fie n partea de decodare complicat pe
msur. Codul este totui unic decodabil, simbolul 0 joac i aici rol de
separator.
Conditia de prefix. Fie X i xi1 xi 2 ...xin un cuvnt de cod de lungime n. Secvena
de simboluri ( xi1 xi2 ...xi j ) cu j n este numit prefix al cuvntului de cod Xi .
Conditia necasar i suficient ca un cod s fie instantaneu este ca nici un
cuvnt al codului s nu fie prefix al vreunui alt cuvnt de cod.
Se impune a observa c deoarece un cod instantaneu este unic decodabil
conditia de prefix este o conditie suficient (dar nu necesar) pentru ca un cod
s fie unic decodabil.

53
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Dac se reia ultimul exemplu se constat: codul A este instantaneu (conditia de


prefix ndeplinit); codul B nu este instantaneu (s1 este prefix pentru s2 etc.);
codul C nu este instantaneu (s2 este prefix pentru s3 ).
Construirea codurilor instantanee. Fie o surs capabil a genera m simboluri.
Acestea trebuie codate cu m cuvinte de cod de lungimi l1, l2, , lm. Se cere un
cod instantaneu alctuit din cuvinte de exact aceste lungimi. Prin utilizarea
propriettii de prefix se poate construi un cod instantaneu prin reinerea
cuvntului cel mai scurt i prin dezvoltarea cuvintelor urmtoare fr a viola
condiia de prefix. Un mod sistematic de a face aceast dezvoltare este de a
numra pe alfabetul codului.

De exemplu, se presupune c se cere proiectarea unui cod binar instantaneu cu


lungimile 3, 2, 3, 2, 2. n faza prim se reordoneaz nedescresctor lungimile
cuvintelor de cod: 2, 2, 2, 3, 3. ntruct primele trei cuvinte de cod sunt de
aceeai lungime, se numr simplu 0, 1, 2 n binar, adic 00, 01, 10. Pentru
urmtoarele cuvinte, de lungime 3, se numr pn la 3 pe primele dou
simboluri i se numr apoi 0, 1 pe al treilea. Concret: 00, 01, 10, 110, 111 i
codul obtinut este instantaneu.
Dac se cere proiectarea unui cod ternar instantaneu cu lungimile 2, 3, 1, 1, 2,
dup ordonarea lungimilor, 1, 1, 2, 2, 3, se obtine prin numrare codul cerut: 0,
1, 20, 21, 220.
Dar ce se ntmpl dac se cere proiectarea unui cod binar instantaneu cu
lungimile 2, 3, 2, 2, 2? Dup ordonarea nedescresctoare a lungimilor, se obtine
2, 2, 2, 2, 3. n faza de specificare a cuvintelor codului, se obtine succesiv 00,
01, 10, 11 i ?? numrtoarea se ncheie nainte de vreme, continuarea nu-i
posibil. Problema este imposibil de rezolvat.
Decodarea codurilor instantanee. Pentru decodare se foloseste un arbore de
decodare ca n figura alturat.
n arbore s-au notat cu R (Read) citirile de caractere cu SR (Start Reading)
lectura primului caracter din cuvntul de cod cu rezultatul fiecrei citiri, 0 sau
1, pe vertical. Acest arbore reprezint decodarea primului din codurile
proiectate mai devreme, codul binar instantaneu cu lungimile cuvintelor de 3, 2,
3, 2, 2.
Iat acum motivele pentru care codurile instantanee sunt att de apreciate.
codurile instantanee sunt uor de verificat prin conditia de prefix
codurile instantanee sunt uor de proiectat

54
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

codurile instantanee sunt uor i ieftin de decodat.


Dar codurile unic decodabile care nu sunt instantanee ar putea avea alte
avantaje. n seciunea urmtoare se va arta c dac lungimea cuvintelor
conteaz n primul rnd, atunci codurile unic decodabile care nu sunt
instantanee nu pot fi mai interesante dect cele instantanee.

Inegalitatea lui Kraft i teorema lui McMillan


ntr-unul din exemplele de mai devreme am vzut c fiind date lungimile
cuvintelor de cod, gsirea unui cod instantaneu nu este totdeauna posibil. Nici
mcar existena unui cod unic decodabil nu este totdeauna cert. Se pune
ntrebarea: exist o cale de a spune dinainte dac un set dat de lungimi ale
cuvintelor de cod permite sau nu s se proiecteze un cod unic, separabil sau
instantaneu? Rspunsul este afirmativ: da, prin verificarea inegalittii lui Kraft.
O alt ntrebare este: dac tot ce ne intereseaz este un cod unic decodabil cu
cuvintele de cod de lungimi date, se pierde ceva dac proiectarea se restrnge la
codurile instantanee? Rspunsul este nu, nu se pierde nimic i adevrul acesta
se verific prin teorema lui McMillan.
Inegalitatea lui Kraft va rezulta dintr-un calcul demonstrativ.
Fie o surs S = {s1, s2, , sq} cu q simboluri i (X1, X2, , Xm) m = q cuvinte de
cod aranjate n ordinea cresctoare a lungimilor, l1 l2 lm. Fiecare cuvnt
este alctuit din cele r simboluri din alfabetul codului X = {x1, x2, , xr}.
Demonstraia urmreste proiectarea unui cod instantaneu pe baza lungimilor
date, care ncepe cu X1 i se ncheie cu Xm.
Numrul de cuvinte de cod X1 posibile, de lungime l1 este r l1 . Numrul de
cuvinte X1 permise este tot r l1 .

55
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Numrul cuvintelor X2, de lungime l2, cu X1 ca prefix este r l2 l1 deoarece se pot


alege arbitrar l2 l1 digiti care urmeaz prefixului X1. Numrul cuvintelor X2
posibile este r l2 . Numrul cuvintelor X2 permise este numrul cuvintelor
posibile din care se scade numrul cuvintelor cu prefixul X1, adic r l2 r l2 l1 .
l
l l
l l
Analog, numrul cuvintelor X3 permise este r 3 r 3 2 r 3 1 i, n general,
l
l l
l l
l l
numrul cuvintelor Xi permise este r i r i i 1 r i i 2 ... r i 1 .
Pentru a fi posibil construirea codului instantaneu dorit este necesar ca
numrul cuvintelor permise s fie cel putin 1, pentru fiecare indice i = 1, 2, ,
m, adic
r l1 1
l2
r r l2 l1 1
r l3 r l3 l2 r l3 l1 1
...................
lm
r r lm lm 1 r lmi lm 2 ... r lm l1 1
l
Prin mprtirea inegalittii generice i cu r i se obtine sirul de inegalitti
1 r l1
1 r l2 r l1
1 r l3 r l2 r l1
.........................
1 r lm r lm 1 r lm 2 ... r l1
Dac inegalitatea ultim este ndeplinit, atunci i celelalte sunt satisfcute, aa
nct este suficient s avem
q

K r li 1
i 1

i construirea codului instantaneu este posibil. Inegalitatea ultim este


inegalitatea lui Kraft. Satisfacerea acestei inegalitti este conditia necesar i
suficient ca un cod cu lungimile cuvintelor l1, l2, , lq s existe.
Sunt de notat cteva fapte:
1. Inegalitatea lui Kraft arat c un cod instantaneu cu lungimile cuvintelor l1,
l2, , lq exist. Aceast inegalitate nu spune care este acel cod i nici dac
un cod care a fost proiectat s ndeplineasc inegalitatea este instantaneu.
2. Prin verificarea condiiei de prefix se poate determina dac un cod care
satisface inegalitatea este sau nu instantaneu.
3. Inegalitatea lui Kraft previne cutarea unui cod care nu exist i ajut la a
aprecia dac strategia adoptat n cutarea unui cod poate produce un cod
instantaneu.
4. Inegalitatea lui Kraft d lungimile minime ale cuvintelor de cod care pot fi
utilizate la proiectarea unui cod instantaneu.
Cteva exemple interesante sunt date n tabelul alturat.
n legtur cu codurile din tabel, se pot formula cteva ntrebri:
Codurile binare (r = 2) din tabel sunt instantanee?
Dac nu, pot fi ele reproiectate pentru a fi instantanee?

56
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Dac da, reproiectarea este posibil, cum se realizeaz codul n forma


instantanee?
Sursa
s1
s2
s3
s4

Codul A
0
100
110
111

Codul B
0
100
110
11

Codul C
0
10
110
11

Codul A. Conditia de prefix este satisfcut. Codul este instantaneu. Conform


asteptrilor
4
7
K 2 l1 2 1 2 3 2 3 2 3 1
8
i 1
adic inegalitatea lui Kraft este verificat.
Codul B. Cuvntul de cod pentru s4 este prefix pentru cuvntul de cod asociat
cu s3. Conditia de prefix nu este ndeplinit. Codul nu este instantaneu.
Se calculeaz
4

K 2 l1 2 1 2 3 2 3 2 2 1
i 1

Inegalitatea lui Kraft este satisfcut. Codul poate fi reproiectat pentru a deveni
instantaneu: 0, 110, 111, 10.
Codul C. Cuvntul de cod pentru mesajul s4 este prefix pentru cuvntul de cod
asociat mesajului s3. Conditia de prefix nu este ndeplinit. Codul nu este
instantaneu.
Se calculeaz
4

K 2 l1 2 1 2 2 2 3 2 2 1
i 1

Inegalitatea lui Kraft nu este satisfcut. Asadar, codul nu poate fi reproiectat


pentru a fi instantaneu.
Teorema lui McMillan sustine n fond c orice cod unic decodabil satisface
inegalitatea lui Kraft.
Se cuvin a fi fcute urmtoarele observatii:
Teorema lui McMillan sugereaz c pentru fiecare cod neinstantaneu unic
decodabil poate fi stabilit un cod instantaneu cu aceleai lungimi ale
cuvintelor.
Deoarece uzual lungimea cuvintelor de cod este problema central i nu
codul n sine, cercetarea poate fi limitat n conditii de siguran la codurile
instantanee.
ntruct codurile instantanee sunt o subclas a codurilor unic decodabile,
inegalitatea lui Kraft este o conditie suficient pentru decodabilitate unic.
Dar conform teoremei lui McMillan ea este i necesar.

57
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Asadar, o reformulare a teoremei lui McMillan este urmtoarea: conditia


necesar i suficient de existent a unui cod unic decodabil cu lungimile de
cuvnt l1, l2, , lq este
q

K r li 1
i 1

cu r numrul cardinal, numrul de caractere al alfabetului codului.


Un exemplu deplin ilustrativ este proiectarea unui cod ternar cu lungimile
cuvintelor de cod de 1, 2, 2, 2, 2, 2, 3, 3, 3 simboluri.
Mai nti se testeaz teorema lui McMillan
K 3 1 5.3 2 3.3 3 1
ceea ce arat c proiectarea este posibil. Conform teoremei lui McMillan se
poate construi un cod instantaneu care este i unic decodabil. Acest cod este 0,
10, 11, 12, 20, 21, 220, 221, 222.
O privire recapitulativ asupra modului cum se analizeaz sistematic
propriettile unui cod conduce la urmtorul algoritm:
Pasul 1. Satisface codul conditia de prefix?
DA: atunci codul este instantaneu i este unic decodabil.
NU: se continu cu pasul 2.
Pasul 2. Este verificat inegalitate lui Kraft/McMillan?
DA: se continu cu pasul 3.
NU: codul nu este unic decodabil si, cu lungimile de cuvinte propuse, nu poate
fi reproiectat pentru a fi unic decodabil.
Pasul 3 (pasul ultimei anse). Se determin pe alt cale dac codul este unic
decodabil.
DA: problema este rezolvat dar vezi i NU.
NU: se poate reproiecta un cod instantaneu cu aceleai lungimi ale cuvintelor.
Lungimea medie a unui cod. Coduri compacte
Pentru un alfabet al sursei dat se pot construi mai multe coduri instantanee i
unic decodabile. Exist oare un criteriu de a alege dintre ele coduri mai bune
sau mai proaste? Un criteriu pentru aprecierea unui cod bun este lungimea
cuvintelor. Fr alte consideratii, un cod cu lungimea medie a cuvintelor de cod
mic este de preferat oricrui alt cod cu lungimea medie a cuvintelor mai mare
deoarece cu ct un cod este mai scurt (n medie) i n consecint mai rapid, cu
att este mai economic n utilizarea aparaturii i canalelor de comunicatie.
Cum se compar dou coduri? Cu ce metod se poate aprecia i msura efectul
mediu al codurilor cu lugimi de cuvinte diferite? O msur adecvat, bazat pe
lungimile cuvintelor de cod este lungimea medie a codului.
Fie un cod pentru o surs fr memorie sau pentru adjuncta uneia cu memorie
ale crei simboluri s1, s2, , sq sunt codificate prin cuvintele de cod X1, X2, ,
Xq. Fie probabilitile asociate simbolurilor sursei p1, p2, , pq i lungimile
cuvintelor de cod l1, l2, , lq. Se numeste lungimea medie a codului mrimea

58
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

L pi li
i 1

Sunt interesante codurile unic decodabile cu lungimea medie cea mai mic.
Fie o surs i simbolurile/mesajele ei aplicate pe o multime de cuvinte de cod
unic decodabile, care folosesc un alfabet cu r simboluri. Acest cod este compact
dac lungimea lui medie este mai mic sau cel mult egal cu lungimea medie a
oricrui alt cod unic decodabil care utilizeaz acelai alfabet pentru codarea
simbolurilor/mesajelor sursei date.
Problema determinrii codurilor compacte este fundamental pentru codarea
unei surse de informatie. ntruct intereseaz lungimea medie a cuvintelor de
cod i nu cuvintele de cod particulare, cercetarea poate fi restrns numai la
codurile compacte instantanee. Teorema lui McMillan permite aceasta.
Cteva observaii referitoare la codurile compacte:
Lungimea medie a unui cod bloc (cu cuvinte de lugime n) este chiar n i cea
mai mic lungime medie a unui cod bloc este log2q/log2r.
Pentru a obtine o lungime medie mic este necesar a se atribui celor mai
probabile simboluri, cuvintele de cod cele mai scurte. Aceast procedur are
sens deplin deoarece cu ct se atribuie cuvinte mai scurte unor simboluri, cu
att mai lungi sunt cuvintele de cod rmase a fi atribuite.
Exemple suport pentru aceste asertiuni:
Coduri de lungime cuvintelor egal (coduri bloc)
00 01 10 11
Coduri inegale ca lungime
coduri mai scurte - simboluri mai frecvente
0
10
110
111
coduri mai lungi - simboluri mai putin frecvente

Un exemplu-problem este prezentat n tabelul care urmeaz.


Simboluri
s1
s2
s3
s4

pi
0,5
0,1
0,2
0,2

Codul A
00
01
10
11

Codul B
1
000
001
11

ntrebri:
a) Care sunt lungimile medii ale codurilor din tabel?
b) Care cod este mai bun sub aspectul lungimii medii?
Codul A are lungimea medie LA = 2 bii/simbol.
Codul B are lungimea medie LB = 0,51 + 0,13 + 0,23 + 0,22 = 1,8
bii/simbol.
Codul B este mai bun dect codul A deoarece LB < LA.

59
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Se poate formula i o alt ntrebarea: exist un cod C cu lungimea medie nc


mai redus, sau codul B este un cod compact?
Problema gsirii unui cod compact poate fi reformulat astfel: s se gseasc
lungimile l1, l2, l3, l4 astfel nct
l
a) K 2 l1 2 l2 2 3 2 l4 1
b) Lungimea medie L = 0,5l1 + 0,1l2 + 0,2l3 + 0,2l4 s fie minim.
Problema este departe de a fi facil. Se pune problema existenei unei limite
inferioare a lungimii medii pentru o surs dat i pentru un alfabet de cod
precizat. Rspunsul este dat mai departe cu explicatia necesar. Entropia i
lungimea medie a codului sunt n strns legtur una cu cealalt. Orice cod
instantaneu pentru o surs S, care folosete un alfabet cu r simboluri are o
lungime medie L legat de entropia sursei H(S) prin relatia
L Hr(S) = H(S)/log2r
cu egalitate n cazul n care Pi r l i pentru toti indicii i. n relatie apare i
entropia calculat n baza r
q
1
1 q
1 H (S )
H r (S ) pi log r

pi log 2

pi log 2 r i 1
pi log 2 r
i 1
Urmeaz demonstraia relaiei limitative pentru lungimea medie L a cuvintelor
de cod:
q
q
1
H r (S ) L pi log r pi li
pi i 1
i 1
q

q
1
1
1 q
1
pi log r l i
pi ln

pi i 1
r
ln r i 1
pi r l i
i 1
Cum pentru x > 0 lnx x 1, rezult

1 q 1
1 q 1
1 q
1 q li

r 1
H r (S ) L
p

i
i
li
li

ln r i 1 pi r
ln r i 1
ln r i 1
ln r i 1 r

Dar inegalitatea lui Kraft spune c

pi log r

li

i 1

aa nct

H r (S ) L 0
ceea ce era de demonstrat.
Egalitatea are loc ntr-adevr cnd Pi r l i pentru toti indicii i.
Definirea entropiei H(S) ca un numr de bii per simbol capt un sens. H(S)
este lungimea medie a unui cod binar msurat n bii per simbol. Hr(S) este
lungimea medie cea mai mic a unui cod bazat pe un alfabet cu r simboluri i
este msurat n numrul de simboluri pe alfabetul codului.
Nu exist o garanie c se poate obtine n fapt un cod cu lungimea medie L =
Hr(S), dar relatia dintre L i Hr(S) exprim o eficien a codului prin
= Hr(S)/L

60
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

iar diferena fa de unitate


Cred = 1 = [L Hr(S)]/L
se numete redundana codului.
Se poate spune c un cod este redundant n msura n care el poate reprezenta
mai mult dect informatia generat de surs. Cu alte cuvinte un cod redundant
poate servi la codarea unei alte surse care genereaz mai mult informatie, cu
entropia mai mare dect Hr(S). Un cod cu L = Hr(S) este 100% eficient i 0%
redundant.
Exemplul anterior reluat conduce la lungimea medie minim (entropia) n bii
per simbol
H(S) = 0,5log 0,5 0,1log 0,1 2(0,2log 0,2) = 1,761
Pentru oricare din coduri, lungimea medie L este superioar acestei valori.
Codul A are lungimea medie LA = 2, aadar este eficient n proportie de =
100(1,761/2) = 88% i redundant n proportie de 12%.
Codul B ale lungimea medie LB = 1,8, asadar este eficient n proporie de =
100(1,761/1,8) = 98% i redundant n proporie de numai 2%.
Deloc surprinztor: codul B este i compact. Este putin probabil s se gseasc
o alt codare care s aibe o lungime medie cuprins ntre 1,761 i 1,8.
S vedem acum ce se ntmpl dac se schimb alfabetul codului din binar n
ternar. Calculul bazat pe tabelul alturat produce LC = 1,3.
Simboluri
s1
s2
s3
s4

pi
0,5
0,1
0,2
0,2

Codul C
0
21
1
20

Lungimea medie minim trebuie reevaluat deoarece este vorba acum de un alt
alfabet al codului. Limita inferioar a numerelor LC este
H3(S) = H(S)/log23 = 1,761/1,585 = 1,111
Aadar, codul C este eficient la nivelul 85%, mai slab chiar dect codul A.
Este codul C compact? Foarte probabil deoarece puin mai poate fi fcut (sau
nimic) pentru creterea eficienei acestui cod.
n general L Hr(S) i eficiena este inferioar unittii. Cum se pot obtine totui
eficiene mai apropiate de 100%? Conform demonstratiei de mai sus, aceasta se
ntmpl atunci cnd pentru toi indicii i au loc egalitile Pi r l i ceea ce este
posibil rar, pentru sursele numite surse speciale. n alti termeni, prin surse
speciale nelegem sursele care au probabilittile pi asociate simbolurilor astfel
nct numerele logr(1/pi) sunt ntregi. Pentru sursele speciale, un cod pe un
alfabet cu r simboluri, cu lungimile cuvintelor li = logr(1/pi) satisface condiiile
Pi r l i i de aici rezult L = Hr(S). Se atinge efectiv marginea inferioar a
lungimilor medii ale codurilor pentru acea surs i acel alfabet. Eficienta de

61
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

100% este atins i este atins implicit i lungimea medie cea mai mic posibil
pentru un cod compact.
Cteva surse speciale sunt prezentate n tabelele care urmeaz.
Sursa
s1
s2
s3
s4

pi
0,25
0,25
0,25
0,25

Probabilittile sunt toate de forma 2 2 ceea ce


pentru r = 2 produce un cod binar compact de
lungime medie de exact 2, adic de eficien
maxim

Cod
00
01
10
11

Sursa
s1
s2
s3
s4

pi
0,5
0,25
0,125
0,125

Probabilittile sunt respectiv de forma


1
2 ,2 2 ,2 3 ,2 3 ceea ce pentru r = 2 produce un
cod binar compact de lungime medie de exact
1,75, adic, din nou, de eficient maxim

Cod
0
10
110
111

Sursa
s1
s2
s3
s4
s5
s6
s7

pi
1/3
1/3
1/9
1/9
1/27
1/27
1/27

l
Probabilittile sunt de forma 3 i ceea ce
pentru r = 3 produce un cod binar compact de
lungime medie de exact 13/9, ct este i
entropia sursei calculat n baza 3, adic de
eficient maxim

Cod
0
1
20
21
220
221
222

Teorema de codare a lui Shannon


O versiune mai tare a rezultatului demonstrat mai devreme o constituie teorema
de codare pentru canale fr zgomot datorat lui Shannon. Teorema impune i o
limit superioar pentru lungimea medie L a codurilor compacte i arat cum
este posibil obtinerea unui cod eficient prin extinderi ale schemei de codare.
Sursele speciale din categoria celor de mai sus sunt extrem de rare. Pare deci
rezonabil ca pentru o surs oarecare s se caute coduri compacte de lungimi
egale cu cei mai mici ntregi superiori numerelor logr(1/pi), caz n care se obtine
1
1
log r
li log r 1
pi
pi
Ideea nu este extraordinar dar poate fi folosit n strategia de proiectare a unui
cod compact pentru stabilirea unei limitri superioare.
Pentru un cod D se pot afirma urmtoarele:
1. Limita inferioar a lungimii unui cuvnt particular, logr(1/pi) li poate fi
utilizat pentru a dovedi c inegalitatea lui Kraft este satisfcut i codul
este unic decodabil (instantaneu). Faptul implic totodat inegalitatea Hr(S)
LD ceea ce este n concordan cu un rezultat discutat mai sus.

62
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

2. Limita superioar a lungimii cuvntului i dat de li logr(1/pi) + 1 produce


prin multiplicare cu probabilitatea pi i nsumare dup indicele i
q

pili pi log r (1/ pi ) pi


i 1

i 1

i 1

adic are loc relaia LD Hr(S) + 1.


Acum, prin combinarea celor dou inegalitti se obtine
H r (S ) LD H r (S ) 1
Dar prin definiie un cod compact are L LD i HD(S) L, de unde
H r ( S ) L LD H r ( S ) 1
n final se obtine relatia
H r ( S ) L H r (S ) 1
Pentru extensia a n-a a sursei S se scrie o relatie similar
H r ( S n ) Ln H r ( S n ) 1
n care cu Ln se noteaz lungimea medie a cuvintelor de cod care corespund
simbolurilor i ale extensiei a n-a a sursei S. Cu rememorarea unui rezultat
obtinut mai devreme conform cruia
Hr(Sn) = nHr(S)
se scrie
nH r ( S ) Ln nH r ( S ) 1
i n cele din urm
L
1
H r ( S ) n H r (S )
n
n
care este expresia importantei teoreme de codare a lui Shannon pentru canale
fr perturbatii:
Pentru orice surs de informatie S, lungimea medie L a unui cod compact este
legat de entropia Hr(S) prin relatia
H r ( S ) L H r (S ) 1
i lungimea medie Ln a extensiei a n-a a codului acelei surse verific relatia
L
1
H r ( S ) n H r (S )
n
n
Prin trecere la limit se obtine
L
lim n n H r ( S )
n
Observatii
Ln /n este lungimea medie a cuvntului de cod n cazul codrii extensiei a na a sursei S. Asadar, lungimea Ln /n este ntr-un fel echivalent cu L.
Teorema lui Shannon implic faptul c lungimea medie Ln/n se poate
mpinge orict de aproape de limita Hr(S) (i eficiena orict de aproape de
100%) dac sunt utilizate extensii ale sursei S de ordin din ce n ce mai
mare. Preul pltit este majorarea exponenial (qn) a numrului de
simboluri de codat i implicit a codului nsusi.

63
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Problema extensiilor are o valoare aparte cnd sursa i codul folosesc acelai
alfabet. Desigur, pentru o surs binar i un canal digital binar codarea nu se
face n scopul unei conversii alfabetice. Un exemplu plin de sensuri l constituie
cazul sursei cu dou mesaje din tabelul alturat.
pi
0,8
0,2

Mesaje
s1
s2

Codarea cea mai comun este s1 0, s2 1 cu un cod compact care poate fi


apreciat ca trivial. Este acest cod cel mai bun? Cu Ln = L = 1 i H2(S) = 0,722
eficiena este de numai 72,2%.
Conform teoremei de codare a lui Shannon pentru canale fr perturbaii
H 2 ( S ) L1 H 2 ( S ) 1
ceea ce numeric se scrie 0,722 < 1 < 1,722.
Prin luarea unor extensii se poate face lungimea medie Ln/n s tind ctre 0,722.
Extensia a doua a sursei se prezint sub forma
Mesaje
s1s1
s1s2
s2s1
s2s2

pi
0,64
0,16
0,16
0,04

Codul compact
0
10
110
111

Probabilittile s-au calculat tinnd seam c sursa este fr memorie. Acum,


lungimea medie a cuvntului de cod este L2 = 1(0,64) + 2(0,16) + 3(0,16) +
3(0,04) = 1,56 bii pe perechea de simboluri. Valoarea L2/2 = 0,78 este mult
mai apropiat de 0,722, iar n termeni de eficien se afl la nivelul de 92,6%.
Se verific i de data aceasta c
L
1
H 2 ( S ) 2 H 2 (S )
2
2
ceea ce numeric nseamn 0,722 < 0,78 < 1,222.
Sugerm ca problem studierea apropierii de eficienta maxim de 100% n
cazul codului pentru extensia a treia.
Teorema lui Shannon pentru surse Markov
Pn acum s-au luat n considerare surse fr memorie. Ce se ntmpl n cazul
surselor Markov, surse cu memorie?
Fie o surs Markov S. Se admite modelul sursei fr memorie, adic se codeaz
sursa adjunct S . Deoarece sursa adjunct este fr memorie se aplic formula
de mai sus
H r (S ) L H r ( S ) 1

64
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

i pentru extensia a n-a, tot o surs fr memorie


H r ( S n ) Ln H r ( S n ) 1
Pentru o surs Markov de ordinul m, H ( S ) H ( S ) aa nct
H r ( S n ) H r ( S n ) m nH r ( S ) m
unde m este un numr nenegativ oarecare. Atunci
nH r ( S ) m Ln nH r ( S ) m 1
i

1
H r (S ) m n H r (S ) m
n
n
n n
o dubl inegalitate care spune acelai lucru ca n cazul surselor fr memorie:
pe msur ce n creste, Ln /n se apropie de Hr(S), entropia sursei. Aadar:
Teorema de codare a lui Shannon pentru canale fr perturbatii se menine
la limit, att pentru sursele fr memorie ct i pentru sursele Markov.
Limita inferioar a lungimii medii este Hr(S). Aceast entropie depinde ns
de modelul care se utilizeaz pentru surs. Entropia unei surse descrete la
ordine din ce n ce mai mari ale modelului Markov pn cnd este atins

entropia adevrat H r (S ) . Atunci, pentru a obtine o eficien ridicat,


codarea trebuie s se bazeze pe entropia adevrat a sursei deoarece aceasta
produce limita cea mai sczut a lungimii medii L.
Un exemplu aproape trivial n susinerea rezultatului de mai sus este cel al
sursei binare care genereaz irul alternativ de simboluri 0, 1, 0, 1, 0, 1, 0,
Dac discuia se restrnge la cazul fr memorie atunci P(0) = P(1) = 0,5 i
H(S) = 1. Codul binar compact reproduce sursa nssi, 0 0, 1 1, pentru
care L = 1 i se pare ca acest cod este 100% eficient. Aa s fie oare? Rezultatul
de mai sus vorbeste despre modelul adevrat al sursei, care este un model
Markov de ordinul nti cu reprezentarea din figura alturat. i de data aceasta

H ( S 1 ) H (S ) 0 i eficienta decade la 0%.

Desigur, cum este de ateptat

L
L
H ( S ) n H (S ) 1 0 n 1
n
n
Pentru extensia a doua
Sursa
00
01

pi
0
0,5

65
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Cod
0

10
11

0,5
0

1
-

Codul compact este 01 0 i 10 1 (se ignor secvenele de dou simboluri


identice deoarece ele nu apar niciodat) i are L2 = 1, iar L2 /2 = 0,5 = L.
Pentru extensia a n-a L Ln/n = 1/n i L 0 cnd n .
Teorema lui Shannon i capacitatea canalelor
n continuare este tratat teorema lui Shannon i codarea n cazul canalelor fr
perturbaii n legtur cu capacitatea canalelor. Se consider pentru aceasta
schema alturat.

n care sursa are q simboluri, codul i intrarea canalului au r simboluri.


Dac sursa produce 1 simbol n unitatea de timp atunci sursa transmite n medie
o informatie de H(S) bii n unitatea de timp. Simbolurile sursei sunt codate cu
cuvinte de cod cu lungimea medie de L simboluri ale codului. Viteza codorului
de transmitere prin canal R este definit ca numrul mediu de bii de informatie
pe simbolul de cod R = H(S)/L.
Un rezultat de mentionat: dintr-o relatie dovedit mai devreme, L H(S)/logr
rezult R logr. Dar pentru un canal fr zgomote, cu un alfabet de intrare cu r
simboluri, capacitatea este C = logr, prin urmare R C, cu egalitate atunci cnd
codul este eficient n proporie de 100%. Aadar, un cod 100% eficient
utilizeaz canalul la ntreaga lui capacitate.
Acum teorema lui Shannon relativ la canalele fr perturbatii se poate
reformula n varianta ei fundamental:
Teorema fundamental a lui Shannon (n varianta pentru canale fr
perturbatii):
Pentru un canal fr perturbatii este posibil ca o surs S, prin extensiile ei s fie
codat astfel nct debitul informatiei transmise R s fie orict de apropiat de
capacitatea C a canalului
L
lim n n H r ( S ) lim n R C
n
unde capacitatea canalului fr perturbatii este C = logr i debitul de informatie
este R = H(S)/L = [Hr(S)/(Ln/n)]logr.
Se pot face cteva observaii, unele necesitnd o (amnat pentru moment)
demonstraie:
Debitul de informatie R msoar efectiv entropia mesajelor codate.

66
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

O eficien a codrii de 100% este posibil cnd simbolurile codului sunt


echiprobabile deoarece R = C = logr este entropia maxim a unui alfabet de
cod.
Tendina de a obtine o eficien a codrii de 100% coincide cu tendina de a
utiliza canalul la maxima sa capacitate, ceea ce se produce cnd simbolurile
codului devin (practic) echiprobabile.
Exemplu. Fie secvena 0001100100 generat de o surs. Pe baza acestei
secvente se poate pune (poate numai provizoriu) Pr(0) = 0,7 i Pr(1) = 0,3 din
care rezult H(S) = 0,88. n ipoteza lipsei de memorie a sursei, extensia a doua
a ei, codat cu un cod compact produce mai nti codul din tabel
s1s2
00
01
10
11

Pr(s1s2)
0,49
0,21
0,21
0,09

Cod
0
10
110
111

i apoi
L2/2 = 0,905 L i = H(S)/L = 0,88/0,905 = 0,972
Codarea sursei are ca efect transmiterea n canal a secventei 0 10 110 10 0 caz
n care o estimare a probabilittilor celor dou simboluri conduce la Pr(0) = 5/9,
Pr(1) = 4/9 i H(S) = 0,99, mai aproape de entropia maxim.
Modul cum au fost evaluate probabilittile n acest exemplu este contestabil,
dar servete destul de convingtor la ilustrarea relatiei debit de informatie
capacitate a canalului.
Coduri compacte coduri Huffman
Am artat mai devreme c pn i pentru o surs simpl poate fi necesar uneori
a se lucra cu extensii de ordine nc mai mari de 2 sau 3. Stabilirea unui cod
compact este simpl numai n cazul unor surse generatoare de puine mesaje.
Pentru extensiile lor i pentru surse cu o list mai bogat de mesaje, codurile
compacte nu mai sunt att de evidente. Este necesar aadar o algoritmizare a
codrii prin coduri compacte.
O metod simpl a fost pus la punct de Huffman n 1952. Este nc utilizat
datorit simplitii ei. Mai departe este dezvoltat cazul codurilor compacte
binare, deci cu un alfabet al codului din dou simboluri.
Sursa redus. Se consider o surs S cu simbolurile s1, s2, , sq, i cu
probabilittile de aparitie p1, p2, , pq. Se consider totodat c probabilittile
sunt ordonate descresctor, p1 p2 pq. Prin combinarea ultimelor dou
simboluri ntr-unul singur cu nsumarea probabilittilor lor, se obtine o nou
surs, o surs redus a sursei S, care are acum numai q 1 simboluri. Fie
aceasta S1. Dup eventuala reordonare a probabilittilor i a simbolurilor, prin
combinarea din nou a ultimelor dou simboluri se obtine o alt redus a sursei

67
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

S, fie aceasta S2, care are i ea un simbol mai putin. Pe aceast cale se obine o
succesiune de surse reduse S1S2S3, ultima din succesiune cu numai dou
simboluri.
Dac pentru una din sursele reduse Sj codul compact este cunoscut, atunci codul
compact pentru sursa (redus) precedent Sj1, care poate fi n cele din urm
chiar sursa iniial se construieste astfel:
Se identific simbolurile din Sj1, s, scare au produs prin reunire simbolul
s din Sj . Simbolurilor din Sj1, exceptnd s sli se atribuie aceleai cuvinte
de cod ca i n Sj. Simbolurilor s, sli se atribuie cuvinte de cod noi obtinute
prin adugarea la cuvntul de cod al simbolului s, a unui 0, respectiv a unui 1.
i acum algoritmul de codare binar al lui Huffman
1. Se reduce sursa S la S1 i mai departe la S2, S3 etc. pn la sursa redus
compus numai din dou simboluri (sau pn la una pentru care stabilirea
unui cod compact este facil).
2. Se atribuie sursei ultime un cod compact. Dac este cu numai dou
simboluri se face atribuirea trivial 0 i 1.
3. Se parcurge invers secvena de surse reduse modificnd sau nu cuvintele de
cod dup reeta de mai sus. Codul atribuit sursei iniiale este codul compact
Huffman.
Ca exemplu, fie o surs cu ase simboluri/mesaje cu probabilittile de apariie
date imediat mai jos
s1
0,3

s2
0,4

s3
0,04

s4
0,1

s5
0,1

s6
0,06

Dup ordonarea descresctoare a probabilittilor se obtine ordinea din tabelul


care urmeaz. Acelai tabel contine sursele reduse cu probabilittile ordonate
necresctor. S-au marcat prin subliniere probabilittile simbolurilor rezultate
prin reunirea a dou simboluri din sursa redus precedent.
S
s2
s1
s5
s4
s3
s6

p
0,4
0,3
0,1
0,1
0,06
0,04

p/S1
0,4
0,3
0,1
0,1
0,1

p/S2
0,4
0,3
0,2
0,1

p/S3
0,4
0,3
0,3

p/S4
0,6
0,4

La parcurgerea invers a surselor reduse se obtin coduri compacte la fiecare


etap, pentru fiecare surs redus, inclusiv pentru sursa originar:

68
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

S
s2
s1
s5
s4
s3
s6

p
0,4
0,3
0,1
0,1
0,06
0,04

1
00
011
0100
01010
01011

p/S1
0,4
0,3
0,1
0,1
0,1

1
00
011
0100
0101

p/S2
0,4
0,3
0,2
0,1

1
00
010
011

p/S3
0,4
0,3
0,3

1
00
01

p/S4
0,6
0,4

0
1

Se poate scrie acum o variant a tabelului de codare, ordonat n raport cu


indicele simbolurilor generate de surs:
s1
s2
s3
s4
s5
s6

00
1
01010
0100
011
01011

Codul are o lungime medie de L = 2,2 bii/simbol, entropia sursei este H(S) =
2,1435, prin urmare eficienta codului este de cca. 97%.
Sunt de retinut urmtoarele:
Codul nu este unic: la realizarea surselor reduse sunt puncte unde sunt
posibile alegeri alternative ale simbolurilor care urmeaz a fi reunite ntrunul singur, iar atribuirea de 0 i 1 n cuvintele de cod poate fi inversat.
Alegerea posibil n unele etape poate conduce la cuvinte de cod de lungimi
diferite. dar niciodat lungimea medie nu se modific.
Nu este necesar a merge pn la o ultim surs redus de numai dou
simboluri. Dac pe parcurs se identific o codare pentru o surs redus mai
bogat n simboluri parcursul invers poate fi initiat imediat
Un exemplu de cod alternativ este prezentat n tabelul care urmeaz. Acesta se
deosebete de cel de mai devreme prin alegerea diferit a ordinei simbolurilor
n sursa redus S1: simbolul rezultat prin reunirea a dou simboluri din sursa
originar este plasat diferit n lista ordonat.
S
s2
s1
s5
s4
s3
s6

p
0,4
0,3
0,1
0,1
0,06
0,04

1
00
0100
0101
0110
0111

p/S1
0,4
0,3
0,1
0,1
0,1

1
00
011
0100
0101

p/S2
0,4
0,3
0,2
0,1

1
00
010
011

p/S3
0,4
0,3
0,3

1
00
01

p/S4
0,6
0,4

Lungimea medie a acestui cod compact este tot L = 2,2 bii/simbol.

69
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

0
1

Pentru obtinerea de coduri compacte Huffman n cazul mai general, r > 2,


procedura este asemntoare celei din cazul r = 2.
1. Sursele reduse se obtin prin reunirea a r simboluri ale sursei primare sau
anterioare pentru a obtine o surs cu r 1 simboluri mai puin.
2. La scrierea codului compact pentru o surs redus Sj1 pe baza codului
compact pentru sursa redus Sj se adaug cuvntului de cod al simbolului s
simbolurile de cod 0, 1, ..., r 1.
3. Dac ultima surs redus are exact r simboluri, ceea ce se ntmpl numai
dac sursa originar are r + (r 1) simboluri, cu natural, se procedeaz
ca n cazul binar. n caz contrar, se adaug la sursa primar un numr minim
de simboluri fictive cu probabilitatea de aparitie nul, astfel nct sursa s
aib r + (r 1) simboluri cu natural.
Un exemplu, o codare cu un alfabet al codului cuaternar, r = 4, pentru o surs
generatoare de 11 simboluri.
s1
s2
s3
s4
s5
s6
s7
s8
s9
s10
s11

0,22
0,15
0,12
0,10
0,10
0,08
0,06
0,05
0,05
0,04
0,03

2
3
00
01
02
03
11
12
13
100
101

0,22
0,15
0,12
0,10
0,10
0,08
0,07
0,06
0,05
0,05

2
3
00
01
02
03
10
11
12
13

0,23
0,22
0,15
0,12
0,10
0,10
0,08

1
2
3
00
01
02
03

0,40
0,23
0,22
0,15

0
1
2
3

Mai nti se verific relatia r + (r 1) = 11. Relatia produce 2,33. Se pune


acest numr egal cu cel mai mic ntreg superior lui 2,33, adic . Aceasta
arat c numrul de simboluri ale sursei ar trebui s fie 13, prin urmare se
adaug dou simboluri care n realitate nu sunt produse de surs niciodat din
cauza probabilittii lor nule. n tabelul alturat aceste simboluri nici mcar nu
figureaz, dar sunt subntelese.
Codul are lungimea medie L = 1,7, entropia sursei este H4(S) = 1,6137 i, n
consecin, eficiena codului este 95%.
Principii generale pentru compresia de date
Compresia de date este posibil ori de cte ori se exist redundan n acele date
i se realizeaz prin reducerea sau chiar eliminarea acelei redundane. Cu ct
redundana este mai mare cu att necesitatea de comprimare este mai acut i
mai interesant. Datele comprimate pot fi transmise i/sau memorate mai
eficient pentru c sunt mai puin redundante. Cu toate acestea redundana este
util n cresterea toleranei la erori. Prin reducerea redundanei, datele devin

70
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

mai puin robuste, mai vulnerabile n faa perturbaiilor/zgomotelor. Dac


numai civa bii sunt eronai ntr-un fisier comprimat sau ntr-un flux de
informaie transmis comprimat, faptul poate compromite ntregul fiier sau
transmisia n totalitatea ei. Dac ntr-un fiier redundant sau ntr-un ir cu
redundane transmis civa bii sunt corupi, este posibil ca informaia s fie
recuperat integral. De pild din irul eronat
T?? c?t s?t on th? m?t
se poate recupera propoziia n limba englez
The cat sat on the mat
tocmai pe baza redundanelor limbii engleze.
Ca exerciiu se sugereaz codarea Huffman pentru un text eronat i recuperarea
lui prin decodare.
Exist patru tipuri de redundane:
1. De distribuie a caracterelor: frecvenele de apariie a simbolurilor sunt
diferite.
2. De repetare a caracterelor: unele simboluri sunt repetate n secvenele n
care apar.
3. Legate de utilizarea frecvent a unor abloane: apar frecvent anumite
grupuri de simboluri.
4. Redundane poziionale: cnd apar, unele simboluri apar periodic sau ntr-o
aceeai localizare relativ.
Exemple:
Distribuia caracterelor:
n limbile europene vocalele apar mai frecvent, consoane ca X ori Z mult
mai rar.
Fiierele de date conin foarte frecvent cifre.
Un program surs scris n C conine foarte frecvent caracterele { i }.
Sursele fr memorie sunt tipice prin diversitatea de distribuire a
caracterelor.
Repetarea caracterelor:
n tabele, liste etc. separatorii ca spaiile, caracterele tab apar repetat.
n imagini apar informaii repetate prin pixelii de reprezentare a fondului.
abloane frecvente:
n limba englez apar frecvent succesiunile th, sym, for, but, n schimb
secvena tz este aproape exclus.
Sursele Markov sunt frecvent ablonarde.
Redundane poziionale:
Delimitatorii de cmpuri din bazele de date, din tabele, cuvintele de
indexare apar mereu n acceai poziie.
Deocamdat au fost luate n considerare numai extensii ale unei surse i codarea
Huffman cu scopul de a proiecta coduri compacte ct mai eficiente. Sunt ns
unele inconveniente de ordin practic pentru aceast tratare.

71
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Tabelul de codare trebuie inclus alturi de lista de simboluri ale sursei.


Pentru extensia a n a sursei sunt necesare qn linii ale tabelului ceea ce poate
deveni prohibitiv n operaia de crestere a eficienei codului.
Complexitatea codrii i decodrii (memorie, timp de calcul etc.) crete
aproximativ de acelai ordin, qn.
Codurile de lungime variabil necesit arbori de decodare complicai (n
contrast cu codurile de lungime fix, codurile bloc, cnd se foloseste o
operaie simpl de indexare).
Este necesar a se evalua statistica sursei, deci sursa trebuie vzut de dou
ori. De aici necesitatea stabilirii unui buffer pentru memorarea temporar a
caracteristicilor sursei i dac statistica sursei se modific este necesar
reformularea codului i retransmiterea.
Codarea Huffman poate trata eficient numai redundana sursei derivat din
repartiia caracterelor. Pentru utilizarea altor redundane sunt necesare
extensiile sursei.
Unele ajustri de finee ale codurilor Huffman la implementare pot ameliora o
parte din neajunsurile inventariate mai sus. i desigur, implementarea unei
scheme de codare este la fel de important ca i schema nsi.
Pentru situaii speciale se utilizeaz algoritmi speciali de codare cum sunt:
Codarea Run-Length pentru codarea rapid a redundanelor datorate
secvenelor repetitive.
Codarea aritmetic utilizat ca o alternativ mai eficient la codarea
Huffman.
Pentru utilizarea ct mai eficient a redundanelor exist tehnici de codare
moderne, care pot fi grupate n dou clase largi:
1. Codarea Markov bazat pe modelele Markov (DMC, PPM etc.)
2. Codarea adaptiv prin tehnicile de codare cu dicionar LZ (LZ77, LZ78
etc.)
Codarea run-length
Codarea run-length este o tehnic specializat care face codarea/decodarea
rapid i exploateaz redundanele legate de repetarea caracterelor. Codul
inlocuieste o secven de caractere repetate prin rezultatul operaiei de numrare
a acelor caractere. Pentru a indica nlocuirea se utilizeaz un caracter special.
Codul run-length nlocuieste o secven de caractere X repetate prin ScXCc n
care Sc este simbolul special, X este caracterul repetat i Cc este numrul de
caractere. Un exemplu n tabelul alturat
Sirul originar
$******55.72
--------Guns_______butter

72
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Sirul codat
$Sc*655.72
Sc-9
GunsSc_7butter

Observaii:
irul ScXCc este un descriptor compus din cel puin trei caractere. Asadar,
codarea este eficace dac repetarea caracterului X se produce de cel puin 4
ori.
Caracterul de numrare Cc este mrginit de numrul de bii pe care este
reprezentat. Pe 8 bii el nu poate depi 255. Pe 16 bii valoarea acceptat
creste cu lungirea concomitent a descriptorului Cc.
Alfabetul sursei poate s nu permit un caracter special. n asemenea cazuri
este necesar un tratament special (de pild n cazul transmiterii de la o surs
binar) (De judecat: de ce nu este posibil a se utiliza un caracter special
pentru o surs binar?)
Codoare Markov
Un sumar al cunostinelor acumulate pn la acest moment pune n eviden
urmtoarele:
Limita inferioar a lungimii medii a unui cod este entropia sursei sau mai
exact spus entropia evaluat pe baza unui model al sursei. Prin considerarea
unor extensii ale sursei, lungimea aceasta minim poate fi aproape atins i
codul devine mai eficient.
Modelul Markov pentru o surs poate avea entropii semnificativ mai reduse
dect sursa adjunct, entropia real H ( S ) fiind cea mai mic entropie deci
limita de jos a lungimii medii a cuvintelor de cod.
Aadar un codor aproape ideal al unei surse cu memorie ar trebui s foloseasc
un model Markov de un ordin m atfel nct entropia H ( S m ) s fie ct mai
apropiat de H ( S ) . Apoi o a n-a extensie a modelului Markov de ordinul m,
cu un n suficient de mare pentru ca lungimea medie a cuvintelor de cod s fie
ct mai apropiat de H ( S m ) .
n cazul codrii Huffman apar dificulti de implementare datorate incomoditii de a estima statistica modelului Markov al sursei pe baza unui volum
finit de date. Mai apare apoi i problema stabilirii unui cod pentru o extensie a
sursei de un ordin n mare. Codarea Huffman necesit memorii i calcule de
ordinul qn, aadar, pentru spaiul de memorare i pentru timpul de calcul se
nregistreaz o cretere exponenial cu n. Dar nu-i mai puin adevrat c pentru
n foarte mare nu este necesar a fi cunoscute toate cuvintele de cod cu
probabilitile lor deoarece din mulimea de mesaje n numr de qn numai unele
pot aprea efectiv, multe fiind cu totul improbabile.
O alternativ la codarea Huffman este codarea aritmetic. Aceasta se bazeaz
pe faptul c suma probabilitilor Pr(si1 si2 ...si n ) ale celor qn cuvinte ale
extensiei unei surse este egal cu unitatea. Toate numerele acestea se situeaz n
intervalul [0, 1) i este important a fi localizat subintervalul n care numrul

73
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Pr(si1 si2 ...si n ) se situeaz pentru ca apoi s fie transmii suficieni bii pentru

identificarea fr echivoc a acelui subinterval.


Exist modaliti variate de a implementa aceast tehnic de codare. Fr a intra
n toate detaliile, una dintre ele este prezentat n seciunile urmtoare.
Codarea aritmetic
Codarea Huffman a fost considerat mult vreme ca aproape optim pn cnd
n anii 70 ai secolului trecut a aprut ideea codrii aritmetice. Codul rezultat
este foarte apropiat ca lungime medie de entropia sursei i chiar o egaleaz n
cazuri speciale. Dezavantajele codrii Huffman constau n relativ complicata
generare a arborelui asociat i n limitarea la a coda simbolurile sau grupele de
simboluri ca atare. n ceva mai multe detalii, un cod Huffman binar este asociat
unui arbore binar echilibrat pe care se aproximeaz probabilittile simbolurilor:
se pornete din rdcina arborelui i se caut nodul asociat unui anumit simbol.
Ramurile sunt etichetate binar, astfel nct cuvntele de cod se regsesc ca
succesiuni de ramuri. Deoarece numrul de ramuri parcurse la o trecere este
totdeauna numr ntreg, fiecare simbol este codat de fiecare dat de o secven
de bii de lungime numr intreg. Aceast restricie nu mai apare dac se adopt
codarea aritmetic.
Codarea aritmetic utilizeaz un tabel de probabilitti unidimensional n loc de
un arbore. Acest gen de codare cuprinde dintr-o dat ntregul mesaj. n acest
mod devine posibil codarea simbolurilor folosind i fragmente de bii. Numai
c nu se poate accesa cuvntul de cod la ntmplare: utiliznd codarea Huffman
se pot specifica marcaje care s permit decodarea pornind din interiorul
secvenei de bii. Desigur, mesajele se pot diviza i n codarea aritmetic, dar
divizarea limiteaz eficiena deoarece utilizarea fragmentelor de biti la limite
este dificil.
Ce se urmreste aici este cutarea unei modalitti de a coda un mesaj fr a
atribui un cod binar fix fiecrui simbol. Examinarea probabilittilor asociate cu
simbolurile arat c toate probabilittile sunt numere n intervalul [0, 1), care
nsumate dau totdeauna unitatea. Acest interval contine extrem de multe
numere reale, astfel c este posibil a coda orice secven posibil printr-un
numr din intervalul [0, 1).
Intervalul se partiioneaz potrivit probabilittilor asociate simbolurilor sursei.
Prin iterarea acestei partiionri pentru fiecare simbol din mesaj, se rafineaz
intervalul la un rezultat unic care reprezint ntregul mesaj. Orice numr din
intervalul ultim este un cod valid.
Fie pentru aceasta un model M care atribuie o probabilitate PM(ai) fiecrui
simbol ai care compune mesajul. Intervalul [0,1) se poate acum diviza folosind
aceste valori deoarece suma este totdeauna egal cu 1. ntinderea subintervalului i corespunde exact probabilittii simbolului ai.
Un exemplu de creare a intervalelor. Fie M un model care utilizeaz alfabetul A
= {a, b, c, d} i fie probabilittile simbolurilor n mesaj

74
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

PM(a) = 0,5 PM(b) = 0,25 PM(c) = 0,125 PM(d) = 0,125


Intervalul [0, 1) este divizat ca n figur

Definirea unor limite superioare i inferioare. De la acest punct, limitele superioar i inferioar ale intervalului curent vor fi numite high i low. Limitele
subintervalelor sunt calculate din probabilitti cumulate:
k

K(ak) =

(ai )

i 1

Valorile high i low se schimb n procesul de codare, dar probabilittile


cumulate rmn constante (pentru c modelul ales M este invariant n timp).
Aceste probabiltti sunt utilizate pentru a actualiza cele dou valori high i low.
n cazul exemplificat valorile sunt conform tabelului

Divizarea intervalului unitar [0, 1) depinde de model. Pentru moment, aici se


presupune c diviziunea este dat de un tabel de probabilitti cumulate K(ai)
mereu acelasi. Tipul acesta de model exist n realitate i este denumit model
static.
Codarea ncepe cu initializarea intervalului I = [low, high) la valorile low = 0 i
high = 1. La citirea primului simbol s1, intervalul I este redimensionat n acord
cu simbolul. Cum sunt calculate limitele lui? Fie s1 = ak. Atunci, limita
inferioar este
k 1

low PM (ai ) K (ak 1 )


i 1

i limita superioar este


k

high PM (ai ) K (ak )


i 1

Noul interval I este pus acum a fi [low, high). Calculul nu este o noutate: el
este conform cu metoda matematic folosit la construcia figurii de mai sus.
Aspectul cel mai relevant al acestei metode este c subintervalul I este mai larg
pentru un simbol s1 mai probabil. Cu ct este mai larg intervalul cu att mai
redus este numrul de cifre dup virgul i cuvtul de cod este mai scurt. Toate
numerele care vor fi generate n iteratiile urmtoare vor fi localizate n
intervalul I deoarece acesta este utilizat ca interval de baz, asa cum a fost mai
devreme intervalul I = [0, 1).

75
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Se procedeaz analog cu simbolul urmtor, s2 = aj. Apare acum o problem


diferit: modelul M s-a asociat cu o partiie a intervalului I = [0, 1) i nu cu o
partiie a intervalui I nou calculat.
Intervalul I trebuie scalat i limitele lui deplasate pentru a se potrivi cu
intervalul nou. Scalarea se obtine prin multiplicarea lungimii intervalului cu
diferenta high low. Deplasarea se face prin adunarea valorii low. Rezultatul
este
j 1

low low (high low) PM (ai ) low (high low) K (a j 1 )


i 1

high low (high low) PM (ai ) low (high low) K (a j )


i 1

Aceast regul este valabil pentru toti paii, n particular i pentru primul cnd
low = 0 i high low = 1. Deoarece vechile limite nu mai sunt necesare, ele se
pot nlocui, se pot suprascrie: low low; high high.
Calculul acesta iterativ poate prea complicat, dar un exemplu simplu va lmuri
lucrurile.
Fie S secvena abaabcda sub modelul ideal M de mai sus.
La nceput se ia intervalul [0, 1) i primul simbol din S. Deoarece s1 = a noile
limite calculate sunt
low = 0
high = 0 + 0,51 = 0,5
Intervalul nou rezultat este [0, 0,5). Iteraia urmtoare codeaz un b i
low = 0 + 0,5(0,5 0) = 0,25
high = 0 + 0,5(0,5 0) + 0,25(0,5 0) = 0,375
Urmeaz un a i
low = 0,25
high = 0,25 + 0,5(0,375 0,25) = 0,3125
apoi nc un a
low = 0,25
high = 0,25 + 0,5(0,3125 0,25) = 0,28125
Al cincilea caracter este un b
low = 0,25 + 0,5(0,28125 0,25) = 0,265625
high = 0,25 + 0,5(0,28125 0,25) + 0,25(0,28125 0,25) = 0,2734375
urmat de un c
low = 0,265625 + 0,5(0,2734375 0,265625) + 0,25(0,2734375 0,265625)
= 0,271484375
high = 0,265625 + 0,5(0,2734375 0,265625) + 0,25(0,2734375 0,265625)
+ 0,1250,25(0,2734375 0,265625)
= 0,2724609375
un d
low = 0,271484375 + (0,5 + 0,25 + 0,125)(0,2724609375 0,271484375)
= 0,2723388672
high = 0,2724609375

76
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

i n cele din urm un alt a


low = 0,2723388672
high = 0,2723388672 + 0,5(0,2724609375 0,2723388672)
= 0,2723999024.
Aadar intervalul rezultat n final este [0,2723388672 0,2723999024).
Figura urmtoare ilustreaz aceste calcule.

Acum se stabilete codul numr real. Ar trebui specificat intervalul calculat. Sar putea memora limitele de sus i de jos ale intervalului, dar aceasta ar fi o
schem ineficient. tiind c intervalul n ntregime este unic pentru un mesaj,
se poate memora n siguran un singur numr din acest interval. Lema
urmtoare contureaz aceast tehnic.
Lem. Codurile tuturor mesajelor de aceeai lungime formeaz o partitie a
intervalului I = [0, 1).
Acest rezultat transpare limpede din figura alturat. O concluzie a lemei deriv
din observatia c fragmentele/clasele partiiei devin infinit de mici pentru
mesaje infinit de lungi. n practic nu exist mesaje infinit de lungi, dar exist
mesaje foarte lungi i partiiile mrunte rezultate pot crea probleme n
calculatoarele obinuite, care utilizeaz o aritmetic finit. Soluia este o
operatie de re-scalare.

n exemplul prezentat mai devreme se poate memora 0,27234 sau oricare alt
valoare din interval. Se admite suplimentar faptul c se cunoate plasarea
finalului de mesaj, dei nu acesta este cazul n general (de pild n transmiterea

77
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

la distan). Manipularea finalului de mesaj este o problem aparte. Pentru


moment este dat un sumar al codrii:
low =0;
high=1;
do {
temp = read_symbol();
ival = model->get_interval(temp);
\\ returns the interval containing temp
low = calculate_lower_bound(ival);
high = calculate_upper_bound(ival);
} while (!end_of_sequence());
return(value_in_interval(low,high));

Decodarea. Pentru a decoda o secven, trebuie parcurs codarea cumva n sens


invers. Este dat valoarea V = Code(S) i trebuie recuperat secvena originar
S. Se admite c lungimea mesajului este cunoscut: l. La prima iteraie se
compar V cu fiecare interval I = [K(ak1), K(ak)) pentru a-l gsi pe acela care
corespunde primului simbol s1 din secventa S.
Pentru a calcula simbolul urmtor, trebuie modificat partiia probabilistic n
acelai mod n care s-a procedat la codare:
low := low + K(ai1)(high low)
high := low + K(ai)(high low)
cu i ndeplinind condiia
low V high
i cu ai simbolul urmtor n secvena de decodat. i de data aceasta, cazul de
pornire este caz special n formula general. Iteratia este foarte asemntoare
celei de la codare aa nct implementarea n-ar trebui s ridice probleme.
Exemplu de decodare. Pe acelai exemplu de mai sus, codul rezultat era V =
0,27234 i se presupune c lungimea secventei codate este cunoscut: l = 8. Se
pornete cu low = 0 i high = 1 i se observ c V se situeaz n primul interval
[0, 0,5). Simbolul corespunztor este a i se pun
low = 0
high = 0,5
n iteratia urmtoare se observ c 0,27234 se plaseaz ntre limitele
low = 0 + 0,5(0,5 0) = 0,25
high = 0 + 0,75(0,5 0) = 0,3125
i se decodeaz un b.
La iteratia urmtoare
low = 0,25 + 0(0,3125 0,25) = 0,25
high = 0,25 + 0,5(0,3125 0,25) = 0,28125
evideniaz un a.
Iteratiile urmtoare sunt foarte asemntoare. De aceea sunt omise, cu trecerea
imediat la ultima iteratie:
low = 0,2723388672 + 0(0,2724609375 0,2723388672) = 0,2723388672
high = 0,2723388672 + 0,5(0,2724609375 0,2723388672) = 0,2723999024

78
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Aici se identific a-ul final din secvena codat abaabcda.


Din motive de similitudine, se poate folosi i aici figura de mai sus, cea cu
partiiile succesive.
Algoritmul de decodare poate fi sumarizat astfel:
seq = ;
low = 0;
high = 1;
do {
low = model->lower_bound(Value,low,high);
high = model->upper_bound (Value,low,high);
low = low;
high = high;
seq .= model->symbol_in_interval(low,high);
} while ( !end_of_sequence() );
return(seq);

Pentru a calcula limitele low, high la fircare etap, s-a utilizat aritmetica n
virgul mobil. Dac nu se recurge la mijloace suplimentare, se poate ajunge la
numere cu foarte multe cifre dup virgul, chiar infinit de multe (cum este cazul
cu 1/3). Numerele de acest gen sunt dificil de manipulat ntr-o aritmetic finit.
Prevenirea unor asemenea situaii este subiectul paragrafului urmtor.
Unicitatea reprezentrii. Fie pentru ai codul C(ai) definit ca
1
C (ai ) K (ai 1 ) PM (ai )
2
C(ai) este centrul intervalului ai. Codul C(ai) poate fi scurtat la lungimea

1
l (ai ) log
1
PM (ai )

cu logaritmul n baza 2 (se folosesc aici notaiile i pentru a extrage dintrun numr real ntregul egal sau imediat superior, respectiv ntregul egal sau
imediat inferior).
Se definete C (ai )l ( a i ) ca fiind codul pentru ai scurtat la l(ai) digii.
Exemplu. Fie S = s1s2s3s4 o secven pe alfabetul A = {a1, a2, a3, a4}. Fie
probabilittile calculate pe baza modelului M
PM(a1) = 1/2, PM(a2) = 1/4, PM(a3) = 1/8, PM(a4) = 1/8
Tabelul urmtor arat o codare binar posibil pentru secvena propus.

1
Reprezentarea binar pentru C(ai), dup scurtare la lungimile log
1,
PM (ai )

a produs codul din tabel.

79
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Demonstraie. Se demonstreaz unicitatea codului generat n modul artat. Mai


nti se alege codul C(ai) ca reprezentant al simbolului ai. Dar i orice alt
valoare din intervalul [K(ai1), K(ai)) poate fi definit ca un cod unic pentru ai.
Pentru a arta c C (ai )l ( a i ) este i el un cod unic pentru ai este suficient a
arta c acest cod apartine intervalului [K(ai1), K(ai)).
Deoarece pentru a obtine C (ai )l ( a i ) s-a trunchiat reprezentarea binar a lui
C(ai), este satisfcut inegalitatea urmtoare:
C (ai )l ( ai ) C(ai)
sau mai n detaliu
0 C(ai) C (ai )l ( a i )

1
l ( ai )

2
Deoarece C(ai) este prin definitie mai mic dect K(ai) rezult c
C (ai )l ( ai ) < K(ai)

Pe de alt parte
1
1
1
1
1
P (a )

M i
l ( ai )
1
1

1
1
log
1
log
2
2
log
1
P (a )
2 PM ( ai )
2 2 PM ( ai ) 2 P (a )
2 M i
M
i
Dar prin definiie
PM (ai )
C (ai ) K (ai 1 )
2
de unde
1
C ( a i ) K ( a i 1 ) l ( a i )
2
i
C (ai )l ( ai ) K(ai1)
cu concluzia final
K(ai1) C (ai )l ( a i ) < K(ai)
S-a dovedit astfel c C (ai )l ( a i ) este o reprezentare pentru C(ai) lipsit de
ambiguiti. Pentru a arta c nici la decodare nu apar ambiguiti, trebuie
dovedit c acest cod ndeplineste condiia de prefix.
Fe un numr x din intervalul [0, 1) i reprezentarea lui binar x1x2xn. Este
evident c orice alt numr y care n reprezentare binar are prefixul x1x2xn se
situeaz n intervalul [x, x + 1/2n). Este tiut c dac simbolurile ai i aj sunt

80
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

diferite, atunci valorile asociate C (ai )l ( a i ) i C (a j )l ( a ) aparin unor intervale


j
disjuncte [K(ai1), K(ai)), respectiv [K(aj1), K(aj)).
Ar trebui artat c pentru orice simbol ai, intervalul
1

C (ai )l ( ai ) , C (ai )l ( ai ) 2l ( ai )
este continut n intervalul [K(ai1), K(ai)), ceea ce ar face imposibil ca simbolul
ai s aib un cod care s fie prefix pentru codul unui alt simbol aj, diferit.
O inegalitate stabilit mai devreme
C (ai )l ( ai ) K(ai1)
sprijin demonstraia pentru limita inferioar. Este acum suficient a arta c
1
K(ai) C (ai )l ( ai ) l ( ai )
2
Inegalitatea aceasta este evident deoarece
P (a )
1
K (ai ) C (ai )l ( ai ) K (ai ) C (ai ) M i l ( ai )
2
2
Aadar, codul este liber de prefix. n particular, scurtarea lui C(ai) la l(ai) bii
produce un cod decodabil fr ambiguitti. S-a rezolvat astfel problema
utilizrii aritmeticii finite n cazul codurilor n virgul mobil.
Codarea ca o secvent de biti. Pentru a implementa eficient codarea aritmetic,
trebuie inut seam de unele restricii: nu exist numere reale infinit de lungi i
implementrile cu ntregi pure sunt un mod mai rapid de calcul pentru
procesoarele de genul celor din faxuri (care utilizeaz codarea aritmetic sub
protocolul G3).
Exist cel puin o implementare care consum foarte putin memorie (un singur
registru de 32 de biti pentru limite) i numai cteva instructiuni simple n
numere ntregi. Ieirea este o secven de bii fr ambiguitti, care poate fi
memorat sau expediat din mers.
Compresia LZW
Compresia LZW ii datoreaz numele realizatorilor ei, A.Lempel i J.Ziv (1978)
i Terry A.Welch (1984), cel care a completat lucrarea primilor doi. Din cauza
simplittii i versatilitii ei, este tehnica cea mai avansat pentru comprimarea
datelor de uz general. Tipic, este de ateptat ca algoritmul LZW s comprime
fiiere text, fiiere executabile i alte genuri de fiiere similare la circa jumtate
din dimensiunea lor nainte de comprimare. Tehnica LZW este deosebit de
performant n cazul fisierelor extrem de redundante, cum sunt tabelele,
fiierele surs, semnalele obtinute prin sistemele de achiziie de date. Pentru
aceste cazuri, rapoarte de compresie de 1:5 sunt foarte uzuale. LZW este baza
unor utilitti pentru calculatorul personal care pretind dublarea capacittii
discului.
Comprimarea LZW este totdeauna folosit pentru fiierele imagine GIF i ofer
o optiune de luat n considerare pentru fisierele TIFF i PostScript.

81
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Compresia LZW utilizeaz un tabel de coduri precum cel prezentat mai jos.
ntr-o alegere obinuit, se asigur un tabel cu 4096 de linii. Datele codate LZW
ntru comprimare constau n totalitate din numere pe 12 biti, fiecare numr
referindu-se la una din poziiile din tabelul de coduri, un gen de dicionar.
Decomprimarea se execut prin luarea fiecrui cod din fiierul comprimat i
traducerea lui folosind tabelul de coduri, la caracterul sau caracterele pe cale
l/le reprezint. Codurile de la 0 la 255 din tabelul dat ca exemplu sunt
totdeauna atribuite reprezentrii caracterelor de un singur byte lungime din
fisierul de intrare, cel a crui comprimare se urmrete. De pild, dac s-ar
utiliza numai aceste prime 256 de coduri, fiecare byte ar fi convertit la 12 biti n
fiierul codat LZW, ceea ce ar produce un fiier cu 50% mai mare. n timpul
decomprimrii fiecare cod de 12 biti din fisierul codat LZW ar fi tradus invers,
prin intermediul tabelului cu coduri, n bytes/octei unici. Desigur, acest mod de
a trata lucrurile nu este de vreo utilitate.
Coduri
0000
0001

0255
0256
0256

Traducere
0
1

255
145 201 4
248 245

4095

xxx xxx xxx

Tabel de coduri (exemplu)

Metoda LZW realizeaz compresia prin utilizarea de coduri de la 256 la 4095


pentru a reprezenta secvene de bytes. De exemplu, codul 523 poate reprezenta
secventa de trei bytes 231 124 134. De fiecare dat cnd algoritmul de
comprimare ntlnete aceast secven n fiierul de intrare, n fiierul codat
este plasat codul 523. n timpul decomprimrii, codul 523 este tradus cu ajutorul
tabelului de coduri pentru a re-crea secvena originar de trei bytes. Cu ct
secvena atribuit unui singur cod este mai lung i cu ct secventa apare
repetat de mai multe ori, cu att mai important este compresia obtinut.
Dei tratarea aceasta pare simpl, sunt dou obstacole majore de depit:
cum se determin secvenele care trebuie s fie cuprinse n tabelul-dicionar
de coduri si
cum se furnizeaz programului de decomprimare acelai tabel-dicionar de
coduri utilizat la comprimare.
Algoritmul LZW rezolv strlucit ambele probleme.
Cnd programul LZW ncepe codarea unui fiier, tabelul de coduri contine
numai primele 256 de linii, numai codurile alfabetului de baz. Celelalte
echivalene rmn a fi completate. Aceasta nseamn c primele coduri care
merg n fiierul comprimat sunt pur i simplu bytes/octei singulari din fisierul

82
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

de intrare convertii la 12 biti. Pe msur ce codarea avanseaz, algoritmul LZW


identific n date secvenele repetate i le adaug tabelului-dicionar de coduri.
Efectul de comprimare apare clar atunci cnd o secven este ntlnit a doua
oar.

Organigrama programului de comprimare LZW.


Variabila CHAR este de un singur byte, variabila STRING este de lungime variabil.
Fisierul de comprimat este citit byte cu byte.
Codurile sunt scrise n fisierul de ieire pe 12 biti.

Punctul cheie al metodei este acela c o secven din fiierul de intrare nu este
adugat n tabelul de coduri pn cnd nu a fost aezat n fisierul comprimat
ca bytes individualizati (coduri de la 0 la 255). Acesta este un fapt important
deoarece permite programului de decomprimare s reconstruiasc tabelul-

83
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

dictionar de coduri din datele comprimate fr a fi necesar transmiterea


separat a acelui dicionar.
Figura de mai sus arat schema logic (organigrama) a comprimrii LZW.
Tabelul care urmeaz reprezint pas-cu-pas detaliile algoritmului pentru un
fisier de intrare alctuit din numai 45 de bytes, un text ASCII n limba englez:
the/rain/in/Spain/falls/mainly/on/the/plain/
CHAR
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

t
h
e
/
r
a
i
n
/
i
n
/
S
p
a
i
n
/
f
a
l
l
s
/
m
a
i
n
l
y
/
o
n
/
t
h
e
/
p
l
a

STRING+
CHAR
t
th
he
e/
/r
ra
ai
in
n/
/i
in
in/
/S
Sp
pa
ai
ain
n/
n/f
fa
al
ll
ls
s/
/m
ma
ai
ain
ainl
ly
y/
/o
on
n/
n/t
th
the
e/
/p
pl
la

Este n
tabel?
Nu
Nu
Nu
Nu
Nu
Nu
Nu
Nu
Nu
Da (262)
Nu
Nu
Nu
Nu
Da (261)
Nu
Da (263)
Nu
Nu
Nu
Nu
Nu
Nu
Nu
Nu
Da (261)
Da (269)
Nu
Nu
Nu
Nu
Nu
Da (263)
Nu
Da (256)
Nu
Da (258)
Nu
Nu
Nu

Iesire

Adaugare
n tabel

t
h
e
/
r
a
i
n
/

256 = th
257 = he
258 = e/
259 = /r
260 = ra
261 = ai
262 = in
263 = n/
264 = /i

262
/
S
p

265 = in/
266 = /S
267 = Sp
268 = pa

261

269 = ain

263
f
a
l
l
s
/
m

270 = n/f
271 = fa
272 = al
273 = ll
274 = ls
275 = s/
276 = /m
277 = ma

269
l
y
/
o

278 = ainl
279 = ly
280 = y/
281 = /o
282 = on

263

283 = n/t

256

284 = the

258
p
l

285 = /p
286 = pl
287 = la

84
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Noul
STRING
t
h
e
/
r
a
i
n
/
i
in
/
S
p
a
ai
n
n/
f
a
l
l
s
/
m
a
ai
ain
l
y
/
o
n
n/
t
th
e
e/
p
l
a

Comentarii
Nici o actiune

Prima potrivire

ai, n tabel, ain, nu


ain adugat n tabel

ain mai lung, n tabel

42
43
44

i
n
/

ai
ain
ain/

45

EOF

Da (261)
Da (269)
Nu

269

288 = ain/

ai
ain
/
EOF,
STRING la ieire

Cnd algoritmul preia din fisierul de intare caracterul a de pild, el citeste


valoarea 01100001 (97 reprezentat pe 8 bii), codul ASCII pentru a. Cnd
scrie caracterul a n fiierul codat, scrie de fapt 00000110001 (97 reprezentat
pe 12 biti).
Algoritmul de comprimare utilizeaz dou variabile: CHAR i STRING.
Variabila CHAR reine un singur caracter, o valoare ntre 0 i 255. Variabila
STRING stocheaz un ir de lungime variabil, un grup de unul sau mai multe
caractere, cu fiecare caracter n calitatea de byte. n pasul 1 din organigrama din
figur, programul preia primul byte din fiierul de intrare i-l plaseaz n
variabila STRING. Tabelul cu operatia de comprimare arat actiunea aceasta n
linia 1. Urmeaz o bucl a algoritmului parcurs pentru fiecare byte din fisierul
de intrare, cel de comprimat, cu depozitare n variabila CHAR. Apoi, tabelul de
coduri este parcurs n cutarea unei secvente deja depuse, aceeai cu
STRING+CHAR concatenate (pasul 3).
Dac nu se gseste o potrivire cu vreunul din irurile din tabel, se execut trei
actiuni conform pasilor 4, 5 i 6. n pasul 4, se trece n fisierul comprimat
codul pe 12 bii corespunztor irului STRING. n pasul 5, se creaz n tabel un
nou cod pentru concatenatul STRING+CHAR. n pasul 6, variabila STRING ia
valoarea variabilei CHAR. Un exemplu de astfel de actiuni succesive este artat
n liniile 2 la 10 din tabel, pentru primii 10 bytes/caractere din fisierul exemplu.
Cnd are loc o potrivire ntre un cod din tabel, concatenatul STRING+CHAR
este depus n variabila STRING fr vreo alt actiune (pasul 7). Aadar, dac n
tabel se identific o secven care se potrivete, nu se ntreprinde nimic nainte
de a stabili dac vreo secven nc mai lung se regseste n tabelul de
echivalene. Un exemplu se poate vedea n linia 11 din tabel, unde secvena
STRING+CHAR = in este identificat ca avnd deja un cod n tabel. n linia
urmtoare, se adaug la secven caracterul urmtor din fiierul de intrare, /, i
se caut n tabel secvena in/.
Secvena aceasta mai lung nu este n tabelul de coduri i de aceea ea se adaug
n tabel i se trimite la iesire codul secvenei mai scurte care este n tabel (codul
262) i se pornete de la cap cutarea de secvene care ncep cu caracterul /.
Aceast derulare de evenimente se continu pn la epuizarea fiierului de
intrare. Programul este ncheiat cu codul valorii curente din variabila STRING
care este scris n fiierul comprimat (pasul 9 din figur, linia 45 din tabel).

85
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Organigrama programului de decomprimare [8].


Variabilele OCODE i NCODE (oldcode i newcode) retin codurile pe 12 biti din fisierul
comprimat. CHAR retine un singur byte, STRING retine un sir de bytes.

86
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Organigrama algoritmului de decomprimare este dat n figura de mai sus.


Fiecare cod este citit din fisierul comprimat i comparat cu tabelul de coduri n
scopul traducerii. Pe msur ce fiecare cod este prelucrat astfel, tabeluldictionar de coduri este actualizat astfel nct el este mereu reproducerea fidel
pn la acea etap a tabelului folosit la comprimare. Totusi, apare uneori o mic
complicatie n rutina de decomprimare. n cazul unor anumite combinaii de
date, algoritmul de decomprimare primete un cod care nu exist nc n tabeluldictionar de coduri. O astfel de situatie este rezolvat n paii 4, 5 i 6.
Pentru cele mai elementare programe bazate pe algoritmul LZW, este necesar
numai un numr redus de linii de program. Dificultatea real se afl n
administrarea eficient a tabelului de coduri. Tratarea brut a acestei probleme
are ca rezultat un necesar de memorie mare i o execuie a programelor lent. n
programele de comprimare LZW comerciale sunt folosite mai multe trucuri,
artificii pentru a creste performana lor. De pild, problema memoriei alocate
apare deoarece nu se cunoate dinainte ct de lung va fi fiecare ir de caractere
pentru fiecare cod. Multe programe LZW rezolv problema aceasta prin
exploatarea naturii redundante a tablelului de coduri. De exemplu, s revedem
linia 29 din tabelul de mai sus, unde codul 278 este asociat cu irul ainl. n loc
s se memoreze acesti 4 bytes, codul 278 poate fi memorat sub forma codul 269
+ l, cu codul 269 deja definit ca asociat cu ain n linia 17. Asemntor, codul
269 s-ar putea memora sub forma codul 261 + n, cu codul 261 asociat mai
devreme cu ai n linia 7. Acest mod de tratare funcioneaz totdeauna: orice cod
poate fi exprimat ca un cod anterior plus un caracter nou.
Timpul de execuie al algoritmului de decomprimare este afectat de cutarea n
tabelul de coduri a unei ehivalene. Prin analogie, se poate face referire la
cutarea numelui unei persoane ntr-o carte de telefon mai special, singura la
dispozitie, care este ordonat dup numrul de telefon i nu dup nume,
alfabetic. Aceast ordine cere o cutare pagin cu pagin pentru a gsi numele
dorit. Situatia este la fel de nclinat spre ineficien n cazul cutrii printre cele
4096 de coduri a unuia care s se potriveasc cu un anumit ir de caractere.
Rspunsul: organizarea tabelului de coduri astfel nct ceea ce se caut s spun
i unde trebuie cutat (cum ar fi o carte de telefon parial ordonat alfabetic). Cu
alte cuvinte, a nu se atribui cele 4096 coduri n locaii de memorie una dup
alta. Mai degrab se mparte memoria n seciuni pe baza secvenelor care vor fi
depuse acolo. De pild, se presupune c se urmreste n tabel existena secvenei
codul 329 + x. Tabelul de coduri trebuie organizat astfel nct x-ul s indice
unde trebuie nceput cutarea. Sunt multe scheme de acest gen pentru
gestionarea tabelelor i ele tind s devin destul de complicate.
Acest aspect aduce n discuie ultimul comentariu asupra schemelor de
comprimare LZW i similare: este vorba de un domeniu foarte competitiv. Dac
bazele compresiei de date sunt relativ simple, tipurile de programe comerciale
de comprimare/decomprimare sunt extrem de sofisticate. Companiile fac bani
buni din vnzarea acestor programe i de aceea protejeaz cu grij secretele
produciei prin patente i altele asemenea. Ateptarea din partea amatorilor de a
realiza aceleai performane n doar cteva ore de munc este iluzorie.

87
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Compresia cu pierdere de informaie


Mai nti, prin cteva exemple, o scurt revedere a compresiei fr pierderi.
Schema bloc a codrii fr pierderi este urmtoarea:

surs X = {X1, X2, } codor B(X) = {B1, B2, }


. . . canal

{B1, B2, }

decodor

canal . . .

{X1, X2, }

Operatiile de codare i de decodare reproduc la iesirea din canal secvena


generat de sursa de informatie.
Exemplul 1 ilustreaz modul cum poate lucra compresia de date la memorarea
sau transmiterea datelor. Se presupune c sursa de date este o imagine digital
oarecare de dimensiunile geometrice 512512, n 256 de tonuri. Fiecare ton
este reprezentat de o valoare a intensitii din multimea {0, 1, 2, , 255}.
Matematic, aceast imagine este o structur matricial 512512, cu elemente
din mulimea mentionat (elemetele se numesc pixeli). Intensitatea cu care este
caracterizat fiecare pixel poate fi reprezentat pe 8 bii. Astfel, dimensiunea
informaional a sursei de date este 8512512 = 221 biti, adic circa 2,1
megabytes (MB). Un disc cu capacitatea de 1 GB poate stoca fr compresie,
numai vreo 476 imagini de acest gen. Se presupune acum c fiecare din aceste
imagini poate fi comprimat de 8 ori (8:1). De data aceasta se pot stoca n
acelai spaiu de 1 GB cca. 3800 de imagini. Dac este necesar transmiterea
imaginii necomprimate pe un canal telefonic capabil a prelua 30.000 de
biti/secund, operatia consum 221/30.000 70 de secunde. n versiunea
comprimat n raportul 8:1 consumul de timp scade la mai putin de 9 secunde.
Exemplul 2 ilustreaz cum compresia de date face posibil transmiterea printrun canal dat a datelor generate de o surs chiar i atunci cnd n varianta
necomprimat acele date nu se pot transmite. Alfabetul sursei este {1, 2, 3, 4}.
Fiecare generare a unui simbol Xi este modelat de o variabil aleatoare cu
distributia
Pr(1) = 8/15, Pr(2) = 4/15, Pr(3) = 2/15, Pr(4) = 1/15.
Sursa genereaz un simbol la fiecare milisecund. Canalul are capacitatea de
1,75 biti/milisecund. Se admite c nu se face o comprimare. Se utilizeaz un
cod fr compresie
1 00, 2 01, 3 10, 4 11.
Rata de iesire a codorului este de 2 biti/milisecund i este mai mare dect
capacitatea canalului. Aadar, datele nu pot fi transmise prin canalul dat fr o
prealabil comprimare. Se presupune acum c se recurge la un alt codor care
face codarea
1 0, 2 10, 3 110, 4 111.
Numrul mediu statistic de biti pe simbol al codului este n acest caz

88
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1Pr(1) + 2Pr(2) + 3Pr(3) + 3Pr(4) = 5/3.


Cu acest codor, rata de iesire obtinut este de numai 1,67 biti/milisecund i
este sub capacitatea de 1,75 a canalului. Codul cel nou asigur transmiterea fr
probleme a informatiei prin canalul dat.
Exemplul 3. Fie o imagine 44 n 4 culori, R, O, Y, G (Red, Orange, Yellow,
Green). Se supune compresiei.
R
R
O
Y

R
O
O
Y

O
O
Y
Y

Y
Y
G
G

Prin scanarea pe orizontal a acestei imagini, prin asocierea intensittilor 3, 2,


1, 0 culorilor R, O, Y, G, respectiv, imaginea se poate reprezenta prin vectorul
X = (3, 3, 2, 1, 3, 2, 2, 1, 2, 2, 1, 0, 1, 1, 1, 0). Vectorul se comprim conform
tabelului

Intensitate
3
2
1
0

Codare
Cuvnt de cod
001
01
1
000

nlocuirea intensittii fiecrui pixel cu codul binar din tabel conduce la secventa
binar
B(X) = 0010010110010101101011000111000
Raportul de compresie este r = 32/31 sau 1,0323:1. Primul numr, 32 face
trimitere la codarea banal prin 2 biti pe pixel, codare posibil deoarece
numrul de simboluri ale alfabetului sursei este 4 i log24 = 2.
Exemplul 4 face o comparatie ntre dou codri diferite pentru vectorul de date
X = ABRACADABRA
Primul codor este fr memorie ca n exemplul anterior (cu alte cuvinte
simbolurile cuprinse n vectorul X sunt codate independent unul de altul) i
rezultatul este cuprins n tabelul urmtor
Codarea I
Caracter
Cuvnt de cod
A
0
B
10
R
110
C
1110
D
1111

89
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Al doilea codor ia n considerare i simbolul precedent n afar de cel curent,


pentru a determina codul pentru acesta din urm (uzeaz de o fereastr glisant
de lrgime 2):

Codarea II
Caracter, caracter premergtor
A,
B, A
C, A
D, A
R, B
A, R
A, C
A, D

Cuvnt de cod
1
0
10
11
1
1
1
1

Cele dou modalitti de codare conduc la secventele binare


B1(X) = 01011001110011110101100
B2(X) = 1011101111011
Ratele n biti/simbol sunt foarte diferite: 23/11, respectiv 13/11. Codorul al
doilea pare a face o treab mult mai bun.
Exemple de codare cu pierderi:
surs X = {X1, X2, } cuantificator x = {x1, x2, } codor . . .
. . . codor

B(x) = {B1, B2, } decodor x = {x1, x2, }

Exemplul 5. Vectorul de date


X = (0,8 1,2 1,0 1,8 1,2 1,4 1,6 1,6 1,4 1,8 2,7 2,8 1,7 2,6 3,7 3,6)
este cuantificat prin rotunjire i prin aceasta devine
x = (1 1 1 2 1 1 2 2 1 2 3 3 2 3 4 4)
Codorul fr memorie propus imediat
Codare
Eantion cuantizat Cuvnt de cod
1
00
2
01
3
10
4
11
produce iesirea
B(x) = 00000001000001010001101001101111

90
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Rata codului R i distorsiunea D introdus de acest cod se calculeaz cu relaiile


R = (lungimea lui B(x))/16 = 32/16 = 2 biti/simbol
D = ||X x||2/16 = 0,0919
Exemplul 6. O imagine 256256 este alctuit din 65536 pixeli Xi,j (i, j = 1, 2,
, 256). Intensitatea fiecrui pixel Xi,j este considerat o variabil aleatoare
distribuit uniform pe alfabetul {0, 1, 2, , 255}. Imaginea se comprim cu
pierderi prin cuantizarea i codarea intensitilor astfel:
Xi,j
0 31
32 63
64 95
96 127
128 159
160 191
192 223
224 255

X i , j

Cuvnt de cod
000
001
010
011
100
101
110
111

15,5
47,5
79,5
111,5
143,5
175,5
207,5
239,5

Rata codrii este R = 3 biti/pixel. Distorsiunea D se calculeaz ca o medie


statistic a ptratelor diferenelor ntre informatia generat i informatia
receptionat.
D = E[( X i , j X i , j ) 2 ] E[( X i , j X i , j )2 | 0 X i , j 31]

1 31
=
(k 15,5) 2 = 85,25

32 k 0
Aceeai tehnic poate fi utilizat pentru codarea imaginii la alte rate R = 0, 1, 2,
, 8. La fiecare rat R se divid valorile de la 0 la 255 n prti egale, de 256/2R
niveluri fiecare. Apoi se asociaz fiecare Xi,j la valoarea median a fiecrei
prti/grupe de care apartine. Ieirea codorului const n cei R biti care se
identific cu grupa de care Xi,j apartine. Se poate verifica urmtoarea formul
pentru distorsiunea D(R), dependent de aceste rate R:
2

256 / 2 R 1

1 256

k 2 2 R 1

, R = 0, 1, 2, , 8
D ( R) k 0
256
2R
Perechile rat-distorsiune se pot grupa ntr-un tabel

R
0
1
2
3
4
5
6
7
D(R) 5461,25 1365,25 341,25 85,25 21,25 5,25 1,25 0,25

8
0

sau se pot reprezenta grafic. Graficul ilustreaz dependena distorsiune-rat la


asa-numita diviziune n timp. Dac punctele sunt unite cu o linie frnt, atunci,
de pild, punctul (3,D(3)) + (1 )(4,D(4)) pentru 0 < < 1 reprezint

91
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

perechea rat-distorsiune pentru 100% pixeli cuantizati i reprezentati pe 3 biti


i 100(1 )% pixeli cuantizati i reprezentati pe 4 biti.
6000

5000

Distorsiunea

4000

3000

2000

1000

4
5
Rata (biti/pixel)

Orice pereche rat-distorsiune (R, D) pe curb sau deasupra ei se poate obtine


prin codarea cu pierdere de informatie. Cu alte cuvinte, fiind dat o pereche (R,
D) pe curb, exist o schem de codare cu rata de compresie superioar lui R i
cu o distorsiune mai mare dect D. Astfel de curbe rat-distorsiune sunt
suportul compresiei la surs, cu pierderi de informatie. Prin examinarea unei
curbe rat-distorsiune se pot identifica imediat perechile rat-distorsiune care
pot fi obtinute printr-o codare la surs, cu pierderi i se poate observa i nelege
mai bine compromisul ntre rat i distorsiune la codarea cu pierderi a unei
surse.
Cum se obtine o curb care separ toate perechile rat-distorsiune fezabile (de
deasupra curbei) de cele de neatins (situate toate sub curb) este un alt subiect.
Cea mai bun curb rat-distorsiune de acest gen se numeste functia ratdistorsiune a sursei de informatie.
Codarea rat-distorsiune
Codarea rat-distorsiune este o notiune sinonim cu codarea sursei cu pierderi
de informaie sau adesea cu cuantizarea vectorial.
Se admite o anumit distorsiune, o diferent ntre secventa generat de surs Xn
i versiunea ei codat X n , adic se admite numai o egalitate aproximativ ntre
X i Xn. Apar aici dou probleme echivalente:
n

Fiind date o surs (prin distributia ei) i o msur a distorsiunii


care este distorsiunea medie minim D care se poate atinge pentru o rat
dat R?

92
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

care este rata minim R la care se poate obtine o distorsiune medie D dat?
O ntrebare mai cuprinztoare: ce perechi (R, D) pot fi realizate practic?
Codarea rat-distorsiune se poate aplica att pentru surse discrete ct i pentru
surse continue.
Un exemplu simplu: cuantizarea unei variabile aleatoare gaussiene X ~ N(0, 2).
Variabila X trebuie reprezentat folosind R bii pe eantion, adic prin numai
aproximativ N = 2R valori.
Msura distorsiunii poate fi eroarea ptratic. Atunci, trebuie stabilite valorile
de diviziune a domeniului de definitie, {x1, , xN+1} i valorile aproximante
{y1, , yN} care s minimizeze media ptratelor diferenelor ntre valorile
reprezentate i valorile care le reprezint:
N x i 1

E ( X X ) 2

f ( x)( x y ) dx
i

i 1 x i

Solutia general se poate obtine pa calea

E ( X X )2 0, i 1, ..., N 1
xi

E ( X X )2 0, i 1, ..., N
yi
ceea ce conduce la
xi = (yi + yi 1)/2 (conditia de vecin-cel-mai-apropiat)
i
x i 1

yi

xi
x i 1

xf ( x)dx

xi

(conditia de centroid)
f ( x )dx

Pentru R = 1

x
2

x0
x0

i distorsiunea medie minim


D*

2 2

Msuri ale distorsiunii


Fie Xn = (X1, , Xn) o secven de variabile aleatore independente i identic
distribuite (i.i.d.) cu Xi ~ p(x) i Xi X (alfabetul sursei).
Fie X n ( X 1 , ..., X n ) secvena reproductiv cu X i X (alfabetul care
reproduce aproximativ sursa).
Cteva exemple:

93
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Distorsiunea Hamming

1 x x
d ( x, x)
0 x x
Distorsiunea eroare absolut
d ( x, x ) | x x |
Distorsiunea eroare ptratic
d ( x, x ) ( x x )2
Distorsiunea pentru dou secvente, xn i x n se defineste astfel:
1 n
d ( x n , x n ) d ( xi , xi )
n i 1
adic media aritmetic a distorsiunilor pe fiecare simbol, pe fiecare liter.
Pentru distorsiunea eroare ptratic, de pild,
1 n
1
d ( x n , x n ) ( xi xi ) 2 || xi xi ||2
n i 1
n
Revenim acum la codarea rat-distorsiune.
n figura alturat
Xn

Codor
fn

I {1, 2, , N}

Decodor
gn

X n

Xn = (X1, , Xn) este o secven de n variabile aleatoare i.i.d. (un vector aleator
n-dimensional). Distribuiile Xi ~ p(x) pot fi discrete sau continue.
Pentru simplitate se consider aici variabile aleatoare discrete. Extinderea la
variabile aleatoare continue este practic imediat. Componentele Xi aparin unui
alfabet discret al sursei, X.
Definiie: Un cod rat-distorsiune (N, n) (un cuantizor vectorial) cu rata R =
(log2N)/n const n:
o aplicaie de codare
f n : X n {1, ..., N }
(o aplicatie many-to-one deoarece |Xn| N).
o aplicaie de decodare
g n : {1, ..., N } X n
cu X n { X n (1), ..., X n ( N )} un dicionar al codului (o aplicaie biunivoc).
Not: Pentru n mare, aproximativ 2nH(X) secvene de intrare aplicate pe 2nR
secvene de ieire (R H(X)). f 1(1), , f 1(N) sunt mulimi sau regiuni de
atribuire.
Dac Xi sunt variabile aleatoare discrete, atunci f 1() sunt mulimi de secvene;
dac sunt continue atunci sunt volume n Rn.

94
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Distorsiunea medie a codului


D = E[d(Xn, gn(fn(Xn)))] =

p( x

)d ( x n , g n ( f n ( x n )))

xn

Definitie: O pereche rat-distorsiune (R, D) este accesibil dac se poate gsi o


secven de coduri (fn, gn) de rat-distorsiune (2nR, n) astfel nct
limn E[d(Xn, gn(fn(Xn)))] D
cu alte cuvinte, prin creterea lungimii secvenei (dimensiunii vectorului), se
pot gsi coduri cu distorsiunea medie nu mai mare dect D i cu rata nu mai
mare dect R.
Observatie: Dac perechea (R, D) este accesibil, atunci (R, D) i (R, D) sunt
de asemenea accesibile oricare ar fi R R i D D.
Regiunea rat-distorsiune pentru o surs i o msur a distorsiunii date este
mulimea (nchis) a tuturor perechilor (R, D) accesibile.
Funcia rat-distorsiune R(D) pentru o surs dat, pentru o msur a
distorsiunii i o distorsiune D este rata minim R pentru care (R, D) este n
regiunea rat-distorsiune.
Funcia distorsiune-rat D(R) pentru o surs dat, pentru o msur a
distorsiunii i o rat R este distorsiunea minim D pentru care (R, D) este n
regiunea rat-distorsiune.
Observaie: Functia R(D) i functia D(R) sunt descrieri echivalente ale
frontierei regiunii rat-distorsiune.
Proprieti ale functiei R(D)

R(D) este necresctoare.


R(D) este convex.
Fie x * estimarea cea mai bun a lui X pe baza cunotintelor a priori asupra
probabilitilor p(x). Atunci, R(D) = 0 pentru D D*, unde D* = E[d(X,
x * )].
R(0) = H(X).

Funcia rat-distorsiune i informaia


Fiind dat o surs X ~ p(x) i o msur a distorsiunii d(x, x ) i o valoare a
distorsiunii D 0
R ( I ) ( D ) min p ( x | x ):E [ d ( X , X )] D I ( X ; X )
altfel exprimat, se minimizeaz I ( X , X ) peste toate multimile reproductive X
care satisfac
d ( x, x ) p( x | x) p( x) D
x

Canalul ipotetic arat ca n figur.

95
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

X ~ p(x)

X | E[d ( X , X )] D

p ( x | x )

Observatie: Deoarece X este o fumcie determinist de X, I ( X , X ) H ( X ) .


Teorema rat-distorsiune: Functia rat-distorsiune R(D) pentru o anumit surs
este egal cu functia rat-distorsiune informational R(I)(D), adic rata minim
R la care poate fi atins distorsiunea medie D este R(I)(D).
Accesibilitate: Toate perechile (R, D) pentru care R R(I)(D) sunt accesibile.
Reciproc, orice cod rat-distorsiune cu distorsiunea medie inferioar lui D
trebuie s aib R R(I)(D).
Demonstrarea reciprocei acestei teoreme: Se observ mai nti c
H ( X n ) log 2 N
I ( X , X ) H ( X )

1 n
E[d ( X n , X n )] E[d ( X i , X i )]
n i 1
Apoi,

nR I ( X i , X i ) R ( I ) E[d ( X i , X i )]
i

Deoarece R(I)(D) este o funcie convex, utiliznd inegalitatea lui Jensen


1 n

nR nR ( I ) Ed ( X i , X i ) nR ( I ) Ed ( X n , X n ) nR ( I ) ( D )
n i 1

Exemple de funcii R(D) :


1. Surs Bernoulli i distorsiune Hamming:
P(X = 0) = p, P(X = 1) = 1 p
De observat c Dmax = min{p, 1 p}.
H ( p) H 2 ( D ) 0 D Dmax
R(D) = 2
0
D Dmax

2. Surs gaussian i distorsiune eroare ptratic:


X ~ N(0, 2)
De observat c Dmax = 2.
1
2
log 2
0 D Dmax
R( D ) 2
D

0
D Dmax
Pentru sursa gaussian
D(R) = 22 2R
adic fiecare bit descriptiv suplimentar reduce distorsiunea medie cu un factor
de 4 (6 dB).
Pentru R = 1 (cuantizare pe un bit), D(1) = 0,25 2.
Se consider acum cuantizarea (scalar) unidimensional (n = 1) i se demonstreaz c E[d(X, X )] = 0,3633 2.

96
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

De unde diferenta? (Demonstrarea accesibilitii cere ca n )


3. Surs Gauss-Markov:
Xn = Xn 1 + Wn
n care 0 < 1 i Wn este o secvent gaussian i.i.d.
Pentru R log2(1 + ) (altminteri nu exist o form nchis)
D(R) = (1 2) 2 2 2R
De observat ce se ntmpl cnd 1.
4. Calculul functiei R(D) n general se face dup algoritmul Blahut-Arimoto
(optimizarea numeric a transinformatiei I(X, X ), aceeai utilizat n cazul
calculului capacittii canalelor).
Codarea R-D este o acoperire cu sfere. Se consider codarea pentru o surs X ~
N(0, 2) cu minimizarea MSE (erorii medii ptratice).
Toate secventele sursei Xn Rn se situeaz n interiorul unei hipersfere de raz
n 2 .
Fiecare cuvnt de cod este un punct n aceast (hiper)sfer.
La rata R se codeaz 2nR astfel de puncte.
Apoi, toate secventele sursei codate ntr-un anumit cuvnt de cod la o
distorsiune de cel mult D este o sfer de raz nD centrat pe acel cuvnt de
cod.
Numrul minim M al cuvintelor de cod necesare asigurrii unei distorsiuni

inferioare cel mult egale cu D este numrul de sfere de raz


pentru a acoperi o sfer de raz nD :
M 2 nR

n 2 necesare

( n 2 ) 2
( nD ) 2

1
2
R log
2
D
(n contrast cu mpachetarea n sfere pentru codarea n cazul canalului
gaussian).
Descrierea simultan a variabilelor independente gaussiene: Fiind dat o rat a
bitilor total R, cum se pot aloca acesti bii unei multimi de variabile aleatoare
gaussiene X1, , Xm astfel nct MSE (eroarea medie ptratic) total s fie
minimizat?
Se minimizeaz
m

D Di
i 1

supus la restriciile
m

R i Ri 0, i = 1, , m

i 1

Termenii din suma de minimizat sunt


Di E[( X i X i ) 2 ]

97
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Deoarece X1, , Xm sunt variabile gaussiene independente, este uor de artat


c
I ( X m ; X m ) [h( X i ) h( X i | X , )] R( Di )
i

n care

1
2
R( Di ) log i
Di
2
Prin codarea independent a fiecrei componente Xi i prin utilizarea unor
valori X i ~ N (0, i2 D ) se pot obtine egalitile n expresia cu inegalitti de
mai sus, adic
R ( m ) ( D) min f ( X m | X m ) I ( X m ; X m ) R( Di )
i

De acum, se cere aflarea unui set de puncte (R(Di), Di), i = 1, , m, astfel nct
iR(Di) = R i suma iDi s fie minim.
De observat c i Ri = R(i2) = 0 poate fi o soluie.
Se presupune c toi Xi au Di < i2, adic Di i2e 2 Ri i Ri > 0.
Atunci se urmrete stabilirea unor (R1, ..., Rm) astfel nct s aib loc
min R1 , ..., Rm i2e 2 Ri
i

n conditiile restrictive iRi R = 0, cu toti Ri > 0.


Lagrangeanul este

J ( R1 , ..., Rm ) i2 e 2 Ri Ri R
i
i

Apoi,
J
0 , i = 1, , m
Ri
dau

i2e 2 Ri
2
pentru orice indice i.
Rezult regula alocrii bitilor astfel nct toate variabilele s aib distorsiunea
egal.
Dar trebuie s satisfac relatia
1
i2
i 2 log R
de unde
2e 2 R
n care 2 este media geometric a dispersiilor 12, , m2 i R R / m este
rata medie pe variabil.

98
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Acum, dac > i2 pentru vreun indice i, atunci solutia nu este valid. Se
ignor Xi (se pune Ri = 0) i se repet procedura de mai sus pn cnd rmne o
mulime de variabile pentru care < i2.
Aceasta este problema umplerii-cu-ap cu rsturnare.

i2

42
12

D1
D2

X1

X2

D4

D5

X4

X5

D3

X3

Se aloc bii numai acelor variabile care nu sunt sub nivelul apei .
Teorema separrii surs-canal: Secventa Vn de variabile i.i.d. poate fi
transmis cu distorsiunea medie D printr-un canal fr memorie cu capacitatea
C dac i numai dac C > R(D).

Vn

Xn(Vn)

Canal de
capacitate C

Yn

V n

Reciproc: Pentru o distorsiune D, rata R(D) trebuie s fie inferioar capacittii


C a canalului.
Codarea rat-distorsiune optim (cuantizarea vectorial) urmat de o codare de
canal optim este asimptotic optim (cu n) n ansamblul ei.
Exemplu: Care este distorsiunea minim care poate fi atins pentru o surs i.i.d.
gaussian cu dispersia 2 pe un canal binar simetric (BSC) cu probabilitatea de
eroare p?

99
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CRIPTAREA
Primalitatea numerelor ntregi
n teoria numerelor se recunoate unanim complexitatea a dou probleme de
calcul foarte importante i foarte legate una de alta:
Primalitatea: Fiind dat un ntreg, este el prim?
Factorizarea: Fiind dat un ntreg, care sunt factorii primi ai acestuia?
Evident, calitatea de a fi prim a unui numr ntreg (primalitatea) nu poate fi mai
dificil de stabilit dect factorii lui, deoarece dac se cunoate cum se stabilete
un factor, ar trebui s se cunoasc i cum se face testarea primalittii. Ceea ce
este surprinztor dar fundamental i baza criptografiei moderne este c
problema primalitii este uoar n timp ce factorizarea este dificil!
Cum se tie, primalitatea poate fi rezolvat trivial ntr-un timp O(x) de fapt
sunt de testat numai factorii eventuali care sunt ca valoare sub rdcina ptrat
a lui x. Dar, e limpede, algoritmii acetia sunt exponeniali exponeniali n
numrul n de bii ai lui x, o msur mai precis i mai plin de sens a
dimensiunii problemei (vzut astfel, timpul de rulare a algoritmului devine
respectiv O(2n), O(2n/2)). n fapt, urmarea acestei linii (de testare a din ce n ce
mai puini factori) nu duce nicieri: deoarece factorizarea este dificil, singura
speran de a gsi un algoritm rapid pentru primalitate este de a cuta unul care
s decid dac un numr n este sau nu prim fr a evidenia neaprat un factor
al lui n, n cazul n care rspunsul este negativ.
Imediat, este descris un astfel de algoritm. Acest algoritm se bazeaz pe faptul
urmtor relativ la exponenierea modulo un-numr-prim.
Teorema 1 (Mica teorem a lui Fermat): Dac p este numr prim, atunci
pentru orice a 0 mod p are loc a p 1 = 1 mod p.
Demonstraie: Se consider toate numerele nenule modulo p, = {1, 2, , p
1}. Acum, dac se ia un numr a din aceast mulime i dac se multiplic toate
numerele din cu a modulo p, se obine o alt multime a = {a1, a2, , a(p
1)}, toate modulo p. Se poate afirma c toate cele p 1 numere din a sunt
distincte i n consecint a = . Ca demonstraie, dac ai = aj mod p, atunci,
prin multiplicarea ambilor membri cu a 1 mod p (deoarece p este prim i a 0
mod p se stie c a are un invers) se obtine i = j. Prin urmare, produsele x x
i

x a

x sunt egale, adic

(a1).(a2).(a (p 1)) = 12(p 1) mod p


Acum, prin multiplicarea egalittii cu 11 mod p, apoi cu 21 mod p .a.m.d.
pn la (p 1)1 mod p se obtine teorema.

100
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Teorema 1 sugereaz un test de primalitate pentru p: se ia un numr a 0 mod


p i se ridic la puterea a (p 1) modulo p. Dac rezultatul nu este 1, atunci
tim c p nu este prim. Dar dac a p 1 = 1 mod p? Putem fi siguri c p este
prim? Nu! Vor exista totdeauna numere a care satisfac ecuatia (1 i p 1 sunt
dou exemple foarte la ndemn). Reciproca teoremei 1 nu este adevrat. Tot
ce se poate dovedi este c:
Teorema 2: Dac x nu este prim i dac x nu este un numr Carmichael1 atunci
pentru cele mai multe numere a 0 mod x, a x 1 1 mod x.
Teorema (a crei demonstratie ar fi un pic deturnant la acest moment) este o
reciproc slab a teoremei 1: ea spune c dac x este compus (are i ali factori
nafar de 1 i x) i dac x se ntmpl a fi printre excepiile extrem de rare
numite numere Carmichael, atunci testul de primalitate sugerat de mica
teorem a lui Fermat vorbete despre faptul c x nu este prim, cu probabilitate
de 50%.
Discutia de mai sus sugereaz urmtorul algoritm randomizat pentru
primalitate:
algorithm prime(x)
repeat K times:
pick an integer a between 1 and x at random
if a x 1 1 mod x then return (x is not a prime)
return (with probability at least 1 2K,
x is either a prime or a Carmichael number)

Probabilitatea de corectitudine reclamat este uor de probat: dac x nu este nici


prim i nici numr Carmichael, atunci teorema 2 spune c fiecare exponeniere
va expune aceasta cu o probabilitate de cel putin 0,5. Deoarece toate aceste K
ncercri sunt independente (adic se alege de fiecare dat a fr a interesa
valorile a anterioare), probabilitatea ca toti K s eueze n a expune x este 2K.
Lund K = 100 (i reamintind c numerele Carmichael sunt extrem de rare), se
stabileste primalitatea la un grad de ncredere (0,999 pn la treizeci de nou)
care depseste toate celelalte aspecte ale vieii i calculelor. Pentru a face un
test se consum O(Kn3) pasi, unde n este numrul de bii ai lui x, deoarece el
const n K exponenieri.
Incidental, exist un algoritm aleator de detectare de numere Carmichael,
ntructva mai elaborat, astfel exist un algoritm aleator polinomial pentru
primalitate. Acel algoritm mai elaborat nu este discutat aici.
Numerele prime nu sunt numai uor de detectat dar sunt i relativ abundente:
Teorema 3 (Teorema numerelor prime): Numrul de numere prime ntre 1 i x
este de circa x/lnx (cu alte cuvinte, dac se ia un numr aleator cu D digii
1

Un numr c este un numr Carmichael dac nu este prim i nc pentru toti divizorii primi ai
lui c cu d > 1 se ntmpl astfel c d 1 s divid pe c 1. Cel mai mic numr Carmichael este
561 = 3.11.17 (se observ, desigur, c 3 1, 11 1 i 17 1 divid fiecare pe 561 1). Dac c
este un numr Carmichael i a este relativ prim cu c, atunci ac 1 = 1 mod c. Puteti demonstra
asta?

101
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

zecimali, ansa ca acel numr s fie prim este putin mai mic de 1 la 2D (una
din circa 26 de persoane are codul numeric personal numr prim).
Teorema numerelor prime este un fapt dintre cele fundamentale n matematici
i este foarte greu de demonstrat. Dar mpreun cu algoritmul de mai devreme,
ea ne abiliteaz s gsim uor numere prime mari (ncercai cteva i retinei
unul care verific conditia de primalitate) i acesta este ingredientul cheie al
algoritmului RSA. Un alt ingredient este varianta urmtoare a teoremei 1:
Teorema 4: Dac p i q sunt prime, atunci pentru orice a 0 modulo pq avem
a(p 1)(q 1) = 1 modulo pq.
Demonstratia teoremei 4 este aceeai cu aceea a teoremei 1 cu excepia faptului
c se consider multimea tuturor numerelor 1, 2, , pq 1 care sunt relativ
prime cu pq. Se observ c exist (p 1)(q 1) astfel de numere ca
verificare, unul din fiecare p numere ntre 0 i pq este divizibil cu p i unul din
fiecare q numere este divizibil prin q i pq(1 1/p)(1 1/q) = (p 1)(q 1).
Exemplu: Fie p = 3 i q = 5. Dintre toate numerele modulo pq = 15, i anume
{0, 1, 2, , 14}, o treime sunt divizibile cu 3 ({0, 3, 6, 9, 15}) i din cele 10
rmase o cincime sunt divizibile cu 5 ({5, 10}). Toate numerele rmase, n
numr de (p 1)(q 1) = 8 ( = {1, 2, 4, 7, 8, 11, 13, 14}) sunt prime cu 15 i
prin urmare ele au toate un invers modulo 15. Aceasta face posibil
demonstratia teoremei 1 prin luarea lui a oricare dintre aceste 8 numere.
Criptografia i algoritmul RSA (Rivest, Shamir, Adleman)
Criptografia se ocup de scenarii de genul urmtor: dou persoane A i B
doresc s comunice n prezena unei alte persoane deosebit de curioase E. Se
presupune c A vrea s trimit lui B mesajul x. Criptografia ofer soluii n
forma urmtoare: A calculeaz o funcie de x, e(x), utiliznd o cheie secret i
trimite e(x) pe canalul ascultat (i) de E. B primete e(x) i prin utilizarea cheii
sale (care n criptografia tradiional este aceeai cu cheia deinut de A, dar n
criptografia modern este diferit) calculeaz o funcie d(e(x)) = x, recupernd
astfel mesajul. Se prezum c E este incapabil s recupereze x din e(x) deoarece
nu are cheia.
O metod criptografic clasic const n substituirea de litere. A i B au czut
de acord asupra unei permutri de litere A, , Z i un mesaj m = a1a2an
alctuit din n litere devine e(m) = (a1)(a2)(an). n pofida faptului c exist
26! chei posibile, acesta este un sistem de criptare foarte slab, expus la atacul
evident prin frecvena literelor.
Cu concursul calculatoarelor, criptografii pot crea sisteme de criptare n care
sunt substituite blocuri ntregi de litere (sau bii), rezistente astfel la atacul prin
frecvene. Cel mai de succes dintre ele este Data Encryption Standard (DES), o
metod de criptare sponsorizat de guvernul american, propus n 1976. DES
utilizeaz o cheie pe 64 de biti (pentru codarea fiierelor mai mari, acestea se
sparg n blocuri de 8 biti). Cei care au propus DES pretind c este sigur. Sunt i
detractori care-l suspecteaz c la modul subtil nu este att de sigur.

102
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Dimensiunea cheii de 56 de biti este n general considerat inadecvat pentru


criptografia serioas, deoarece 256 nu mai este un numr mare.
Cam la acelai moment cnd DES a fost inventat, a fost propus o idee nou
foarte atractiv: criptografie cu cheie public (public-key cryptography).
Persoana B ar avea dou chei, cheia sa privat kd, cunoscut numai de el, i
cheia lui public, kc. (Poate c este sugestiv a considera kc un gen de lact i kd
o cheie a lactului.). kc este cunoscut tuturor este pe pagina gazd (home
psge) a lui B, de pild. (Continund cu metafora oarecum dubioas cu care am
nceput, este ca i cum ar exista mai multe cpii ale lactului, cu care oamenii
pot nchide cutii care conin mesaje trimise lui B.) Dac cineva, de pil A,
dorete s trimit un mesaj x lui B, atunci l cripteaz sub forma e(x) care
utilizeaz cheia public. B decripteaz pe e(x) folosindu-se de cheia sa privat.
Partea inteligent este c (1) decriptarea este corect, adic d(e(x)) = x i (2) nu
se poate calcula fezabil cheia privat a lui B din cheia lui public sau x din e(x),
astfel c protocolul este sigur (exact cum nu exist o cale de a imagina cheia
pentru un lact bun).
RSA de la iniialele numelor a celor trei cercettori (Ron Rivest, Adi Shamir
i Len Adleman) care l-au inventat este un mod inteligent de a realiza ideea
de cheie public. Iat cum lucreaz aceasta:
Generarea cheii. B stabilete dou numere prime mari, p i q. (mare n
zilele noastre nseamn cteva sute de digii zecimali, foarte curnd ar putea
s nsemne peste o mie). Pentru a gsi asemenea numere, B genereaz
repetat ntregi din aceast gam i i supune testului Fermat pn cnd dou
din ele trec testul. Apoi B calculeaz n = pq. De asemenea, B genereaz la
ntmplare un ntreg e < n, cu singura restricie de a fi prim cu (p 1) i cu
(q 1). Perechea (n, e) este cheia public a lui B i o face cunoscut.
(Practic, pentru a face codarea mai uoar (a se vedea mai jos), e este adesea
luat 3. Desigur, trebuie evitate numerele prime care sunt 1 mod 3.)
Acum B poate genera cheia lui secret. Tot ce are de fcut este s calculeze
(prin algoritmul lui Euclid) d = e 1 mod (p 1)(q 1). Perechea (n, d) este
cheia privat a lui B.
Operarea. Ori de cte ori A sau oricine altcineva doreste s-i trimit un
mesaj lui B procedeaz astfel:
o Fragmenteaz mesajul n iruri de bii de lungime log n (este
vorba din nou de mai multe sute de bii). Se codeaz fiecare ir de
bii prin algoritmul care urmeaz.
o Fie x un astfel de ir de bii care se consider a fi un ntreg mod n. A
calculeaz xe mod n. Acesta aste mesajul codat e(x) pe care A l
trimite lui B.
o La primirea lui e(x), B calculeaz e(x)d mod n. Puin algebr (i
apelnd din nou la mica teorem a lui Fermat pentru produsul a dou
numere prime, prezentat n seciunea precedent) produce:
e(x)d = xd.e = x1 + m(p 1)(q 1) = x mod n

103
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

De observat c aceast secven de ecuaii stabilete faptul c B decodeaz


corect. Prima ecuaie reamintete de definiia lui e(x). A doua decurge din faptul
c d este inversul lui e mod (p 1)(q 1) i astfel dac se multiplic d cu e se
obtine 1 plus un multiplu al numrului (p 1)(q 1). Ultima egalitate amintete
de mica teorem a lui Fermat: x(p 1)(q 1) = 1 mod n (desigur, cu excepia
cazului n care x este un multiplu de p sau de q, o posibilitate foarte
improbabil). Astfel, multiplul de (p 1)(q 1) din exponent se poate ignora.
Astfel, A poate coda folosind cheia public a lui B. B poate decoda utiliznd
cheia privat pe care numai el o tie. Dar ce se poate spune despre curioi?
Dac E preia e(x) = xe mod n, poate face mai multe lucruri. Poate ncerca toti xii posibili, s-i codeze cu cheia public a lui B i s gseasc x-ul corect dar
asta ia mult prea mult timp. Sau, poate s calculeze d = e1 mod (p 1)(q 1) i
din asta e(x)d mod n care este x. Dar pentru a proceda aa E trebuie s tie
numrul (p 1)(q 1). i dac tie att pq ct i (p 1)(q 1), atunci tie p i q
(putei spune de ce?). Altfel spus, E poate factoriza pe n, un produs arbitrar de
dou numere prime mari, dar nimeni nu stie cum s fac operaia asta rapid.
Sau, n sfrit, E i-ar putea utiliza propria ei metod ingenioas pentru a
decoda e(x) fr factorizarea lui n este o convingere larg c nu exist o
asemenea metod.
Astfel, dup toate dovezile accesibile, sistemul RSA este sigur pentru un n
potrivit de mare.
Semnturi electronice
Criptografia cu cheie privat nu este numai o idee remarcabil i radical
contraintuitiv. Ea este o idee fundamental de acest gen. Deoarece, odat n
posesia cuiva, mai multe treburi care par imposibile pot fi efectuate. De
exemplu, semntura digital.
S presupunem c A vrea s-i trimit lui B un mesaj semnat. Adic vrea s
expedieze un mesaj m.s(m), cu m un mesaj obinuit i cu s(m) o semntur, o
bucat de text care depinde de m i care identific n mod unic pe A (adic B
este sigur c mesajul vine de la A i nu de la un impostor. De asemenea, B
poate convinge o curte, un tribunal, c sigur A i-a trimis acel mesaj). Sun
imposibil, nu-i asa?
Iat cum se face aceasta: s(m) = d(m) unde d() este funcia de decodare a lui
A. Adic A i imagineaz pentru o secund c mesajul m pe care e aproape s-l
trimit lui B a fost primit de ea de la altcineva i i-a aplicat algoritmul ei de
decodare (ridic la cheia ei secret modulo cheia ei public).
De ndat ce B primeste m.s(m), el este plauzibil sigur c A l-a trimis deoarece
numai A are cheia privat care poate transforma pe m n s(m).
i exist multe multe fapte contraintuitive care pot fi ndeplinite prin aplicarea
criptografiei cu cheie public: jocul de poker pe Net i demonstrarea cuiva c o
teorem este adevrat fr a spune ceva despre adevr (astfel de demonstratii
sunt cunoscute ca zero-knowledge proofs).

104
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Criptografia RSA i teorema restului chinezesc


S presupunem c avem un sistem de ecuatii simultane, poate ca acesta care
urmeaz:
x 2 (mod 5)
x 5 (mod 7)
Ce putem spune despre x? Putem spune c o solutie este x = 12 deoarece x = 12
satisface ambele ecuatii. Aceasta nu este ns singura solutie. De pild x = 12 +
35 este de asemenea o solutie, dar i x = 12 + 70 i x = 12 + 105 .a.m.d.
Evident, adunnd orice multiplu de 35 la o soluie se obtine o alt solutie
valid, astfel c putem scrie concis c x 12 (mod 35) este o solutie a
sistemului de ecuatii dat.
Dar mai sunt i alte solutii? Pentru acest exemplu nu exist o alt solutie: orice
solutie este de forma x 12 (mod 35). Dar de ce n-ar exista i altele? Dac
admitem existenta unei alte solutii x, atunci din prima ecuatie se tie c x 2
(mod 5) i x 2 (mod 5) i de aici x x (mod 5). Similar x x (mod 7). Dar
prima congruen spune c 5 este un divizor al diferentei x x, din a doua
rezult c i 7 este un divizor al diferentei x x, astfel c x x trebuie s fie
un multiplu de 35 (s-a utilizat aici faptul c gcd(5, 7) = 1)2, care nseamn x x
(mod 35). Cu alte cuvinte, toate solutiile sunt aceleai modulo 35: sau,
echivalent, dac tot ce ne preocup este x mod 35, solutia este unic.
Puteti verifica: aceleai lucruri sunt adevrate dac se nlocuiesc numerele 5, 7,
2, 5 cu oricare altele. Singurul lucru impus a fost c gcd(5, 7) = 1.
Iat acum o generalizare:
Teorema 5: (Teorema restului chinezesc) Fie m, n relativ prime i fie a, b
arbitrare. Perechea de ecuatii x a (mod m), x b (mod n) are o soluie unic n
x mod mn.
Mai mult, solutia x poate fi calculat eficient (ca exerciiu, cititorul poate
verifica modul de a face calculul).
Teorema restului chinezesc este util adesea cnd se face aritmetic modular
cu un modul compus; dac dorim s calculm o valoare necunoscut modulo
mn, un truc standard este a o calcula modulo m, de a o calcula modulo n i apoi
a deduce valoarea ei modulo mn utiliznd teorema restului chinezesc (CRT
Chinese remainder theorem).
Teorema lui Euler
ntr-un paragraf anterior am vzut mica teorem a lui Fermat, care spune ceva
despre ce se ntmpl cu exponenierea cnd modulul este prim. Putem
generaliza acum la cazul cnd se lucreaz cu modulo un produs de dou numere
prime.

Notatia gcd este prescurtarea de la greatest common divisor cel mei mare divizor comun.

105
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Teorema 6: Fie p, q dou numere prime distincte. Fie n = pq. Atunci numrul
x(p 1)(q 1) 1 (mod n) pentru orice x care satisface conditia gcd(x, n) = 1.
Demonstratie: Mai nti s reducem modulo p ambele prti ale congruenei din
enun (este permis deoarece p divide pe n). Gsim c
x(p 1)(q 1) (x(p 1))(q 1) (1)(q 1) 1 (mod p)
unde s-a folosit mica teorem a lui Fermat pentru a conchide c xp 1 1 (mod
p). Similar avem x(p 1)(q 1) 1 (mod q). Se obtine un sistem de dou ecuatii
x(p 1)(q 1) 1 (mod p)
x(p 1)(q 1) 1 (mod q)
De reinut c gcd(p, q) = 1. Aadar, dup teorema restului chinezesc, trebuie s
existe o solutie unic pentru x(p 1)(q 1) mod pq. Se poate vedea c x(p 1)(q 1)
1 (mod pq) este una din solutiile posibile i n virtutea unicitii, aceasta trebuie
s fie singura posibilitate. Adevrul teoremei decurge de aici.
S recapitulm. Mica teorem a lui Fermat spune c xp 1 1 (mod p) i tocmai
am vzut c x(p 1)(q 1) 1 (mod pq). Care este aici pattern-ul general? De unde
vin aceti exponenti magici? Exist vreo relatie generalizabil ntre p 1 i p i
(p 1)(q 1) i pq? Da, exist.
Conceptul de care avem nevoie este acela de functie totient a lui Euler, (n).
Numrul (n) este definit ca numrul de ntregi pozitivi mai mici ca n i mutual
primi cu n. Se poate vedea c (p) = p 1 cnd p este prim, deoarece ntregii 1,
2, , p 1 sunt toti mai mici dect p i relativ primi cu p. Cu putin efort de
numrare se poate determina i (n) cnd n = pq, un produs de dou numere
prime. Se obtine rezultatul urmtor:
Lema 1: Fie p, q dou numere prime distincte i n = pq. Atunci (n) = (p
1)(q 1).
Demonstratie: Cti ntregi sunt mai mici dect n i sunt relativ primi cu n?
ntregii p, 2p, 3p, , (q 1)p nu se pun: ei au un factor comun cu n. Dintr-un
motiv similar nu se numr nici q, 2q, 3q, , (p 1)q. Acestea sunt toate
excepiile i cele dou liste de numere sunt disjuncte. Dac din cele n 1
numere mai mici ca n le eliminm pe acestea, se obtine cea ce urmrim. n
final, prima list contine q 1 exceptii, a doua, p 1 exceptii. Aadar, sunt n
1 (p 1) (q 1) = pq p q 1 = (p 1)(q 1) ntregi pozitivi mai mici
dect n i relativ primi cu n.
La acest moment este natural a formula conjectura conform creia funcia
totient a lui Euler croiete crarea ctre o generalizare a micii teoreme a lui
Fermat. i, desigur, se poate demonstra urmtorul rezultat:
Teorema 7 (Teorema lui Euler): x(n) 1 (mod n) pentru orice x care satisface
conditia gcd(x, n) = 1.
Demonstratie: Demonstratia este exact ca aceea pentru mica teorem a lui
Fermat. Se consider o multime de ntregi pozitivi mai mici dect n i relativ
primi cu n. Dac alegem oricare element x din obtinem o alt multime x =
{ix mod n: i }. De notat c toate elementele din x sunt distincte (deoarece x
este inversabil) i relativ prime cu n, asadar = x. n consecint, produsele

106
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

i
i

sunt egale modulo n. Dar

i
i

i x

(mod n), asadar x|| 1

i x

(mod n). n final, notnd || = (n), rezult teorema.


Cititorul poate verifica mica teorem a lui Fermat ca un caz special al teoremei
lui Euler.
Acum, folosind teorema lui Euler, oferim o dovad c un sistem RSA lucreaz
corect, adic decriptarea unui mesaj criptat RSA restituie mesajul initial.
Fie n = pq produsul a dou numere prime i fie e un numr cu gcd(e, (n)) = 1,
astfel ca cheia public RSA este dat de perechea (n, e). Se reaminteste c o
criptare a unui mesaj m este definit ca
e(m) me (mod n)
Similar, decriptarea unui text cifrat c este definit ca:
d(c) cd (mod n)
cu d e1 (mod (n)). Vom dovedi c decriptarea este inversa criptrii. Aceasta
d siguranta c receptorul poate recupera mesajul originar, criptat prin folosirea
cheii sale private, cum trebuie s fie ntr-o schem de criptare corect.
Teorema 8: d(e(m)) m (mod n) ori de te ori gcd(m, n) = 1.
Demonstratie: Rememorm c e d 1 (mod (n)) astfel ed 1 (mod (n)) sau
cu alte cuvinte, ed 1 este un multiplu al numrului (n), s spunem k(n).
Apoi calculm
d(e(m)) (me)d med m1 + k(n) m(m(n))k m.1k m (mod n)
n calcul s-a utilizat teorema lui Euler pentru a conchide c m(n) 1 (mod n).
Observatia 1: Sunt suficiente numere prime pentru a facilita gsirea a dou din
ele. Exist aproximativ x/lnx numere prime ntre 1 i x.
Observatia 2: Functia de criptare i functia de decriptare pot fi aplicate n orice
ordine.
Autentificarea
O situatie de discutat: mesajul nu este necesarmente secret dar este de dorit o
asigurare asupra autorului lui. A creaz o semntur digital S pentru mesajul ei
M: S = Md mod n, unde (d, n) este cheia privat a lui A. A poate atunci s
cripteze semntura utiliznd cheia public a lui B. La primirea mesajului, B o
va decripta uznd de cheia lui privat, apoi va aplica cheia public a lui A
pentru a se asigura c aceasta vine de la A i nu s-a produs vreo interferen
nedorit.
Ceea ce se ntmpl n realitate este c A semneaz un digest (un rezumat) al
mesajului M format prin aplicarea unei functii hash3 mesajului M, apoi ataeaz
versiunea mai scurt semnat a mesajului, la mesajul M real; B aplic aceeai
functie hash mesajului M pentru a obtine digest-ul, apoi aplic semnturii cheia
public a lui A i compar rezultatul cu h(M). De notat c A semneaz n esent
3

O functie hash este o amprent numeric redus produs/rezultat din orice gen de date.
Functii hash sunt utilizate i n criptografie.

107
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

orice mesaj care se rezum prin hash la acelai digest; acest lucru reprezint un
risc de securitate.
Recent, SHA-1 (Secure Hash Algorithm 1, unul dintr-o serie de algoritmi
siguri de obtinere de versiuni hash, SHA-1, SHA-224, SHA-256, SHA-384 i
SHA-512), o functie hash pentru acest scop, a fost compromis; s-a gsit o
functie mai simpl care produce aceleai valori ca i SHA-1.
Un certificat d asigurarea c cheia public a lui A este corect. Certificatul
adaug o semntur (de genul Verisign) la cheia public care verific
autenticitatea. Exist de asemenea autoriti time-stamp pentru verificarea
timpului la care mesajul a fost compus i/sau trimis.
Utilizarea practic a criptrii RSA
Algoritmii cu cheie privat sunt mult mai rapizi (de cca. 1000 de ori). n
general, exponentul public este de obicei mult mai mic dect exponentul privat,
ceea ce nseamn c decriptarea unui mesaj este mai rapid dect criptarea i
verificarea unei semnturi este mai rapid dect semnarea; aceasta-i foarte bine
deoarece semnarea i criptarea sunt fcute numai o dat, n timp ce verificarea
unei semnturi date se poate repeta de mai multe ori. RSA este utilizat
deobicei pentru a coda o cheie care poate fi apoi utilizat cu un sistem de cheie
privat.
SSH (Secure Shell). Programul ssh-keygen genereaz o pereche de chei
public-privat prin alegerea aleatoare de numere prime mari; aceast operaie
consum cteva minute pe un minicomputer Nova.
n particular, cheia privat este depus n .ssh2/id_dsa_2048_a; cheia public
este depus n .ssh2/id_dsa_2048_a.pub. Procedura de logare din contul A la
contul B: SSH de pe A trimite un identificator de sesiune semnat (cunoscut
numai clientului i serverului, criptat cu cheia privat a lui A) serverului SSH al
lui B. B se asigur c cheia public a lui A se afl ntr-un fiier denumit
authorized_keys i este corect. Dac aa este, serverul SSH al lui B permite
logarea la B.
SSH menine i verific totodat o baz de date care contine informatii de
identificare pentru fiecare host cu care a lucrat vreodat; dac un host se
schimb, utilizatorul este avertizat. Toate comunicatiile n orice directie sunt
criptate cu o metod de cheie privat.

108
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

CODAREA PENTRU CANALE AFECTATE DE PERTURBAII


Observaii generale
n cazul canalelor fr perturbatii, schema transmiterii informatiei este uzual
aceea din figura urmtoare:
mesaj

Codor

mesaj
codat

Canal

mesaj
codat,
fr
erori

Decodor

mesaj

Prezena perturbatiilor conduce mai mult sau mai putin accidental la alterarea
informatiei. Fenomenul se combate prin introducerea unei codri i a unei
decodri suplimentare care s protejeze informatia n faa posibilelor deteriorri
datorate perturbatiilor. Pentru aceasta, schema de transmitere de mai sus se
completeaz astfel:
Perturbatii

Codor
surs

Codor
canal

Canal

Decodor
canal

Decodor
surs

Conexiune invers

n aceast sectiune, discutia este dedicat aproape exclusiv canalelor binare.


Codorul canalului preia mesaje de lungime fix L produse de codorul sursei i
le aplic pe o multime de cuvinte de cod de lungime N > L, de asemenea fix.
Biii suplimentari n numr de N L reprezint biii de control, biii de
verificare a integrittii informatiei vehiculate prin canal.
Cu L biti se pot alctui 2L cuvinte distincte. Cu N biti se pot alctui 2N cuvinte.
Este de la sine neles c sunt necesare numai 2L cuvinte de cod pentru a realiza
codarea secundar. Numai 2L cuvinte de cod vor fi acceptate ca reprezentnd
cuvinte generate de codorul sursei. Celelalte 2N 2L cuvinte vor contine biti
detectabili ca eronai. Rezerva de cuvinte de cod i biii suplimetari sunt de
exploatat pentru detectarea i/sau corectarea erorilor de transmitere prin canal.
n transmiterea de informatie prin canale afectate de perturbatii, unele sisteme
fac numai o detectare a erorilor i apoi (imediat) solicit emittorului s repete

109
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

transmiterea. Sistemele de acest gen necesit un circuit fiabil (sigur n


funcionare) pantru comunicarea invers prin care receptorul nstiineaz
emitorul de corectitudinea sau, mai ales, de incorectitudinea cuvintelor
primite. Sistemul este menionat n literatur i recunoscut de specialisti prin
trei iniiale: ARQ de la Automatic-Repeat-Request. Un asemenea sistem
utilizeaz conexiunea invers reprezentat n figura cu dubl codificare, prin
linii fragmentate.
Alte sisteme realizeaz la receptie att detecia erorilor ct i corectarea lor.
Iniialele FEC de la Forward-Error-Correction identific n literatura de profil
sistemele din aceast categorie.
n reelele de comunicatie se practic transferul informatiei n pachete.
Pachetele se numesc frames, sau packets, sau segments, denumire dependent
de nivelul/rangul reelei n care se vehiculeaz informatia. Pachetele au uzual
un header i/sau un trailer care au rolul de a marca un mesaj la nceput i/sau la
sfrit. Pe baza unei verificri sistematice a erorilor posibile se utilizeaz un
ARQ foarte eficient.
Debit de informatie (rata)
Condiia N > L arat c debitul de informatie (rata) la intrarea n canal este mai
mare dect debitul primit de codorul canalului. Dac ns = 1/s este debitul fix al
codului sursei (bps bii pe secund) i nc = 1/c este debitul prin canal atunci

n
NL s L c
c
ns
Dac se ntmpl ca relaia de mai sus s nu produc un numr N ntreg atunci
este necesar ca din timp n timp s se transmit cte un bit fr semnificaie
(dummy).
Se folosesc uneori urmtoarele caracterisitici ale codurilor de canal:
a) Debitul relativ al codului
L c ns
R

N s nc
b) Redundana codului
1 N
C red
R L
c) Excesul de redundan
1
NL
E red 1
R
L
Dou exemple:
1. Codorul sursei are debitul 2 bps, codorul de canal are debitul 4 bps. Dac L
= 3 atunci N = 6 i la fiecare cuvnt trei biti sunt disponibili pentru controlul
fluxului de informatie.
2. Codorul de surs are debitul 3 bps, codorul canalului are debitul 4 bps.
Acum N = (4/3)L. Dac L = 3, atunci N = 4 i un bit din fiecare cuvnt poate

110
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

fi utilizat pentru verificarea exactitii transmisiei. Acum, dac L = 5,


rezult N = (4/3)5 6 i din nou un bit la fiecare cuvnt este utilizabil
pentru control. Se observ ns o nepotrivire de viteze (rate) ntre cele dou
fluxuri de biti i atunci apare necesitatea transmiterii unor biti fr
semnificatie (dummy). Din relaia de calcul a numrului N se extrage partea
fracionar n form redus (ca raport a dou numere naturale cele mai mici
posibile). Fracia aceasta este raportul dintre numrul biilor de umplutur
(dummy) i numrul cuvintelor dintr-o perioad dup care acei bii trebuie
introdui pentru a asigura sincronismul. n cazul n discutie d/n = 2/3 i
schema transmisiei este x x x x x x x x x x x x x x x x x x * * cu biii de
control marcati prin subliniere, cu biii suplimentari (dummy) marcati prin
stelue. n aceste codiii la 15 biti provenii de la codorul sursei se transmit
prin canal 20 de biti ceea ce corespunde relatiei de baz N = (4/3)L. Att
bitii suplimentari din fiecare cuvnt de cod ct i bitii de umplutur pot fi
utilizati pentru controlul corectitudinii fluxului transmis.
Reguli de decizie la decodare
Pentru canalele fr perturbaii simbolul transmis este identificat la iesire cu
certitudine. Canalele cu perturbatii altereaz informatia, semnalul se deghizeaz
n variate moduri posibile i e necesar ca pe baza informatiei recepionate i a
unor reguli de decizie s se identifice simbolurile efectiv transmise.
n notatia de-acum ncetenit, cu cele dou multimi alfabetice, de intrare A =
{ai}, i = 1, 2, , r i de iesire B = {bj}, j = 1, 2, , s, se poate decide fie pe
baza unei reguli simbol-la-simbol, d(bj), care asociaz fiecrui simbol bj
observat la iesire un simbol unic la intrarea canalului, fie pe baza unei reguli
cuvnt-la-cuvnt, d(b), care asociaz fiecrui cuvnt b de la iesire un cuvnt
unic la intrare.
O regul de decizie bun ar trebui s minimizeze riscul de a decide gresit.
O decodare care asigur o probabilitate minim de eroare este aceea n care
d(bj) = a*, face din a* acel simbol de intrare pentru care
P(a*/bj) P(ai/bj)
oricare ar fi indicele i.
Relatia ultim se poate scrie i sub forma
P(b j / a * ) P(a * ) P(b j / ai ) P(ai )

P(b j )
P (b j )
si apoi
P(bj/a*)P(a*) P(bj/ai)P(ai)
relatie care implic nu numai probabilittile din matricea care descrie canalul ci
i probabilittile a priori ale simbolurilor de intrare, probabilitti care nu sunt
dect rareori cunoscute.
Decodarea care asigur verosimilitatea maxim foloseste exclusiv relatiile d(bj)
= a*, cu a* acel simbol de la intrare pentru care
P(a*/bj) P(ai/bj)

111
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

pentru orice i.
Aceast metod are avantajul c nu necesit probabilitile a priori, cele de la
intrarea canalului. Cu toate c n general nu asigur riscul minim de eroare,
metoda verosimilittii maxime este cu eroare minim dac simbolurile la
intrarea canalului sunt echiprobabile, ceea ce ndeobte se urmrete.
Probabilitatea deciziilor eronate se calculeaz avnd n vedere c dac P[a* =
d(bj)/bj] este asociat deciziei corecte atunci probabilitatea erorii n aceleai
conditii de receptie a simbolului bj este
P(E/bj) = 1 P[a* = d(bj)/bj]
Evident, o probabilitate maxim a deciziei corecte se obtine concomitent cu o
probabilitate minim de eroare, de unde i denumirea uneia dintre metodele de
detectie enunat mai devreme.
Riscul general de a comite erori de decizie este dat de media
PE P( E / b j ) P(b j )
B

i, echivalent, de

PE P( E / ai ) P(a i )
A

P ( E / ai )

P (b / a )
i

bB

cu ultima sum efectuat pe simbolurile alfabetului B pentru care d (b j ) ai .


O aplicatie-exemplu pentru canalul caracterizat de matricea
0,5 0,3 0,2
[P] 0,2 0,3 0,5
0,3 0,3 0,4
cu probabilittile simbolurilor de intrare presupuse cunoscute, P(a1) = 0,3, P(a2)
= 0,3, P(a3) = 0,4 sau, sintetic, P(a) = [0,3 0,3 0,4] se conduce ca mai jos.
Decodarea maximum verosimil. Regula de decizie este formulat n acest caz
prin reinerea probabilittii maxime pe fiecare coloan: d(b1) = a1, d(b2) = a1,
d(b3) = a2. De observat c decizia d(b2) are alternative, d(b2) = a2, d(b2) = a3,
care sunt la fel de bune, la fel de nefericite ca i aceea deja reinut ca regul de
decizie.
Pentru calculul probabilittii de a decide eronat se foloseste relaia
PE P( E / ai ) P(ai ) P(a i ) P(b / ai )
A

bB

Pentru a obtine probabilitatea deciziei gresite P( E / ai )

P(b / a ) ,
i

se fac

bB

sume pe liniile matricii [P],


scriere ordonat
0,5
0,2

0,3

cu omiterea pozitiilor pentru care d(bj) = ai. ntr-o


0,3 0, 2 0,2 0,3 0,06
0,3 0,5 0,5 0,3 0,15
0,3 0, 4 1,0 0, 4 0, 40

112
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Pe coloana ultim sunt nscrise probabilittile erorilor n cazul transmiterii


simbolurilor a1, a2, respectiv a3, produse ale numerelor din coloanele
premergtoare care sunt P(E/ai) i P(ai), pentru i = 1, 2, 3. nsumnd aceste
probabiltti se obtine un numr dezamgitor: 0,61. Asadar, n 61% din cazuri
decizia este gresit ceea ce nu este prea ncurajator, dar acestea sunt rezultatele
i calculul (cu valoare didactic, desigur) este corect. n cazul de fat, un mare
handicap al metodei verosimilittii maxime este acela c dac se transmite
simbolul a3, niciodat decizia nu va fi d(bj) = a3, ceea ce se poate observa i
cantitativ: P(E/a3) = 1.
Decodarea avnd n vedere probabilitate minim de a comite erori necesit
probabilittile simbolurilor de la intrare, care de data aceasta sunt disponibile.
Se calculeaz P(bj/a*)P(a*) pentru fiecare bj i se retine valoarea maxim.
Calculul sistematic include multiplicarea
0,15 0,09 0,06
d (b1 ) a1

P (a ) [ P ] 0,06 0,09 0,15 d (b2 ) a3


0,12 0,12 0,16
d (b3 ) a3

dup care se calculeaz probabilitatea erorii ca i la metoda anterioar


0,5 0,3 0, 2 0,5 0,3 0,15

0,2 0,3 0,5 1,0 0,3 0,30


0,3 0,3 0, 4 0,3 0,4 0,12
Semnificaia ultimei coloane este aceeai ca mai sus, la fel a factorilor din a
cror multiplicare rezult, cu deosebirea c primul factor este altfel ales. Prin
nsumarea coloanei din dreapta extrem, se obtine o probabilitate de eroare mai
mic (0,57) dect n cazul verosimilittii maxime, dar tot dezamgitor de mare.
Se ntmpl asa ceva n practica curent? Rspunsul este redat n continuare.
Canalele moderne sunt binare simetrice (BSC Binary Symmetric Channel).
Probabilitatea q de transmitere eronat a unui bit este uzual foarte mic i n
relatia q << p cu probabilitatea p a absenei erorii, p = 1 q. Probabilittile
P(ai) sunt foarte apropiate ca valoare datorit codrii aproape optime a sursei.
Se poate dovedi c metoda verosimilitii maxime i metoda probabilitii
minime a erorii dau aceleasi reguli de decizie i probabilitti de eroare foarte
apropiate sau chiar egale.
Aproape totdeauna regulile de decizie sunt d(0) = 0, d(1) = 1 i probabilitatea
erorilor este PE = q. Regulile de decizie se bazeaz totusi pe cuvinte: avnd un
cuvnt de cod recepionat, de lungime N, se decide asupra cuvntului de cod de
lungime N transmis prin canal. Problema se pune astfel:
Fie a un cuvnt de cod transmis prin canal i fie b cuvntul recepionat.
Mesajele au lungimea de L biti, cuvintele de cod au lungimea de N biti. Se pot
forma 2N cuvinte cu N biti, dar numai 2L sunt necesare pentru a coda mesajele
bloc de lungime L. La recepie pot aprea cele 2L cuvinte valide asociate cu
cuvintele de la intrare, dar prin alterarea datorit perturbatiilor pot s apar i
oricare din celelalte 2N 2L cuvinte, care contin ns erori. Erorile nu sunt att
de multe nct s transforme un cuvnt de cod valid n alt cuvnt de cod tot

113
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

valid. Codorul canalului trebuie s asocieze un cuvnt b cu cuvntul a cel mai


probabil trimis prin canal.
Distana Hamming. Decodarea bazat pe distana Hamming
Fiind date dou cuvinte de aceeasi lungime, a = a1a2an i b = b1b2bn, prin
definiie, distanta Hamming dintre ele este numrul de pozitii prin care a i b
difer. Se noteaz cu d(a,b) i d(a,b) = numrul de poziii n care ai bi.
Pentru orice alfabet i pentru un n dat, distanta Hamming are pe mulimea
tuturor cuvintelor de lungime n toate caracteristicile unei metrici:
1. d(a, b) 0, cu egalitate dac i numai dac a = b
2. d(a, b) = d(b, a)
3. d(a, b) + d(b, c) d(a, c) (inegalitatea triunghiului)
S-a artat mai devreme c n sistemele moderne de transmisiuni, metoda
verosimilittii maxime i metoda probabilittii minime de eroare conduc la
aceleai rezultate. Regula prin care se decide care cuvnt a de N biti a fost
trimis prin canal dac s-a receptionat cuvntul de N biti b trebuie s maximizeze
probabilitatea P(b/a). Admitem c distanta Hamming ntre cuvntul trimis i cel
receptionat este d(a,b) = D. Aceasta nseamn c exact D biti sunt eronati,
fiecare cu probabilitatea q. Ceilalti N D biti sunt corecti, cu probabilitatea
individual p = 1 q. Probabilitatea coditionat menionat este aadar
P(b/a) = q Dp N D
Deoarece q < 0,5 se retine cuvntul a pentru care distanta d(a,b) = D este
minim deoarece acela maximizeaz probabilitatea P(b/a). Se poate stabili o
regul de decizie pe baza distantelor Hamming:
a) dac b = ai pentru un i particular, adic exact unul din cuvintele care se
aplic la intrare, atunci s-a transmis ai
b) dac b ai pentru orice i, atunci se caut cuvntul de cod a* cel mai
apropiat (n sensul distanei Hamming) de cuvntul receptionat adic acel
cuvnt pentru care d(a*, b) d(ai, b) oricare ar fi i. Dac cuvntul a* este
unic, atunci acel cuvt de cod s-a transmis: el are erori care sunt (pot fi) i
corectate. Dac solutia nu este unic atunci erorile sunt numai detectate fr
posibilitatea de a le i corecta.
Urmeaz o discutie pe un exemplu simplu.
Mesaje (L = 2)
Coduri (N = 3)

00
000

01
001

10
011

11
111

Sunt, dup cum se observ, 4 cuvinte de cod necesare pentru codarea celor 4
mesaje. Cu 3 biti se pot alctui 8 cuvinte distincte: 4 din ele vor fi cuvinte de
cod, 4 din ele nu vor fi cuvinte ale codului.
Cu regula de decizie prin distante Hamming, la receptionarea cuvintelor 010,
100, de pild, se procedeaz ca n tabelul alturat.

114
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

b = b1b2b3
010
100

Codu(ri)l(e) cel(e) mai


apropiat(e)
000, 011
000

Decizie/Aciune
Eroare detectat
Eroare corectat

Cititorul este ndemnat s completeze ca exercitiu tabelul cu alte posibile


cuvinte receptionate.
Detectarea i corectarea erorilor prin distanta Hamming
Se numete distant minim d(K) a unui cod K cea mai mic distant Hamming
ntre dou cuvinte distincte ale codului:
d(K) = min{d(a,b) cu a, b n K, distincte}
Un cod K se zice c poate detecta toate combinatiile de t erori dac pentru
fiecare cuvnt transmis a i fiecare cuvnt receptionat b obtinut prin alterarea a
t biti n a, b nu este un cuvnt de cod. Codurile de acest gen sunt importante n
sistemele ARQ (Automatic Repeat Request).
Proprietate: Un cod detecteaz toate cuvintele n care t biti sunt eronati dac
distanta lui minim este superioar lui t, d(K) > t.
Demonstratie: Fie a* cuvntul transmis i b cel recepionat. Dac t biti sunt
eronati rezult c d(b, a*) = t. Pentru a detecta erorile cuprinse n b trebuie
artat c b nu poate fi un alt cuvnt de cod ai, adic d(b,ai) > 0 pentru orice i.
Inegalitatea triunghiului
d(a*, b) + d(b, ai) d(a*, ai)
se mai scrie
d(b, ai) d(a*, ai) d(a*, b)
i pentru siguranta detectrii erorilor din b este necesar ca
d(a*, ai) d(a*, b) > 0
adic
d(a*, ai) > d(a*, b) = t
De aici rezult c d(K) > t.
Un cod se spune c este capabil a corecta t erori (la recepie), dac la
transmiterea unui cuvnt a al codului, orice cuvnt b receptionat (de fapt
cuvntul a cu t biti alterati) poate fi asociat prin metoda de detectie a
verosimilittii maxime cu un cuvnt de cod unic, care nu poate fi dect a.
Sistemele FEC (Forward-Error-Correction) utilizeaz aceast proprietate a
codurilor.
Proprietate: Un cod poate corecta la recepie t biti eronati, dac distanta lui
minim este mai mare dect 2t, d(K) > 2t.
Demonstratie: Fie a* cuvntul de cod transmis, altfel oarecare ntre cuvintele
codului, i b cuvntul receptionat. Dac t biti sunt eronati rezult c d(a*, b) = t.
Pentru a detecta faptul c b este eronat i pentru ca soluia detectiei prin
verosimilitatea maxim s fie unic este suficient ca d(a*, b) < d(b, ai) pentru
orice alt cuvnt de cod ai diferit de a*.

115
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Inegalitatea triunghiului pentru orice alt cuvnt ai


d(a*, b) + d(b, ai) d(a*, ai)
se rescrie ca
d(b, ai) d(a*, ai) d(a*, b)
i pentru a avea siguranta c d(b, ai) > d(a*, b) este necesar ca
d(a*, ai) d(a*, b) > d(a*, b)
de unde rezult
d(a*, ai) > 2d(a*, b) = 2t
adic d(K) > 2t.
n continuare este discutat capacitatea ctorva coduri simple de a detecta i/sau
de a corecta erori.
Coduri cu paritate constant
Codurile cu paritate constant au particularitatea c N = L + 1, n notatia de
acum familiar. Se adaug un bit la codul originar care s fac suma bitilor de o
acceasi paritate. n tabelul imediat urmtor se exemplific codarea de acest gen
pentru coduri surs de lungime L = 2.
Mesaje
Coduri

00
000

01
011

10
101

11
110

Bitul suplimentar este alturat bitilor mesajului (scris diferit n tabel) i valoarea
lui este aleas astfel ca suma bitilor din cuvintele de cod s fie par. Se verific
uor c distanta minim a codului este d(K) = 2. Conform asteptrii, acest cod
poate detecta cuvintele cu un bit eronat deoarece d(K) = 2 > t = 1.
Coduri cu repetiie
Codurile cu repetiie, ca acela din tabelul urmtor se definesc i se utilizeaz
numai pentru L = 1 i N impar.
Mesaje
Coduri

0
000

1
111

Codarea se face prin simpla repetare a bitului originar de nc N 1 ori. n


cazul exemplificat, distana Hamming minim este d(K) = 3. Pentru t = 2, d(K)
> t, ceea ce arat capacitatea codului de a detecta cuvintele cu doi biti alterati.
Pentru t = 1, d(K) > 2t, ceea ce indic proprietatea codului de a corecta un bit
eronat ntr-un cuvnt receptionat care nu apartine codului.
Proprietatea de a corecta o eroare poate fi exploatat i prin retinerea ca mesaj
corect a bitului majoritar. Stabilirea bitului majoritar se implementeaz mai
usor dect orice alt metod de a corecta erori bazat pe distanta Hamming.

116
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

ntr-un exemplu prezentat mai devreme, pentru o surs de cuvinte de lungime L


= 2 biti i unde se utilizeaz cuvinte de cod de lungime N = 3 (se reia mai jos
acel tabel) distanta Hamming este d(K) = 1.
Mesaje (L = 2)
Coduri (N = 3)

00
000

01
001

10
011

11
111

Un astfel de cod nu poate detecta erori i, cu att mai mult, nu poate nici s le
corecteze. Dac se trimite cuvntul de cod 000 i se receptioneaz cuvntul 001
eroarea nu poate fi detectat i rmne ca o eroare deoarece cuvntul (eronat)
receptionat apartine codului.
Codul care urmeaz, notat cu K6 este definit astfel:
Mesaje
Coduri
Mesaje
Coduri

000
000000
100
100011

001
001110
101
101101

010
010101
110
110110

011
011011
111
111000

Se poate constata c distanta minim este d(K) = 3. Aadar codul poate corecta
un bit eronat. De pild, dac se transmite a = 010101 i se receptioneaz b =
010111, cuvntul de cod cel mai apropiat de b este a = 010101 i eroarea este
localizat i corectat cu uurint. Proprietatea se extinde la orice cuvnt
transmis i la orice bit alterat. Cu 6 cifre binare se pot forma 64 de cuvinte, dar
din acestea numai M = 2L = 8 sunt utilizate n operatia de codare.
Limita superioar B[N, d(K)] a numrului de cuvinte de cod. Distana minim
d(K) a unui cod bloc K determin capacitatea acelui cod de a detecta (sau de a
corecta) erori. Dac se cere proiectarea unui cod de lungime N cu distanta
minim d(K), care este limita B[N, d(K)] asupra lui M i, implicit, asupra lui L
pentru o pereche [N, d(K)] dat? Aceasta este denumit uneori problema
central a teoriei codrii. Cteva rezultate:
B(N, 1) = 2N
B(N, 2) = 2N 1
B(N, 3) = 2N/(N + 1)
B(N, 4) = 2N 1/N
n general
B(N, 2t + 1) = B(N +1, 2t +2)
pentru t = 0, 1, 2, ..., astfel nct dac se cunoate limita pentru distanta minim
d(K) par, se poate calcula limita pentru distanta minim d(K) impar. Pentru
distanta d(K) par exist o limit dat relatia lui Plotkin
B[N, d(K)] = 2d(K)/[2d(K) N]
n conditiile d(K) N < 2d(K).
Pentru cazul L = 2 (M = 4) de pild, care este lungimea minim a cuvintelor de
cod pentru detectarea unei erori i apoi pentru corectarea unei erori?

117
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Pentru detectarea unui bit eronat distana minim trebuie s fie mai mare dect
1, deci d(K) = 2. Din M = 4 B(N, 2) = 2N 1 rezult N = 3 (cel mai mic N).
Codul cu L = 2, N = 3 este un cod cu paritate constant, ca acela discutat puin
mai devreme.
Pentru corectarea unui bit eronat distana minim trebuie s fie mai mare dect
2, deci d(K) = 3. Din M = 4 B(N, 3) = 2N/(N + 1) rezult N = 5 (cel mai mic
N). Codul cu L = 2, N = 5 poate fi, de pild, urmtorul
Mesaje (L = 2)
Coduri (N = 5)

00
00000

01
01011

10
10111

11
11100

Codul poate detecta doi biti eronati, cu detaliul c la detectie se stabilete


deosebirea cuvntului receptionat de oricare dintre cuvintele de cod, b ai.
Pentru corectarea a doi biti eronati distanta minim trebuie s fie mai mare
dect 4, deci d(K) = 5. Conform formulei lui Plotkin
B(N, 5) = B(N + 1, 6) = 2d(K)/[2d(K) (N + 1)] = 12/(11 N)
Din M = 4 12/(11 N) rezult N = 8. Acesta numrul cel mai mic de biti n
cuvintele de cod pentru a asigura d(K) = 5.
Problema principal a codrii i decodrii pe baza distantelor Hamming este
aceea a implementrii dificile. Dificultatea const n creterea exponential cu L
a numrului de cuvinte de cod care, n procesul decodrii, trebuie memorate i
comparate cu cuvintele efectiv recepionate. Aceste elemente cer memorii mai
mari i capacitti de calcul mai importante pe msur ce L crete. O singur
implemetare este convenabil, aceea din cazul transmiterii repetitive, cnd
sistemul retinerii bitului majoritar este simplu i foarte eficient. Mai departe vor
fi discutate alte coduri, cu implementare eficient, codurile binare liniare.
Probabilitatea de eroare n bloc i debitul de informaie
Se noteaz:
Kn un cod bloc de lungime n N;
Pe(Kn) probabilitatea ca decodarea unui bloc eronat s se fac la un cuvnt de
cod diferit de cel efectiv transmis;
Peb(Kn) probabilitatea erorii asupra unui bit;
R(Kn) debitul de informatie asociat codului bloc Kn.
n compararea codurilor, probabilitatea Pe(Kn) este cea mai important deoarece
este legat de cea mai slab performant a codului. Exist ns o relatie ntre
cele dou probabilitti i exemplul urmtor ilustreaz aceast relatie.
Fie codul repetitiv L = 1, N = 3 discutat mai sus, uitilizat pentru transmitere
printr-un canal binar simetric cu Peb(K3) = q = 0,001. Regula de detectie care
const n retinerea bitului majoritar conduce la rezultate false dac doi sau trei
biti sunt eronati, de fapt inversati, 0 n 1 i 1 n 0. Probabilitatea ca doi din cei
trei biti s fie eronati este C32q2p = 3q2p, iar probabilitatea alterrii tuturor celor
trei biti este q3. Probabilitatea erorii de identificare a cuvntului de cod transmis

118
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

este suma acestora dou: q3 + 3q2p 310 6, mult mai mic dect probabilitatea
erorii per bit q = 0,001. Dar cu ce cost: R(K3) = 1/3.
Codul repetitiv L = 1, N = 5, n aceleasi conditii de eroare per bit, Peb(K5) = q =
0,001, are probabilitatea de bloc/cuvnt eronat dat de relatia Pe(K5) = q5 + 5q4p
+ 10q3p2 10 8, care cumuleaz probabilittile ca 5, 4 sau 3 biti din cei N = 5
s fie eronati. Situatia este mai bun dar debitul relativ scade la R(K5) = 1/5.
Lucrurile stau nc mai ru sub aspectul vitezelor relative la codurile repetitive
cu N mai mare.
Exist o soluie pentru acest inconvenient? Rspunsul este afirmativ. Pentru
ilustrare se consider din nou un canal binar simetric cu eroarea de bit probabil
n proportia Peb(Kn) = q = 0,001. Se proiecteaz un cod cu cuvinte de N = 4 biti
i unul cu cuvinte de N = 6 biti, notate cu K4, respectiv K6, ntr-o tentativ de a
cobor probabilitatea Pe(Kn) i de a mentine R(Kn) = 1/2.
Codul K4 (N = 4, L = 2)
Mesaje
Coduri

00
0000

01
0111

10
1000

11
1111

transmite o dat bitul prim i de trei ori bitul al doilea. Se efectueaz o corectie
conditionat: se admite c primul bit este corect, b1 = a1 i apoi bitul al doilea
este stabilit prin procedeul majoritar aplicat pe sirul de biti b2b3b4. Decodarea
este corect dac a) cuvntul receptionat are toti bitii corecti sau dac b)
cuvntul receptionat are bitul prim corect i ntre bitii ceilalti unul i numai unul
este alterat. Probabilittile asociate celor dou situatii sunt p4, respectiv C31qp3
= 3qp3. Prin urmare, 1 Pe(K4) = p4 + 3qp3 i Pe(K4) = 1 (p4 + 3qp3) 0,001.
Codul K6 dintr-un exemplu schitat mai devreme, cu N = 6, L = 3 poate corecta
eroarea de un bit per cuvnt, dar va produce cuvinte eronate ori de cte ori
numrul de biti eronati din cuvnt este t > 1.
Decodarea este corect cnd toti bitii sunt corecti (probabilitate p6) sau unul din
biti este eronat (probabilitate 6qp5). Prin urmare probabilitatea unei erori de
cuvnt este Pe(K6) = 1 (p6 + 6qp5) 0,000015, ceea ce este mult mai putin
dect 0,001.
Solutia a doua, K6 d o reducere a probabilittii erorilor n cuvnt cu dou
ordine de marime fr a reduce debitul relativ de informatie.
Exemplele tratate i comparate ndeamn la cteva ntrebri:
a) Se poate gsi un cod (cu N chiar mai mare) care s fac Pe(Kn) orict de mic
cu R(Kn) = 1/2, constant?
b) Poate fi un cod orict de fiabil dorim la R(Kn) = 0,9?
c) Poate fi un cod orict de fiabil dorim la R(Kn) = 0,99?
Teorema fundamental a lui Shannon d unele rspunsuri la ntrebri de genul
celor formulate mai sus.
Pentru un canal binar simetric fr perturbatii capacitatea este C = log 2 = 1 bit,
ceea ce nseamn c dac se transmite prin canal 1 bit de informatie se
receptioneaz acel 1 bit de informatie.

119
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Pentru un canal binar simetric afectat de perturbatii este posibil o capacitate C


= 0,5 biti. Aceasta se traduce prin faptul c la transmiterea a N biti de
informatie numai N/2 biti pot fi extrasi la receptie, admitnd c acel canal se
utilizeaz la capacitate total. Debitul relativ este n acest caz R = 0,5 i din R =
L/N = 1/2 rezult N = 2L, adic se pot extrage la receptie 0,5N = 0,5(2L) = L biti
de informatie adic exact necesarul pentru a recupera mesajul care este de
lungime L. Prin introducerea unor redundane, s-au depsit problemele datorate
erorilor introduse de canal. Teorema fundamental a lui Shannon spune c dac
R < C, pentru N suficient de mare se poate face o codare care nltur orice
eroare provenit din canal.
Teorem: Pentru orice canal binar simetric de capacitate C se poate gsi un cod
orict de fiabil, cu R(Kn) C, orict de apropiat de C. Cu alte cuvinte, exist un
sir de coduri K1, K2, K3, astfel nct Pe(Kn) tinde ctre zero i R(Kn) tinde
ctre C pe msur ce n creste
limn Pe(Kn) = 0, limn R(Kn) = C
Demonstratia riguroas nu este uoar. De aceea n continuare este prezentat o
demonstratie oarecum inginereasc.
Fie un numr 1 > 0 arbitrar de mic. Pentru proiectarea unui cod Kn care s aib
viteza relativ R(Kn) = C 1 este necesar ca informatia s fie de lungimea L =
n(C 1) pentru ca
R(Kn) = [n(C 1)]/n = C 1
Prin urmare, sunt necesare M 2 n (C 1 ) cuvinte de cod. Prin alegerea la
ntmplare a unor cuvinte n numr de M din cele 2n posibile, se obtine (aleator)
un cod Kn pentru care Pe(Kn) are toate particularittile unei variabile aleatoare.
~
Media acestei variabile aleatoare, Pe M [ Pe ( K n )] are proprietatea (admis
tacit ca adevrat, dar nedovedit n aceast demonstratie inginereasc)
~
lim n Pe 0
~
De aici rezult c pentru 1, 2 > 0 orict de mici, exist n pentru care Pe 2 si,
implicit, exist Kn cu Pe(Kn) < 1.
Partea surprinztoare sub aspect practic a teoremei lui Shannon este aceea cu
alegerea la ntmplare a unui cod Kn. Cum se poate alege la ntmplare un cod
care s fac probabilitatea Pe(Kn) convenabil de mic? Rspunsul la aceast
ntrebare nu a fost dat de nimeni pn acum. De aceea problema codrii tinde s
ignore teorema i s se concentreze asupra procedurilor practice de a proiecta
coduri care s corecteze erori multe la viteze de transmitere nc rezonabile.
O reciproc a teoremei lui Shannon spune c pentru orice canal binar simetric
de capacitate C, ori de cte ori un cod Kn cu cuvinte de lungime n este transmis
cu o vitez cel putin egal cu C + 1 (1 > 0), codul devine din ce n ce mai
nesigur pe msur ce n creste
R(Kn) C + 1 limn Pe(Kn) = 0
n consecin, pentru un canal binar simetric cu probabilitatea de bit eronat q =
0,001, capacitatea canalului este C = 1 + plogp + qlogq 0,9886 i cu teorema

120
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

fundamental a lui Shannon se pot da rspunsuri la ntrebrile formulate mai


devreme. Rspunsurile sunt: a) pozitiv; b) pozitiv; c) negativ.
Coduri binare liniare
Se admit a fi cunoscute operatiile binare (mod 2) de adunare i de nmultire.
Adunarea, echivalent unui SAU exclusiv (XOR)
+
0
1

0
0
1

1
1
0

Multiplicarea, echivalent operatiei logice I (AND)


*
0
1

0
0
0

1
0
1

n relatiile urmtoare se poate observa o schimbare de notatii: n pentru


lungimea N a cuvintelor de cod, k pentru numrul L al bitilor informationali,
care acced la codorul de canal. n plus, n discutia care urmeaz se va nota cu xi
bitul al i-lea dintr-un cuvnt de cod sau, uneori, dintr-un cuvnt care s-ar putea
s nu apartin codului.
Un cod binar liniar are particularitatea c cele 2k cuvinte de lungime n satisfac n
k ecuatii liniare n bitii xi , i = 1, 2, , n. Mai mult, orice sistem liniar i
omogen de n k ecuatii cu n necunoscute binare poate fi asociat unui cod liniar.
Este stiut c n conditii de rang maximal pentru matricea sa, un sistem de n k
ecuatii cu n necunoscute are n (n k) = k necunoscute independente. Cum
totul se ntmpl n binar avem 2k solutii distincte, cum era de asteptat.
Codurile cu repetitie de lungime n impar sunt liniare deoarece verific
ecuatiile
x 2 x1
x1 x 2 0
x3 x1
x x3 0
1
...
...
x n x1
x1 x n 0
care sunt n numr de n 1.
Codurile cu paritate constant sunt de asemenea coduri liniare deoarece
x1 x 2 ... x n 0
Matricea de verificare este exact matricea sistemului omogen

121
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

x1
x
2
H 0 sau Hx 0
...

xn
(n scriere martricial) i H are n k linii i n coloane.
Matricile de verificare pentru codurile cu repetitie i codurile cu paritate
constant par se pot scrie imediat (exercitiu).
Dac x este cuvnt de cod atunci Hx = 0. Dac y este cuvnt de cod atunci Hy =
0. Rezult imediat c z = x + y este tot un cuvnt de cod. ntr-adevr, Hz = H(x
+ y) = Hx + Hy = 0 + 0 = 0. De unde o alt definitie pentru codurile linare:
coduri pentru care suma a dou cuvinte de cod este tot un cuvnt de cod.
Proprietatea se verific usor pentru codurile repetitive i pentru codurile de
paritate constant par.
Se propune ca exercitiu verificarea liniarittii codului K4 discutat mai devreme.
Tot ca exercitiu se propune a se verifica dac codul K6 descris mai devreme este
un cod liniar.
Codul

Mesaje
Coduri

00
000

01
001

10
011

11
111

discutat putin mai sus nu este liniar deoarece, de pild, 001 + 011 = 010.
Rezultatul nsumrii celor dou cuvinte de cod nu este un cuvnt de cod.
Coduri rectangulare (produs). ntre codurile construite n mod intuitiv se afl i
codurile matriciale rs utilizate pentru transmiterea informatiei n forma unor
matrici bidimensionale, matrici cu r 1 linii i s 1 coloane, completate cu
nc o linie i nc o coloan alctuite din biti de control/verificare a parittii.
De pild codul rectangular 34
x1 x 2 x3 x 4
x

5 x 6 x 7 x8
x9 x10 x11 x12
cu x1 , x 2 , x3 , x5 , x6 , x 7 biti informationali i restul biti de control. Fiecare bit de
control/verificare este ales pentru a satisface regula parittii pe orizontal i pe
vertical, pe linii i pe coloane, adic:
x1 x 2 x3 x 4 0
x5 x 6 x7 x8 0
x9 x10 x11 x12 0
pentru paritatea pe linii i
x1 x5 x9 0
x 2 x6 x10 0

122
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

x3 x7 x11 0
x 4 x8 x12 0
pentru paritatea pe coloane. Ecuatiile sunt mai multe cu una fa de necesar.
Sistemul de relatii este redundant dar el se scrie i se utilizeaz ca atare.
Matricea de verificare pentru codul rectangular 34 exemplificat apare n
expresia
1 1 1 1 0 0 0 0 0 0 0 0 x1
0 0 0 0 1 1 1 1 0 0 0 0 x

2
0 0 0 0 0 0 0 0 1 1 1 1 ...
Hx
0
1 0 0 0 1 0 0 0 1 0 0 0 x 6
0 1 0 0 0 1 0 0 0 1 0 0 ...


0 0 1 0 0 0 1 0 0 0 1 0 x12
Coduri liniare sistematice sunt codurile liniare n care partea informational
nemodificat este separat de cea de control i de aceea este imediat vizibil i
recuperabil. n cuvntul de cod se disting primii k biti i urmtorii n k biti
x T m T | b T m1 m2 ... mk b1 b2 ... bn k
Aadar, cuvntul de cod se stabilete prin adugarea la cuvntul-mesaj care
trebuie codat a n k biti de control/verificare. n literatur, indexarea se face
uneori ncepnd cu zero, adic
x T m T | b T m0 m1 ... mk 1 b0 b1 ... bn k 1
ceea ce nu schimb problema n esena ei.
De aici nainte se va discuta aproape exclusiv despre codurile sistematice. Din
codurile exemplificate pn acum, codurile cu repetiie sunt sistematice. La fel
codurile cu paritate constant (par) sunt sistematice. Se poate observa/dovedi
(exercitiu) c i codurile K4 i K6 aduse deja de cteva ori n discutie sunt
sistematice.
Dac biii mesajului, m1 , m 2 ,..., mk sunt considerati independeni i biii de
verificare, de control b1 , b2 ,..., bn k se fac dependeni de acestia, atunci biii de
verificare pot fi exprimati prin functii explicite de cei dinti.
Rezultatul interesant sub aspect practic este c biii de control se ataeaz biilor
informationali la codare, iar la decodare, dup corectarea eventualelor erori i
recuperarea cuvntului de cod corect, bitii de control se omit pur i simplu.
Forma sistematic a matricei H. Cu notaiile
b pentru vectorul cu n k componente al biilor de control;
m pentru vectorul cu k componente al biilor de informatie;
c pentru vectorul cu n componente al biilor care alctuiesc cuvntul de cod
c = [mT | bT]T x;
P pentru o matrice (n k)k a coeficienilor (din corpul cu dou elemente 0
i 1, adugat cu operaiile de adunare, sau-exclusiv i de multiplicare,
i;

123
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

G pentru o matrice nk generatoare;


H pentru matricea de verificare cu dimensiunile (n k)n
se scriu relaiile care urmeaz:
Mai nti,
b = Pm
care permite calculul biilor de control din biii de informaie.
Apoi, avnd n vedere c G = [Ik | PT]T, cu Ik matricea unitate de ordinul k, se
scrie
c = Gm = [Ik | PT]Tm = [mT | (Pm)T]T = [mT | bT]T
succesiune de egaliti care este (n variante) relaia de generare a cuvintelor de
cod.
n final, cu H = [P | In k], n care In k este matricea unitate de ordinul n k
Hc = [P | In k] [mT | bT]T = Pm + b = b + b = 0
este relaia de verificare a cuvintelor de cod.
Forma H = [P | In k] a matricei H, cu matricea unitate aezat uneori n stnga
se numete forma sistematic a matricii de control sau de verificare.
Se propune ca exerciiu dovedirea relaiei HG = 0.
Forma sistematic a matricei H face extrem de facil separarea matricei P i, n
continuare, scrierea matricei generatoare i generarea cuvintelor de cod. Dac
matricea H nu este n forma sistematic verificarea cuvintelor de cod necesit o
anumit strategie care poate fi nlocuit cu o manipulare algebric prealabil a
liniilor ei (n genul eliminrii Gauss) pentru a deveni sistematic.
Se recomand ca exerciiu scrierea relaiilor generale de mai sus pentru cteva
din codurile liniare particulare discutate mai devreme, de pild pentru codul cu
repetiie i pentru codul cu paritate constant.
O tratare a codrii i decodrii ar putea utiliza un tabel care s dea echivalena
cuvnt de codificat cuvnt de decodificat. Codarea ar fi atunci o operatie de
cutare n acest tabel, decodarea ar fi tot aa, dup corectarea eventualelor erori
(prin distane Hamming de pild), o cutare n acelasi tabel. Operatia poate fi
incomod din cauza creterii exponeniale a volumului acestui dicionar odat
cu cresterea numrului k. O cale mai eficient pentru codare aplicat n practic
este aceea a unor operatii logice simple asupra irului de k biti purttori de
informatie. La decodare, este evaluat printr-o operatie logic asupra cuvintelor
de lungime n receptionate aa-numitul sindrom. Operatia este ntructva mai
simpl deoarece este de parcurs un tabel mai restrs, cu numai 2n k perechi de
cuvinte.
Generarea biilor de control, sindromul
Dac c este un cuvnt de cod i r este cuvntul recepionat la transmiterea lui,
cu posibile erori, atunci
e=c+r

124
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

este vectorul eroare. Vectorul eroare are 1 pe pozitiile eronate i 0 pe poziiile


corecte ale cuvntului receptionat: ri = ci ei = 0, ri ci ei = 1, pentru
fiecare indice i.
Relatiile c = r + e i r = c + e sunt echivalente cu relatia de definiie a vectorului
eroare. Cu aceste relatii se poate calcula cuvntul de cod dac se dau cuvntul
receptionat i vectorul eroare sau se poate calcula cuvntul recepionat dac se
cunosc cuvntul transmis i eroarea introdus de canal.
n practica transmisiunilor este cunoscut numai cuvntul receptionat
r = ci + e
rezultat prin efectul erorilor e asupra unui cuvnt de cod ci efectiv transmis.
Problema practic este a stabili vectorul de eroare e exclusiv pe baza cuvntului
r receptionat. Dac eroarea e este cunoscut, atunci, foarte simplu, se identific
cuvntul transmis efectiv:
ci = r + e
Cum se poate stabili vectorul eroare? Se consider
Hr = Hci + He = 0 + He = s
Vectorul cu (n k) componente s se numeste vectorul sindrom sau, simplu,
sindrom. Acum, prin scrierea matricei de control detaliat la nivelul coloanelor
ei i a vectorului eroare detaliat la componentele sale rezult
He =[h1 | h2 | | hn][e1 e2 en]T = e1h1 + e2h2 + ... + enhn = s
Vectorul sindrom este o sum de coloane ale matricei de control, a acelor
coloane care au acelai indice cu componentele nenule ale vectorului eroare.
Vectorul sindrom, dei este calculat pe baza cuvntului receptionat depinde
numai de vectorul eroare. Din pcate vectorul eroare e nu poate fi calculat din
vectorul sindrom pentru simplul motiv c matricea de control H nu este
inversabil, iar acelai vector sindrom poate rezulta n general din mai mult
dect o singur combinatie (liniar) de coloane din H.
Dac ei i ej dau acelasi sindrom atunci
Hei + Hej = s + s = 0
asadar suma ei + ej este un cuvnt de cod sau cei doi vectori eroare difer printrun cuvnt de cod. Altfel spus, un cuvnt cu eroare i acelasi cuvnt la care se
adaug un cuvnt de cod produc acelasi sindrom. Mulimea vectorilor eroare
care produc un acelai sindrom este un aa-numit codomeniu al codului. Sunt 2n
vectori de eroare posibili. Un calcul simplu arat c sunt 2n/2k = 2n k codomenii
distincte i disjuncte, fiecare cu 2k vectori. Se pune ntrebarea care este vectorul
eroare corect?
Pe baza distanelor Hamming, vectorul eroare cu cele mai puine componente
nenule este cel mai probabil. Minimul acesta este 1, deci se reine acel vector
eroare care reprezint o singur eroare, numit curent i liderul codomeniului.
Prin selectarea liderului i prin adunarea la cuvntul recepionat se obtine cel
mai probabil cuvnt de cod transmis prin canal. Dac ntr-un codomeniu exist
mai mult de un lider, atunci eroarea nu poate fi corectat, codul nu este capabil
a corecta eroarea.

125
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Codarea n cazul codurilor sistematice. Dac matricea H este sistematic atunci


extragerea matricei P este imediat. Dac H nu este sistematic se poate
proceda la sistematizarea ei prin operatii cu linii. De pild pentru matricea
1 0 0 1 0
H 0 1 0 0 1
0 1 1 1 0
ataat codului
Mesaje
Coduri

00
00000

01
01101

10
10110

11
11011

sistematizarea se obine prin urmtoarele operatii succesive:


a) permutarea liniilor 2 i 3
b) permutarea liniilor 1 i 2
c) adunarea liniei 2 la linia 1
Rezultatul este
1 1
1 1 1 0 0
Hsistematic = 1 0 0 1 0 P 1 0
0 1 0 0 1
0 1
i se pot genera biii de control pentru fiecare mesaj
b1 m1 m2
x3 x1 x 2
1 1
m1

b Pm 1 0
b2 m1
x 4 x1

m2

0 1
b3 m2
x5 x 2
ceea conduce la o regsire a tabelului cu cuvintele de cod dat mai sus.
Decodarea prin sindrom
Pentru a decoda un cuvnt receptionat r se procedeaz astfel:
1. Se calculeaz sindromul s = Hr
2. Pentru detectarea erorilor:
a. s 0 arat prezenta erorilor i se cere (eventual) retransmiterea
b. s = 0 confirm transmiterea fr eroare
3. Pentru corectarea erorii:
a. cu sindromul s evaluat se stabileste liderul (unic al) codomeniului ec i
se calculeaz c = r + ec
b. dac sunt mai multi vectori lider n codomeniu, corectarea nu-i posibil,
cuvntul recepionat este detectat ca eronat i se cere retransmiterea lui
4. Se extrage mesajul m prin renunarea la biii de control atasati lui m, care
completeaz cuvntul de cod c.
Rmne de discutat cum se stabilete liderul (vectorii lider ai) unui codomeniu.
Dou ci sunt sugerate de discutia de pn la acest stadiu.

126
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

1. Se caut numrul minim de coloane din H care adunate dau sindromul s;


localizarea coloanelor dau componentele nenule ale liderului de codomeniu
2. Se caut o combinatie oarecare de coloane din H care d sindromul s; se
determin vectorul eroare corespunztor prin atribuirea valorii 1 acelor
pozitii din e corespondente coloanelor din H prezente n combinatie; se
genereaz ceilalti vectori eroare din codomeniu prin adunarea pe rnd a
celor 2k cuvinte de cod; este retinut liderul
Operatiile acestea sunt costisitoare. Practic se procedeaz la nzestrarea initial
a decodorului cu vectorii lider ai fiecrui codomeniu pentru vectorii sindrom
posibili. Liderul potrivit se gseste prin cutarea ntr-un tabel cu 2n k intrri.
n cazul unui singur bit eronat sindromul s coincide cu una i numai cu una din
coloanele matricei de verificare, fie aceea coloana i. Vectorul eroare are un
singur bit nenul, pe pozitia i. Stabilirea unui lider de codomeniu este de prisos,
corectarea erorii este imediat.
Se propune ca exercitiu decodarea cuvintelor receptionate 01111 i 00111
pentru exemplul (n = 5, k = 2) prezentat mai devreme.
Ponderea Hamming a unui cuvnt, w(x), este definit ca numrul de bii nenuli
din acel cuvnt. Pentru orice cod netrivial K cea mai mic pondere a unui
cuvnt diferit de 0T = [000] este ponderea minim a acelui cod, w(K).
Exemple: w(111) = 3, w(101000) = 2, w(110110) = 4. Codul cu repetiie de n
ori are ponderea w(K) = n, codul de paritate constant are w(K) = 2, pentru
codul K4 discutat mai sus ponderea este w(K4) = 1, iar pentru K6 este w(K6) = 3.
Pentru un cod rectangular rs nu este necesar a fi scrise toate cuvintele de cod.
Ponderea se poate calcula avnd n vedere dubla verificare a parittii i numrul
minim de bii nenuli necesari ntr-un cuvnt de cod corect. Rezultatul este w(K)
= 4 pentru orice cod rectangular.
Pentru orice cod binar liniar netrivial distana minim este egal cu ponderea
minim adic d(K) = w(K).
Se poate spune aadar c un cod liniar corecteaz (detecteaz) t erori dac i
numai dac ponderea sa minim este mai mare dect 2t (respectiv dect t).
Cteva exemple:
Codul cu repetiie de lungime n are ponderea w(K) = n, poate detecta (n 1)
biti eronati i poate corecta (n 1)/2 biti alterati.
Codul cu paritate constant, w(K) = 2, poate detecta 1 bit eronat.
Codul K4, w(K4) = 1 nu este deloc protejat la erori.
Codul K6, w(K6) = 3 detecteaz dou erori, corecteaz un bit eronat.
Codul rectangular simplu, w(K) = 4 corecteaz un bit eronat, detecteaz
pn la trei bii eronati.
Proiectarea matricii de verificare
Fie x un cuvnt de cod cu ponderea egal cu ponderea codului w(K). Dac H
este matricea de verificare a codului K atunci Hx = 0. Prin definitie, cuvntul x
are exact w(K) biti nenuli. Asadar, operatia Hx = 0 nsumeaz coloane ale

127
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

matricii de verificare H pentru a rezulta vectorul nul. Coloanele sunt cele


poziionate la fel cu componentele nenule ale cuvntului x.
n urma acestui calcul simplu sunt de reinut urmtoarele:
1. Dac un cod liniar K are matricea de verificare H, atunci numrul minim de
coloane din H care adunate dau vectorul nul este n atunci w(K) = n.
2. Dac un cod liniar K are matricea de verificare H i suma oricror n sau mai
puin de n coloane este nenul, atunci w(K) > n.
Pentru detectarea unui bit eronat este necesar ca un cod s aib ponderea w(K)
> 1, adic cel puin w(K) = 2, aadar nici o coloan din H nu trebuie s fie
alctuit numai din elemente nule.
Pentru corectarea unui bit eronat este necesar ca un cod s aib ponderea w(K)
> 2, adic cel puin w(K) = 3, aadar nici o coloan nu trebuie s fie alctuit
numai din elemente nule i nici o pereche de coloane nsumate nu trebuie s
conduc la vectorul nul.
Dac o matrice binar cu r linii trebuie s aib coloane nenule distincte dou
cte dou, aceasta nseamn c numrul de coloane trebuie s fie strict mai mic
dect 2r. Pentru o matrice cu (n k) linii i n coloane este necesar ca n < 2n k
dar, desigur, un este i suficient.
Un exemplu: codul cel mai eficient n corectarea unei erori, cel pentru care cu k
= 2. Codul trebuie s aib rata R = k/n = 2/n maxim, ceea ce implic o lungime
n minim. Din relatia n < 2n 2 rezult n = 5. Acesta este cel mai mic n permis.
Matricea H de verificare are (n k) = 3 linii i n = 5 coloane. Pentru corectarea
unei erori este necesar ca cele cinci coloane s fie dou cte dou distincte.
Dac matricea trebuie s fie i sistematic, atunci o soluie posibil este
x3 x1
1 0 1 0 0

H 1 1 0 1 0 x 4 x1 x 2
0 1 0 0 1
x5 x 2
Deoarece n matricea H nu sunt coloane nule i coloanele sunt dou cte dou
distincte rezult ponderea w(K) = 3 i corectarea unei erori este totdeauna
posibil. Codul este dat n tabelul urmtor
Mesaje
Coduri

00
00000

01
01011

10
10110

11
11101

i are ponderea w(K) = 3 cum era de asteptat, dar nu este i unic.


ntr-un alt exemplu se cere corectarea eficient a doi bii eronati ntr-un cuvnt
de cod, tot n cazul cnd numrul biilor de informaie este k = 2. Este necesar
de data aceasta ca ponderea codului s fie w(K) = 5. Pentru a stabili lungimea n
minim se poate recurge la calculul limitei superioare B(n, 5) conform unei
relatii prezentate mai devreme. n cazul de aici M = 4, d(K) = 5 i L = 2 ceea ce
produce N n = 8 i, implicit, (n k) = 6. Matricea de control H trebuie s aib
dimensiunile 68. Din condiia de a fi sistematic rezult o parte important a
matricii, acea submatrice identic cu matricea unitate I6. Rmn de stabilit

128
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

rmne de vzut cum anume dou coloane din H, care se constituie n


matricea P. n procesul de alegere a celor dou coloane, deoarece w(K) = 5, este
necesar ca nici o combinatie de 4 sau mai putine coloane din H s nu aib suma
nul. Iat o soluie:
x3 x1 x 2
1 1 1 0 0 0 0 0
0 1 0 1 0 0 0 0
x4 x2

1 1 0 0 1 0 0 0
x5 x1 x 2
H

x6 x 2
0 1 0 0 0 1 0 0
1 0 0 0 0 0 1 0
x 7 x1

x8 x1
1 0 0 0 0 0 0 1
care corespunde codului
Mesaje
Coduri

00
01
10
11
00000000 01111100 10101011 11010111

Se poate verifica imediat c ponderea minim a codului este w(K) = 5. Viteza


relativ este R = 2/8 = 1/4, ceea ce nu este foarte bine. Pentru o transmitere mai
eficient este necesar a se mri k.
Coduri perfecte pentru corectarea erorilor
Un cod liniar (n, k) este compus din 2k cuvinte de lungime n. Numrul total de
cuvinte care pot fi alctuite din n biti este 2n dintre care numai 2k sunt cuvinte
ale codului. Celelalte 2n 2k nu apartin codului. Dac codul corecteaz cel mult
t erori atunci cuvintele din categoria ultim pot fi
cuvinte la distana t sau mai puin fa de un anumit cuvnt de cod, ceea ce
nseamn c n acel cuvnt se pot corecta t sau mai puini bii.
cuvinte la distan mai mare de t fa de dou sau mai multe cuvinte ale
codului, ceea ce nseamn c erorile pot fi numai detectate.
Dac toate cuvintele din afara codului sunt de primul tip atunci codul este
perfect.
Codurile perfecte sunt capabile a corecta cele mai probabile erori din orice
cuvnt recepionat. n alt formulare, exist totdeuna un singur lider de
codomeniu.
Codurile perfecte garanteaz viteza de transmitere a informatiei maxim pentru
corectarea a t biti. n aceste condiii, cuvinte de tipul al doilea nu exist i de
aceea sunt mai puine cuvinte i mai scurte.
Un cod perfect care corecteaz t erori are cea mai mic distan minim
ngduit i anume 2t +1.
O definiie conceptual a unui cod perfect: un cod liniar de lungime n este
perfect dac pentru orice cuvnt r de lungime n exist un singur cuvnt de cod
la distant Hamming t sau mai mic fa de r.

129
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

O definiie operaional a unui cod perfect: numai n cuvintele de lungime r


care nu aparin codului i sunt de tipul prim pot fi corectate t erori. Cei 2n k
vectori sindrom s = Hr trebuie s fie n acelai numr ca i posibilele combinatii
de 1, 2, , t 1, t bii eronai ntr-un cuvnt de lungime n (la care se adug si
sindromul nul, zero erori). Aadar, un cod liniar (n, k) este perfect dac
t

2 n k C ni
i0

Relund exemplul codului (5, 2) de mai devreme i admitnd c s-a recepionat


cuvntul 00111, se constat c nu este la distana t = 1 sau mai puin de numai
un cuvnt de cod i este n fapt la distanta 2 de dou cuvinte de cod, 01011 i
10110, prin urmare nu este un cod perfect. n plus, 25 2 = 8 C50 + C51 = 6.
Codurile Hamming prezentate n acest paragraf alctuiesc o clas important de
coduri perfecte corectoare de o eroare. Pentru corectarea unei singure erori, t =
1, un cod perfect trebuie s ndeplineasc condiia
t

2 n k C ni 1 n n 2 m 1
i 0

n care s-a notat cu m diferena n k. nlocuirea duce la relatia k = 2m m 1.


Un cod Hamming (n, k) are lungimea cuvntului/blocului n = 2m 1 cu m 3,
are partea informaional de lungimea k = 2m m 1, distana minim d(K) = 3
i este capabil a corecta o eroare, adic un bit eronat.
Pentru corectarea unei erori, matricea de control H trebuie s aib toate
coloanele nenule i diferite dou cte dou. Pentru m linii nu pot exista mai
mult de 2m 1 coloane distincte i diferite de colana nul. Asadar, n 2m 1.
Deoarece R = k/n = (n m)/n pentru m fixat, cu ct n este mai mare cu att rata
este mai mare. Cazul egalittii, n = 2m 1 produce cea mai bun rat de
transmitere.
Asadar, un cod Hamming are matricea de control H cu m linii i cu 2m 1
coloane, fiecare numr binar nenul de m cifre regsindu-se printre coloanele
matricei H.
Decodarea prin sindrom a codurilor Hamming este mijlocul cel mai simplu i
mai direct de a extrage informatia din cuvintele recepionate. Deoarece codurile
Hamming sunt coduri perfecte pentru corectarea unui bit pe cuvnt, cele 2n
cuvinte sunt fie cuvinte de cod, fie cuvinte care nu aparin codului, dar care sunt
cuvinte de cod cu unul din biti corupt, modificat. n mod necesar, pentru fiecare
sindrom s liderul oricrui codomeniu este unic. Procedura de decodare pentru
cuvntul generic r este urmtoarea:
1. Se calculeaz sindromul s = Hr.
2. Dac s este nul atunci nu exist nici o eroare, r = c este un cuvnt de cod.
3. Dac s este nenul atunci el coincide cu una din coloanele matricei H, de
pild cea de a i-a; se corecteaz bitul din pozitia i a cuvntului r i se obine
cuvntul de cod c.
4. Se renunt la (n k) biti ataati biilor informationali n cuvntul c i se
obtine informatia m.

130
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Propunem ca exemplu cazul codului Hamming (7, 4). Matricea lui de control
are m = (n k) = 3 linii i n = 7 coloane, izomorfe cu cele 23 1 numere binare
nenule exprimate pe trei cifre. Cuvintele care trebuie codate au k = 4 biti. n
varianta nesistematic, matricea H are nfiarea
0 0 0 1 1 1 1
H 0 1 1 0 0 1 1
1 0 1 0 1 0 1
Dup sistematizare ea devine
x5 x 2 x3 x 4
0 1 1 1 1 0 0

Hsist = 1 0 1 1 0 1 0 x 6 x1 x3 x 4
1 1 0 1 0 0 1
x 7 x1 x 2 x 4
cu relaiile de calcul al biilor de control alturi. Tabelul complet al codului este
dat n tabelul care urmeaz.
Mesaje
Coduri
Mesaje
Coduri
Mesaje
Coduri
Mesaje
Coduri

0000
0000000
0100
0100101
1000
1000011
1100
1100110

0001
0001111
0101
0101010
1001
1001100
1101
1101001

0010
0010110
0110
0110011
1010
1010101
1110
1110000

0011
0011001
0111
0111100
1011
1011010
1111
1111111

Ca exercitiu, decodai prin sindrom urmtoarele cuvinte recepionate: 0001111,


0110101, 0110100, 1101100.
Codul (7, 4) prezentat n detaliu aici nu este singurul cod Hamming. Tabelul
urmtor prezint trei coduri Hamming din multe altele fiecare capabil a
detecta un bit eronat i caracteristicile lor.
k
4
11
26

n
7
15
31

m
3
4
5

R
4/7
11/15
26/31

Se observ c rata R = k/n = (n m)/n = 1 m/(2m 1) tinde rapid ctre 1, dar


cu o protectie din ce n ce mai slab la erori (codurile pot corecta un singur bit
din 7, din 15, din 31 bii).
Probabilitatea erorii ntr-un bloc/cuvnt este
m
m
Pe 1 C 20m 1 p 2 1 C 21m 1 qp 2 2
cu notatiile p i q adoptate pentru un canal binar simetric, reprezentnd
probabilitatea unui bit corect, respectiv probabilitatea unui bit eronat.

131
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Codurile Golay sunt coduri perfecte de asemenea. Deinnd cunotinte exclusiv


despre codul Hamming (7, 4), Marcel J.E.Golay a generalizat ideea lui
Hamming la coduri perfecte corectoare de o eroare ntr-o baz oarecare care
este numr prim. Dup ce a epuizat acest subiect, Golay a trecut la cutarea de
coduri perfecte corectoare de mai multe erori. Unul din codurile Golay este de
interes special deoarece a fost utilizat mai trziu pentru a genera pachete ntr-un
spaiu cu dimensiunea 24.
Se tie, un cod corector de t erori trebuie s aib o distan Hamming minim
de cel putin 2t + 1. Pentru ca un cod s fie perfect, numrul de vrfuri ale unui
n-cub unitar dintr-o sfer de raz t care-l conine trebuie s fie o putere a lui r,
unde r este baza codului. n cazul binar trebuie ca
t

i
n

2k

i 0

pentru un anumit ntreg k. Aceasta este suma primilor t + 1 coeficieni/elemente


din linia a n-a a triunghiului lui Pascal. Triunghiul lui Pascal este o structur
triunghiular de numere naturale care are pe linii coeficienii binomiali

1
1
1
1
1

3
4

1
3

6
10

15

4
10

20
etc.

1
5

20

15

Golay a gsit dou asemenea numere


2

C90i 212 i
i 0

i
23

211

i 0

n cazul n = 90 Golay a artat c nu exist nici un cod perfect (90, 78) corector
a dou erori. Pentru n = 23 Golay a gsit un cod (23, 12) corector de 3 erori i a
i dat o matrice pentru el
1 0 0 1 1 1 0 0 0 1 1 1
1 0 1 0 1 1 0 1 1 0 0 1
1 0 1 1 0 1 1 0 1 0 1 0
1 0 1 1 1 0 1 1 0 1 0 0
1 1 0 0 1 1 1 0 1 1 0 0
P 1 1 0 1 0 1 1 1 0 0 0 1
1 1 0 1 1 0 0 1 1 0 1 0
1 1 1 0 0 1 0 1 0 1 1 0
1 1 1 0 1 0 1 0 0 0 1 1
1 1 1 1 0 0 0 0 1 1 0 1
0 1 1 1 1 1 1 1 1 1 1 1

132
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Prin alturarea la aceasta a matricii unitate I11, se obine o matrice de verificare


de aceeasi form cu acelea pentru codurile perfecte corectoare de o eroare: H =
[P | I11].
Pentru a construi codul, din digiii mesajului m1, , mk se evalueaz digiii de
control (de paritate) b1, , bn k astfel nct
12

bi aij m j 0 mod 2 , i = 1, 2, , 11
j 1

sau, deoarece codul este binar


12

bi aij m j mod 2 , i = 1, 2, , 11
j 1

Cuvintele de cod au forma m1, , mr, b1, , bn k cu digiii de paritate plasai


n partea din urm a cuvntului.
Tipuri de erori, probabiliti ale erorilor nedetectate/nedetectabile
n situatia n care se transmite cuvntul ci i se recepioneaz cuvntul r se pot
enumera urmtoarele situatii:
1. Nici o eroare: sindromul s = 0, cuvntul receptionat r = ci, caz ideal
2. Detectarea de erori (sindromul s 0, cuvntul receptionat r ci, i oarecare),
cu subcazurile:
a. Eroarea se poate corecta (liderul de codomeniu unic: + r = ci), caz
deplin tratabil
b. Eroarea nu poate fi corectat (doi sau mai multi lideri de codomeniu),
caz nc tratabil
c. Eroarea se corecteaz incorect (liderul de codomeniu unic: + r = cj
ci), caz fatal, dintr-o eroare se ajunge n alta bine ascuns, insinuat.
3. Eroare nedetectat (s = 0, r = cj ci), caz fatal, intratabil.
Dac transmisia este de tipul FEC, situatiile (2c) i (3) sunt fatale, intratabile.
Tot fatal poate fi i (2b) dac nu exist faciliti ARQ. Pentru sistemele de
transmisie ARQ numai situatia (3) este fatal, celelalte sunt tratabile prin
solicitarea unei retransmiteri. Multe dintre sistemele de transmisie sunt (si)
ARQ asa nct problema rmne intratabil numai n situatia ultim (3).
O eroare nedetectabil apare atunci cnd cuvntul receptionat este r = c j i, de
fapt, s-a transmis un alt cuvnt ci. Dac aa stau lucrurile atunci
e = c j + r = ci + c j
i eroarea este ea nsi un cuvnt de cod nenul. Aadar, o eroare nedetectat se
produce dac i numai dac vectorul eroare e este un cuvnt de cod nenul.
Probabilitatea unei erori nedetectate, Pned(K) este suma probabilitilor de
apariie a vectorilor eroare care sunt cuvinte de cod nenule. Dac un vector
eroare semnaleaz i bii eronai, probabilitatea lui este qipni. Deoarece
intereseaz numai vectorii e care reproduc cuvinte de cod nenule, punem A i
numrul de cuvinte de cod cu ponderea Hamming i i evalum

133
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Pned(K) =

Aq p

ni

i 1

Dac ponderea minim a codului este d(K) atunci A1 A2 ... Ad ( K ) 1 0 i


relatia de mai sus se modific
n

Pned(K) =

Aq p

ni

i d (K )

Pentru codul Hamming (7, 4), d(K) = 3 i A3 = 7, A4 = 7, A5 = A6 = 0 i A7 = 1.


Probabilitatea cuvintelor cu erori nedetectabile este
Pned(K) = 7q 3 p 4 7q 4 p 3 q 7
Pentru q = 0,01 aceast probabilitate este de cca. 7106, adic 7 cuvinte dintrun milion pot avea erori nedetectabile.
Alte coduri detectoare sau corectoare de erori
La examinarea i alegerea codurilor este de avut n vedere:
Tipul codului, sistematic sau nesistematic.
Viteza relativ (rata), cti bii se transmit pentru un bit al mesajului.
Protecia la erori, cti bii eronati se pot detecta sau corecta.
Rezolutia n diagnosticarea erorilor, domeniul de aciune n detectarea
i/sau corectarea erorilor: o lungime a cuvntului de cod mai mare implic o
rezolutie mai slab.
Latena erorilor, ce cantitate de informaie trebuie recepionat pentru ca
eroarea s fie detectat i/sau corectat: lungimea cuvntului de cod mai
mare aduce o laten mai mare.
Acoperirea, ce poziii ale bitului sau ale cuvtului sunt protejate i cum.
Tipul erorilor, ct de potrivit este codul pentru detectarea i/sau corectarea
erorilor aleatoare sau a celor incidentale.
Discuia s-a limitat pn acum la erorile care apar aleator, ceea ce se ntmpl
ntr-un canal aa-numit fr memorie.
Se observ ns uneori erori care persist pe un ir de bii consecutivi, ca i cum
canalul ar avea memorie: o secven de l bii suport modificri din cauza unui
incident cu urmri care treneaz. De pild, un tip particular de erori incidentale
sunt cele numite erori multiple unidirecionale. Acestea foreaz un numr de
bii consecutivi s fie constant 0 sau constant 1. Erorile acestea sunt produse
uzual de defecte ale memoriei i/sau ale magistralelor, prin grupuri de celule
sau de linii care merg la fel, jos (0) sau sus (1), care se aga la o anumit
valoare din cele dou.
Dar acestea nu sunt singurele genuri de erori incidentale. n telecomunicatii n
general, erorile incidentale (n limba englez burst errors) apar ca o secven
contigu de simboluri receptionat printr-un canal, secven n care primul i
ultimul simbol sunt eronate i nu exist vreo subsescven contigu de m
simboluri receptionate corect n acea secven incidental eronat. Parametrul

134
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

ntreg m este numit banda de gard a erorii incidentale. Ultimul simbol dintr-o
secven incidental eronat este separat de primul simbol dintr-o secvent
urmtoare incidental eronat de m sau mai multi biti corecti. Parametrul m
trebuie specificat atunci cnd este descris o eroare incidental. Lungimea unei
erori incidentale este definit ca numrul de biti de la primul simbol eronat la
ultimul afectat de eroare, inclusiv.
Cele mai multe coduri sunt gndite spre a detecta i/sau a corectar erori
independente, ntmpltoare. Este, de pild, cazul codurilor Hamming. Exist
ns metode speciale pentru corectarea erorilor incidentale pe secvene de l biti,
de genul celor semnalate mai devreme.
Intercalarea biilor este una din aceste metode. Intercalarea se face ntr-o
manier bine precizat, iar la recepie se face de-intercalarea dup aceeai
regul, dar inversat. Prin procedeul intercalrii se realizeaz o randomizare (de
la englezescul random aleator) a plasrii erorilor. Erorile din sistematice
devin (fals) aleatoare. Schema transmisiei este urmtoarea:

Codare

Canal cu erori
(fals) aleatoare

Intercalare

Canal cu
erori
incidentale

Deintercalare

Decodare

Intercalarea se poate face n moduri variate. Tabelele urmtoare ilustreaz trei


dintre ele:
prin lectura biilor nscrii ntr-o structur virtual rectangular, nu pe linii
ci pe coloane,
prin lectura biilor trecui n acceai structur rectangular, ntr-o manier
helicoidal i
printr-o citire a biilor n ordine alternativ, par-impar, dup o utilizare
prealabil a altor dou reguli de intercalare.
De fiecare dat se efectueaz n fond o permutare a indicilor care dau ordinea
biilor, totdeauna inversabil pentru a putea fi utilizat la deintercalarea de
dinaintea decodrii.

b1
b6
b11

b2
b7
b12

Intrare
b3
b4
b8
b9
b13 b14

135
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

b5
b10
b15

b1

b11

b6

b7

b11

b3

b1
y1

b2
-

b3
y3

b1
-

b6
z6

b11
-

y1

z6

y3

b2

Ieirea la intercalarea linii-coloane


b7 b12 b3 b8 b13 b4 b9 b14

b5

b10 b15

b14

Ieirea la intercalarea helicoidal


b10 b1 b12 b8 b4 b15 b6

b13

b9

b2

b5

Ieirea la intercalarea par-impar


Ieirea codorului fr intercalare
b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15
y5
y7
y9
- y11 - y13 - y15
Ieirea codorului cu intercalarea linii-coloane
b2 b7 b12 b3 b8 b13 b4 b9 b14 b5 b10 b15
z2
- z12 z8
z4
- z14 - z10 Ieirea codorului final, combinat
z2 y5 z12 y7 z8 y9 z4 y11 z14 y13 z10 y15

Cu o asemenea tratare, irul de cincisprezece bii b1 b2 b3 b4 b5 b6 b7 b8 b9 b10


b11 b12 b13 b14 b15, se transform dup intercalare dintr-un ir cu erorile original
grupate incidental, ntr-un ir cu erorile acum dispersate i dac, de pild, apare
o secven de patru bii succesivi alterati, atunci intercalarea plaseaz erorile n
cuvinte diferite, ceea ce mrete ansa de a putea fi corectai cu un cod corector
de erori a crui capacitate corectoare este limitat.
Tot pentru tratarea secvenelor eronate sunt gndite codurile m din n. Cuvintele
de cod sunt toate de aceeasi lungime n i numrul biilor unitari continui este
fix, mereu acelai. Ca exemplu, codul 2 din 5 arat ca n tabelul urmtor:
Mesaj nr.
Cod
Mesaj nr.
Cod

1
2
3
4
5
00011 00101 01001 10001 00110
6
7
8
9
10
01010 10010 01100 10100 11000

Propriettile codului sunt:


Codul este nesistematic (necesit utilizarea unui tabel de echivalene)
Detecteaz o singur eroare
Detecteaz erori multiple unidirecionale
Se utilizeaz aproape exclusiv la codarea semnalelor de control.
Deoarece codul este nesistematic utilizarea lui este limitat. Semnalele de
control nu trebuie decodate ci numai interpretate. Ele pot fi configurate ca 2 din
5 i orice eroare pe magistrala de control este semnalat. n caz de eroare
numrul de biti nenuli se schimb i prin aceasta eroarea este detectat.
Dac se transmite mesajul 7, adic 10010 i primii trei biti sunt adusi toti la 0,
ceea ce se ntmpl cnd trei celule de memorie adiacente sau trei linii vecine
ale magistralei sufer o defeciune comun cum ar fi scurtcircuitul, atunci se
receptioneaz 00010, cuvnt 1 din 5, asadar este detectat o eroare. Dac

136
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

acelasi cuvnt transmis este alterat tot pe primii trei bii, mesajul recepionat
este 11110, cuvnt 4 din 5 care din nou pune n eviden o eroare de tipul
unidirecional, incidental.
Codurile sum de control (Check Sum) sunt dedicate aceluiasi tip de erori, erori
unidirecionale. Aceste coduri sunt generate prin adugarea unui cuvnt de
control prin sum, de lungime n, la fiecare bloc de s cuvinte informaionale de
lungime n. Cuvntul de control se obtine prin nsumarea modulo 2n a celor s
cuvinte purttoare de informatie. Aadar, codarea se face ntr-un sumator de s
cuvinte de lungime n cu omiterea transferului dincolo de puterea maxim 2n.
Sumatorul genereaz cuvntul de control prin sum. Decodarea se realizeaz
ntr-un sumator identic care nsumeaz s cuvinte receptionate, rezultatul este
pus ntr-un circuit SAU EXCLUSIV cu cuvntul de control. Dac rezultatul
este nul transmisia este considerat bun. n caz contrar, n transmitere au
aprut erori. Propriettile unui cod cu sum de control sunt:
Simplu i ieftin, deci larg utilizat
Detecteaz cel putin o eroare
Detectia erorilor multiple depinde de numrul s i de pozitia bitilor n
cuvinte; acoperirea erorilor este foarte bun pentru biii de ordin redus
Acoperirea erorilor poate fi controlat prin ponderarea diferit a bitilor
i/sau prin sume de control reprezentate pe mai mult de n biti
Latena erorilor este ndelungat, adic trebuie s se termine transmiterea
blocului de s cuvinte pentru a face posibil verificarea corectitudinii
Diagnoza are o rezolutie redus, eroarea poate fi n diferite locuri din blocul
de s cuvinte.
Utilizri ale codrii cu sum de control: dipozitive de memorare secveniale,
periferice cu transfer n blocuri, memorii read-only, dispozitive numrtoare
seriale etc.
Un exemplu cu n = 8, s = 8 cu o sum de control Ck modulo 28 tot de 8 biti dup
fiecare secvent de 8 cuvinte (octei, bytes, fiecare n lungime de 8 bii). Dac
se transmit urmtorii octei (exprimai n hexadecimal): 32, 62, 01, FA, 22, 02,
E3, A1, octetul de control este Ck = 337 mod 100 = 37 (i acesta tot n
hexadecimal).
Acoperirea erorilor multiple poate fi nc sporit prin utilizarea unei sume de
control cu reprezentare extins la m bii pentru date transmise exprimate pe n
biti, m > n i a sumei de control modulo 2m. De pild, n = 8 i m = 16 produce
un cuvnt-sum de control de 2 octei pentru o secvent de s octeti transmii.
Din lumea editorilor de carte este cunoscut codul ISBN-ul (International
Standard Book Number). Acesta are o parte care reprezint o sum de
verificare. De pild secventa ISBN de 10 simboluri 0-13-283796-X (care cu
exceptia cratimelor identific ara, editorul, cartea) conine un ultim simbol
reprezentat de o cifr zecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 sau de X n loc de 10.
Acest ultim simbol este adugat pentru verificarea unei sume de control mai
complicate, n care cifrele din codul ISBN intr ponderate cu ordinul lor

137
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

10

C k ia11i
i 1

Suma aceasta trebuie s fie divizibil cu 11 dac ISBN-ul este corect, dac este
valid.
Inconvenientul principal al codurilor cu sum de control este acela c rezultatul
obtinut prin nsumarea de cuvinte nu este suficient de complex, suma cuvintelor
nu este suficient de reactiv la erorile pe unul sau mai multi bii, reactivitate
util la detectarea i/sau corectarea acestora.
O operatie aritmetic relativ simpl, dar mai eficient este mprirea cuvintelor
de cod i retinerea restului mpririi. Aceast operatie suplimentar este larg
utilizat n cazul codurilor polinomiale, n particular n cazul codurilor ciclice.
Coduri polinomiale/ciclice
Anticipnd ntructva, codurile polinomiale au proprietatea de liniaritate: suma
a dou cuvinte de cod este i ea un cuvnt de cod. Proprietatea deriv din
liniaritatea operaiei de adunare a polinoamelor.
n anumite codiii, codurile polinomiale au i proprietatea de ciclicitate: orice
permutare circular a unui cuvnt de cod este tot un cuvnt de cod. Condiiile
acestea particulare se refer la mulimea de coeficienti ai polinoamelor i la
algebra lor mai mult sau mai puin specific. Polinoamele sunt definite peste un
corp finit, numit n general corp Galois, nume atribuit n onoarea postum a
matematicianului variste Galois (1811-1832). Corpurile Galois cele mai
frecvent utilzate de specialitii n codare sunt GF(2) i GF(2n) (GF vine de la
Galois Field, cum se numesc corpurile Galois n literatura n limba englez).
Detalii despre aceste corpuri finite vor fi date ceva mai departe.
Revenind la proprietatea ciclicitii, ntr-un cod ciclic, dac 00100110 este un
cuvnt al codului, atunci i 00010011, i 10001001, dar i 00101001 sunt
cuvinte care aparin codului, prin permutare circular primele dou, prin
nsumarea cuvntului iniial cu urmtorul pentru cel din urm.
Codurile ciclice sunt construite i analizate eficient nu prin vectori binari i
matrici binare, ci mai curnd prin polinoame cu coeficienti ntr-un corp finit. De
aceea, n literatur codurile ciclice se mai numesc i coduri polinomiale: o
seam de operaii cu cuvintele de cod au echivalene n operatii cu polinoame.
Deoarece sunt coduri liniare, codurile ciclice au implementri convenabile att
sub aspectul complexitii ct i n ceea ce priveste viteza codrii i decodrii.
Proprietile codurilor ciclice le fac eficiente n utilizri cum ar fi tratarea
erorilor multiple aleatoare sau incidentale, unidirecionale sau nu. Nu
ntmpltor n transmisiunile moderne se folosesc pentru detectarea sau
corectarea erorilor codurile ciclice, n particular codurile CRC (Cyclic
Redundancy Check).
S-a spus deja, codurile ciclice se genereaz i se studiaz convenabil n raport
cu mulimea polinoamelor n nedeterminata X
a0X 0 + a1X 1 + + an 1X n 1

138
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

cu coeficieni ntr-un corp finit, n particular cel izomorf cu corpul claselor de


resturi modulo 2. Pentru simplitate, coeficienii vor lua mai departe valorile 0 i
1. Ei se vor aduna i se vor multiplica dup regulile din corpul de caracteristic
2 menionat.
Mulimea polinoamelor cu coeficieni ntr-un inel (corp) dat este ea nssi un
inel raportat la operaiile de adunare i multiplicare a polinoamelor, este chiar
un inel comutativ. Operaiile cu polinoame sunt adunarea
(a0X 0 + a1X 1 + + an 1X n 1) + (b0X 0 + b1X 1 + + bn 1X n 1) =
= (a0 + b0)X0 +(a1 + b1)X1 + + (an 1 + bn 1) X n 1
cu sumele coeficientilor luate modulo 2 i nmultirea
(a0X 0 + a1X 1 + + an 1X n 1)(b0X 0 + b1X 1 + + bn 1X n 1) =
= c0X 0 + c1X 1 + + c2(n 1)X 2(n 1))
cu coeficienii polinomului produs calculati (convolutiv) cu relatiile
c0 = a0b0
c1 = a0b1 + a1b0
...................
ck = a0bk + a1bk 1 + + ak 1b1 + akb0
...................................
Toate operaiile cu coeficieni se fac tot dup regulile de adunare i multiplicare
ale inelului (corpului) din care acestia provin.
Operatia de scdere a polinoamelor nu este altceva dect tot o adunare: fiecare
coeficient al polinomului care se scade dintr-un altul are un opus al su ceea ce
face din scderea a dou polinoame o adunare de coeficienti i de coeficienti
opui n corpul numeric din care provin. n particular, dac coeficienii sunt
dintr-un corp cu dou elemente, fiecare element este propriul su opus astfel
nct x + x = 0 oricare ar fi x.
Operatia de mprtire a dou polinoame nu este nici ea exclus. Fiind date dou
polinoame a(x) i b(x), primul diferit de polinomul cu toi coeficientii nuli,
exist totdeauna alte dou polinoame q(x) numit ct i r(x) numit rest, acesta
din urm de grad inferior lui a(x), astfel nct
b(X) = a(X)q(X) + r(X)
Relatia aceasta este cunoscut i ca teorema mpririi ntregi a polinoamelor
b(x) i a(x). Exist multe similitudini ntre aceast teorem i teorema mprtirii
ntregi cunoscut din aritmetica numerelor ntregi.
Exist i alte similitudini remarcabile ntre aritmetica numerelor ntregi i
aritmetica polinoamelor. De pild, ntre divizibilitatea numerelor ntregi i
divizibilitatea polinoamelor cu coeficienti ntr-un inel numeric se poate face o
paralel de foarte mare utilitate n definirea unor coduri eficiente detectoare
i/sau corectoare de erori. Este ceea ce aducem n discutie n sectiunile
urmtoare.

139
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Algoritmul lui Euclid i mprirea n corpuri finite. Cel mai mare divizor
comun al unei perechi de numere ntregi r i s, gcd(r, s)4, este cel mai mare
ntreg care divide att pe r ct i pe s.
Algoritmul lui Euclid este o metod eficient de a gsi gcd(r, s); este mult mai
rapid dect factorizarea lui r i s urmat de reinerea factorilor comuni. Ca
produs secundar al algoritmului lui Euclid, se pot gsi ntregii a i b astfel nct
d = gcd(r, s) = ar + bs. Dac gcd(r, s) = 1 atunci algoritmul produce valoarea
reciproc (invers) a lui r n inelul ntregilor modulo s.
Ideea algoritmului lui Euclid este de a reduce calculul lui gcd(r, s) pentru
ntregii r, s pozitivi la calculul lui gcd(r, s) cu perechea de numere (r, s) mai
mici dect cele din perechea (r, s). Mai mici nseamn aici c ambele
componente ale perechilor (r, s), (r, s) sunt n relatia r r, s s, dar fie r <
r, fie s < s. Dac r < s atunci (s mod r) < r aa nct (r, s) = (r mod s, r)
reprezint o problem mai redus, mai mic potrivit acestei definiii.
Algoritmul lui Euclid genereaz o secven descresctoare r1 > r2 > > rn > 0
n care fiecare ri este obtinut din dou numere anterioare prin ri = ri 2 mod ri 1
i valoarea ultim este rn = gcd(r, s). Resturile sunt definite iterativ astfel:
s = Q1r + r1 0 < r1 < |r|
r = Q2r1 + r2 0 < r2 < r1
r1 = Q3r2 + r3 0 < r3 < r2
......................
rn 2 = Qnrn 1 + rn
0 < rn < rn 1
rn 1 = Qn + 1rn
Procedura se ncheie dup un numr finit de pai deoarece fiecare rest este un
numr pozitiv mai mic dect restul precedent.
Resturile succesive satisfac relatia de recuren liniar
ri = ri 2 Qiri 1
cu condiiile initiale r1 = s i r0 = r. Decurge de aici c fiecare divizor comun al
numerelor ri 1 i ri 2 divide i pe ri, iar fiecare divizor comun al numerelor ri i
ri 1 divide i pe ri 2. Asadar gcd(ri, ri 1) = gcd(ri 1, ri 2) pentru orice indice
i. n particular, rn = gcd(rn, rn 1) = gcd(r0, r 1) = gcd(r, s).
Fiecare rest ri este o combinaie liniar ntreag a celor dou resturi anterioare.
Astfel, prin inducie, restul ultim este o combinatie liniar a primelor dou
resturi r0 = r i r1 = s, adic rn = gcd(r, s) = ar + bs cu a i b ntregi. Este
evident c a i b au n mod necesar semne diferite. Coeficientii a i b pot fi
calculai iterativ prin generarea secventelor {ai} i {bi} n modul
ri = air + bis i = 1, 0, 1, , n
Valorile iniiale pentru {ai} i {bi} sunt evident a1 = 0, b1 = 1 i a0 = 1, b0 = 0.
Perechile ai, bi se pot determina din ai 1, ai 2, bi 1, bi 2 astfel:
ri = Qiri 1 + ri 2 = Qi(ai 1r +bi 1s) + (ai 2r +bi 2s) =
= ( Qiai 1 + ai 2)r + ( Qibi 1 + bi 2)s = air + bis

gcd(r, s) greatest common divisor, notaie preferat n textul prezent pentru scurtimea ei fa
de poate mai uzuala prescurtare c.m.m.d.c. cel mai mare divizor comun.

140
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Se observ c secvenele {ai} i {bi} satisfac aceeai relatie de recursivitate care


defineste secvena de resturi {ri}:
ai = Qiai 1 + ai 2
bi = Qibi 1 + bi 2
Exemplu: Stabilirea numerelor a i b astfel nct gcd(17, 37) = 17a + 37b.
ri
37
17
3
2
1
0

Qi

2
5
1
2

ai

bi

0
1
2
11
13

1
0
1
5
6

Verificarea rezultatului: 17(13) + 376 = 221 + 222 = 1.


O aplicaie important a algoritmului lui Euclid extins este calculul reciprocelor
(inverselor) n corpuri finite5 GF(p), cu p un numr prim. Dac r este un
element nenul din GF(p) atunci 0 < r < p i r este relativ prim cu p, aa nct
gcd(r, p) = 1. Algoritmul lui Euclid n varianta extins produce ntregii a i b
astfel nct 1 = ar + bp. Aadar, reciprocul lui r este r 1 = a mod p. Exemplul
parcurs mai sus arat c reciprocul lui 17 n GF(37) este 13 = 24.
La utilizarea algoritmului lui Euclid pentru aflarea de valori reciproce n GF(p),
coloana bi este numai pentru verificare. Se poate arta c valoarea an dat de
algoritm este totdeauna mai mic (n modul) dect p, astfel c a mod p este fie
a, fie p + a.
Algoritmul lui Euclid aa cum a fost prezentat mai sus pare a implica mpriri
repetate. Pentru a garanta c fiecare rest este mic, 0 ri < ri 1, cturile trebuie
definite ca Qi = ri 2 / ri 1 , raportul trunchiat al dou resturi succesive. n fapt,
sunt suficiente i divizri mai grosiere i alegeri diferite pentru Qi. Calea
aceasta poate fi mai eficient din punct de vedere volumului de calcul. Alegnd
pe Qi ca puterea lui 2 cea mai mare dar inferioar raportului dintre ri 2 i ri 1,
se obtine o implementare a algoritmului lui Euclid de complexitate nu mult
diferit de aceea a algoritmului uzual de mprire binar.
Exemplu: Aflarea inversului lui 32 n corpul Galois GF(109) prin diviziune
incomplet.
ri
109
32

Qi

ai

bi
0
1

1
0

Un exemplu la ndemn de corp finit este cel al claselor de resturi modulo p, cu p un numr
prim, cu operatiile uzuale de adunare i de multiplicare a claselor. Reamintim, notatia GF(p)
vine de la sintagma n limba englez Galois Field (cmp Galois corp Galois). i aceast
notatie aste mentinut de-a lungul ntregii expuneri.

141
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

45
32
13
6
1
0

2
0
1
2
2
6

2
1
3
7
17

1
0
1
2
5

Asadar, n corpul Galois GF(109) valoarea reciproc a lui 32 este 17 = 92.


O alt metod de calcul al celui mai mare divizor comun (gcd), care evit
mprtirea este algoritmul binar datorat lui Stein.
Algoritmul lui Euclid pentru polinoame. Algoritmul lui Euclid poate fi utilizat
i pentru calculul divizorului comun cel mai mare ca grad al polinoamelor cu
coeficienti ntr-un corp. Algoritmul euclidian extins pentru polinoame produce
polinoamele a(x) i b(x) astfel nct
gcd(r(x), s(x)) = a(x)r(x) + b(x)s(x)
Dac r(x) i s(x) sunt relativ prime, atunci a(x) este reciprocul lui r(x) n inelul
polinoamelor mod s(x). Dac s(x) este ireductibil, atunci orice polinom nenul
r(x) de grad mai mic dect al lui s(x) este relativ prim cu s(x), astfel c toate
polinoamele nenule din inelul polinoamleor mod s(x) au un reciproc. Decurge
de aici c polinoamele cu aritmetica modulo un polinom ireductibil formeaz
un corp.
Exemplu: A se afla reciprocul lui x3 + x2 modulo x4 + x + 1 peste corpul Galois
GF(2).
ri(x)
x +x+1
x3 + x2
x2 + x + 1
x
1
0
4

Qi(x)

x+1
x
x+1
x

ai(x)
0
1
x+1
x2 + x + 1
x3 + x

ri(x)
10011
1100
111
10
1
0

Qi(x)

11
10
11
10

ai(x)
0
1
11
111
1010

Asadar, (x3 + x2) 1 mod (x4 + x + 1) = x3 + x.


Partea din dreapta a tabelului contine reprezentarea compact a polinoamelor ca
vectori de biti (primul bit, cel mai semnificativ). Reprezentarea aceasta este
natural pentru implementarea pe calculatoare de aritmetici polinomiale att
software ct i hardware. Adunarea i scderea sunt simple operatii sauexclusiv bit-cu-bit, multiplicarea i mprtirea cer i etape de deplasare n
registrele de memorie pe lng operatiile sau-exclusiv bit-cu-bit.
Implementarea algoritmului lui Euclid pentru polinoame poate fi simplificat
prin alegerea cturilor Qi(x) ca fiind monoame xj i nu rezultatul unei mprtiri
complete ri 2/ri 1. Aceast versiune a algoritmului necesit uzual mai multi
pai dect versiunea cu Qi(x) obtinut prin mprirea polinomial complet, dar
calculul ctului, al restului i al lui ai(x) este mult facilitat la fiecare pas.

142
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Exemplu: A se gsi reciprocul lui x3 + x + 1 modulo x5 + x2 + 1 n corpul Galois


GF(2) prin divizri incomplete.
ri(x)
100101
1011
1001
10
1
0

Qi(x)

100
1
100
10

ai(x)
0
1
100
101
10000

Asadar, (x3 + x + 1) 1 mod (x5 + x2 + 1) = x4.


n legtur cu complexitatea calculelor pentru algoritmul lui Euclid, o cale de a
evalua timpul de calcul pentru ntregi const n a numra paii de diviziune. Un
pas de diviziune reduce problema cu puin cnd ctul este mic, de pild cnd Qi
= 1. n medie ns, resturile din algoritmul euclidian descresc exponenial la o
rat nu mai mic dect = (1 + 5 )/2 1,61803 (celebrul numr cunoscut ca
proporia de aur).
Cazul cel mai dezavantajos pentru algoritmul lui Euclid se ntlneste atunci
cnd se evalueaz cel mai mare divizor comun (gcd) pentru doi termeni
succesivi ai sirului Fibonacci. Algoritmul lui Euclid cere mai multi pai pentru
a gsi gcd(34, 21), 34 i 21 sunt dou numere consecutive din sirul Fibonacci,
dect a gsi cel mai mare divizor comun pentru perechile de numere mai mari,
vecine (35, 21) i (34, 22).
Stabilirea elementelor inverse/reciproce n GF(2m) corpul Galois cu 2m
elemente , folosind algoritmul lui Euclid extins la polinoame poate fi efectuat
n cca. m cicluri ale calculului uznd de deplasri n registre largi de m biti i de
operaia sau-exclusiv. Intrrile algoritmului lui Euclid sunt p(x), polinomul prim
peste GF(2) de gradul m care defineste aritmetica n GF(2m) i r(x), un polinom
de grad inferior lui m al crui reciproc/invers multiplicativ n GF(2m) trebuie
calculat. Fiecare pas de diviziune de polinoame produce un rest al crui grad
este mai mic dect gradul restului anterior. Sunt necesari cel mult m pai de
diviziune pentru a obtine gcd (care e cunoscut n avans a fi 1) i polinomul a(x)
care satisface relatia a(x)r(x) = 1 mod p(x).
Unii pai de diviziune cer mai multe cicluri deoarece mprtirea printr-un
polinom de grad mult mai mic dect cel al mpritorului reclam cicluri
suplimentare. Dar n acest caz, restul rezultat este de grad mic. Calculul n
general const ntr-un amestec de pasi de diviziune facili i dificili, dar numrul
total de cicluri necesar este O(m) n cel mai nefericit caz. (Constanta
multiplicativ ascuns n notaia O(m)6 este mic, apropiat de 1 n cazul unei
implementri ngrijite.)

O(m) de ordinul lui m.

143
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Coduri polinomiale
n teoria codrii, un cod polinomial este un cod liniar bloc cu mulimea de
cuvinte valide format din acele polinoame care sunt divizibile cu un polinom
fixat, numit polinom generator.
Definitii: Fie un corp finit GF(q), ale crui elemente se numesc mai departe
simboluri. Pentru a construi coduri polinomiale, se identific secvenele
ordonate de n simboluri an 1 a0 cu polinoamele an 1xn 1 + + a1x + a0, cu
coeficienti n corpul GF(q).
Se aleg doi ntregi pozitivi m n i fie g(x) un polinom de gradul m numit
polinomul generator. Codul polinomial generat de g(x) este codul n care
cuvintele de cod corespund acelor polinoame de grad inferior lui n, care sunt
divizibile cu g(x).
Un exemplu: Fie codul polinomial peste corpul GF(2) = {0, 1}, cu n = 5, m = 2
i polinomul generator g(x) = x2 + x + 1. Acest cod const din urmtoarele
cuvinte de cod:
0g(x), 1g(x), xg(x), (x + 1)g(x),
x2g(x), (x2 + 1)g(x), (x2 + x)g(x), (x2 + x + 1)g(x).
sau explicit
2
3
2
3
0, x + x + 1, x + x + x, x + 1,

x4 + x3 + x2, x4 + x3 + x + 1, x4 + x, x4 + x2 + 1.
Echivalent, n exprimare binar
00000, 00111, 01110, 01001,
11100, 11011, 10010, 10101.
De observat c orice cod polinomial este un cod liniar: orice combinaie liniar
de cuvinte de cod este la rndu-i un cuvnt de cod. n cazuri ca acesta, cu corpul
GF(2) ca baz, combinaiile liniare se fac cu operatia SAU-EXCLUSIV (XOR),
de pild 00111 XOR 10010 = 10101.
Codarea. ntr-un cod polinomial peste corpul finit GF(q) cu lungimea cuvtului
n i polinomul generator g(x) de gradul m, sunt exact qn m cuvinte de cod. Prin
definitie, p(x) este un cuvnt al codului dac i numai dac acesta este de forma
p(x) = g(x)q(x) cu q(x) ctul de grad inferior numrului n m. Deoarece
sunt numai qn m asemenea cturi, codul are tot attea cuvinte, n m. n
consecint, cuvintele de date, cuvintele informaionale trebuie s fie de
lungimea n m.
Unii autori, cum sunt Lidl i Pilz (1999), discut de aplicatia q(x) g(x)q(x)
ca o atribuire de cuvinte de date cuvintelor de cod.
Alternativ, se folsete adesea metoda urmtoare pentru a crea un cod sistematic:
fiind dat un cuvnt de date d(x) de lungime n m, se multiplic mai nti d(x)
cu xm, ceea ce are ca efect deplasarea lui d(x) cu m pozitii spre stnga. n
general, xmd(x) nu este divizibil cu g(x), deci nu este un cuvnt de cod. Exist
ns un cuvnt de cod unic care se poate obtine prin modificarea a m simboluri
cele mai din dreapta ale polinomului xmd(x). Pentru aceast operatie se
calculeaz restul mprtirii lui xmd(x) prin g(x):

144
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

xmd(x) = g(x)q(x) + r(x)


unde r(x) este de grad mai mic dect m. Cuvntul de cod care corespunde
cuvntului de date d(x) este atunci
p(x) = xmd(x) r(x)
De observat proprietile urmtoare:
p(x) = g(x)q(x) este divizibil cu g(x). n particular, p(x) este un cuvnt de
cod valid.
Deoarece r(x) este de grad mai mic dect m, simbolurile cele mai din stnga
ale lui p(x) sunt aceleasi cu ale polinomului xmd(x). Cu alte cuvinte, primele
n m simboluri ale cuvntului de cod sunt aceleasi cu cele ale cuvtului de
date/informaional codat. Cele m simboluri rmase sunt numite simboluri de
verificare sau simboluri de checksum.
Exemplu: Pentru codul de mai sus, cel cu n = 5, m = 2 i polinomul generator
g(x) = x2 + x + 1, se obtine urmtoarea atribuire cuvinte de date cuvinte de
cod:
000 00000
001 00111
010 01001
011 01110
100 10010
101 10101
110 11011
111 11100
Codul este sistematic: n lista de mai sus, n cuvintele de cod biii de informatie
sunt reprezentati diferit de cei ce control/verificare.
Decodarea. Un mesaj eronat poate fi detectat prin mprire cu polinomul
generator. Un rest nenul indic un mesaj cu erori.
Admitnd c cuvntul de cod este primit fr eroare, la un cod sistematic
decodarea este simpl: se renun la cei m digii de verificare.
Dac sunt erori, corectarea erorilor trebuie fcut nainte de decodare. Pentru
coduri polinomiale particulare cum sunt de pild codurile BCH (Bose i RayChaudhuri), exist algoritmi de corectare i decodare eficieni.
Proprietti ale codurilor polinomiale. Ca pentru oricare dintre codurile digitale,
capacitatea codurilor polinomiale de a detecta i/sau a corecta erorile este
determinat de distana Hamming minim. Deoarece codurile polinomiale sunt
coduri liniare, distana Hamming minim este egal cu ponderea minim a
cuvintelor de cod nenule. n exemplul de mai sus distanta Hamming minim
este 2 deoarece 01001 este un cuvnt de cod i nu exist un cuvnt de cod nenul
cu numai un bit nenul.
Proprietile aparte ale unui cod polinomial sunt legate adesea de proprietti
speciale ale polinomului generator. Iat cteva exemple de astfel de proprietti:
Un cod este ciclic dac i numai dac polinomul generator este un divizor al
polinomului xn 1.

145
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Dac polinomul generator este primitiv polinom minimal cu coeficienti


din GF(p) care genereaz corpul GF(pn) atunci codul rezultat are distana
Hamming minim de cel putin 3, dat fiind c n 2m 1.
n cazul codurilor BCH polinomul generator se alege astfel nct s aib
anumite rdcini ntr-un corp extins, ceea ce asigur distane Hamming
minime mari.
Natura algebric a codurilor polinomiale, alegerea judicioas a polinoamelor
generatoare sunt elemente care pot fi adesea exploatate pentru a gsi algoritmi
eficieni de corectare a erorilor. Este de pild cazul codurilor BCH.
Printre familiile remarcabile de coduri polinomiale sunt de menionat:
Codurile ciclice un cod ciclic este totodat un cod polinomial; un exemplu
binecunoscut l constituie codurile CRC (Cyclic Redundancy Check).
Codurile BCH (Bose i Ray-Chaudhuri) o familie de coduri ciclice cu
distane Hamming minime mari i pentru care s-au dezvoltat algoritmi
algebrici eficienti de corectare a erorilor.
Codurile Reed-Solomon un subset important al codurilor BCH cu o
structur deosebit prin eficiena lor.
Coduri ciclice
n teoria codrii, codurile ciclice propriu-zise sunt coduri bloc liniare corectoare
de erori care au o structur algebric convenabil pentru corectarea i detectarea
eficient a erorilor.
Definiie: Fie C un cod liniar peste corpul GF(q) cu lungimea blocului de n
simboluri. C este numit cod ciclic dac pentru orice cuvnt de cod c = (c1, ,
cn) din C, cuvntul (cn, c1, , cn 1) din GF(qn), obtinut prin permutarea
circular a simbolurilor este la rndu-i cuvnt al codului. La fel se ntmpl la
deplasarea spre stnga. O deplasare circular spre dreapta este tot una cu n 1
deplasri spre stnga i reciproc. Aadar, codul liniar C este ciclic atunci cnd
este invariant la orice permutare circular a digiilor componeni ai cuvintelor
sale.
Fat de alte coduri, codurile ciclice au anumite restricii structurale speciale.
Aceste coduri se bazeaz pe corpurile Galois i datorit propriettilor lor
structurale sunt foarte utile n tratarea erorilor. Structura lor este strns legat de
corpurile Galois i de aceea algoritmii de codare i de decodare pentru codurile
ciclice sunt foarte eficienti din punctul de vedere al calculului.
Structura algebric: Codurile ciclice pot fi puse n legtur cu ideale ale unor
anumite inele. Fie R = A[x]/(xn 1) un inel de polinoame peste corpul finit A =
GF(q). Elementele codului ciclic C se identific cu polinoame din R astfel nct
(c0, , cn 1) se asociaz polinomului c0 +c1x + + cn 1xn 1: astfel,
multiplicarea cu x corespunde unei deplasri ciclice. Atunci C este un ideal al
lui R i este un ideal principal, deoarece R este un inel cu ideale principale,
adic xR i Rx sunt ideale ale lui R. Idealul este generat de un element monic
unic din C, de grad minim, polinomul generator g. Acesta trebuie s fie un

146
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

divizor al lui xn 1. Decurge de aici c orice cod ciclic este un cod polinomial.
Dac polinomul generator g are gradul d, atunci rangul codului C este n d.
Idempotentul codului C este un cuvnt de cod e pentru care e2 = e (adic e este
un element idempotent al lui C) i e este o identitate pentru cod, ec = c pentru
orice cuvnt de cod c. Un astfel de cuvnt exist totdeauna i este unic; el este
un generator al codului.
Un cod ireductibil este un cod ciclic n care codul ca ideal este minimal n R
astfel c generatorul su este un polinom ireductibil.
Exemple: Dac A = GF(2) i n = 3, mulimea cuvintelor de cod continute n
codul ciclic al lui 110 este exact
000, 110, 011, 101.
El corespunde idealului GF(2)[x]/(x3 + 1) generat de (1 + x).
De observat c (1 + x) este un polinom ireductibil n inelul polinoamelor i de
aceea codul este un cod ireductibil.
Idempotentul acestui cod este polinomul x + x2 care corespunde cuvntului de
cod 011.
Exemple triviale de coduri ciclice sunt An nsusi i codul care contine numai
cuvntul nul. Acestea corespund respectiv polinoamelor generatoare 1 i xn + 1,
polinoame care divid totdeauna pe xn + 1.
Peste GF(2), codul cu paritate constant alctuit din toate cuvintele de pondere
par corespunde generatorului x + 1. i acesta este totdeauna un factor al
polinomului xn + 1.
Submulimile de polinoame generate prin multiplicarea cu un polinom fix a
tuturor celorlalte polinoame se numesc ideale ale inelului respectiv. Teorema
mprtirii ntregi pentru polinoame conduce la o mprtire a polinoamelor n
clase dup schema explicat de relatia urmtoare
b(X) = a(X)q(X) + r(X)
Polinomul b(X) apartine clasei de resturi r(X) modulo a(X). Restul r(X) este un
polinom de grad strict mai mic dect gradul polinomului a(X) prin care se face
mprtirea.
Dac a(X) este polinomul care genereaz pe calea artat un ideal I atunci
idealul respectiv coincide cu clasa de resturi r(X) = 0, adic toate polinoamele
din idealul I se mpart exact (fr rest) la polinomul a(X). Prin adunarea la
polinoamele din idealul I a unui polinom oarecare r ( X ) 0 , de un grad
inferior polinomului a(X) se obtine o alt clas de resturi, clasa de resturi r(X)
modulo a(X). Operatiile cu polinoame se transform n operatii cu clase i
operatiile cu clase sunt deplin reprezentate prin operatiile cu resturile r(X)
specifice. Asadar, oricare din clasele de resturi va fi reprezentat de polinomul
de cel mai mic grad din clasa respectiv. Clasele astfel definite pot fi privite i
ca vectori cu n componente, componentele fiind coeficientii polinoamelor de
grad n 1, a0X 0 + a1X 1 + + an 1X n 1: a = a0a1an1. Vectorii de acest gen
pot fi multiplicati scalar. Produsul scalar coincide cu produsul de clase dac
polinomul a(X) este de forma
a(X) = X n + 1

147
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

si rezultatul a(X)b(X) = 0 implic anularea produsului scalar al vectorilor a i b.


ntr-adevr, dac a(X)b(X) = 0 rezult anularea coeficientului
c n1 a 0 bn1 a1bn 2 ... a n 2 b1 a n 1b0 0
ceea ce arat c n produsul scalar, ordinea componentelor unuia dintre vectori
trebuie s fie inversat. Mai mult, permutarea circular a coeficientilor unuia
dintre factori conduce de asemenea la un produs nul
a0bi a1bi 1 ...ai b0 ai 1bn1 ... an2bi 2 an1bi 1 0
pentru orice i = 1, 2, , n 1.
Cuvintele de cod ca elemente ale unui ideal. Din mulimea de cuvinte (n
numr total de 2n) alctuite din coeficienii polinoamelor reprezentante ale
claselor de resturi modulo a(X) = Xn + 1, se selecioneaz 2k cuvinte cu sens.
Cuvintele cu sens trebuie s aibe o proprietate comun i exclusiv care s le
disting de celelalte.
Se alege un aa-numit polinom generator g(X) dintre divizorii polinomului a(X).
Polinomul g(X) genereaz un ideal I. Prin definiie un cuvnt aparine codului
(este un cuvnt cu sens) dac aparine idealului I. Pentru orice polinom g(X)
exist un alt polinom h(X) astfel nct
a(X) = g(X)h(X) =X n + 1
Acest al doilea polinom h(X) genereaz un alt ideal J care reprezint aanumitul spaiu nul al idealului I. Altfel spus, un cuvt v(X) este un cuvnt de
cod dac i numai dac el se gsete n spatiul nul al idealului generat de
polinomul h(X)
v(X)h(X) = 0
n algebra polinoamelor modulo a(X) se pot alege n polinoame particulare, 1, X,
X2, , Xn 1, care pot fi considerate o baz n construcia codurilor. Oricare
dintre polinoamele de grad mai mic dect n poate fi scris sub forma a0X 0 + a1X1
+ + an1X n 1.
n plus, dac g(X) este polinomul generator atunci, pe lng cuvntul g0g1gm
asociat acestui polinom, toate polinoamele Xg(X), , Xk 1g(X), de gradul
maxim m + k 1 = n 1, sunt asociate unor cuvinte cu sens. ntr-adevr,
oricare din polinoamele din aceast secvent are proprietatea
X i g ( X )h ( X ) X i [ g ( X )h( X )] 0
pentru orice i = 1, 2, , k 1 = n m 1. Este de reinut matricea
0 ... 0
g 0 g 1 ... g m
0 g ... g
g m ... 0
0
m 1

G
... ... ... ...
... ... ...

0 ... ...
g 0 ... g m
0
matrice cu k = n m linii care conine pe linii codurile asociate polinoamelor
g(X), Xg(X), , Xk 1g(X). Orice polinom combinaie liniar a polinoamelor
din aceast list este de asemenea asociat unui cuvt cu sens, unui cuvnt al
codului. Matricea G de mai sus este numit matricea generatoare a codului

148
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

ciclic. Ea are k linii liniar independente din care se pot forma 2k cuvinte de cod.
Din relatia funcional
g(X)h(X) = Xn + 1
echivalent n mulimea cuvintelor cu
v(X)h(X) = 0
rezult matricea de control al paritii H cu proprietatea
HvT = 0
Matricea H este legat de coeficienii plinomului
h(X) = h0 + h1 X + + hk Xk
i are forma
0 ... 0 hk hk 1 ... h0
0

0 ... hk hk 1 ... ... 0


H 0
... ... ... ... ...
... ... ...
hk hk 1 ... ... h0
... ... 0

cu m linii independente liniar, ceea ce face din relatia HvT = 0 un sistem de m


ecuaii care permite determinarea celor m simboluri de control n funcie de cele
k simboluri purttoare de informaie.
Observnd structura matricei H, se poate afirma c dac
v0 (a0a1 ...an1 )
este cuvnt de cod, atunci i
vi (ai ai 1...an 1a0 ...ai 2ai 1 )
este cuvnt de cod, cuvnt cu sens. Ciclicitatea este evident.
Exemplu: Clasele de resturi modulo 1 + X3 sunt tabelate (prin reprezentare la
gradul cel mai mic) n continuare
0

1+X

X2

1 + X2

X + X2

1 + X + X2

Polinomul poate fi descompus astfel


1 + X 3 = (1 + X)(1 + X + X 2)
Cazul I. m = 0, k = 3; g(X) = 1, h(X) = 1 + X 3
Baza pentru cuvintele cu sens este g(X), Xg(X), X2g(X) adic 1, X, X2, i
matricea generatoare este
1 0 0
G 0 1 0
0 0 1
cu vectori liniar independeni pe liniile matricei. Acesti vectori sunt ei nii
cuvinte de cod. Celelalte cuvinte de cod se obtin prin luarea altor combinatii
liniare ale vectorilor din baz
1 X (1 1 0)

X X 2 (0 1 1)
1 X 2 (1 0 1)
1 X X 2 (1 1 1)

149
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Matricea de control al paritii este dat de polinomul 1 + X 3 din clasa 0, asadar


matricea de control este
H [ 0 0 0]
Nu se pot sesiza erorile eventuale, nu se pot corecta, deoarece ponderea minim
este d = 1 (la fel distana minim ntre dou cuvinte distincte).
Cazul II. m = 1, k = 2; g(X) = 1 + X, h(X) = 1 + X + X 2.
Matricea generatoare este n acest caz
G 10 11 01

cuvintele de cod sunt cele dou nscrise pe liniile matricii, la care se adaug
combinatia liniar (unic)
1 X 2 (1 0 1)
Matricea de control este dat de polinomul h(X) = 1 + X + X 2 i este
H [1 1 1]
Deoarece ponderea minim este d = 2 se poate detecta o eroare. Cuvintele de
cod verific relatia
HvT = 0
Cazul III. m = 2. k = 1; g(X) = 1 + X + X 2, h(X) = 1 + X.
Matricea generatoare este
G [1 1 1]
i exist un singur vector cuvnt de cod diferit de cuvntul nul. Ponderea este d
= 3 i permite corectarea unei erori.
Matricea de control este
H 01 11 10

Este vorba aici de codul cu repetiie, cu transmiterea fiecrui bit de trei ori.
Generarea sistematic a cuvintelor de cod.
Fie i ( X ) an k an k 1 X ... an 1 X k 1 polinomul de grad strict mai mic dect
k = n m, cu coeficientii bii purttori de informatie. Polinomul Xmi(X) de grad
mai mic dect n contine n partea final, cea cu ordinele cele mai mari, aceiasi
bii. Teorema mprtirii ntregi pentru acest polinom
Xmi(X) = g(X)q(X) + r(X)
conduce la ctul q(X) de grad mai mic dect k i la restul r(X) de grad mai mic
dect m. Cuvtul
v(X) = r(X) + Xmi(X)
este divizibil cu g(X), aadar este cuvnt de cod. Restul r(X) are drept
coeficieni, adic simboluri de control, combinatii liniare ale simbolurilor
purttoare de informatie. Prin operatii elementare algebrice, matricea
generatoare poate fi adus la forma
G [ P Ik ]
cu Ik matricea unitate de ordinul k. Cuvintele de cod se pot scrie conform
relatiei matriciale
v = iG

150
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Corpuri Galois. Un corp este o multime de elemente care satisfac axiomele


corpurilor relativ la adunare i nmultire
Proprietti
Comutativitate
Asociativitate
Distributivitate
Element neutru
Inversabilitate

Adunare
ab ba
( a b ) c a (b c )
a(b c ) ab ac
a0 a 0a
a ( a) 0 ( a ) a

nmulire
ab ba
(ab)c a(bc)
(a b)c ac bc
a.1 a 1.a
1
aa 1 a 1a , dac a 0

Un corp cu numr finit de elemente este un corp finit sau un corp Galois
(denumit astfel n onoarea lui variste Galois, 1811-1832).
Deoarece elementele neutre sunt diferite unul de cellalt, un corp trebuie s
contin cel putin dou elemente. Exemple de corpuri: corpul numerelor
complexe, corpul numerelor reale, corpul numerelor rationale dar nu multimea
numerelor intregi, care este un inel.
Pentru un corp finit numrul de elemente alctuitoare, cardinalul su se mai
numeste i ordinul corpului. Ordinul unui corp finit este totdeauna un numr
prim sau o putere ntreag pozitiv a unui numr prim. Pentru fiecare putere a
unui numr prim exist un corp finit i numai unul GF(pn) (fcnd abstractie de
un izomorfism).
GF(p) este numit corp prim de ordinul p i este corpul claselor de resturi
modulo p, iar elementele lui se noteaz cu 0, 1, ..., p 1. Egalitatea a = b n
GF(p) este tot una cu a b (mod p). A se observa c n inelul resturilor modulo
4, 22 0 (mod 4), asadar 2 nu are invers pentru operatia de nmultire i inelul
claselor de resturi modulo 4 este altceva dect corpul finit cu patru elemente.
Pentru claritate, corpurile finite cu k = pn se scriu GF(pn) i nu GF(k).
Corpul finit GF(2) contine elementele 0 i 1 care se adun i se nmultesc
conform binecunoscutelor table de adunare i nmulire
+
0
1

0
0
1

1
1
0

0
1

0
0
0

1
0
1

Dac o submultime S a unui corp finit GF satisface axiomele de mai devreme


atunci ea este un subcorp. Corpurile finite sunt larg utilizate n studiul codurilor
corectoare de erori.
Cnd n > 1, corpul Galois GF(pn) poate fi reprezentat ca un corp al unor clase
de echivalen de polinoame cu coeficienti n GF(p). Orice polinom ireductibil

151
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

de gradul n produce acelasi corp pn la un izomorfism. De exemplu, pentru


GF(23), polinomul generator poate fi x3 + x2 + 1, x3 + x + 1 sau orice alt
polinom ireductibil de gradul 3, dac mai exist vreunul. Dac se retine x3 + x +
1 atunci elementele corpului GF(23) scrise ca 0, x0, x1, ..., secven n care
apar toate puterile unui element x oarecare, diferit de elementul nul i de
elementul unitate obligatorii n orice corp pot fi reprezentate ca polinoame de
grade inferioare lui 3. De pild
x3 x 1
x4 x2 x
x5 x2 x 1
x6 x2 1
x7 1
Acum, n tabelul care urmeaz sunt date cteva reprezentri diferite ale corpului
finit de mai sus
Elemente

Polinoame

0
x0
x1
x2
x3
x4
x5
x6
x7

0
1
x
x2
x+1
x2 + x
2
x +x+1
x2 + 1
1

Vectori
binari
(000)
(001)
(010)
(100)
(011)
(110)
(111)
(101)
(001)

Exprimare zecimal
0
1
2
4
3
6
7
5
1

Mulimea de polinoame din coloana a doua a tabelului este nchis la adunare i


multiplicare modulo x3 + x + 1 i operatiile se supun axiomelor pentru corpuri.
Acest corp particular este numit un corp extensie de gradul 3 a corpului GF(2),
este notat GF(23), iar corpul GF(2) este numit baza corpului GF(23). Dac un
polinom ireductibil genereaz toate elementele n acest mod, acel polinom se
numeste ireductibil primitiv. Pentru orice numr prim q sau putere ntreag
pozitiv a lui i pentru orice ntreg pozitiv n exist un polinom ireductibil de
grad n peste GF(q).
Pentru orice element c din GF(q) este valabil relatia cq = c i pentru orice
element d nenul din GF(q) se verific egalitatea dq1 = d. Exist un ntreg
pozitiv n cel mai mic pentru care suma cu n termeni e + e + ... + e se anuleaz
pentru orice element e din GF(q). Acel numr se numeste caracteristica
corpului finit GF(q). Caracteristica este un numr prim pentru fiecare corp finit
i relatia
(x + y)p = xp + yp

152
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

este valabil pentru orice x i y din corpul finit GF(q) dac p este tocmai
caracteristica lui.
Cuvinte de cod prin rdcinile polinomului generator. Un polinom oarecare
v(x), de grad n 1 este cuvnt de cod dac i numai dac are printre rdcini
rdcinile polinomului generator g(x). Aceasta nseamn c polinomul v(x) este
divizibil cu g(x) i face parte din idealul generat de acesta din urm. Polinomul
g(x) este divizor pentru xn + 1 ceea ce face ca rdcinile lui i ale poilnomului
v(x) s fie i rdcini ale polinomului xn + 1. Numrul rdcinilor polinomului
xn + 1 generator al claselor de resturi modulo p(x) = xn + 1 este n.
Dac n = 2m 1 atunci polinomul xn + 1 are ca rdcini elementele nenule ale
corpului Galois GF(2m) n numr de n = 2m 1, notate n 1.
Corpul Galois GF(2m) contine clasele de resturi generate de un polinom
ireductibil q(x) de gradul m. Pentru fiecare grad m exist un polinom ireductibil
q(x) i sunt tabele cu astfel de polinoame. Dac q(x) este i primitiv atunci toate
elementele nenule ale corpului Galois GF(2m), respectiv toate rdcinile
m
polinomului x 2 1 1 , pot fi exprimate ca puteri ale uneia din rdcinile
polinomului primitiv q(x). Fie acea rdcin . Lista complet a rdcinilor este
1, n1 cu n = 2m 1. Un caz particular ar putea fi acela n care
polinomul generator g(x) este chiar q(x).
Exemplu: Fie n = 2m 1 = 15, adic m = 4. Elementele nenule ale corpului
Galois GF(24) sunt generate de polinomul ireductibil de gradul patru q(x) = 1 +
x + x4 care are rdcina primitiv . Cele 15 elemente nenule din GF(24) sunt
date n tabelul urmtor:
Puteri ale
lui

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Clasele de resturi modulo


q(x) = 1 + x + x4
1

n binar
1000

0100

0010

0001

1+

1100

0110

0011

1 + +

1101

1 +

1010

0101

1 + +

1110

+ +

0111

1 + + +

1111

1 + +

1011

1 +

1001

1000

153
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Se observ corespondena biunivoc ntre puterile rdcinii i clasele de


resturi modulo q(x) = 1 + x + x4. Rdcina corespunde polinomului x.
m1
Celelalte rdcini sunt 2 , 4 ,..., 2 . ntruct q(x) este primitiv, elementele
corpului Galois GF(24) pot fi exprimate n funcie de oricare dintre rdcinile
enumerate.
Polinom minimal asociat unei rdcini i este polinomul ireductibil de gradul
cel mai mic pentru care i este rdcin, notat mai jos mi(x) cu mi(i) = 0. Dac
un polinom v(x) are ca rdcin pe i atunci el se divide cu mi(x), polinomul
minimal al acelei rdcini.
Un cuvt de cod, altfel spus un polinom din algebra polinoamelor modulo p(x)
= xn + 1, poate fi caracterizat prin rdcinile lui, elemente ale unui corp Galois
GF(2m), rdcini ale polinomului xn + 1. Se presupune c rdcinile acelea sunt
distincte, r, oricare dintre elementele corpului GF(2m). Polinoamele
minimale ale acestor rdcini mi(x), i = 1, 2, ..., r divid cuvntul de cod,
polinomul v(x). Acesta este divizibil i cu cel-mai-mic-multiplu-comun
g ( x ) c. m.m. m. c.[m1 ( x ), m2 ( x ),..., mr ( x )]
care este exact polinomul generator. Codul/polinomul v(x) aparine idealului
generat de g(x). Asadar, un cuvnt de cod poate fi pus n legtur cu anumite
rdcini ale polinomului xn + 1 care apartin unui corp Galois GF(2m) dat cu n =
2m 1. Echivalent, v(x) apartine spatiului nul al unui polinom h(x) care verific
mprtirea ntreag fr rest xn + 1 = h(x)g(x).
Exemplu: Se consider codul v(x) care are ca rdcini din corpul
Galois GF(24).
Polinomul minimal pentru = este un polinom ireductibil care are ca
rdcini pe i deoarece = = , prin urmare va fi un
polinom de gradul patru. El rezult a fi m1(x) = 1 + x + x4. Polinomul minimal
pentru = este acelasi, m2(x) = m1(x), deci nimic nou n lista divizorilor lui
v(x). Pentru = polinomul minimal m3(x) este altul i are rdcinile
i tinnd seam c el este tot de gradul
patru. n spet m3(x) = 1 + x + x2 + x3 + x4. O cale de a calcula coeficientii
polinoamelor minimale este cea direct. O cale mai comod se bazeaz pe
observatia c polinomul de gradul patru m3(x) de pild poate fi scris ca
m3 ( x ) a0 a1x a2 x 2 a3x 3 x 4
i cum i este rdcin
m3 ( 3 ) a0 a1 3 a2 6 a3 9 12 0
Prin nlocuire conform tabelului de mai sus rezult
1
0
0
0 1
0
0
0

a0 0 a1 0 a2 1 a3 10 11 0




0
1
1
1 1
egalitate echivalent cu sistemul

154
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

a0 1 0
a3 1 0
a2 1 0
a1 a2 a3 1 0
care conduce la a1 = a2 = a3 = a4 = 1 i la expresia lui m3(x) de mai sus.
Matricea de control. Dac cuvntul de cod v(x) are ca rdcini r
atunci
v ( i ) a0 i0 a1 1i ... an 1 .n 1 0
pentru toi indicii i = 1, 2, ..., r. Scriind matricea
10 11 12 ... 1n 1
1
2
n 1
0
H 2 2 2 ... 2
...0 ...1 ...2 ... ...
n 1
r r r ... r
i vectorul v [a0a1a2 ... an 1 ] , rezult
HvT = 0
care este o condiie de inteligibilitate, de apartenen la cod a cuvtului v(x). n
matricea de mai sus elementele i0 1 . Rdcinile i se aleg dintre cele 2m 1
elemente nenule ale corpului GF(2m) astfel nct ele s aib polinoame
minimale distincte. Astfel produsul polinoamelor minimale dau polinomul
generator
g ( x ) m1 ( x )m2 ( x )... mr ( x )
care este chiar produsul lor deoarece sunt mutual prime. Suplimentarea cu alte
rdcini ale polinoamelor minimale nu aduc modificri polinomului generator,
dup cum s-a vzut mai devreme. Rangul matricei H este egal cu gradul
polinomului generator.
Exemplul anterior continuat conduce la matricea
1
2
14
0

H 0 3 6 ... 42
...
n care se substituie puterile lui conform tabelului de mai sus i se obtine
0 0 0 ... 1
0 0 1 ... 0
0 1 0 ... 0
1
H 10 01 01 ...
...
1

0
0
1
...
1

0
0
0
...
1 0 0 ... 11

matrice cu rangul 8 deoarece polinomul generator


g ( x ) m1 ( x )m3 ( x ) (1 x x 4 )(1 x x 2 x 3 x 4 )
este de gradul 8. Rdcina nu aduce nimic nou. Matricea H are proprietatea
important c are liniile liniar independente.

155
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Corectarea erorilor. Pentru a corecta e erori independente este necesar ca


sumele de cte e coloane diferite din H s fie distincte, aricare 2e coloane din H
s fie liniar independente. Se pune problema legturii dintre numrul de erori
corectabile i numrul de rdcini ale polinomului g(x).
Rdcinile 22e1 conduc la un cod capabil s corecteze e erori
independente.
Exemplul continuat. Fie e = 1 i cuvntul de cod de lungime n = 24 1 = 15.
Simbolurile de control al paritii sunt n numr de m = 4, simboluri purttoare
de informatie sunt k = 11. Din cele 15 elemente nenule ale corpului GF(24) se
alege ca rdcin a cuvintelor de cod. Matricea de control este
H 0 1 2 3 ... 14

sau

0 0 0 1
H 00 01 10 00

1 0 0 0
Polinomul generator este g(x) = 1 + x + x4.
Corectorul. Fie ... i1 ... i e ... cu

...
...
...
...

1
0
0
1

ik 1 plasat pe pozitia ik.

Matricea de control se pune sub forma


H h0 h1 ... hn 1
n care vectorii coloan sunt
i 1
3( i 1)
hi

...
( 2 e 1)(i 1)
Sindromul este atunci
z H T hi1 ... hie
o sum de e coloane din H, una din sumele diferite de e coloane diferite.
Rezult corectori distinci pentru situaii diferite.
n cazul corectrii unei singure erori, matricea de control este
H 0 1 2 ... n 1

Dac eroarea apare n pozitia i atunci expresia sindromului este


z = i
Acelai rezultat se obtine i dac cuvntul receptionat v(x) = v(x) + (x) se
mparte cu polinomul generator g(x)
v ( x ) a( x ) g ( x) r ( x )
Restul acestei mprtiri produce pentru x = tocmai sindromul r() = z = i.
Coduri convoluionale

156
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Codurile convolutionale sunt specificate uzual prin trei numere ntregi pozitive,
(n, k, m), numrul de biti la iesire, numrul de biti la intrare, respectiv numrul
registrelor de memorie.
Raportul k/n este numit rata codului i este uzual o msur a eficienei codului.
De obicei k i n sunt de la 1 la 8, m de la 2 la 10 i rata codului de la 1/8 la 7/8
cu exceptia aplicatiilor spaiale la mare distant cnd ratele codului pot fi i de
1/100 sau chiar mai mici.
Productorii de echipamente de codare specific parametrii codurilor
convoluionale putin diferit: (n, k, L). Numrul L este aa-numita restrictie de
lungime a codului i se calculeaz din k i m cu relatia L = k(m 1). Restrictia
de lungime L reprezint numrul de biti din memoria codorului care servesc la
generarea celor n bii de la iesire. Restrictia de lungime se noteaz ocazional cu
K (majuscul), ceea ce ar putea duce uneori la confundarea cu litera mic
definit mai sus ca reprezentnd altceva. Unele surse consider pe K drept
produsul dintre k i m.
Alte surse definesc un cod convolutional prin perechea (r, K) n care r este rata
k/n a codului i K este restricia de lungime, de fapt L 1.
n textul care urmeaz, specificarea codurilor convoluionale se face exclusiv
prin tripla valoare (n, k, m).
Parametrii codului convoluional i structura codorului. Structura codorului
convoluional (n varianta grafic) se extrage uor din parametrii lui. Mai nti
se deseneaz m casete reprezentnd cele m registre de memorie. Apoi se pun pe
figur n sumatoare modulo 2 care produc cele n ieiri. Registrele de memorie se
conecteaz la sumatoare conform unor polinoame generatoare (v.figura
alturat).

m1 m0 m 1

m1

m0

v1

m1
v2

m1 m 1

m0 m 1
v3

Acesta este un codor convolutional (3, 1, 3). Genereaz la iesire 3 bii pentru
fiecare bit introdus la intrare i are 3 registre de memorie. Este alimentat la
intrare de fiecare dat cu 1 bit (intrare bit-cu-bit). Codul generat are aadar rata
de 1/3. Restrictia de lungime a codului este 2. Cum s-a menionat deja, cei 3 biti
de la iesire sunt rezultatul nsumrii selective modulo 2 a unor biti din registrele
de memorie, n 3 sumatoare distincte. Selectarea bitilor pentru fiecare iesire se
face conform unor aa-numite polinoame generatoare. De pild, primul bit de

157
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

iesire are ca polinom generator pe (1, 1, 1), bitul al doilea are pe (0, 1, 1) i al
treilea pe (1, 0, 1). Astfel,
v1 = (m1 + m0 + m1) mod 2
v2 = (m0 + m1) mod 2
v3 = (m1 + m1) mod 2
sau ntr-o scriere cu operatorul sau-exclusiv
v1 = (m1 m0 m1)
v2 = (m0 m1)
v3 = (m1 m1)
Polinoamele dau codului calitatea unic de a proteja la erori. Un cod
convoluional (3, 1, 3) poate avea proprieti diferite de ale altuia definit prin
alt alegere a plinoamelor generatoare.
Alegerea polinoamelor gneratoare. Oricare ar fi ordinul m al codului, sunt
multe alegeri posibile ale polinoamelor generatoare. Nu toate produc secvene
de iesire care s protejeze eficient la erori. n cartea Error-Correcting Codes,
W.W.Peterson i E.J.Weldon sunt date liste cuprinztoare de polinoame
generatoare adecvate. Polinoamele potrivite se obtin de obicei prin simulare pe
calculator. Pentru rata 1/2, tabelul alturat ofer polinoame de acest gen.
Restrictia de
lungime
3
4
5
6
77
8
9
10

g1

g2

110
1101
11010
110101
110101
110111
110111
110111001

111
1110
11101
111011
110101
1110011
111001101
1110011001

Starea unui codor. Starea unui codor este dat de o secvent de biti. Codoarele
rafinate au restrictia de lungime mare, cele simple au restrictia mai redus i
numrul de stri mai restrns.
Codul (2, 1, 4) din figura alturat are o restrictie de lungime 3. Registrele
umbrite detin bitii de stare. Registrul clar detine bitul abia sosit. Asta nseamn
c dup valorile bitilor din cele trei registre de memorie, codorul are 8 stri
distincte. Aceste 8 combinatii i bitul proaspt sosit determin valorile de iesire
obtinute pentru v1 i v2, bitii din secvena codat.

Surse variate reproduc acest tabel care d pentru restrictia de lungime 7 dou polinoame
generatoare identice. Probabil c este vorba de o eroare neobservat, propagat de la o surs la
alta.

158
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

v1

m1 m0 m 1 m 2

m1

m0

m1

m2
v2

m1 m0 m 2

Combinatiile de biti din registrele umbrite sunt numite strile codorului.


Numrul de stri este 2L, cu L = k(m 1) restrictia de lungime a codului. Strile
unui cod indic ce contin la un moment dat registrele de memorie, cu exceptia
registrului/registrelor de intrare.
Despre strile codului/codorului se poate vorbi ca despre o succesiune de
conditii momentane. Bitii produi la iesire depind de bitii tocmai aplicati la
intrare i de aceast conditie momentan a codorului pe care o gsesc i care se
schimb succesiv.
Coduri perforate (punctured). Pentru cazul special k = 1, ratele codurilor 1/2,
1/3, 1/4, 1/5, 1/7 sunt denumite uneori coduri mam. Aceste coduri rezultate
dintr-o intrare bit-cu-bit pot fi combinate pentru a produce coduri perforate care
au alte rate, mai avantajoase, diferite de 1/n.
Utiliznd concomitent dou coduri/codoare cu rata de 1/2 ca n figura alturat
i apoi transmitnd numai unul din biii generati de unul din codoare, aceast
implementare a ratei 1/2 se poate converti ntr-un cod cu rata 2/3: 2 biti sosesc
i 3 sunt produsi la iesire. Acest concept este numit perforare (puncturing). La
receptie, biii teri (dummy), care nu afecteaz metrica decodrii sunt inserati
eventual nainte de decodare n locurile adecvate.
Revenind la figur, dou codoare convolutionale (2, 1, 3) produc 4 biti la
iesirile lor. Un bit este perforat asa nct rezult o combinatie care este un cod
(3, 2, 3).

m1 m0 m 1

v1

u1
m1

m0

m1
v2
m0 m 1

159
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

m1 m0 m 1

v3

u2
m1

m0

m1
v4
m0 m 1

Aceast tehnic permite producerea de coduri la rate variate uznd de numai o


schem hardware simpl. Dei se poate construi direct un codor pentru rata 2/3,
avantajul unui cod perforat este acela c ratele pot fi schimbate dinamic (prin
software) n functie de conditiile n care canalul functioneaz, cum ar fi cele
atmosferice, meteorologice etc. O implementare fix, dei poate mai uor de
realizat, nu permite o asemenea flexibilitate.
Structura unui codor cu k > 1. Asa cum s-a afirmat puin mai sus, se pot crea
coduri i se pot implementa codoare i pentru k mai mare dect 1. Iat un codor
cu rata 2/3 care codeaz k = 2 biti prin 3 biti, fr a recurge la perforare.
v1

u1
m1

m0

m1

m2

m3
v2

u2

m1

m0

m 1

m 2
v3

Polinoamele generatoare sunt n cazul acesta (1, 0, 0, 1, 1), (1, 1, 1, 0, 1), (0, 1,
0, 1) i (1, 0, 1, 1).
Un alt exemplu este codul convolutional (4, 3, 3), care preia 3 biti i produce 4
biti (vezi figura alturat). Numrul de registre de capacitate tripl este 3.
Restrictia de lungime este L = 32 = 6. Codul are 26 = 64 de stri i necesit
polinoame generatoare de gradul 9. Blocurile umbrite reprezint prin numrul
lor restrictia de lungime.
Procedura de reprezentare sub form grafic a structurii unui codor (n, k, m) cu
k mai mare ca 1 urmeaz paii descrii imediat.
Mai nti se deseneaz k multimi de m casete. Apoi se deseneaz cele n
sumatoare modulo 2. Se conecteaz cele n sumatoare la registrele de memorie
urmnd coeficientii unuia, mereu altul, dintre cele n polinoame generatoare de

160
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

gradul (km). Ceea ce se obtine este o structur ca aceea din figura alturat.
Aceasta reprezint codorul convolutional (4, 3, 3). Codorul are 9 registre de
memorie, 3 biti la intrare i 4 biti la iesire. Registrele umbrite contin biti
vechi i reprezint starea curent.
(0,1,0,0,1,0,1,0,1)

v1

u3u2u1
m3

m2

m1

(1,0,1,0,1,0,0,0,0)

m0

m1

m2

(0,0,1,1,0,1,0,1,0)
v2

m3

m4

m5

(0,1,0,0,0,1,1,0,1)
v4

v3

Coduri convoluionale sistematice i nesistematice. O form special a


codurilor convolutionale este cea n care iesirea contine secventa de biti de la
intrare usor de recunoscut i usor de separat. Aceasta este forma sistematic a
codului.
Vesiunea sistematic a codului convolutional (4, 3, 3) descris mai sus este dat
de un codor ca acela din figura care urmeaz. Codorul sistematic are acelasi
numr de registre de memorie, 3 biti la intrare i 4 biti la iesire. Bitii de la iesire
constau n cei 3 biti originari i un al patrulea bit de paritate.
u3u2u1
m3

m2

m1

m0

m1

m2

m3

m4

m5

v4
u3u2u1

Codurile sistematice sunt adesea preferate celor nesistematice deoarece permit


extragerea rapid a informatiei. Totodat necesit pentru codare un hardware
mai restrns. O alt proprietate important: codurile sistematice nu sunt
catastrofale, erorile nu se propag catastrofal. Aceste proprietti le fac foarte
apreciate. Codurile sistematice sunt utilizate i n modulaia codat pe spalier
(TCM Trellis Coded Modulation). Propriettile protectoare la erori rmn
aceleasi cu ale codurilor nesistematice.
Codarea unei secvene de intrare. Secventa de iesire poate fi calculat printro convolutie a secventei de intrare cu rspunsul impulsional g al codorului, v =
u*g, sau, mai detaliat, prin mijlocirea formulelor

161
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

vlj ul i g ij
i0

n care vjl este bitul l de la iesirea j a codorului, ul i sunt biti aplicati la intrare i
gij este coeficientul i din polinomul generator j.
Ca un exemplu, fie de codat secventa de doi biti 10, cu un cod convoluional (2,
1, 4). Codorul lucreaz ca n figurile urmtoare, comentate n ordinea fireasc a
liniilor i de la stnga la dreapta.
1

0
0

0
0

Mai nti se introduce n codor bitul 1, cum se vede n prima figur, apoi bitul 0
cum se vede n figura urmtoare. Apoi un numr de biti nuli (de purjare), pn
cnd codorul revine la starea cu toate registrele de memorie continnd 0.
a. La momentul t = 0 starea initial a codorului este 000 (bitii n numr de L
situati n registrele pozitionate spre dreapta, cu fondul umbrit). Bitul de
intrare 1 i bitii de stare produc la iesire doi biti: 11. Cum? Prin nsumarea
modulo 2 a tuturor bitilor din registre, respectiv prin nsumarea modulo 2 a
trei biti.
b. La t = 1, bitul de intrare de la momentul anterior se deplaseaz n registrul
vecin spre dreapta. La fel se deplaseaz i ceilalti bii. Registrul de intrare
primete acum bitul 0 din secvena de codat. Codorul este deja n starea
100. Biii de iesire calculati la fel ca la punctul anterior sunt din nou 11.
c. La t = 2, bitii din registre se deplaseaz din nou cu o pozitie spre dreapta.
Starea codorului devine 010 i n registrul de intrare se introduce un nou bit
nul, primul din cei 3 de purjare. Bitii de la iesire sunt acum 10.

162
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

d. La momentul t = 3, unicul bit unitar introdus la intrare ajunge prin deplasri


succesive n ultimul registru i starea devine 001. Bitul nul urmtor introdus
la intrare este tot un bit de purjare i bitii de stare produc iesirea 11.
e. La momentul t = 4, bitul 1 introdus la nceput a trecut complet prin codor.
Codorul a ajuns n starea 000 cu bitul ultim din secvena mesaj. Ieirea
codorului este 00.
f. Un ultim bit de purjare aduce codorul n starea 000. Este acum pregtit
pentru secvena de intrare urmtoare.
De observat c doi bii au produs o ieire de 12 bii cu toate c rata nominal a
codului este 1/2. Faptul arat c pentru secvene de codat scurte overhead-ul de
codare este relativ mare. n cazul secvenelor lungi overhead-ul rmne la fel,
dar ocup o alt proportie n secvena de biti generati de codor, n timpul
consumat cu codarea. Gestiunea biilor ultimi, generati de codor n faza de
purjare este simpl: ignorarea.
n exemplul acesta se poate evidenia separat rspunsul codorului la singurul bit
unitar din secvena supus codrii. Acest rspuns este 11 11 10 11 i este
denumit rspunsul la intrarea impuls unitar sau rspunsul impulsional al
codorului. i bitul 0 are un rspuns propriu, 00 00 00 00, care nu este ns tot
aa de important.
Prin convolutia secventei de intrare cu polinoamele generatoare ale codului, se
obtin aceste dou secvene de ieire. Este un motiv pentru care aceste coduri se
numesc convoluionale. Din principiul suprapunerii (liniare) a efectelor se poate
obtine acum iesirea codat corespunztoare secvenei de doi bii propus.
Dac secvena de intrare care trebuie codat este de pild 1011, este suficent a
aduna versiuni deplasate ale rspunsurilor impulsionale asociate fiecrui bit
aplicat la intrare.
Bit la intrare
Rspuns impulsional
1
11 11 10 11
0
00 00 00 00
1
11 11 10 11
1
11 11 10 11
Adunare modulo 2 pentru a obtine rspunsul:
1 0 1 1
11 11 01 11 01 01 11

n figura care urmeaz este verificat tratarea prin calcul pe baza introducerii n
codor a bitilor secventei 1011, unul cte unul. Rezultatul obtinut este acelai.
Aadar, modelul de calcul prin convoluie este corect.
1

0
1

163
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

0
1

0
1

0
0

Rezultatul codrii de mai devreme este prezentat i n tabelul urmtor:


t
0
1
2
3
4
5
6

Bit la intrare
1
0
1
1
0
0
0

Bii la iesire
11
11
01
11
01
01
11

Biii de stare
000
100
010
101
110
011
001

Secvena de cod este 11 11 01 11 01 01 11.


Proiectarea codorului. Cele dou metode de codare prezentate mai sus arat ce
se ntmpl matematic ntr-un codor. Pentru a realiza efectiv codarea, un codor
convoluional hardware ar putea face uz de tabele n care s caute:
1. Bitul de intrare
2. Starea codorului, una din 8 posibile pentru codul (2, 1, 4)
3. Biii de iesire, grupe de doi biti pentru acelai cod (2, 1, 4)
4. Starea urmtoare, starea care va determina codul urmtorului bit introdus la
intrare.
Pentru codul (2, 1, 4), cu polinoamele generatoare deja specificate, se poate
completa tabelul care urmeaz:

164
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Bit de
intrare
u
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Starea
de
plecare
s1s2s38
000
000
001
001
010
010
110
110
100
100
101
101
110
110
111
111

Bii la
iesire

Starea
de sosire

v1v2
00
11
11
00
10
01
01
10
11
00
00
11
01
10
10
01

s1s2s3
000
100
000
100
001
101
001
101
010
110
010
110
011
111
011
111

Acest tabel descrie n mod unic codul (2, 1, 4). Tabelul este diferit pentru alte
coduri i depinde de coeficienii polinoamelor generatoare utilizate.
n explicarea codrii convoluionale i a decodrii, se recurge frecvent la
grafic. Un codor are toate elementele unui automat finit. De aceea este natural
ca diagramele de stare i arborii s fie printre reprezentrile sale. Dar cea mai
frecventat reprezentare pare a fi diagrama spalier (trellis). Aceasta pentru c o
diagram spalier cuprinde n aceeai imagine i aspectul temporal al proceselor
de codare i de decodare.
Diagrama spalier (trellis). Diagramele spalier sunt numite astfel pentru c
arat precum unele structuri similare utilizate n cultivarea unor plante, n slile
de sport etc. n cazul codurilor convoluionale grafurile spalier sunt aparent
ncurcate, greu de descifrat. Cu toate acestea sunt preferate n general grafurilor
de stare sau grafurilor arbore deoarece reprezint mai direct i mai complet
aspectele secveniale, temporale ale codrii convoluionale. ntr-un graf spalier,
chiar dac nu este figurat, pe axa absciselor este subnteles timpul discret
alctuit din momentele n care au loc evenimente determinante pentru operaia
de codare. Pe vertical sunt artate toate strile posibile ale codului. Scurgerea
timpului se traduce printr-o deplasare pe spalier n sensul pozitiv, spre dreapta.

Mai condensat, strile codului se pot reprezenta n octal. Aceasta este reprezentarea aleas n
unele puncte ale discutiei despre codurile convolutionale. Cititorul va fi avertizat la momentul
potrivit.

165
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Fiecare tranziie nseamn sosirea unui nou bit din secvena care trebuie codat.
Tranziiile sunt iniiate/stimulate de acei bii.
000

S t r i

001
010
011
100
101
110
111
Repetare

Diagrama spalier se obtine prin trasarea a 2L linii orizontale (echidistante). Apoi


fiecare stare se conecteaz cu strile urmtoare prin secvenele de cod
admisibile pentru acea stare. n cazul k = 1, numai dou alegeri sunt posibile
pentru fiecare stare. Acestea sunt determinate de sosirea la intrarea codorului fie
a unui 0, fie a unui 1. Sgeile indic tranziiile iniiate de bitul de intrare: cele
care merg n sus (cu suportul linie continu) sunt iniiate de bitul 0, cele care
merg n jos (cu suportul linie ntrerupt), de bitul 1. Diagramele spalier
complete conin i biii de ieire, cei ai codului.
Diagrama spalier este unic pentru fiecare cod, la fel cum i diagrama de stare
i cea arborescent sunt unice. Spalierul poate fi desenat pentru intervale
multiple. De la un moment ncolo, fiecare interval ntre dou tranziii repet
structura grafic a spalierului.
Starea de nceput este totdeauna cea numit nul, n particular, pentru cazul n
discuie, 000. Pornind de aici, spalierul se dezvolt i n L pasi devine populat
cu toate tranziiile posibile. De la acel punct structura grafic care reprezint
tranziiile se repet.
Codarea pe graful spalier. n figura urmtoare biii care sosesc sunt artati n
partea de sus a diagramei spalier. Se pornete obligatoriu de la punctul
corespunztor strii iniiale nule, 000. Codarea este uoar: simplu, deplasare n
sus pentru un 0, deplasare n jos puntru un 1. Calea urmat pentru secvena
1011000 aleas ca exemplu este reprezentat prin segmente (orientate) puse cap
la cap.
Diagrama spalier produce aceeasi secven codat ca i celelalte metode de
reprezentare, adic de metoda rspunsului impulsional sau de uzul unei
diagrame arborescente.

166
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Biti la intrare: 1

000

S t r i

001
010
011
100
101
110
111

Drumul colorat produce la iesire secventa 11 01 11 11 10 10 11.


Decodarea. Pentru decodarea codurilor convoluionale se cunosc mai multe
soluii. Acestea sunt grupate n dou categorii:
1. Decodarea secvenial algoritmul lui Fano.
2. Decodarea prin metoda verosimilitii maxime decodarea Viterbi.
Cele dou grupe de tehnici de decodare reprezint tratri diferite ale codurilor
convoluionale. Fiecare din ele utilizeaz aceeasi idee privind decodarea.
Ideea de baz a decodrii. Se presupune s se trimit 3 biti codati la rata de 1/2.
Sunt receptionai 6 bii (se ignor n aceast faz a discuiei biii de purjare).
Secvena celor 6 biti poate s conin erori. Se stie din discutia despre procesul
de codare c bitii acetia 6, la iesirea din codor sunt generati n mod unic: o
secvent de 3 biti dat produce o secven de 6 biti unic. Dar datorit lucrrii
canalului asupra secvenei transmise, poate fi receptionat n principiu oricare
din succesiunile posibile de 6 biti.
Exprimate prin 3 biti, la intrarea codorului se pot aplica 8 secvene distincte.
Fiecare din acestea are un corespondent unic n secvenele de 6 biti ale codului.
Acestea formeaz mulimea de secvene admisibile i decodorul trebuie s
determine care din ele a fost codat i expediat.
Tabelul alturat d msura coincidenei pentru cele 8 secvene de 6 biti valide.

Intrare
000
001
010
011
100
101
110
111

Secventa
de cod
valid
000000
000011
001111
001100
111110
111101
110001
110010

Secventa
primit

111100

167
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Potrivirea Distana
de bii
Hamming
2
0
2
4
5
5
3
3

4
6
4
2
1
1
3
3

Fie secvena recepionat 111100. Vizibil imediat, ea nu este printre secvenele


admisibile. Cum se poate decoda aceast secven? Sunt dou modaliti de a o
interpreta:
1. Se poate compara secvena sosit cu fiecare din secvenele admisibile i se
poate reine dintre ele aceea situat la cea mai mic distan Hamming fa
de secvena de decodat.
2. Se poate evalua repetat corelaia ntre secvena primit i fiecare dintre
secvenele admisibile. Se reine secvena admisibil cea mai strns corelat
cu secvena primit prin canal.
Primul procedeu se afl n spatele decodrii prin decizii cunoscute n literatur
ca decizii hard. Al doilea procedeu apartine de decodarea prin decizii soft.
Coincidena biilor sau distana Hamming ca i produsul scalar ntre secvena
primit i cuvintele admisibile dau adesea un rspuns ambiguu. Pe baza unui
rspuns ambiguu nu se poate decide care anume secven s-a expediat prin
canal.
Pe de alt parte, pe msur ce numrul biilor codai crete, volumul calculelor
necesare pentru decodare crete, astfel c nu pare a fi practic vreuna din aceste
modalitti de abordare a decodrii. Se cer metode mai eficiente, care s nu
examineze chiar toate variantele i s fie capabile a rezolva ambiguitile de
genul rspunsului dublu, cum se poate vedea n tabelul de mai sus.
Dac este primit un mesaj de lungime s, atunci numrul de secvene codate
posibile este de 2s. Problema care cere rezolvare n primul rnd este cum se
poate face decodarea fr a verifica fiecare din aceste 2s secvene.
Ideea de baz este tratarea problemei decodrii n manier secvenial.
Decodarea secvenial propriu-zis a fost una dintre primele metode propuse
pentru decodarea secventelor de biti codate convolutional. n prima ei variant,
decodarea secvential a fost propus de Wozencraft. Ulterior, Fano a oferit o
versiune ameliorat.
Decodarea secvential poate fi explicat destul de bine printr-o analogie.
Ctre o destinatie anume pot fi parcurse mai multe drumuri divizate n etape.
Etapele acestea sunt marcate prin jaloane (landmarks). Persoana care a jalonat
variatele parcursuri n-a fcut o treab perfect astfel nct din cnd n cnd
marcajul nu poate fi recunoscut: cnd i cnd, drumul urmat pare a fi greit i
deoarece alte jaloane nu sunt vizibile, simmntul erorii se accentueaz.
Nesigurana aceasta ndeamn la a merge napoi pe drumul deja parcurs pn
cnd un punct de ramificaie anterior ofer alternativa unui alt drum pe care se
vd alte noi jaloane. Revenirea poate fi practicat de mai multe ori n raport cu
ct de bune au fost direciile alese pn la un anumit moment. n cele din urm
se atinge destinaia.
n decodarea secvential, drumul ctre secvena originar se parcurge similar.
n orice moment se poate renuna la o portiune de drum i se poate reveni
pentru a urma o alt variant. Faptul important este acela c de fiecare dat se
parcurge un drum i numai unul.

168
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Decodarea secvenial permite deplasarea nainte i napoi pe un graf spalier


(trellis). Decodorul reine deciziile sale ntr-o memorie, inclusiv cnd decide la
modul ambiguu. Dac numrul deciziilor ambigue crete dincolo de un anumit
prag, decodorul renun la acel drum i revine la ultimul, cel mai recent punct
de ramificatie pn la care deciziile sunt mai puine dect pragul menionat.
Un exemplu: Fie codul (2, 1, 4), cel cu care am fcut mai devreme codarea
secvenei de biti 1011000, cu ultimii trei biti folosii pentru purjare. Biii acetia
se mai numesc i bii de final trail bits.
Dac nu apare vreo eroare, secvena recepionat ar trebui s fie 11 11 01 11 01
01 11, dar se recepioneaz 01 11 01 11 01 01 11. A aprut o eroare: primul bit
primit este un 0 i nu un 1 cum ar fi trebuit. La decodare, eroarea trebuie
corectat. Iat n continuare o descriere a modului cum lucreaz decodorul n
varianta care foloseste un algoritm secvenial analog n bun msur cu cel
schiat pentru cazul parcursului jalonat.
Decodarea prin algoritmul de decodare secvenial. Decodorul secvential are
un contor de erori. Primele operatii sunt cea de setare la zero a acestui contor i
cea de atribuire a unei valori prag pentru numrul de erori, n cazul de fat 3, pe
baza statisticii canalului. Apoi:
1. Decodorul primeste primii doi biti, 01. Prin consultarea tabelului de mai sus
(cel cu tranzitiile codorului i bitii de cod generati), sesizeaz existenta unei
erori: bitii primi nu pot fi dect 00 sau 11. Dar care dintre cei doi biti este
eronat? Decodorul alege arbitrar 00 pentru nceput (eroare pe bitul al
doilea). La 00 corespunde bitul de intrare 0. Depune un 1 n contorul de
erori.
Biti la intrare: 01

11

01

11

000

Retur

001
S t r i

01

010
011
100
101
110
111
Decizii: 1

4,5

2. Decodorul preia urmtorii doi biti, 11. Prin consultarea aceluiasi tabel,
decide c un 1 a fost trimis spre codare, ceea ce corespunde exact cu unul
din cuvintele de cod. Contorul de erori rmne neschimbat.
3. Bitii receptionati n continuare sunt 01. Alegerile posibile pentru cuvntul
de cod sunt 11 sau 00. Apare o nou eroare i contorul de erori este
incrementat cu 1. Contorul de erori contine deocamdat o valoare tot mai

169
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

mic dect valoarea de prag 3. Decodorul poate continua avansul pe aceiai


rut.
4. Decodorul selecteaz arbitrar ramura superioar (un 0 s-a codat i codul lui
s-a expediat prin canal). Aici recunoate o alt eroare deoarece bitii primiti
sunt 11, iar alegerile admise ale cuvntului de cod sunt 10 sau 01. Contorul
de erori creste la 3 ceea ce arat c decodorul trebuie s fac drumul napoi.
Biti la intrare: 01

11

01

11

01

000

S t r i

001
Retur

010
011
100
101
110
111
Decizii: 1

4,5

5. Decodorul revine la punctul de decizie nr.3 unde contorul de erori era mai
mic dect pragul 3 i face cealalt alegere. ntlneste din nou o conditie de
eroare. Bitii receptionati sunt 11 dar cuvintele de cod posibile sunt 01 i 10.
Contorul de erori ajunge din nou la 3. Decodorul se ntoarce din nou din
drum.
6. Ambele ramuri posibile din punctul nr.3 au fost epuizate. Decodorul trebuie
s mearg nc mai napoi, la punctul nr.2. Dac urmeaz ramura
neexplorat nc, contorul de erori ajunge din nou la pragul 3. De aceea,
decodorul trebuie s mearg nc mai napoi, la punctul de decizie nr.1.
Biti la intrare: 01

11

01

11

000
Retur

S t r i

001
010
011
100
101
110
111
Decizii: 1

Retur
2

170
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

7. Din punctul 1, ntreaga secven de alegeri care urmeaz se potrivete cu


cuvinte valide i decodorul decodeaz cu succes mesajul 1011000.
Biti la intrare: 01

11

01

11

01

01

11

000

S t r i

001
010
011
100
101
110
111
Decizii: 1

Necesarul de memorie pentru decodarea secvenial este relativ uor de acoperit


i astfel aceast metod este utilizabil chiar i pentru coduri cu restrictia de
lungime mare, cnd raportul semnal/zgomot este redus.
Multe legturi de comunicare cu misiunile interplanetare NASA au utilizat
codurile convoluionale cu decodare secvenial.
Decodarea maximum verosimil (decodarea Viterbi). Metoda Viterbi este
cea mai cunoscut metod de decodare din clasa celor calificate ca fiind cu
verosimilitate maxim. Metoda are meritul de neignorat c numrul opiunilor
de parcurs se reduce sistematic aproape la fiecare etap. Condiiile ipotetice
exploatate pentru reducerea numrului de alegeri sunt:
1. Erorile apar rar, probabilitatea apariiei lor este redus.
2. Probabilitatea apariiei a dou sau a mai multor erori n succesiune contigu
este mult mai mic dect probabilitatea unei singure erori, izolate. Cu alte
cuvinte, erorile nu sunt grupate, ci sunt distribuite aleator.
Un decodor Viterbi examineaz o nteag secven recepionat, de o lungime
dat. Decodorul calculeaz o metric pentru fiecare drum din graful spalier i
decide pe baza acestei metrici. Sunt urmate toate drumurile admisibile pn
cnd cel putin dou dintre ele ajung ntr-un acelai nod. Aici, un drum cu
metrica mai bun este reinut, un drum cu metrica mai slab este respins.
Drumurile rmase dup aceste selecii sunt numite drumuri supravieuitoare.
La lungimea de N bii, numrul total de secvene posibile este 2N. Dintre acestea
numai 2kL sunt secvene valide. Pentru a limita compararea la numai 2kL
drumuri supravieuitoare, n loc de a verifica toate cele 2 N drumuri, algoritmul
Viterbi aplic principiul verosimilitii maxime.
Metrica cea mai folosit este distana Hamming. Exist ns i alte metrici care
pot fi utilizate n decodarea Viterbi.
n cazul n discuie (rata codului 1/2), se evalueaz distanele Hamming ntre
perechile de simboluri (binare) recepionate i perechile posibile/admisibile n

171
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

raport cu starea curent a codului. Pentru fiecare ramificatie, metrica aceasta nu


poate fi dect 0, 1 sau 2.
Metricile evaluate pas-cu-pas sunt acumulate pentru fiecare parcurs, aa nct n
orice moment decizional este reinut drumul cu cea mai mic valoare a metricii
cumulate.
Acum, algoritmul Viterbi n aciune:
Se decodeaz secvena recepionat 01 11 01 11 01 01 11, aceeasi ca mai sus.
1. La t = 0 se recepioneaz biii 01. Decodorul pornete totdeauna din starea
000. Din acest punct sunt dou ramuri admisibile, la starea 000 i la starea
100, dar nici una nu duce la generarea biilor primii de decodor. Decodorul
evalueaz metrica celor dou ramuri i continu s urmreasc concomitent
evoluia pe ambele ramuri. Metrica ambelor ramuri este 1, ceea ce nseamn
c numai unul din cei doi bii admisibili se potrivete cu unul din biii sosii.
i graful spalier, i tabelul nsoitor redau calculele de etap.
Biti la intrare: 01
000

Metrici
1

S t r i

001
010
011
100

101
110
111

Starea de plecare9
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

0 0
00 11
01
1 1
0 4

2. La t = 1, decodorul ramific cele dou stri posibile ctre patru stri.


Metricile ramurilor sunt calculate prin compararea bitilor sositi la decodare,
11, cu perechile admisibile. Noile metrici (cumulate) sunt nscrise n partea
dreapt a desenului. Metricile de etap sunt nscrise i n tabelul nsoitor.

De aici i pn la finalul decodrii se foloseste reprezentarea strilor n octal.

172
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Biti la intrare: 01

11

Metrici

000

S t r i

001
010

011
100

101
110

111

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

0 0 4 4
00 11 11 00
11
2 0 0 2
0 4 2 6

3. La t = 2, cele patru stri tranziteaz la opt stri pentru a evidenia toate cile
posibile. Metricile cilor pentru biii 01 sunt calculate i adugate metricilor
de la momentul anterior t = 1.

S t r i

Biti la intrare: 01

11

01

Metrici

000

001

010

011

100

101

110

111

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

0 0 2 2 4 4 6 6
00 11 10 01 11 00 01 10
01
1 1 2 0 1 1 0 2
0 4 1 5 2 6 3 7

4. La t = 3, spalierul este deplin populat. Fiecare nod/stare are cel puin un


drum care soseste n el/ea. Metricile cumulate apar n figur.

173
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

5. La t = 4, drumurile se prelungesc i ncep s fie convergente ntr-un acelasi


nod. De acum metricile cumulate evaluate pentru fiecare drum sunt un
criteriu de eliminare a unora dintre ele. Aplicarea principiului verosimilittii
maxime n fiecare nod face posibil (n cazul cnd valorile sunt clar diferite)
renunarea la drumuri cu metrica Hamming mai mare deoarece un astfel de
drum este mai puin probabil dect unul cu metrica mai mic. Renunarea la
unele drumuri nseamn o reducere a numrului de ci de examinat. n
aceasta const de fapt tria metodei Viterbi.

S t r i

Biti la intrare: 01

11

01

11

Metrici

000

6,3

001

3,4

010

4,3

011

3,6

100

4,5

101

3,4

110

6,2

111

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire
Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

3,6

0 0 1 1 2 2 3 3
00 11 11 00 10 01 01 10
11
2 0 0 2 1 1 1 1
0 4 0 4 1 5 1 5
4 4 5 5 6 6 7 7
11 00 00 11 01 10 10 01
11
0 2 2 0 1 1 1 1
2 6 2 6 3 7 3 7

n etapa curent, ca i mai departe, metricile colorate n rou sunt cele care
sunt suportul deciziilor de eliminare a unor drumuri. Drumurile eliminate
sunt i ele colorate n rosu.

174
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

S t r i

Biti la intrare: 01

11

01

11

01

Metrici

000

4,4

001

5,3

010

5,4

011

2,5

100

4,4

101

3,3

110

5,4

111

4,3

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire
Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

0 0 1 1 2 2 3 3
00 11 11 00 10 01 01 10
01
1 1 1 1 2 0 0 2
0 4 0 4 1 5 1 5
4 4 5 5 6 6 7 7
11 00 00 11 01 10 10 01
01
1 1 1 1 0 2 2 0
2 6 2 6 3 7 3 7

6. La t = 5, drumurile se prelungesc din nou cu nc un pas de timp i se


evalueaz noi metrici. Din nou se rein drumurile cu metrici minime.

S t r i

Biti la intrare: 01

11

01

11

01

01

Metrici

000

5,4

001

6,2

010

5,4

011

4,5

100

5,4

101

4,4

110

5,4

111

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming

6,3

0 0 1 1 2 2 3 3
00 11 11 00 10 01 01 10
01
1 1 1 1 2 0 0 2

175
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Starea de sosire
Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

0 4 0 4 1 5 1 5
4 4 5 5 6 6 7 7
11 00 00 11 01 10 10 01
01
1 1 1 1 0 2 2 0
2 6 2 6 3 7 3 7

7. La t = 6, biii recepionai sunt 11. Din nou sunt calculate metricile pentru
fiecare drum. Se elimin drumurile cu metricile cumulate mai mari, se
menin ambele drumuri convergente ntr-un nod dac metricile lor cumulate
sunt egale.

S t r i

Biti la intrare: 01

11

01

11

01

01

11

Metrici

000

6,2

001

5,5

010

4,6

011

5,4

100

4,4

101

5,5

110

6,4

111

Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire
Starea de plecare
Biti admisibili
Biti primiti
Distanta Hamming
Starea de sosire

5,4

0 0 1 1 2 2 3 3
00 11 11 00 10 01 01 10
11
2 0 0 2 1 1 1 1
0 4 0 4 1 5 1 5
4 4 5 5 6 6 7 7
11 00 00 11 01 10 10 01
11
0 2 2 0 1 1 1 1
2 6 2 6 3 7 3 7

La pasul acesta graful spalier este parcurs complet; nu mai sunt perechi de
biti recepionate care s fie decodate. ntr-o procedur a parcursului invers,
se examineaz graful i se retine drumul cu cea mai mic metric.
Drumul trasat prin strile 000, 100, 010, 101, 110, 011, 001, 000 este cel
care corespunde secvenei decodate 1011000.

176
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

S t r i

Biti la intrare: 01

11

01

11

01

01

11

Metrici

000

001

010

011

100

101

110

111

Lungimea acestui graf spalier (legat de durata decodrii) este de 4 + m bii.


Poate c ar fi ideal ca lungimea acestui drum s fie legat strict de lungimea
mesajului codat. n acest caz, la mesaje mai lungi ar fi necesar o memorie mai
mare, fapt care ar putea deveni neconvenabil. Printr-un proces de fragmentare,
necesarul de memorie poate fi redus i decodarea nu trebuie ntrziat pn la
finalul secvenei transmise. Lungimea tipic utilizat este de 128 de bii sau de
5 pn la 7 ori restricia de lungime.
Decodarea Viterbi este important i pentru c se aplic i la decodarea unor
coduri bloc.
Forma de graf-spalier este utilizat i la modularea codat pe spalier (TCM
Trellis-Coded Modulation).
Decodarea prin decizii soft. Spectrele de valori ale celor dou semnale
utilizate pentru a reprezenta pe 0 i pe 1 pot face procesul decizional dificil
cnd acele semnale sunt corupte de perturbatii. Semnalul este difuz i energia
unuia se scurge ctre cellalt. Figurile urmtoare ilustreaz cazuri cu valori
diferite ale raportului semnal/zgomot. Dac zgomotul este redus (cantitativ:
variana lui este mic), difuzarea energiei este i ea redus. Intuitiv, se poate
bnui c erorile decizionale sunt mai mari dac raportul semnal/zgomot este
mai mic.
Figurile reprezint cele dou semnale care reprezint biii 1 i 0 la un raport
semnal/zgomot foarte mare, apoi distributia tensiunilor la un raport
semnal/zgomot de 12 dB i, n final, distribuia tensiunilor la un raport
semnal/zgomot de 6 dB. Se observ numaidect proporia scurgerii de energie
de la o regiune de decizie la alta.
O elabora o decizie hard nseamn a avea un prag de decizie simplu, care este
situat uzual ntre cele dou semnale, ales astfel ca o diferen pozitiv sau
negativ fat de acel prag s fie interpretat ca 0 sau ca 1.

177
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

DISTRIBUTIA TENSIUNILOR LA S/Z FOARTE MARE


40
20
0
-3

-2

-1

DISTRIBUTIA TENSIUNILOR LA S/Z = 12 dB


1
0.5
0
-3

-2

-1

DISTRIBUTIA TENSIUNILOR LA S/Z = 6 dB


1
0.5
0
-3

-2

-1

0
volti

n termeni rezumativi cam aceasta nseamn decodarea maximum verosimil.


Eroarea fcut se poate cuantifica cu acest mod de a decide. Probabilitatea de
inversare a bitilor este reprezentat de ariile comune de sub curbele din figurile
de mai sus. Zona de sub 0 volti reprezint energia care aparine semnalului
asociat cu bitul 1; zona de peste 0 volti se situeaz n zona care aparine
semnalului asociat cu valoarea binar 0.
Dac se trimite prin canal un 1, probabilitatea ca el s fie decodat ca 0 este
1
A vt
Pe1 erfc

2
2
cu vt tensiunea prag de decizie, 0 n cazul de fa, cu 2 variana zgomotului sau
puterea lui. Funcia erfc este cunoscuta functie de eroare (error function).
Relatia aceasta se poate rescrie i ca
S
1

Pe1 erfc

2
Z

Aceasta este relatia familiar pentru rata biilor eronai. Se admite c decizia
hard este cea adoptat.
Dar ce se ntmpl dac s-ar proceda altfel: n loc de dou regiuni decizionale sar mpri intervalul de tensiuni n patru regiuni decizionale?

178
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

PATRU REGIUNI DE DECIZIE


0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
-4

-3

-2

-1

0
volti

Arii-probabilitti: 0.5793

0.2621

0.1227

0.0359

Aceste regiuni de decizie n numr de patru trebuie s delimiteze sub curbele de


repartiie arii ct mai egale. Probabilitatea ca decizia s fie corect sau incorect
se calculeaz din aceste arii de sub curbele gaussiene asociate valorilor 0 i 1.
Dac se definesc patru regiuni:
Regiunea 1, tensiunea msurat la recepie este mai mare dect 0,8V
Regiunea 2, tensiunea recepionat este mai mare dect 0V dar mai mic
dect 0,8V
Regiunea 3, tensiunea recepionat este mai mare dect 0,8V dar mai mic
dect 0V
Regiunea 4, tensiunea observat la recepie este mai mic dect 0,8V.
ntrebare: dac tensiunea observat la recepie este n regiunea 3, care este
probabilitatea de eroare dac s-a trimis prin canal un 1?
Cu decizia hard rspunsul este facil: probabilitatea aceasta poate fi calculat din
ecuatia dat mai sus.
Cum se calculeaz probabiliti similare pentru cazul deciziei pe mai multe
regiuni?
Se utilizeaz funcia de repartiie normal particularizat cu mediile i dispersia
tensiunilor observate la iesirea din canal. Dac funcia (densitate) de
probabilitate a unei variabile aleatoare de medie i dispersie (varian) 2 este

179
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

( x )2

1
2
f(x) =
e 2
2
atunci functia de repartiie (de probabilitate cumulat) este

F(x) =

f (t )dt

i este tabelat n surse bibliografice diverse sau se poate calcula (recurgnd de


pild la funcia Matlab consacrat). Probabilitatea asociat unui interval (a, b)
se calculeaz cu relatia
b

Pr[a < x b] =

f (t )dt

= F(b) F(a)

Pentru partiionarea axei reale n patru regiuni prin punctele de delimitare a


zonelor de decizie 0,8, 0 i 0,8, pentru un raport semnal/zgomot = 1 i mediile
celor dou tensiuni 1V, calculul decurge ca mai jos. S-a presupus c nivelurile
corespunztoare lui 0 i 1 sunt echiprobabile (probabilitti apriori egale, cum se
spune), ceea ce este valabil n general, cu exceptia semnalelor radar unde
probabilittile apriori sunt de obicei necunoscute. Probabilitile de apartenen
a tensiunilor observate la o zon sau alta, conditionate de bitul transmis sunt
date n tabelul alturat.
Bit trimis
0
1

Regiunea 1
0,5793
0,0359

Regiunea 2
0,2621
0,1227

Regiunea 410
0,0359
0,5793

Regiunea 3
0,1227
0,2621

Acest proces de decizie prin divizarea n mai mult de dou prti a spaiului
decizional este cunoscut ca proces de decizie soft. Probabilitile de genul celor
din tabel, reprezentate i n graf sunt numite i probabilitti de tranziie. Sunt
valori ale tensiunii cu 4 apartenene posibil diferite pentru fiecare semnal
recepionat care servete la elaborarea deciziei.
Ca i n viaa real, i n cazul semnalelor mai mult informaie nseamn
decizii mai bine fundamentate. Deciziile soft mresc sensibilitatea metricilor
folosite la decodare i amelioreaz performana cu pn la 3 dB n cazul unei
decizii soft pe 8 niveluri.
0

0,05
0,04

0,12

0,26

0,26

10

0,12

0,95

0,56
0,95

0,58

0,05

0,04

Numerotarea regiunilor se face de la dreapta spre stnga.

180
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Graful probabilitilor condiionate de a decoda un 0 sau un 1


n functie de tensiunea observat, cnd acea tensiune
este cuantizat pe 4 niveluri sau pe 2 niveluri.
Pentru a defini o metric pentru decizia soft se completeaz mai nti un tabel
de probabilitti n genul celui de mai sus. Se ia apoi logaritmul fiecreia din ele
i se normalizeaz astfel nct una din valori s fie 0. Dup oarecare manipulare
aritmetic se obtine tabelul:
Bit trimis
0
1

Regiunea 1 Regiunea 2 Regiunea 3 Regiunea 4


0
0,79
1,55
2,78
2,78
1,55
0,79
0

n seciunea care se refer la decodarea hard s-a utilizat o metric Hamming.


Acelasi lucru se execut i acum cu deosebirea c n loc s se primeasc 0 i 1,
se recepioneaz tensiuni. Decodorul caut metrica pentru acea tensiune n
tabelul disponibil n memorie i face calcule asemntoare.
De pild, admind c s-a observat perechea de tensiuni (v3, v2) i cuvintele de
cod permise sunt 01, 10, se evalueaz:
metrica pentru 01: Pr[0|v3] + Pr[1|v2];
metrica pentru 10: Pr[1|v3] + Pr[0|v2].
Aceste dou valori arat care din cele dou succesiuni de biti, 01 sau 10 este
mai probabil.
Cnd metricile acestea se adun, suma exagereaz ntructva diferenele ntre
drumurile din spalier, ceea ce faciliteaz decizia.
Raportul log-likelihood. Sunt multe posibiliti de a ameliora performana la
decodare prin alegerea metricilor.
O metric mult utilizat este metrica log-likelihood (logaritmul probabiltilor).
Aceasta ia n considerarea probabilitatea de eroare introdus de canal, 0 p
0,5, n raport cu care se definesc
o metric a concordantei = log[2(1 p)],
o metric a discordantei = log(2p) i
1 p
0 , nul n cazul n care concordana i
o metric sintetic L log
p
discordana coincid (p = 0,5).
Algoritmul lui Fano pentru decodarea secvenial utilizeaz aceast metric.
Metrica log-likelihood asigur o sensibilitate apreciabil a algoritmului (soft) de
decodare.
Dou aspecte cer o atenie special: independena statistic a valorilor
tensiunilor observate la iesirea din canal i cunoaterea parametrilor
zgomotului.

181
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Prima problem care poate influenta negativ eficiena decodrii se rezolv prin
operatii de intercalare-deintercalare care fac msurtorile succesive temporar i
artificial deprtate cu o decorelare notabil dac nu total.
Problema a doua se poate rezolva recursiv. J.Hagenauer i P.Hoeher (1989)
propun un asemenea algoritm recursiv de actualizare a parametrilor statistici ai
perturbatiilor, pe baza observaiilor curente.

182
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Anexa 1: COMPLEMENTE DE TEORIA PROBABILITTILOR


I DE STATISTIC MATEMATIC
ntreaga teorie a generrii, transmiterii i stocrii informatiei face apel la
elemente de teoria probabilittilor i de statistic matematic. Aceste elemente
sunt predate uzual la disciplinele matematice, poate mai teoretic i mai bogat n
unele aspecte, uneori cu un decalaj temporal nepotrivit fat de necesittile
acestui curs. Aici sunt date/reluate unele elemente mai specifice dar strict
necesare n tratarea cantitativ a informatiei.
Spatiul evenimentelor
Un experiment oarecare, n particular observarea unei surse de informatie poate
avea rezultate diverse. Aceste rezultate sunt numite evenimente.
Aria exemplelor posibile este foarte cuprinztoare. De aceea s ilustrm
problema cu dou exemple din zona jocurilor. Astfel, rostogolirea unui zar
perfect pe o suprafat plan poate avea ca rezultat aparitia pe faa de deasupra a,
s spunem, cinci puncte. S-a produs asadar evenimentul aparitiei deasupra a
fetei cu cinci puncte i sunt ase asemenea evenimente. Tot aa, n spiritul
definitiei de mai sus, extragerea valetului de cup dintr-un pachet de crti de joc
complet i bine amestect este un eveniment i sunt n total 52 de astfel de
evenimente. De retinut contributia hazardului la producerea unuia sau altuia
dintre evenimente.
Fie E multimea tuturor evenimentelor posibile relativ la un experiment. Pentru
multimea E se utilizeaz i termenul de spaiu al evenimentelor. Evenimentele
unui astfel de spatiu se pot gsi n anumite relatii, iar cu evenimentele acelui
spatiu se pot face unele operatii.
O relatie posibil ntre evenimente este aceea de implicatie. Implicatia se
noteaz A B i se citeste evenimentul A implic evenimentul B, ceea ce
nseamn c producerea evenimentului A conduce la producerea sigur,
automat a evenimentului B; implicatia reciproc, A B i B A este un
mod de a exprima egalitatea (echivalena) celor dou evenimente.
ntre operatiile cu evenimente sunt de retinut deocamdat trei: una din ele este
unar n sensul c implic un singur argument, celelalte dou sunt binare, adic
implic dou argumente.
Operatia de luare a contrarului unui eveniment dat este unar, opereaz cu un
singur eveniment. Reuniunea i intersectia de evenimente sunt operatii binare,
implic n forma elementar, definitorie dou evenimente.
Luarea contrarului unui eveniment const n a specifica acel eveniment care se
produce cnd nu se produce evenimentul al crui contrar se exprim. Dac

183
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

evenimentul asupra cruia se opereaz este A atunci evenimentul contrar este


notat cu A . De ce contrar se va explica dup definirea celor dou operatii
binare mentionate mai devreme.
Reuniunea a dou evenimente se noteaz A B i este evenimentul care
const n producerea cel putin a unuia din cele dou evenimente.
Intersectia a dou evenimente se noteaz A B i este evenimentul care
const n producerea ambelor evenimente.
Exist dou evenimente speciale care se includ n multimea E. Unul este
evenimentul imposibil, notat cu , i cellalt este evenimentul sigur notat cu E
(alteori cu ). Evenimentul imposibil nu se produce niciodat, evenimentul
sigur se produce de fiecare dat.
O relatie de forma A B exprim incompatibilitatea reciproc a dou
evenimente, adic producerea unuia exclude producerea celuilalt.
Acum se poate formula mai precis raportul dintre un eveniment i contrarul lui:
A A , A A E . Cu alte cuvinte un eveniment este incompatibil cu
contrarul su, producerea unui eveniment sau a contrarului su este sigur. Este
momentul s se aduc precizarea c contrarul contrarului unui eveniment este
acel eveniment. Simbolic: A A .
Multimea E este partial ordonat i relatia de ordine este implicatia. Multimea E
mpreun cu operatiile de luare a contrarului unui eveniment, de reunire i de
intersectare a evenimentelor se organizeaz ca o algebr boolean.
ntre evenimentele dintr-o multime E se disting atomi sau evenimente
elementare i evenimente compuse. De pild, prin aruncarea zarului se pot
produce ntre altele evenimentele A2 i A5 care constau n aparitia pe fata de
deasupra, a numrului de puncte trecut ca indice. Ambele sunt atomi sau
evenimente elementare n sensul c nu sunt alte evenimente nc mai simple
dect ele. Reuniunea A2 A5 este ns un eveniment compus.
Fie acum mulimea evenimentelor elementare dintr-o multime finit E de
evenimente. Evident . O submultime de prti ale lui , K P() se
organizeaz ca un corp dac
A K A K
A, B K A B K
A, B K A B K
n aceste coditii perechea (, K) este un corp de evenimente i este un -corp
sau corp borelian dac orice reuniune sau intersectie de evenimente din K, finite
sau infinite apartin multimii K.
ntr-un spatiu E complet i atomic, orice eveniment A se poate scrie ca o
reuninune de elemente din
A i
i

184
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

O multime de evenimente Ai K (i = 1, 2, , n) mutual incompatibile, altfel


spus care satisfac relatiile Ai A j pentru Ai , A j K cu i j , este o
partitie a unui eveniment A K dac
n

A A
i

i 1

Dac A = atunci evenimentele Ai K (i = 1, 2, , n) cu propriettile


mentionate alctuiesc un sistem complet de evenimente.
Din cele expuse pn acum, se observ prezena multor elemente de scriere
similare cu cele din teoria multimilor. Este o observatie corect n principiu,
numai c semnificatia i lectura relatiilor scrise este diferit aici fat de aceea
din cazul multimilor.
Probabilitti, probabilitti conditionate
Pe multimea evenimentelor din corpul K se defineste o functie real P, numit
probabilitate, care are propriettile:
1. P( A) 0 pentru A K
2. P() = 1
3. P Ai P ( Ai ) pentru Ai K i Ai A j dac i j
Dac ultima proprietate are loc i pentru reuniuni numerabile, atunci
probabilitatea P se numeste complet aditiv (sau aditiv) pe corpul (borelian)
de evenimente (, K).
Tripletul (, K, P) se numeste cmp (borelian) de probabilitate. Dac este o
multime finit, atunci (, K, P) este un cmp de probabilitate discret.
Din propriettile fundamentale de mai sus deriv alte cteva proprietti
importante ale probabilittii P. Astfel
4. Probabilitatea evenimentului imposibil
P() 0
5. Relatia dintre probabilittile evenimentelor contrare
P ( A) 1 P ( A )
6. Probabilitatea evenimentului diferent, A B A B
P ( A B ) P ( A) P ( A B )
7. Limitele inferioar i superioar a valorilor functiei P, functia probabilitate
0 P ( A) 1
8. Probabilitatea evenimentului AB ( A B) ( B A) , numit diferent
simetric
P ( AB) P( A) P( B) 2 P( A B )
9. Probabilitatea reuniunii a dou evenimente oarecare
P ( A B ) P ( A) P ( B ) P ( A B )
O extindere a relatiei ultime pentru reuniunea a n evenimente oarecare este

185
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

n n
P Ai (1) j 1 S j cu S j P ( Ai1 ... Ai j ) j n .
i1 ,i 2 ,...,i j n
i 1 j 1
Dac F Ai iI este o familie numerabil de evenimente mutual exclusive

atunci P Ai 0 . Dac familia F Ai iI este i exhaustiv, adic este un


iI

sistem complet de evenimente, atunci P Ai 1 .


iI
Evenimentele se pot afla n relatie de condiionare reciproc n sensul c un
eveniment odat produs poate modifica probabilitatea de producere a altui
eveniment. Relatia de baz pentru calculul probabilittilor condiionate este
PB ( A) P( A / B) P( A B) / P( B)
cu evenimentul B care conditioneaz producerea evenimentului A trecut ca
indice sau pe pozitia a doua n argumentul functiei probabilitate.
n general,
p( A / B) P( A) i P ( B / A) P( B)
ceea ce indic o dependen, o conditionare ntre cele dou evenimente. Dac
are loc egalitatea n ambele relatii atunci evenimentele sunt independente.
Dac probabilitatea unei intersectii finite de evenimente este nenul
n
P Ai 0
i 1
atunci probabilitatea respectiv se poate calcula cu formula
n 1
n

P Ai P An / Ai P ( A2 / A1 ) P ( A1 )
i 1
i 1

care se demonstreaz inductiv pornind de la relatia de conditionare pentru dou


evenimente.
Dac ( Ai )i 1, n este o partitie a cmpului atunci probabilitatea unui eveniment
oarecare se poate calcula cu relatia
n

P ( A) P( Ai ) P( A / Ai )
i 1

cunoscut ca formula probabilittii totale.


Mai este de reinut formula lui Bayes
n

P ( Ai / A) P( Ai ) P( A / Ai ) / P( Ai ) P( A / Ai )
i 1

care n aceleai conditii, ( Ai )i 1, n o partiie a cmpului , permite calculul


probabilittii fiecrui eveniment al partiiei, condiionat de producerea
evenimentului A K , altfel oarecare.
Variabile aleatoare

186
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

O variabil aleatoare este o functie X : R cu proprietatea


{ X x} { / X ( ) x} K , x R
O variabil aleatoare simpl ia numai un numr finit de valori. De exemplu
funcia indicator a unui eveniment A K
0 A
A
1 A
este o variabil aleatoare simpl care ia dou valori, 0 i 1.
Dac X este o variabil aleatoare definit pe cmpul (, K, P), atunci pentru
oricare dou valori x1 , x2 R, x1 x2 toate intervalele finite sau infinite
delimitate de cele dou valori corespund unor evenimente din K i, prin
generalizare, pentru orice multime I reuniune de intervale din R, se poate
calcula probabilitatea PX ( I ) P[ X ( ) I ] P[ X 1 ( I )] . Probabilitatea PX(I)
reprezint distributia de probabilitate a variabilei aleatoare X. Se poate vorbi
despre PX i ca despre o probabilitate definit pe cmpul (R, KX) n care
K X I R / X 1 ( I ) K .
Dac variabila aleatoare X ia valori ntr-o mulime cel mult numerabil
{xi / xi R , i I , I N }
atunci ea se numeste variabil aleatoare discret i
PX ( xi ) 1

iI

PX ( J ) PX ( xi ) J K X
xi J

Dac X variaz continuu pe un interval I K X atunci


PX ( I ) f X ( x )dx
I

i este o functie absolut continu de x. Functia fX(x) este densitatea de


probabilitate sau densitatea de repartiie a variabilei aleatoare X, este
nenegativ pentru orice x real i are proprietatea

( x ) dx 1

Se numete functie de repartiie a variabilei aleatoare X functia


FX ( x ) P[ X ( ) x ] PX [( , x )]
Functia de repartitie este nedescresctoare pe ntreaga ax real
a b FX ( a ) FX (b) a ,b R
i este continu la stnga n fiecare punct
lim
FX ( x ) FX (a ) a R
x a, x a
Valorile minim i maxim ale unei functii de repartitie sunt date respectiv de
lim
lim
x FX ( x) 0 i x FX ( x) 1

187
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Eventualele discontinuitti sunt de specia prim i sunt cel mult numerabile.


Reciproc, orice functie cu propriettile de mai sus poate fi pus n
corespondent cu un cmp de probabilitate.
Pentru o variabil aleatoare discret are loc relatia
FX ( x ) PX ( xi )
xi x

i functia de repartiie este o functie n scar, iar pentru o variabil aleatoare


continu
x
d
FX ( x )
FX ( x) f X ( x)dx i f X ( x)
dx

Pentru orice interval [ a , b) R


PX {[a , b)} FX (b) FX (a )
i dac variabila este de tip continuu
PX ( a ) 0
Se noteaz cu V(, K, P) multimea tuturor variabilelor aleatoare definite pe
cmpul de probabilitate (, K, P). Dac X , Y V (, K , P) atunci suma,
produsul celor dou variabile aleatoare, modulul, puterea, n general o functie
msurabil Borel de oricare dintre ele sunt toate variabile aleatoare din
multimea V(, K, P). Ori de cte ori nu este pericol de confuzie, variabila
aleatoare trecut ca indice al functiei de repartitie sau al fuctiei de densitate de
repartitie se poate omite.
Dac se reia exemplul foarte frecventat n manualele de teoria probabilittilor,
cel al zarului perfect care este fcut la fiecare experient s se rostogoleasc pe
o suprafat plan, orizontal, atunci multimea evenimentelor elementare (atomi)
este alctuit din aparitiile deasupra a celor sase fete, marcate uzual cu unu
pn la sase puncte. Multimea de prti ale lui este alctuit din toate
reuniunile posibile de evenimente elementare la care se adaug evenimentul
imposibil. Multimea K organizat ca un corp de evenimente coincide chiar cu
multimea de prti P(), iar functia numit probabilitate ia valoarea 1/6 pentru
fiecare din evenimentele elementare deoarece fetele zarului au sanse egale de a
aprea deasupra. O variabil aleatoare poate fi chiar numrul de puncte afisat pe
fata de deasupra. n acest caz probabilittile i functia de repartitie se prezint
ca n prima pereche de diagrame care urmeaz i este este vizibil functia n
scar despre care s-a vorbit.
Dar pe acelai cmp de probabilitate se pot defini i alte variabile aleatoare. Pe
cmpul asociat zarului perfect se poate imagina, de pild, functia X : R
definit astfel
1 2 3 4 5 6
1 1,5 3,2 6
8 10,5
i atunci probabilittile i functia de repartitie se prezint diferit, conform
perechii a doua de diagrame din figura urmtoare.

188
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

PROBABILITATI

p(x)

0.5

FUNCTIA DE REPARTITIE

F(x)

0.5

4
x

PROBABILITATI

p(x)

0.5

0
-2

10

10

FUNCTIA DE REPARTITIE

F(x)

0.5

0
-2

6
x

Aadar, multimea V(, K, P) este foarte bogat.


De variabilele aleatoare sunt legate cteva valori remarcabile. Una foarte
important este media

m M ( x)

xf ( x)dx

care face parte din lista nesfrsit a momentelor de diferite ordine ale variabilei,
acesta fiind momentul de ordinul unu.

189
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Similar se poate calcula media unei functii g(x) de variabila aleatoare x

M [ g ( x )]

g ( x) f ( x )dx

i dac g(x) = xr cu r natural, avem tocmai momentul de ordinul r despre care sa amintit.
n cazul particular g ( x ) [ x M ( x )]2 se obtine o alt valoare important
relativ la variabila aleatoare descris de functia de repartitie F(x) sau de
densitatea de repartitie f(x), i anume dispersia. Rdcina ptrat pozitiv a
dispersiei se numeste abatere medie ptratic sau abaterea standard. Dispersia
notat uzual cu este momentul centrat de ordinul doi al variabilei aleatoare,
unul din multiplele momente centrate de ordine diferite ale variabilei.
Nu numai variabilele aleatoare continue au momente, medii, dispersii ci i cele
discrete. n cazul discret, formulele de calcul contin sume n locul integralelor i
variabila parcurge ntreaga list de valori posibile, iar densitatea de repartitie
este nlocuit de probabilittile asociate valorilor pe care variabila le poate lua.
Astfel, media se calculeaz cu relatia
m M ( x ) pi xi
iI

i dispersia, cu relatia

2 pi ( xi m) 2
iI

Pentru media unei functii de variabila aleatoare X, relatia integral de mai sus se
transform n
M [ g ( x)] pi g ( xi )
iI

o relatie de mare utilitate pentru caracterizarea surselor de informatie discrete.


Peste tot, indicele i parcurge multimea de indici I, o multime finit sau
numerabil.
Iat acum cteva legi de repartitie teoretice utilizate n practica inginereasc.
Legea binomial (Bernoulli)
P ( m) Cnm p m (1 p) n m
cu 0 m n i p un numr n intervalul [0,1] este de tip discret. Variabila
aleatoare este m i are media np i dispersia np(1 p). Modelul fizic l
constituie urna cu bile de dou culori, iar evenimentele (compuse) constau n
extragerea repetat a cte unei bile dup care bila extras este reintrodus n
urn. Variabila m reprezint numrul bilelor de o anumit culoare din cele dou,
n n extrageri succesive, conform schemei cu bila returnat. Numrul p
reprezint proportia de bile de acea culoare n urn, cu alte cuvinte
probabilitatea de obtinere la o extragere simpl a unei bile de culoarea
respectiv.
Legea Poisson
m
P(m)
exp( )
m!

190
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

cu > 0 i m natural ca variabil aleatoare. Media variabilei este , dispersia ei


este, de asemenea, . Un modelul fizic l reprezint numrul dezintegrrilor
radioactive, numrul de apeluri telefonice solicitate ntr-o central etc. ntr-un
interval de timp precizat, scurt.
Legea normal (Gauss) care este dat de densitatea de probabilitate
( x m) 2

1
2
f ( x)
e 2
2
n care m este media variabilei x i 2 este dispersia ei. Legea normal este
perceput ca o lege limit pentru sumele de variabile aleatoare. Un fenomen
afectat de foarte multi factori aleatori se prezint de cele mai multe ori ca un
fenomen aleator descris de o lege normal.
Variabilele aleatoare din expunerea teoretic sau din exemplele prezentate mai
sus au fost pn acum simple, adic a fost vorba n toate cazurile de o singur
functie X : R legat de un cmp de probabilitate (, K, P) unic.
Se pot imagina variabile aleatoare cu mai multe componente, variabile aleatoare
sub forma unor vectori cu componente aleatoare definite relativ la un acelai
cmp de probabilitate sau la cmpuri de probabilitate diferite. Astfel legea
urmtoare se refer la o variabil aleatoare vectorial.
Legea normal multidimensional este dat de densitatea de repartitie
1
( x m )T W 1 ( x m )
1
2
f ( x)
e
n

(2 ) 2 det W
cu media m, un vector cu n componente i cu matricea de covariatie W, o
matrice (nxn) pozitiv definit.
Pentru ca exemplul s aib consistenta necesar, trebuie definit mai clar
matricea W. Este de comentat mai nti problema corelatiei a dou variabile
aleatoare care pot fi independente, caz n care valorile pe care le ia una nu
influenteaz n nici un fel valorile pe care le poate lua cealalt, dar pot fi mai
mult sau mai putin dependente ceea ce nseamn c dac una din variabile a luat
o valoare atunci legea de repartitie a celeilalte se modific n functie de acea
valoare a primei variabile.
Fiind date dou variabile aleatoare x i y de medii nule, media produsului lor
M(xy) se numeste covariatie. Dac covariatia este nul se poate spune n general
c cele dou variabile nu sunt corelate. Dimpotriv, dac M(xy) 0 variabilele
sunt corelate, exist o corelatie ntre ele, exist o dependent ntre valorile pe
care ele le iau n sensul artat putin mai devreme. Dac mediile sunt diferite de
zero, afirmatia i definitia se mentin pentru abaterile de la medie. ntruct
covariatia M(xy) poate lua valori foarte diferite, pentru o apreciere cantitativ
mai riguroas a triei corelatiei se utilizeaz coeficientul de corelatie
M ( xy )

M ( x2 ) M ( y2 )
care ia valori numai n intervalul [1, 1] i n expresia cruia se disting
dispersiile celor dou variabile, M(x2) i M(y2). O valoare apropiat de

191
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

extremele intervalului indic o corelatie strns, o valoare apropiat de zero


exprim o corelatie slab.
Componentele unui vector aleator, privite ca variabile aleatoare simple sunt
mutual mai mult sau mai putin corelate. Se defineste ca matrice a covariatiilor
unui vector aleator x media produsului xxT, media produsului acelui vector
(coloan) cu transpusul su. Se obtine o matrice ptrat simetric care are pe
diagonal dispersiile individuale ale componentelor. Aceasta este matricea W
utilizat n expresia densittii de repartitie a variabilei aleatoare normale
multidimensionale din exemplul de mai sus. Dac matricea covariatiilor este
diagonal (are toate elementele nule cu exceptia celor de pe diagonala
principal) atunci componentele sunt mutual independente.
mprtirea fiecrui element al matricei covariatiilor cu abaterile medii ptratice
ale componentelor corespunztoare ale vectorului x produce o matrice a
coeficientilor de corelatie, cu 1 pe diagonal, cu valori in intervalul [1, 1] n
rest.
Generarea de numere aleatoare. n modelarea i mai ales n simularea
sistemelor este necesar deseori generarea de numere aleatoare a cror aparitie
s se produc conform unei anumite legi de repartitie.
n sprijinul acestei cerinte, aproape toate limbajele de programare evoluate au n
biblioteca lor, alturi de alte functii, functii generatoare de numere aleatoare
uniform repartizate pe un interval precizat, de regul pe intervalul (0, 1). n
PASCAL, de pild, exist functia random, cu sau fr argument, care genereaz
astfel de numere. Subprogramul randomize invocat naintea primului apel la
functia random asigur secvente de numere diferite la fiecare nou utilizare
succesiv ntr-un program, a functiei de bibliotec generatoare de numere
aleatoare. Versiunea fr argument a functiei random produce numere reale (n
sens numeric) n intervalul (0, 1), uniform repartizate pe acel interval.
Versiunea cu argument de tip word, random(w), produce numere aleatoare de
tipul word, cuprinse ntre 0 i w 1. Pentru cazul continuu al functiei random
fr argument, se poate figura functia densitate de repartitie i functia de
repartitie conform graficelor alturate.
Cu generatorul de numere aleatoare random sau cu generatoarele similare din
alte limbaje se pot genera numere aleatoare repartizate dup legi diferite de cea
uniform. Pentru aceasta se pot utiliza metode analitice sau o metod direct
care are n vedere functia de repartitie a variabilei care trebuie generat.
Legea de repartitie normal normat (de medie nul i de de dispersie 1) este
legat de legea de repartitie uniform prin una sau alta dintre relatiile urmtoare
u1 2 ln x1 cos( 2 x2 )
u2 2 ln x1 sin( 2 x2 )
n care x1 i x2 sunt dou numere aleatoare independente, cu repartitie uniform
pe intervalul (0, 1). Este un exemplu de generare analitic a unor numere
aleatoare supuse unei legi de repartitie diferit de cea uniform.

192
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

DENSITATEA DE PROBABILITATE

f(x)

0.5

0
-1

-0.5

0.5

1.5

1.5

FUNCTIA DE REPARTITIE

F(x)

0.5

0
-1

-0.5

0.5
x

Un alt exemplu este cel al generrii de numere aleatoare uniform repartizate pe


un interval finit (a, b) oarecare. Trecerea la noua variabil se realizeaz prin
mijlocirea relatiei
u = a + (b a) x
cu x generat de functia de bibliotec random. Variabila u este uniform
repartizat pe intervalul finit specificat.
Varianta analitic de generare a unor numere aleatoare repartizate conform unei
legi particulare nu este totdeauna posibil. Modul de generare alternativ este
descris n continuare.
Se admite c este dat functia de repartitie F(u) a unei variabile u sau functia ei
densitate de repartitie f(u) din care se poate calcula F(u). Se genereaz valori x
uniform repartizate pe intervalul (0, 1) cu ajutorul functiei de bibliotec random
sau similara ei din alte limbaje de programare. Se calculeaz de fiecare dat u =
F1(x), unde F1(.) este inversa functiei de repartitie a variabilei u de generat.
Functia de repartitie este totdeuna o functie monoton, deci este inversabil
pentru orice x ( 0,1) . Intervalul (0, 1) este multimea de valori comun tuturor
functiilor de repartitie. Variabila aleatoare u este cu sigurant repartizat
conform legii date de functia F(u) sau de functia densitate f(u).
Raportul experiment-lege de repartitie teoretic. Variabilele aleatoare pot fi
observate prin valorile pe care ele le iau efectiv. Numrul observatiilor este
inevitabil finit. Forma matematic a legii de repartitie precum i parametrii ei
teoretici, inclusiv cei mai simpli cum sunt media i dispersia, sunt elemente
care trebuie estimate din aceste observatii experimentale. Inferenta statisitc
este apoi utilizat pentru a stabili valabilitatea acestor estimri. Inferenta
statistic este operatia logic prin care se admite o judecat al crui adevr nu

193
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

este verificat direct ci n virtutea unei legturi a ei cu alte judecti considerate


adevrate.
Verficarea adecvrii legilor de repartiie. Cu toate c ipoteza normalittii unei
variabile aleatoare este satisfctoare n foarte multe cazuri, n special atunci
cnd fenomenul este rezultatul actiunii ntmpltoare a unui numr foarte mare
de factori, uneori reprezentativitatea legii de repartitie nsi trebuie verificat.
Verificarea se face, desigur, pe baza unui volum limitat de observatii
experimentale.
Pentru o astfel de verificare, observatiile experimentale, fie acestea x1 , x2 ,..., xn ,
sunt mai nti sortate pe m intervale Ik (k = 1, 2, , m), care alctuiesc o partitie
a axei reale. Sortarea se face n raport cu apartenenta lor la unul sau altul din
acele intervale. Se calculeaz frecventele absolute nk (k = 1, 2, , m) pentru
fiecare interval adic numrul de valori observate care apartin unuia sau altuia
din intervalele Ik. Cu aceste frecvente sau cu frecventele relative obtinute prin
mprtirea lor la numrul total de valori observate n se poate trasa un grafic sub
forma unor dreptunghiuri cu baza ct fiecare interval i nltimea egal cu
frecventa. Aceste grafice sunt denumite histograme ale frecventelor relative sau
absolute. Prin cumularea ordonat a frecventelor se obtine un grafic numit
poligonul frecventelor relative sau absolute cumulate. Cele dou functii grafice
sunt pentru colectia de date experimentale ceea ce pentru variabila aleatoare
sunt probabilittile sau densitatea de repartitie i functia de repartitie. n termeni
de frecvente relative functiile sub form de grafic, care au ca surs
experimentul ar trebui s estimeze functiile teoretice corespondente. Dac ele
sunt sau nu estimatii ale acelor functii teoretice, dac legea de reparttie teoretic
reprezint ntr-adevr variabila aleatoare observat se apreciaz prin calculul
unei valori
m
(n npk ) 2
2 k
npk
k 1
n care intervin att frecventele experimentale ct i probabilittile teoretice
pk P( x I k ) , (k = 1, 2, , m) i care este o variabil aleatoare deoarece,
evident, la un nou set de observatii se obtine aproape sigur alt valoare.
Variabila este consacrat n statistica matematic i este definit ca o sum
de ptrate ale unor variabile aleatoare normale normate (de medie nul i de
dispersie egal cu unitatea). Variabila are un numr de grade de libertate egal cu
numrul de termeni din suma definitorie. Functia de repartitie a variabilei
este tabelat sau poate fi evaluat i este folosit n verificarea ipotezelor
statistice de natura celei formulate mai devreme sau de alt natur.
Intuitiv, valoarea calculat din observatii experimentale ar trebui s fie ct
mai apropiat de zero. Atunci, probabilittile pk ar fi foarte apropiate de
frecventele relative nk/n rezultate din experiment. Ipoteza conform creia
modelul teoretic este verificat de observatiile experimentale (H0) se opune
ipotezei alternative (H1) dup care modelul teoretic pe cale de a fi adoptat nu
este verificat de observatiile experimentale. Pragul discriminator ntre cele dou

194
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

adevruri mutual exclusive este stabilit ca limita superioar a unui interval


definit pentru un nivel de semnificatie sau pentru un nivel de ncredere precizat
q (uzual 0,95), interval care grupeaz 100q% din valorile firesti, plauzibile n
cazul valabilittii ipotezei H0. Schema acceptrii (sau respingerii) uneia sau
alteia dintre ipoteze este
H0
2

2
q
H1
cu valoarea de provenient experimental n stga semnului discriminator, cu
valoarea teoretic tebelar sau evaluat n dreapta acelui semn. Pe calea aceasta
se poate selecta legea de repartitie adecvat prin eventuala repetare a evalurilor
pentru alte functii de repartitie.
Estimarea i verificarea parametrilor unei legi de repartitie teoretice. Aa cum
s-a artat, legea de repartitie cea mai frecvent utilizat n modelarea i
simularea dinamicii sistemelor este legea normal. Ipotezele i verificrile
parametrice discutate n cele ce urmeaz se refer n exclusivitate la variabile
aleatoare repartizate normal sau, cum se mai spune, gaussian.
Selectie, parametri de selectie. O list de valori observate x1 , x2 ,..., xn ale unei
variabile aleatoare poart numele consacrat de selectie. Numele ar putea prea
impropriu prin prisma etimologiei cuvntului selectie i de aceea trebuie
subliniat c valorile din lista de observatii nu comport nici un proces subiectiv
de alegere. Prin selectie se ntelege numai observarea experimental i retinerea
unui numr finit de valori ale variabilei aleatoare din numrul extrem de mare
de valori pe care aceasta le poate lua.
Se admite c variabila are o repartitie normal cu media i dispersia .
Se defineste ca medie de selectie media aritmetic a valorilor observate
n

x
x

i 1

n
Ea este o estimatie absolut corect a mediei i se repartizeaz normal ca i
variabila x observat, cu aceeai medie dar cu dispersia /n. Din datele care
alctuiesc selectia se pot calcula dou dispersii de selectie
n

(x

s2

)2

i 1

si
n

(x

s2

x )2

i 1

n 1
Ambele sunt estimri absolut corecte ale dispersiei , prima cu n grade de
libertate, a doua, mai uzual deoarece nu necesit cunoasterea mediei teoretice
, cu n 1 grade de libertate.

195
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Sintagma estimatie absolut corect exprim faptul c media unei astfel de


estimatii este exact valoarea parametrului estimat.
Verificarea de ipoteze asupra parametrilor unei legi de repartitie normale.
Asupra mediei, ipoteza cea mai frecvent are forma = i se noteaz cu H0.
Opusa ei se noteaz cu H1. Uneori se formuleaz ipoteze n foma unilateral,
caz n care semnul egal este nlocuit cu un semn de inegalitate. Verificarea
uneia sau alteia dintre ipoteze se face n baza unei selectii.
Dac dispersia este cunoscut atunci se poate calcula o valoare
x 0
z

n
care este o variabil aleatoare repartizat normal i este chiar normat adic are
media nul i dispersia egal cu unitatea. Se stabileste un nivel de ncredere sau
de semnificatie q, uzual de 0,95 (95%), pentru care n tabele sau prin calcul se
gseste un zq, n particular z0,95 = 1,96. Aceast valoare delimiteaz un interval
(zq, +zq), numit interval de ncredere, care contine 95% din valorile z calculate
din datele selectiilor de tipul i de volumul specificat mai devreme. Prin urmare
valorile din afara intervalului de ncredere nu sunt excluse dar sunt cu totul
improbabile, probabilitatea lor fiind complementara pn la unitate, 1 q.
Aparitia unei valori z din aceast categorie pune sub semnul unei serioase
ndoieli valabilitatea ipotezei formulate. Asadar, dac valoarea calculat
z ( z q , z q ) ipoteza se accept, n caz contrar se respinge sau ntr-o
exprimare care pune n evident ambele ipoteze, mutual exclusive
H0
z zq

H1
Dac dispersia nu este cunoscut, se utilizeaz variabila Student, n care
intervine radicalul pozitiv al dispersiei de selectie
x 0
t
s
n
Variabila Student este o variabil aleatoare n legtur cu care se mentioneaz
i un numr de grade de libertate, acelai cu al estimatiei s2. Se stabileste un
nivel de ncredere q i un interval de ncredere (tq, +tq). Tabelele dau aceste
valori pentru diverse niveluri de ncredere, cel mai uzual fiind acelai 0,95, dar
i pentru grade de libertate diferite. Desigur, valorile tq pot fi foarte bine
evaluate numeric. Ipoteza H0 se confirm dac valoarea Student calculat se
situeaz n interiorul intervalului de ncredere. Ipoteza se respinge n caz
contrar. Sintetic
H0
t tq

H1

196
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

Ipoteze se fac, de asemenea, i asupra dispersiei. Ipotezele acestea trebuie la


rndul lor verificate. Astfel, fiind date dou estimatii ale aceleiai dispersii s12 i
s22, valoarea bazat pe experiment
s2
F 12
s2
are cracteristicile unei variabile aleatoare i se spune c are f1 i f2 grade de
libertate, egale respectiv cu gradele de libertate ale celor dou estimaii care
apar n raport. Variabila este cunoscut in statistica matematic sub numele de
variabila F (Fisher-Snedecor). n particular gradele de libertate pot fi f1 i i
atunci
s12
F 2

este o variabil F cu f1 i grade de libertate. O ipotez 2 02 se poate


verifica prin calcularea unei valori F cu 02 la numitor. Un nivel de
semnificatie q delimiteaz i n acest caz un interval de ncredere. Un F calculat
din date experimentale superior lui Fq, tabelar sau calculat, cu gradele de
libertate corespunztoare impune respingerea ipotezei H0 i acceptarea ipotezei
alternative H1. Cazul contrar face ca ipoteza H0 s fie acceptat. Schema global
este cuprins n exprimarea
H0
F Fq

H1
Criteriul F se aplic de obicei unilateral.
Variabila z normal normat i variabilele aleatoare t i F care sunt n
conexiune direct cu legea de repartitie normal permit formularea i testarea
unui numr important de alte ipoteze statistice. O alt variabil aleatoare
important legat de variabila repartizat normal este variabila despre care sa vorbit la verificarea calittii unei legi de repartitie teoretice de a fi un model
adecvat al unei variabile aleatoare observate experimental. Variabila este o
sum de ptrate ale unor variabile normale normate independente i are gradele
de libertate egale cu numrul de termeni din sum. Variabila permite ea
nsi verificarea de ipoteze asupra dispersiei, dat fiind faptul c ntr-o estimatie
s2 a dispersiei teoretice se poate separa o sum de ptrate de variabile z
normale normate independente si, implicit, o variabil . Tabele sau calculul
direct dau i n cazul acesta valori q2 care constituie pragul discriminator de
ipoteze la un nivel de semnificatie q precizat.

197
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

198
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

BIBLIOGRAFIE

1. E.Bodden, M.Clasen i J.Kneis Arithmetic Coding revealed A guided tour


from theory to praxis, Sable Research Group, McGill University, Montral,
Qubec, http://www.sable.mcgill.ca, 2007
2. Gh.Cartianu Semnale, circuite si sisteme Editura Didactic si Pedagogic,
Bucuresti, 1980
3. M.Clancy si D.Wagner Discrete Mathematics for CS http://wwwstatic.cc.gatech.edu/~vigoda/1050/Lectures/lecture11-70.pdf
4. S.Guiasu si R.Theodorescu Teoria matematic a informatiei Editura
Academiei RSR, 1966
5. S.Khudanpur, Information Theoretic Methods in Statistics,
http://www.jhu.edu/~sanjeev/520.674/notes/I-divergence-properties.pdf,
2007.
6. A.Mihescu Teoria statistic a transmisiunii informatiei Universitatea
Politehnica Timisoara, 1995
7. Y.Monsef Modlisation et simulation des systmes complexes. Technique &
Documentation, Londres, Paris, New York, 1996
8. S.W.Smith The Scientist and Engineer's Guide to Digital Signal
Processing, California Technical Publishing, 2007
9. Al.Sptaru Teoria transmisiunii informatiei vol.1 si 2, Editura Tehnic,
Bucuresti, 1965, 1968
10. Al.Sptaru (coordonator) Teoria transmisiunii informatiei. Probleme
Editura Didactic si Pedagogic, Bucuresti, 1983
11. R.Togneri si Ch.J.S. deSilva Fundamentals of Information Theory and
Coding Design Chapman & Hall/CRC, 2003

199
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

200
An evaluation version of novaPDF was used to create this PDF file.
Purchase a license to generate PDF files without this notice.

S-ar putea să vă placă și