Esercizio - capacità di un canale 4-PSK, entropia di un codice a blocco, distanza minima e decodifica (compito dell'11 febbraio 2025, es. 192)
In questa pagina 6
Testo (compito dell'11 febbraio 2025, esercizio 192). Una sorgente emette simboli binari con alfabeto , indipendenti ed equiprobabili, con periodo di simbolo pari a s. I simboli vengono trasformati ottenendo, al tempo , in cui la somma si intende modulo due.
- (2p) Determinare se e in quali condizioni è possibile trovare una codifica di canale per codificare i simboli che garantisca una probabilità d'errore residua piccola a piacere, se il canale è senza memoria e impiega una modulazione 4-PSK con probabilità d'errore sul simbolo .
Si consideri ora una codifica che a ogni coppia di simboli di ingresso della sequenza associa il vettore nel seguente modo 2. (2p) Determinare l'entropia del vettore . 3. (2p) Determinare il rate del codice, la distanza minima, e il numero di errori rilevati e corretti dal codice. 4. (2p) Trovare le parole decodificate e dalle sequenze ricevute e . 5. (2p) Determinare la probabilità di ricevere una sequenza di peso quando all'ingresso del sistema si hanno i bit , , utilizzando lo stesso canale del punto 1.
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 → (punto 1), 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 2), Codici a blocco lineari - matrice generatrice, forma sistematica e bound di SingletonUn codice a blocco è lineare se le sue $2^k$ parole formano un sottospazio dello spazio delle sequenze binarie di $n$ bit, con la somma modulo 2 (XOR) senza riporto: contiene la parola nulla ed è chiuso rispetto alla somma. Si descrive con la matrice generatrice $G$ ($n\times k$, rango $k$, $\mathbf c=G\mathbf b$, le colonne sono parole di codice); le operazioni sulle colonne non cambiano il codice, le permutazioni delle righe permutano i bit e non cambiano le prestazioni sul canale senza memoria. In forma sistematica $G=\begin{bmatrix}I_k\A\end{bmatrix}$ e $\mathbf c=[\mathbf b;A\mathbf b]$. Per i codici lineari la distanza minima è il peso di Hamming minimo delle parole non nulle e vale il bound di Singleton $d_{min}\le n-k+1$.Codici a blocco lineari - matrice generatrice, forma sistematica e bound di Singleton →, Matrice di controllo di parità, sindrome e cosetLa matrice di controllo di parità $H$ ($\ell\times n$) soddisfa $H\mathbf r=\mathbf 0\iff\mathbf r\in\mathcal C$; per un codice con generatrice $G$ ($n\times k$) vale $HG=0$ con $\operatorname{rango}(H)=n-k$, e se $G=\begin{bmatrix}I_k\A\end{bmatrix}$ allora $H=[A\mid I_{n-k}]$. La distanza minima è il minimo numero di colonne di $H$ linearmente dipendenti. La sindrome $\boldsymbol\sigma=H\boldsymbol\gamma$ della sequenza ricevuta $\boldsymbol\gamma=\mathbf c+\boldsymbol\varepsilon$ vale $H\boldsymbol\varepsilon$: dipende solo dall'errore. Le sequenze con la stessa sindrome formano un coset ($2^{n-k}$ coset di $2^k$ sequenze) e il decodificatore a minima distanza sceglie il coset leader, l'errore di peso minimo del coset: $\hat{\mathbf c}=\boldsymbol\gamma+\boldsymbol\varepsilon_{min}$. La probabilità di decodifica corretta sul BSC è la somma delle probabilità dei coset leader.Matrice di controllo di parità, sindrome e coset → e Controllo d'errore - ARQ, FEC e codici a blocco sul canale binario simmetricoPer proteggere i bit dagli errori si può chiedere la ritrasmissione (ARQ, serve il canale di ritorno), aggiungere ridondanza per correggere (FEC) o unire le due cose (HARQ). Un codice a blocco $(n,k)$ trasforma $k$ bit in una parola di $n>k$ bit scelta tra $2^k$ parole su $2^n$ sequenze; modulatore, canale e demodulatore equivalgono a un canale binario simmetrico senza memoria con probabilità d'errore sul bit $P_{bit}$. Per $P_{bit}<\frac12$ il decodificatore ML sceglie la parola a minima distanza di Hamming; con distanza minima $d_{min}$ si correggono sempre $t=\lfloor\frac{d_{min}-1}{2}\rfloor$ errori e se ne rivelano sempre $d_{min}-1$. Il tasso è $R=\frac kn$ e la probabilità d'errore di parola è limitata da $P(\text{più di }t\text{ errori})$. L'ARQ ha efficienza $S_{SW}$, $S_{GBN}$, $S_{SR}$ in funzione di $t_P$, $t_A$, $\tau_P$ e $p$.Controllo d'errore - ARQ, FEC e codici a blocco sul canale binario simmetrico → (punti 3-5), 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 → (probabilità di bit della 4-PSK/4-QAM con codifica di Gray).
(1) Quando è possibile una codifica con errore piccolo a piacere
Il canale visto dai bit. La 4-PSK trasporta bit per simbolo. Con la mappa di Gray i bit di due simboli vicini differiscono in una sola posizione, e un errore di simbolo è quasi sempre il passaggio a un punto adiacente, che sbaglia un bit su due. La probabilità d'errore sul bit è quindi Poiché il canale è senza memoria, i bit vedono un canale binario simmetrico con . (Se i due bit del simbolo sbagliassero in modo indipendente con probabilità si avrebbe , cioè : la differenza è trascurabile.)
Capacità. Per un BSC la capacità per bit trasmesso è Se è il periodo di bit sul canale (dopo il codificatore di canale), la capacità in bit/s è .
Condizione. La sorgente ha un bit ogni s, cioè tasso nominale kbit/s (la trasformazione è una biiezione e non cambia il tasso). Per il teorema di Shannon la codifica con errore piccolo a piacere esiste se (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 →): Con due bit per simbolo il periodo di simbolo della 4-PSK è , quindi La codifica esiste solo se il modulatore trasmette almeno ksimboli/s (almeno kbit/s sul canale): serve un po' più della velocità della sorgente, perché la capacità è un po' meno di bit per uso. Se si trasmettesse al ritmo della sorgente (s, s) la capacità sarebbe kbit/s, minore di kbit/s, e non esisterebbe nessuna codifica con errore piccolo a piacere.
(2) Entropia del vettore
Le righe e della matrice sono l'identità: , , quindi da si risale a . Le altre componenti sono funzioni di : , , (modulo ). Dunque è una funzione biunivoca della coppia , e questa a sua volta è biunivoca rispetto a (basta sommare a ciascun bit). I due bit sono indipendenti ed equiprobabili, quindi le parole di codice sono equiprobabili, ciascuna con probabilità , e Una funzione biunivoca non cambia l'entropia (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 →: se e , ).
(3) Rate, distanza minima, errori rilevati e corretti
Il codice ha bit di informazione e parole di bit: rate . Le quattro parole di codice (calcolando per le coppie, con ):
| peso | ||
|---|---|---|
Il codice è lineare (è definito da una matrice, con somme modulo ), quindi è uguale al peso minimo delle parole non nulle: . Controllo sulle distanze tra coppie: , , ✓. Il codice rileva errori e corregge errore (Codici a blocco lineari - matrice generatrice, forma sistematica e bound di SingletonUn codice a blocco è lineare se le sue $2^k$ parole formano un sottospazio dello spazio delle sequenze binarie di $n$ bit, con la somma modulo 2 (XOR) senza riporto: contiene la parola nulla ed è chiuso rispetto alla somma. Si descrive con la matrice generatrice $G$ ($n\times k$, rango $k$, $\mathbf c=G\mathbf b$, le colonne sono parole di codice); le operazioni sulle colonne non cambiano il codice, le permutazioni delle righe permutano i bit e non cambiano le prestazioni sul canale senza memoria. In forma sistematica $G=\begin{bmatrix}I_k\A\end{bmatrix}$ e $\mathbf c=[\mathbf b;A\mathbf b]$. Per i codici lineari la distanza minima è il peso di Hamming minimo delle parole non nulle e vale il bound di Singleton $d_{min}\le n-k+1$.Codici a blocco lineari - matrice generatrice, forma sistematica e bound di Singleton →).
(4) Decodifica
La matrice generatrice è già in forma sistematica (, sono i bit di informazione): con (le righe - di ). La matrice di controllo di parità è (Matrice di controllo di parità, sindrome e cosetLa matrice di controllo di parità $H$ ($\ell\times n$) soddisfa $H\mathbf r=\mathbf 0\iff\mathbf r\in\mathcal C$; per un codice con generatrice $G$ ($n\times k$) vale $HG=0$ con $\operatorname{rango}(H)=n-k$, e se $G=\begin{bmatrix}I_k\A\end{bmatrix}$ allora $H=[A\mid I_{n-k}]$. La distanza minima è il minimo numero di colonne di $H$ linearmente dipendenti. La sindrome $\boldsymbol\sigma=H\boldsymbol\gamma$ della sequenza ricevuta $\boldsymbol\gamma=\mathbf c+\boldsymbol\varepsilon$ vale $H\boldsymbol\varepsilon$: dipende solo dall'errore. Le sequenze con la stessa sindrome formano un coset ($2^{n-k}$ coset di $2^k$ sequenze) e il decodificatore a minima distanza sceglie il coset leader, l'errore di peso minimo del coset: $\hat{\mathbf c}=\boldsymbol\gamma+\boldsymbol\varepsilon_{min}$. La probabilità di decodifica corretta sul BSC è la somma delle probabilità dei coset leader.Matrice di controllo di parità, sindrome e coset →): Le quattro righe esprimono le condizioni , , , .
. Sindrome: , , , . La sindrome è nulla, quindi è una parola di codice (la parola per ): .
. Sindrome: , , , , quindi . È la quarta colonna di (e nessun'altra colonna è uguale, perché la colonna è ): l'errore di peso minimo è sul quarto bit, , e Controllo con la distanza di Hamming: dista da e da e da (e da ): la parola più vicina è unica. I due ricevuti portano alla stessa parola decodificata , cioè ai bit di informazione e quindi a .
(5) Probabilità di ricevere una sequenza di peso
Con , si ha , . La parola trasmessa è (peso : ha due zeri, in posizione e ). Una sequenza di peso è l'unica . Per ottenerla dal canale si devono verificare entrambe le cose: i due zeri vengono invertiti e i quattro uni arrivano senza errore. Gli errori del BSC senza memoria sono indipendenti, quindi (La soluzione del corso riporta il passaggio , che è un refuso di scrittura: e il risultato è corretto.)
(Verificato con Python: parole di codice e pesi, , sindromi e , decodifica a massima verosimiglianza per enumerazione, , s, .)
Errori comuni
- Usare per la 4-PSK: con la codifica di Gray è .
- Confondere periodo di simbolo della 4-PSK () e periodo di bit sul canale ().
- Concludere "sì, sempre": la condizione dà un limite sul periodo (cioè sulla velocità del canale).
- Calcolare bit contando le componenti: le componenti sono dipendenti e le parole sono solo .
- Dire che il codice è sistematico "perché ha l'identità" senza controllare dove: qui sono i primi due bit.
- Calcolare la probabilità del punto 5 con un solo bit sbagliato, o con senza il fattore dei quattro bit corretti.
Versione ripasso
Testo. binari equiprobabili ogni s, . Canale 4-PSK con : condizioni per una codifica con errore piccolo a piacere; con : ; rate, , errori rilevati e corretti; decodifica di e ; probabilità di una sequenza di peso per .
- (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 →) Gray: , BSC con . kbit/s s, s, ksimboli/s.
- (2) biunivoca di equiprobabili: parole equiprobabili, bit.
- (3) Rate ; parole di peso : , rileva , corregge .
- (4) (Matrice di controllo di parità, sindrome e cosetLa matrice di controllo di parità $H$ ($\ell\times n$) soddisfa $H\mathbf r=\mathbf 0\iff\mathbf r\in\mathcal C$; per un codice con generatrice $G$ ($n\times k$) vale $HG=0$ con $\operatorname{rango}(H)=n-k$, e se $G=\begin{bmatrix}I_k\A\end{bmatrix}$ allora $H=[A\mid I_{n-k}]$. La distanza minima è il minimo numero di colonne di $H$ linearmente dipendenti. La sindrome $\boldsymbol\sigma=H\boldsymbol\gamma$ della sequenza ricevuta $\boldsymbol\gamma=\mathbf c+\boldsymbol\varepsilon$ vale $H\boldsymbol\varepsilon$: dipende solo dall'errore. Le sequenze con la stessa sindrome formano un coset ($2^{n-k}$ coset di $2^k$ sequenze) e il decodificatore a minima distanza sceglie il coset leader, l'errore di peso minimo del coset: $\hat{\mathbf c}=\boldsymbol\gamma+\boldsymbol\varepsilon_{min}$. La probabilità di decodifica corretta sul BSC è la somma delle probabilità dei coset leader.Matrice di controllo di parità, sindrome e coset →) con . : , . : colonna , .
- (5) , ; peso solo : i due zeri sbagliano, i quattro uni no: .
- Dettagli (1). , capacità per bit. kbit/s dà s e s; a s la capacità sarebbe kbit/s e non esisterebbe codifica.
- Dettagli (2)-(3). , , , , ; è biunivoca di : parole equiprobabili, bit. Parole (pesi ), distanze tra coppie .
- Dettagli (4). : condizioni , , , . : . : unica colonna (); distanze da , , , : . , , .
- Dettagli (5). , ; i due zeri (bit e ) devono sbagliare, i quattro uni no: .
- Errori: ; di simbolo contro ; contare le componenti nell'entropia.
Teoria collegata
- Tasso d'informazione, capacità di canale e teorema di Shannon
- Entropia congiunta e condizionata e informazione mutua
- Codici a blocco lineari - matrice generatrice, forma sistematica e bound di Singleton
- Matrice di controllo di parità, sindrome e coset
- Controllo d'errore - ARQ, FEC e codici a blocco sul canale binario simmetrico
- Modulazione QAM - costellazioni, energia e probabilità d'errore