Teoria dei codici correttori d'errore

Slides:



Advertisements
Presentazioni simili
Dalla macchina alla rete
Advertisements

Lequivocazione By Vaccaro Maria A.. Che incidenza ha il disturbo sullinformazione? Si avrà in tal caso che lincertezza media nel messaggio trasmesso.
Informatica Generale Marzia Buscemi IMT Lucca
Rappresentazione dei dati e codifica delle informazioni
Informatica e Telecomunicazioni
Tecniche di compressione dei dati
Architettura di rete Le reti sono sempre organizzate a livelli
Vincenza Ferrara dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
E.Mumolo. DEEI Reti di calcolatore e Applicazioni Telematiche – Livello Dati Lezioni di supporto al corso teledidattico E.Mumolo. DEEI.
Fondamenti di Informatica
Andrea G. B. Tettamanzi, 2001 Teoria dellInformazione (Classica) Andrea G. B. Tettamanzi Università degli Studi di Milano Dipartimento di Tecnologie dellInformazione.
Sistemi e Tecnologie della Comunicazione
Sistemi e Tecnologie della Comunicazione
Affidabilità.
Canali e Multiplazione
Esercizio 1 Un sistema di multiplazione TDM di velocità pari a 2Mb/s trasporta canali vocali codificati a 16 kb/s più un canale dati a 112 kb/s. Si indichi.
Esercizio 1 Due collegamenti in cascata, AB e BC hanno una velocità rispettivamente di 100 Mb/s e 50 Mb/s e tempi di propagazione pari a 1 ms e 1.2 ms.
Teoria e Tecniche del Riconoscimento
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
Relatore: Laura Marinelli- PressCom Srl
Informatica 3 Codifica binaria.
Sistemi Elettronici Programmabili
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
INFORMAZIONE LEZIONE 1.
I CODICI.
CODICI Si ringrazia il prof. Di Santo per aver gentilmente messo a disposizione il proprio materiale per la preparazione di alcune delle slides presenti.
Codici binari decimali
Fabrizio Camuso
Teoria dei codici correttori d'errore
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Sistema di comunicazione
IL MODEM Che cos’è? A cosa serve? Che problemi risolve? Come comunica?
Limiti al trasferimento di informazione u Il tempo necessario per trasmettere dellinformazione dipende da: –la velocita di segnalazione (cioe quanto velocemente.
Corso di Fondamenti di Comunicazione Digitale
1 Esercizio 1 Un router riceve da un collegamento A lungo 10 km a 100 Mb/s e instrada i pacchetti ricevuti, lunghi 1000 bit verso una linea duscita B a.
INFORMATICA MATTEO CRISTANI. INDICE CICLO DELLE LEZIONI LEZ. 1 INTRODUZIONE AL CORSO LEZ. 2 I CALCOLATORI ELETTRONICI LEZ. 3 ELEMENTI DI TEORIA DELL INFORMAZIONE.
Modulo 1 – Reti Informatiche u.d. 4 (syllabus – 1.4.4)
QuickSMS è un pacchetto di uso molto semplice che permette la creazione di un servizio estremamente economico di SMS-on-demand. Il pacchetto si compone.
Il MIO COMPUTER.
STRUTTURA GENERALE DI UN ELABORATORE
Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 7.
Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Esercizi.
Parte Terza: Codificare l’informazione
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Digitale!!. Musica satellite (TV GPS) Telefoni rete telefonica, internet Video (DVD)
Progetto Edusat 3° Modulo
UML.
JUDICIAL INTERCULTURAL COMMUNICATION IN FAMILY MEDIATION Project JUST/2013/JCIV/AG/4628 Abilità comunicativa necessaria al magistrato Per superare de difficolta.
INTERNET e RETI di CALCOLATORI
Tecniche di progettazione Fault Tolerant
TESINA DI SISTEMI.
Laurea Ing EO/IN/BIO;TLC D.U. Ing EO 6 PULSE CODE MODULATION (PCM)
Rappresentazione dell’informazione nel calcolatore.
CENTRAL PROCESSOR UNIT (CPU) 1/2 E’ l’unità che regola e controlla tutti I processi nel microcontroller. E’ formata da diverse sottounità tra cui: Instruction.

Esercizio 0 Qual è la frequenza più alta rappresentabile da un segnale digitale di 64 kbps? Risposta: Se parliamo di “frequenza rappresentabile” significa.
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Rappresentazione della Informazione
Presenta: Liceo Classico Scientifico “Giosuè Carducci” Nola (Na) Presenta:
Bit singolo e burst u un canale che trasmette voce tollera bene gli errori distribuiti uniformemente –perche’ errori singoli hanno effetti simili al rumore.
La codifica dei numeri.
Sistemi e Tecnologie della Comunicazione
COMUNICAZIONE CELEBRE MODELLO Codifica Decodifica Messaggio Contesto
La comunicazione attraverso la rete HORVAT ROXANA SIMONA ISTITUTO SECONDARIO DI SECONDO GRADO «GANDHI» 13/10/2015.
Conosciamo…il computer
ASSOCIAZIONE SPORTIVA DILETTANTISTICA CRONOMETRISTI DELLA PROVINCIA DI BOLZANO ZEITNEHMER AMATEURSPORTVEREIN DER PROVINZ BOZEN a cura di Sante Camol
Università degli Studi di Roma “La Sapienza” Techniche di Compressione “Elaborazioni delle Immagini” “Elaborazioni delle Immagini”
Codici rilevatori di errori
Transcript della presentazione:

Teoria dei codici correttori d'errore Fondatore: Richard W. Hamming Articolo: Error Detecting and Error Correcting Codes (1950) In ogni trasmissione digitale possono avvenire errori. Es. ricezione da sonde spaziali o satelliti: canale molto disturbato, segnale molto debole  errori frequenti. Es. riproduzione musica o immagini digitali: supporto fisico danneggiato. Senza metodi efficaci e veloci di correzione degli errori non darebbe possibile ricevere informazioni dallo spazio, usare un lettore di CD o un telefonino! Es. graffio di alcuni millimetri sulla superficie di un CD non pregiudica l'ascolto grazie a codice di Reed - Solomon, in grado di correggere 'raffiche' di errori consecutivi di notevole lunghezza. Es. Telefoni cellulari GSM e satelliti: interferenze gestite utilizzando codici convoluzionali. Applicazioni nei campi più diversi: dalle telecomunicazioni alla biologia molecolare

 00000001111111 Gestione errore su 1 bit in sequenze di bit. Codice di ripetizione: Ripeti ciascun bit 3 volte Se uno dei bit è erroneamente invertito, viene riconosciuto e corretto durante la decodifica del suo blocco di 3 bit. 0000 000 000 000 000 Inefficiente: rapporto tra i bit attuali e i bit totali è solo 1/3 (per memorizzare/comunicare 1MB si memorizzano/inviano 3Mb) Codifica Hamming (7,4) Sequenza di bitsuddividisa in porzioni da 4 bit. Sia b il vettore che rappresenta una di tali porzioni, e codifichiamo b come bG a 7 bit, (operazioni modulo 2) Il tasso è 4/7, molto migliore. Vedremo che corregge 1 errore.  00000001111111

Definizione. La distanza di Hamming tra x e y in An è A=alfabeto An=insieme di sequenze di n simboli su A Definizione. La distanza di Hamming tra x e y in An è d(x, y)=numero di coordinate i t.c. xi diverso da yi es. d(0110,0011)=2 La distanza di Hamming è una metrica: d(x, y) = d(y, x) d(x, z) < d(x, y) + d(y, z) d(x, y) = 0 sse x=y

Definizione: Un codice a correzione di errore è un sottoinsieme C di An. La distanza minima di C è (minimo su tutte le coppie di parole diverse in C) d(C)=min d(x,y) Definizione: C è e error detecting se può rilevare <e errori; C è t error correcting se può correggere <t errori DECODIFICA: a minima distanza Nota(esercizio): su BSC (con prob. errore <1/2) (min distanza)=(max probabilità)

Definizione: Un codice a correzione di errore è un sottoinsieme C di An. La distanza minima di C è (minimo su tutte le coppie di parole diverse in C) d(C)=min d(x,y) Definizione: C è e error detecting se può rilevare <e errori; C è t error correcting se può correggere <t errori Proposizione: Se d(C)>2t+1, C e’ 2t error detecting e t error correcting Dim. d(C)=2t+1  sequenza a distanza <2t da parola codice non è in C  2t error detecting d(C)= 2t+1  sequenza r a distanza <t da p.c. ha distanza almeno 2t+1-t>t da ogni altra p.c. (vale disug. triangolare)  prendendo la p.c. più vicina a r correggiamo t errori  t error correcting y r t x t 1

Parametri: q = |A| n = lunghezza delle parole codice k = lunghezza del messaggio (lunghezza pre-codifica) = logq |C| d = d(C) Si vuole: valori grandi di k e d, e valori piccoli di n. Possiamo anche cercare di massimizzare il tasso del codice k/n codice a correzione di errore con questi parametri  codice (n, k, d)q .

Trasmissione su canali rumorosi: confronto tra Teoria di Hamming e Teoria di Shannon (Visione ad Alto Livello) Scopo: Shannon: massimizzare il tasso e minimizzare la probabilità di decodifica errata. Fornisce: funzioni di codifica e decodifica Hamming: massimizzare il tasso e numero errori corretti. Fornisce: codice (funzioni di codifica e decodifica efficienti) Modello d’errore: Shannon: random. Hamming: avversariale (caso peggiore). In Pratica: Risultati di Shannon ottimali ma non costruttivi Teoria dei codici: non ottimali ma efficienti e veloci

Codici a correzione di errore Applicazioni in vari campi: matematica e informatica. Es.: Trasmissione affidabile Memorizzazione su supporti soggetti a guasti (es. CD graffiato) Complessità: per pseudo-randomness, hardness amplification, probabilistically checkable proofs. Crittografia: schemi di condivisione segreti, sistemi crittografici. Matematica combinatoria e ricreativa.

Esempio: Derandomizzazione di algoritmi Definizione: A= algoritmo randomizzato (usa n random bits indip.) A volte basta indipendenza limitata. Pairwise independence sufficiente  derandomizzazione possibile: Invece di y di n bits random (A corretto  prob scegliere y con successo =p>0) run A per ogni y in S ( A corretto  esiste y con successo) Algoritmo Deterministico A’ running time T(A’)= O(|S|T(A)) vogliamo S piccolo Teroria dei codici  Esiste S dimensione O(n)

Codici lineari Alfabeto= A = campo finito (es. {0,…,q-1}, q primo, operazioni mod q) codice è lineare  esiste una matrice di controllo parità H (n-k x n) su A tale che C è lo spazio nullo di H, cioè C = {y | HyT = 0} C lineare è un sottospazio lineare di An  x, y є C  x + y є C x є C, a є Σ  ax є C. C lineare generato da una matrice G (k x n): righe = insieme massimale di parole codice linearmente indipendenti = base spazio lineare. Codice = {x | x=aG}

l=3, k=4, numero parole codice =16 Codice di Hamming n=2l-1 Codice = spazio nullo di H = {x | HxT=0} Numero parole codice = ESEMPIO n=7=23-1 l=3, k=4, numero parole codice =16

Definizione w(x) = peso di Hamming di x = numero componenti di x non nulle w(C)= minx in Cw(x) Lemma Dato codice lineare C w (C)= min numero colonne linearmente dipendenti di H Dim. H ha r colonne l.d. in posizioni i1,…,ir  esistono a1,...,ar tali che  Esiste parola codice di peso r:

Lemma Dato codice lineare C w (C)= min numero colonne linearmente dipendenti di H Per codici di Hamming il peso minimo di una parola è 3: Tutte colonne non nulle  min num colonne l.d. >1 Tutte colonne diverse  c+c’ non nullo  min num colonne l.d. >2 In H tutti vettori  date c,c’ esiste in H colonna c’’=c+c’  c + c’+ c’ ’=0  min num colonne l.d. è 3

Lemma Dato codice lineare C, w (C) = d(C) Dim. Corollario Un codice lineare C corregge t errori se w (C)= d(C) > 2t+1 CODIFICA/DECODIFICA?

Se si sono avuti >2 errori? CODIFICA/DECODIFICA dei Codici di Hamming D(C)=3  corregge 1 errore Siano c=(c0,…,cn-1)=parola codice, r=(r0,…,rn-1)=sequenza da decodificare c r r=c+e, ei=1 sse errore in posizione i HrT=H(c+e)T=HcT +HeT=HeT 0 errori  r=c e=0  HrT=H0T=0 1 errore posizione i  r=c+(0...010…0)=c+ei  HrT=HeiT=ai DECODIFICA: Calcola sindrome s=HrT se s=0 output r se s=ai output r+ei Se si sono avuti >2 errori?

CODIFICA dei Codici di Hamming INPUT: bit di informazione= blocco di k=2l-l-1 bits Vogliamo codifica sistematica: bit di informazione in primi k bit della p.c. Proprietà Se scegliamo H=[A | In-k] allora G=[Ik | AT] Dim. Dobbiamo mostrare che CODIFICA SISTEMATICA: input a=(a0,…,ak-1) output parola codice c=aG c=(a0,…,ak-1,ck,…,cn-1)