Decodificación de distancia mínima generalizada


De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

En la teoría de la codificación , la decodificación de distancia mínima generalizada (GMD) proporciona un algoritmo eficiente para decodificar códigos concatenados , que se basa en el uso de un decodificador de errores y borrados para el código externo .

Un algoritmo de decodificación ingenuo para códigos concatenados no puede ser una forma óptima de decodificación porque no tiene en cuenta la información que proporciona la decodificación de máxima verosimilitud (MLD). En otras palabras, en el algoritmo ingenuo, las palabras de código recibidas internas se tratan de la misma manera independientemente de la diferencia entre sus distancias de martillo . Intuitivamente, el decodificador externo debería tener una mayor confianza en los símbolos cuyas codificaciones internas están cerca de la palabra recibida. David Forneyen 1966 ideó un algoritmo mejor llamado decodificación de distancia mínima generalizada (GMD) que hace un mejor uso de esa información. Este método se logra midiendo la confianza de cada palabra de código recibida y borrando los símbolos cuya confianza está por debajo de un valor deseado. Y el algoritmo de decodificación GMD fue uno de los primeros ejemplos de decodificadores de decisión suave . Presentaremos tres versiones del algoritmo de decodificación GMD. Los dos primeros serán algoritmos aleatorios, mientras que el último será un algoritmo determinista .

Configuración

  • Distancia de Hamming  : Dados dos vectores, la distancia de Hamming entre y , denotada por , se define como el número de posiciones en las que y difieren.
  • Distancia mínima: sea ​​un código . La distancia mínima del código se define como donde
  • Concatenación de código: dado , considere dos códigos que llamamos código externo y código interno
y sus distancias son y . Se puede lograr un código concatenado por donde finalmente tomaremos como código RS , que tiene un decodificador de errores y borrado, y , lo que a su vez implica que MLD en el código interno será polinomial en el tiempo.
  • Decodificación de máxima verosimilitud (MLD): MLD es un método de decodificación para códigos de corrección de errores, que genera la palabra de código más cercana a la palabra recibida en la distancia de Hamming. La función MLD denotada por se define como sigue. Por cada .
  • Función de densidad de probabilidad  : una distribución de probabilidad en un espacio muestral es un mapeo de eventos de a números reales tal que para cualquier evento , y para dos eventos que se excluyen mutuamente y
  • Valor esperado : el valor esperado de una variable aleatoria discreta es

Algoritmo aleatorizado

Considere la palabra recibida que fue corrompida por un canal ruidoso . La siguiente es la descripción del algoritmo para el caso general. En este algoritmo, podemos decodificar y simplemente declarando un borrado en cada posición incorrecta y ejecutando los errores y el algoritmo de decodificación de borrado en el vector resultante.

Randomized_Decoder
Teniendo en cuenta: .

  1. Para cada , calcule .
  2. Establecer .
  3. Para cada , repita: Con probabilidad , establezca lo contrario .
  4. Ejecute el algoritmo de errores y borrado para el .

Teorema 1. Sea y una palabra recibida tal que exista una palabra de código tal que . Luego, el algoritmo determinista de GMD da como resultado .

Tenga en cuenta que un algoritmo de decodificación ingenuo para códigos concatenados puede corregir errores.

Lema 1. Sea válido el supuesto del teorema 1. Y si tiene errores y borrados (en comparación con ) después del Paso 1 , entonces

Observación. Si , se generará el algoritmo del paso 2 . El lema anterior dice que en la expectativa, este es de hecho el caso. Tenga en cuenta que esto no es suficiente para demostrar el teorema 1 , pero puede ser crucial en el desarrollo de variaciones futuras del algoritmo.

Prueba del lema 1. Para cada definición Esto implica que

A continuación para cada , definimos dos variables indicadoras :

Afirmamos que hemos terminado si podemos demostrar eso para cada :

Claramente, por definición

Además, por la linealidad de la expectativa, obtenemos

Para demostrar (2) consideramos dos casos: -th bloque está correctamente decodificado ( Caso 1 ), -th bloque está incorrectamente decodificado ( Caso 2 ):

Caso 1:

Tenga en cuenta que si entonces , e implica y .

Además, por definición tenemos

Caso 2:

En este caso, y

Desde que . Esto sigue a otro análisis de caso cuando o no.

Finalmente, esto implica

En las siguientes secciones, finalmente mostraremos que la versión determinista del algoritmo anterior puede realizar una decodificación única de hasta la mitad de su distancia de diseño.

Algoritmo aleatorio modificado

Tenga en cuenta que, en la versión anterior del algoritmo GMD en el paso "3", realmente no es necesario utilizar la aleatoriedad "nueva" para cada uno . Ahora creamos otra versión aleatoria del algoritmo GMD que usa la misma aleatoriedad para todos . Esta idea sigue el algoritmo siguiente.

Modified_Randomized_Decoder
Dado:, elegir al azar. Entonces cada para cada :

  1. Establecer .
  2. Calcular .
  3. Si , establece lo contrario .
  4. Ejecute el algoritmo de errores y borrado para el .

Para la demostración del Lema 1 , solo usamos la aleatoriedad para mostrar que

En esta versión del algoritmo GMD, observamos que

La segunda igualdad anterior se deriva de la elección de . La prueba del Lema 1 también se puede utilizar para mostrar la versión 2 de GMD. En la siguiente sección, veremos cómo obtener una versión determinista del algoritmo GMD eligiendo entre un conjunto de tamaño polinomial en contraposición al conjunto infinito actual .

Algoritmo determinista

Deja . Dado que para cada uno , tenemos

donde para algunos . Tenga en cuenta que para cada , el paso 1 de la segunda versión del algoritmo aleatorio genera lo mismo . Por lo tanto, debemos considerar todo el valor posible de . Esto da el algoritmo determinista a continuación.

Deterministic_Decoder
Dado:, para cada , repita lo siguiente.

  1. Calcular para .
  2. Establecer para todos .
  3. Si , establece lo contrario .
  4. Ejecute el algoritmo de errores y borrados para on . Sea la palabra de código correspondiente a la salida del algoritmo, si existe.
  5. Entre todas las salidas en 4, la salida más cercana a

Cada ciclo de 1 ~ 4 se puede ejecutar en tiempo polinomial , el algoritmo anterior también se puede calcular en tiempo polinomial. Específicamente, cada llamada a un decodificador de errores y borrados de errores lleva tiempo. Finalmente, el tiempo de ejecución del algoritmo anterior es donde está el tiempo de ejecución del decodificador de errores y borrados externos.

Ver también

Referencias

  • Notas de la conferencia de la Universidad de Buffalo sobre teoría de la codificación - Atri Rudra
  • Notas de la conferencia del MIT sobre la teoría de la codificación esencial - Madhu Sudan
  • Universidad de Washington - Venkatesan Guruswami
  • G. David Forney. Decodificación de distancia mínima generalizada. Transacciones IEEE sobre teoría de la información , 12: 125-131, 1966
Obtenido de " https://en.wikipedia.org/w/index.php?title=Generalized_minimum-distance_decoding&oldid=987847854 "