Esercizio - quantizzatore con densità esponenziale a due lati, codice di Shannon, 64-QAM e Hamming (compito del 23 gennaio 2026, es. 198)
In questa pagina 7
Testo (compito del 23 gennaio 2026, esercizio 198). Considerare una sorgente con simboli indipendenti e identicamente distribuiti con media nulla, potenza e densità di probabilità con periodo di simbolo ms.
- Progettare un quantizzatore uniforme per i campioni della sorgente per garantire un rapporto segnale-rumore di quantizzazione di almeno dB e una probabilità di saturazione di , con il minimo numero di livelli. Specificare il valore di saturazione e il numero di livelli del quantizzatore.
- Considerando ora un quantizzatore uniforme con livelli e confini degli intervalli di quantizzazione , calcolare la probabilità di ciascun valore quantizzato.
- I valori quantizzati con il quantizzatore del punto precedente vengono codificati con il codice binario di Shannon. Calcolare la lunghezza media delle parole di codice.
- Utilizzando il quantizzatore del punto 2), calcolare il numero di bit/s in uscita dal quantizzatore. Utilizzando una modulazione -QAM per trasmettere i bit su un canale radio, calcolare il numero di simboli trasmessi al secondo.
- Considerare ora un quantizzatore con livelli e confini degli intervalli di quantizzazione che rendono la probabilità di ciascun simbolo quantizzato uguale. Indicare se l'entropia dei simboli quantizzati è minore, maggiore o uguale di quella ottenuta con il quantizzatore del punto 2), giustificando la risposta.
- Si codificano ora i bit quantizzati dal quantizzatore al punto precedente con un codice di Hamming con . Calcolare il numero di bit/s in uscita dal codificatore di canale e la probabilità di corretta decodifica se i bit codificati vengono trasmessi su un canale binario simmetrico senza memoria con probabilità di errore sul bit di .
Teoria usata: Quantizzazione uniforme - saturazione, errore granulare e SNR di quantizzazioneUn quantizzatore uniforme a L = 2^b livelli e range [−v_sat, v_sat] ha passo Δ = 2v_sat/L. L'errore e = x − x^(q) è di saturazione fuori range (illimitato, da rendere raro con P_sat piccola) e granulare dentro (|e| ≤ Δ/2, uniforme con potenza Δ²/12). L'SNR di quantizzazione Λ_q = E[x²]/E[e²] vale in decibel 20log₁₀(σ_x/v_sat) + 4,77 + 6,02·b: ogni bit in più dà 6 dB. Per b minimo che garantisce una specifica: ⌈(specifica − c)/6,02⌉ con c = 20log₁₀(σ_x/v_sat) + 4,77.Quantizzazione uniforme - saturazione, errore granulare e SNR di quantizzazione →, Quantizzazione non uniforme, companding e conversione A-DIn un quantizzatore non uniforme gli intervalli I_i hanno larghezze diverse (stretti dove la densità è alta) e la potenza dell'errore è M_e = Σ M_{e_i} P(x ∈ I_i), con M_{e_i} = E[(x − a_qi)² | x ∈ I_i]. Si realizza con il companding (compressore μ(x), quantizzatore uniforme, espansore) o raggruppando gli intervalli di un quantizzatore uniforme fine. Nella conversione A-D con campionamento ogni T_s e b bit per campione, T_b = T_s/b e R_b = b/T_s bit/s. Esempio completo con densità esponenziale a due lati: v_sat, b, bit rate e periodo di simbolo della 16-QAM.Quantizzazione non uniforme, companding e conversione A-D →, Variabili aleatorie continue - uniforme, gaussiana, esponenziale e funzione QUna v.a. continua ha funzione di distribuzione F_x(a) = P(x ≤ a) e densità f_x(a) = dF_x/da ≥ 0 con integrale 1; P(A ≤ x ≤ B) = F_x(B) − F_x(A) = ∫A^B f_x e P(x = A) = 0. Uniforme U([a,b]): densità 1/(b−a), media (a+b)/2, varianza (b−a)²/12. Esponenziale unilatera di media m: (1/m)e^(−a/m), a ≥ 0. Gaussiana N(m, σ²): P(x ≥ A) = Q((A − m)/σ), con Q(A) coda della gaussiana standard. Somme di gaussiane indipendenti sono gaussiane (medie e varianze si sommano); teorema del limite centrale.Variabili aleatorie continue - uniforme, gaussiana, esponenziale e funzione Q →, 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 →, Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimoL'informazione di un evento di probabilità $P$ è $i=\log_2\frac1P$ bit (zero per l'evento certo, additiva per eventi indipendenti). L'entropia di una variabile aleatoria discreta è l'informazione media, $H(x)=E[i_x(x)]=\sum_aP_x(a)\log_2\frac1{P_x(a)}$; vale $0\le H(x)\le\log_2M$ con $M$ cardinalità dell'alfabeto, e il massimo $\log_2M$ si raggiunge se e solo se i simboli sono equiprobabili (dimostrazione con la disuguaglianza di Jensen, perché il logaritmo è strettamente concavo).Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimo →, Modulazione QAM - costellazioni, energia e probabilità d'erroreLa QAM trasmette due PAM indipendenti su due portanti in quadratura: $s_m(t)=\alpha_{m,I}h_{Tx}(t)\cos(2\pi f_0t)-\alpha_{m,Q}h_{Tx}(t)\sin(2\pi f_0t)$ con $\alpha\in{\pm1,\pm3,\dots}$ e $M=2^{2b}$ ($2b$ bit per simbolo). La base è $\phi_{1,2}\propto h_{Tx}\cos,,-h_{Tx}\sin$ con energia $\frac{E_h}2$, i punti stanno su una griglia $\sqrt M\times\sqrt M$ con $d_{\min}=\sqrt{2E_h}$ ed $E_s=\frac{M-1}{3}E_h$. Con $q=Q\left(\sqrt{\frac{E_h}{2\sigma_I^2}}\right)$: $P[E]=4\left(1-\frac1{\sqrt M}\right)q-4\left(1-\frac1{\sqrt M}\right)^2q^2$, con $\frac{E_h}{2\sigma_I^2}=\frac{E_s}{\sigma_I^2}\frac{3}{2(M-1)}$. Con Gray su ogni asse $P_{bit}\simeq\frac{P[E]}{\log_2M}$.Modulazione QAM - costellazioni, energia e probabilità d'errore →, Codici di Hamming e bound di HammingIl bound di Hamming (sphere packing) lega tasso e capacità di correzione: $2^k\sum_{r=0}^t\binom nr\le2^n$, cioè $\frac kn\le1-\frac1n\log_2\sum_{r=0}^t\binom nr$, perché le $2^k$ sfere di raggio $t$ attorno alle parole sono disgiunte. Un codice di Hamming ha per colonne di $H$ tutte le sequenze non nulle di $n-k$ bit, ciascuna una volta, quindi $n=2^{n-k}-1$ (parametri $(2^m-1,,2^m-1-m)$: $(7,4)$, $(15,11)$, $(63,57)$, $(255,247)$). Non ha colonne nulle né ripetute e tre colonne sommano a zero: $d_{min}=3$, corregge $1$ errore e ne rivela $2$. Rispetta il bound di Hamming con l'uguaglianza ($t=1$): è un codice perfetto, per cui la probabilità d'errore di parola sul BSC è esattamente $P(\text{almeno 2 errori})$.Codici di Hamming e bound di Hamming →.
La densità. Per è : per vale (cresce da a ), per vale (decresce); per si specchia. È una densità con due gobbe simmetriche, con picchi in , e media nulla per simmetria. La costante normalizza: dà (il testo riporta ). La potenza coincide con il dato.
Grafico interattivo: Densità p_x(a) = 0,1121·e^(−| |a| − 2 |/3), simmetrica: due gobbe con picco in a = ±2 e coda esponenziale che decade con costante 3 (la coda oltre v_sat = 21,5 pesa 5·10⁻⁴ per lato)
(1) Saturazione e bit
Valore di saturazione. Con ripartita sulle due code simmetriche, ciascuna coda vale . Per la coda destra è Passando ai logaritmi, , quindi
Numero di bit. , con (media nulla, potenza varianza), . Il fattore dB, quindi Il valore è appena sopra , quindi il minimo intero è . Con si avrebbe dB, che non rispetta il vincolo di dB per soli dB; con si ottengono dB. Il quantizzatore ha quindi (Il corso riporta e : lo stesso risultato, con la stessa avvertenza che il margine è sottilissimo.)
(2) Probabilità degli valori quantizzati
Gli intervalli sono , , , , , , , : passo , , livelli ; i due intervalli esterni comprendono tutta la coda (saturazione). Per la simmetria si calcolano i quattro intervalli di destra:
- : ;
- : ;
- : la densità è e per la simmetria attorno al picco l'area è uguale a quella di : ;
- : .
Le probabilità dei valori, dal livello più negativo, sono Controllo: . (Il corso dà , , : la differenza di viene da arrotondato.)
(3) Lunghezza media del codice di Shannon
- : bit (due simboli);
- : bit (quattro simboli);
- : bit (due simboli).
L'entropia di questa sorgente quantizzata è bit e il teorema di Shannon dà : , verificato. Il codice di Shannon è però poco efficiente qui: 3,52 bit sono più dei bit di una codifica a lunghezza fissa, e un codice di Huffman scenderebbe a circa bit.
(4) Bit rate e simboli al secondo
Con otto livelli, ogni campione è rappresentato con bit (codifica a lunghezza fissa di un quantizzatore uniforme), uno ogni ms: Con una -QAM ogni simbolo porta bit, quindi si trasmettono (periodo di simbolo ms; Quantizzazione non uniforme, companding e conversione A-DIn un quantizzatore non uniforme gli intervalli I_i hanno larghezze diverse (stretti dove la densità è alta) e la potenza dell'errore è M_e = Σ M_{e_i} P(x ∈ I_i), con M_{e_i} = E[(x − a_qi)² | x ∈ I_i]. Si realizza con il companding (compressore μ(x), quantizzatore uniforme, espansore) o raggruppando gli intervalli di un quantizzatore uniforme fine. Nella conversione A-D con campionamento ogni T_s e b bit per campione, T_b = T_s/b e R_b = b/T_s bit/s. Esempio completo con densità esponenziale a due lati: v_sat, b, bit rate e periodo di simbolo della 16-QAM.Quantizzazione non uniforme, companding e conversione A-D →).
(5) Quantizzatore equiprobabile
Con livelli equiprobabili ogni valore ha probabilità e l'entropia è bit. Tra tutte le variabili aleatorie definite sullo stesso alfabeto (qui simboli) la distribuzione uniforme ha entropia massima, (Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimoL'informazione di un evento di probabilità $P$ è $i=\log_2\frac1P$ bit (zero per l'evento certo, additiva per eventi indipendenti). L'entropia di una variabile aleatoria discreta è l'informazione media, $H(x)=E[i_x(x)]=\sum_aP_x(a)\log_2\frac1{P_x(a)}$; vale $0\le H(x)\le\log_2M$ con $M$ cardinalità dell'alfabeto, e il massimo $\log_2M$ si raggiunge se e solo se i simboli sono equiprobabili (dimostrazione con la disuguaglianza di Jensen, perché il logaritmo è strettamente concavo).Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimo →), e ogni altra distribuzione, come quella del punto 2, ha entropia minore: . La risposta è quindi: l'entropia è maggiore con il quantizzatore equiprobabile. (Le soglie si ottengono da : per questa densità valgono , calcolate con Python.)
(6) Codice di Hamming con
Un codice di Hamming con bit di informazione ha (è il codice , con bit di parità). I bit che entrano nel codificatore sono quelli del quantizzatore equiprobabile: bit per campione ogni ms, cioè bit/s (con valori equiprobabili la lunghezza fissa è ottima). Il codificatore aggiunge bit ogni : Il codice ha distanza minima e corregge qualunque singolo errore (non ne corregge due): una parola ricevuta è decodificata correttamente se il canale (binario simmetrico senza memoria, errore per bit ) commette zero errori oppure uno solo sui bit: La soluzione del corso riporta il risultato (con una forma di calcolo confusa nel testo estratto). Dunque la probabilità di errore sulla parola è circa , contro per quattro bit non codificati.
(Tutti i risultati sono stati verificati con Python: ; per e per ; probabilità dei livelli; ; ; .)
Errori comuni
- Arrotondare a : serve perché con bit la specifica non è rispettata (si ricalcola l'SNR prima di fermarsi).
- Usare intera per una sola coda: ogni coda pesa .
- Contare per l'intervallo esterno solo l'area in : l'intervallo comprende anche la saturazione.
- Considerare il codice di Shannon ottimo: qui è peggiore della lunghezza fissa.
- Calcolare la probabilità di corretta decodifica solo come (si dimentica il caso di un solo errore, corretto dal codice).
Versione ripasso
Testo. Sorgente a media nulla, potenza , per , ms. (1) Quantizzatore uniforme con dB e : e livelli. (2) livelli con soglie : probabilità dei livelli. (3) Lunghezza media del codice di Shannon. (4) Bit/s e simboli/s con -QAM. (5) Quantizzatore equiprobabile: entropia maggiore o minore? (6) Hamming con : bit/s e probabilità di corretta decodifica su BSC con .
- (1) Coda con : . ; (: dB), , (Quantizzazione uniforme - saturazione, errore granulare e SNR di quantizzazioneUn quantizzatore uniforme a L = 2^b livelli e range [−v_sat, v_sat] ha passo Δ = 2v_sat/L. L'errore e = x − x^(q) è di saturazione fuori range (illimitato, da rendere raro con P_sat piccola) e granulare dentro (|e| ≤ Δ/2, uniforme con potenza Δ²/12). L'SNR di quantizzazione Λ_q = E[x²]/E[e²] vale in decibel 20log₁₀(σ_x/v_sat) + 4,77 + 6,02·b: ogni bit in più dà 6 dB. Per b minimo che garantisce una specifica: ⌈(specifica − c)/6,02⌉ con c = 20log₁₀(σ_x/v_sat) + 4,77.Quantizzazione uniforme - saturazione, errore granulare e SNR di quantizzazione →).
- (2) : ; e : ; : ; simmetrico: e specchio, somma .
- (3) Lunghezze : bit (; peggiore dei bit fissi) (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 →).
- (4) kbit/s; -QAM bit/simbolo: simboli/s.
- (5) Equiprobabili: bit, massima: maggiore di (Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimoL'informazione di un evento di probabilità $P$ è $i=\log_2\frac1P$ bit (zero per l'evento certo, additiva per eventi indipendenti). L'entropia di una variabile aleatoria discreta è l'informazione media, $H(x)=E[i_x(x)]=\sum_aP_x(a)\log_2\frac1{P_x(a)}$; vale $0\le H(x)\le\log_2M$ con $M$ cardinalità dell'alfabeto, e il massimo $\log_2M$ si raggiunge se e solo se i simboli sono equiprobabili (dimostrazione con la disuguaglianza di Jensen, perché il logaritmo è strettamente concavo).Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimo →).
- (6) Hamming : bit/s. Corregge errore: (Codici di Hamming e bound di HammingIl bound di Hamming (sphere packing) lega tasso e capacità di correzione: $2^k\sum_{r=0}^t\binom nr\le2^n$, cioè $\frac kn\le1-\frac1n\log_2\sum_{r=0}^t\binom nr$, perché le $2^k$ sfere di raggio $t$ attorno alle parole sono disgiunte. Un codice di Hamming ha per colonne di $H$ tutte le sequenze non nulle di $n-k$ bit, ciascuna una volta, quindi $n=2^{n-k}-1$ (parametri $(2^m-1,,2^m-1-m)$: $(7,4)$, $(15,11)$, $(63,57)$, $(255,247)$). Non ha colonne nulle né ripetute e tre colonne sommano a zero: $d_{min}=3$, corregge $1$ errore e ne rivela $2$. Rispetta il bound di Hamming con l'uguaglianza ($t=1$): è un codice perfetto, per cui la probabilità d'errore di parola sul BSC è esattamente $P(\text{almeno 2 errori})$.Codici di Hamming e bound di Hamming →).
- Dettagli utili. Densità: due gobbe con picchi in , normalizzazione , potenza . Ogni coda di saturazione pesa . Con : dB (non basta); con : dB. Livelli , per il quantizzatore del punto 2, i cui intervalli esterni includono la coda.
- Confronti. Shannon: , ma peggiore dei bit fissi; Huffman . Soglie equiprobabili (): . Senza codifica bit sono tutti giusti con probabilità ; con Hamming .
- Errori: fermarsi a ; su una sola coda; escludere la saturazione dagli intervalli esterni; Shannon ottimo; dimenticare il caso di un errore in .
Teoria collegata
- Quantizzazione uniforme - saturazione, errore granulare e SNR di quantizzazione
- Quantizzazione non uniforme, companding e conversione A-D
- Variabili aleatorie continue - uniforme, gaussiana, esponenziale e funzione Q
- Codici di Shannon, Huffman ed Elias e codifica aritmetica
- Entropia - informazione di un evento, disuguaglianza di Jensen e valore massimo
- Modulazione QAM - costellazioni, energia e probabilità d'errore
- Codici di Hamming e bound di Hamming