Articulo de referencia

Métodos de decodificación

En teoría de la codificación , la decodificación es el proceso de traducir los mensajes recibidos a palabras clave de un código dado . Existen muchos métodos comunes para asigna...

En teoría de la codificación , la decodificación es el proceso de traducir los mensajes recibidos a palabras clave de un código dado . Existen muchos métodos comunes para asignar mensajes a palabras clave. Estos se utilizan a menudo para recuperar mensajes enviados a través de un canal ruidoso , como un canal binario simétrico .

Notación

doF2norte{\displaystyle C\subset \mathbb {F} _{2}^{n}}se considera un código binario con la longitudnorte{\displaystyle n};incógnita,y{\displaystyle x,y}serán elementos deF2norte{\displaystyle \mathbb {F} _{2}^{n}}; yd(incógnita,y){\displaystyle d(x,y)}es la distancia entre esos elementos.

Decodificación del observador ideal

A uno se le puede dar el mensajeincógnitaF2norte{\displaystyle x\in \mathbb {F} _{2}^{n}}, entonces la decodificación del observador ideal genera la palabra clave.ydo{\displaystyle y\in C}El proceso da como resultado esta solución:

PAG(y enviadoincógnita recibió){\displaystyle \mathbb {P} (y{\mbox{ enviado}}\mid x{\mbox{ recibido}})}

Por ejemplo, una persona puede elegir la palabra clave.y{\displaystyle y}que es más probable que se reciba como el mensajeincógnita{\displaystyle x}después de la transmisión.

Convenciones de decodificación

Cada palabra clave no tiene una probabilidad predecible: puede haber más de una palabra clave con la misma probabilidad de transformarse en el mensaje recibido. En tal caso, el emisor y el/los receptor/es deben acordar previamente una convención de decodificación. Algunas convenciones populares incluyen:

  1. Solicitar que se vuelva a enviar la palabra clave : solicitud de repetición automática . 
  2. Elija cualquier palabra clave aleatoria del conjunto de palabras clave más probables que esté más cerca de esa.
  3. Si le sigue otro código , marque las partes ambiguas de la palabra clave como borraduras y espere que el código externo las desambigüe.
  4. Informe al sistema de cualquier fallo de decodificación.

decodificación de máxima verosimilitud

Dado un vector recibidoincógnitaF2norte{\displaystyle x\in \mathbb {F} _{2}^{n}}La decodificación de máxima probabilidad elige una palabra clave.ydo{\displaystyle y\in C}que maximiza

PAG(incógnita recibióy enviado){\displaystyle \mathbb {P} (x{\mbox{ recibido}}\mid y{\mbox{ enviado}})},

es decir, la palabra clavey{\displaystyle y}que maximiza la probabilidad de queincógnita{\displaystyle x}fue recibido, dado quey{\displaystyle y}fue enviado. Si todas las palabras clave tienen la misma probabilidad de ser enviadas, entonces este esquema es equivalente a la decodificación del observador ideal. De hecho, por el teorema de Bayes ,

PAG(incógnita recibióy enviado)=PAG(incógnita recibió,y enviado)PAG(y enviado)=PAG(y enviadoincógnita recibió)PAG(incógnita recibió)PAG(y enviado).{\displaystyle {\begin{aligned}\mathbb {P} (x{\mbox{ recibido}}\mid y{\mbox{ enviado}})&{}={\frac {\mathbb {P} (x{\mbox{ recibido}},y{\mbox{ enviado}})}{\mathbb {P} (y{\mbox{ enviado}})}}\\&{}=\mathbb {P} (y{\mbox{ enviado}}\mid x{\mbox{ recibido}})\cdot {\frac {\mathbb {P} (x{\mbox{ recibido}})}{\mathbb {P} (y{\mbox{ enviado}})}}.\end{aligned}}}

Al fijarPAG(incógnita recibió){\displaystyle \mathbb {P} (x{\mbox{ recibido}})},incógnita{\displaystyle x}se reestructura y PAG(y enviado){\displaystyle \mathbb {P} (y{\mbox{ enviado}})}es constante ya que todas las palabras clave tienen la misma probabilidad de ser enviadas. Por lo tanto, PAG(incógnita recibióy enviado){\displaystyle \mathbb {P} (x{\mbox{ recibido}}\mid y{\mbox{ enviado}})} se maximiza en función de la variabley{\displaystyle y}precisamente cuando PAG(y enviadoincógnita recibió){\displaystyle \mathbb {P} (y{\mbox{ enviado}}\mid x{\mbox{ recibido}})} se maximiza y la reclamación se deriva de ello.

Al igual que con la decodificación del observador ideal, se debe acordar una convención para la decodificación no única.

El problema de decodificación de máxima verosimilitud también puede modelarse como un problema de programación entera . [ 1 ]

El algoritmo de decodificación de máxima verosimilitud es una instancia del problema de "marginalizar una función producto" que se resuelve aplicando la ley distributiva generalizada . [ 2 ]

decodificación de distancia mínima

Dado un vector recibidoincógnitaF2norte{\displaystyle x\in \mathbb {F} _{2}^{n}}La decodificación de distancia mínima elige una palabra clave .ydo{\displaystyle y\in C}para minimizar la distancia de Hamming :

d(incógnita,y)=|{i:incógnitaiyi}|{\displaystyle d(x,y)=|\{i:x_{i}\not =y_{i}\}|}

Es decir, elige la palabra clave.y{\displaystyle y}que sea lo más cercano posible aincógnita{\displaystyle x}.

Tenga en cuenta que si la probabilidad de error en un canal discreto sin memoriapag{\displaystyle p}es estrictamente menor que la mitad, entonces la decodificación de distancia mínima es equivalente a la decodificación de máxima verosimilitud , ya que si

d(incógnita,y)=d,{\displaystyle d(x,y)=d,\,}

entonces:

PAG(y recibióincógnita enviado)=(1pag)nortedpagd=(1pag)norte(pag1pag)d{\displaystyle {\begin{aligned}\mathbb {P} (y{\mbox{ recibido}}\mid x{\mbox{ enviado}})&{}=(1-p)^{nd}\cdot p^{d}\\&{}=(1-p)^{n}\cdot \left({\frac {p}{1-p}}\right)^{d}\\\end{aligned}}}

lo cual (dado que p es menor que la mitad) se maximiza minimizando d .

La decodificación de distancia mínima también se conoce como decodificación del vecino más cercano . Puede realizarse con la ayuda de una matriz estándar o de forma automatizada . La decodificación de distancia mínima es un método de decodificación adecuado cuando se cumplen las siguientes condiciones:

  1. La probabilidadpag{\displaystyle p}Que se produzca un error es independiente de la posición del símbolo.
  2. Los errores son eventos independientes : un error en una posición del mensaje no afecta a otras posiciones. 

Estas suposiciones pueden ser razonables para transmisiones a través de un canal binario simétrico . Sin embargo, pueden resultar irrazonables para otros soportes, como un DVD , donde un solo arañazo en el disco puede provocar un error en muchos símbolos o códigos adyacentes.

Al igual que con otros métodos de decodificación, es necesario acordar una convención para la decodificación no única.

Decodificación del síndrome

La decodificación de síndrome es un método altamente eficiente para decodificar un código lineal sobre un canal ruidoso , es decir, uno en el que se producen errores. En esencia, la decodificación de síndrome es una decodificación de distancia mínima que utiliza una tabla de búsqueda reducida . Esto es posible gracias a la linealidad del código. [ 3 ]

Supongamos quedoF2norte{\displaystyle C\subset \mathbb {F} _{2}^{n}}es un código lineal de longitudnorte{\displaystyle n}y distancia mínimad{\displaystyle d}con matriz de verificación de paridadH{\displaystyle H}Entonces claramentedo{\displaystyle C}es capaz de corregir hasta

t=d12{\displaystyle t=\left\lfloor {\frac {d-1}{2}}\right\rfloor }

errores cometidos por el canal (ya que si no más det{\displaystyle t}Si se producen errores, la decodificación de distancia mínima seguirá decodificando correctamente la palabra clave transmitida incorrectamente.

Ahora supongamos que una palabra claveincógnitaF2norte{\displaystyle x\in \mathbb {F} _{2}^{n}}se envía a través del canal y el patrón de errormiF2norte{\displaystyle e\in \mathbb {F} _{2}^{n}}ocurre. Entoncesz=incógnita+mi{\displaystyle z=x+e}se recibe. La decodificación de distancia mínima ordinaria buscaría el vectorz{\displaystyle z}en una tabla de tamaño|do|{\displaystyle |C|}para la coincidencia más cercana, es decir, un elemento (no necesariamente único)dodo{\displaystyle c\in C}con

d(do,z)d(y,z){\displaystyle d(c,z)\leq d(y,z)}

a pesar deydo{\displaystyle y\in C}La decodificación del síndrome aprovecha la propiedad de la matriz de paridad que:

Hincógnita=0{\displaystyle Hx=0}

a pesar deincógnitado{\displaystyle x\in C}. El síndrome de los recibidosz=incógnita+mi{\displaystyle z=x+e}se define como:

Hz=H(incógnita+mi)=Hincógnita+Hmi=0+Hmi=Hmi{\displaystyle Hz=H(x+e)=Hx+He=0+He=He}

Para realizar la decodificación ML en un canal binario simétrico , hay que consultar una tabla precalculada de tamaño2nortek{\displaystyle 2^{n-k}}, mapeoHmi{\displaystyle He}ami{\displaystyle e}.

Tenga en cuenta que esto ya tiene una complejidad significativamente menor que la de una decodificación de matriz estándar .

Sin embargo, bajo el supuesto de que no más det{\displaystyle t}Se produjeron errores durante la transmisión, el receptor puede consultar el valor.Hmi{\displaystyle He}en una tabla de tamaño aún más reducida

i=0t(nortei){\displaystyle {\begin{matrix}\sum _{i=0}^{t}{\binom {n}{i}}\\\end{matrix}}}

Decodificación de listas

decodificación del conjunto de información

This is a family of Las Vegas-probabilistic methods all based on the observation that it is easier to guess enough error-free positions, than it is to guess all the error-positions.

The simplest form is due to Prange: Let G{\displaystyle G} be the k×n{\displaystyle k\times n} generator matrix of C{\displaystyle C} used for encoding. Select k{\displaystyle k} columns of G{\displaystyle G} at random, and denote by G{\displaystyle G'} the corresponding submatrix of G{\displaystyle G}. With reasonable probability G{\displaystyle G'} will have full rank, which means that if we let c{\displaystyle c'} be the sub-vector for the corresponding positions of any codeword c=mG{\displaystyle c=mG} of C{\displaystyle C} for a message m{\displaystyle m}, we can recover m{\displaystyle m} as m=cG1{\displaystyle m=c'G'^{-1}}. Hence, if we were lucky that these k{\displaystyle k} positions of the received word y{\displaystyle y} contained no errors, and hence equalled the positions of the sent codeword, then we may decode.

If t{\displaystyle t} errors occurred, the probability of such a fortunate selection of columns is given by (ntk)/(nk)exp(tk/n){\displaystyle \textstyle {\binom {n-t}{k}}/{\binom {n}{k}}\approx \exp(-tk/n)}.

This method has been improved in various ways, e.g. by Stern[4] and Canteaut and Sendrier.[5]

Partial response maximum likelihood

Partial response maximum likelihood (PRML) is a method for converting the weak analog signal from the head of a magnetic disk or tape drive into a digital signal.

Viterbi decoder

A Viterbi decoder uses the Viterbi algorithm for decoding a bitstream that has been encoded using forward error correction based on a convolutional code. The Hamming distance is used as a metric for hard decision Viterbi decoders. The squaredEuclidean distance is used as a metric for soft decision decoders.

Optimal decision decoding algorithm (ODDA)

Optimal decision decoding algorithm (ODDA) for an asymmetric TWRC system.[6]

See also

References

  1. Feldman, Jon; Wainwright, Martin J.; Karger, David R. (March 2005). "Using Linear Programming to Decode Binary Linear Codes". IEEE Transactions on Information Theory. 51 (3): 954–972. CiteSeerX 10.1.1.111.6585. doi:10.1109/TIT.2004.842696. S2CID 3120399.
  2. Aji, Srinivas M.; McEliece, Robert J. (March 2000). "The Generalized Distributive Law"(PDF). IEEE Transactions on Information Theory. 46 (2): 325–343. doi:10.1109/18.825794.
  3. Beutelspacher, Albrecht ; Rosenbaum, Ute (1998). Geometría proyectiva . Prensa de la Universidad de Cambridge . pag. 190.ISBN  0-521-48277-1.
  4. Stern, Jacques (1989). «Un método para encontrar palabras clave de pequeño peso». Teoría y aplicaciones de la codificación . Notas de clase en informática. Vol. 388. Springer-Verlag . págs. 106–113 . doi : 10.1007/BFb0019850 . ISBN   978-3-540-51643-9.
  5. Ohta, Kazuo; Pei, Dingyi, eds. (1998). Avances en criptología — ASIACRYPT'98 . Lecture Notes in Computer Science. Vol. 1514. pp. 187–199 . doi : 10.1007/3-540-49649-1 . ISBN   978-3-540-65109-3. S2CID 37257901 . 
  6. Siamack Ghadimi (2020), Algoritmo óptimo de decodificación de decisiones (ODDA) para un sistema TWRC asimétrico; , Revista Universal de Ingeniería Eléctrica y Electrónica

Lecturas adicionales