Documente Academic
Documente Profesional
Documente Cultură
Note de curs
Daniela Coltuc
2010
Notatii si abrevieri
X variabila aleatoare
[X ] alfabetul sursei
- Cat de mult se poate transmite printr-un canal de comunicatie ? (In anii 40,
comunitatea stiintifica credea ca marind cantitatea de informatie transmisa printr-un
canal, creste si probabilitatea eronarii ei ; Shannon a surpris lumea stiintifica, aratand
ca transmisia poate fi facuta corect, cu conditia ca rata de transmisie sa nu depaseasca
capacitatea canalului ; capacitatea canalului se poate calcula din caracteristicile
zgomotului existent in canal)
Teoria Informatiei are contributii si in alte domenii (Fig. din Elements of Information Theory,
Thomas M. Cover, Joy A. Thomas)
Theoria Informatiei a fost elaborata de Claude Shannon (1916-2001).
Biografie
1948 Shannon a elaborat Teoria informatiei, una dintre teoriile cu cel mai mare impact in
secolul XX.
Definitie : Un sistem de transmisiune (de comunicatie) este un ansamblu fizic care realizeaza
transmiterea unui mesaj de la o sursa la un utilizator.
P
S sursa de mesaje
CoS Codor de sursa (compresia datelor)
CoC Codor de canal (protectie contra perturbatiilor)
m modulator
CANAL Canal de comunicatie
Dm demodulator
P Perturbatii
DecC Decodor de canal
DecS Decodor de sursa
U Utilizator
Observatie : Aceasta este o schema completa; in functie de de aplicatie, unele bolcuri pot
lipsi.
2. INTRODUCERE IN TEORIA PROBABILITATILOR
Rezultatul unui experiment aleator nu este cunoscut dinainte ; realizarea unui anumit
eveniment este caracterizata de o probabilitate.
Nf
Definitia 1 (clasica, de acum cateva secole) : p(Ei ) = unde N f este numarul de cazuri
Np
favorabile evenimentului si N p numarul de cazuri posibile.
na
Definitia 2 (Von Mises, inceput de sec XX): p(Ei ) = lim unde n a este numarul de
n→∞n
aparitii ale evenimentului si n este numarul total de exeperimente.
2.3.Variabila aleatore
Variabila aleatoare este o notiune folosita pentru a descrie evenimentele rezultate in urma
unui experiment aleator.
Definitie: Variabila aleatoare (v.a.) este o functie care asociaza fiecarui eveniment o valoare
numerica.
Notam cu X v.a.
Exemplu:
Observatie:
p (E i ) = p ( X = x i ) = p ( x i ) = p i
Exemplu:
F ( x ) = p{X ≤ x}
f (x ) =
dF
dx
Exemplu:
x −( x−μ ) / 2σ 2
2
⎧1 / a x ∈ [0 a ]
Densitatea de probabilitate uniforma: f ( x ) = ⎨
⎩ 0 in _ rest
⎧λe − λx x≥0
Densitatea de probabilitate exponentiala: f (x ) = ⎨
⎩ 0 in _ rest
Definitia 2 (tipul v.a.) : O v.a. este discreta daca are o functie de repartitie in scara; o v.a. este
continua daca are o functie de repartitie continua.
Exemplu: La aruncarea cu zarul, probabilitatea de a avea un 2 cand stim ca fata aparuta este
para.
p (E i , M )
p (E i / M ) = unde p(Ei , M ) este probabilitatea ca atat Ei cat si M sa
p (M )
se realizeze.
Observatie: E i si M pot fi evenimente ale aceluiasi experiment (aceeasi v.a.) sau pot fi
evenimente a doua experimente diferite (2 v.a.).
p (xi / x j )
p (xi / x j ) =
p (x j )
(aceeasi v.a.)
p (xi / y j )
p (xi / y j ) =
p(y j )
p ( y j / xi ) p ( xi )
Teorema lui Bayes: p (xi / y j ) =
p(y j )
p( xi ) = p (xi / y1 ) p ( y1 ) + p( xi / y 2 ) p( y 2 ) + K + p (xi / y N ) p( y N )
dF (x M )
F (x M ) = p{X ≤ x M } f (x M ) =
dx
b) Functia de repartitie si densitatea de probabilitate se definesc si pentru 2 sau mai multe v.a.
dF (x, y )
F ( x, y ) = p{X ≤ x, Y ≤ y} f ( x, y ) =
dxdy
p (Ei , E j ) = p (Ei ) p (E j )
Definitie: Doua v.a., X si Y , sunt independente daca oricare dintre realizarile lor particulare
sunt independente.
3.1. Informatia
Definitie : Informatia este cantitatea de incertitudine pe care o avem asupra producerii unui
eveniment, rezultat in urma unui experiment aleator.
Fie un experiment aleator ale carui rezultate sunt descrise prin v.a. X , care ia valori in
multimea [X ] = [x1 , x 2 , K , x n ] . Incertitudinea asupra evenimentului E , caruia ii corespunde
i
realizarea particulara x , se noteaza:
i
( )
U E = U ( X = xi ) = U ( x i )
i
U de la uncertainty
Incertitudinea si informatia sunt, din punct de vedere cantitativ, doua notiuni echivalente.
Vorbim despre incertitudine inainte de producerea evenimentului si de informatie dupa
producerea sa.
U ( xi ) = i ( xi )
i de la information
U ( xi ) = i ( xi ) = F ( p i )
a) F trebuie sa fie descrescatoare (incertitudinea este mai mica atunci cand probabilitatea de
aparitie a evenimentului este mare).
F ( pi , q j ) = F ( pi ) + F (q j )
Observatie: Cele doua evenimente pot apartine si aceluiasi experiment; in acest caz,
independenta se traduce prin conditia ca producerea unuia sa nu influenteze in niciun fel
producerea celuilalt.
Functia care indeplineste cerintele b) si c) este logaritmul; pentru a satisface si cerinta a),
luam negativul logaritmului:
F ( pi ) = − log( pi )
Deci, incertitudinea/informatia asupra unui eveniment care are probabilitatea pi , se
calculeaza cu :
U ( xi ) = i( xi ) = − log( pi )
Proprietati :
Definitie : 1 bit este cantitatea de informatie care se obtine cand se realizeaza un eveniment
cu probabilitatea 1/2.
1bit = − log 2 (1 / 2 )
Definitie : 1 dit este cantitatea de informatie care se obtine cand se realizeaza un eveniment
care are probabilitatea 1/10..
Definitie : 1 nat este cantitatea de informatie care se obtine cand se realizeaza un eveniment
cu probabilitatea 1/e.
1nat = − ln (1 / e )
Transformarea unitatilor :
1dit = 3,32bit
1nat = 1,44bit
Fie xi si y j doua realizari particulare ale lui X si Y. Sa pp. Ca numai y j este observabil.
Informatia mutuala a celor doua evenimente este:
i(xi , y j ) = U ( xi ) − U (xi / y j )
unde U (xi / y j ) este incertitudinea care ramane asupra lui xi dupa producerea lui y j (cand se
cunoaste y j ) .
p (xi , y j )
i (xi , y j ) = − log p( xi ) + log p(xi / y j ) = log
p (xi ) p ( y j )
Exemplu:
p ( xi ) = 1 / 2
p(xi / y j ) = 1 / 4
i (xi , y j ) = 1 − 2 = −1
Definitie :
∑pi
i =1
Definitii :
Simbolul (sau litera) este elemental fundamental, ireductibil, care contine informatie.
x1 , x 2 , K , x N sunt simboluri
Definitie: Sursa fara memorie (simpla sau independenta) genereaza v.a. independente. Cu
alte cuvinte, probabilitatea de a genera un anumit simbol xi la momentul k nu depinde de
simbolurile generate anterior.
p( X k = xi / X k −1 , X k − 2 ,...) = p( X k = xi )
Definitie: Dimensiunea memoriei sursei este egala cu numarul de simboluri anterioare care
conditioneaza probabilitatea de aparitie a unui nou simbol.
- surse stationare
- surse nestationare
p( X k = xi ) = p( X k +τ = xi ) oricare ar fi k , τ sau i .
Un caz particular al surselor stationare este sursa ergodica. Pentru a defini sursa ergodica, ne
bazam pe notiunea de sir tipic.
Fie un sir de simboluri generat de sursa, suficient de lung a.i. sa putem estima
probabilitatile de aparitie a simbolurilor folosind definitia probabilitatii ca raport intre
numarul de cazuri favorabile si numarul total de cazuri.
Daca intr-un sir, probabilitatile astfel estimate sunt egale cu probabilitatile din setul
sursei, atunci sirul este tipic.
Altfel spus, daca n este lungimea sirului tipic considerat si ni este numarul de
simboluri xi din sir, atunci ni = npi oricare ar fi i.
Definitie: O sursa ergodica este o sursa care genereaza numai siruri tipice.
Observatie: Definitiile stationaritatii si ergodicitatii de mai sus sunt valabile pentru sursa
fara memorie. In cazul sursei cu memorie, ele se enunta inlocuind notiunea de simbol cu cea
de stare (definitia starii este data in subcapitolul de Surse Markov).
Surse discrete
Surse stationare
Surse ergodice
Sursa Markov este un model matematic des folosit in practica pentru a descrie sursele discrete
de informatie, cu memorie. Exista diverse definitii pentru sursa Markov.
Alfabetul : [X ] = [0,1]
Probabilitatile de aparitie a simbolurilor sunt probabilitati conditionate, de forma
p( X k = xi / X k −1 , X k − 2 )
Definitie: Probabilitatea ca sursa Markov sa fie intr-o anumita stare este egala cu
probabilitatea de aparitie a sirului de simboluri care constituie starea.
[ ]
i
Multimea starilor: [S k ] = s1 , s 2 , K, s N k
[ ]
Setul de probabilitati ale starilor: [P(S k )] = q1 , q2 , K , q N k unde qi = p (si ) si
∑q
i
i =1
p( xi ) = ∑ p (xi / s j ) p (s j ) Ù pi = ∑ p (xi / s j )q j
j j
Fiecare simbol nou generat constituie, impreuna cu cele anterioare, o noua stare :
Probabilitatea ca sursa sa genereze simbolul 1 cand se afla in starea 0,0 este totuna cu
probabilitatea ca sursa sa treaca din starea 0,0 in starea 1,0.
Definitia III : O sursa Markov este o sursa cu memorie la care probabilitatea de aparitie a
unei stari nu depinde decat de starea anterioara.
2/3
2/3 10
Observatie : Descrierea prin diagrame de stare este utila cand sursa Markov este stationara.
Proprietate: suma elementelor de pe orice linie este egala cu 1, de aceea spunem ca T este o
matrice stohastica.
[
P (S ) = q1 K q N R ]
Observatie: Matricea de tranzitie este utila in descrierea surselor Markov nestationare
(probabilitatile starilor variaza in timp, nu si probabilitatile de trecere de la o stare la alta).
Daca P(S k ) este vectorul probabilitatilor starilor la momentul k si P(S k −1 ) acelasi vector
inaintea ultimei tranzitii, atunci:
Definitie : Sursa Markov este regulata daca, atunci cand n → ∞ , P(S n ) devine constant. In
acest caz, P(S n ) se numeste distributie de echilibru sau asimptotica a starilor sursei Markov.
⎡1 / 4 3 / 4⎤
P(S 0 ) = [1 / 3 2 / 3] T =⎢ ⎥
⎣1 / 2 1 / 2 ⎦
4. ENTROPIA SURSELOR DISCRETE DE INFORMATIE
Definitie : Entropia unei surse discrete de informatie este cantitatea de informatie, medie pe
simbol, generata de sursa.
H ( X ) = −∑ pi log( pi )
i
numarul de aparitii ale unui simbol este aproximativ ni ≈ npi . Deci, probabilitatea estimata de
(
aparitie a sirului este: p(S ) = p1 1 p 2 2 K p n
p p pn n
) si, in consecinta, informatia sirului este:
i (S )
iar entropia H ( X ) = = −∑ pi log( pi )
n i
Observatie : Aceasta expresia a entropei este valabila si pentru sursele neergodice sau sursele
nestationare.
H(X)
1
1/2 1 p
[X ] = [x1 , x2 ,K, x N ]
si alfabetul starilor :
[S k ] = [s1 , s2 ,K, sN k ]
Definitie : Entropia sursei Markov este informatia medie pe stare, generata de sursa:
H (S k ) = ∑ p (s j )H S k s j( )
j
( )
unde H S k s j este informatia medie cand sursa se afla in starea particulara s j :
( ) ( )
H S k s j = −∑ p si s j log p si s j ( )
i
Proprietate : Entropia sursei Markov este mai mica decat entropia unei surse fara memorie
care ar genera aceleasi simboluri (dependenta de trecut diminueaza cantitatea medie de
informatie pe simbol):
H (S k ) < H (S 0 )
Justificare:
Fie [P ] = [ p1 , p 2 , K, p N ] cu ∑ p = 1 si i
i
pi
Definitie: Marimea
i
∑p qi
ise numeste entropie relativa sau distanta
log 2
Kullback-Liebler. Entropia relativa este o marime nenegativa; ea ia valoarea zero cand cele
doua distributii sunt egale (se foloseste pentru a masura similaritatea a doua distributii).
Definitie : Decorelarea este operatia prin care un semnal numeric, modelat printr-o sursa
Markov, este transformat intr-o sursa fara memorie. In practica se realizeaza o quasi-
decorelare, adica se obtine o sursa cu memorie de lungime redusa si cu dependenta mica intre
simboluri.
Cea mai simpla metoda de decorelare este DPCM (Differential Pulse Code Modulation)
x1 , x 2 − x1 ,K , x n − x n −1 , K
4.3.2. Cazul semnalelor 2D
Imaginea decorelata este constituita din pixelii diferenta d i , j = 0,75ii −1, j − 0,5ii −1, j −1 + 0,75ii , j −1 :
Definitie : Debitul de informatie al unei surse este cantitatea medie de informatie generata
pe secunda de sursa.
H (X )
H t (X ) = unde τ este durata unui simbol
τ
R( X ) = H max ( X ) − H ( X )
Unde H max ( X ) este entropia maxima a sursei (entropia in cazul simbolurilor echiprobabile) si
H ( X ) este entropia sursei.
H max ( X ) − H ( X )
ρ (X ) = ρ ( X ) ∈ [0 1]
H max ( X )
[X ] = [x1 , x2 ,K, x N ]
[P] = [ p1 , p 2 ,K, p N ] cu ∑ pi =1
i
si
[Y ] = [ y1 , y 2 ,K, y M ]
[Q] = [q1 , q 2 ,K, q M ] cu ∑ qi =1
i
Observatii:
Cazuri particulare :
H ( X , Y ) = H ( X ) + H (Y )
H ( X , Y ) = H ( X ) = H (Y )
H ( X , Y ) ≤ H ( X ) + H (Y )
Cazuri particulare :
I (X ,Y ) = 0
I ( X , Y ) = H ( X ) = H (Y )
I ( X , Y ) ≤ H ( X ) si I ( X , Y ) ≤ H (Y )
Proprietati:
1. I ( X , Y ) = H ( X ) + H (Y ) − H ( X , Y )
probabilitatii totale.
(
H ( X Y ) = −∑ p ( y j )H X y j . )
j
Cazuri particulare:
H (X Y ) = H ( X )
H (X Y ) = 0
H (X / Y ) ≤ H (X )
H(X) H(Y)
H(X)
H(Y)
Sursele X si Y sunt dependente statistic
H(X/Y) H(Y/X)
H ( X , Y ) = H (Y X ) + H ( X ) si H ( X , Y ) = H ( X Y ) + H (Y )
H ( X / Y ) ≤ H ( X ) ≤ H ( X , Y ) ≤ H ( X ) + H (Y )
H(X/Y,Z)
H(Y/X,Z)
H(Z/X,Y)
(
unde H (Z X , Y ) = −∑∑∑ p (xi , y j , z k )log p z k xi , y j )
i j k
b) 0 ≤ H (Z X , Y ) ≤ H (Z X ) ≤ H (Z )
( )
a) H ( X 1 , K , X n ) = H ( X 1 ) + H X 2 X 1 + K + H ( X n X 1 , K , X n −1 )
Daca sursele sunt independente, atunci: H ( X 1 , K , X n ) = ∑ H ( X i )
i
b) 0 ≤ H ( X n X 1 , K, X n −1 ) ≤ H ( X n X 1 , K, X n − 2 ) ≤ K ≤ H (X n X 1 ) ≤ H ( X n )
5. CANALE DE TRANSMITERE A INFORMATIEI
- continuu/continuu
- discret/continuu
- continuu/discret
- discret/discret
- continuu in timp
- discret in timp
- stationar
- nestationar
[X ] = [x1 ,K, x N ]
[P] = [ p1 ,K, p N ]
si Y , sursa de informatie care modeleaza iesirea din canal (sursa de informatie pentru
utilizator):
[Y ] = [y1 ,K, y M ]
[Q ] = [q1 ,K, q M ]
Din cauza perturbatiilor de pe canal, X si Y sunt, in general, diferite.
Spatiul produs:
⎡ p (x1 , y1 ) p( x1 , y 2 ) K p ( x1 , y M ) ⎤
⎢ p( x , y ) p(x , y ) K p (x 2 , y M ) ⎥⎥
[P( X , Y )] = ⎢ 2 1 2 2
⎢ K K K K ⎥
⎢ ⎥
⎣ p( x N , y1 ) p (x N , y 2 ) K p ( x N , y M )⎦
⎡ p ( y1 x1 ) p ( y 2 x1 ) K p ( y M x1 ) ⎤
⎢ ⎥
[P(Y X )] = ⎢⎢ p(yK1 x2 ) p( yK2 x2 ) K
K
p ( y M x 2 )⎥
K ⎥
⎢ ⎥
⎣⎢ p ( y1 x N ) p ( y 2 x N ) K p ( y M x N )⎦⎥
∑ p (y
i
i )
x j = 1 (suma elementelor de pe orice linie este 1).
Canalele studiate sunt stationare, deci p ( y j / xi ) = ct. in timp.
Canalele sunt fara memorie, deci probabilitatea de aparitie a lui y j nu depinde decat de
simbolul generat simultan la intrarea in canal, simbolul xi pentru p ( y j / xi ) .
p( y1 / x1 )
x1 y1
x2 y2
……………………………….
yM
xN
Definitie: Echivocatia este cantitatea medie de incertitudinea care ramane asupra simbolurilor
de la intrarea in canal, atunci cand se cunosc simbolurile de la iesire.
Definitie: Eroarea medie este cantitate medie de informatie eronata, la iesirea din canal.
p (xi , y j )
Informatia medie transmisa prin canal: I ( X , Y ) = ∑∑ p (xi , y j )log
i j p ( xi ) p ( y j )
Definitie: Informatia medie este cantitatea medie de informatie care se transmite corect prin
canal.
Cazuri particulare :
H ( X , Y ) = H ( X ) + H (Y )
H ( X , Y ) = H ( X ) = H (Y )
H (X Y ) = 0 (cunoscand iesirea din canal, nu mai exista nicio incertitudine asupra lui X )
H ( X , Y ) < H ( X ) + H (Y )
H ( X Y ) < H ( X ) (cunoscand iesirea din canal, incertitudine asupra lui X devine mai mica)
Definitie : Capacitatea unui canal este informatia medie maxima, care se poate transmite
prin canal :
C = max I ( X , Y )
[P ]
Observatie: maximul se ia dupa probabilitatile sursei de la intrarea in canal, pentru ca numai
aceste probabilitati pot fi controlate, intr-otransmisie printr-un canal cu perturbatii.
I (X ,Y )
Definitie : Redundanta relativa a canalului este : ρ C = 1 − ∈ [0,1] .
C
Definitie : Randamentul sau eficienta canalului arata cat de mica este cantitatea medie de
informatie transmisa prin canal, in raport cu capacitatea canalului.
I (X ,Y )
ηC = ∈ [0,1]
C
I (X ,Y )
Definitie : Debitul de informatie prin canal este : I t ( X , Y ) = [bit/sec], unde τ este
τ
durata unui simbol.
C
Observatie: Debitul maxim de informatie prin canal este: C t = .
τ
Proprietati :
C ≥ 0 (deoarece I ( X , Y ) ≥ 0 )
b) C ≤ H ( X ) (deoarece I ( X , Y ) ≤ H ( X ) )
Etape:
Se construieste functia:
⎛ ⎞
Φ = H (Y ) − H (Y / X ) + λ ⎜ ∑ pi − 1⎟
⎝ i ⎠
∂H (Y ) ∂H (Y ) ∂q j ⎛ 1 ⎞
=∑ = −∑ ⎜⎜ log q j + ⎟ p ( y j / xi ) =
∂pi j ∂q j ∂pi j ⎝ log e ⎟⎠
p ( y j / xi ) − ∑ p ( y j / xi )log q j = − − ∑ p ( y j / xi )log q j
1 1
=− ∑
log e j j log e j
∂ ∑∑ p ( y j / xi ) pi log p ( y j / xi )
∂H (Y / X )
=− = −∑ p ( y j / xi )log p ( y j / xi )
j i
∂pi ∂pi j
- derivata termenului in λ :
⎛ ⎞
∂λ ⎜ ∑ pi − 1⎟
⎝ i ⎠ =λ
∂pi
Se egaleaza derivatele partiale ale lui Φ cu zero; din rezolvarea sistemului, rezulta
probabilitatile pimax , care maximizeaza Φ si, deci, informatia transmisa prin canal:
p ( y j / xi )
∑ p(y
j
j / xi )log
qj
= ct pentru i = 1, N
Completand aceste ecuatii cu:
q j = ∑ p ( y j / xi ) p i pentru j = 1, M
i
si
∑p
i
i =1
p ( y j / xi )
C = ∑∑ p ( y j / xi ) pimax log
i j q max
j
Observatii:
- acest sistem nu are, in general, o solutie analitica; cand nu exista o solutie analitica,
capacitatea se calculeaza cu metode numerice (algoritmullui Frank-Wolfe, care este
bazat pe metoda gradientului, sau algoritmul iterativ al lui Arimoto si Blahut)
- daca alfabetele surselor de la intrarea si de la iesirea din canal au acelasi numar de
simboluri si, daca, determinantul matricii de zgomot este diferit de zero, atunci
sistemul are solutie analitica
Aceasta sectiune cuprinde patru cazuri particulare de canale (modele), pentru care capacitatea
se poate calcula analitic.
Definitie: Fiecare linie a matricii de zgomot a canalului uniform fata de intrare este o
permutare a altei linii (pe fiecare linie gasim aceleasi probabilitati, diferit ordonate).
Exemplu:
⎡1 1 1⎤
⎢ 2⎥
P(Y / X ) = ⎢ 3 6
1 1 1⎥
⎢ ⎥
⎣3 2 6⎦
Proprietati:
= −∑ p ( y j / xi ) p (xi ) log p ( y j / xi ) =
i, j
Definitie: Fiecare coloana a matricii de zgomot a canalului uniform fata de iesire este o
permutare a altei coloane (pe fiecare coloana gasim aceleasi probabilitati, diferit ordonate).
Exemplu:
⎡ 0,5 0,5⎤
P(Y / X ) = ⎢⎢ 0,3 0,7 ⎥⎥
⎢⎣0,7 0,3⎥⎦
Proprietate:
p ( y j ) = ∑ p ( y j / xi ) p ( xi ) = p ( y j / xi ) = ct.
1 1
i
∑
N i N
Definitie: Canalul simetric este canalul uniform atat fata de intrare cat si fata de iesire.
Exemplu:
Proprietati:
Definitie: Canalul slab simetric este uniform fata de intrare si are suma probabilitatilor de pe
fiecare coloana constanta.
Exemplu:
⎡1 1 1⎤
⎢ 2⎥
P(Y / X ) = ⎢ 3 6
1 1 1⎥
⎢ ⎥
⎣3 2 6⎦
Proprietati:
p ( y j ) = ∑ p ( y j / xi ) p ( xi ) = p ( y j / xi ) = ct.
1 1
i
∑
N i N
C = log M − H (Y / X )
Matrice de zgomot:
⎡1 − p p ⎤
P(Y / X ) = ⎢ ⎥
⎣ p 1 − p⎦
0 p 0
1-p
1-p
1 p 1
Calculul capacitatii:
C = log 2 − H (Y / X ) = 1 − H (Y / X )
H(X), C
unde
1
H (Y / X ) = −∑ p ( y j / xi )log p ( y j / xi ) =
2
C
j =1
= − p log p − (1 − p ) log(1 − p )
deci
C = 1 + p log p + (1 − p ) log(1 − p )
1/2 1 p
Cazuri particulare:
⎡1 0⎤
Matricea de zgomot: P(Y / X ) = ⎢ ⎥
⎣0 1 ⎦
Reprezentare grafica: 0 0
1 1
⎡0 1 ⎤
P(Y / X ) = ⎢ ⎥ 0 0
⎣1 0⎦
C = 1 bit / simbol
1 1
⎡1 / 2 1 / 2⎤
Matricea de zgomot: P(Y / X ) = ⎢ ⎥
⎣1 / 2 1 / 2⎦
Matrice de zgomot:
⎡1 − p − q p q⎤
P(Y / X ) = ⎢
1 − p − q q ⎥⎦
Canalul este uniform doar fata de intrare.
⎣ p
Reprezentare grafica:
X =0 1-p-q Y =0
q
p
Y =a
X =1 Y =1
Calculul capacitatii:
C = max[H (Y )] − H (Y / X )
[P ]
unde
H (Y / X ) = −∑ p ( y j / xi )log p ( y j / xi ) =
2
j =1
- se noteaza p ( X = 0 ) = x si p( X = 1) = 1 − x
2
- se exprima p(Y = 0) = ∑ p(Y = 0 / xi )p( xi ) , p(Y = a ) = K si p(Y = 1) = K
i =1
ca functii de x
- se exprima H (Y ) ca functie de x , folosind probabilitatile calculate mai sus
∂H (Y )
- se rezolva ecuatia =0
∂x
- cu solutia ecuatiei de mai sus, se obtine max[H (Y )]
[P ]
Exercitiu:
1− q
Observatie: Capacitatea canalului devine zero pentru p = (se rezolva ecuatia
2
∂C 1− q
= 0 si se obtine solutia p = )
∂p 2
Matricea de zgomot:
⎡1 − q 0 q⎤
P(Y / X ) = ⎢ ⎥
⎣ 0 1 − q q⎦
Reprezentarea grafica:
X =0 1-q Y =0
q
Y =a
q
X =1 Y =1
1-q
Capacitatea: C = 1 − q
6. SURSE DE INFORMATIE SI CANALE CONTINUE
H ( X ) = − ∫ f ( x ) log 2 f (x )dx
R
⎧2 x ∈ [0 1 / 2]
f (x ) = ⎨
⎩0 in _ rest
1/ 2 1/ 2
H ( X ) = − ∫ 2 log 2 2dx = − 2 ∫ dx = − 1
0 0
Prin cuantizare cu cuanta q , toate valorile semnalului cuprinse intr-un anumit interval de
latime q , devin egale cu o valoare fixa (semnalul continuu este discretizat) :
daca xt ∈ [(n − 1)q nq ] atunci xt ⇒ x n = nq (cu xt s-a notat realizarea particulara a lui
X t la momentul t ).
Semnalul discret poate fi modelat de un sir de v.a. discrete X k(q ) , altfel spus, sursa de
informatie continua devine o sursa discreta X (q ) .
nq
p( x n ) = ∫ f (x )dx ≈ qf (nq )
( n −1)q
n =1 n =1
n =1 n =1
f (nq ) → f ( x ) si q → dx
si relatia entropieidevine:
Concluzie:
a) H (X q ) este entropia unei surse de informatie discrete, deci are semnificatia unei informatii
medii. La limita, cand q → 0 , sursa devine continua si lim H (X (q ) ) este informtia medie a
q →0
sursei continue, ceea ce nu este acelasi lucru cu H ( X ) din cauza termenului − log q . Deci,
entropia sursei continue nu are semnificatia unei cantitati medii de informatie.
b) La limita, termenul − log q tinde catre infinit, de aceea, spunem ca informatia medie a
sursei continue este infinita (in timp ce entropia H ( X ) este de cele mai multe ori o marime
finita).
6.1.2. Inegalitatea fundamentala in cazul distributiilor continue
g (x )
∫ f (x )log f (x ) ≤ 0
R
f (x )
∫ f (x )log g (x )
R
se numeste entropie relativa sau distanta Kullback-Leibler in cazul
distributiilor continue. Este o marime nenegativa; ia valoarea zero cand cele doua distributii
sunt indentice.
b b
Se cauta maximul lui H ( X ) = − ∫ f ( x ) log 2 f (x )dx cu restrictia ∫ f (x )dx = 1
a a
⎧1 / (b − a ) x ∈ [a b]
f (x ) = ⎨
⎩ 0 in _ rest
H max ( X ) = log(b − a )
∞ ∞
Se cauta maximul lui H ( X ) = − ∫ f ( x ) log 2 f (x )dx cu restrictiile ∫ f (x )dx = 1 si media
0 0
statistica m .
Indicatie: Se foloseste metoda multiplicatorului lui Lagrange; se construieste functia:
⎛∞ ⎞ ⎛∞ ⎞
Φ = H ( x ) + λ ⎜⎜ ∫ f ( x )dx − 1⎟⎟ + μ ⎜⎜ ∫ xf ( x )dx − m ⎟⎟ si se deriveaza in raport cu f .
⎝0 ⎠ ⎝0 ⎠
⎧me − mx x≥0
f (x ) = ⎨
⎩ 0 in _ rest
H max ( X ) = log m +
m
log e
∞ ∞
Se cauta maximul lui H ( X ) = − ∫ f ( x ) log 2 f ( x )dx cu restrictiile ∫ f (x )dx = 1 , media
−∞ −∞
statistica m = 0 si varianta σ 2 .
⎛∞ ⎞ ⎛∞ ⎞ ⎛∞ 2 ⎞
Φ = H ( x ) + λ ⎜ ∫ f ( x )dx − 1⎟ + μ ⎜ ∫ xf ( x )dx ⎟ + η ⎜⎜ ∫ x f ( x )dx − σ 2 ⎟⎟ si se deriveaza in raport cu
⎜ ⎟ ⎜ ⎟
⎝0 ⎠ ⎝0 ⎠ ⎝0 ⎠
f.
x − x / 2σ
2 2
f (x ) =
2π σ
(
H max ( X ) = log σ 2πe )
si
x1 , K , x N si ν 1 , K ,ν N
sunt
f ( x1 , K , x N )dx1 K dx N si g (ν 1 , K ,ν N )dν 1 K dν N
⎡ dν 1 dν N ⎤
⎢ dx K ⎥
dx1
⎛V ⎞ ⎢ 1 ⎥
J⎜ ⎟ = ⎢ K K K ⎥
⎝ X ⎠ ⎢ dν N 1 dν N ⎥
K
⎢ dx1 dx N ⎥
⎣ ⎦
⎛V ⎞
f (x1 , K , x N ) = g (ν 1 , K ,ν N ) J ⎜ ⎟
⎝X⎠
ceea ce conduce la urmatoarea relatie intre entropiile semnalului inainte si dupa transformare:
H ( X ) = − ∫ f (x1 , K , x N ) log f (x1 , K , x N )dx1 K dx N =
X
⎛U ⎞
= − ∫ f ( x1 , K , x N ) logg (ν 1 ,K ,ν N ) J ⎜ ⎟ dx1 K dx N =
X ⎝X⎠
⎛U ⎞
= − ∫ f ( x1 , K , x N ) log J ⎜ ⎟ dx1 K dx N − ∫ g (ν 1 , K ,ν N ) logg (ν 1 , K ,ν N )dν 1 K dν N =
X ⎝X ⎠ V
⎛U ⎞
= − ∫ f ( x1 , K , x N ) log J ⎜ ⎟ dx1 K dx N + H (V )
X ⎝X ⎠
ceea ce arata ca, in general, entropia semnalului se schimba atunci cand se aplica o
transformare.
Se poate arata ca, in cazul unei transformari ortogonale (Fourier, Cosinus, etc.) :
⎛V ⎞
J⎜ ⎟ = 1
⎝X⎠
si atunci
Printr-un canal continuu, trec semnale continue atat in timp cat si in amplitudine. De aceea,
intrarea si iesirea canalului sunt modelate prin doua surse continue de informatie.
In acest capitol, se studiaza canalele continue fara memorie (esantioanele semnalului continuu
in aplitudine sunt independente) si stationare (distributia valorilor esantioanelor nu se schimba
in timp).
Pentru a deduce informatia medie transmisa prin canalul continuu, vom porni de la rezultatul
obtinut pentru canalul discret si, prin trecere la limita, vom obtine informatia mutuala in
canalul continuu.
Pp ca semnalul de la intrare este esantionat cu frecventa 2W , unde W este frecventa maxima
din spectrul semnalului (criteriul lui Nyquist). Aceasta ipoteza nu reduce generalitatea
rezultatelor urmatoare deoarece un semnal continuu poate fi reconstruit identic din
esantioanele sale daca acestea au o frecventa ≥ 2W .
Pp., de asemenea, ca semnalul este cuantizat cu cuanta q . Rezultatul este un semnal discret
care poate fi modelat printr-o sursa de informatie discreta avand alfabetul:
si probabilitatile :
[Y ] = [ y1 , y 2 ,K, y M ] unde y m = mq
si probabilitatile:
p (xi , y j )
I ( X , Y ) = ∑∑ p (xi , y j )log =
i j p ( xi ) p ( y j )
f X ,Y ( x, y )q 2
= ∑∑ f X ,Y ( x, y )q 2 log
i j f X ( x)qf Y ( y )q
unde, prin analogie cu cazul discret, se defineste eroarea medie prin canalul continuu:
H (Y / X ) = − ∫ ∫ f X ,Y ( x, y ) log f X ,Y ( y / x )dxdy
Observatie: Spre deosebire de entropie, care isi pierde semnificatia la trecerea de la discret la
continuu, I ( X , Y ) isi pastreaza semnificatia de cantitatea medie de informatie pe esantion.
I (X ,Y ) ≥ 0
Justificare:
f X (x ) f Y ( y )
− I ( X , Y ) = ∫ ∫ f X ,Y ( x, y ) log dxdy ≤ 0
f X ,Y (x, y )
X ⎯⎯→
F
U si Y ⎯⎯→
F
V
Se poate demonstra ca:
I ( X , Y ) = I (U , V )
C = max[2 ⋅ W ⋅ I ( X , Y )] = 2 ⋅ W ⋅ max[H (Y ) − H (Y / X )]
f X (x ) f X (x )
a) Pp. ca avem urmatoarele limitari de putere pentru semnale si zgomotul din canal :
PX este puterea semnalului la intrarea in canal
PY este puterea semnalului la iesirea din canal
N este puterea zgomotului din canal
b) Pp. ca zgomotul este aditiv si independent de semnalul X , transmis prin canal. Se poate
demostra ca, in acest caz :
PY = PX + N
c) Pentru fiecare valoare particulara a lui, X = x0 , incertitudinea medie asupra iesirii este data
numai de zgomot. Prin cuantizarea zgomotului cu cuanta q , numarul de nivele pe care
zgomotul le poate lua este:
N
K=
q
Daca zgomotul este stationar si are o distributie uniforma, atunci nivelele de cuantizare sunt
echiprobabile, iar entropia conditionata este egala cu:
H (Y / X = x0 ) = log K = log
N
q
Daca, in plus, canalul este simetric in raport cu valorile lui X, atunci eroarea medie pentru
toate valorile lui X are expresia de mai sus. Deci, entropia conditionata nu depinde de
distributia lui X , iar capacitatea devine:
⎡ N⎤
C = 2 ⋅ W ⋅ ⎢max H (Y ) − log ⎥
f (x ) q ⎦
⎣ X
Prin cuantizarea semnalului de la iesire cu cuanta q , se obtin m nivele diferite:
Py
m=
q
Py
max H (Y ) = log
f X (x) q
⎛ Py ⎞
C = 2 ⋅ W ⋅ log⎜ ⎟ = W ⋅ log⎛⎜1 + Px ⎞⎟
⎜ N ⎟ ⎝ N⎠
⎝ ⎠
Prin trecere la limita, pentru q → 0 , din relatia anterioara se obtine capacitatea canalului
continuu :
⎛ P ⎞
C = W ⋅ log⎜1 + x ⎟
⎝ N⎠
ceea ce arata ca, in cazul canalului continuu, capacitatea creste cu banda si cu puterea
semnalului de la intrare si descreste cu puterea zgomotului.
⎛ P ⎞
C = W ⋅ log⎜⎜1 + x ⎟⎟
⎝ WN 0 ⎠
Reprezentarea grafica a acestei relatii, arata o curba a capacitatii tinzand asimptotic spre:
⎛ P ⎞ Px
C ∞ = lim W ⋅ log⎜⎜1 + x ⎟⎟ =
W →∞
⎝ WN 0 ⎠ N0
Concluzie: Cresterea largimii de banda peste o anumita valoare nu mai este rationala deoarece
capacitatea canalului nu mai creste decat foarte putin.
C
(Px/N0) loge
W
7. CODAREA DE SURSA
Observatii :
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 de cod.
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.
N
l = ∑ pi li
i =1
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).
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 (compresia care se obtine in cazul sursei din exemplul de mai sus)
1,7
1
rata =
R
neinstantanee
de lungime fixa
ireversibile
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
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 :
x1 → 0
x2 → 1 0
x3 → 1 1
x3 → 1 1 0
x1 → 0
x2 → 1 0
x3 → 1 1 0
x4 → 1 1 1 0
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
Definitie : Fie cuvantul de cod C , constituit din n simboluri ale alfabetului de canal :
C = [c1 K c n ]
Teorema : Conditia necesara si suficienta ca un cod sa fie instantaneu este ca niciun cuvant sa
nu fie prefix al altui cuvant mai lung.
Observatii:
[X ] = [x1 ,K, x N ]
si alfabetul de canal [C ] = [c1 ,K , 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 , K , l N este :
∑D
i =1
− li
<1 (Inegalitatea Kraft-McMillan)
Simbolurile sursei sunt codate cu un cod de lungime medie l . Cuvintele de cod sunt
constituite din simboluri ale alfabetului de canal [C ] = [c1 , K , 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
H (X )
l min =
log 2 D
Observatii:
- daca codarea se face cu alfabet binar, atunci limita inferioara pentru l este chiar
entropia sursei primare H ( X )
- rezultatele acestei sectiuni sunt valabile pentru toate tipurile de coduri, deci si
coduri 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).
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 ) = K = p(c D ) =
1
D
l
⎛1⎞
i
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 pentru Inegalitatea Kraft-McMillan,
deci pot fi si ireductibile
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 ) 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
∑ 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
⎡ log 2 p(x i ) ⎤
Deoarece l i = ⎢− ⎥ , putem scrie:
⎢ log 2 D ⎥
log 2 p (xi )
− ≤ li Ù p ( x i ) ≥ D − li ∀i
log 2 D
∑ 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 : Capacitatea unui cod este maximul cantitatii medii de informatie ce poate fi
transmisa de simbolurile din alfabetul canalului :
C = H max (C ) = log D
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
X 0 , X 1 , X 2 , X 3 , K, X 2 n , X 2 n +1 , K
Definitie : Extensia de ordin 2 a sursei X , este o sursa notata X 2 , care genereaza sirul:
Z 0 , Z1 ,K, Z n ,K
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 (X m ) ( m ) H (X m )
≤l ≤ +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 ) H (X m ) 1
≤l ≤ +
log 2 D log 2 D m
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.
Rolul codarii de canal : La trecerea prin canal, se produc modificari aleatoare ale
informatiei din cauza perturbatiilor. De aceea, la iesirea din canal, informatia nu poate fi
reconstituita fidel. Putem construi totusi, un Codor de canal care sa reduca probabilitatea de
eroare printr-o codare adecvata a sirului de simboluri, inainte ca acestea sa fie transmise prin
canal. La iesirea din canal, Decodorul de canal, face operatia inversa pentru a reconstitui sirul
de simboluri.
Observatie : Codarea de canal nu elimina erorile, ci doar reduce probabilitatea lor de aparitie.
(
1− p x j / y j )
Deoarece, intr-o transmisie printr-un canal cu zgomot, in general probabilitatea de transmisie
corecta este mai mare decat probabilitatea de transmisie eronata, rezulta ca p (x j / y j ) este
probabilitatea care minimizeaza probabilitatea de decodare gresita 1− p (x j / y j ) .
Pentru a minimiza numarul de erori, putem deci construi un decodor care sa decodeze pe y j
in simbolul xi cel mai probabil, adica simbolul pentru care p(xi / y j ) este maxima.
P(E ) = ∑ (1 − p (x j / y j ))p( y j )
j
Observatii:
- decodorul care lucreaza pe acest principiu se numeste Decodor cu rata minima de eroare
- aceasta probabilitate poate fi calculata daca se cunoaste matricea de zgomot a canalului si
probabilitatile simbolurilor la intrarea in canal:
( ( )) ( ) ( ) ( )( ) ( )( )
P (E ) = ∑ 1 − p x j / y j p y j = ∑ p y j − ∑ p y j / x j p x j = 1 − ∑ p y j / x j p x j
j j j j
⎡1 − p p ⎤
Fie canalul cu matricea de zgomot: P(Y / X ) = ⎢ ⎥ unde p este probabilitatea de
⎣ p 1 − p⎦
transmisie eronata. Pentru un p = 0,2 , simbolurile cele mai probabile, cand se receptioneaza,
y1 si y 2 , sunt x1 si, respectiv, x 2 (probabilitatile p(xi / y j ) maxime corespunzatoare sunt
0,8 ). In plus, daca inainte s-a facut o codare de sursa care a condus la simboluri
echiprobabile :
p( x1 ) = p( x 2 ) =
1
2
O metoda simpla de codare de canal este prin repetarea simbolurilor. Ea consta din a
transmite fiecare simbol de un numar impar de ori. Decodarea se face prin logica majoritara.
Exemplul 8.2 :
a) Codarea unui sir binar prin repetare de trei ori a fiecarui simbol (transmisia se face prin
canalul din exemplul anterior)
p( y decodat = 1 / x = 1) = ... = (1 − p ) (1 + 2 p )
2
Rezulta :
P(E ) = 1 − ∑ p ( y j / x j )p(x j ) = 1 − 2(1 − p ) (1 + 2 p ) = p(2 − p ) ≈ 0,1
2 1
j 2
Observatii:
p( y decodat = 0 / x = 0 ) = C 50 (1 − p ) + C 51 p (1 − p ) + C 52 p 2 (1 − p ) = (1 − p ) (1 + 3 p + 6 p 2 )
5 4 3 3
P(E ) = 1 − (1 − p ) (1 + 3 p + 6 p 2 ) ≈ 0,05
3
Observatie :
- probabilitatea de eroare a scazut si mai mult, dar rata de emisie R trebuie sa fie cel
mult o cincime din capacitate de transmisie Cτ :
Cτ
R≤
5
P(E ) ≤ 2 − nE ( R )
E(R)
Cτ R
Observatii :
- Teorema a 2-a a lui Shannon este cunoscuta si sub numele de Teorema codarii
canalelor cu perturbatii
- Functia E (R ) este o caracteristica a canalului de transmisiune
- Teorema a 2-a stabileste ca pe un canal se poate face o transmisie cu probabilitate de
eroare P(E ) oricat de mica, daca rata de emisie a sursei se diminueaza suficient de mult.
- Intr-o aplicatie practica, daca se impune P (E ) , cunoscand functia E (R ) , se poate
determina rata (maxima) de emisie R a sursei sau, daca se impune R , se poate afla P (E ) cu
care se va face transmisia pe canal pentru rata impusa.
In Exemplul 8.2, fiecare simbol al sursei binare era codat printr-un cuvant de lungime 3,
obtinut prin repetarea simbolului. Se obtinea, astfel, o carte de cod constituita din doua
cuvinte :
Definitie : Cuvintele emise de codor se numesc cuvinte cu sens, iar restul cuvintelor de
aceeasi lungime se numesc cuvinte fara sens. Impreuna, ele constituie multimea cuvintelor
de lungime n ( n = 3 in exemplul 8.2).
In Exemplul 8.2, s-au folosit cuvinte de lungime 3. Intr-un spatiu 3D, aceste cuvinte pot fi
reprezentate prin puncte :
Observatii :
Definitie: Distanta Hamming dintre doua cuvinte este egala cu suma bitilor prin care
cuvintele difera.
d H (000,111) = 3
Observatie : In reprezentarea grafica, distanta Hamming este numarul minim de pasi necesari
pentru a trece de la un cuvant la celalalt.
R.W. Hamming (1915-1998) a lucrat la Los Alamos intre 1944 si 1946 si apoi la Bell Labs si
Univ. Princeton.
Codul din Exemplul 8.2. poate corecta o singura eroare (numai cuvintele fara sens care difera
printr-un singur bit de un cuvant cu sens sunt corectate). Daca apar doua erori, cuvantul este
decodat gresit.
Cu acelasi cod, daca nu se incearca corectare ci se doreste doar detectarea cuvantului fara sens,
atunci pot fi detectate doua erori. Spunem ca avem un cod corector de o eroare si detector de
doua erori.
Cuvintele cu sens trebuie alese astfel incat distanta Hamming minima dintre ele sa fie cat mai
mare.
Observatie: este un cod detector de o eroare (de fapt, detector de orice numar impar de erori).
Clasificare :
- coduri ciclice
- coduri convolutionale
Codurile bloc se obtin taind sirul de simboluri ce urmeaza sa fie codat in blocuri de lungime
fixa, numite blocuri de informatie, la care se aduaga simboluri de control, calculate pe baza
simbolurilor de informatie. Simbolurile de control contituie blocul de control.
CUVANT de COD
Coduri bloc :
Formalism matematic :
Observatii :
- cuvintele corecte sunt cuvintele de cod ; ele se mai numesc si cuvinte cu sens
- cuvintele eronate se mai numesc si cuvinte fara sens
- cuvantul de cod este un vector de dimensiune n
- elementele vectorilor sunt numere binare
- cuvintele de cod apartin unui spatiu vectorial, care are o structura de grup in raport
cu operatiile de adunare si inmultire modulo 2 (proprietate care da numele de coduri grup):
+ 0 1
0 0 1
1 1 0
x 0 1
0 0 0
1 0 1
9.1.1. Codarea
Pentru a intelege mecanismul codarii, trebuie cunoscut, mai intai, principiul corectiei/detectiei
de erori. Corectia sau detectia erorilor se fac cu ajutorul corectorilor.
Η (v') = z
Observatii :
a) daca v' este corect, atunci corectorul este nul ; daca v' este un cuvant eronat, atunci
se obtine un z ≠ 0 .
b) pentru corectie, intre multimea cuvintelor fara sens si multimea corectorilor trebuie
sa existe o corespondenta biunivoca.
c) pentru detectia de erori, este suficienta conditia z ≠ 0
∑C
i =1
i
n ≤ 2m −1
Aceasta inegalitate traduce conditia « Numarul total de configuratii posibile de erori trebuie
sa fie mai mic sau egal cu numarul de corectori nenuli. »
Definitie : codurile pentru care inegalitatea de mai sus devine egalitate, se numesc coduri
perfecte sau coduri de redundanta minima.
k + m ≤ 2m −1
Η ⋅ (v ' ) τ = z
Η ⋅ (v ) τ = z
care este echivalenta cu un sistem de m ecuatii liniare, suficiente pentru a determina cele m
simboluri de control necunoscute din componenta cuvantului de cod.
Observatie:
⎡ 1 0 K 0 q11 K q1k ⎤
⎢0 1 K 0 q K q 2 k ⎥⎥
H =⎢ 21
= [I m Q ]
⎢K K K K K K K⎥
⎢ ⎥
⎣ 0 0 K 1 q m1 K q mk ⎦
este utila in obtinerea codurilor sistematice, la care simbolurile de control sunt grupate la
inceputul cuvantului de cod (fiecare ecuatie liniara are ca necunoscuta un singur simbol de
control).
⎡c τ ⎤
[I m Q ] ⋅ ⎢ τ ⎥ = I m cτ ⊕ Qi τ ⇒ c τ = Qi τ
⎣i ⎦
O cale alternativa de a obtine cuvintele de cod este prin intermediul unei matrici G, numita
matrice generatoare. Cuvintele se obtin rezolvand ecuatia:
v = iG
Observatii:
Η ⋅ G τ iτ = 0 ∀i
rezulta Η ⋅ G τ = 0
9.1.2. Decodarea
[
z = Hv ' = H c ' i ] = [I
' τ
m
⎡c ' ⎤
Q ] ⋅ ⎢ ' ⎥ = I m c ' ⊕ Qi ' = c ' ⊕ c ''
⎣i ⎦
v = v' ⊕ ε
Observatii :
ε = [ε 1 K ε n ]
si cuvantul eronat
v' = v ⊕ ε
(
z = Hv ' = H vτ ⊕ ε τ = Hε τ )
Daca notam h1 , h2 , K , hn , coloanele matricii de control, atunci corectorul este:
z = ∑ hi ε i
i
Proprietati :
- sumele oricaror e coloane ale matricii de control trebuie sa fie diferite intre ele
(deoarece corectorii trebuie sa fie diferiti intre ei)
- ponderea cuvintelor de cod este minim 2e + 1 (exceptie cuvantul constituit numai din
‘0’)
Definitie : Ponderea unui cuvant de cod este data de numarul
de simboluri ‘1’ din componenta cuvantului.
d (v, w) = v ⊕ w
deci 2e + 1 .
Corectorii trebuie sa fie nenuli, dar pot fi identici pentru erori diferite.
Cazuri particulare:
H = [1 1 K 1]
se poate obtine un cod detector de un numar impar de erori (suma modulo 2 a unui nr
impar de ‘1’ este ‘1’). Acest cod este cunoscut sub numele de bit de paritate.
Observatii :
- bordand cu o linie de ‘1’ matricea H a unui cod corector de e erori, acesta capata si
proprietate de cod detector de un numar impar de erori
⎡0 h1 K hn ⎤
H '= ⎢ ⎥
⎣1 1 1 1 ⎦
⎡0 0 0 1 1 1 1⎤
H = ⎢⎢0 1 1 0 0 1 1⎥⎥
⎢⎣1 0 1 0 1 0 1⎥⎦
v = [c1 c2 i3 c4 i5 i6 i7 ]
Observatii :
z = ∑ hi ε i = h3
i
Codurile ciclice fac parte din categoria codurilor bloc. Pentru reprezentarea cuvintelor de cod,
se folosesc aceleasi notatii ca la codurile grup (Sectiunea 8.1):
Elementele vectorilor ∈ GF (2 ) .
∑C
i =1
i
n ≤ 2m −1
v = [v0 K v n −1 ] Ù v( x ) = v0 + v1 x + K + v n −1 x n −1
Observatie :
i(x ) = i0 + i1 x + K + ik −1 x k −1
c( x ) = c0 + c1 x + K + c m −1 x m −1
Observatie :
h( x ) = h0 + h1 x
v( x ) = v0 + v1 x + v 2 x 2
Produsul celor doua clase este tot o clasa de resturi :
x3 + 1 = 0 x3 = 1
Deci
Observatie:
- conditia h( x )v( x ) = 0 este echivalenta cu
h0 v0 + h1v 2 = 0
h0 v1 + h1v0 = 0
h0 v 2 + h1v1 = 0
⎡h0 0 h1 ⎤ ⎡v0 ⎤
⎢h h0 0 ⎥⎥ ⋅ ⎢⎢ v1 ⎥⎥ = 0
⎢ 1
⎢⎣ 0 h1 h0 ⎥⎦ ⎢⎣v 2 ⎥⎦
Cuvintele cu sens se aleg astfel incat sa fie multiplii unui polinom g (x ) , de grad m , numit
polinom generator :
g ( x ) = g 0 + g1 x + K + g m x m
p( x ) = g ( x )h( x )
9.3.5. Codarea
v( x ) = i( x )g ( x )
Observatii :
v( x ) = c( x ) + x m i ( x )
v( x ) c( x ) + x m i ( x ) x m i(x )
rest = 0 Ù rest = c( x ) + rest =0
g (x ) g (x ) g (x )
Deci :
x m i(x )
c( x ) = rest
g (x )
9.3.6. Decodarea
v' ( x ) = v(x ) + ε ( x )
ε (x ) = ε 0 + K + ε n −1 x n −1
- calculul corectorului:
v' ( x ) ε (x )
z ( x ) = rest = rest
g (x ) g (x )
- identificarea pozitiilor eronate se face prin cautare intr-un tabel predefinit, in care
pe o coloana avem toate polinoamele ε (x ) posibile si pe cealalta, corectorii z (x )
corespunzatori. Acest tabel se numeste Tablou al claselor de resturi.
- corectarea cuvantului:
v( x ) = v' ( x ) + ε ( x )
v(x )
i( x ) =
g (x )
x m i' (x )
c ' ' ( x ) = rest
g (x )
- se corecteaza cuvantul:
v( x ) = v' ( x ) + ε ( x )
Observatii :
x m i' (x )
z ( x ) = c' (x ) + c' ' ( x ) = c' (x ) + rest
g (x )
c' (x ) fiind de grad < m , relatia anterioara se poate scrie:
h( x ) = h0 + h1 x + K + hk x k
si
Observatie:
Daca notam
⎡ g (x ) ⎤ ⎡ g 0 g1 K g m 0 K 0⎤
⎢ xg ( x ) ⎥ ⎢ 0 g 0 g1 K gm 0 K ⎥⎥
⎢ ⎥ ⎢
G = ⎢ K ⎥ = ⎢K K K K K K K⎥
⎢ ⎥ ⎢ ⎥
⎢ K ⎥ ⎢K K K K K K K⎥
⎢⎣ x k −1 g (x )⎥⎦ ⎢⎣ 0 K 0 g0 g1 K g m ⎥⎦
v = [v0 v1 K K v n −1 ]
i = [i0 i1 K K i k −1 ]
v = i ⋅G
⎡h0 0 K K K h2 h1 ⎤ ⎡ v0 ⎤
⎢h h 0 K K h3 h2 ⎥⎥ ⎢⎢ v1 ⎥⎥
⎢ 1 0
⎢K K K K K K K⎥ ⋅ ⎢ K ⎥ = 0
⎢ ⎥ ⎢ ⎥
⎢K 0 hk K K h0 0⎥ ⎢K⎥
⎢⎣K K 0 hk K h1 h0 ⎥⎦ ⎢⎣v n −1 ⎥⎦
Daca v sunt cuvinte de cod sistematice, numai m elemente trebuie determinate (simbolurile
de control). In acest caz, se lucreaza cu o matrice redusa la m linii:
⎡hk hk −1 K K K 0 0⎤
⎢0 h hk −1 K K 0 0 ⎥⎥
⎢ k
H = ⎢K K K K K K K⎥
⎢ ⎥
⎢K 0 hk K K h0 0 ⎥
⎢⎣K K 0 hk K h1 h0 ⎥⎦
Observatie:
Hvτ = 0
- intre G si H , exista aceeasi relatie ca la codurile grup :
GH τ = HG τ = 0
Proprietatea 1: Orice permutare circulara a unui cuvant de cod este tot un cuvant de cod.
Justificare :
Proprietatea 2: Orice combinatie liniara de cuvinte de cod este tot un cuvant de cod.
Justificare:
Observatie:
9.3.10. Exemplu: Codarea si decodarea folosind un cod ciclic corector de o eroare, pentru
blocuri de informatie de lungime k = 4 .
v( x ) = c( x ) + x 3 i ( x ) = 1 + x + x 5
deci v = [1 1 0 0 0 1 0]
(
Alternativa 2: Codare folosind polinomul de control h( x ) = ( x + 1) x 3 + x + 1 )
Alternativa 3: Codare cu cod nesistematic folosind polinomul generator g ( x )
Alternativa 4: Codare folosind matricea generatoare G
Alternativa 5: Codare folosind matricea de control H
10. CODURI CONVOLUTIONALE
10.1. Codarea
Exemplu: cod cu k=3 si m/n=1/2. Polinoamele generatoare sunt (1,1,1) si (1,0,1). Acest cod
se mai noteaza si (7,5).
Codorul este un automat finit, cu 4 stari in cazul exemplului de mai sus. Starea este data de
iesirile celor doua bistabile (FF = Flip Flop). Bistabilele sunt reprezentate simplificat: o iesire,
o intrare (cealalta este pusa la masa) si fara intrare pentru semnalul de ceas.
Tabelul urmator se numeste tabel al tranzitiilor starilor ( state transition table) sau tabel al
starii urmatoare ( the next state table):
Next State, if
00 00 10
01 00 10
10 01 11
11 01 11
Tabelul iesirilor descrie rezultatul celor doua sumatoare, in functie de starea curenta si de
intrare:
Output Symbols, if
00 00 11
01 11 00
10 10 01
11 01 10
Capacitatea de corectie
Distanta libera (free distance) d este Distanta Hamming minima dintre toate secventele de
aceeasi lungime. Numarul de erori care pot fi corectate se determina din ecuatia:
d=2e+1
Spre deosebire de codurile bloc, condurile convolutionale pot corecta si trenuri de erori, nu
numai erori disparate. Capacitate se mai exprima si ca lungimea maxima a trenului de erori,
aparut la inceputul codarii, ce poate fi corectat.
10.2. Decodarea
Pentru valori relativ mici ale lui k, algoritmul Viterbi de decodare este universal
folosit deoarece permite gasirea secventei celei mai probabile si se preteaza la
calculul paralel. Codurile decodabile Viterbi, concatenate cu coduri Reed-
Solomon de lungime mare, duc la probabilitati de eroare foarte scazute. Aceasta
solutia fost folosita de programul spatial Voyager.
Principiu: se cauta traseul cel mai apropiat de traseul corespunzator semnalului receptionat.
Traseul cel mai apropiat ne conduce la secventa corectata.
Decodarea se face construind traseele posibile, pas cu pas, si calculand eroarea acumulata.
Dupa primii 3 pasi, se intra intr-un regim in care, la fiecare pas, intr-un nod ajung doua trasee.
Se renunta la cel care are eroarea acumulata cea mai mare.
Tabelul urmator contine erorile ecumulate la fiecare pas, in fiecare stare, pentru secventa de
15 biti.
t= 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
State 0 2 3 3 3 3 4 1 3 4 3 3 2 2 4 5 2
002
State 3 1 2 2 3 1 4 4 1 4 2 3 4 4 2
012
State 2 0 2 1 3 3 4 3 1 4 1 4 3 3 2
102
State 3 1 2 1 1 3 4 4 3 4 2 3 4 4
112
Secventa decodata corespunde traseului care conduce la cea mai mica eroare acumulata.
Eroarea acumulata coincide cu numarul de erori corectate.
Tabelul urmator prezinta secventa starilor corespunzatoare traseului cu cea mai mica eroare
acumulata:
t= 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
0 0 2 1 2 3 3 1 0 2 1 2 1 0 0 2 1 0
Pentru a recupera secventa de informatie, se foloseste urmatorul table (valabil pentru
exemplul nostru de cod cu rata 1/2 si K = 3):
002 = 0 0 x 1 x
012 = 1 0 x 1 x
102 = 2 x 0 x 1
112 = 3 x 0 x 1
t= 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 0 1 1 1 0 0 1 0 1 0 0 0 1
1. Al. Spătaru, Teoria Transmisiunii Informaţiei, Editura Didactică şi Pedagogică, Bucureşti, 1983.
2. Al. Spătaru, Fondaments de la Theorie de la Transmission de l'Information, Presses Polytechnique
Romandes, 1987.
3. A.T. Murgan, Principiile Teoriei Informaţiei în Ingineria Informaţiei şi a Comunicaţiilor, Editura
Academiei Romane, Bucureşti, 1998.
4. Valeriu Munteanu, Teoria Transmiterii Informaţiei, Editura “Gh. Asachi”, Iaşi, 2001.
5. A.T. Murgan, Iulia Spanu, Inge Gavat, I. Sztojanov, V.E. Neagoe, Adriana Vlad, Teoria
Transmisiunii Informaţiei. Probleme, Editura Didactică şi Pedagogică, Bucureşti, 1983.