Esercizio - canale binario con rumore aleatorio, capacità e Huffman sulle triplette (secondo compitino dell'11 gennaio 2019, es. 90)
In questa pagina 6
Testo (secondo compitino dell'11 gennaio 2019, esercizio 90). Si consideri un canale con ingresso binario , uscita binaria dove l'uscita dipende sia dall'ingresso che dal valore assunto da una terza variabile aleatoria binaria indipendente da , con densità discreta di probabilità e Il periodo dei simboli in ingresso è ms.
- Calcolare per tutti i valori di e e dire se il canale in esame è binario simmetrico e senza memoria, giustificando la risposta.
- Calcolare la capacità del canale, specificando la statistica dell'ingresso che raggiunge la capacità.
- Considerare la sorgente che genera come simboli le otto triplette , con avente la statistica trovata al punto precedente. Trovarne un codice di sorgente a prefisso binario ottimo e calcolare la lunghezza media delle parole di codice.
- Dire se il codice trovato al punto 3 raggiunge il limite inferiore sulla lunghezza media stabilito dal teorema di Shannon, giustificando la risposta.
- Senza calcolare nessuna nuova entropia dire se è maggiore, strettamente maggiore, minore, strettamente minore o uguale a e , giustificando le risposte.
Teoria usata: Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon → (punti 1-2), Formula delle probabilità totali e formula di BayesSe (A_i) è una partizione di Ω, P(B) = Σ P(B ∣ A_i) P(A_i) (probabilità totali); la formula di Bayes inverte il condizionamento: P(A_k ∣ B) = P(B ∣ A_k) P(A_k) / P(B).Formula delle probabilità totali e formula di Bayes → (punto 1), Codici di Shannon, Huffman ed Elias e codifica aritmeticaIl codice di Shannon(-Fano) assegna alla parola $i$ lunghezza $l_i=\lceil-\log_{M_y}p_i\rceil$, soddisfa Kraft-McMillan e ha $H\le L_y<H+1$; è ottimo solo se le probabilità sono potenze di $\frac1{M_y}$. Il codice ottimo (lunghezza media minima) dà parole più lunghe ai simboli meno probabili e ha almeno due parole di lunghezza massima che differiscono solo nell'ultimo simbolo: lo costruisce la procedura di Huffman, che unisce a ogni passo i due nodi meno probabili. Il codice di Elias prende le prime $l_i=\lceil-\log_2p_i\rceil+1$ cifre del punto medio dell'intervallo di ampiezza $p_i$ in $[0,1)$: è a prefisso ma subottimo ($H+1\le L_y<H+2$), e si adatta alla codifica aritmetica adattativa.Codici di Shannon, Huffman ed Elias e codifica aritmetica → (punto 3), Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza mediaLa codifica di sorgente senza perdite associa a ogni parola emessa dalla sorgente una parola di codice binaria (o $M_y$-aria) di lunghezza variabile, in modo invertibile; la qualità si misura con la lunghezza media $L_y=\sum p_{\underline x}(\underline a),l(\underline a)$. In un codice a prefisso nessuna parola è l'inizio di un'altra, quindi la decodifica è istantanea. Kraft-McMillan: ogni codice decodificabile ha $\sum M_y^{-l_i}\le1$, e se interi $l_i$ la soddisfano esiste un codice a prefisso con quelle lunghezze. Shannon: $\frac{H(\underline x)}{\log_2M_y}\le L_y<\frac{H(\underline x)}{\log_2M_y}+1$ per il codice a prefisso ottimo, con $L_y=\frac{H}{\log_2M_y}$ solo se le probabilità sono potenze di $\frac1{M_y}$.Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza media → (punto 4), Entropia congiunta e condizionata e informazione mutuaPer due variabili aleatorie discrete $x,y$ l'entropia congiunta è $H(x,y)=E\left[\log_2\frac1{P_{x,y}(x,y)}\right]$ e vale $\max{H(x),H(y)}\le H(x,y)\le H(x)+H(y)$, con l'uguaglianza a destra se e solo se $x$ e $y$ sono indipendenti e $H(x,y)=H(x)$ se $y=f(x)$. L'entropia condizionata $H(x|y)=E_y[H(x|y=y)]$ soddisfa la regola della catena $H(x,y)=H(x|y)+H(y)=H(y|x)+H(x)$. L'informazione mutua $I(x;y)=H(x)+H(y)-H(x,y)=H(x)-H(x|y)=H(y)-H(y|x)$ è simmetrica, $0\le I\le\min{H(x),H(y)}$, nulla per variabili indipendenti.Entropia congiunta e condizionata e informazione mutua → (punto 5).
(1) Probabilità di transizione e tipo di canale
Il ricevitore non conosce , quindi il canale visto da a si ottiene marginalizzando su con la formula delle probabilità totali. Poiché è indipendente da , (, ): Per differenza (, e allo stesso modo per ): . Verifica diretta: ✓.
Il canale è binario simmetrico con probabilità d'errore . È senza memoria se la variabile viene estratta in modo indipendente a ogni uso del canale (ogni simbolo ha il suo valore di , a monte indipendente dagli altri): la soluzione del corso assume questo. (Se invece restasse fissa per tutti gli usi, i simboli sarebbero correlati attraverso e il canale avrebbe memoria.)
(2) Capacità e ingresso ottimo
Per un BSC senza memoria, non dipende dall'ingresso, e è massima ( bit) con ingresso uniforme (Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon →). La capacità si raggiunge quindi con ed è (Controllo numerico: massimizzando sulla densità d'ingresso, il massimo è in e vale bit per uso.)
Osservazione. Se il ricevitore conoscesse , avrebbe due BSC: con () e con () bit per uso, e in media bit per uso ( bit/s), più dei ( bit/s) del canale con ignoto: sapere in quale stato è il canale vale circa bit/s.
(3) Codice di Huffman per le triplette
Con uniforme () e indipendente da , la probabilità di ogni tripletta è Si ha e , da moltiplicare per o (se , o ) e per o (se ):
| Calcolo | ||
|---|---|---|
| e | ciascuna | |
| e | ciascuna | |
| e | ciascuna | |
| e | ciascuna |
La somma è ✓. Huffman, unendo i due nodi meno probabili a ogni passo:
| Passo | Nodi disponibili | Unione |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 | ||
| 6 | ||
| 7 | radice |
Un codice ottenuto:
| Parola | Lunghezza | ||
|---|---|---|---|
controllo con i nodi interni: ✓.
(4) Raggiunge il limite di Shannon?
Il limite inferiore è l'entropia delle triplette. Poiché ogni valore compare due volte con la stessa probabilità, Poiché il codice non raggiunge il limite: l'uguaglianza vale solo se tutte le probabilità sono potenze di (Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza mediaLa codifica di sorgente senza perdite associa a ogni parola emessa dalla sorgente una parola di codice binaria (o $M_y$-aria) di lunghezza variabile, in modo invertibile; la qualità si misura con la lunghezza media $L_y=\sum p_{\underline x}(\underline a),l(\underline a)$. In un codice a prefisso nessuna parola è l'inizio di un'altra, quindi la decodifica è istantanea. Kraft-McMillan: ogni codice decodificabile ha $\sum M_y^{-l_i}\le1$, e se interi $l_i$ la soddisfano esiste un codice a prefisso con quelle lunghezze. Shannon: $\frac{H(\underline x)}{\log_2M_y}\le L_y<\frac{H(\underline x)}{\log_2M_y}+1$ per il codice a prefisso ottimo, con $L_y=\frac{H}{\log_2M_y}$ solo se le probabilità sono potenze di $\frac1{M_y}$.Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza media →), e qui (, , , ) non lo sono. Vale comunque ✓, con efficienza . (La soluzione del corso scrive : è arrotondato per difetto.)
(5) Confronti senza calcolare entropie nuove
- (strettamente minore). (Entropia congiunta e condizionata e informazione mutuaPer due variabili aleatorie discrete $x,y$ l'entropia congiunta è $H(x,y)=E\left[\log_2\frac1{P_{x,y}(x,y)}\right]$ e vale $\max{H(x),H(y)}\le H(x,y)\le H(x)+H(y)$, con l'uguaglianza a destra se e solo se $x$ e $y$ sono indipendenti e $H(x,y)=H(x)$ se $y=f(x)$. L'entropia condizionata $H(x|y)=E_y[H(x|y=y)]$ soddisfa la regola della catena $H(x,y)=H(x|y)+H(y)=H(y|x)+H(x)$. L'informazione mutua $I(x;y)=H(x)+H(y)-H(x,y)=H(x)-H(x|y)=H(y)-H(y|x)$ è simmetrica, $0\le I\le\min{H(x),H(y)}$, nulla per variabili indipendenti.Entropia congiunta e condizionata e informazione mutua →), che è perché e non sono indipendenti: , cioè conoscere cambia la densità di . L'uguaglianza si avrebbe solo per un canale con .
- (strettamente minore). Per la regola della catena e bit ( è uniforme): quindi .
(Come controllo, a calcoli fatti: , ( è uniforme perché lo è e il canale è un BSC), bit: ✓.)
(Verificato con Python: , bit/s con massimo in , Huffman delle triplette con somma dei nodi uguale, .)
Errori comuni
- Usare le probabilità condizionate a ( e ) come se il ricevitore conoscesse : va marginalizzata su .
- Scrivere senza il secondo termine ().
- Dire che il canale "ha memoria perché dipende da ": è indipendente a ogni uso, quindi il canale resta senza memoria.
- Assumere un ingresso non uniforme per il BSC: la capacità si ha con ingresso uniforme.
- Dimenticare che le triplette hanno probabilità in coppie uguali: se ne calcolano e si usano due volte.
- Rispondere "sì" al punto 4 perché è vicina a : il limite si raggiunge solo con probabilità diadiche.
Versione ripasso
Testo. binari, indipendente da con ; , ; ms. Probabilità di transizione e tipo di canale; capacità e ingresso ottimo; Huffman per le triplette ; limite di Shannon; confronto con e .
- (1) (Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon →) Marginalizzando su : , : BSC con , senza memoria se è nuova a ogni uso.
- (2) Ingresso uniforme; bit/s.
- (3) (Codici di Shannon, Huffman ed Elias e codifica aritmeticaIl codice di Shannon(-Fano) assegna alla parola $i$ lunghezza $l_i=\lceil-\log_{M_y}p_i\rceil$, soddisfa Kraft-McMillan e ha $H\le L_y<H+1$; è ottimo solo se le probabilità sono potenze di $\frac1{M_y}$. Il codice ottimo (lunghezza media minima) dà parole più lunghe ai simboli meno probabili e ha almeno due parole di lunghezza massima che differiscono solo nell'ultimo simbolo: lo costruisce la procedura di Huffman, che unisce a ogni passo i due nodi meno probabili. Il codice di Elias prende le prime $l_i=\lceil-\log_2p_i\rceil+1$ cifre del punto medio dell'intervallo di ampiezza $p_i$ in $[0,1)$: è a prefisso ma subottimo ($H+1\le L_y<H+2$), e si adatta alla codifica aritmetica adattativa.Codici di Shannon, Huffman ed Elias e codifica aritmetica →) : ; ; ; . Nodi : bit.
- (4) (Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza mediaLa codifica di sorgente senza perdite associa a ogni parola emessa dalla sorgente una parola di codice binaria (o $M_y$-aria) di lunghezza variabile, in modo invertibile; la qualità si misura con la lunghezza media $L_y=\sum p_{\underline x}(\underline a),l(\underline a)$. In un codice a prefisso nessuna parola è l'inizio di un'altra, quindi la decodifica è istantanea. Kraft-McMillan: ogni codice decodificabile ha $\sum M_y^{-l_i}\le1$, e se interi $l_i$ la soddisfano esiste un codice a prefisso con quelle lunghezze. Shannon: $\frac{H(\underline x)}{\log_2M_y}\le L_y<\frac{H(\underline x)}{\log_2M_y}+1$ per il codice a prefisso ottimo, con $L_y=\frac{H}{\log_2M_y}$ solo se le probabilità sono potenze di $\frac1{M_y}$.Codici a prefisso - Kraft-McMillan e limiti di Shannon sulla lunghezza media →) : non raggiunge il limite (probabilità non diadiche).
- (5) (Entropia congiunta e condizionata e informazione mutuaPer due variabili aleatorie discrete $x,y$ l'entropia congiunta è $H(x,y)=E\left[\log_2\frac1{P_{x,y}(x,y)}\right]$ e vale $\max{H(x),H(y)}\le H(x,y)\le H(x)+H(y)$, con l'uguaglianza a destra se e solo se $x$ e $y$ sono indipendenti e $H(x,y)=H(x)$ se $y=f(x)$. L'entropia condizionata $H(x|y)=E_y[H(x|y=y)]$ soddisfa la regola della catena $H(x,y)=H(x|y)+H(y)=H(y|x)+H(x)$. L'informazione mutua $I(x;y)=H(x)+H(y)-H(x,y)=H(x)-H(x|y)=H(y)-H(y|x)$ è simmetrica, $0\le I\le\min{H(x),H(y)}$, nulla per variabili indipendenti.Entropia congiunta e condizionata e informazione mutua →) perché ( dipendenti); perché .
- Dettagli (1)-(2). e (stesso per ). , bit/s. Con noto al ricevitore: per uso ( bit/s).
- Dettagli (3). con e . Unioni ; parole (), (), (), (); .
- Dettagli (4). : probabilità non diadiche.
- Dettagli (5). Controllo: .
- Errori: non marginalizzare su ; dimenticare il termine ; ingresso non uniforme per il BSC.