[:it]Codifica di sorgente:a lunghezza fissa, a lunghezza variabile (codice di Huffmann)[:]

[:it]Lo schema di un canale trasmissivo può essere visto come segue:

La codifica di sorgente ha il compito di trasformare un messaggio scritto ad esempio in una tastiera in una sequenza di bit.

Tale trasformazione può essere a lunghezza fissa (codice ASCII) o a lunghezza variabile (ad esempio codifica di Huffmann)

Ci sono i pregi e i difetti per entrambi i tipi di decodifica.

Codice ASCII.

Esso permette la codifica dei caratteri in 8 bit. Utilizzando la definizione di distribuzione a ripetizione avendo un alfabeto di 2 cifre per 8 bit in tutto si ha 2^{8}=256 combinazioni diverse.

Codice Huffmann

Il codice di Huffman costruisce una tabella di codifica-decodifica utilizzando un numero di bit differente a seconda della probabilità che si ha di trovare uno specifico valore.

Utilizzando meno bit per i codici più probabili, e più bit per quelli meno diffusi, si può risparmiare memoria.

E’ il codice migliore per ottimizzare l’entropia, è il metodo più efficiente per la compressine dei dati. (pkzip, jpeg, mp3).

Per creare la giusta codifica si usa uno schema ad albero

Ecco la spiegazione dell’algoritmo:

  • si ordinano i simboli in ordine decrescente di probabilità
  • i due valori più piccoli creano le prime due foglie (leaf node) e si sommano creando il primo nodo. A ramo di sinistra si associa sempre il valore 0 ed al ramo di destra il valore 1.
  • si ordinano nuovamente i valori.
  • i due valori più piccoli si sommano creando ancora un nodo, Al ramo di sinistra si associa il valore 1, al ramo di destra il valore 0.
  • il processo continua finchè non vi sono più simboli o probabilità associati al relativo simbolo.

Esempio

Sia dato un file formato da 120 caratteri con la seguente frequenza di caratteri (attenzione parlare di frequenza o probabilità di un carattere è uguale)

carattere a b c d e f
frequenza 57 13 12 24 9 5

Se si usasse un codice a lunghezza fissa si dovrebbe usare una stringa di bit lunga 3 in quanto essa è l’unica che possa contenere la codifica di 6 caratteri, infatti 2^{3}=8

carattere a b c d e f
codice fisso 000 001 010 011 100 101

Siccome vi sono 120 caratteri da trasmettere 120 \cdot 3 =360 bit

Utilizzando invece la codifica a lunghezza variabile si ha:

carattere a b c d e f
frequenza 57 13 12 24 9 5
codice variabile 0 101 100 111 1101 1100

Bastano 57 \cdot 1+13 \cdot 3+12 \cdot 3+24\cdot 3+9\cdot 4 + 5 \cdot 4 =260 bit

Spiegazione di come si crea il codice variabile.

  • ordino i valori dal meno frequente al più frequente:
f:5 e:9 c:12 b:13 d:24 a:57
  • sommo gli ultimi due f:5+e:9=14
  • creo due foglie con il ramo 0 a sinistra 0 ed il ramo 1 a destra
  • ordino la sequenza:

  • sommo gli ultimi due c:12+b:13=25
  • creo due foglie con il ramo 0 a sinistra e il ramo 1 a destra
  • ordino la sequenza
  • sommo gli ultimi due 14+d:24=38
  • creo un nuovo nodo
  • ordino la sequenza

  • sommo gli ultimi due 25+38=63
  • creo un nuovo nodo
  • ordino la sequenza

  • sommo gli ultimi 2 a:57+63=120
  • creo l’ultimo nodo

Adesso come si legge il codice?

  • o partendo dal basso e poi invertendo i bit: ad esempio f: 0011 lo inverto 1100
  • o partendo dall’alto (root) ed arrivando a tutte le radici
carattere a b c d e f
frequenza 57 13 12 24 9 5
codice variabile 0 101 100 111 1101 1100

Come avviene la decodifica?

Siccome nessuna parola codice è prefisso di un’altra, la prima parola codice del file codificato risulta univocamente determinata.

Ad esempio trasmetto 0101100, comincio a leggere da sinistra verso destra. Prendo i primi 4 caratteri, non corrisponde a nessuna cifra, prendo i primi tre ancora nessuna, prendo il primo e corrisponde ad a, elimino lo 0 rimane

101100

1011 non corrisponde a nessun carattere,

101 corrisponde alla b

rimane 100 che corrisponde alla c

per cui il messaggio è abc.[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Sorgente aletoria numerica senza memoria[:]

[:it]

Franz Marc

La sorgente aleatoria numerica viene anche definita una sorgente aleatoria discreta, essere senza memoria significa che i simboli sono indipendenti ed identicamente distribuiti estratti da un alfabeto A di dimensione finita L.

Quindi ogni simbolo ha una certa probabilità di essere emesso.

In inglese esso è definito come:

Discrete Memoryless source, DMS[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Esercizi sulla caratterizzazione di un canale[:]

[:it]

Charles S. Raleigh

Tutti questi esercizi possono essere risolti mediante l’applicazione delle relazioni definite nei posti precedenti sulla definizione di informazione, entropia, lunghezza di un messaggio, ridondanza.

1. Una sorgente discreta emette i simboli x_{1},x_{2},x_{3},x_{4},x_{5} aventi probabilità rispettivamente p_{1}=0,2,p_{2}=0,25,p_{3}=0,3,p_{4}=0,1,p_{5}=0,15.

Determinare l’informazione associata a ciascun simbolo e l’entropia della sorgente

\left [H=2,23\cfrac{bit}{sym} \right ]
2.  Calcola la ridondanza di una sorgente binaria discreta le cui probabilità di emissione sono p_{1}=0,35,p_{2}=0,65 \left [ \gamma =0,07\cfrac{bit}{sym} \right ]
3. Una sorgente discreta emette 5 simboli con probabilità p_{1}=0,15,p_{2}=0,2,p_{3}=0,4,p_{4}=0,2,p_{5}=0,05.

a) Calcola la ridondanza della sorgente

b) La lunghezza del codice necessaria ad effettuare una corretta codifica della sorgente.

\left [ L=2,32,\gamma =0,1\cfrac{bit}{sym} \right ]
4. Si ha una sorgente di 6 simboli discreti con ridondanza \gamma =0,4\cfrac{bit}{sym}; calcola:

a) L’entropia

b) la lunghezza del codice

c) l’efficienza della codifica

\left [H =1,58\cfrac{bit}{sym}; \eta=0,6\cfrac{bit}{sym},L =2,581 ]
5. Una sorgente ha alfabeto di n=4 simboli con le seguenti probabilità di emissione:

simbolo x_{1} x_{2} x_{3} x_{4}
probabilità 0.38 0,25 0,22 0,15

a) Calcola l’entropia della sorgente

b)Calcola il contenuto informativo dei due seguenti messaggi:

M_{1}=x_{1}x_{4}x_{1}x_{2} e M_{1}=x_{2}x_{3}x_{1}x_{3}

 \left [ H=1,922\cfrac{bit}{sym},I_{M_{1}}=7,528bit ,I_{M_{2}}=7,764bit \right ]
6. Una sorgente ha un alfabeto di n=7 simboli con le seguenti probabilità di emissione:

simbolo probabilità codice
x_{1} 0,32 00
x_{2} 0,23 01
x_{3} 0,13 100
x_{4} 0,1 101
x_{5} 0,09 110
x_{6} 0,08 1110
x_{7} 0,05 1111

Calcola la lunghezza media del codice

 \left [ L=2,58 \right ]
7. Una sorgente discreta emette 3 simboli statisticamente indipendenti; sapendo che p_{1}=0,45, p_{2}=0,25, calcolare la ridondanza \gamma. \gamma =0,03 \cfrac{bit}{sym}
8. Un alfabeto è costituito da 2 simboli \left \{ x_{1},x_{2} \right \} equiprobabili.

IL tempo impiegato per trasmettere il primo simbolo è T\left ( x_{1} \right )=50\mu s mentre T\left ( x_{2} \right )=75\mu s, calcolare:

a) l’entropia della sorgente

b) il tempo medio per trasmettere un simbolo

c) la velocità di trasmissione

\left [ H=1,548 \cfrac{bit}{sym},T_{s}=62,5\mu s, R=16\frac{kbit}{s} \right ]

 [:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Prove di maturità indirizzo informatica e telecomunicazioni[:]

[:it]Anno2015

Anno2017[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Lunghezza media di un codice, efficienza e ridondanza[:]

[:it]

Vladimir Kush

La lunghezza media di un codice è data da quanti simboli in media sono necessari per mandare un messaggio con tali simboli ossia:

L=\sum_{j=1}^{n}p_{j}log_{2}(n)

dove con n è il numero di simboli.

oppure se si conosce la lunghezza del codice:

L=\sum_{i=1}^{n}p_{i}l_{i}

Per efficienza si intende:

\eta =\cfrac{H}{L}

Per ridondanza si intende quindi

\gamma =1-\eta

ossia quanto più una sorgente ha una grande entropia (ossia fornisce molte informazioni) con un alfabeto molto basso, minore è la ridondanza ossia la necessità di trasmettere segnali simili nel canale trasmissivo.[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Entropia – velocità di trasmissione[:]

[:it]

Vladimir Kush

Che cos’è l’entropia di una sorgente?

E’ il massimo grado di informazione che può darci un opportuno codice.

In fisica l’entropia fornisce il grado di disordine di un particolare sistema, nella teoria dell’informazione quanto più un codice ha un’elevata entropia quanta più informazione esso potrà portare.

Nella teoria della probabilità, quando due eventi sono statisticamente indipendenti la probabilità che uno accada in seguito all’altro è dato dal prodotto delle loro probabilità ossia: (principio delle probabilità composte)

P(A \cap B)=P(B) \cdot P(A)

L’unica funzione matematica che dal prodotto permette di passare alla somma è ancora il logaritmo per cui esso compare ancora nella definizione di entropia:

H=\sum_{j=1}^{n}p_{j}log_{2}\cfrac{1}{p_{j}}

L’unità di misura dell’entropia è il bit/carattere.

La velocità di trasmissione viene definita non come la frequenza con cui si trasmette ma come il prodotto tra l’entropia e la frequenza dei simboli emessi.[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Definizione di informazione[:]

[:it]

Vladimir Kush

L’informazione, nell’ambito delle telecomunicazioni,  viene definita come la riduzione di incertezza che si poteva avere a priori sul simbolo trasmesso.

Sembra un panegirico ma, in realtà, il concetto è che se io trasmetto sempre un solo segnale sempre uguale, la probabilità di riceverlo è sempre 1. Ma tale fatto significa anche che l’informazione trasmessa è nulla.

Per trasmettere un’informazione vi è bisogno che si modifichi uno stato da luce a buio o viceversa; si pensi ai solo caratteri morse: per comunicare un messaggio, ossia un’informazione, si alternano i punti con le linee in un’opportuna combinazione.

Per dare una definizione che possa essere misurabile si utilizza la funzione logaritmo perché è l’unica che quando il suo argomento vale 1, il suo valore va a zero ed inoltre lo si caperà ancora di più quando si definisce l’entropia.

I=\log _{b}\cfrac{1}{p_{i}}

dove con p_{i} si intende la probabilità con cui quel simbolo possa presentarsi.

Se la base del logaritmo è:

  • 2 l’informazione si misura in bit
  • 10 l’informazione si misura in hartley
  • e (numero di Eulero) l’informazione si misura in nat

[:en]trasmesso e viene definita come la riduzione di incertezza che si poteva avere a priori sul simbolo trasmesso.
Sembra un panegirico ma, in realtà, il concetto è che se io trasmetto sempre un solo segnale sempre uguale, la probabilità di riceverlo è sempre 1. Ma tale fatto significa anche che l’informazione trasmessa è nulla.
Per trasmettere un’informazione vi è bisogno che si modifichi uno stato da luce a buio o viceversa; si pensi ai solo caratteri morse: per comunicare un messaggio, ossia un’informazione, si alternano i punti con le linee in un’opportuna combinazione.
Per dare una definizione che possa essere misurabile si utilizza la funzione logaritmo perché è l’unica che quando il suo argomento vale 1, il suo valore va a zero ed inoltre lo si caperà ancora di più quando si definisce l’entropia.
I=\log _{b}\cfrac{1}{p_{i}}
dove con p_{i} si intende la probabilità con cui quel simbolo possa presentarsi.
Se la base del logaritmo è:
2 l’informazione si misura in bit
10 l’informazione si misura in hartley
e (numero di Eulero) l’informazione si misura in nat[:de]trasmesso e viene definita come la riduzione di incertezza che si poteva avere a priori sul simbolo trasmesso.
Sembra un panegirico ma, in realtà, il concetto è che se io trasmetto sempre un solo segnale sempre uguale, la probabilità di riceverlo è sempre 1. Ma tale fatto significa anche che l’informazione trasmessa è nulla.
Per trasmettere un’informazione vi è bisogno che si modifichi uno stato da luce a buio o viceversa; si pensi ai solo caratteri morse: per comunicare un messaggio, ossia un’informazione, si alternano i punti con le linee in un’opportuna combinazione.
Per dare una definizione che possa essere misurabile si utilizza la funzione logaritmo perché è l’unica che quando il suo argomento vale 1, il suo valore va a zero ed inoltre lo si caperà ancora di più quando si definisce l’entropia.
I=\log _{b}\cfrac{1}{p_{i}}
dove con p_{i} si intende la probabilità con cui quel simbolo possa presentarsi.
Se la base del logaritmo è:
2 l’informazione si misura in bit
10 l’informazione si misura in hartley
e (numero di Eulero) l’informazione si misura in nat[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Esercizi sulle probabilità[:]

[:it]

1. Lanciando due monete qual è la probabilità di ottenere due teste? \left [\cfrac{1}{4}\right ]
2. Si lanciano due dadi. Trova la probabilità che escano due 3; che escano un 3 e un 4; che escano due numeri pari. \left [\cfrac{1}{36},\cfrac{1}{18},\cfrac{1}{4}\right ]
3. Calcola la probabilità che lanciando una moneta esca testa \left [\cfrac{1}{2}\right ]
4. Calcola la probabilità che lanciando 1 dado esca il numero 1. \left [\cfrac{1}{6}\right ]
5. Calcola la probabilità che lanciando 1 dado esca un numero divisibile per 2 \left [\cfrac{1}{2}\right ]
6. Determina la probabilità che, lanciando 3 volte di seguito 1 moneta, si verifichi l’evento “esca almeno una croce”, sapendo che il primo lancio ha dato testa. \left [\cfrac{3}{4}\right ]
7. Da un’urna contenente 9 palline nere e 7 bianche si estraggono successivamente 3 palline, rimettendo ogni volta nell’urna la pallina estratta. Qual è la probabilità che siano tutte e tre nere? Che siano tutte e 3 bianche? Che siano le prime 2 bianche e la terza nera? Che siano  bianche e 1 nera? \left ( \cfrac{9}{16} \right )^{3};\left ( \cfrac{7}{16} \right )^{3};\left ( \cfrac{7}{16} \right )^{2}\cdot \cfrac{9}{16};3\cdot \left ( \cfrac{7}{16} \right )^{2}\cdot \cfrac{9}{16}

 [:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Probabilità del prodotto logico: principio delle probabilità composte[:]

[:it]

Samy Charnine

Dal post sulle probabilità condizionate si è affermato che:

P(A/B)=\cfrac{P(A \cap B)}{P(B)}

che è uguale a scrivere:

P(A \cap B)=P(B) \cdot P(A/B)

ma nel caso in cui si abbiano eventi indipendenti

P(A/B)=P(A)

per cui si ha il principio delle probabilità composte ossia

P(A \cap B)=P(B) \cdot P(A)

Questa relazione è alla base della definizione di Entropia nell’ambito delle telecomunicazioni.

Esempio di applicabilità

Si vuole sapere qual è la probabilità che esca testa, nel lancio di una moneta due volte, sapendo che prima è uscita testa.

In questo caso si è in presenza di eventi indipendenti per cui la probabilità che esca testa al primo lancio è \cfrac{1}{2}, la probabilità che esca nuovamente testa è \cfrac{1}{2}, per cui la probabilità che in due lanci mi esca due volte testa vale \cfrac{1}{2} \cdot \cfrac{1}{2}=\cfrac{1}{4}.[:]

Pubblicato in Senza categoria | Lascia un commento

[:it]Eventi dipendenti o indipendenti[:]

[:it]

Samy Charnine

Due eventi sono indipendenti se il verificarsi dell’uno non influisce sul calcolo della probabilità del verificarsi dell’altro

Due eventi sono dipendenti se il verificarsi dell’uno influisce sul calcolo della probabilità del verificarsi dell’altro.

Sono molto importanti queste due definizioni perché influiscono moltissimo nel caso in cui dovessi prevedere la trasmissione di un messaggio e quindi la necessità di trasmetterlo solo una volta o ritrasmetterlo.

Il primo esempio di eventi indipendenti potrebbe essere quello dell’estrazione di una pallina bianca da un’urna contente palline bianche e nere. In questo caso se dopo l’estrazione rimetto all’interno la pallina bianca estratta avrò eventi INDIPENDENTI ossia calcolare la probabilità di estrarre un’altra pallina bianca non dipende dall’estrazione precedente.

Se invece la pallina bianca non viene reintrodotta dall’urna allora tale fatto ha reso dipendente l’estrazione successiva da quella precedente.[:]

Pubblicato in Senza categoria | Lascia un commento