Corso di Laurea a Distanza in Ingegneria Elettrica
Corso di Comunicazioni Elettriche
Teoria dell’informazione
A.A. 2008-09
Alberto Perotti
DELEN-DAUIN
Modello di sistema di comunicazione
•
Il modello di sistema di comunicazione proposto da
C. E. Shannon è il seguente:
Sorgente
Codificatore
di sorgente
Voce, video,
musica, dati, …
Zip, JPEG, MPEG, MP3,
vocoder GSM e UMTS, …
Destinatario
DELEN–DAUIN
Decodificatore
di sorgente
Codificatore
di canale
Modulatore
Canale
Decodificatore
di canale
Demodulatore
2
1
Sorgente stazionaria discreta
•
La sorgente d’informazione è caratterizzata da un
alfabeto X costituito da M simboli:
•
La sorgente emette messaggi
costituiti da una sequenza di
simboli:
x0, x1, …
Sorgente
3
DELEN–DAUIN
Sorgente stazionaria discreta (cont.)
•
L’emissione di un simbolo è un esperimento casuale il
cui spazio campione coincide con l’alfabeto X .
•
Ogni simbolo è emesso dalla sorgente estraendolo
dall’alfabeto con probabilità
•
Il messaggio è quindi
rappresentabile come
un processo casuale
stazionario.
DELEN–DAUIN
x0, x1, …
Sorgente
4
2
Informazione
•
Ad ogni simbolo dell’alfabeto è associata una grandezza
chiamata informazione:
•
Interpretazione:
–
–
•
Un simbolo molto probabile contiene poca informazione
Un simbolo poco probabile contiene molta informazione
Unità di misura: bit (logaritmo in base 2)
5
DELEN–DAUIN
Informazione (cont.)
•
Una generale proprietà dell’informazione così definita:
•
Simboli poco probabili, la cui emissione è un evento
raro, forniscono una quantità elevata di informazione.
Simboli molto probabili, la cui emissione è un evento
frequente, forniscono una quantità ridotta di
informazione.
•
DELEN–DAUIN
6
3
Informazione (cont.)
•
Altra proprietà interessante:
•
Cioè l’emissione di una coppia di simboli
statisticamente indipendenti fornisce una quantità
d’informazione pari alla somma delle informazioni
fornite dai singoli simboli
7
DELEN–DAUIN
Entropia
•
Il contenuto informativo medio dell’intera sorgente,
intesa come l’insieme dell’alfabeto e della sua associata
distribuzione di probabilità, è misurato dall’entropia di
sorgente:
•
Si tratta di una media pesata dell’informazione associata
ad ogni simbolo
–
•
L’informazione è pesata con la corrispondente probabilità di
simbolo.
Unità di misura: bit/simbolo (logaritmo in base 2)
DELEN–DAUIN
8
4
Entropia (cont.)
•
Esempio: sorgente binaria X = {0, 1} con p0 = p,
p1 = 1 – p.
•
Valore massimo
–
•
p=½ H=1
H(X)
1
Valori minimi
–
p = 0, p =1 H = 0
0
½
1
p
9
DELEN–DAUIN
Entropia (cont.)
•
Teorema: l’entropia di una sorgente con alfabeto X
costituito da M simboli soddisfa la disuguaglianza
•
L’uguaglianza è raggiunta solo quando tutti i simboli
sono equiprobabili.
DELEN–DAUIN
10
5
Entropia (cont.)
•
Esercizio: calcolare l’entropia di una sorgente con
alfabeto X costituito da 4 simboli con probabilità
–
–
–
•
p1 = ½
p2 = ¼
p3 = p4 = 1/8
Soluzione:
11
DELEN–DAUIN
Il canale discreto
•
•
Si tratta di un sistema avente |X | ingressi e |Y | uscite,
caratterizzato dalle probabilità condizionali di
transizione.
Esempio: il canale binario simmetrico
1-p
1
1
p
Y
X
p
0
DELEN–DAUIN
1-p
0
12
6
Il canale discreto (cont.)
•
•
Esempio: il canale quaternario.
Può essere descritto mediante
una matrice:
p11
x1
y1
p12
p21
x2
X
y2
Y
p31
x3
y3
p41
x4
p43
y4
p44
13
DELEN–DAUIN
Il canale discreto (cont.)
•
Si definisce l’entropia d’ingresso
come
p11
x1
y1
p12
p21
x2
X
•
Misura l’informazione media
dell’alfabeto di sorgente.
y2
Y
p31
x3
p41
x4
y3
p43
y4
p44
DELEN–DAUIN
14
7
Il canale discreto (cont.)
•
Si definisce l’entropia d’uscita
come
p11
x1
y1
p12
p21
x2
X
•
Misura l’informazione media
dell’alfabeto d’uscita.
y2
Y
p31
x3
y3
p41
x4
p43
y4
p44
15
DELEN–DAUIN
Il canale discreto (cont.)
•
Si definisce l’entropia congiunta
come
p11
x1
y1
p12
p21
x2
•
X
Misura l’informazione media
fornita da una coppia costituita da
un simbolo d’ingresso e da uno
d’uscita.
y2
Y
p31
x3
p41
x4
y3
p43
y4
p44
DELEN–DAUIN
16
8
Il canale discreto (cont.)
•
Si definisce l’entropia
condizionale H(X|Y) come
p11
x1
y1
p12
p21
x2
X
•
Misura l’informazione media
necessaria per specificare un
simbolo d’ingresso dato il simbolo
d’uscita.
y2
Y
p31
x3
p41
x4
y3
p43
y4
p44
17
DELEN–DAUIN
Mutua informazione
•
L’entropia condizionale H(X|Y) (equivocazione)
rappresenta la parte di informazione che viene persa durante
la trasmissione sul canale.
DELEN–DAUIN
18
9
Mutua informazione (cont.)
•
La mutua informazione può anche essere espressa nel
seguente modo:
| X | |Y |
I ( X ; Y ) = H ( X ) − H ( X | Y ) = ∑∑ P{xi , yi } log
i =1 j =1
•
P{xi , yi }
P{xi }P{ yi }
Significato: se le variabili casuali X e Y sono statisticamente
indipendenti (cioè l’uscita Y non fornisce alcuna
informazione sull’ingresso X), allora P{xi, yi} = P{xi}P{yi}
e la mutua informazione si annulla.
19
DELEN–DAUIN
Capacità del canale discreto
•
La capacità del canale è definita come la massima mutua
informazione:
•
La massimizzazione è effettuata rispetto alla distribuzione
di probabilità della sorgente.
DELEN–DAUIN
20
10
Capacità del canale binario simmetrico
•
•
•
Per calcolare la mutua informazione I(X;Y) è necessario
conoscere H(X) e H(X|Y)
L’entropia di una sorgente binaria con probabilità
{½, ½} vale H(X) = 1.
L’entropia condizionale H(X|Y) vale
quindi è necessario conoscere le probabilità P{xi|yi}
DELEN–DAUIN
21
Capacità del canale binario simmetrico
•
Il canale binario simmetrico è definito mediante le
probabilità
DELEN–DAUIN
22
11
Capacità del canale binario simmetrico (cont.)
•
Poiché
e, per il teorema della probabilità totale
si ottiene
DELEN–DAUIN
23
Capacità del canale binario simmetrico (cont.)
•
•
L’entropia condizionale H(X|Y) assume quindi la seguente
forma:
dove p è la probabilità di errore del canale binario
simmetrico.
Infine:
DELEN–DAUIN
24
12
Capacità del canale binario simmetrico (cont.)
•
Si può dimostrare che
I(X;Y)
p=0
si ottiene per simboli
d’ingresso equiprobabili.
•
Nel caso binario,
P{X = 0} = P{X = 1} = ½.
1
p = 0.1
p = 0.2
0
½
1
P{x1}
25
DELEN–DAUIN
Codifica di sorgente
•
Supponiamo di voler trasmettere i simboli dell’alfabeto X usando un
canale binario.
•
Ogni simbolo xi deve essere rappresentato mediante una sequenza
finita di bit ci, che chiameremo parola di codice, di lunghezza ni bit.
•
Definiamo codificatore di sorgente il sistema che associa i simboli di
sorgente xi alle parole di codice ci.
•
Poiché ciascun simbolo di sorgente xi compare con probabilità pi
all’uscita della sorgente, anche la corrispondente parola di codice ci
di lunghezza ni comparirà con la stessa probabilità pi all’uscita del
codificatore
DELEN–DAUIN
26
13
Codifica di sorgente (cont.)
•
Per ragioni di economia nell’uso delle risorse trasmissive
(bande di frequenza, potenza, ecc.), si è interessati alla
minimizzazione della lunghezza media delle parole di
codice:
27
DELEN–DAUIN
Codifica di sorgente (cont.)
•
•
•
L’idea di fondo è quella di associare
–
parole di codice corte ai simboli più frequenti
–
parole di codice lunghe ai simboli meno frequenti
In questo modo, si trasmettono più frequentemente parole
di codice corte, mentre è più raro l’utilizzo delle parole
lunghe.
In conclusione, si usa il canale per un numero di volte
minore, ossia si opera una compressione.
DELEN–DAUIN
28
14
Codifica di sorgente (cont.)
•
La minimizzazione di E[n] deve essere effettuata tenendo
conto del seguente vincolo (vincolo del prefisso):
–
un codice viola il vincolo del prefisso se esiste una parola di
codice che contiene, come sua parte iniziale, un’altra parola di
codice
•
Un codice che viola tale vincolo è non univocamente
decodificabile.
•
Un codice che non viola tale vincolo è anche chiamato
prefix code.
29
DELEN–DAUIN
Codifica di sorgente (cont.)
•
Esempio:
–
–
w1 = 0, w2 = 01, w3 = 10, w4 = 100 viola il vincolo del prefisso
perché w2 contiene w1 come sua parte iniziale e w4 contiene w3
come sua parte iniziale.
Il messaggio 010010 è decodificabile come
•
•
•
•
–
w1w4w3
w2w1w1w3
w1w3w2w1
w1w3w1w3
Quindi tale codice è non univocamente decodificabile
DELEN–DAUIN
30
15
Algoritmo di Huffman
•
Consente di ottenere il prefix code ottimo (dal punto di
vista della lunghezza media) dato un alfabeto e la sua
distribuzione di probabilità.
•
Consiste nell’esecuzione della seguente procedura:
–
–
–
Ordinare i simboli in base alla loro probabilità
Raggruppare i due simboli xi e xj meno probabili in un nuovo
“simbolo equivalente” avente probabilità pari alla somma delle
loro probabilità: pi + pj
Ripetere i passi precedenti finché si ottiene un solo simbolo
equivalente con probabilità 1.
DELEN–DAUIN
31
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
32
16
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
33
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
34
17
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
35
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
36
18
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
37
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
38
19
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
39
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
40
20
Algoritmo di Huffman (cont.)
•
Esempio: è dato l’alfabeto X = {x1, x2, x3, x4, x5} con
distribuzione di probabilità {1/3, 1/4, 1/6, 1/6, 1/12}
DELEN–DAUIN
41
Algoritmo di Huffman (cont.)
•
Tutte le parole di codice corrispondono alle foglie
dell’albero che si è costruito.
•
Il codice ottenuto soddisfa quindi il vincolo del prefisso
per costruzione.
•
Inoltre, si ha
DELEN–DAUIN
42
21
Lunghezza media
•
Teorema: è sempre possibile trovare un codice che
soddisfa il vincolo del prefisso con lunghezza media
43
DELEN–DAUIN
Esercizio 1
•
La sorgente S emette simboli dall’alfabeto X = {xi},
i = 1, 2, 3 con probabilità
–
–
–
•
•
•
p1 = 0.6
p2 = 0.3
p3 = 0.1
Calcolare l’entropia della sorgente
Determinare il codice di sorgente ottimo che rispetti il
vincolo del prefisso.
Calcolare la lunghezza media delle parole di codice.
DELEN–DAUIN
44
22
Esercizio 1 - soluzione
•
L’entropia della sorgente vale
H ( X )= 0.6 log
•
1
1
1
+ 0.3 log
+ 0.1 log
= 1.295
0.6
0. 3
0.1
Si osservi che H ( X )< log(3) = 1.585
valore che si otterrebbe se in ingresso si avesse una
distribuzione uniforme
45
DELEN–DAUIN
Esercizio 1 - soluzione
•
Applicando l’algoritmo di Huffman, si ottengono le
seguenti parole di codice
–
–
–
•
C (x1) = 0
C (x2) = 10
C (x3) = 11
La lunghezza media delle parole di codice è 1.4 bit.
DELEN–DAUIN
46
23
Esercizio 2
•
Con la sorgente definita nell’esercizio precedente,
considerando coppie di simboli di sorgente, determinare il
codice di sorgente ottimo che rispetti il vincolo del
prefisso.
•
Calcolare la lunghezza media delle parole di codice e
confrontarla con il risultato ottenuto all’esercizio
precedente.
47
DELEN–DAUIN
Esercizio 2 – soluzione
•
Le parole di codice associate all’alfabeto X 2 = {xi xj },
i, j = 1, 2, 3 sono
•
•
•
•
•
•
•
•
•
C (x1 x1) = 0
C (x1x2) = 100
C (x2x1) = 101
C (x2x2) = 1110
C (x1x3) = 1100
C (x3x1) = 1101
C (x2x3) = 11110
C (x3x2) = 111110
C (x3x3) = 111111
DELEN–DAUIN
48
24
Esercizio 2 – soluzione (cont.)
•
La lunghezza media delle parole di codice è 2.67
•
Il valore ottenuto è maggiore rispetto al valore di 1.4
ottenuto all’esercizio 1.
–
Tuttavia, ogni parola di codice corrisponde a 2 simboli di
sorgente, quindi la lunghezza media per simbolo di sorgente vale
1.335 bit, valore minore del precedente.
49
DELEN–DAUIN
Esercizio 3
•
È data una sorgente binaria X = {0, 1} con probabilità
P{X = 0} = 1 – P{X = 1} = 0.3.
•
I simboli vengono trasmessi su un canale binario
simmetrico con probabilità di errore p = 0.1.
•
Determinare il codice di sorgente ottimo per X 2 e per
X 3 che rispetti il vincolo del prefisso.
•
Determinare la capacità (mutua informazione) del canale
senza e con il codificatore di sorgente
DELEN–DAUIN
50
25
Esercizio 3 - suggerimenti
•
Determinare il codice di sorgente ottimo per X 2 e per
X 3 che rispetti il vincolo del prefisso.
–
•
Applicare l’algoritmo di Huffman agli alfabeti X 2 e X 3
Determinare la capacità (mutua informazione) del canale
–
Calcolare la mutua infomazione come
I ( X ;Y ) = H ( X ) − H ( X | Y )
51
DELEN–DAUIN
Esercizio 3 - suggerimenti
•
È necessario calcolare, applicando il teorema della
probabilità totale, le probabilità a posteriori
P{ y0 } = P{ y0 | x0 }P{x0 } + P{ y0 | x1}P{x1} = 0.34
P{ y1} = P{ y1 | x0 }P{x0 } + P{ y1 | x1}P{x1} = 0.66
•
Quindi si calcola
DELEN–DAUIN
52
26
Esercizio 4
•
Un canale discreto (senza memoria) è caratterizzato dalla
seguente matrice delle probabilità di transizione
0.9 0.1
P=

0.2 0.8
•
•
•
In ingresso, è presente una sorgente binaria equiprobabile.
Calcolare la mutua informazione
Considerare ora una sorgente che emette simboli binari
con P{0} = 0.6 e P{1} = 0.4. Ripetere il calcolo della
mutua informazione.
53
DELEN–DAUIN
Riferimenti bibliografici
[1]
G. Prati, Videocorso “Teoria dei Segnali”
[2]
S. Benedetto, E. Biglieri, Principles of Digital Transmission with Wireless
Applications , Kluwer, New York, 1999
DELEN–DAUIN
54
27