84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats...

74
Transmissi´ o de Dades I Notes del curs Alexandre Graell i Amat †‡ Politecnico di Torino, Corso Duca degli Abruzzi 24, Turin, Italy. Universitat Pompeu Fabra, Passeig Circumval.lacio 8, 08003 Barcelona, Spain. 16 de gener de 2003

Transcript of 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats...

Page 1: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

Transmissio de Dades INotes del curs

Alexandre Graell i Amat†‡

†Politecnico di Torino, Corso Duca degli Abruzzi 24, Turin, Italy.‡Universitat Pompeu Fabra, Passeig Circumval.lacio 8, 08003 Barcelona, Spain.

16 de gener de 2003

Page 2: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

Index

1 Codificacio de Font 51.1 Resultats Basics de la Teoria de la Informacio . . . . . . . . . . . 6

1.1.1 Model Matematic de la Font d’Informacio . . . . . . . . . 61.1.2 Mesura de la Informacio: Entropia . . . . . . . . . . . . . 7

1.2 Compressio de Dades: Codificacio de Font . . . . . . . . . . . . . 131.3 Codis a Longitud Fixa . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.1 Teorema de la Codificacio de Font . . . . . . . . . . . . . 201.4 Codis a Longitud Variable . . . . . . . . . . . . . . . . . . . . . 21

1.4.1 Codis a sımbol . . . . . . . . . . . . . . . . . . . . . . . 231.4.2 Quines el Lımit Imposat de la Decodificacio Unıvoca? . . 271.4.3 Quinaes la compressio maxima que podem esperar? . . . 291.4.4 Quant podem comprimir? . . . . . . . . . . . . . . . . . 301.4.5 Codificacio de font optima amb codis a sımbol: Codifi-

cacio de Huffman . . . . . . . . . . . . . . . . . . . . . . 311.5 Exercicis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351.6 Solucions als Exercicic Proposats . . . . . . . . . . . . . . . . . 39

2 Codificacio de Canal: Codis a Bloc 412.1 Introduccio als Codis de Canal i Definicions . . . . . . . . . . . . 43

2.1.1 Codis a Bloc i Convolucionals . . . . . . . . . . . . . . . 442.1.2 Rate del Codi . . . . . . . . . . . . . . . . . . . . . . . . 442.1.3 Linearitat . . . . . . . . . . . . . . . . . . . . . . . . . . 442.1.4 Codis ARQ i FEC . . . . . . . . . . . . . . . . . . . . . 442.1.5 Motivacions per l’Us la Codificacio de Canal . . . . . . . 45

2.2 Canals Sorollosos . . . . . . . . . . . . . . . . . . . . . . . . . . 452.2.1 Capacitat de Canal per a Canals Discrets . . . . . . . . . 46

2.3 Codis a Bloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.3.1 Matriu Generatriu i Matriu de Paritat . . . . . . . . . . . 512.3.2 Sındrome: definicio i propietats . . . . . . . . . . . . . . 58

2.4 Distancia mınima . . . . . . . . . . . . . . . . . . . . . . . . . . 592.5 Capacitats Detectores i Correctores d’un Codi . . . . . . . . . . . 60

2.5.1 Capacitat Detectora d’un Codi . . . . . . . . . . . . . . . 602.5.2 Capacitat Correctora d’un Codi . . . . . . . . . . . . . . 61

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 3: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

II INDEX

2.5.3 Taula de decodificacio i standard array (matriu tıpica) d’uncodi a bloc lineal . . . . . . . . . . . . . . . . . . . . . . 64

2.5.4 Codis Cıclics . . . . . . . . . . . . . . . . . . . . . . . . 66

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 4: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

Index de figures

1.1 EntropiaH(p) d’una font d’informacio binaria ambP (x1) = p iP (x2) = 1− p. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.2 Hδ(X)N perN = 4 variables binaries ambp1 = 0.1. . . . . . . . 191.3 1

N Hδ(X)N perN = 10,210, . . . ,1010 variables binaries ambp1 =0.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1.4 Arbre binari associat a un codi de font binari. . . . . . . . . . . . 241.5 Els codis a prefix poden representar-se mitjancant arbres binaris.

Codis a prefix complets corresponen a arbres binaris amb totes lesbranques utilitzades. . . . . . . . . . . . . . . . . . . . . . . . . 25

1.6 Construccio d’un codi binari a arbre a utilitzant un arbre complet. 281.7 Arbre generat pel procediment de codificacio de Huffman per a una

font amb sis sımbols. . . . . . . . . . . . . . . . . . . . . . . . . 332.1 Comportament tıpic de la probabilitat d’error de bit en funcio de la

relacio senyal soroll de bit per sistemes codificat i no codificat. . . 462.2 Relacio entre entropia de font, entropia condicional i informacio

mutua. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482.3 Comportament tıpic de la funcio E(R). . . . . . . . . . . . . . . 50

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 5: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1

En aquest curs ens ocuparem de dos dels aspectes fonamentals dels sistemesde comunicacions, i mes concretament dels sistemes de comunicacions digitals,esa dir, que transmeten la informacio de manera digital.

El proces de comunicacio implica la transmissio d’informacio d’un punt a unaltre a traves d’una successio de processos que identificarem amb el seguent esque-ma a blocs:

Aleshores, l’objectiu d’un sistema de comunicacionses el de transmetre in-formacio des de l’emissor, la font d’informacio, al seu destinatari. En concret,voldrem que aquesta transmissio acompleixi dos requisits fonamentals: el primersera l’eficiencia,es a dir, cal transmetre la informacio de la manera mes eficientpossible, la qual cosa significa evitar transmetre informacio que sigui superflua.Un segon requisites el de la fiabilitat. La informacio s’ha de transmetre de la man-era mes fiable possible,es a dir, el missatge rebut pel receptor ha de ser el mesproper possible al missatge que ha emes la font d’informacio.

Anem a identificar un a un els elements del sistema de comunicacions.

1. Font d’informacio. En primer lloc identifiquem la font d’informacio. Lafont d’informacio ser analogica o discreta. En el primer cas genera un senyalcontinu en el temps i en amplitud, com per exemple un senyalaudio o vıdeo.La font digital en canvi, genera un senyal discret en temps i tambe en ampli-tud, es a dir, te un nombre finit de caracters de sortida.

2. Codificador de Font.El segon element de tot sistema de comunicacionses elcodificador de font. Pel fet que ens ocupem d’un sistema de comunicacionsdigitals, en cas que el senyal d’informacio sigui analogic, la primera funciodel codificador a bloc sera aquella de transformar aquest senyal analogic enun senyal digital oportu.

El proces de digitalitzacio del senyal es descompon en tres parts, que aquıdescriurem molt breument sense entrar en detall. El primer pases el demostreig del senyal.Es a dir, amb un interval de mostreig determinat, esprenen mostres del senyal. Aquestes un proces que no implica perdues si lafreq¨encia de mostreiges suficientment elevada. Aixo significa que podemrecuperar el senyal original a partir del senyal mostrejat. El mostreig delsenyal implica la discretitzacio del senyal en temps. No obstant, el senyalcontinua essent continu en amplitud,es a dir. El segon pas sera doncs el dediscretitzar el senyal en amplitud. Aquest proces rep el nom de quantificacio.La quantificacio mes senzillaes la quantificacio a dos nivells.

El darrer pases el de la codificacio. Es a dir, a cada nivell de quantitzaciohem d’assignar una etiqueta. Per exemple, en el cas de dos nivells podemassignar l’etiqueta 1 al nivell positiu i l’etiqueta 0 al nivell negatiu. En casde 4 nivells, i si volem un sistema de transmissio binari, podrıem codificarels quatre nivells com{00,01,10,11}.Nosaltres suposarem al llarg del curs que tractem amb fonts digitals i ob-viarem el proces de digitalitzacio del senyal. Aixı doncs suposarem que a la

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 6: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2

sortida de la font tenim un senyal de tipus discret. Per tant la sortida de lafont sera una sequencia de sımbols que pertanyen a un alfabet finit. Per ex-emple, podem considerar els sımbols de l’alfabet. En aquest cas el numerode sımbols es 26, corresponents a les 26 lletres de l’alfabet. En cas queconsiderem un sistema de transmissio binari, l’alfabet consta de dosunicssımbols, 0 i 1, i, per tant, ens trobarem amb una sequencia d’uns i zeros.

Una segona funcio del codificador de canal, a banda de la digitalitzacio delsenyal, en cas que sigui necessaria, i de la qual ens ocuparem en la primerapar d’aquest curs,es la de reduir la redunancia inherent de la font. En altresparaules, aplicar el que tots vosaltres coneixereu com a compressio de dades.

Aix ı doncs en aquest curs, quan parlarem de codificacio de font ens referirema tot el que es relaciona amb la compressio de dades.

Idealment el que voldrıem es representar la sortida de la font d’informacio(el missatge) amb el menor numero de dıgits binaris possible. Una de lescaracterıstiques comunes dels senyals generats per les fons fısiqueses queen la seva forma natural contenen una gran quantitat d’informacio quees re-dundant i, per tant, innecessaria, de manera que la seva transmissio suposaun desperdici de recursos. He ja mencionat que un dels aspectes fonamen-tals d’un sistema de comunicacionses el de l’eficiencia de la transmissio,de manera que sera necessari eliminar d’alguna manera aquesta informacioredundant de la font. Aquestaes la operacio que realitza el codificador defont.

Anomenarem la seq¨encia de dıgits binaris a la sortida del codificador defont amb el terme sequencia d’informacio.

3. Codificador de Canal.A continuacio aquesta sequencia passa a traves delcodificador de canal, que sera el segon argoment d’estudi d’aquest curs i quecontinuara amb el curs de Teoria de la Comunicacio II del segon trimestre. Elproposit del codificador de canales el d’introduir d’una manera controladaredundancia a la sequencia d’informacio de manera que aquesta redundanciapugui utilitzar-se en recepcio per a millorar la fiabilitat del senyal transmes.

La preguntaes: perquees necessari l’ us de tecniques de codificacio de canal?Doncs la respostaes ben senzilla. El senyal de comunicacions es transmetper un canal sorollos,es a dir, sotmes a errors. Pel fet que el canal noes ide-al, la sequencia rebuda diferira de la sequencia trasnmessa. Podem aleshorescaracteritzar el canal amb una determinada probabilitat d’error. Aleshores,la redundancia afegida pel codificador de canal es pot utilitzar en el receptorper millorar la fiabilitat de la transmissio i superar el soroll i interferenciesque introdueix el canal, de manera que es redueix la probabilitat d’error as-sociada al sistema. Per exemple, una codificacio trivial de la sequencia d’in-formacio es la de simplement repetir cada bit un nombrem determinat devegades.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 7: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

3

4. Modulador. El seguent element del sistema de comunicacionses el modu-lador, que serveix com a interfıcie amb el canal de comunicacions. Ja quegairebe tots els canals de comunicacions que podem trobar a la practica soncapacos de transmetre senyals electrics, l’objectiu principal del moduladores el de transformar la sequencia d’informacio binaria en una forma d’onaapropiada. En definitiva, el modulador te la funcio d’adaptar el senyal alcanal de transmissio: associa un o mes sımbols a una determinada formad’ona. Per exemple podem considerar una modulacio molt simple amb duesformes d’ona, per representar un ‘0’ i un ‘1’. En aquest cas cada bit es trans-met separadament. Aquesta modulacio rep el nom de modulacio binaria. Al-ternativament el modulador pot transmetre un bloc deb bits de codi al mateixtemps utilitzantM = 2b formes d’ona diferents,si(t), i = 0, . . . ,M−1, unaforma d’ona per cadascuna de les possibles sequencies deb bits. En aquestcas la modulacio s’anomenaM -aria. Exemple: modulacio quaternaria.

5. Canal de Comunicacions.El canal de comunicacionses el medi fısic ques’utilitza per a transmetre la informacio. Hi ha infinitat ´de canals de comu-nicacions que vosaltres coneixeu. En les transmissions mobils, per exemple,el canales l’atmosfera. D’altra banda els sistemes de telefonia utilitzen unagran varietat de medis fısics, que inclouen les lınies de cable, la fibraoptica...Un altre canal molt usuales el canal d’enregistrament magnetic que podeutrobar en qualsevol PC. El canal en aquest cas esta constituıt pel medi fısic,esa dir, el suport magnetic, el disc dur, i pels processos de lectura i escriptura dedades. Fixeu-vos que en els primers exemples, la transmissio de la informa-cio es fa en l’espai, mentres que en el segon cas en el temps. La caracterısticacomuna de tots els canals de comunicacionses que el senyal transmeses cor-romput d’una manera aleatoria per una gran varietat de fenomens, tals comel soroll i les interferencies.

En recepcio caldra invertir tot aquest proces per tal de reproduir el missatgetransmes i fer arribar la informacio d’una manera adient al receptor.

6. Demodulador. El demodulador rep a la seva entrada la forma d’ona cor-rompuda pel canal de transmissio i proporciona a la seva sortida una sequenciade numeros que representa una estimacio dels sımbols transmessos.

7. Decodificador de Canal.Aquesta sequencia de nombres es passa a travesdel decodificador de canal, el qual tracta de reconstrit la sequencia d’infor-macio original del coneixement del codi utilitzat pel codificador de canal i laredundancia continguda en la sequencia rebuda.

Una mesura de les prestacions del sistema de comunicacions consisteix enla probabilitat d’error de bit mitja a la sortida del decodificador (nombrede bits errats/nombre de bits transmessos). En general, aquesta probabilitatd’error es una funcio de les caracterıstiques del codi el tipus de modulacioutilitzada, la potencia de transmissio, les caracterıstiques del canal (nivell de

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 8: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

4

soroll i interferencies...) i els metodes de demodulacio i decodificacio ques’utilitzen.

8. Decodificador de Font.Finalment el decodificador de font retorna a la sevasortida una estimacio del senyal transmes.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 9: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

Capıtol 1

Codificacio de Font

L’objectiu de tot sistema de comunicacions es el de reproduir el missatge emes perla font d’informacio en el lloc on el destinatari es localitza. La distancia entre lafont de la informacio i el seu destinatari pot ser molt considerable, comes el cas deles transmissions intercontinentals, o molt petita, com en el cas d’enregistrament ilectura de dades utilitzant l’unitat de disc d’un ordenador (en aquest cas la distanciaentre el transmissor i el receptor pot ser considerada entemps).

Tothom te una nocio intuıtiva del significat de lainformacio. L’analisi de lesprestacions dels sistemes de comunicacions difıcilment pot concebre’s sense unamesura quantitativa de la informacio i un model matematic de la font que l’origi-na. Hartley, Nyquist i especialment Claude Shannon foren els pioners en proposarmesures quantitatives de la informacio.

Es per tant del tot necessari definir una mesura apropiada de la quantitat d’in-formacio associada a un missatge generat per una font d’informacio i, mes gen-eralment, de la quantitat d’informacio associada a la propia font.

En aquest capıtol definirem un model senzill, pero de gran utilitat, de la fontd’informacio, la font discreta estacionaria, i mostrarem com pot mesurar-se laquantitat d’informacio emesa per la font. En general, la sortida que genera la font(el missatge) consisteix en una sequencia de sımbols seleccionats d’un conjuntfinit, conegut com l’alfabet de font. A l’alfabet de font esta associada una cer-ta distribucio de probabilitat, i un mecanisme probabilıstic governa l’emissio desımbols successius en el missatge. Veurem que generalment diferents missatgestransporten diferents quantitats d’informacio; caldra doncs cal definir una quantitatd’informacio mitja, l’entropia, que caracteritzi la font. La unitat de mesura de lainformacio que utilitzarem sera elbit, definit com la informacio que es proporcionaamb l’emissio d’un entre dos sımbols equiprobables.

Amb aquesta definicio, l’entropia de la font representa el mınim numero migde sımbols binaris (dıgits) necessaris per representar cada sımbol en el missatge.

Una vegada caracteritzada la font d’informacio i definida una mesura adequadade la informacio ens ocuparem de la conversio dels missatges generats per aquestafont en una sequencia de dıgits binaris. Idealment voldrem representar la sortida

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 10: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

6 Codificacio de Font

de la font (el missatge) amb el menor numero de bits possibles. En altres paraules,cerquem una representacio eficient de la sortida de la font que resulti en poca ocap redundancia. el proces de convertir eficientment la sortida d’una font d’infor-macio, sigui analogica que digital, en una sequencia de dıgits binaris s’anomenacodificacio de fonto compressio de dades.

L’objectiu del codificador de fontes doncs aquell de reduir la redundancia dela font tant com sigui possible.

1.1 Resultats Basics de la Teoria de la Informacio

1.1.1 Model Matematic de la Font d’Informaci o

Tota font d’informacio produeix una sortida aleatoria, es a dir, la sortida de la fontpot caracteritzar-se en termes estadıstics. D’altra banda, si la sortida de la font esconegues exactament, no seria necessari transmetre aquella informacio: la trans-missio de la informacio a traves del sistema de comunicacions careix de tot sentit.En aquest curs, per simplicitat, considerarem fonts d’informacio discretes (la gen-eracio de la informacio es duu a terme en instants de temps discrets) i postularemun model matematic adequat per a tals fonts. No obstant la seva simplicitat, aquestens permetra definir d’una manera precisa una mesura de la informacio i els lımitsde la compressio de la informacio.

El tipus mes simple de font discretaes aquella que emet una sequencia desımbols seleccionats d’un alfabet finit. Per exemple, una fontbinaria emet unasequencia binaria de la forma100101110 . . ., on l’alfabet de font consisteix en elsdos sımbols{0,1}. Mes en general, una font d’informacio discreta consistent en unalfabet d’M sımbols possibles,{a1,a2, . . . ,aM}, emet una sequencia de sımbolsseleccionats d’aquest alfabet.

Per construir un model matematic de la font discreta, suposarem que cadasımbol de l’alfabet te associada una determinada probabilitatpk d’ocorrencia. Faremus de la seguent definicio:

Definicio 1.1 Un conjuntX es una tripleta(x,AX ,PX), on x es una variablealeatoria que pren valors en l’Alfabet finit d’M sımbolsAX = {a1,a2, . . . ,aM},d’acord amb la distribucio de probabilitatPX = {p1,p2, . . . ,pM}, ambP (x =ai) = pi, pi ≥ 0 i

∑ai∈AX

P (x = ai) = 1. ¦Podem ja definir en termes matematics la font d’informacio:

Definicio 1.2 Una font discreta estocasticaes un dispositiu que emet missatgesd’acord amb el conjuntX. En altres paraules,es un dispositiu que genera, ambfrequenciaRs = 1/T (rate), una sequencia de sımbolsx(iT ) = xi per mitja dela seleccio de sımbols de l’alfabetAX , d’acord amb la distribucio de probabilitatPX . ¦

Aleshores, definirem un missatge generat per aquesta font com una sequencia

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 11: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.1 Resultats Basics de la Teoria de la Informacio 7

de sımbols(xn)∞n=0.

Per comoditat, d’ara en endavant utilitarem indistintament els termes ‘conjuntX ’ i ‘variable aleatoria X ’ per a definir la tripleta(x,AX ,PX). Es a dir, quanparlarem de ‘variable aleatoria X ’ s’entendra que la variable te sempre associatsuna cert alfabetAX i una certa distribucio de probabilitatPX .

1.1.2 Mesura de la Informacio: Entropia

La nocio intuıtiva d’informacio refereix a qualsevol nou coneixement sobre algu-na cosa. Es pot obtenir informacio escoltant, mirant, o a traves d’altres mitjansde percepcio. La font d’informacio, doncs, genera sortides (missatges) que sond’interes del receptor de la informacio, el qual no coneix aquesta informacio a pri-ori. El rol del sistema de comunicacions es assegurar-se que aquesta informacioes transmessa correctament al receptor. Ja que la sortida d’una font d’informacioes una funcio variable en el temps i impredictiva (si pot ser predictiva, no hi hacap necessitat de transmetre-la), pot modelar-se com un proces aleatori. En aquestcapıtol considerarem un model molt senzill de la font d’informacio.

En aquest apartat veurem com podem mesurar el contingut d’informacio trans-portat per un particular sımbol de l’alfabet de font, i la quantitat d’informacio mit-ja associada a la font. Per donar una mesura quantitativa d’aquesta informacio,comencarem intentant definir el contingut d’informacio de la font de manera quesatisfaci certes propietats intuıtives.

Suposem que la font en consideracio es una font discreta com la que acabemde definir. Suposem tambe, sense perdua de generalitat, quea1 sigui sımbol mesprobable iaM el valor menys probable,es a dirp1 ≥ p2 ≥ . . . ≥ pM .

Exemple1.1: Considerem per exemple una font que proporciona informacio sobre lescondicions climatiques i la pol.lucio de l’ambient a Barcelona el mes d’agost. En aquestcas,A representa diverses combinacions condicio climatica-pol.lucio, com per exemplecalor i contaminat, calor i lleugerament contaminat, fred i altament contaminat, fred i mit-janament contaminat, etc.¤

La questio es: quina sortida transporta mes informacio, a1 o aM (el sımbolmes probable o el mes improbable)? Intuıtivament, revelantaM , el sımbol mesimprobable, la font proporcionara mes informacio. En altres paraules, la quantitatd’informacio associada a un particular sımbol de l’alfabetAX esta estrictamentrelacionada amb la sevaincertesa: un increment d’incertesa correspon a mes infor-macio.

Exemple1.2: El tamany de la lletra en la portada d’un diaries mes gran quan la notıciaes mes inesperada i imprevisible, com per exemple “Trobada vida intel.ligent a Mart”quequanes una notıcia molt previsible, “”.¤

D’aquı se’n despren que una mesura racional del contingut d’informacio asso-ciat a l’i-esim sımbol emes per la font,ai, i que denotarem amb comI(ai), ha de

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 12: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

8 Codificacio de Font

ser una funcio decreixent de la probabilitat d’aquest sımbol,

I(aj) > I(ai) si pj < pi (1.1)

Una segona propietat intuıtiva de la mesura de la informacio es que un canvipetit en la probabilitat d’un determinat sımbol no ha de variar la informacio relativaa aquest sımbol d’una gran quantitat. En altres paraules, la mesura d’informacioha de ser una funcio decreixent i contınua de la probabilitat associada al sımbol.

Suposem ara que la informacio sobre el sımbol aj pot descomposar-se en doscomponents independents,aj1 i aj2, es a dir,xj = (xj1,xj2),aj = (aj1,aj2).La definicio d’independencia es que la probabilitat conjuntaes separable en elproducte de probabilitats,p(x = aj) = p(xj1 = aj1)p(xj2 = aj2).

Exemple1.3: En l’anterior exemple aquesta descomposicio seria certa si assumim que latemperatura i la pol.lucio son variables quasi independents i, per tant, que cada sımbol defont pot descomposar-se en dos components independents.¤

Intuıtivament, pel fet que les dues components son independents, revelar in-formacio d’una d’elles (temperatura) no ens proveeix cap informacio sobre l’altracomponent (pol.lucio) i, d’aquesta manera, la quantitat d’informacio provided rev-elantaj es la suma de les informacions obtingudes revelantaj1 i aj2.

D’aquesta discussio podem concloure que la quantitat d’informacio reveladasobre un sımbolaj amb probabilitatpj ha de satisfer les tres condicions seguents:

• El contingut d’informacio del sımbol aj depen exclusivament de la proba-bilitat p(aj) i no del valoraj . Denotarem aquesta informacio ambI(aj) il’anomenemautoinformacio.

• L’ autoinformacio es una funcio contınua i decreixent amb la probabilitat delsımbolpj ,

I(aj) > I(ai) si pj < pi (1.2)

• El contingut d’informacio associat a l’emissio de dos sımbols independentses la suma de les informacions individuals:

Si P (ai,aj) = P (ai)P (aj) aleshores I(ai,aj) = I(ai) + I(aj) (1.3)

Arribats a aquest punt pot demostrar-se que l’unica funcio que satisfa (1.2) i(1.3)es la funcio logarıtmica. La definicio del contingut d’informacio d’un sımbolai es doncs,

I(ai) , loga

1pi

(1.4)

En (1.4) la base del logaritme (indicat amba) no esta especificada. La sevaeleccio determina la unitat de mesura assignada al contingut d’informacio. Si s’u-tilitza el logaritme natural (basee), la unitat de mesura s’anomenanat. Si la baseutilitzadaes la base2, la unitat de mesura es coneix amb el nom debit (contracciode les paraules angleses “binary digit”).

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 13: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.1 Resultats Basics de la Teoria de la Informacio 9

Nota La justificacio del bit com a mesura d’informacio pot basar-se en el fetque la correcta identificacio d’un sımbol entre dos sımbols equiprobables duu unaquantitat d’informacio igual aI(a1) = I(a2) = log2 2 = 1 bit. O

Per tal de demostrar mes incisivament que la mesura logarıtmica del contingutd’informacio es l’apropiada per les comunicacions digitals, considerem el seguentexemple.

Exemple1.4: Considerem una font d’informacio discreta que emet un dıgit binari,{0,1},amb igual probabilitat cadaτs segons. El contingut d’informacio de cada sortida generadaper la fontes

I(xi) = − log2 P (xi) = − log2

12

= 1 bit

Suposem ara que les sortides generades successivament per la font son estadısticamentindependents,es adir, la fontes sense memoria. Considerem un bloc dek dıgits binarisgenerat per la font i generat en un interval de tempskτs. Hi ha M = 2k blocs dekbits possibles, cadascun dels quals igualment probable amb probabilitat1/M = 2−k.L’autoinformacio d’un bloc dek bits es

I(x′i) = − log2 2−k = k bits

Per tant, la mesura logarıtmica de la informacio posseeix la propietat d’addicio desitjadaquan el numero de sortides d’una font es considera com un bloc.¤

La deficicio (1.4) permet associar a cadascun dels sımbols de l’alfabet de fontAX el seu contingut d’informacio. Una caracteritzacio completa de l’alfabet (equiv-alentment de la font discreta) pot obtenir-se definint elcontingut d’informacio migd’X,

H(X) ,M∑

i=1

piI(ai) =M∑

i=1

pi log1pi

(1.5)

quantitat que rep el nom d’entropiade la font d’informacio. La seva unitat demesuraes bits/sımbol.

Definicio 1.3 L’entropia d’una variable aleatoriaX es defineix com

H(X) ,∑

x∈AX

P (x) log1

P (x)(1.6)

L’entropia mesura el contingut d’informacio (o incertesa) mig d’X. ¦

Exemple1.5: L’alfabet de font consisteix en quatre possibles sımbols amb probabilitatsp1 = 1

2 , p2 = 14 , p3 = p4 = 1

8 . Per calcular l’entropia de l’alfabet de font, apliquem ladefinicio (1.6)

H(X) =12

log 2 +14

log 4 + 218

log 8 = 1.75 bit/sımbol

¤

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 14: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

10 Codificacio de Font

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

probabilitat p

en

tro

pia

H(p

) e

n b

its/s

ímb

ol

Figura 1.1. EntropiaH(p) d’una font d’informacio binaria ambP (x1) = p iP (x2) = 1− p.

Exemple1.6: Considerem una font d’informacio que emet una sequencia de sımbols es-tadısticament independents seleccionats de l’alfabet consistent enM sımbols equiprobales.L’entropia d’aquesta fontes

H(X) =M∑

i=1

1M

log M = log M bit/symbol

Quan l’alfabet de font consisteix en dos sımbols, amb probabilitatsp i 1− p l’entropia del’alfabet es

H(X) = p log1p

+ (1− p) log1

1− p, H(p)

La funcio H(p) esta il.lustrada a la Fig. 1.1.2. Es pot observar que assoleix el valor maximperp = 0.5, H(1/2) = 1, es a dir, quan els dos sımbols son equiprobables.¤

El darrer resultat de l’exemple 6,es a dir, la maximitzacio de l’entropia de fontper sımbols equiprobables,es una propietat general de l’entropia, com veurem acontinuacio:

• H(X) ≥ 0, amb igualtat siipi = 1 per uni. [‘sii’ es l’acronim de “si inomes si”.]1

• L’entropia es maxima si P (x) es uniforme,es a dir, en cas de sımbolsequiprobables:

H(X) ≤ log(|AX |) amb igualtat sii pi =1

|AX | per tot i (1.7)

Notacio: les barres verticals ‘| ¦ |’ tenen dos significats.|AX | denota elnumero d’elements del conjuntAX ; si x es un numero, aleshores|x| es elvalor absolut d’x.

1En aquest cas la incertesa respecte els sımbols de fontes nula.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 15: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.1 Resultats Basics de la Teoria de la Informacio 11

La redundancia mesura la diferencia fraccional entreH(X) i el seu valormaxim possible,log(|AX |.Definicio 1.4 La redundancia d’X es

1− H(X)log(|AX | (1.8)

¦

Entropia Conjunta i Condicional

Quan es tracta amb dues o mes variables aleatories, exactament de la mateixamanera que quan es treballa amb probabilitats condicionals i conjuntes, podenintroduir-se l’entropia condicional i conjunta. Aquests conceptes son especialmentimportants quan es tracta amb fonts amb memoria.

Definicio 1.5 L’entropia conjunta de dues variables aleatories discretesX i Y esdefineix com

H(X,Y ) =∑

x,y∈AX ,AY

P (x,y) log1

P (x,y)(1.9)

En el cas de variables aleatories independents, l’entropia conjuntaes additiva,

H(X,Y ) = H(X) + H(Y ) sii P (x,y) = P (x)P (y) (1.10)

¦

Demostracio

H(X,Y ) =∑

x,y∈AX ,AY

P (x,y) log1

P (x,y)

=∑

x∈AX

y∈Ay

P (x)P (y) log1

P (x)P (y)

=∑

x∈AX

y∈Ay

P (x)P (y) log1

P (x)+

x∈AX

y∈Ay

P (x)P (y) log1

P (y)

=∑

x∈AX

P (x) log1

P (x)

y∈Ay

P (y) +∑

y∈Ay

P (y) log1

P (y)

x∈AX

P (x)

=∑

x∈AX

P (x) log1

P (x)+

y∈Ay

P (y) log1

P (y)

= H(X) + H(Y )

¦

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 16: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

12 Codificacio de Font

Definicio 1.6 L’entropia condicional d’X donaty = bk es l’entropia de la dis-tribucio de probabilitatP (x|y = bk)

H(X|y = bk) =∑

x∈AX

P (x|y = bk) log1

P (x|y = bk)(1.11)

L’entropia d’X donatY es la mitja de l’entropia anterior, sumant per tots els pos-sibles valors d’y, pesats amb les corresponents probabilitats,

H(X|y = bk) ,∑

y∈BY

P (y)

x∈AX

P (x|y) log1

P (x|y)

=∑

x,y∈AX ,BY

P (x,y) log1

P (x|y)

(1.12)

Aquesta quantitat mesura l’incertesa mitja que resta sobrex quany es coneguda.Per tant, si la informacio esutil, no incrementa la incertesa en mitja.¦

Exemple1.7: Utilitzant la propietat de la probabilitat condicionalp(x,y) = p(x|y)p(y),demostrar queH(X,Y ) = H(Y ) + H(X|Y ).

Solucio: De la definicio d’entropia conjunta de dues variables (1.9), tenim

H(X,Y ) =∑

x,y∈AX ,AY

P (x,y) log1

P (x,y)

=∑

x,y∈AX ,AY

P (x,y) log1

P (x|y)P (y)

=∑

x,y∈AX ,AY

P (x,y) log1

P (y)+

x,y∈AX ,AY

P (x,y) log1

P (x|y)

=∑

y∈AY

P (y) log1

P (y)+

x,y∈AX ,AY

P (x,y) log1

P (x|y)

= H(Y ) + H(X|Y )

on en el darrer pas hem utilitzat la propietat de probabilitat marginal

x∈AX

p(x,y) = p(y) (1.13)

Aquesta relacio ens diu que el contingut d’informacio del parell(X,Y ) es igual al con-tingut d’informacio d’Y mes el contingut d’informacio d’X una vegadaY es conegut.Equivalentment, ens diu que el mateix contingut d’informacio es transfereix revelant elparell(X,Y ) o primer revelantY i despres revelant la informacio restant enX. ¤

Exemple1.8: El joc dels vaixells: quants bits (quanta informacio) pot¤

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 17: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.2 Compressio de Dades: Codificacio de Font 13

1.2 Compressio de Dades: Codificacio de Font

A l’apartat anterior hem introduıt una mesura natural del contingut d’informacioassociat a una variable aleatoria discretaX. QuanX era la sortida generada per unafont discreta, el contingut mig d’informacio associat a la font era descrit per l’en-tropiaH(X) de la font. Hem vist tambe que sımbols improbables transportavenmes informacio que sımbols probables i, per tant,H(X) es tambe una mesurad’incertesa.

En aquest apartat considerarem el proces de codificacio la sortida d’una font,es a dir, el proces de representar la sortida de la font amb una sequencia de dıgitsbinaris. Idealment voldrıem representar la sorida de la font (el missatge) amb elmenor numero de bits possible. En altres paraules, cerquem una representacioeficient de la sortida de la font que resulta en poca o cap redundancia. Veuremque una mesura de l’eficiencia del metode de codificacio de font pot obtenir-secomparant el numero mig de dıgits binaris per sımbol de sortida de la font ambl’entropiaH(X).

En aquest apartat considerarem quants bits es requereixen per descriure la sor-tida d’una font d’informacio, i tractarem de minimitzar aquest numero de bits,es adir, aplicar el que es coneix com acompressio de dades.

Exemple1.9: Un fitxer es una sequencia de bytes. Cada byte esta format per 8 bits, irepresenta un valor decimal entre 0 i 255. Un tıpic fitxer de text esta escrit en codi ASCII(valors decimals de 0 a 127). Per tant, aquest conjunt de caracters utilitza nomes 7 dels 8bits en un byte.

Es possible doncs reduir la dimensio d’un fitxer ASCII per 7/8. Aquesta reduccio potobtenir-se a traves d’un codi a bloc que mapegi un bloc de 8 bytes en un bloc de 7 bytescopiant els 56 bits que porten informacio en 7 bytes.¤

Aquest es un exemple de redundancia. Es a dir, es possible transmetre lamateixa quantitat d’informacio amb una quantitat menor de bits. Moltes fontsd’informacio es caracteritzen per una gran redundancia. Per exemple, els fitxersde text en una llengua en concret, com l’angles, utilitzen els caracters ASCII ambdiferents frequencies; determinats parells de lletres son mes probables que d’altres;fins i tot una paraula pot predir-se donat el context i el significat semantic del text.

En els seguents apartats determinarem com pot reduir-se el numero de bitsnecessaris (en mitja) per caracteritzar els sımbols de l’alfabet i, mes concretament,els missatges que emet la font (ex: la longitud del fitxer).

Basicament podem distingir dos metodes de compressio de la informacio, enfuncio de la natura del codi que utilitza el codificador de font per dur a terme lacompressio:

1. Codis a longitud fixa

2. Codis a longitud variable

El codificador de font associara aleshores a cada sımbol o conjunt de sımbolsgenerats per la font d’informacio un unic conjunt de dıgits binaris determinat pel

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 18: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

14 Codificacio de Font

codi.El proces de convertir la sortida d’una font d’informacio (sigui analogica o

digital) en una sequencia de dıgits binaris rep el nom decodificacio de fonto com-pressio de dades.

La codificacio d’una font discreta caracteritzada per un alfabet finit pot sem-blar a primer cop d’ull un problema relativament simple. No obstant, aixo es certnomes quan la fontes sense memoria, es a dir, quan sımbols successius generatsper la font son estadısticament independents i cada sımbol es codifica separada-ment. La font discreta sense memoria es de lluny el model mes simple d’una fontd’informacio real. En realitat, pero, poques fonts reals s’ajusten a aquest modelmatematic ideal. En aquest apartat veurem quees sempre mes eficient codificarblocs de sımbols en comptes de codificar cada sımbol separadament. Fent la lon-gitud del bloc suficientment gran, el numero mig de dıgits binaris per sımbol desortida de la font pot fer-se arbitrariament proper a l’entropia de la font.

1.3 Codis a Longitud Fixa

Com a introduccio, considerem una font d’informacio caracteritzada per un alfabetfinit AX i considerem en primer lloc un esquema de codificacio a bloc molt simpleque assigna ununic conjunt d’R dıgits binaris (etiqueta) a cada sımbol de font. Jaque hi ha|AX | sımbols possibles, el numero de dıgits binaris per sımbol requeritper una codificacio biunıvocaes

R = log2 |AX |

en el cas que|AX | sigui una potencia de dos i

R = blog2 |AX |c+ 1

quan|AX | no es una potencia de dos, onbxc denota l’enter mes gran menor d’x.

Exemple1.10: Si considerem un alfabet de quatre sımbols,|AX | = 4, es requeriranR =log 4 = 2 bits per a representar tots els sımbols,{00,01,10,11}. El mateix nombre de bitses necessitaran per a representar unıvocament 3 sımbols.¤

El rate del codi, mesurat en bits/sımbol, es precisamentR i, ja queH(X) ≤log2 |AX |, se’n despren queR ≥ H(X). Pel fet queH(X) constitueix un lımitinferior sota del qual no podem codificar, l’eficiencia del proces de codificacio dela font discreta es defineix com la relacio

H(X)/R

Pot observar-se que quan|AX | es una potencia de 2 i els sımbols de fontson equiprobables,R = H(X) = log |AX |. Per tant, un codi a longitud fixad’R bits/sımbol assoleix el100% d’eficiencia. No obstant, quan|AX | no es unapotencia de 2,R difereix d’H(X) al maxim d’1 bit per sımbol. Quanlog2 |AX | À

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 19: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.3 Codis a Longitud Fixa 15

1, l’eficiencia d’aquest esquema de codificacio es gran, pero l’eficiencia de la codi-ficacio disminueix considerablement en el cas que l’alfabet de font sigui de dimen-sions reduıdes. No obstant, quan|AX | es petit, l’eficiencia del codi a longitud fixapot incrementar-se codificant un bloc deν sımbols a la vegada en comptes de cadasımbol separadament. Per tal d’acomplir aquesta codificacio, es requereix un totalde |AX |ν etiquetes (paraules de codi). D’altra banda, si utilitzem sequencies d’Ndıgits binaris, el nombre total de paraules de codi a disposicio son2N . Aixı doncscaldra escollirN tal que

N ≥ ν log2 |AX | (2N ≥ |AX |ν)En altres paraules, hem construıt un nou alfabetY ≡ Xν que conte Mν

sımbols i amb entropiaH(Y ) = νH(X) (sımbols independents). El rate del noucodi esR′ = N bits/sımbol yi ∈ AY . Actuant d’aquesta manera hem aconseguitincrementar l’eficiencia de la codificacio d’un factor1/ν en relacio a la codificaciosımbol-per-sımbol descrita anteriorment:H(Y )/R′ = νH(X)/N . De fet, ara elnombre mig de bits per sımbol del nou codiesR = N/J . Aleshores, fentν su-ficientment gran, la ineficiencia del proces de codificacio, mesurat per la relacioJH(X)/N pot fer-se tant propera a la unitat com es desitgi.

Exemple1.11: Sigui un alfabet de tres sımbols,{×, ◦ ,¤}. En cas de codificar sımbola sımbol, per a una decodificacio unıvoca es requereixenR = dlog 3e = 2 bits/sımbol il’efici encia de la codificacio es

eff =H(X)

R=

log 32

= 0.792

Per tal d’augmentar l’eficiencia de la codificacio podem codificar blocs deν sımbols encomptes de sımbols separadament,

ν = 2 −→ eff =H(Y )

N=

2H(X)dlog 3νe =

2 log 34

= 0.792

ν = 3 −→ eff =H(Y )

N=

3H(X)dlog 33e =

3 log 35

= 0.95

ν = 1000 −→ eff =H(Y )

N=

3H(X)dlog 31000e =

1000 log 31585

= 0.999

¤

El metode de codificacio de font que acabem de descriure no introdueix captipus de distorsio ja que la codificacio de sımbols de font o blocs de sımbols enparaules de codiesunica. Aquest tipus de codificacio s’anomenalliure de soroll(noiseless). Cal adonar-nos, pero, que aquests metodes de codificacio no intro-dueixen cap tipus de compressio de dades.

Aquest senzill exemple de codificacio ens proporciona una manera de mesurarel contingut d’informacio d’una variable aleatoria comptant simplement el numerode sımbols de l’alfabet de font,|AX |. Si ens imaginem associant a cada sımboluna etiqueta binaria, la longitud de cada etiqueta sera log2 |AX | si |AX | es unapotencia de 2. Aixo ens permet fer la seguent definicio.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 20: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

16 Codificacio de Font

Definicio 1.7 El contingut de bit brut d’X es

H0(X) = log2 |AX | (1.14)

H0(X) es un lımit inferior del nombre d’etiquetes binaries que gar identificar qual-sevol sımbol de font.H0(X) es una quantitat additiva: el contingut brut de bit dedues variables aleatoriesX i Y satisfa

H0(X,Y ) = H0(X) + H0(Y ) (1.15)

¦

Aquesta mesura de la informacio no inclou cap consideracio probabilıstica i,com hem ja vist, la regla de decodificacio a la qual correspon, no comprimeix lesdades de font; simplement mapa cada sımbol de sortida de la font a una etiquetabinaria de longitud fixa.

Suposem ara que volem reduir el rateR del codi relaxant la condicio que elproces de codificacio sigui unic. En el cas d’un codi a longitud fixa, l’unic mitjade que disposa el codificador per tal de comprimir la informacio es el de codi-ficar biunıvocament nomes una fraccio dels missatges generats per la font, mentresque mapeja la resta a la mateixa paraula de codi.Obviament, en aquest procesde codificacio, la compressio de la informacio te un cost en termes d’error de de-codificacio (que es traduira en una certa probabilitat d’error) cada vegada que und’aquests missatgeses mapat en aquestaunica paraula de codi2. Denotarem ambδ la probabilitat que el missatge de font sigui un d’aquests missatges “confusos”,de manera que el compressor te una probabilitatδ d’error. Siδ es fa molt petita,aleshores el compressoresutil.

Sigui quin sigui el compressor que construim, necessitem d’alguna maneraconsiderar les probabilitas de cadascun dels missatges. Una manera simple d’u-tilitzar el coneixement que tenim que alguns sımbols tenen associada una proba-bilitat menores la de codificar les observacions en un alfabet mes reduıt - i, pertant, perdent la capacitat de codificar alguns dels missatges mes improbables - idespres mesurar el contingut de bit brut del nou alfabet. Per exemple, podrıemprendre un determinat risc quan es comprimeix un text en catala, assumint que elscaracters mes infrequents no succeeixen mai, i construir un ASCII reduıt que ometels caracters{!,@,#,, ∗ , , < , > ,/, ,{,},[,],|}, de manera que reduim el tamany del’alfabet en 17 sımbols. Quant mes gran sigui el risc que assumim, mes petit serael nostre nou alfabet.

Introduim el parametreδ que descriu el risc que prenem quan utilitzem aquestmetode de compressio: δ es la probabilitat que no hi hagi una “etiqueta”per a undeterminat missatgex.

2determinades aplicacions, com per exemple la compressio d’imatge, una copressio amp perdueses satisfactoria

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 21: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.3 Codis a Longitud Fixa 17

Exemple1.12: Sigui

AX = {a,b,c,d,e,f,g,h}

PX ={

14,14,14,316

,164

,164

,164

,164

}

El contingut de bit brut d’aquest conjunteslog2 8 = 3 bits, correponent a les 8 etiquetesbinaries necessaries. Notem pero queP (x ∈ {a,b,c,d}) = 15/16. Per tant, si estemdisposats a correr un risc deδ = 1/16 de no disposar d’una etiqueta perx, podem utilitzarun alfabet de nomes 4 etiquetes, la meitat de les etiquetes necessaries si cadascun delsx ∈ AX te associada una etiqueta propia.

La Taula 1.3 mostra les etiquetes binaries que poden donar-se als diferents sımbolspels casosδ = 0 i δ = 1/16. Quanδ = 0 necessitem 3 bits per codificar cadascun delssımbols; quanδ = 1/16 necessitem nomes 2 bits.¤

Taula 1.1. Etiquetes binaries per dos probabilitats d’errorδ

δ = 0 δ = 1/16x c(x) x c(x)a 000 a 00b 001 b 01c 010 c 10d 011 d 11e 100 e -f 101 f -g 110 g -h 111 h -

Formalitzem ara aquesta idea. Per dur a terme una estrategia de compressioamb riscδ, construim el subconjunt mes petit possibleSδ tal que la probabilitat quex no estigui contingut enSδ sigui menor o igual queδ, es a dir,P (x ∈ Sδ) ≤ δ. Percada valor deδ podem doncs definir una nova mesura del contingut d’informacio(el logaritme del tamany d’aquest subconjuntSδ).

Definicio 1.8 El subconjunt mes petitδ-suficient,Sδ, es el subconjunt mes petitd’AX que satisfa

P (x ∈ Sδ) ≥ 1− δ (1.16)

¦El subconjuntSδ pot construir-se ordenant els elements d’AX en ordre de-

creixent de la seva probabilitat d’ocurrencia i afegint successivament elementscomencant per aquells mes probables fins que la probabilitat total sigui≥ (1− δ).En l’exemple anterior,Sδ = S1/16 = {a,b,c,d} i P (x ∈ S1/16) = 15

16 = 1− δ.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 22: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

18 Codificacio de Font

Aleshores podem construir un codi compressor de dades assignant una etique-ta binaria a cadascun dels elements del subconjuntδ-suficient mes petit. Aquestesquema de compressio motiva la seguent mesura del contingut d’informacio:

Definicio 1.9 El contingut de bit essenciald’X es:

Hδ(X) = log2 |Sδ| (1.17)

¦Noteu queH0(X) es un cas especial deHδ(X) ambδ = 0 (si P (x) > 0 per

tot x ∈ AX )3.Com succeıa amb l’anterior metode de codificacio, tambe en aquest cas l’-

eficiencia de la codificacio pot incrementar-se si comprimim blocs de sımbols encomptes de sımbols separadament.

Tornem ara als nostres exemples considerant el missatgex = (x1,x2, . . . ,xν),constituıt per una sequencia deν variables aleatories identicament distribuıdes d’unmateix conjuntX. Denotarem ambXν el conjunt(X1,X2, . . . ,Xν). Recordeu quel’entropiaes additiva en cas de variables independents,es a dir,H(Xν) = νH(X).

Exemple1.13: Considereu una sequencia deν llencaments d’una moneda biaixada,x =(x1,x2, . . . ,xν) on xi ∈ {0,1}, amb probabilitatsp0 = 0.9 i p1 = 0.1. Les sequenciesde llencaments mes probables son aquelles amb mes uns. Sir(x) es el numero d’1s enxaleshores

P (x) = pν−r(x)0 p

r(x)1

Per evaluarHδ(Xν) cal determinar el subconjuntδ-suficient,Sδ, mes petit. Aquest sub-conjunt contindra totes les sequenciesx ambr(x) = 1,0,2, . . . fins a algunrmax(δ) − 1, ialgunes de les sequenciesx ambr(x) = rmax(δ). La figura mostra la grafica deHδ(Xν)en funcio deδ pel casν = 4. Els graons corresponen als valors deδ pels quals|Sδ| canviad’una unitat.¤

En aquest senzill exemple hem pogut observar queHδ(Xν) depen fortamentdel valor deδ. Observem pero el que succeeix quanν, el nombre de variablesindependents enXν , creix. A la figura 1.3 s’observa la tendencia assimptotica de1ν Hδ(Xν) per la variable aleatoria de l’exemple anterior. Quanν creix, 1

N H −δ(Xν) esdeve cada vegada una funcio mes plana, excepte per valors propers aδ =0 i δ = 1. S’obte doncs el resultat remarcable queHδ(Xν) es quasi independentdeδ i per qualsevol valor deδ el seu valores molt proper aJH(X),

limν−→∞Hδ(Xν) = JH(X) (1.18)

on H(X) es l’entropia d’una de les variables aleatories. El significat d’aquest re-sultates que tot i permetent un probabilitat d’errorδ molt petita,es possible com-primir la informacio fins aJH(X) bits. D’altra banda, encara que permetessimuna probabilitat d’error gran, podem comprimir nomes fins aJH(X) bits. Aque-sta ideaes precisament la que fa palesa l’anomenatTeorema de la Codificacio deFont.

3Atencio: no confondreH0(X) i Hδ(X) amb la funcio entropia.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 23: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.3 Codis a Longitud Fixa 19

Figura 1.2. Hδ(X)N perN = 4 variables binaries ambp1 = 0.1.

Figura 1.3. 1N Hδ(X)N perN = 10,210, . . . ,1010 variables binaries ambp1 =

0.1.

Theorem 1 Teorema de Shannon de la Codificacio de Font SiguiX una vari-able aleatoria generada per una font discreta d’informacio amb entropiaH(X) =H bits. Per qualsevolε > 0 i 0 < δ < 1, existeix un enter positiuν0 tal que perν > ν0, ∣∣∣∣

Hδ(Xν)−H

∣∣∣∣ < ε (1.19)

Escrit en altres paraules:

Theorem 2 Teorema de Shannon de la Codificacio de Font SiguiX una vari-able aleatoria generada per una font discreta d’informacio amb entropiaH(X) =H bits. Per a qualsevolε > 0 la probabilitat δ d’error en la decodificacio d’unbloc d’informacio pot fer-se arbitrariament petita si

R ≡ N

ν≥ H(X) + ε (1.20)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 24: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

20 Codificacio de Font

i ν es suficientment gran. Contrariament, si

R ≤ H(X)− ε (1.21)

aleshoresδ esdeve arbitrariament propera a 1 siν es suficientment gran.

1.3.1 Teorema de la Codificacio de Font

Anem ara a precisar d’una manera mes formal, mes matematica, tot el que hemvist fins ara.

Considerem un conjuntX = (x,AX ,PX) onAX = {a1, . . . ,aM} i PX =(p1, . . . ,pM ). Considerem tambe que estem observant missatges de longitudngenerats per una font d’informacio discreta i sense memoria, essentn molt gran.Aleshores, d’acord amb la llei dels grans nombres (probabilitat), amb una proba-bilitat molt alta (tendint a 1 quann −→ ∞) el sımbola1 apareixera repetit aprox-imadamentnp1 vegades a la sequencia observada, el sımbol a2 aproximadamentnp2 vegades,. . ., i aM npM vegades. Aixo significa que pern suficientment gran,amb probabilitat propera a 1, cada sequencia generada per la font te la mateixacomposicio i, per tant, la mateixa probabilitat. Escrit d’una altra manera, as-simptoticament “quasi totes quasi equiprobable”. Les sequencies que tenen aque-sta estructura s’anomenensequencies tıpiques. La probabilitat d’una sequenciestıpicaes

p(X = x) ≈M∏

i=1

pnpii

=M∏

i=1

2npi log pi

= 2nPM

i=1 pi log pi

= 2−nH(X)

Aixo significa que pern grans quasi totes les sequencies generades de longitudn son igualment probables amb probabilitat≈ 2−nH(X). Aquestes sequenciess’anomenen sequencies tıpiques. D’altra banda, la probabilitat del conjunt desequencies no tıpiqueses despreciable.

Pel fet que la probabilitat de les sequencies tıpiqueses quasi 1 i cada sequenciatıpica te probabilitat quasi2−nH(X), el numero total de sequencies tıpiquesesgairebe 2nH(X). En conclusio, encara que un alfabet de font constituıt per Msımbols, pot generarMn sequencies diferents de longitudn, el nombreefectiudesequencies que generara es2nH(X). Pernombre efectiuentenem que no perdemgairebe res negligint les altres sequencies, i la probabilitat de no perdre gairebe restendeix a0 quann tendeix a infinit. Aquest resultates molt important, i ens explicaque per objectius practicses suficient considerar el conjunt de sequencies tıpiquesen comptes del conjunt de totes les possibles sequencies que genera la font. L’error

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 25: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 21

introduıt ignorant les sequencies no tıpiques pot fer-se menor que qualsevolε > 0donat escollintn suficientment gran. Aquestaes l’essencia de lacompressio dedades, la practica de representar la sortida d’una font d’informacio amb un nom-bre de sequencies mes petit en comparacio amb el nombre de sortides que la fontprodueix realment.

Pel fet que el numero total de sequencies tıpiqueses aproximadament2nH(X),necessitemnH(X) bits per representar-les. No obstant, aquests bits s’utilitzen perrepresentar missatges de longitudn. Per tant, en mitja, cada sımbol a la sortida de lafont requereix1

nnH(X) = H(X) bits per una representacio sense errors. Aquestresultat justifica altra vegada la nocio d’entropia com el contingut d’informaciod’una font.

Redefinim el teorema de Shannon:

Theorem 3 n variables aleatories estadısticament identiques i independents ambentropiaH(X) poden comprimir-se en mes denH(X) bits amb un risk negligiblede perdua d’informacio, per n −→ ∞; contrariament, si es comprimeixen enmenys denH(X) bits es virtualment cert que hi haura perdua d’informacio.

Aquest teorema, demostrat per primera vegada per Claude Shannon (1948),nomes proporciona una condicio necessaria i suficient de l’existencia de codis defont. No proporciona en canvi cap algoritme pel disseny de codis capacos d’assolirles prestacions predites d’aquest teorema. En el proper apartat presentarem unalgoritme per a la construccio de codisutils per la compressio de dades.

Nota La informacio generada per una font d’informacio pot comprimir-se nomessi la funcio distribucio de probabilitat que caracteritza el conjunt de sımbols dela font no es uniforme. En cas deP (X) uniforme,H(X) = log M i, per tant2nH(X) = 2n log M = Mn. Aixo significa que el numero efectiu de sequencies delongitudn generades per la fontes igual al numero total de possibles sequencies:no es possible cap tipus de compressio. O

1.4 Codis a Longitud Variable

En els apartats precedents hem vist una demostracio intuıtiva que l’entropiaes unamesura del contingut d’informacio mig d’una font. Hem definit un esquema decompressio de dades utilitzantcodis a longitud fixa, i hem demostrat que quann creix, es possible codificarn variables identicament distribuıdes i independentsx = (x1, . . . ,xn) en un bloc den(H(X)+ ε) bits amb probabilitat d’error decreix-ent, mentres que si intentem codificarXn en n(H(X) − ε) bits, la probabilitatd’error es virtualment 1. En altres paraules, hem observat que l’entropia d’una fontH(X) proporciona un lımit precıs delrate al qual pot comprimir-se una font as-segurant una reconstruccio de la informacio fidedigne. Aixo significa que per ratesper sobre de l’entropiaes possible dissenyar codis amb una probabilitat d’error

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 26: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

22 Codificacio de Font

tant petita com es desitgi, mentres que per rates per sota de l’entropia tal codi noexisteix.

Hem doncs verificat lapossibilitat de comprimir dades, pero aquest resul-tat important no ens ha proporcionat cap algoritme especıfic per assolir el lımitque hem establert. En aquesta seccio estudiarem un algoritme de compressio dedades practic que assoleixen compressions molt properes al lımit de l’entropia queacabem de definir.

Mentres que l’esquema de compressio de dades vist en el darrer apartat utilitza-va blocs de dades grans i eraamb perdues, en aquesta seccio parlarem d’esquemesde compressio a tamany variable, els quals codifiquen un sımbol de font a la veg-ada, en comptes de codificar grans blocs de sımbols de font.

Quan els sımbols de font no son equiprobables, un metode de codificacio meseficient consisteix en utilitzar paraules de codi de longitud variable, en comptesd’utilitzar els codis a longitud fixa que hem vist fins ara.

Exemple1.14: Un exemple d’aquest tipus de codificacio es el codi Morse, el qual data delsegle 20. En el codi de Morse, les lletres que ocorren amb mes frequencia s’assignen aparaules de codi mes curtes i aquelles que ocorren infrequentment s’assignen a paraulesde codi llargues. En la llengua anglesa, la lletra ‘E’es la que ocorre amb mes frequencia,mentres que la lletra ‘Q’es la mes infrequent. Per aquest motiu, el codi Morse codifica lalletra ‘E’ amb un punt, ‘.’, la paraula de codi mes curta, i la lletra ‘Q’ en ‘–.-’, la paraulade codi mes llarga.¤

Seguint aquesta filosofia general, podem utilitzar les probabilitats d’ocurrenciadels diferents sımbols de font en la seleccio de les paraules de codi. El problemaamb el qual ens topemes aquell de determinar un metode per escollir i assignarles paraules de codi als sımbols de font. Aquest tipus de codificacio s’anomenaentropy coding.

La utilitzacio de codis a longitud variable ens duu a un tipus de codificacio quetambe es coneix amb el nom desense perdues. A diferencia del metode de com-pressio que acabem de veure, l’utilitzacio de codis a longitud variable permet decomprimir i descomprimir dades sense errors; en contraposicio hi ha la possibilitatque els codis produeixin a vegades paraules de codi de longitud superior a la delmissatge de font original. Un compressor sense perdues mapeja cadascun dels mis-satges en missatges diferents; per tant, si redueix la dimensio d’alguns missatges,necessariament en fa d’altres mes llargs. L’objectiues dissenyar el compressor demanera que la probabilitat que un missatge sigui allargat sigui molt petita, i que laprobabilitat que sigui escurcat sigui gran.

Imagineu-vos un globus ple d’aigua. Si amb dos dits comprimim una part delglobus, alguna altra part del globus s’expandra, ja que el volum total d’aiguaesconstant [L’aiguaes essencialment no comprimible]. Similarment, quan nosaltresescurcem les paraules de codi (codewords) per algun dels missatges que genera lafont, hi haura necessariament d’altres paraules de codi mes llargues, si l’esquemade compressio es sense perdues.

Aix ı doncs la ideaes la d’assolir compressio, en mitja, assignant paraules de

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 27: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 23

codi mes curtes a aquells sımbols de font mes probables i paraules de codi llarguesa aquells mes improbables.

Els punts clau que analitzarem son:

• Quines son les implicacions que un codi a sımbol siguisense perdues? Sis’escurcen algunes paraules de codi, quant han de ser allargades altres pa-raules de codi?

• Fer la compressio practica. Com podem assegurar que el codi a sımbol siguisenzill de decodificar?

• Codis a sımbol optims. Com podem associar les longituds de les paraules decodi per tal d’assolir la millor compressio, i quinaes la millor compressioassolible?

Verificarem novament el teorema de font per a codis a sımbol.

Theorem 4 Teorema de Shannon de la Codificacio de Font (Codis a Sımbol) Ex-isteix una codificacio C a longitud variable del conjuntX tal que la longitud mitjad’un sımbol codificat,L(C,X) satisfa L(C,X) ∈ [H(X),H(X) + 1].

La longitud mitjaes igual a l’entropiaH(X) nomes si la longitud de la paraulade codi per cada sımbol de fontes igual al seu contingut d’informacio.

1.4.1 Codis a sımbol

Un codi (binari) a sımbolC per un conjuntX es una funcio des d’AX = {a1, . . . ,aM}a {0,1}+. c(x) denota la paraula de codi correponent ax i l(x) la seva longitud,ambli = l(ai). El codi extesC+ es un mapat des d’A+

X a{0,1}+ obtingut conca-tenant les corresponents paraules de codi:

c+(x1x2 . . . xN ) = c(x1)c(x2) . . . c(xN )

Hi ha certs requeriments basics per un codi a sımbolutil a la practica. En primerlloc, cada sequencia codificada ha de tenir unaunica decodificacio (la codificacioes biunıvoca). Segon, el codi ha de ser senzill de decodificar. I tercer, el codi hauriad’assolir la major compressio possible.

Tota sequencia de codi ha de tenir una decodificacio unicaSembla natural requerir que el codi sigui unıvocament decodificable, la qual

cosa significa que tota sequencia finita de dıgits binaris correspon a ununic mis-satge.

Definicio 1.10 Un codi C(X) es unıvocament decodificable si, considerant elcodi extesC+, dues sequencies de codi diferents no tenen la mateixa codificacio,es a dir,

∀x,y ∈ A+X ,x 6= y =⇒ c+(x) 6= c+(y) (1.22)

¦

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 28: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

24 Codificacio de Font

Símbols Paraules de Codix1 0x2 10x3 110x4 111

0

1

0

1

0

1

nodes1er ordre

nodes2on ordre

nodes3er ordre

x 2

x 1

x 3

x 4

Figura 1.4. Arbre binari associat a un codi de font binari.

Exemple1.15: Suposem un la codificacio seguent sobre un conjunt de 3 sımbols{a,b,c},{c(a) = 0,c(b) = 01,c(c) = 10}. En cas de rebre la sequencia0010, el decodificadorpodra decidir entre les sequenciesaba i aac. Per tant, la decodificacio noes unıvoca.¤

El codi ha de ser senzill de decodificarUn codi a sımbol es mes senzill de decodificar sies possible d’identificar el

final d’una paraula de codi tant aviat quan arriva, la qual cosa significa que capparaula de codi pot ser unprefixd’una altra paraula de codi.

Definicio 1.11 Un codi a sımbol es diu codi a prefix si cap paraula de codiesprefix de qualsevol altre paraula de codi.¦

La propietat del prefix fa les paraules de codi instantaniament decodificables.Per tant, un codi a prefix reb tambe el nom de codiinstantani: una sequenciade codi pot decodificar-se d’esquerra a dreta sense observar les paraules de codiseguents. El final d’una paraula de codies reconeixible immediatament. A mes lacondicio del prefix implica tambe que el codi sigui unıvocament decodificable.

Una representacio grafica moltutil d’un codi que satisfa la condicio de prefixlliure es aquella que associa a cada paraula de codi un node terminal en un arbrebinari, com aquell mostrat a la figura 1.4.

Comencant de l’arrel de l’arbre, les dues branques que duen als nodes de primerordre corresponen a l’eleccio entre 0 i 1 com a primer dıgit de les paraules de codi.Les dues branques que parteixen dels nodes de primer ordre corresponen al segondıgit de les paraules de codi, i aixı successivament. Pel fet que les paraules de codis’associen exclusivament a nodes terminals, cap paraula de codi pot ser el prefixd’una altra. Es diu que l’arbrees d’ordren si conte nodes fins a l’ordren.

Exemple1.16: El codiC1 = {0,101} es un codi a prefix lliure perque ni 0es un prefix de

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 29: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 25

0

11

0

1

0

1

0

1

0

0

101

110

111

0

10

1

0

1

0

1

0

1

10

11

00

01

C1

C3

C4

Figura 1.5. Els codis a prefix poden representar-se mitjancant arbres binaris.Codis a prefix complets corresponen a arbres binaris amb totes les branques util-

itzades.

101 ni 101es un prefix de 0.¤

Exemple1.17: SiguiC2 = {1,101}. Aquest codi noes a prefix lliure perque 1es un prefixde 101.¤

Exemple1.18: El codiC3 = {0,10,110,111} es un codi a prefix lliure.¤

Exemple1.19: El codiC4 = {00,01,10,11} es un codi a prefix lliure.¤

Exercici 1.1: Es el codiC2 unıvocament decodificable?

El codi hauria d’assolir la major compressio possibleCom de costum, estem interessats en quantitats mitges, de manera que el nostre

objectiu sera aquell de minimitzar la longitud mitja d’una paraula de codi:

Definicio 1.12 La longitud mitjaL = L(C,X) = E{l} d’un codi a sımbolC perun conjuntX es

L =∑

x∈AX

P (x)l(x) (1.23)

Podem tambe escriure aquesta quantitat com

L =M∑

i=1

pili (1.24)

onli es la longitud (numero de dıgits) de la paraula de codi que representa el sımbolai i M = |AX |. ¦

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 30: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

26 Codificacio de Font

Exemple1.20: Sigui

AX = {a,b,c,d},i PX = {1/2,1/4,1/8,1/8}

i considereu el codiC3:

Taula 1.2. C3

ai c(ai) pi log21pi

lia 0 0.5 1.0 1b 10 0.25 2.0 2c 110 0.125 3.0 3d 111 0.125 3.0 3

L’entropia d’X es1.75 bits, i la longitud esperadaL(C3,X) del codies tambe 1.75bits. La sequencia de sımbolsx = (acdbac) es codifica comc+(x) = 0110111100110. C3

es un codi a prefix i, per tant, unıvocament decodificable. Noteu que les longituds de lesparaules de codi satisfanli = log2(1/pi) o, equivalentment,pi = 2−li . ¤

Exemple1.21: Considereu el codiC6

Taula 1.3. CodiC6

ai c(ai) pi log21pi

lia 0 0.5 1.0 1b 01 0.25 2.0 2c 011 0.125 3.0 3d 111 0.125 3.0 3

La longitud esperadaL(C6,X) d’aquest codies 1.75 bits. La sequencia de sımbolsx = (acdbac) es codifica comc+(x) = 0011111010011.

EsC6 un codi a prefix? No, ja quec(a) = 0 es un prefix dec(b) i c(c).EsC6 unıvocament decodificable? Aquesta questio no esobvia. Si pensem que po-

dria no ser unıvocament decodificable, hem d’intentar demostrar-ho buscant una parellade sequenciesx i y que tinguin la mateixa codificacio. [La definicio d’univocitat en ladecodificacio s’ha donat a l’equacio (1.22).]

C6 no es certament senzill de decodificar. Quan es reb ‘00’es possible quex comenciper ‘aa’, ‘ab’ o ‘ac’. Una vegada rebut ‘001111’, el segon sımbol es encara ambigu, ja quex pot ser ‘abd. . .’ o ‘acd. . .’. No obstant, finalment una decodificacio unıvoca cristal.litza,un cop el seguent 0 apareix en la sequencia codificada.

C6 es de fet unıvocament decodificable. ComparantC6 amb el codi a prefixC3, ob-servem que les paraules de codi deC6 son l’invers d’aquelles deC3. Aixı doncs, queC3

sigui unıvocament decodificable prova queC6 tambe hoes, ja que cada sequencia generadaperC6 es identica a una sequencia generada perC3 i llegida a l’inreves.¤

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 31: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 27

1.4.2 Quines el Lımit Imposat de la Decodificacio Unıvoca?

El nostre principal objectiues aquell de determinar un procediment sistematic per aconstruir codis a longitud variable unıvocament decodificables que siguin eficientsen el sentit que el nombre de bits per sımbol de font, definit com la quantitat enl’equacio (1.23) sigui minimitzada. Hem tambe determinat que una condicio su-ficient per tal que el codi sigui unıvocament decodificablees que el codi sigui uncodi a prefix. Una condicio necessaria i suficient per tal que un codi satisfagi lacondicio del prefix ve donada pel seguent teorema:

Theorem 5 Desigualtat de Kraft Una condicio necessaria i suficient per l’ex-istencia d’un codi binari a prefix amb paraules de codi de longitudsl1,l2, . . . ,lLes

M∑

i=1

2−li ≤ 1 (1.25)

La base2 es refereix a la base amb la qual treballem (el nombre de sımbols del’alfabet, en aquest cas 2 sımbols).

Demostracio Per demostrar el teorema demostrarem primer que (1.25)es unacondicio necessaria (prefix⇒kraft). Pel fet que el codi satisfa la condicio del prefix,pot descriure’s per mitja d’un arbre d’ordre

l = max(l1,l2, . . . ,lM )

La presencia a l’arbre d’un node terminal d’ordreli elimina2l−li dels nodes pos-sibles d’ordrel. D’aquesta manera, per tal que el codi pugui ser descrit amb unarbre, la suma de tots els nodes d’ordrel eliminats per nodes terminals associatsamb paraules de codi ha de ser menor o igual que el nombre de nodes d’ordrel del’arbre, es a dir,

M∑

i=1

2l−li ≤ 2l (1.26)

Dividint ambdos membres de la inequacio per2l s’obte (1.25).Per tal de dempostrar que (1.25)es una condicio suficient (kraft⇒prefix) per

l’existencia d’un codi a prefix, suposem que lesli estan ordenades en l’ordre nodecreixentl1 ≤ l2 ≤ . . . ≤ lM . Per a construir tal codi, comencem amb unarbre binari complet d’ordrel = lM que te 2l nodes terminals i dos nodes d’ordrei stemming from de cada node d’ordrei − 1 per cadai, 1 ≤ i ≤ n. Escollimqualsevol node d’ordrel1 com a primera paraula de codic1. Aquesta seleccioelimina2l−l1 nodes terminals (o la fraccio 1/2l1 dels2l nodes terminals). La restade nodes resten encara disponibles per l’us com a nodes terminals en l’arbre delcodi. Del conjunt de nodes d’ordrel2 encara disponibles, en seleccionem un com elseguent node terminal (segona paraula de codi,c2). Aquesta eleccio elimina2l−l2

nodes terminals (o la fraccio 1/2l−2 dels2l nodes terminals); en altres paraules,

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 32: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

28 Codificacio de Font

Símbol Paraula de Codix1 0x2 10x3 110x4 1110x5 1111

0

1

0

10

10

1

C1

C2

C3

C4

C5

Figura 1.6. Construccio d’un codi binari a arbre a utilitzant un arbre complet.

tots els nodes de l’arbre de qualsevol ordre mes gran o igual quel2 resten encaradisponibles excepte la fraccio 2l−1 + 2l−2 resultant dels dos nodes que ja hemescollit. Aquest proces continua fins que la darrera paraula de codies assignadaal node terminall = lM . Despres de l’assignacio del node terminalj-esim del’arbre del codi, la fraccio de nodes terminals eliminada per les eleccions previeses

∑ji=1 2−li . De (1.25), aquesta fraccio es sempre estrictament menor que1 per

j < M i, per tant, hi ha sempre un node d’ordrek > j disponible per ser assignata la seguent paraula de codi. D’aquesta manera hem construıt un codi binari que atraves de l’arbre complet de2l nodes, com il.lustrat en la Figura 1.6, per un arbreamb 16 nodes terminals i una sortida de font consistent en cinc sımbols ambl1 = 1,l2 = 2, l3 = 3 i l4 = l5 = 4. ¦

Ara estem a disposicio de reintroduir les probabilitats dels sımbols{pi}. Do-nat un conjunt de probabilitats de sımbols, com podem construir el millor codi asımbol - un amb la menor longitud mitja possibleL? I quinaes la menor longitudmitja possible? Noes obvi com assignar les longituds de les paraules de codi. Siassignem paraules de codi curtes als sımbols mes probables aleshores la longitudmitja certament podria reduir-se; d’altra banda pero, escurcant algunes paraules decodi necessariament provoca l’allargament d’altres, per la desigualtat de Kraft.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 33: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 29

1.4.3 Quinaes la compressio maxima que podem esperar?

El nostre objectiues el de minimitzar la longitud mitja del codi,

L = L(C,X) =M∑

i=1

pili (1.27)

Com ja podrıem haver suposat, l’entropiaes el lımit inferior de la longitud mitjadel codi. No demostrarem matematicament aquest fet, pero en proporcionaremuna demostracio intuıtiva: pel fet que estem utilitzant un codi binari, el contingutd’informacio maxim de cada dıgit de la paraula de codies 1 bit (el contingut podriaser menor si, per exemple, doblem el numero de dıgits). Per tant, el contingutd’informacio mig de cada paraula de codies, com a maxim igual a l. D’altrabanda, per tal d’especificar unıvocament un sımbol de l’alfabet de font, es requereixuna quantitat d’informacio mitja igual aH(X) bits. Per tant, podem concloureintuitivament queL ≥ H(X).

L ımit inferior de la longitud mitja. La longitud mitjaL d’un codi unıvocamentdecodificable esta limitada inferiorment perH(X),

L ≥ H(X) (1.28)

Demostracio Per demostrarH(X) ≤ L considerem la diferenciaH(X)− L:

H(X)− L =M∑

i=1

pi log1pi−

M∑

i=1

pili

=M∑

i=1

pi

[log

1pi− log 2li

]=

M∑

i=1

pi

[log

1pi

+ log 2−li

]

=M∑

i=1

pi log2−li

pi

Considerem ara la propietat de la funcio logarıtmica,log2(x) = ln xln 2 i la desigualtat

ln x ≤ x− 1,

=1

ln 2

M∑

i=1

pi ln2−li

pi≤ 1

ln 2

M∑

i=1

pi

[2−li

pi− 1

]

=1

ln 2

[M∑

i=1

2−li −M∑

i=1

pi

]=

1ln 2

[M∑

i=1

2−li − 1

]≤ 0

on en la darrera desigualtat hem aplicat Kraft (∑M

i=1 2−li − 1 ≤ 0). Per tant,

H(X)− L ≤ 0 −→ L ≥ H(X)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 34: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

30 Codificacio de Font

¦Comparant les definicions (1.5) i (1.24) d’H(X) i L, pot observar-se que la

condicio L ≥ H(X) es satisfa amb el signe igual si i nomes si les longituds de lesparaules de codi satisfan:li = log(1/pi) i = 1,2, . . . ,M . En aquest cas (1.25)tambes esdeve una igualtat.

Aquestes un resultat important i que cal esmentar novament:Longituds de codi de fontoptimes. La longitud mitjaes mınima i igual a

H(X) nomes si les longituds de codi son iguals als continguts d’informacio deShannon:

ni = log(1/pi) i = 1,2, . . . ,M (1.29)

Exemple1.22: El seguent exemple mostra un codi que satisfa (1.28) amb signe igual iobeeix la condicio del prefix

Sımbol pi Paraula de codix1

12 1

x214 00

x318 010

x4116 0110

x5116 0111

Calculant el valor d’L definit en (1.24), s’obte

L = H(X) =158

¤

1.4.4 Quant podem comprimir?

Acabem de veure que no podem comprimir la informacio per sota de l’entropia.Pero, quant aprop de l’entropia podem esperar de comprimir? Desafortunadament,en general, la condicio (1.29) ambli enters no es satisfa. Per tant, no podem esperard’assolir el lımit inferior perL com en l’exemple anterior. No obstant,es possibletrobar un codi que satisfa la condicio del prefix ambL tal que satisfa el seguentteorema.

Theorem 6 Teorema de la codificacio de font per a codis a sımbol Sigui Xuna variable aleatoria generada per una font discreta sense memoria (DMS) ambentropia finitaH(X), existeix un codi a prefixC amb longitud mitja tal que

H(X) ≤ L ≤ H(X) + 1 (1.30)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 35: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 31

Hem ja establert que codis a longitud variable que satisfan la condicio del prefixson codis de font eficients per a qualsevol DMS amb sımbols de font que no sonequiprobables. El darrer pas en la nostra descripcio de la codificacio de fontes el dela construccio d’un codi unıvocament decodificable que minimitzi la longitud mitjade la paraula de codi. A continuacio descriurem un algoritme per a la construcciode tals codis. La demostracio d’optimalitat s’ometra, ja que va mes enlla delsobjectius d’aquest curs.

1.4.5 Codificacio de font optima amb codis a sımbol: Codificacio deHuffman

Donat un conjunt de probabilitatsP, com podem dissenyar un codi a prefixoptim?

En la codificacio de Huffman, blocs de dades de longitud fixa a la sortida de lafont d’informacio es mapegen en blocs binaris de longitud variable. La idea fona-mentales la de mapar les sequencies a longitud fixa que ocorren mes frequentmenten sequencies binaries mes curtes i les menys frequents en sequencies binaries mesllargues. El seguent exemple ens aclarira el funcionament de l’algoritme:

Exemple 1.23: Suposem que les sortides possibles d’una font d’informacio son{a1,a2,a3,a4,a5} i considerem els seguents quatre codis per a aquesta font:

Sımbol pi Codi 1 Codi 2 Codi 3 Codi 4a1

12 1 1 0 00

a214 01 10 10 01

a318 000 100 110 10

a4116 0001 1000 1110 11

a5116 00001 10000 1111 110

En el primer codi cada paraula de codi acaba amb un 1. D’aquesta manera, tan aviatcom el decodificador observa un 1, reconeix que la paraula de codi ha acabat i que unanova paraula de codi comenca. Aixo significa que el codiesautosincronitzable. En elsegon codi cada paraula de codi comenca amb un 1. Per tant, una vegada observat un 1, eldecodificador reconeix que ha comencat una nova paraula de codi i, en consequencia, queel bit previ era el darrer bit de la paraula de codi previa. Aquest codies novament autosin-cronitzable pero noes tan desitjable com el primer perque en aquest cas hem d’esperar larecepcio del primer bit de la paraula de codi seguent per tal de reconeixer quina paraula decodi hem transmes, mentres que en el cas del codi 1 som capacos de reconeixer el darrerbit sense haver rebut el primer bit de la seguent paraula de codi. Ambdos codis 1 i 2 sonper tantunıvocament decodificablespero unicament el primeres instantani. Els codis 1i 3 tenen la bonica propietat que cap paraula de codies el prefix d’una altra: son codis aprefix. Aixo significa que aquests codis son unıvocament decodificables i instantanis. Noobstant, el codi 3 te l’avantatge de tenir una longitud de paraula de codi mitja menor. Enefecte, la longitud mitja del codi 1es

L = E[L] = 1 · 12

+ 2 · 14

+ 3 · 18

+ 4 · 116

+ 5 · 116

=3116

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 36: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

32 Codificacio de Font

i pel codi 3

L = E[L] = 1 · 12

+ 2 · 14

+ 3 · 18

+ 4 · 116

+ 4 · 116

=3016

Finalment el codi 4es el que presenta el major desavantatge ja que noes unıvocamentdecodificable. Per exemple, la sequencia110110 pot decodificar-se de dues maneres, coma5a5 o a4a2a3. Ja hem vist que els codis que no son unıvocament decodificables no sondesitjables i cal que siguin evitats a la practica. D’aquests resultats se’n despren que el“millor”dels quatre codis proposatses el codi 3, el quales unıvocament decodificable,instantani, i te la longitud mitja de paraula de codi menor. Aquest codies un exemple d’uncodi deHuffmanque tractarem breument a continuacio. ¤

Com ja esmentat amb anterioritat, la idea en la codificacio de Huffmanes lad’escollir longituds de les paraules de codi de tal manera que les sequencies mesprobables corresponguin a paraules de codi mes curtes. Si podem mapar cada sorti-da de la font amb probabilitatpi a una paraula de codi de longitud aproximadamentlog 1

pii assegurar a la vegada univocitat en la decodificacio, aleshores podrem as-

solir una longitud mitja que s’aproximara aH(X). L’algoritme de Huffmanesoptim en el sentit que el numero mig de dıgits binaris requerits per a represen-tar els sımbols de fontes mınim, subjecte a la condicio que les paraules de codisiguin a prefix, la qual cosa permet que la sequencia rebuda sigui unıvocament iinstantaniament decodificable. En altres paraules, peroptim entenem que d’entretots els codis que satisfan la condicio del prefix (i per tant son unıvocament de-codificables i instantanis), els codis de Huffman tenen la longitud mitja menor. Acontinuacio presentem l’algoritme per al disseny del codi de Huffman. De l’al-goritme en resulta obvi que el codi satisfa la condicio del prefix. La demostraciod’optimalitat s’ometra.

L’algoritme de codificacio de font de Huffman

1. Ordeneu elsM sımbols de l’alfabet de font en ordre decreixent de les sevesprobabilitats.

2. Agrupeu els dos sımbols menys probablesxM−1 i xM en ununic “sımbol”equivalent, la probabilitat del quales la suma de les corresponents probabil-itats,pM−1 + pM .

3. Repetiu els punts 1 i 2 fins que nomes resti un “sımbol”.

4. Observant l’arbre resultant del codi i partint de l’arrel de l’arbre (veure Fig.1.7, associeu els sımbols binaris 0 i 1 a cada parell de branques que sorgeixendels nodes intermitjos. La paraula de codi de cada sımbol pot llegir-se comla sequencia binaria resultant des de l’arrel de l’arbre i que finalitza en elnode terminal associat amb el sımbol. Observeu que en aquest cas l’arrel del’arbre esta situada a la dreta de la figura, pel fet que l’algoritme de Huffmanparteix dels nodes terminals (a l’esquerra en la Figura 1.7).

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 37: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.4 Codis a Longitud Variable 33

0

a 1

a 2

a 3

a 4

a 5

a 6

a i

1

0

1

0

0

1

1

0.5

0.15

0.15

0.10

0.05

0.05

p i

0.1

0.2

0.3

0.5

1.0

Figura 1.7. Arbre generat pel procediment de codificacio de Huffman per a unafont amb sis sımbols.

Taula 1.4.

Sımbol Paraula de Codia1 0a2 100a3 101a4 110a5 1110a6 1111

Per l’exemple de la Fig. 1.7, les paraules de codi obtingudes utilitzant el proced-iment de Huffman es mostren a la Taula 1.4.5. La longitud mitjaL i l’entropiaH(X) son 2.1 dıgits/sımbol i 2.086 bits/sımbol respectivament; ambdues quanti-tats satisfan el teorema 5 i cap altre codi pot fer-ho millor.

Exemple1.24: Pel codi mostrat en la Figura 1.7 utilitzeu l’arbre per a decodificar lasequencia rebuda 1100101100110. Comencant de l’arrel de l’arbre, seguim les branquesals nodes intermitjos d’acord amb els dıgits binaris de la sequencia rebuda, fins que s’arribaa un node terminal (i, per tant, a un sımbol decodificat). Aleshores recomencem de nou elprocediment. La sequencia decodificadaesa4a1a3a2a4. ¤

Es convida el lector a repetir el procediment de decodificacio de l’exemplesuposant que el canal ha introduıt un error en la primera posicio. Aixo permetraverificar l’efecte catastrofic de la propagacio de l’error en els codis a longitud vari-able. De fet, l’objectiu de la codificacio de fontes la reduccio de la redundancia del’alfabet de font, i no la proteccio enfront els errors del canal. Aquestaes funcio de

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 38: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

34 Codificacio de Font

la codificacio de canal, que tractarem en la segona part del curs.Hem vist com una paraula de codi pot assignar-se eficientment a un sımbol xi

de l’alfabet de fontAX . El principal resultat l’hem resumit en el Teorema 3.3. Noobstant, en realitat el lımit inferior del Teorema pot aproximar-se tant com es de-sitgi nomes si codifiquemblocs de sımbolsen comptes de sımbols individualment.Suposem que prenem en consideracio una sequencia d’observacions independentsd’X i assignem una paraula de codi al grup de sımbols resultant. En altres paraules,construim un codi per un nou alfabetY ∼ Xν que conteMν sımbols, denotats ambyi. La probabilitat d’ocurrencia d’yi ve aleshores donada pel producte de probabili-tats corresponents alsν sımbols d’X que especifiquenyi. D’acord amb el Teorema3.3 podem construir un codi perY la longitud mitja de les paraules de codi del qualLν satisfan

H(Y ) ≤ Lν ≤ H(Y ) + 1 (1.31)

Cada sımbol d’Y esta constituıt per ν sımbols independents de l’alfabet originalAX ; per tant, l’entropia d’Y es H(Y ) = νH(X) (veure problema 3.2). Aixıdoncs, de (1.31) tenim

H(X) ≤ Lν

ν≤ H(X) +

(1.32)

Observeu pero que Lν/ν es el numero mig de dıgits/sımbol d’X; per tant, de(1.32) se’n despren queL pot fer-se tant propera aH(X) com es desitgi escollintν suficientment gran.

L’ eficienciaε d’un codi es defineix com

ε , νH(X)Lν

(1.33)

i la sevaredundanciaes(1− ε).

Exemple1.25: La sortida d’una font DMS consisteix en els sımbols x1, x2 i x3 ambprobabilitats0.45, 0.35 i 0.20, respectivament. L’entropia d’aquesta fontes H(X) =1.518 bits/sımbol. El codi de Huffman per aquesta font , mostrat a la Taula 1.5, requereixL1 = 1,.55 bits/sımbol i resulta en una eficiencia del97.9%. Si, en canvi, codifiquemparelles de sımbols aplicant l’algoritme de Huffman, el codi resultant es mostra en la taula1.6. En aquest cas l’entropia de la sortida de la font per parelles de sımbolses2H(X) =3.036 bits/parella de sımbols. D’altra banda, el codi de Huffman requereixL2 = 3.0675bits/parella de sımbol. Per tant, l’eficiencia de la codificacio creix fins a2H(X)/L2 =0.990 o, equivalentment l’eficienciaes del99.0%.

¤

Per concloure la primera part del curs, hem demostrat que una codificacio efi-cient per una DMS pot dur-se a terme sımbol-a-sımbol utilitzant un codi a longitudvariable obtingut amb l’algoritme de Huffman. A mes, l’eficiencia del procedi-ment de codificacio pot incrementar-se si codifiquem blocs deν sımbols a la veg-ada, en comptes de cada sımbol separadament. D’aquesta manera, la sortida d’unaDMS amb entropiaH(X) pot codificar-se amb un codi a longitud variable amb unnumero mig de bits per sımbol de font que aproximaH(X) tant com es desitja.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 39: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.5 Exercicis 35

Taula 1.5. Codi de Huffman de l’exemple 25

Sımbol Probabilitat Auto-informacio Paraula de Codix1 0.45 1.156 1x2 0.35 1.520 00x3 0.20 2.330 01

H(X) = 1.518 bits/sımbolL1 = 1,.55 bits/sımbol

Eficiencia=97.9%

1.5 Exercicis

Exercici 1.2: Entropia de funcions aritmetiques de variables aleatories. SiguinXi Y variables aleatories estadısticament independents i uniformement distribuıdesen{0,1,2,3}

1. TrobeuH(X + Y ), H(X − Y ), H(X · Y ).

2. TrobeuH(X + Y,X − Y ), H(X + Y,X · Y ).

Exercici 1.3: Entropia d’una font. La sortida d’una font d’informacio discretaconsisteix enn sımbols possiblesx1,x2, . . . ,xn amb probabilitatsp1,p2, . . . ,pn

respectivament. Demostreu que l’entropiaH(X) de la font satisfaH(X) ≤ log n.

Exercici 1.4: Entropia condicional nul.la. Show that if H(Y j X) = 0, then Y is afunction of X, that is, for every x withp(x) > 0 there is only one possible value ywith p(x,y) > 0.3.

Exercici 1.5: Entropia del futbol. Amb tres partits restants per a la finalitzacio delcampionat, el Barca i el Madrid estan empatats en el primer lloc de la classificacio.Depenent dels resultats dels darrers tres partits, que es juguen en contra d’altresequips, el Barca o el Madrid guanyara el campionat o empataran en primer lloc.

1. Considereu que cadascun dels partits que resten es guanyen o es perden ambprobabilitat0.5. Calculeu l’entropia de la variable aleatoria amb alfabetAX = {guanyat,perdut,empatat} pel Madrid.

2. Considereu que el Barca guanya tots tres partits. Calculeu l’entropia condi-cional de la variable aleatoria amb alfabetAX = {guanyat,perdut,empatat}pel Madrid.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 40: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

36 Codificacio de Font

Exercici 1.6: Entropia binomial. SiguiX1,X2,X3, . . . una sequencia de variablesaleatories de Bernoulli independents ambP (Xi = 1) = p i P (Xi = 0) = 1− p,

1. Trobeu el valor dep que maximitza l’entropia deS2 = X1 + X2.

2. Perp = 1/2 calculeu l’entropia de la variable aleatoria binomialSn = X1 +. . . + Xn pern = 2,3, . . . ,20.

3. Pot demostrar-se queH(Sn) −→ a log2 n + b. Trobeu la constanta.

Exercici 1.7: Es llenca una moneda no esbiaixada (perfecta) fins que s’obtenendues cares o be dues creus. SiguinX1 i X2 els resultats dels primers dos llencaments,Y el resultat final (el resultat del darrer llencament), iN el nombre de llencaments.CalculeuH(X1), H(X2), H(Y ), H(N), I(X1;Y ), I(X2;Y ), I(X1,X2; Y ), I(N ; Y ),I(X1; N), I(X2; N), I(X1,X2;N).

Exercici 1.8: Sequencies tıpiquesSigui X1,X2,X3, . . . una sequo‘encia de vari-ables aleatories identicament distribuıdes i independents amb valors possibles{a,b,c}i funcio distribucio de probabilitatp(a) = 0.8, p(b) = p(c) = 0.1.

1. Calculeu l’entropiaH(X1) = H(X2) . . ..

2. Sigui A1000,1 el conjunt de sequencies 0.1-tıpiques de longitud 100. Calculeu

P (A1000,1 ).

3. Calculeu|A1000,1 |, el nombre de sequencies tıpiques, i el nombre de bits nec-

essaris per representar totes les sequencies tıpiques.

4. El conjunt de sequenciesε-tıpiques de longitudn, A(n)ε , consisteix en les

sequencies per les quals el nombrena d’ocurrencies del valora es proper alvalor mig0.8n. Trobeu les desigualtats que expliquen quan una sequenciaes tıpica en termes d’ε, n i na.

Exercici 1.9: Codis unıvocament decodificables. Trobeu un codi unıvocamentdecodificable que no satisfaci ni la condicio del prefix ni la condicio del sufix.Ajuda: dues paraules de codi son suficients.

Exercici 1.10:Retard de decodificacio. Els codis a prefix s’anomeneninstantanisperque poden decodificar-se amb un retard de decodificacio nul.: la paraula de codiactual es reconeix tant aviat com el darrer sımbol es reb. El retard de decodificaciod’un codi a longitud variable es defineix com el maxim nombre de sımbols quecal observar mes enlla de la paraula de codi actual per tal de decodificar qualsevolmissatge. Per exemple, el retard de decodificacio perC = {0,01} es 1. Doneu unexemple d’un codi amb retard de decodificacio 3.

Exercici 1.11:Fonts equiprobables.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 41: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.5 Exercicis 37

• Mostreu que les longituds de les paraules de codi per qualsevol codi a prefixoptim per a una font ambn sımbols igualment probables difereixen al maximd’un bit.

• La redundanciad’un codi a longitud variable es defineix comL − H. Pera una variable aleatoria ambn sortides equiprobables, on2m ≤ n ≤ 2m+1,trobeu el valor d’n que maximitza la redundanciaL − log2 n per a codisbinaris a longitud variableoptims. Quines el valor lımit per a aquest pitjorcas quann −→∞. Ajuda: 0.0861.

Exercici 1.12: Condicions per la decodificacio unıvoca. Demostreu que un codiC es unıvocament decodificable si i nomes si el codi extes

C+(x1,x2, . . . ,xk) = C(x1)C(x2) . . . C(xk)

es un mapat 1-a-1 des d’Xk aD∗ per totk ≥ 1.

Exercici 1.13: Codisoptims ambL ≈ H + 1. El teorema de codificacio de fontmostra que el codioptim per a una variable aleatoriaX te una longitud mitjaL ≤H(X) + 1. Aquestes el millor lımit possible; siX es binaria ambp(x = 1) = εaleshoresH(X) = H(ε) −→ 0 quanε −→ 0 pero L = 1. Doneu un exempled’una variable aleatoria amb entropia≈ 2 el codi optim a prefix de la qual tinguiuna longitud mitja≈ 3.

Exercici 1.14: Codis de Huffman. Considereu la distribucio de probabilitat{13 ,13 ,14 , 1

12

}.

1. Construıu el codi de Huffman per a aquesta distribucio de probabilitat.

2. Mostreu que existeixen dos conjunts diferents de longitudsoptimes per a lesparaules de codi.

3. Concloeu que hi ha codisoptims amb longituds de les paraules de codi pera alguns sımbols que excedeixen la longitud de paraula de codi de Shannondlog 1

pie.

Exercici 1.15: S’observa la sequenciax = daadcadbea a la sortida d’una fontd’informacio amb alfabetAX = {a,b,c,d,e}. S’assumeix que la fontes un procesestocastic i.i.d la distribucio de probabilitat exacta de la qual es desconeix.

1. La sequencia observada proporciona una estimacio de la distribucio de prob-abilitat de la font. Calculeu l’entropia de l’entropia d’aquesta mostra de lapdf.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 42: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

38 Codificacio de Font

2. Construıu el codi binari de Huffman per a aquesta mostra de la pdf. Busqueula longitud mitja de paraula de codi. Com es relaciona la longitud mitja alnombre de bits necessaris per a codificarx utilitzant aquest codi de Huffman?

3. Codifiqueu els primers quatre sımbls d’x utilitzant un codi de Huffman adap-tatiu. L’estimacio de les probabilitats inicials de{a,b,c,d,e} podrien ser{1

5 ,15 ,15 ,15 ,15}. A mesura que cada sımbol de font es reb, aquest es codificautilitzant el llibre del codi present; despres el llibre del codi es recalcula util-itzant les noves probabilitats estimades obtingudes incrementant el compteigdels sımbols acabats de rebre i el nombre total de sımbols rebuts. Per exem-ple, despres que s’observa la primerad, les noves probabilitats estimadesseran{1

6 ,16 ,16 ,26 ,16}, i el nou llibre del codi seria{00,010,011,10,11}.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 43: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

1.6 Solucions als Exercicic Proposats 39

1.6 Solucions als Exercicic Proposats

Exercici 1.1: Per demostrar la desigualtat considerem la diferencia

H(X)− log M =M∑

i=1

pi log(

1pi

)−

M∑

i=1

pi log M

=M∑

i=1

pi

[log

(1pi

)− log M

]=

M∑

i=1

pi

[log

(1

piM

)]

Fentus de la desigualtat

ln y ≤ y − 1 i log2 y =ln y

ln 2

obtenim

1ln 2

M∑

i=1

pi

[1

piM

]=

1ln 2

M∑

i=1

pi

[1M

− pi

]

=1

ln 2

(M∑

i=1

pi

[1M

]−

M∑

i=1

pi

[1pi

])= 0

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 44: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

40 Codificacio de Font

Taula 1.6. Codi de Huffman de l’exemple 25

Sımbol Probabilitat Auto-informacio Paraula de Codix1x1 0.2025 2.312 10x1x2 0.1575 2.676 001x2x1 0.1575 2.676 010x2x2 0.1225 3.039 011x1x3 0.09 3.486 111x3x1 0.09 3.486 0000x2x3 0.07 3.850 0001x3x2 0.07 3.850 1100x3x3 0.04 4.660 1101

2H(X) = 3.036 bits/parella de sımbolL2 = 3.0675 bits/parella de sımbol

12 L2 = 1.534 bits/sımbol

Eficiencia=99.0%

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 45: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

Capıtol 2

Codificacio de Canal: Codis aBloc

L’objectiu de tot sistema de comunicacionses aquell de fer arribar la informaciogenerada per la font al seu destinatari de la manera mes fiable possible. En elcapıtol anterior hem estudiat com transmetre la informacio de la manera mes efi-cient possible mitjancant la reduccio de la redundancia de la font d’informacio lacodificacio de font aplicant codificacio de font. Implıcitament hem suposat queel canal des del codificador (compressor) al decodificador (descompressor) no erasorollos. Els canals reals son, pero, sorollosos. En aquest capıtol ens ocuparem deles tecniques que s’apliquen als canals sorollosos per a millorar la fiabilitat de latransmissio. Aquestes tecniques es coneixen amb el nom decodificacio de canal.

Una bona caracteritzacio de les prestacions d’un sistema de comunicacionsdigital pot fer-se per mitja de la sevaprobabilitat d’error. La probabilitat d’errorde bit es defineix com la fraccio del nombre de bits erronis pel nombre total debits transmessos. Evidentment, un sistema sera mes fiable quant mes baixa siguila seva probabilitat d’error. Per exemple, en un sistema de telefonia digital, coml’actual GSM, una elevada probabilitat d’error pot significar la inintel.ligibilitat delmissatge vocal emes pel transmissor (la font d’informacio).

Els dissenyadors dels sistemes de comunicacions primitius cercaven obtenirprobabilitats d’error baixes transmetent a alta potencia o utilitzant un amplada debanda mes gran de l’estrictament necessaria. Aquesta solucio es adequada si laprobabilitat d’error requerida noes molt baixa i/o la velocitat de transmissio deles dades noes massa elevada; s’obtenien prestacions al cost dels recursos mespreciosos: amplada de banda i potencia.

En el seu famos article del 1948 Claude Shannon va mostar que, de fet,espossible disminuir la probabilitat d’error associada a un sistema de comunicacionsutilitzant un tercer recurs en joc: la complexitat del sistema, per mitja de l’aplicaciode tecniques de codificacio de canal. L’objectiu de la codificacio de canales aquelld’augmentar la robustesa de la transmissio en presencia de les perturbacions delcanal (com per exemple soroll) a traves de l’addicio deredundanciaa la sequencia

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 46: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

42 Codificacio de Canal: Codis a Bloc

Taula 2.1. Codi de Repeticio

Paraula d’informacio Paraula de Codi0 1111 111

Taula 2.2. Decodificacio del codi de Repeticio

Sequencia rebuda Bit decodificat000 0001 0010 0011 1100 0101 1110 1111 1

d’informacio. Es a dir, el codificador de canal introdueix, d’una manera controladai intel.ligent, redundancia a la sequencia binaria a la sortida del codificador de fontper tal que aquesta redundancia pugui utilitzar-se en el receptor per resoldre elsefectes de soroll i interferencia amb els quals es topa el senyal transmes a travesdel canal de comunicacions.

El codificador de canal doncs, transforma la sequencia binaria d’informacio enuna sequencia mes llarga (redundancia) amb el proposit de “protegir” la informa-cio.

Exemple2.1: Considerem un sistema de comunicacions caracteritzat per una font binariaque transmet sımbols de l’alfabet{0,1} per un canal binari simetric (BSC) caracteritzatper una probabilitat d’error (probabilitat de transicio) p = 0.1. Com podem disminuir laprobabilitat d’error associada a aquest sistema de comunicacions aplicant codificacio decanal?

El codi mes intuıtiu que podem imaginares un codi a repeticio, el qual repeteix uncert nombre de vegades el bit transmes. Considerem per exemple un codi que repeteix 3vegades el bit transmes (Taula 2.1). Com decodificarem aleshores la sequencia rebuda?Evidentment l’algoritmeoptim de decodificacio observara els tres bits rebuts i decidirasobre el bit transmes en funcio del valor (0 o 1) predominant, com mostrat a la Taula 2.2.

Quinaes en aquest cas la nova probabilitat d’error associada al nostre sistema de co-municacions? Clarament el decodificador cometra un error quan el canal modifiqui dos omes bits de la sequencia de 3 bits. La probabilitat d’error pot per tant calcular-se com

Pb(e) = p(2 o 3 bits errats) =3∑

i=2

(3i

)pi(1− p)3−i = 3p2(1− p) + p3 = 0.028

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 47: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.1 Introduccio als Codis de Canal i Definicions 43

El codi a repeticio ens ha permes doncs millorar la probabilitat d’error del sistema decomunicacions, com desitjavem. Al mateix temps, pero, hem pagat algun cost: el rate detransmissio de la informacio s’ha reduıt d’un factor 3. Aixo significa que si utilitzem perexemple aquest codi a repeticio en una lınia telefonica fixa, disminuirem la probabilitatd’error de la transmissio, pero disminuirem tambe la velocitat de transmissio: el cost dela trucada sera tres vegades superior. En cas d’un disc dur, per exemple, necessitarem unacapacitat d’informacio de 3 GigaBytes si volem emmagatzemar un fitxer d’1 GigaByte.¤

2.1 Introduccio als Codis de Canal i Definicions

Considerem una font d’informacio (que inclou el codificador de font) que produeixuna sequencia binaria,U. Suposarem, a mes, que aquesta sequencia esta forma-da per variables aleatories binaries independents i identicament distribuıdes. Comja hem introduıt en la introduccio, el codificador de canal actuara aleshores comun dispositiu que transforma la sequenciaU (sequencia d’informacio) en una altrasequenciaX mes llarga i que anomenaremsequencia de codi. Per a un funciona-ment practic del codificador, aquest ha de treballar amb blocs de dades finits: caldrasegmentar la sequencia de dades en blocs d’un determinat tamany que anomenaremparaules d’informacio. De la mateixa manera, la sequencia de codi es segmenta enblocs anomenatsparaules de codi.

Podem ja introduir una primera definicio de codificador de canal

Definicio 2.1 Un codificador de canales un dispositiu (algoritme) que transfor-ma una paraula d’informacio, u, en una altra paraula mes llarga, la paraula de codi,x, de manera que en recepcio es pugui recuperar la sequencia original a traves dela de codi. ¦

Per exemple, un codificador a bloc de parametres(n,k), rep a la seva entra-da paraules d’informacio dek bits i les transforma en paraules de codi d’n bits.Redefinim en termes mes matematics el codificador de canal,

Definicio 2.2 Un codificador de canalE es el conjunt dels2k parells(u,x) querelaciona cada paraula d’informacio u de k bits amb la corresponent paraula decodix d’n bits. ¦

D’altra banda, un codi de canal es defineix com

Definicio 2.3 Un codi de canalC es el conjunt de les2k paraules de codix,{x(1),x(2), . . . ,x(2k)}, totes de longitudn. Anomenarem aquest conjuntAX . ¦

Aquestes definicions pretenen aclarir la diferencia fonamental entre la nociode codi i la nocio de codificador. El codies una col.leccio de paraules de codi iesindependent de la manera en que s’han obtingut. El terme codificador, en canvi, esrefereix a la correspondencia 1-a-1 entre paraules d’informacio i paraules de codi,i tambe es refereix al dispositiu que implementa aquesta assignacio.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 48: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

44 Codificacio de Canal: Codis a Bloc

2.1.1 Codis a Bloc i Convolucionals

En relacio a la manera en la qual el codificador assigna paraules de codi a paraulesd’informacio, els codis es classifiquen en codis a bloc i codis convolucionals. Diemque el codi(n,k) es uncodi a blocquan el codificadores sense memoria, es a dir,quan el codi sempre transforma una mateixa paraula d’informacio dek bits en lamateixa paraula de codi d’n bits. Cada paraula d’informacio es codifica indepen-dentment sense interaccio amb paraules d’informacio anteriors o posteriors.

Quan el codi te memoria es parla de codis a arbre i, en particular, de codisconvolucionals. En aquest curs ens ocuparem nomes de codis sense memoria, es adir, de codis a bloc.

2.1.2 Rate del Codi

El rateRc d’un codi(n,k) es defineix com la fraccio

Rc , k

n≡ # bits paraula d′informacio

# bits paraula de codi(2.1)

Rc proporciona una idea de la quantitat de redundancia afegida pel codi. Un rateunitari equival a no redundancia. Evidentment, el codi sera mes eficient quant mesproper a la unitat sigui el seu rate.

2.1.3 Linearitat

Quan parlem de codis de canal hem de distingir tambe entrecodis linealsi codisno lineals. En cas dels codis lineals, el conjunt de les paraules de codies tancatsota la suma modul 2. En paraules mes senzilles, la suma de dues paraules de codies encara una paraula de codi1.

Nota La condicio de linealitat implica que la paraula de tot zeroses una paraulade codi. Adoneu-vos-en que si sumem una paraula de codi amb sı mateixa, la sumamodul 2 es el vector de tot zeros. Per linealitat, la suma de dues paraules de codies una paraula de codi i, per tant, la paraula de tot zeroses necessariament unaparaula de codi. O

2.1.4 Codis ARQ i FEC

En aquest curs ens focalitzem en l’us dels codis de canal per a augmentar la ro-bustesa de la transmissio d’informacio a traves del canal de comunicacions. Hi hafonamentalment dues estrategies en la decodificacio de la sequencia rebuda. Laprimera estrategia consisteix en la deteccio d’errors i la demanda de retransmissioper part del receptor a traves d’un canal de feedback. Tals codis reben el nom de

1Recordeu que en aritmetica binaria l’operacio sumaes sempre modul 2: 0 ⊕ 0 = 0,0 ⊕ 1 = 1,1⊕ 0 = 1, 1⊕ 1 = 0.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 49: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.2 Canals Sorollosos 45

codis ARQ. Aquestaes la tecnica amplament utilitzada en les xarxes de computa-dores.

Exemple2.2: En l’exemple anterior hem vist que utilitzant un codi a repeticio erem capacosde reduir la probabilitat d’error del nostre sistema de comunicacions.

La redundancia introduıda pel codificador de canal era utilitzada en recepcio per in-tentar corregir els errors causats per la transmissio.

Una altra manera d’aprofitar aquesta redundancia, pero, es la d’utilitzar-la per a ladeteccio d’errors. Tornem a la Taula 2.2. En aquest cas podem utilitzar la terna rebudaper detectar si s’ha produıt algun error en la transmissio o no. Si rebem010, per exemple,sabem que no correspon a cap de les possibles paraules de codi(000,111) i, per tant, podemdeterminar que hi ha hagut error en la transmissio. Podem doncs declarar error i demanaral transmissor que ens torni a enviar aquella informacio. ¤

La segona estrategia, i de la qual ens ocuparem en aquest curs,es l’estrategiaanomenadaForward Error Correction(FEC). En aquest cas el decodificador inten-ta corregir els errors introduıts pel canal. Les tecniques FEC s’adopten en aquellesaplicacions a temps real o amb que requereixen retards mınims, com per exempleles transmissions via satel.lit i la transmissio de veu en la telefonia mobil.

2.1.5 Motivacions per l’Us la Codificacio de Canal

Hem ja vist que la funcio basica dels codis a correccio d’errors (FEC)es la dereduir el nombre de bits errats en una transmissio digital per mitja de l’addiciode redundancia a la sequencia d’informacio que sera despres utilitzada en recepcioper a contrarestar els efectes del soroll. D’aquesta manera, respecte a una transmis-sio no codificada, la transmissio codificada redueix la seva eficiencia de banda (aconsequencia de la introduccio de redundancia) a canvi d’unes prestacions d’errormillors, utilitzant la mateixa potencia de transmissio. D’una manera equivalent,si fixem una determinada probabilitat d’error, la transmissio codificada requeriramenys potencia per a obtenir la mateixa probabilitat d’error. L’avantatge d’un es-quema de transmissio codificat respecte d’aquell no codificat es mesura general-ment amb elguany de codificacio, definit com,

Definicio 2.4 El guany de codificacio es defineix com la diferencia (en decibels)del valorEb/N0 requerit per assolir una determinada probabilitat d’error entre unatransmissio no codificada i una transmissio codificada. ¦

Aquest concepte es representa qualitativament a la Figura 2.1, on hem dibuixatles dues corbes que expressen la probabilitat d’error de bit (BER) en funcio de larelacio senyal soroll per bitEb/N0 pels sistemes codificat i no codificat.

2.2 Canals Sorollosos

Com hem acabat de veure, la funcio basica dels codis de canal, o codis a controldels errors,es aquella de reduir el nombre d’errors en una transmisso digital, es a

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 50: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

46 Codificacio de Canal: Codis a Bloc

E b /N 0 (dB)

P b (e)

no codificat

codificat

guany decodificació

Figura 2.1. Comportament tıpic de la probabilitat d’error de bit en funcio de larelacio senyal soroll de bit per sistemes codificat i no codificat.

dir, reduir la probabilitat d’error de bir (BER).Una segona motivacio de la codificacio de canal, i que ha provocat una gran

activitat de recerca en aquest camp, ha estat el treball pioner de la teoria de lacomunicacio de Claude Shannon. El teorema fonamental de Shannon per a canalssorollosos ens diu quees possible transmetre informacio, amb una probabilitatd’error arbitrariament petita, utilitzant un codi de canal amb un rate menor quel’anomenadacapacitat del canal.

2.2.1 Capacitat de Canal per a Canals Discrets

El primer pas per a entendre com funciona la codificacio de canal passa per definirles caracterıstiques del canal de comunicacions a traves del qual es transmet lainformacio. En aquest apartat establirem un model de canal molt senzill, el canaldiscret, i en determinarem el maxim bit rate possible al qual es pot transmetreinformacio per aquest canal d’una manera fiable (probabilitat d’error arbitrariamentpetita).

Imaginem-nos una canonada d’aigua. La capacitat d’aquesta canonada serael maxim caudal d’aigua que pot suportar. Superat aquest caudal, la canonada estrenca. Un canal de comunicacions discretes com una canonada. En aquest cas, encomptes de servir per a transportar aigua, el canal serveix per a transmetre informa-cio, sımbols. El canal discret rep sımbolsxi ∈ X, onX es l’alfabet del codificadorde canal i retorna sımbolsyi de l’alfabetY . En general, el canal noes ideal i escaracteritzara per la presencia de diverses perturbacions, com per exemple soroll,de manera que el sımbol rebutyi pot diferir d’aquell transmesxi. Matematicament

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 51: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.2 Canals Sorollosos 47

podem descriure el canal com un proces estocastic definit per un conjunt deprob-abilitats de transicio: la probabilitar d’haver rebut un cert sımbol si es transmet undeterminat sımbol. En altres paraules, una part de la informacio que transmetem atraves del canal es perd a consequencia de la presencia de soroll al canal.

Exemple2.3: L’exemple mes simple de canal discretes elcanal binari simetric que ja hemvist anteriorment. En aquest cas les probabilitats de transicio corresponen a les probabili-tats d’error.¤

Considerem el cas general d’un canal discret. D’acord amb els alfabets d’en-trada i de sortida i la seva dependencia probabilıstica definida per les probabilitatsde transicio, podem definir les seguents entropies:

• L’entropia d’entradaH(X),

H(X) ,NX∑

i=1

P (xi) log(

1P (xi)

)bit/sımbol (2.2)

que mesura la quantitat d’informacio (o incertesa) de l’alfabet d’entrada.

• L’entropia de sortidaH(Y ),

H(Y ) ,NY∑

j=1

P (yj) log(

1P (yj)

)bit/sımbol (2.3)

que mesura la quantitat d’informacio (o incertesa) de l’alfabet de sortida.

• L’entropia condicionalH(X|Y ),

H(X|Y ) ,NX∑

i=1

NY∑

j=1

P (xi,yj) log(

1P (xi|yj)

)bit/sımbol (2.4)

que mesura la quantitat mitja d’informacio que es necessita per especificar elsımbol d’entradax quan el sımbol de sortida (el sımbol rebut)y es conegut.Aquesta entropia condicional representa la quantitat mitja d’informacio ques’ha perdut al canal, i que anomenaremequivocacio. En cas d’un canal sensesoroll s’obteH(X|Y ) = 0, es a dir, el sımbol rebut determina unıvocamentel sımbol transmes; la probabilitat d’error del canales nul.la. En cas d’uncanal inservible,H(X|Y ) = H(X). En aquest cas la incertesa sobre elsımbol transmes roman inalterada despres de la recepcio del sımbol de sor-tida (Tota la informacio s’ha perdut al canal i, per tant, la coneixenca d’y noaporta cap informacio sobrex).

En aquestes condicions suposem que es rep el sımbolyj . La informacio trans-portada per aquest event sobre el sımbol transmesxi sera igual a la diferencia entre

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 52: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

48 Codificacio de Canal: Codis a Bloc

H(X)(entropia de font)

H(X/Y)(equivocació)

H(Y)

H(Y/X)I(X;Y)

Informació mútua

Figura 2.2. Relacio entre entropia de font, entropia condicional i informaciomutua.

la incertesa sobre el sımbol transmesa priori i la seva incertesa un cop es coneixyj ,

I = Hpriori −Hposteriori (2.5)

La incertesa a priori sera simplement l’entropia de l’alfabet d’entrada al canalX,

Hpriori = H(X) (2.6)

La incertesa a posteriories simplement

Hposteriori = H(X|yj) =NX∑

i=1

P (xi,yj) log(

1P (xi|yj)

)bit/sımbol (2.7)

Hem vist que una part de la informacio H(X) quees transmesa pel canal es perda consequencia del soroll. Aquesta part es mesura ambH(X|Y ). Per tant, semblanatural definir unflux mig d’informacio, conegut amb el nom d’informacio mutuaentreX i Y , I(X; Y ), a traves del canal com

I(X; Y ) , H(X)−H(X|Y ) bit/sımbol (2.8)

Equvalentment

I(X; Y ) , H(Y )−H(Y |X) bit/sımbol (2.9)

La Figura 2.2 mostra una il.lustracio molt entenedora de la relacio entre lesquantitats involucrades en les equacions (2.8) i (2.9).

Exemple2.4: Considerem un canal binari simetric amb probabilitat d’errorp = 0.1 isımbols equiprobables, i considerem el calcul de la informacio mutuaI(X; Y ). Pel fet queP (x1) = P (x2) = 0.5, els sımbols de sortiday1 i y2 son tambe equiprobables. Aleshores,

H(X) = H(Y ) = 1 bit/sımbol

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 53: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.2 Canals Sorollosos 49

Per calcularI(X; Y ) utilitzant la definicio anterior. Cal doncs calcularH(Y |X):

H(Y |X) = p(0,0) log1

p(0|0)+p(0,1) log

1p(0|1)

+p(1,0) log1

p(1|0)+p(1,0) log

1p(1|0)

Aquestes probabilitats son senzilles de calcular:

p(0|0) = 1− p

p(0|1) = 1p(1|0) = p

p(1|1) = 1− p

p(0,0) = 0.5 · (1− p)p(0,1) = 0.5 · pp(1,0) = 0.5 · pp(1,1) = 0.5 · (1− p)

Per tant:

H(Y |X) =12p log

1p

+12p log

1p

+12(1− p) log

11− p

+12(1− p) log

11− p

= H(p)

iI(X,Y ) = 1−H(p) = 1− 0.46899 = 0.531 bit/simbol

¤

Amb aquest exemple hem observat que la informacio mutua depen de les prob-abilitats de l’alfabet d’entrada (obviament depen tambe de les probabilitats de tran-sicio del canal). Considerem ara que volem maximitzar la informacio mutua trans-portada pel canal escollint el millor conjunt d’entrada possible. Definirem laca-pacitat del canalcom la informacio mutua maxima,

Definicio 2.5 La capacitatC d’un canal es fefineix com la informacio mutuamaxima, maximitzada sobre totes les distribucions de probabilitat dels sımbolstransmesos. ¦

Shannon va demostrar que, de fet, la capacitat del canal mesura la maximaquantitat d’informacio lliure d’errors per unitat de temps que pot transmetre’s atraves d’un canal,

Theorem 7 Teorema de Shannon per a la codificacio de canal. Sigui una fontd’informacio binaria amb entropiaH(L) i un canal discret sense memoria ambcapacitatC, existeix un codi de rateRc = k/n tal que la probabilitat d’error deparaula esta limitada per

Pw(e) < 2−nE(R), R ≡ RcH(L) (2.10)

onE(R) es una funcio no negativa, decreixent i convexa⋃

ambR per0 ≤ R ≤ C.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 54: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

50 Codificacio de Canal: Codis a Bloc

E(R)

RC

Figura 2.3. Comportament tıpic de la funcio E(R).

Un comportament tıpic de la funcio E(R) es mostra a la Figura 2.3. Basant-nos en l’equacio (2.10), podem emprendre tres accions diferents per a augmentarles prestacions d’un sistema de comunicacions digital.

1. Disminuir R disminuint Rc = k/n. Aixo significa incrementar laredundanciadel codi i, per a una determinada velocitat (rate) d’emissio dela font, utilitzar el canal mes sovint. En altres paraules, necessitem un canalamb una amplada de banda major.

2. Augmentar la capacitat del canalC incrementatnt la relacio senyal-soroll delcanal.

3. Incrementarn mantenint la relacio Rc = k/n constant. Aquesta tercerapossibilitat no requereix cap intervencio en la banda i/o relacio senyal-sorolldel canal. Permet millorar les prestacions del sistema de comunicacionssimplement incrementant la longitud de les paraules de codi i, per tant, alcost d’una major complexitat del codificador-decodificador i d’un retard mesgran en la reconstruccio de la sequencia decodificada.

Mentres (1) i (2) eren solucions molt conegudes per contrarestar les pertur-bacions del sistema de comunicacions, la utilitzacio de la tercera viaes un delsresultats mes importants de la teoria de Shannon i obre les portes a l’aplicacio detecniques de codificacio de canal.

2.3 Codis a Bloc

Ja hem vist anteriorment que la principal divisio dels codis a correccio dels errors(FEC) era entre codis convolucionals i codis a bloc. En aquest capıtol ens ocuparemde l’estudi dels codis a bloc lineals i, en particular, considerarem principalmentcodis a blocbinaris, es a dir, codis pels quals les paraules d’informacio i de codiestan formades per dıgits binaris 0 i 1. Cal saber pero que el concepte de codi a

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 55: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.3 Codis a Bloc 51

bloc pot ser extes a codisq-aris. En aquest capıtol introduirem les caracterıstiquesdels codis a bloc i descriurem els principals tipus de codis a bloc que s’utilitzen enles aplicacions practiques. Finalment ens ocuparem de la decodificacio.

Com ja hem explicat amb anterioritat, la principal caracterıstica dels codis abloces que el bloc d’n dıgits (paraula de codi) generat pel codificador depen exclu-sivament del corresponent bloc dek bits generat per la font (paraula d’informacio).Per tant, el codificadores sense memoria.

Un codi a bloc consisteix doncs en un conjunt de vectors de longitud finitan, les paraules de codi. En cas d’un codi binari, hi ha2n possibles paraules decodi de longitudn. D’aquestes2n paraules, n’haurem d’escollir2k (corresponentsa totes les paraules d’informacio) per formar el codi. Per tant, un bloc dek bitsd’informacio es transforma en una paraula de codi de longitudn seleccionada delconjunt de2k paraules de codi. Ens referirem al codi a bloc resultant com un codi(n,k), i la relacio Rc , k/n es defineix com aratedel codi.

Introduım algunes caracterıstiques basiques dels codis a bloc:

Un parametre molt important de les paraules de codies el seupes de Hamming,aixo es, el nombre d’1 que conte.

Si considerem dues paraulesxi i xj d’un codi(n,k) esutil definir una quantitatper mesurar la seva diferencia. Aquesta quantitat s’anomenadistancia de Hammingentre les dues paraules,dij , i es defineix com el nombre d’elements o posicions enles quals les dues paraules de codi difereixen. Clarament,dij satisfa la condicio0 ≤ dij ≤ n. El valor mes petit d’entre el conjunt de totes les distancies deHamming entre paraules de codi diferents(i 6= j) rep el nom dedistancia mınimadel codi i es denota ambdmin. La seguent propietat permet un calcul molt simplede ladmin dels codis a bloc lineals.

Propietat 2.1 La distancia mınima d’un codi a bloc lineales el pes mınim de lesseves paraules de codi, exceptuant la paraula de tot zeros.O

En efecte, la distancia entre dues sequencies binarieses igual al pes de la sevasuma modul 2, i la suma de dues paraules de codies encara una paraula de codi(Apartat 2.1.3).

2.3.1 Matriu Generatriu i Matriu de Paritat

Siguinu = u1,u2, . . . ,uk una paraula d’informacio i x = x1,x2, . . . ,xn la corre-sponent paraula de codi, l’operacio de codificacio pot representar-se d’una maneraconcisa per mitja de lamatriu GeneratriuG del codi que relaciona la paraula d’in-formacio amb la de codi,

x = uG (2.11)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 56: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

52 Codificacio de Canal: Codis a Bloc

onu i x son vectors fila iG es una matriuk × n,

G =

g1

g2...

gk

=

g11 g12 . . . g1n

g21 g22 . . . g2n...

......

gk1 gk2 . . . gkn

(2.12)

Ja hem explicat que el conjunt de paraules de codi constitueix un subspai vec-torial de2k elements. La dimensio d’aquest espai (el numero de vectors linealmentindepent que en constitueixen una base,es a dir, que generen tot el subspai)esprecisamentk. Per tant, si definim{g1, . . . ,gk} com una base del codiC(n,k),aleshores tota paraula de codi sera combinacio lineal dels vectors{g1, . . . ,gk},

x = u1g1 + u2g2 + . . . + ukgk (2.13)

Noteu que la paraula de codies simplement una combinacio lineal dels vectorsde la matriu generatriu.

Observeu que la matriu generatriu del codies una propietat del codificador,esa dir, estableix la relacio entra l’entrada i la sortida del codificador. D’altra banda,la matriu generatriu d’un codi noesunica, ja que hi ha mes d’una base que generael mateix subspai vectorial. L’algebra ens diu que qualsevol operacio lineal sobreels vectors que constitueixen una base dona lloc a una altra base que genera elmateix subspai vectorial. Aixı doncs, diferents matrius generatrius poden donarlloc al mateix Codi. Ara be, matrius generatrius diferents donen lloc a codificadorsdiferents, ja que la relacio entrada sortida varia.

Dos codificadors que donen lloc al mateix codi s’anomenencodificadors equiv-alents.

Aplicant aquest resultat, tota matriu generatriu pot reduir-se, mitjancant opera-cions de files i permutacions de columnes a laforma sistematica

G = [Ik|P] =

1 0 . . . 00 1 . . . 0...

......

0 0 . . . 1

∣∣∣∣∣∣∣∣∣

p11 p12 . . . p1n−k

p21 p22 . . . p2n−k...

......

pk1 pk2 . . . pkn−k

(2.14)

on Ik es una matriu identitatk × k i P es una matriuk × (n − k) que determinaelsn− k bits de redundancia obits de paritat. Noteu que una matriu generatriu enforma sistematica genera un codi lineal en el qual els primersk bits de cada paraulade codi son identics als bits de la corresponent paraula d’informacio. Un codi ambaquesta caracterıstica s’anomena sistematic,

Definicio 2.6 Un codi s’anomena sitematic quan els primersk bits de la paraulade codi son una replica dels bits d’informacio de la paraula d’informacio, i elsrestants(n− k) bits son bits de paritat delsk dıgits d’informacio. ¦

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 57: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.3 Codis a Bloc 53

Un codi que no satisfa aquesta condicio rep el nom de codino sistematic. Noobstant, la matriu generatriu d’aquest codies equivalent a una matriu generatriu enforma sistematica obtinguda amb operacions elementals sobre les files i permuta-cions de columnes. Dos codis les matrius generatrius dels quals poden obtenir-seamb operacions de files i permutacions de columnes son iguals (el subspai gen-erat es el mateix i, per tant el conjunt de les2k paraules de codies el mateix) itenen la mateixa probabilitat d’error de paraula. Per aquest fet, s’anomenencodisequivalents. Noteu, pero que la seva probabilitat d’error de bit (definirem aqueststermes mes endavant) pot ser diferent, ja que un codi admet diferents codificadors(diferents matrius generatrius) i, per tant, diferents transformacions, entre paraulesd’informacio i paraules de codi.

Noteu, que d’aquesta manera, la matriuG es una caracterıstica del codificador,no del codi.

A mes, podem concloure que tot codi a bloc(n,k) es equivalent a un codi abloc (n,k) sistematic.

El fet de treballar amb un codi sistematic resulta molt mes convenient des delpunt de vista operacional, ja que de l’equacio

x = uG′ = u(Ik|Ak×(n−k))

se’n dedueix que els primersk sımbols de la paraula de codix coincideixen araamb els del vector missatgeu:

xi = ui, i = 1, . . . ,k

D’aquesta manera, per a obtenir una paraula de codi nomeses necessari calcularels n − k sımbols de redundanciaxk+1, . . . ,xn a partir de lesn − k equacionslineals

xk+j =∑

i = 1kuiai,j j = 1, . . . ,n− k

Theorem 8 Tot codi lineales equivalent a un codi lineal sistematic.

Un codificador a bloc binari lineal(n,k) pot implementar-se utilitzant un shiftregister dek bits i un conjunt d’n sumadors modul 2 connectats als taps apropi-ats del shift register. Finalment, aquest sumadors alimenten un shift register desortida que generara la paraula de codi. L’esquema del codificador es mostra a laFigura (Figura!!!!!!, 462). El vectoru = [u1,u2, . . . ,uk] de k bits d’informacioalimenta el registre d’entrada. Quan el registre esta carregat, el contingut de cadasumador alimenta en paral.lel el corresponent stage del registre de sortida, el qualproporciona a la seva sortida la paraula de codix = [x1,x2, . . . ,xn]. Mentres queel registra de sortida proporciona la paraula de codi, el registre d’entrada es car-rega novament i es repeteix l’operacio completa. Els clocks pels dos registres sondiferents, essent el rate de sortida major d’un factor1/Rc.

Anem a aclarir tots aquests conceptes amb alguns exemples:

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 58: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

54 Codificacio de Canal: Codis a Bloc

Exemple2.5: Codi a repeticio (3,1)En aquest codi, cada paraula de codi, de longitudn = 3 es defineix amb les relacions

x1 = u1, x2 = u1, x3 = u1

La matriu generatriu d’aquest codies

G = [ 1 1 1 ]

i el codificador a repeticio resultant es defineix amb la correspondencia

Paraula d’informacio Paraula de Codi0 0001 111

Observeu que el codies sistematic i que el codi utilitza nomes dues de les 8 sequencies delongitud 3.

Utilitzant la Propietat 2.1, s’obtedmin = 3. ¤

Exemple2.6: Codi a control de paritat (3,2)Aquestes un codi en el qual el tercer dıgit es un control de paritat dels primers dos dıgits.La paraula de codi es defineix amb les relacions

x1 = u1, x2 = u2, x3 = u1 ⊕ u2

La matriu generatriu d’aquest codies

G =[

1 0 10 1 1

]

i el codificador sistematic resultant es defineix amb la correspondencia

Paraula d’informacio Paraula de Codi00 00001 01110 10111 110

Observeu que el codi utilitza nomes quatre de les 8 sequencies de longitud 3 i la sevadistancia mınimaesdmin = 2. ¤

Exemple2.7: Codi de Hamming (7,4)El codi de Hamming es defineix amb les relacions

xi = ui, i = 1,2,3,4x5 = u1 + u2 + u3

x6 = u2 + u3 + u4

x7 = u1 + u2 + u4

(2.15)

La matriu generatriu d’aquest codi, en la seva forma sisteaticaes

G =

1 0 0 0 1 0 10 1 0 0 1 1 10 0 1 0 1 1 00 0 0 1 0 1 1

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 59: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.3 Codis a Bloc 55

Si volem, per exemple trobar la paraula de codi corresponent a la paraula d’informaciou = [1100], simplement hem de sumar les dues primeres files deG, obtenint1100010.

El codificador sistematic resultant es defineix amb la correspondencia

Paraula d’informacio Paraula de Codi0000 0000 0000001 0001 0110010 0010 1100011 0011 1010100 0100 1110101 0101 1000110 0110 0010111 0111 0101000 1000 1011001 1001 1101010 1010 0111011 1011 0001100 1100 0101101 1101 0011110 1110 1001111 1111 111

Observeu que el codi utilitza nomes24 = 16 de les27 = 128 sequencies de longitud 3 i,per inspeccio, la seva distancia mınimaesdmin = 3. ¤

Matriu de Comprobaci o de paritat

Una altra manera de caracteritzar un codi linealC[n,k] es a traves d’un determinatsubspai lineal unıvocament relacionat amb ell.

Definicio 2.7 Conjunt OrtogonalS’anomena conjunt ortogonal d’un codi linealal conjuntC⊥ format pels vectors ortogonals a totes les paraules de codi:

C⊥ = {x ∈ Ln} : 〈x,y〉 = xy = 0,∀y ∈ C

onLn = ({0,1}n), + ,·) es un espai vectorial de dimensio n, que conte2n vectors.¦

El signe〈x,y〉 indica el producte escalar dels dos vectors, definit per〈x,y〉 =∑i = 1nxiyi.El producte escalar de dos vectors satisfa les seguents propietats:

x(y + z) = xy + xzx(y + z) = xy + xzxy = yx es simetricaxx ≥ 0

Associat amb cada codi(n,k) hi ha l’anomenatcodi dualde dimensio n − k.El codi duales un codi(n,n − k) amb2n−k paraules de codi, quees l’espai nuldel codi(n,k). La matriu generatriu del codi dual, denotada ambH, consisteix enn− k vectors de codi linealment independents seleccionats de l’espai nul. Definitd’aquesta manera, es compleix la propietat que tota paraula de codix del codi(n,k)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 60: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

56 Codificacio de Canal: Codis a Bloc

es ortogonal a tota paraula de codi del seu codi dual. Per tant, tota paraula de codidel codi(n,k) es ortogonal a tota fila de la matriuH, es a dir,

xHT = 0 (2.16)

on0 denota el vector fila de tot zeros ambn−k elements. Ja que (2.16) es compleixper totes les paraules de codi, en resulta

GHT = 0 (2.17)

on0 es ara una matriuk × (n− k) de tot zeros.En cas que el codi(n,k) sigui sistematic,G = [Ik,P], de 2.17 s’obte

H = [PT |In−k] (2.18)

Per resumir tots aquests conceptes, l’ortogonalitat entre un codi lineal i el seudual pot escriure’s de forma concisa a partir de la seguenrt expressio:

x ∈ C[n,k] ⇐⇒ xHT = 0n−k (2.19)

Aquestesn − k identitats expressen el fet ja conegut que en l’operacio de codifi-cacio s’han introduıt de forma controladan − k bits de redundancia, combinaciolineal dels bits de la paraula d’informacio. Aquesta expressio proporciona, a mes,una condicio necessaria i suficient de pertenencia a un codi lineal.

Si es consideren els elementsr = (r1, . . . ,rn) d’un vector de longitudn,aleshores l’expressio

rHT = 0 (2.20)

o, equivalentment, el sistema d’equacions

n∑

i=1

rihji = 0, j = 1,2, . . . ,n− k (2.21)

son les equacions de comprobacio de paritat. Per determinar si un vector rebutpertany al codi cal verificar que se satisfan totes aquestes equacions.

Exemple2.8: Considerem el codi de Hamming de l’exemple 2.7, definit per la matriugeneratriuGsys

G =

1 0 0 0 1 0 10 1 0 0 1 1 10 0 1 0 1 1 00 0 0 1 0 1 1

El codi resultantes

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 61: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.3 Codis a Bloc 57

Paraula d’informacio Paraula de Codi0000 0000 0000001 0001 0110010 0010 1100011 0011 1010100 0100 1110101 0101 1000110 0110 0010111 0111 0101000 1000 1011001 1001 1101010 1010 0111011 1011 0001100 1100 0101101 1101 0011110 1110 1001111 1111 111

D’acord amb (2.19), la matriu de paritat d’aquest codi,H, es

H =

1 1 1 00 1 1 11 1 0 1

∣∣∣∣∣∣

1 0 00 1 00 0 1

Es senzill comprobar queGHT = 0. Aleshores, tota paraula de codi ha de satisfer lesseguents equacions de paritat resultants dexHT = 0:

u1 + u2 + u3 + x5 = 0u2 + u3 + u4 + x6 = 0u1 + u2 + u4 + x7 = 0

(2.22)

S’observa que el productexHT es equivalent a afegir els bits de control de paritat corre-sponents a les combinacions lineals dels bits d’informacio que hem utilitzat en l’exemple2.7 per calcularx5,x6,x7. (2.15) es equivalent a (2.22). D’aquesta manera la matriuHpot utilitzar-se pel decodificador per controlar que la paraula rebuday satisfa la condicio(2.22),yHT = 0, es a dir, sies una paraula de codi valida. Actuant d’aquesta manera,el decodificador controla (check en angles) els bits de paritat rebuts, que han de satisferles corresponents equacions (2.22). Per aquest motiu, la matriuH s’anomenamatriu decontrol de paritato matriu de paritatdel codi(n,k). ¤

Exercici 2.16: Considereu un codi(n,k) amb distancia mınimad.

1. Demostreu que tot conjunt ded−1 o menys columnes de la matriu de paritatH es linealment independent.

2. Demostreu que existeix almenys un conjunt ded columnes d’H quees lin-ealment dependent.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 62: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

58 Codificacio de Canal: Codis a Bloc

2.3.2 Sındrome: definicio i propietats

Hem ja vist que la matriu generatriu d’un codi s’utilitza en l’operacio de codificacioal transmissor. D’altra banda ja hem indicat que el receptor utilitzara la matriu decontrol de parritat per a l’operacio de decodificacio. Considerem que s’ha transmesun vector de codix per un canal discret sorollos. Obviament, el vector rebutr nosempre coincidira amb el vector transmes. Podem expressar la diferencia entre elvector transmes i el vector rebut per mitja d’un vectore que tindra una componentdiferent de zero en les posicions d’aquells sımbols en els quals el canal ha introduıtun error. D’aquesta manera, el vecor rebutr pot expressar-se com:

r = x + e (2.23)

El vectore rep el nom devector d’error .El receptor te la funcio de determinar quin ha estat el vector de codi transmes a

partir del vector rebutr , quees allo queunicament coneix. En primer lloc haura dedecidir la presencia de possibles errors en la transmissio, determinant sir pertanyal codi. Quan el codi careix d’estructura interna, tan sols es pot determinar aixocomparant la sequencia rebuda amb cadascuna de les paraules de codi, ies evidentque aquest proces de busca es pot fer amb un temps limitat si el nombre de paraulesde codi noes massa gran. No obstant, quan el codies lineal, existeix un metodemolt simple de decidir quanr pertany al codi:es suficient verificar que se satisfanles equacions de control de paritat:

rH T = 0 (2.24)

El resultat d’aquest calcul, que constitueix el procediment basic de decodifi-cacio d’un codi lineal, rep el nom desındrome. Definicio 2.8 Sigui H una

matriu de control de paritat d’un codi linealC[n,k], s’anomena sındrome dex, pera qualsevolx ∈ Ln el vectors = xHT ¦

Aix ı doncs, el sındromes d’un vectorx tindra n − k elements entre els qualshi haura tants zeros com equacions de control de paritat se satisfacin perx.

Una consequencia directa d’haver modelat additivament els errors de transmis-sio introduıts pel canales que el sındrome depenunicament del vector d’error i node la paraula de codi transmessa. Per a demostrar aquesta propietat nomes cal teniren compte quer = x + e i llavors,

s = rHT = (x + e)HT = xHT + eHT (2.25)

Pero, per definicio, xHT = 0 i, per tants = eHT. Utilitzant el concepte desındromees possible enunciar novament la condicio necessaria i suficient de pertenenciaa un codi lineal que hem esmentat anteriorment.

Theorem 9 Sigui H una matriu de control de paritat d’un codi linealC[n,k] isigui r un vector de longitud n,r es una paraula del codiC[n,k] si i nomes si elseu sındromees nul,es a dirs = rHT = 0.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 63: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.4 Distancia mınima 59

2.4 Distancia mınima

Tota aquesta discussio ens porta a determinar les dues tecniques de decodificacioque existeixen: deteccio i correccio d’errors. Haurem de determinar quin criteri decorreccio d’errors s’utilitza i quines son les propietats correctores i detectores delscodis.

Per a determinar aixo, establim una certa similitud amb les modulacions digi-tals. Haureu vist que la probabilitat d’error associada a les diferents modulacionsdigitals depen de la distancia mınima entre senyals. Quant mes granes aques-ta distancia, menores la probabilitat d’error. En el cas dels codis, s’utilitza unparametre similar que determina d’alguna manera la bondat del codi:la distanciamınima de Hamming.

Per a introduir el concepte de distancia mınima, faremus de les seguents defini-cions:

Definicio 2.9 Pes de Hamming. S’anomena pes de Hamming d’un vectorx, i esrepresenta perwH(x), el nombre d’elements no nuls d’x. ¦

Definicio 2.10 Distancia de Hamming. La distancia de Hamming entre dosvectorsx i y, es el nombre de posicions (sımbols) en les que difereixen,

dH(x,y) = wH(x+y)

¦Clarament,dH(x,y) satisfa la condicio 0 ≤ dH(x,y) ≤ n.Aleshores, la distancia mınima d’un codi es defineix com:

Definicio 2.11 Distancia mınima d’un Codi . Es defineix la distancia mınimad’un codiC com la mınima de les distancies entre tots els parells de paraules decodi:

dmin = min{dH(x,y)} ∀ x,y ∈ C, x 6= y

¦Segons aquesta definicio, per a calcular la ditancia mınima d’un codies sufi-

cient considerar tots els possibles parells de paraules de codi diferents, obtenir ladistancia de Hamming que les separa i conservar el mınim de totes les distancies.Aquest procedimentes trivial, pero impracticable si el nombre de paraules del codies elevat. Afortunadament, si el codies lineal, podem ferus de la seguent propietat:

Propietat 2.2 La distancia mınima d’un codi a bloc lineales el pes de Hammnigmınim de les seves paraules de codi, exceptuant la paraula de tot zeros.

dmin = minx∈C,x 6=0

{wH(x)}

O

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 64: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

60 Codificacio de Canal: Codis a Bloc

Demostracio En un codi lineal, la suma de dues paraules de codi qualssevolesuna altra paraula de codi. D’aquesta manera, en considerar tots els parells diferentsde paraules de codi, la seva diferencia recorrera tot el conjunt de paraules de codino nul.les. ¦

Com a consequencia, per a calcular la ditancia mınima d’un codies suficientamb coneixer totes les paraules de codi i determinar-ne el pes de Hamming mınim.

La distancia mınima d’un codies de crucial importancia a l’hora d’avaluar lescapacitats de deteccio i correccio d’errors del codi. D’altra banda, la probabilitatd’error associada al codi dependra dedmin.

Per aquest motiu, quan es coneix la distancia d’un codi(n,k), s’acostuma aescriure(n,k,dmin.

Mes endavant ja determinarem amb mes exactitud la probabilitat d’error asso-ciada a un codi. Escrivim de totes maneres quinaes la probabilitat d’error quanconsiderem una modulacio binaria BPSK. En el cas no codificat, la probabilitatd’error es

Pb(e) =12erfc

(√Eb

N0

)(2.26)

Si considerem un codi de canal, per aEb/N0 grans,

limEb/N0−→∞

Pb(e) =12erfc

(√dminRcEb

N0

)(2.27)

La presencia del codi es tradueix en un guany de codificacio assimptotic gc =10 log dminRc

2.5 Capacitats Detectores i Correctores d’un Codi

2.5.1 Capacitat Detectora d’un Codi

Havıem vist anteriorment que el decodificador utilitza la matriu de control de pari-tat del codi per a la decodificacio. Pel que fa a la deteccio de possibles errors ocor-reguts durant la transmissio, el decodificador utilitzava el concepte de sındrome.Havıem vist qie un metode directe i efectiu per a determinar si una sequencia desımbols rebudar pertany o no al codi era determinar-ne el seu sındromes. Si elsındrome noes nul, aleshoresr no es una paraula de codi i necessariament s’hahagut de produir algun error durant la transmisso. En canvi, quans es nul, sabemque enl vector rebut pertany al codi, encara que aixo no significa que no s’hagi pro-duıt cap error durant la transmissio. Podria succeir que un vector d’error haguestransformat la paraula de codi transmessa en una altra paraula de codi.

La pregunta que cal fer-noses, quinaes la capacitat detectora d’un codi? Laresposta ve donada considerant la distancia mınima del codi a partir del seguentteorema:

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 65: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.5 Capacitats Detectores i Correctores d’un Codi 61

Theorem 10 Un codi a bloc lineal(n,k) amb distancia mınimadmin pot detectartots els vectors d’errors de pes menor o igual quedmin − 1,

wH(e) ≤ dmin − 1

En altres paraules, pot detectar un nombre d’errors introduıts pel canal menoro igual quedmin − 1.

Demostracio Per a demostrar aquesta propietat utilitzarem una interpretacio ge-ometrica del codi. Una paraula de codi noes mes que un vector en un espai d’ndimensions. Si el pes del vecore es menor o igual quedmin−1, resulta impossibletransformar una paraula de codi en una altra i, per tant, l’errore es detectable. ¦

Cal fer dues observacions pel que fa a aquest teorema:a. El teorema no diu que elsunics errors detectables diguin els dewH(e) ≤

dmin − 1. Aquesta expressio es nomes una condicio suficient, pero no necessaria.b. El teoremaes valid per a qualsevol classe de codis a bloc, ja que no s’ha fet

us en cap moment de la hipotesi de linealitat del codi.

2.5.2 Capacitat Correctora d’un Codi

Fins ara nomes hem explorat les capacitats de deteccio d’errors d’un decodificadora decisio hard. El problema de la correccio d’errorses evidentment molt mes com-plex, ja que el sındrome no conte informacio suficient per a localitzar la posiciodels errors. Per a determinar quina ha estat la paraula de codi transmessa o, equiv-alentment, quin ha estat el vector d’error introduıt pel canal, cal resoldre l’equaciovecorial

s = rH T = (x + e)HT = eHT (2.28)

Ja quexHT = 0 i |S| = 2n−k i |Y| = 2n, hi ha 2n

2n−k = 2k paraules rebudesrque generen la mateixa sındrome (s’obtenen sumant a un determinat vector d’errorles2k paraules de codi). En altres paraules, donada una paraula transmessax, hiha2k vectors d’errors que donen el mateix sındrome i, per tant, hi ha ambiguitat.Matematicament, nosaltres volem resoldre l’equacio:

s = eHT (2.29)

ons i la matriu de control de paritatH son coneguts ie es la incognita. Aquestaequacio te 2k solucions diferents: els2k vectorsr + xi, ambxi ∈ C, el sındromedels qualsess.

Aix ı doncs ocorre una ambiguitat que no pot resoldre’s utilitzant nomes elsındrome. Per tant, el decodificador haura de recorrer a alguna regla per a se-leccionar una solucio particular. Noteu que la consequencia practica d’escollir unasolucio particularei implica corregir el vector d’errorei: el decodificador obtela verdadera paraula de codi transmessa si el vector d’error introduıt pel canalesveritablementei. Altrament, el decodificador comet un error.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 66: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

62 Codificacio de Canal: Codis a Bloc

Un criteri de decisio intuitiu i simple es aquell que consisteix en escollir lasequencia d’error mes probable que produeix el mateix sındrome que la sequenciarebudar . En els canals sense memoria, com per exemple el canal binari simetric, isuposant paraules de codi equiprobables, aixo es equivalent en decodir a favor delvector d’error amb menys nombre d0elements no nuls. El motiu de l’equivalenciad’ambdues regles,es que la probabilitat que es produeixi un determinat vectord’error depen nomes del nombre de sımbols incorrectes, i no de la seva posicio (elserrors afecten a cada sımbol amb igual probabilitat i son estadısticament indepen-dents del missatge i entre sı). Evidentment, la probabilitat d’ocurrencia d’un patrod’error disminueix a mesura que augmenta la quantita de sımbols erronis.

La seleccio del vector d’error mes probable, coneguda la sequencia rebudar ,es coneix com aregla de maxima verosimilitud(ML, Maximum Likelihood). Potdemostrar-se que, amb les hipotesis que hem considerat, aquesta reglaesoptimaquan es preten minimitzar la probabilitat d’error de paraula de codiPw(e). Unaaltra possibilitat seria la minimitzacio de la probabilitat d’error de bitPb(e).

En altres paraules, l’eleccio del vector d’error de pes mınim implica que laregla de decisio escull com a paraula de codi transmessax aquella paraula de codia distancia mınima de la paraula rebudar .

Anem a veure que aquesta regla de decisio efectivament minimitza la probabil-itat Pw(e):

Actuarem de la seguent manera. En primer lloc caldra dividir l’espaiY de lessequencies rebudes (que consta de2n elements) en2k regions de decisio correspo-nents a les2k paraules de codi.

Denotarem la regla de decisio ML ambD(r) = x, i anem a veure en que estradueix matematicament aquesta regla. L’objectiues minimitzarPw(e). Equiva-lentment, podem escriure

Pw(e) = 1− Pw(c)

Indiquem, a mes ambSi = {j : D(r j) = xi}

la regio de decisio per la qual, havent rebutr j el decodificador decideix que s’hatransmesxi.

Si p(r j |xi) es la probabilitat de rebre la sequenciar j quan la paraula de codixi es transmessa sobre un canal BSC amb transicio de probabilitatp, aleshores laprobabilitat de correcta decodificacio es

Pw(c) =2k∑

i=1

p(r j ∈ Si,xi) =2k∑

i=1

p(r j ∈ Si|xi)p(xi) =2k∑

i=1

p(xi)∑

j∈Si

p(r j |xi)

on2k indica el nombre de paraules de codi.Suposem a mes que lesxi son equiprobables (aquesta hiotesies certa si la font

d’informacio genera sımbols equiprobables). En aquest cas:

Pw(c) =12k

i

j∈Si

p(yj |xi)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 67: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.5 Capacitats Detectores i Correctores d’un Codi 63

i la probabilitat d’errores aleshores

Pw(e) = 1− 12k

i

j∈Si

p(r j |xi)

Gracies a la propietat d’uniformitat en l’error, podem evitar la mitja sobre totesles paraules transmesses obtenent i considerar-ne nomes una,

Pw(e) = 1− 12k

j∈S1

p(r j |x1) (2.30)

onx1 es la paraula de tot zeros.Aix ı doncs, minimitzar (2.30) equival a maximitzarp(rj |xi). La regla de de-

cisio ML es per tant:x = D(r) = arg max p(r |x) (2.31)

Utilitzem arribats a aquest punt el concepte de distancia de Hamming: sir j estaa distancia de HammingdH d’x1, la probabilitat que havent transmesx1 rebemr j es simplement igual a la probabilitat que s’hagin produıt dH errors durant latransmissio:

p(r |x) = pdH (1− p)n−dH

En cas quep < 1/2 (requisit per a tot canal) la funcio p(r |x) es una funciomonotona decreixent ambdH

pdH+1(1− p)n−dH−1

pdH (1− p)n−dH=

p

1− p

Per tant, maximitzarp(r |x) equival a minimitzar la distancia de Hamming entrela sequencia rebudar i la sequenciax. Aixı doncs el criteri de decisio a maximaverosimilitud equival a escollir d’entre totes les possibles2k paraules de codixaquella a distancia de Hamming mınima en relacio a la sequencia rebudar ,

D(x) : x = arg min dH(r ,x) (2.32)

Recordant de nou l’equacio (2.28), podem concloure que l’algoritme de decod-ificacio a mınima distancia assumeix que el vector d’errore que ocorrees aquelld’entre tots els2k vectors d’error que produeixen el sındrome associat ar de pesmınim (la qual cosa implica escollirx a distancia mınima).

Aix ı doncs, d’acord amb el criteri de maxima verosimilitud, l’algoritme dedecodificacio consta dels seguents passos:

1. Calcular el sındromesdel vector rebutr , s = rHT .

2. Calcular el vector d’erroremin amb menor nombre d’elements diferents dezero, tal ques = eminHT .

3. Estimar la paraula de codi transmessa comx = r + emin.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 68: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

64 Codificacio de Canal: Codis a Bloc

Abans de considerar la regla de decisio amb mes detall, determinem les capac-itats correctores d’un codi a bloc de parametredmin com hem fet abans amb lacapacitat detectora d’un codi:

Theorem 11 Un codi a bloc lineal(n,k) amb distancia mınimadmin, pot corregirtots els vectors d’error tals que

t = wH(e) ≤⌊

dmin − 12

Aleshores es diu que el codies un codi a correccio t (pot corregir fins at errors).

Demostracio L’algoritme de decodificacio s’implementa assignant a cada paraulade codi una regio de decisio que conte el subconjunt de totes les sequencies rebudesque son mes properes a ella que a qualsevol altra. Un vector d’error de no mes ded(dmin − 1)/2e errors produeix una sequencia rebuda que esta dins de la regio dedecidio correcta. Per tant, la correccio de l’errores possible. ¦

2.5.3 Taula de decodificacio i standard array (matriu t ıpica) d’un codia bloc lineal

Utilitzant l’algoritme de decodificacio a distancia mınima que acabem de descriure,l’operacio de decodificacio pot fer-se buscant la paraula de codi mes propera a lasequencia rebuda. Aquest metode re3quereix l’emmagatzemament de2k paraulesde codi i comparacions repetides amb la sequencia rebuda. La capacitat d’emma-gatzemament totales de l’ordre den × 2k bits. Per tant, aquesta tecnica esdeverapidament impractica inclus per codis de longitud moderada. A mes, el proces decomparacio es massa complex quann i k son grans.

Un metode molt mes eficientes el d’avaluar el sındrome associat amb la sequenciarebudar assumint que el vector d’errore que ha esdevingutes el vector de pewsmınim d’entre el conjunt dels2k vectors que generen el mateix sındrome. Ambaquest metode, podem construir una taula de decodificacio associant a cada sındromeel vector d’error de pes mınim que el genera. La posicio dels uns en el vector d’er-ror indiquen els dıgits que hem de corregir de la sequencia rebudar . Anem a aclariraquest metode amb el seguent exemple:

Exemple2.9: Considerem el codi de Hamking(7,4) de matriu de control de paritat

H =(

1 0 1 0 10 1 0 1 1

)

Es tracta d’un codi de distancia mınima 3, de manera que pot corregir tots els errors sim-ples. Evidentment hi ha 16 paraules de codi possibles, 128 paraules rebudes possibles i 8sındromes diferents. Totes aquestes sequencies estan incloses a la taula. Estan agrupadesen files que contenen totes les sequencies que generen el mateix sındrome. El sındrome es

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 69: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.5 Capacitats Detectores i Correctores d’un Codi 65

mostra a la primera posicio de cada fila. La primera columna de la taula conte tots els vec-tors d’error de pes mınim. Per inspeccio pot verificer-se que tot vector d’error amb ununicerror te un sındrome diferent i, per tant, pot corregir-se. Per tant, la taula de decodificaciod’aquest codies la seguent:

Sındrome Vector d’Error Dıgit errat000 0000000 Cap001 0000001 7010 0000010 6011 0001000 4100 0000100 5101 1000000 1110 0010000 3111 0100000 2

Evidentment, el sındrome 000 correspon al conjunt de totes les 16 paraules de codi.El sındrome 111 localitza un error a la segona posicio de la sequencia rebuda, i aixı suc-cessivament. La taula de l’standard array tambe pot interpretar-se de la seguent manera:suposem per exemple que s’ha rebut la sequencia 1101010. El corresponent sındromees011. Per tant, s’assumeix que s’ha comes un error a la posicio 4 i es corregeix aquesterror. La paraula de codi obtinguda, 1100010, apareix a dalt de la columna que conte lasequencia rebuda.¤

Una taula com la 10.2, que conte 2n vectors d’n bits (totes les possibles pa-raules rebudes) en aquest ordre, s’anomena l’standard array del codi. Te2k columnesi 2n−k files. Les files s’anomenencosets. Fixeu-vos que tots els2k vectors d’u-na mateixa fila tenen el mateix sındrome, i que el sındrome associat a cada filaesdiferent.

En altres paraules, l’standard array tabula totes les solucions de l’equacio s =rHT per a cada possible valor d’s, i que cada una de les files conte tots els vec-tors d’error que produeixen un determinat vector sındrome. En resum, donat unsındromes, la seva fila en l’standard array conte tots els vectors d’error que podenhaver-se produıt durant la transmissio d’una paraula de codi pel canal.

La importancia de l’standard array pel proces de decodificacio de codis lin-eals resideix en el fet que representa una particio del conjunt de vectorsLn (elspossibles vectors rebuts) segons el sındrome que generen.

La primera paraula de cada fila s’anomenacoset leader. Es tracta del vectord’error de pes mınim que genera el sındrome comu a tots els vectors d’aquella fila(coset).

En definitiva, a l’hora de decodificar, en tenim prou amb localitzar a l’stan-dard array el vector rebut i estimar com a vector d’error el que figura a la primeracolumna de la mateixa fila.

Equivalentment, la taula de decodificacio del codi es construeix simplementassociant amb cada sındrome el corresponent coset leader de l’standard array. Pertant, els coset leaders son els vectors d’error que es poden corregir; si el vectord’error noes un coset leader, aleshores es produira una decodificacio erronia. Perminimitzar la probabilitat de paraula, els coset leaders han de ser els vectors d’error

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 70: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

66 Codificacio de Canal: Codis a Bloc

mes probables d’ocorrer. En el cas d’un BSC, els coset leaders son els vectors depes mınim associats a un sındrome donat.

Podem resumir l’algoritme de decodificacio en els passos seguents:

1. Calcular el sındrome de la sequencia rebuda.

2. Trobar el vector d’error corregible (coset leader) a la taula de decodificacio.

3. Determinar la paraula de codi estimada a partir de l’operacio: x = r + el.

La taula de decodificacio requereix l’emmagatzemament de2n−k sındromesde longitudn− k i 2n−k vectors d’error de longitudn: un total de

2.5.4 Codis Cıclics

Els codis cıclics son un subconjunt dels codis lineals caracteritzats per una estruc-tura matematica molt ben definida. Evidentment, aquests codis mantenen totes lespropietats que hem descrit anteriorment pels codis lineals pero, a mes, tenen propi-etats peculiars que suposen un gran avantatge: els seus algoritmes de codificacioi, en especial, de decodificacio admeten una realitzacio mes simple. Per aquestmotiu, els codis cıclics son de gran interes practic i son una de les famılies de codismesutils.

En aquest apartat es defineixen i caracteritzen els codis cıclics enfatitzant el seucaracter lineal.

Definicio 2.12 Un codi lineal(n,k) es un codi cıclic si qualsevol desplacamentcıclic d’una paraula de codies tambe una paraula de codi:

(x0,x1, . . . ,xn−1) ∈ C =⇒ ()

¦

Exemple2.10: Pot verificar-se que el codi de Hamming(7,4) vist amb anterioritates uncodi cıclic. Prenem, per exemple, la paraula de codi0111010. Hi ha sis desplacamentscıclics diferents d’aquesta paraula de codi:¤

Quan tractem amb codis cıclics, esutil representar una sequencia binaria d’nbits com un polinomi en la variableZ i grau menor o igual quen − 1 amb coe-ficients binaris (0 o 1). Els dıgits binaris d’una paraula de codi s’enumeraran enordre decreixent d’n − 1 fins a 0, de manera que cadaındex es fa correspondre al’exponent deZ. D’aquesta manera, una paraula de codix = (xn−1xn−2 . . . x0)es representa per mitja del polinomiX(Z) de la seguent manera:

x(Z) = xn−1Zn−1 + xn−2Z

n−2 + . . . + x1X + x0

Amb aquesta notacio. les paraules de codi d’un codi a bloc lineal(n,k) estanen correspondencia 1-a-1 amb els polinomis de codi de grau menor o igual quen− 1.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 71: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.5 Capacitats Detectores i Correctores d’un Codi 67

La representacio polinomica dels vectors no s’ha introduıt arbitrariament, sinoperque resulta extremadamentutil per a la manipulacio algebrica dels desplacamentscıclics.

Per definicio de codi cıclic, si x(Z) es un polinomi d’un codi cıclic, aleshoresun desplacament cıclic de la paraula de codi (per exemple cap a l’esquerra) d’iposicions genera un altre polinomi de codi que denotarem ambx(i)(Z).

El seguent teorema relaciona la representacio polinomica d’un vector d’n com-ponents desplacat cıclicament amb el binomiZn − 1, el qual veurem que desen-volupa un paper primordial pels codis cıclics.

Theorem 12 El polinomi de codi corresponent a un desplacament cıclic d’i posi-cions de la paraula de codix(Z), i que anomenaremx(i)(Z) es el residu de ladivisio deZix(Z) perZn + 1, es a dir,

Zix(Z) = q(Z)(Zn + 1) + x(i)(Z)

on q(Z) es el polinomi quocient de grau menor o igual quei− 1.

Demostracio Escrivim explıcitamentZix(Z):

Zix(Z) = xn−1Zn−1+i + xn−2Z

n−2+i+

. . . + xn−iZn + xn−i−1Z

n−1 + . . . + x1Z1+i + x0Z

i

A aquesta expressio sumem dues vegades els termesxn−1Zi−1,xn−2Z

i−2, . . . ,xn−i.Observeu que aixo no modifica l’expressio anterior, ja que en aritmetica modul 2,xn−j + xn−j = 0, ∀j. Aleshores:

Zix(Z) = xn−1Zi−1(Zn + 1) + xn−2Z

i−2(Zn + 1) + . . . + xn−i(Zn + 1)

+ xn−i−1Zn−1 + . . . + x1Z

i+1 + x0Zi + xn−1Z

i−1 + . . . + xn−i

i, finalment,

Zix(Z) = xn−1Zi−1 + xn−2Z

i−2 + . . . + xn−i)(Zn + 1)+

+ xn−i−1Zn−1 + . . . + x1Z

i+1 + x0Zi + xn−1Z

i−1 + . . . + xn−i

= q(Z)(Zn + 1) + x(i)(Z)

¦Utilitzant la descripcio polinomica dels codis cıclics, volem ara explotar les

propietats algebriques de les seves matrius generatrius. Comencem amb un exem-ple que ens permetra introduir un teorema molt important.

Exemple2.11: Considerem el codi de Hamming(7,4), el qual vam veure que era un codicıclic. Considerem en primer lloc la seva matriu generatriu:

G =

1 0 0 0 1 0 10 1 0 0 1 1 10 0 1 0 1 1 00 0 0 1 0 1 1

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 72: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

68 Codificacio de Canal: Codis a Bloc

Reescrivim ara aquesta matriu en forma polinomial:

G =

Z6+ Z2+ 1Z5+ Z2+ Z+ 1

Z4+ Z2+ Z+Z3+ Z+ 1

Considerem ara l’ultima fila d’aquesta matriu generatriu,es a dir, el polinomi

g(Z) = Z3 + Z + 1

Aquest polinomi ha de tenir un 1 en la darrera posicio (coeficient deZ0); en cas contrari,si apliquessim sis desplacaments cıclics a l’esquerra a aquest polinomi de codi, generarıemuna paraula de codi ambk = 0 bits d’informacio igual a zero i una seccio de paritatque conte dos uns, la qual cosaes impossible. A mes, aquestes l’unic polinomi de graun− k = 3 del codi. De fet, si n’hi hagues algun altre, podria sumar-se ag(Z) per generaraltra vegada una paraula de codi amb una seccio d’informacio de tot zeros i una seccio deparitat no nul.la. En conclusio, hi ha ununic polinomig(Z) de graun − k = 3, i aquestpolinomi te sempre la forma

g(Z) = Z3 + . . . + 1

Derivem ara les files restants de la matriu generatriu (11). La tercera fila pot obtenir-seamb un desplacament cıclic a l’esquerra de la darrera fila. En aquest cas obtenimg3(Z) =Z4 + Z2 + Z. Cada fila deG(Z) pot obtenir-se de la mateixa manera a partir de la filade sota. En cas que aparegui un 1 a la quarta posicio, podem sumar la darrera fila percancel.lar-lo.

Per exemple, la segona fila s’obte desplacant a l’esquerra la tercera fila:g2(Z) =Z5 + Z3 + Z2. En aquest cas obtenim un1 a la quarta posicio (el coeficient deZ3),que podem cancel.lar sumant simplement la darrera fila,g(Z) i obtenimg2(Z) = Z5 +Z3 + Z2 + g(Z) = Z5 + Z2 + Z + 1. La primera fila s’obte d’una manera analoga,g1(Z) = Z6 + Z2 + 1.

D’aquesta manera, totes les files deG(Z) son multiples del polinomig(Z),

G =

(Z3 + Z + 1)g(Z)(Z2 + 1)g(Z)

Zg(Z)g(Z)

(2.33)

Ara be, com que totes les paraules de codi son combinacions lineals de les files deG(Z),podem concloure que tots els polinomis de codi son multiples del polinomig(Z). ¤

Aquest exemple ens proporciona conclusions molt importants que enunciaremen el seguent teorema.

Theorem 13 Donat un codi(n,k) cıclic, hi ha ununic polinomi de codi de grau(n− k) que te la forma

g(Z) = Zn−k + . . . + 1 (2.34)

Tots els altres2k − 1 polinomis de codi son multiples deg(Z), i cada polinomi degrau (n− 1) o menys quees divisible perg(Z) es un polinomi de codi.

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 73: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

2.5 Capacitats Detectores i Correctores d’un Codi 69

La demostracio, que comporta una generalitzacio del desenvolupament fet al’esemple anterior, es deixa al lector.

El polinomig(Z) definit pel Teorema s’anomenapolinomi generadordel codicıclic- Tot codi cıclic esta completament definit a partir del seu polinomi generador.

La pregunta natural que se’ns planteja en aquest puntes quan existeix un codicıclic (n,k) per qualsevoln i k i quin n’es el polinomi generador corresponent. Elseguent Teorema proporciona una resposta a aquesta pregunta.

Theorem 14 El polinomi generatriug(Z) d’un codi cıclic (n,k) es un divisor de(Zn +1). Alternativament, tot divisor de(Zn +1) de grau(n−k) genera un codicıclic (n,k).

Demostracio Considerem el polinomizkg(Z) de graun i dividim-lo per(Zn+1).S’obte,

Zkg(Z) = (Zn + 1) + g(k)(Z) (2.35)

on g(k)(Z) es un polinomi de grau menor o igual que(n − 1). Utilitzant (??) delTeorema, podem concloure queg(k)(Z) es un polinomi de codi obtingut ambkdesplacaments cıclics a l’esquerra deg(Z). Per tant,g(k)(Z) es tambe un multipledeg(Z), m(Z)g(Z). De (2.35) obtenim

Zn + 1 = Zkg(Z) + g(k)(Z) = Zkg(Z) + m(Z)g(Z)

= [Zk + m(Z)]g(Z) = h(Z)g(Z)(2.36)

I hem demostrat queg(Z) es un divisor de(Zn + 1).Demostrem ara la segona part del teorema. Siguig(Z) un divisor de(Zn + 1)

de grau(n−k) i considerem elsk polinomisg(Z),Zg(Z), . . . ,Zk−1g(Z) de graus(n − k),(n − k + 1), . . . ,(n − 1). Hi ha 2k combinacions lineals d’aquestskpolinomis. cadascun d’ellses un multiple deg(Z), i conjuntament formen un codilineal (n,k).

Siguix(Z) un d’aquests polinomis de codi i considerem

Zix(Z) = q(Z)(Zn + 1) + x(i)(Z) (2.37)

on x(i)(Z) es un desplacament cıclic d’x(Z). Ja que tantx(Z) om (Zn + 1) sonmultiples deg(Z), aleshoresx(i)(Z) tambe hoes. A mes, pot expressar-se coma combinacio lineal delsk polinomis. Per tant, se’n despren quex(i)(Z) es unpolinomi de codi i que el codi lineales cıclic. ¦

Finalment, cal notar que sig(Z) divideix (Zm + 1), aixı com(Zn + 1), ambm < n, aleshores(Zm + 1) es una paraula de codi del codi cıclic (n,k), ambdistancia mınima 2. Per evitar aquest problema, cal escollirn de manera que siguil’enter mes petit tal que(Zn + 1) sigui multiple deg(Z).

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.

Page 74: 84.89.132.184.89.132.1/~lugosi/inf/apuntes.pdf · ´Index 1 Codificaci o de Font 5´ 1.1 Resultats Basics de la Teoria de la Informaci` o . . . . . . . . . . . 6´ 1.1.1 Model Matematic

70 Codificacio de Canal: Codis a Bloc

Resultats algebrics considerables son disponibles en relacio a les propietatsdels polinomis(Zn + 1). En concret, poden trobar-se taules dels divisors perdiferents valors d’n. Per exemple, hi ha tres polinomis que divideixen(Z7 + 1)

n = 7 −→ 6.54.64 110.101100.110100 1 + Z.1 + Z2 + Z3.1 + Z + Z3

i per tant generen codis de dimensions(7,6),(7,4) i (7,4) respectivament.Una vegada introduıdes les propietats matematiques dels codis cıclics anem a

estudiar els algoritmes de codificacio i decodificacio apropiats per aquests codis.En aquest sentit es veura que admeten algoritmes mes senzills que pel cas delscodis no-cıclics.

Algoritmes de codificacio pels codis cıclics

Per a codificar una sequencia d’informacio, en comptes d’utilitzar la matriu genera-triu del codi, en tenim prou amb utilitzar el polinomi generatriu. Donat el polinomigeneratriug(Z) d’un codi cıclic (n,k), el polinomi de codix(Z) corresponent a lasequencia d’informacio u(Z) s’obte a partir del Teorema 13 com

x(Z) = u(Z)g(Z) (2.38)

Aquest algoritme simple no representa pero un codificador en forma siste‘matica,com es verifica en el seguent exemple.

Exemple2.12: El codi de Hamming(7,4) descrit a l’exemple anterior te generadorg(Z) =Z3+Z+1. Cerquem ara la paraula de codi corresponent a la sequencia d’informacio1101.Ja que

u(Z) = Z3 + Z2 + 1

obtenim

x(Z) = (Z3 + Z2 + 1)(Z3 + Z + 1) = Z6 + Z5 + Z4 + Z3 + Z2 + Z + 1

La paraula de codies, per tant1111111, i el codificador noes sistematic. Totes les altresparaules de codi poden obtenir-se de la mateixa manera.¤

L’algoritme basat en (2.38) pot modificar-se per tal de representar un codi cıclic(n,k) sistematic. Donada la sequencia d’informacio u(Z)

s Alexandre Graell i Amat. UPF. Transmissio de Dades I. Curs 2002-2003.