• No se han encontrado resultados

1 CÓDIGOS CORRECTORES

N/A
N/A
Protected

Academic year: 2021

Share "1 CÓDIGOS CORRECTORES"

Copied!
5
0
0

Texto completo

(1)

1

C ´

ODIGOS CORRECTORES

Piensa en un n´umero entre 0 y 15. Si siempre dices la verdad, yo podr´ıa adivinar tu n´umero con 4 preguntas, cuyas posibles respuestas son: ”s´ı” o ”no”. ¿Por qu´e?

Un truco para justificar lo anterior es representar cada n´umeronentre 0 y 15 en sistema binario: n=a·23+b·22+c·2 +d, dondea, b, c, d son o 0 o 1.

Es decir, comunicarnes lo mismo que comunicar los cuatro bits a, b, c, d. Por tanto, se requieren de cuatro preguntas para determinar el n´umero.

Ejercicio 1: ¿Cu´ales podr´ıan ser las preguntas?

Pero si ahora complicamos un poco m´as el problema y se permite mentir una (sola) vez. ¿Cu´antas preguntas te tendr´ıa que hacer para detectar si mientes? ¿Cu´antas en el caso de que quiera corregir tu mentira (o error) y adivinar el n´umero que realmente pensaste?

Canal binario perfecto

Un canal binario es un canal para comunicar bits. En el primer problema, tenemos un canal binario perfecto para comunicar bloques de 4 bits entre t´u y yo. ”Perfecto” porque el canal transmite el mensaje sin cambiarlo.

Canales con ruido

En la pr´actica, los canales binarios no son perfectos, y pueden cambiar un 1 en un 0, o viceversa, con cierta probabilidad (Teor´ıa de Shannon). El segundo problema, cuando se permite una mentira, es un ejemplo de esta situaci´on: la mentira intercambia los bits. La teor´ıa de los codigos correctores de error, o teor´ıa de la codificaci´on, trata de m´etodos de procesar mensajes para proteger contra errores introducidos por el canal.

La idea fundamental es introducir cierta estructura o informaci´on redundante en el mensaje que se env´ıa. Si esa estructura no est´a en el mensaje que se recibe, se sabe que ha habido cambios en el canal; una estructura lo suficientemente rica permite recuperar el mensaje original, siempre que no haya habido demasiados cambios. Es muy parecido a lo que ocurre en lenguaje natural: piensa en c´omo funcionan los programas correctores de ortograf´ıa. Imaginemos que recibimos el siguiente mensaje de texto:

”En un lular de la Mancha”

Nos damos cuenta inmediatamente de que se han producido errores en la transmisi´on, porque ”lular” no es una palabra del castellano. ´Esta es una idea importante: no todas las combinaciones de letras son palabras v´alidas de nuestro diccionario y esto nos permite detectar en este caso el error.

Pero vayamos m´as all´a: supongamos que transmitimos la palabra “Zaragoza” y recibimos, por ejemplo, “Zatagoza”. Por supuesto, detectamos que se ha producido alg´un error; pero a´un m´as, cualquiera se sentir´ıa en disposici´on de corregir el error: se ha producido en el tercer s´ımbolo, y era una r en lugar de una t. La raz´on es clara: no hay palabras en castellano “cerca” (en el sentido de “parecidas”) de Zaragoza. Pero si transmitimos “casa” y recibimos “cusa”,

(2)

pese a que detectamos el error, ya no est´a tan claro c´omo corregirlo: podr´ıamos haber emitido lusa, musa, cuna, etc. Peor a´un, podr´ıamos haber recibido “tasa” en lugar de “casa” y ni siquiera podr´ıamos detectar el error. La raz´on, la misma de antes, pero al rev´es: ahora hay muchas palabras semejantes (”muy cerca”) a “casa”.

Enumeremos las ense˜nanzas de estos ejemplos:

• La estructura: un conjunto de s´ımbolos (el abecedario) y unas palabras formadas con ellos (el diccionario).

• Las palabras del diccionario deben estar separadas (para detectar errores) . . . y si est´an muy separadas, hasta nos atreveremos a corregir.

Volviendo a nuestro problema de adivinar un n´umero, un caso m´as f´acil es reconocer un mentiroso, sin intentar recuperar su n´umero. Para esto, en vez de mandar 4 bits [a, b, c, d], se mandan 5, [a, b, c, d, e] dondeese escoge de manera que el n´umero total de 1’s en el vector sea par. Si los bits del mensaje que llega no satisfacen la condici´on de paridad, se detecta que ha habido errores, pero no hay manera de corregirlos.

Ejercicio 2: Continuando con el ejercicio 1, ¿cu´al ser´ıa la pregunta para determinare?

Para corregir, y no solamente detectar, errores, hay que introducir a´un m´as estructura en el mensaje.

1.1

odigos de Hamming

Un c´odigo lineal de longitud n y rango k es un subespacio lineal C con di-mensi´onkdel espacio vectorialF2n, dondeF2={0,1}(es el cuerpo finito con 2

elementos). Tal c´odigo se denomina c´odigo binario. Los vectores enCse llaman

(3)

1. Existe una matriz generadoraG deC de la forma (Ik, A) donde Ik es la

matriz identidad de ordenkyAes una matriz de orden k×(n−k). 2. Existe una matriz de comprobaci´on de paridad H para C de la forma

(B, In−k), dondeBes una matriz de orden (n−k)×k. M´as a´un,B=At.

3. Un c´odigo de distancia m´ınimaddetectad−1 errores y corrige [(d−1)/2] errores.

En nuestro problema de adivinar un n´umero, consideraremos el c´odigo de Hamming [7,4,3] (el hecho qued= 3 es una consecuencia de la definici´on del c´odigo). Seg´un la propiedad 3, detecta dos errores y corrige uno. Una matriz generadora ser´ıa G=     1 0 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1 1 1 1     . Observa que six= a b c d , entonces xG= a b c d     1 0 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1 1 1 1     =           a b c d a+b+d a+c+d b+c+d           ,

que es una relaci´on que nos ser´a ´util para construir expl´ıcitamente el c´odigo. Veamos c´omo la matriz Ggenera las palabras del c´odigo que incluye los (tres)

(4)

d´ıgitos redundantes para cada n´umero del 0 al 15: 20 21 23 24 25 26 27 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 2 0 1 0 0 1 0 1 3 1 1 0 0 0 1 1 4 0 0 1 0 0 1 1 5 1 0 1 0 1 0 1 6 0 1 1 0 1 1 0 7 1 1 1 0 0 0 0 8 0 0 0 1 1 1 1 9 1 0 0 1 0 0 1 10 0 1 0 1 0 1 0 11 1 1 0 1 1 0 0 12 0 0 1 1 1 0 0 13 1 0 1 1 0 1 0 14 0 1 1 1 0 0 1 15 1 1 1 1 1 1 1 α a b c d e f g −→ P1 P2 P3 P4 P5 P6 P7 1 1 1 2 2 2 3 3 3 3 4 4 4 5 5 5 5 6 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10 11 11 11 11 12 12 12 13 13 13 13 14 14 14 14 15 15 15 15 15 15 15 y1 y2 y3 y4 y5 y6 y7 verific´andose: e=a+b+d,f =a+c+dyg=b+c+d.

As´ı, las columnas P1, P2, P3, P4, P5, P6, P7 son los conjuntos que nos

de-terminan las preguntas que vimos en el demo del juego de la adivinanza, e y1, y2, y3, y4, y5, y6, y7 son las respuestas ”S´ı = 1” o ”N o = 0”. Si llamamos

α = a b c d e f g

e y = y1 y2 y3 y4 y5 y6 y7, pueden

suceder dos casos: que sean id´enticos o que se diferencien en una sola compo-nente. Equivalentemente,w(α+y) = 0 o 1, respectivamente. Siw(α+y) = 0, el participante dijo la verdad. Siw(α+y) = 1, el participante minti´o una vez, y la posici´oni donde se encuentra el 1 enα+y corresponde a la preguntaPi,

(5)

volv´ıa, el fin de semana siguiente, encontraba que alguno de los programas que m´as necesitaba no hab´ıan sido ejecutados (cuando el ordenador detectaba un error en un programa, deten´ıa su realizaci´on y pasaba a otro que estaba en la lista de espera). Esto ocasionaba importantes atrasos en su trabajo y le llev´o a plantearse el problema de acondicionar de alg´un modo la informaci´on que maneja el ordenador de tal suerte que pudiera corregir los errores.

Imaginemos que se desea enviar informaci´on digital (una cadena de ceros y unos) a trav´es de un canal de comunicaci´on de una forma r´apida y segura. El canal de comunicaci´on puede ser una l´ınea telef´onica, comunicaci´on v´ıa sat´elite, fibra ´optica, almacenamiento de datos en un disco, cinta de computadora, etc. A veces ocurre que el mensaje que se recibe no concuerda con el enviado, prin-cipalmente debido a alg´un error humano, interferencias, deficiencias del equipo, situaciones atmosf´ericas, etc. Se suele decir que la comunicaci´on se hace a trav´es de un canal con ruido.

Los c´odigos de Hamming no son tan ´utiles en la actualidad, pero hay otros como los c´odigos de Reed-Muller (corrige 5 errores por cada secuencia de 32 bits) o c´odigos de Golay extremadamente ´utiles en diversos ´ambitos. La transmisi´on de informaci´on desde naves espaciales o a trav´es de sat´elites de comunicaciones es uno de los paradigmas de la teor´ıa de c´odigos. Los impresionantes avances tecnol´ogicos, en tecnolog´ıa digital, que en la actualidad son normales y que consideramos parte de nuestra vida cotidiana, como el tel´efono m´ovil, la tele-visi´on digital, los sistemas de navegaci´on a´erea y mar´ıtima, los CD-R, los DVD, en buena medida (pero no totalmente) no ser´ıan posibles sin el desarrollo de los c´odigos detectores-correctores de error. Estos c´odigos aparecen, adem´as, en medicina (tomograf´ıa), en los c´odigos de barras, en las transacciones comer-ciales y bancarias, en sistemas de grabaci´on y reproducci´on de im´agenes, audios y v´ıdeos y, en consecuencia, la importancia de su estudio y de la obtenci´on de resultados originales en este contexto est´a fuera de discusi´on.

Referencias

Documento similar

Pero cuando vio a Mar sacar el fuego de bajo su ala, voló de vuelta a su tribu a contarles lo que había visto.... Justo antes de que el sol saliera, Tatkanna se despertó y comenzó

o esperar la resolución expresa" (artículo 94 de la Ley de procedimiento administrativo). Luego si opta por esperar la resolución expresa, todo queda supeditado a que se

nam Fuera de este ámbito de mayor proximidad, en el área castellano-leonesa, se conocen abundantes ejem- plos de este tipo de arte 9 en abrigos bajo roca, pero la falta de

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

¿Cómo se traduce la incorporación de ésta en la idea de museo?; ¿Es útil un museo si no puede concebirse como un proyecto cultural colectivo?; ¿Cómo puede ayudar el procomún

Primeros ecos de la Revolución griega en España: Alberto Lista y el filohelenismo liberal conservador español 369 Dimitris Miguel Morfakidis Motos.. Palabras de clausura

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados