Sunteți pe pagina 1din 10

7.

CODAREA DE SURSA

Locul codarii de sursa intr-o schema de transmisiune a datelor :

S CoS CANAL DecS U

Rolul codarii de sursa :

- adaptarea slfabetului sursei la alfabetul canalului


- adapatarea statistica (simboluri echiprobabile pentru alfabetul de canal)
- compresia datelor (este o consecinta a adaptarii statistice)

Observatii :

- codarea de sursa priveste sursele discrete de informatie


- codarea de sursa nu rezolva problema erorilor cauzate de perturbatii
- prin codare, sursa de informatie, numita si sursa primara, este transformata intr-o
noua sursa de informatie, numita sursa secundara, care debiteaza informatie pe
canal.

Doua exemple de codare :

Fie o sursa de informatie primara care genereaza simboluri dintr-un alfabet :

X   x1 , x2 , x3 , x4  cu probabilitatile P   1 , 1 , 1 , 1 


 2 4 8 8

Simbolurile trebuie transmise pe un canal binar cu alfabetul 0,1 . De aceea, ele trebuie
transcrise in binar, inainte de transmisie. Transcrierea in binar - codarea - se poate face in
multe feluri. De exemplu:

1) x1  0 0
x2  0 1
x3  1 0
x4  1 1

2) x1  0
x2  1 0
x3  1 1 0
x4  1 1 1
Definitie : Codarea este operatia prin care fiecare simbol al sursei primare este inlocuit
printr-o succesiune de simboluri ale alfabetului canalului. Decodarea este operatia inversa
codarii.

Definitie : Cuvantul de cod este succesiunea finita de simboluri din alfabetul canalului, cu
care este inlocuit un simbol al sursei primare

Definitie : Codul este totalitatea cuvintelor de cod folosite in codarea unei surse.

Definitie : Lungimea unui cuvant de cod este egala cu numarul de simboluri din alfabetul
canalului, care constituie cuvantul considerat.

Observatii :
- Codarea stabileste o corespondenta biunivoca intre simbolurile sursei primare si
cuvintele codului
- O succesiune de simboluri ale alfabetului canalului, care nu corespunde niciunui
simbol al sursei, se numeste cuvant fara sens. Prin analogie, un cuvant de cod se
mai numeste si cuvant cu sens.

Exemplele de mai sus cuprind un cod de lungime fixa (exemplul 1), care are toate cuvintele
de aceeasi lungime, si un cod de lungime variabila (exemplul 2), care are cuvinte de lungime
variabila. In acest caz, se defineste notiunea de lungime medie a cuvinelor de cod.

Definitie : Lungime medie a cuvintelor de cod se calculeaza cu expresia :

N
l   pi li
i 1

unde cu li s-a notat lungimea cuvintelor, iar cu p i , probabilitatile simbolurilor x i .

1 1 1 1 14
Exemplu: l  1   2   3   3   1,7
2 4 8 8 8

Observatii :
- lungimea medie a cuvintelor de cod se numeste, pe scurt, lungime a codului
- la codurile formate din cuvinte de lungime fixa, lungimea codului este egala cu
lungimea unui cuvant de cod ( l  li  l ) .

De cele mai multe ori, prin codarea cu cuvinte de lungime variabila, se realizeaza o compresie
a datelor (reducere a volumului de date).

Definitie : Raportul de compresie obtinut prin codare cu un cod de lungime variabila l se


calculeaza cu expresia :

l
R
l
unde cu l s-a notat lungimea unui cod de lungime fixa, obtinut cu acelasi alfabet al canalului.

2
Exemplu : R   1,15
1,7

Definitie : Rata de compresie este inversul raportului de compresie :

1
rata 
R

7.1. Clasificarea codurilor de sursa

CODURI reversibile de lungime variabila unic decodabile instantanee


neinstantanee

nu sunt unic decodabile

de lungime fixa

ireversibile

7.1.1. Coduri ireversibile si coduri reversibile

Exemplu :

1) Cod binar ireversibil (la decodare, codul lui x1 nu poate fi distins de cel al lui x 2 ; la fel
pentru x3 si x 4 )

x1  0
x2  0
x3  1
x4  1

2) Cod binar reversibil

x1  0 0
x2  0 1
x3  1 0
x4  1 1

7.1.2. Coduri unic decodabile si coduri care nu sunt unic decodabile


Exemplu :

1) Cod care nu este unic decodabil :

x1  0
x2  1 0
x3  1 1
x3  1 1 0

La decodare, grupul 1 1 0 poate fi interpretat fie ca simbolul x4 , fie ca grupul de simboluri


x3 x1 .

2) Cod unic decodabil

x1  0
x2  1 0
x3  1 1 0
x4  1 1 1 0

7.1.3. Coduri neinstanee si coduri instantanee

Exemplu :

1) Cod neinstantaneu :

x1  0
x2  1 0
x3  1 1 0
x4  1 1 1 0

Trebuie asteptat primul simbol al urmatorului cuvat de cod pentru a face decodarea cuvantului
receptionat (acest cod se mai numeste si cod cu separator).

2) Cod instantaneu

x1  0
x2  1 0
x3  1 1 0
x4  1 1 1

Decodarea se poate face la primirea ultimului simbol al cuvantului de cod.

Observatie:
- codurile instantanee sunt cele mai utilizate in practica.
7.2. Coduri instantanee sau ireductibile

Definitie : Fie cuvantul de cod C , constituit din n simboluri :

C  c1  cn 

Sirul format din primele k simboluri, se numeste prefix al cuvantului.

Teorema : Conditia necesara si suficienta ca un cod sa fie instantaneu este ca nicun cuvant al
sau sa nu fie prefix al altui cuvant.

Observatii:

- spunem despre un cod instantaneu ca are proprietatea de prefix.


- codurile instantanee se mai numesc si ireductibile.

7.3. Inegalitatea Kraft-McMillan

Teorema : Fie sursa primara de informatie cu alfabetul :

X   x1 ,, x N 
si alfabetul de canal C   c1 ,, c D  , cu simbolurile caruia se vor forma cuvinte de cod
pentru sursa primara. O conditie necesara si suficienta pentru a construi un cod ireductibil
(instantaneu) cu cuvinte de lungime l1 ,, l N este :

D
i 1
 li
1 (Inegalitatea Kraft-McMillan)

Justificare: ne folosim de reprezentarea prin arbori a codurilor ireductibile

7.4. Limita inferioara a lui l

Fie o sursa primara de informatie cu alfabetul :

X   x1 ,, x N  si probabilitatile P   px1 ,, px N 


Simbolurile sursei sunt codate cu un cod de lungime medie l . Cuvintele de cod sunt
constituite din simboluri ale alfabetului de canal C   c1 ,, c D  .
Daca H  X  este entropia sursei, atunci fiecare simbol c d poarta in medie o cantitate de
informatie:

H X 
l
Aceasta cantitate, nu poate fi mai mare decat entropia maxima a sursei secundare
H max C   log 2 D :

H X 
 log 2 D
l

Deci, limita inferioara pentru lungimea medie a oricarui cod este:

H X 
l min 
log 2 D

Observatii:

- daca codarea se face cu alfabet binar, atunci limita inferioara pentru l este
entropia sursei primare H  X 
- rezultatele acestei sectiuni sunt valabile pentru toate tipurile de coduri, deci si
codurilor ireductibile (instantanee)
- aceasta relatie poate fi interpretata si ca o a doua definitie a entropiei

Definitie : Entropia unei surse este egala cu lungimea medie a unui cod binar minim cu care
sursa poate fi codata (nu totdeauna acest cod exista).

7.5 . Coduri absolut optimale

In practica, ne intereseaza codurile cu l cat mai mic.

H X 
Definitie: Codurile care au l  l min  se numesc coduri absolut optimale.
log D

Conform Sectiunii 7.4, cantitatea medie de informatie transmisa fiecarui simbol de canal prin
codare, altfel spus entropia sursei secundara H C  , este invers proportionala cu l :

H X 
H C  
l

Aceasta relatie arata ca l isi atinge minimul cand H C  este maxim, adica atunci cand, prin
codare, simbolurile c d ajung sa fie transmise echiprobabil:

pc1     pc D  
1
D

Considerand ca nu exista dependenta statistica intre simbolurile c d , care intra in componenta


cuvintelor de cod, rezulta urmatoarele probabilitati pentru cuvintele de cod si, deci, pentru
simbolurie sursei primare:
l
1
i

pxi     unde li este lungimea cuvantului de cod pentru x i .


D

Cum  px   1 , rezulta ca, o conditie pentru a avea un cod absolut optimal este:
i
i

D
i 1
 li
1

Observatii:

- egalitatea de mai sus este o conditie de existenta pentru codurile absolut optimale;
in cazul codarii binare, aceasta conditie se traduce prin a cere ca simbolurile sursei
primare sa aibe probabilitati care sunt puteri intregi negative ale lui 2 (exemplu:
P   1 , 1 , 1 , 1 
 2 4 8 8
- codurile absolut optimale sunt un caz limita penta pentru Inegalitatea Kraft-
McMillan, deci pot fi si ireductibile

7.6. Coduri optimale

Codarea unuei surse de informatie cu un cod binar absolut optimal este posibila numai daca
probabilitatile sursei satisfac conditia:

log 2 pxi 
l
1
i

p  xi      li     log 2 pxi 
D log 2 D

De cele mai multe ori,  log 2 pxi  nu este un numar zecimal. De aceea, se construiesc
cuvinte de cod cu lungimea minima posibila, adica li   log 2 pxi  . Aceste cuvinte satisfac
conditia:

log 2 pxi 
li    1 i
log 2 D

Amplificand inegalitatile cu pxi  si insumandu-le dupa I, rezulta:

 px log px 


i 2 i

 pxi li  
i
i

log 2 D
  p  xi 
i

Deci
H X 
l  1 ceea arata ca se poate gasi un cod unic decodabil, care sa aibe
log 2 D
H X 
lungimea mai mica decat limita superiora  1.
log 2 D

Vom demonstra, in continuare, ca aceste coduri satisfac Inegaliatea Kraft-McMillan,


deci ca ele sunt si coduri ireductibile (instantanee).

Deoarece li   log 2 pxi  , putem scrie:

log 2 pxi 
  li  pxi   D li i
log 2 D

Insumand dupa I, rezulta :

 p x    D
i
i
i
 li
 Di
 li
1

Deci, acsete coduri satisfac Inegalitatea Kraft-McMillan care este conditia necesara si
suficienta pentru a avea un cod ireductibil.

Definitie: Codurile constituite din cuvinte de lungime li   log 2 pxi  sunt coduri
optimale.

7.7. Capacitatea, eficienta si redundanta codurilor

Definitie : Capacitatea unui cod este maximul cantitatii medii de informatie ce poate fi
transmisa de simbolurile din alfabetul canalului :

C  H max C   log D

Definitie : Eficienta unui cod se defineste prin :

l min
 1
l

H X  H X 
log D H C 
  l 
l log D log D

Definitie : Redundanta unui cod se defineste prin :

H C 
  1   1   0,1
log D

Observatie: Capacitatea, eficienta si redundanta codului sunt marimi similare celor


prezentate la capitolul de Canale discrete. Expresiile sunt diferite pentru ca, in cazul canalelor,
se foloseste notiunea de cantitate medie de informatie pe simbolurile generate de sursa
primara, iar in cazul codurilor, se considera informatia medie pe simbolurile sursei secundare

7.8. Extensia unei surse de informatie

Fie o sursa de informatie cu alfabetul :

X   x1 ,, x N  si probabilitatile P   px1 ,, px N 


Presupunem ca sursa X genereaza urmatorul sir de v.a.:

X 0 , X 1 , X 2 , X 3 ,, X 2n , X 2n1 ,

Definitie : Extensia de ordin 2 a sursei X , este o sursa notata X 2 , care genereaza sirul:

Z 0 , Z1 ,, Z n ,

unde v.a. Z n sunt siruri de doua v.a. consecutive ale sirului X 0 , X 1 , X 2 , X 3 ,, X 2n , X 2n1 ,
Mai precis: Z 0   X 0 , X 1  , Z1   X 2 , X 3  , …, Z n   X 2n , X 2n1 

Observatii:

- extensia de ordin m se noteaza cu X m si este o sursa ale carei simboluri sunt siruri de
lungime m
- alfabetul extensiei X m este constituit din N m simboluri (siruri).

Teorema : Entropia extensiei X m , fara memorie, este de m ori mai mare decat entropia
sursei X :

 
H X m  mH  X 

7.9. Prima Teorema a lui Shannon

Conform rezultatelor din Sectiunile 7.4 si 7.6, lungimea unui cod folosit pentru codarea unei
surse de informatie fara memorie X , satisface urmatoarele inegalitati :

H X  H X 
l  1
log 2 D log 2 D

Aceasta dubla inegalitate este valabila si pentru extensia X m , care este tot o sursa fara
memorie :

 
H Xm
 l m  
H Xm  1
log 2 D log 2 D
unde l m  este lungimea medie a cuvintelor de cod pentru simbolurile sursei extinse, care
sunt siruri de m simboluri ale sursei initiale. Deci, l m   ml , unde l este lungimea medie a
cuvintelor de cod pentru simbolurile sursei initiale.
Aplicand rezultatul Sectiunii 7.8, dubla inegalitate devine:

H X 
l 
 
H Xm

1
log 2 D log 2 D m

ceea ce reprezinta expresia matematica a Primei teoreme a lui Shannon

Prima teorema a lui Shannon sau Teorema codarii canalelor fara zgomot: Codand siruri
de simboluri suficient de lungi, ne putem apropia oricat de mult de codarea absolut optimala.

7.10. Algoritmi de codare entropica

7.10.1. Codarea Shannon-Fano

7.10.2. Codarea Huffman

7.10.3. Codarea aritmetica

S-ar putea să vă placă și