fbpx
Wikipedia

Algoritmo de Berlekamp-Welch

El algoritmo de Berlekamp-Welch, también conocido como el algoritmo de Welch-Berlekamp, lleva el nombre de Elwyn R. Berlekamp y Lloyd R. Welch.[1][2]​ Este es un algoritmo decodificador que corrige de manera eficiente los errores en los códigos Reed-Solomon para un código RS (n, k), basado en la vista original de Reed Solomon donde un mensaje se utiliza como coeficientes de un polinomio o se utiliza con la interpolación de Lagrange para generar el polinomio de grado < k para entradas y luego es aplicado a para crear una palabra de código codificada .[3][4]

El objetivo del decodificador es recuperar el polinomio de codificación original , utilizando las entradas conocidas y recibida la palabra en clave con posibles errores. También calcula un error polinomial donde corresponde a errores en la palabra de código recibida.[5][6]

Ecuaciones clave

Definiendo e = número de errores, el conjunto clave de n ecuaciones es

 

Donde E(ai) = 0 para los casos e cuando bi ≠ F (ai), y E (ai) ≠ 0 para los casos n-e sin error donde bi = F(ai). Estas ecuaciones no se pueden resolver directamente, sino definiendo Q () como el producto de E () y F ():

 

y agregando la restricción de que el coeficiente más significativo de E (ai) = ee = 1, el resultado conducirá a un conjunto de ecuaciones que se pueden resolver con álgebra lineal.

 
 
 

donde q = n - e - 1. Dado que ee está restringido a ser 1, las ecuaciones se convierten en:

 

resultando en un conjunto de ecuaciones que se pueden resolver usando álgebra lineal, con complejidad de tiempo O (n ^ 3).

El algoritmo comienza asumiendo el número máximo de errores e = ⌊(n-k)/2⌋. Si las ecuaciones no se pueden resolver (debido a la redundancia), e se reduce en 1 y el proceso se repite, hasta que las ecuaciones se pueden resolver o e se reduce a 0, lo que indica que no hay errores. Si Q () / E () tiene resto = 0, entonces F() = Q()/E() y los valores de la palabra de código F (ai) se calculan para las ubicaciones donde E(ai) = 0 para recuperar la palabra de código original. Si el resto ≠ 0, entonces se ha detectado un error incorregible.

Ejemplo

Considere RS (7,3) (n=7 k=3) definido en GF (7) con α = 3 y valores de entrada: ai = i-1: {0,1,2,3,4,5, 6}. El mensaje que se codificará sistemáticamente es {1,6,3}. Usando la interpolación de Lagrange, F (a i ) = 3 x 2 + 2 x + 1, y aplicando F (a i ) para un 4 = 3 a un 7 = 6, da como resultado la palabra de código {1,6,3,6, 1,2,2}. Suponga que ocurren errores en c 2 y c 5 que dan como resultado la palabra de código recibida {1,5,3,6,3,2,2}. Comienza con e = 2 y resuelve las ecuaciones lineales:

 


 


 

Comenzando desde la parte inferior de la matriz derecha, y la restricción e2 = 1:

 

 

  con resto = 0.

E(ai) = 0 en a2 = 1 y a5 = 4 Calcula F(a2 = 1) = 6 y F(a5 = 4) = 1 para producir la palabra de código corregida {1,6,3,6,1,2,2}.

Véase también

Referencias

  1. Error correction for algebraic block codes (en inglés), 27 de septiembre de 1983, consultado el 28 de marzo de 2021 .
  2. «Algebraic Codes on Lines, Planes, and Curves | Communications, information theory and signal processing». Cambridge University Press (en inglés). Consultado el 28 de marzo de 2021. 
  3. «US4633470A - Error correction for algebraic block codes». worldwide.espacenet.com. Consultado el 28 de marzo de 2021. 
  4. Berlekamp, Elwyn R. (1984). Algebraic coding theory (Rev. ed edición). Aegean Park Press. ISBN 0-89412-063-8. OCLC 10787423. Consultado el 28 de marzo de 2021. 
  5. «A simple algorithm for decoding Reed-Solomon codes and its relation to the Welch-Berlekamp algorithm». 
  6. Koetter, R.; Vardy, A. (2003-11). «Algebraic soft-decision decoding of Reed-Solomon codes». IEEE Transactions on Information Theory 49 (11): 2809-2825. ISSN 1557-9654. doi:10.1109/TIT.2003.819332. Consultado el 28 de marzo de 2021. 

Enlaces externos

  • MIT Lecture Notes on Essential Coding Theory – Dr. Madhu Sudan

algoritmo, berlekamp, welch, algoritmo, berlekamp, welch, también, conocido, como, algoritmo, welch, berlekamp, lleva, nombre, elwyn, berlekamp, lloyd, welch, este, algoritmo, decodificador, corrige, manera, eficiente, errores, códigos, reed, solomon, para, có. El algoritmo de Berlekamp Welch tambien conocido como el algoritmo de Welch Berlekamp lleva el nombre de Elwyn R Berlekamp y Lloyd R Welch 1 2 Este es un algoritmo decodificador que corrige de manera eficiente los errores en los codigos Reed Solomon para un codigo RS n k basado en la vista original de Reed Solomon donde un mensaje m 1 m k displaystyle m 1 cdots m k se utiliza como coeficientes de un polinomio F a i displaystyle F a i o se utiliza con la interpolacion de Lagrange para generar el polinomio F a i displaystyle F a i de grado lt k para entradas a 1 a k displaystyle a 1 cdots a k y luego F a i displaystyle F a i es aplicado a a k 1 a n displaystyle a k 1 cdots a n para crear una palabra de codigo codificada c 1 c n displaystyle c 1 cdots c n 3 4 El objetivo del decodificador es recuperar el polinomio de codificacion original F a i displaystyle F a i utilizando las entradas conocidas a 1 a n displaystyle a 1 cdots a n y recibida la palabra en clave b 1 b n displaystyle b 1 cdots b n con posibles errores Tambien calcula un error polinomial E a i displaystyle E a i donde E a i 0 displaystyle E a i 0 corresponde a errores en la palabra de codigo recibida 5 6 Indice 1 Ecuaciones clave 2 Ejemplo 3 Vease tambien 4 Referencias 5 Enlaces externosEcuaciones clave EditarDefiniendo e numero de errores el conjunto clave de n ecuaciones es b i E a i E a i F a i displaystyle b i E a i E a i F a i Donde E ai 0 para los casos e cuando bi F ai y E ai 0 para los casos n e sin error donde bi F ai Estas ecuaciones no se pueden resolver directamente sino definiendo Q como el producto de E y F Q a i E a i F a i displaystyle Q a i E a i F a i y agregando la restriccion de que el coeficiente mas significativo de E ai ee 1 el resultado conducira a un conjunto de ecuaciones que se pueden resolver con algebra lineal b i E a i Q a i displaystyle b i E a i Q a i b i E a i Q a i 0 displaystyle b i E a i Q a i 0 b i e 0 e 1 a i e 2 a i 2 e e a i e q 0 q 1 a i q 2 a i 2 q q a i q 0 displaystyle b i e 0 e 1 a i e 2 a i 2 cdots e e a i e q 0 q 1 a i q 2 a i 2 cdots q q a i q 0 donde q n e 1 Dado que ee esta restringido a ser 1 las ecuaciones se convierten en b i e 0 e 1 a i e 2 a i 2 e e 1 a i e 1 q 0 q 1 a i q 2 a i 2 q q a i q b i a i e displaystyle b i e 0 e 1 a i e 2 a i 2 cdots e e 1 a i e 1 q 0 q 1 a i q 2 a i 2 cdots q q a i q b i a i e resultando en un conjunto de ecuaciones que se pueden resolver usando algebra lineal con complejidad de tiempo O n 3 El algoritmo comienza asumiendo el numero maximo de errores e n k 2 Si las ecuaciones no se pueden resolver debido a la redundancia e se reduce en 1 y el proceso se repite hasta que las ecuaciones se pueden resolver o e se reduce a 0 lo que indica que no hay errores Si Q E tiene resto 0 entonces F Q E y los valores de la palabra de codigo F ai se calculan para las ubicaciones donde E ai 0 para recuperar la palabra de codigo original Si el resto 0 entonces se ha detectado un error incorregible Ejemplo EditarConsidere RS 7 3 n 7 k 3 definido en GF 7 con a 3 y valores de entrada ai i 1 0 1 2 3 4 5 6 El mensaje que se codificara sistematicamente es 1 6 3 Usando la interpolacion de Lagrange F a i 3 x 2 2 x 1 y aplicando F a i para un 4 3 a un 7 6 da como resultado la palabra de codigo 1 6 3 6 1 2 2 Suponga que ocurren errores en c 2 y c 5 que dan como resultado la palabra de codigo recibida 1 5 3 6 3 2 2 Comienza con e 2 y resuelve las ecuaciones lineales b 1 b 1 a 1 1 a 1 a 1 2 a 1 3 a 1 4 b 2 b 2 a 2 1 a 2 a 2 2 a 2 3 a 2 4 b 3 b 3 a 3 1 a 3 a 3 2 a 3 3 a 3 4 b 4 b 4 a 4 1 a 4 a 4 2 a 4 3 a 4 4 b 5 b 5 a 5 1 a 5 a 5 2 a 5 3 a 5 4 b 6 b 6 a 6 1 a 6 a 6 2 a 6 3 a 6 4 b 7 b 7 a 7 1 a 7 a 7 2 a 7 3 a 7 4 e 0 e 1 q 0 q 1 q 2 q 3 q 4 b 1 a 1 2 b 2 a 2 2 b 3 a 3 2 b 4 a 4 2 b 5 a 5 2 b 6 a 6 2 b 7 a 7 2 displaystyle begin bmatrix b 1 amp b 1 a 1 amp 1 amp a 1 amp a 1 2 amp a 1 3 amp a 1 4 b 2 amp b 2 a 2 amp 1 amp a 2 amp a 2 2 amp a 2 3 amp a 2 4 b 3 amp b 3 a 3 amp 1 amp a 3 amp a 3 2 amp a 3 3 amp a 3 4 b 4 amp b 4 a 4 amp 1 amp a 4 amp a 4 2 amp a 4 3 amp a 4 4 b 5 amp b 5 a 5 amp 1 amp a 5 amp a 5 2 amp a 5 3 amp a 5 4 b 6 amp b 6 a 6 amp 1 amp a 6 amp a 6 2 amp a 6 3 amp a 6 4 b 7 amp b 7 a 7 amp 1 amp a 7 amp a 7 2 amp a 7 3 amp a 7 4 end bmatrix begin bmatrix e 0 e 1 q0 q1 q2 q3 q4 end bmatrix begin bmatrix b 1 a 1 2 b 2 a 2 2 b 3 a 3 2 b 4 a 4 2 b 5 a 5 2 b 6 a 6 2 b 7 a 7 2 end bmatrix 1 0 6 0 0 0 0 5 5 6 6 6 6 6 3 6 6 5 3 6 5 6 4 6 4 5 1 3 3 5 6 3 5 6 3 2 3 6 2 3 1 5 2 5 6 1 6 1 6 e 0 e 1 q 0 q 1 q 2 q 3 q 4 0 2 2 2 1 6 5 displaystyle begin bmatrix 1 amp 0 amp 6 amp 0 amp 0 amp 0 amp 0 5 amp 5 amp 6 amp 6 amp 6 amp 6 amp 6 3 amp 6 amp 6 amp 5 amp 3 amp 6 amp 5 6 amp 4 amp 6 amp 4 amp 5 amp 1 amp 3 3 amp 5 amp 6 amp 3 amp 5 amp 6 amp 3 2 amp 3 amp 6 amp 2 amp 3 amp 1 amp 5 2 amp 5 amp 6 amp 1 amp 6 amp 1 amp 6 end bmatrix begin bmatrix e 0 e 1 q0 q1 q2 q3 q4 end bmatrix begin bmatrix 0 2 2 2 1 6 5 end bmatrix 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 e 0 e 1 q 0 q 1 q 2 q 3 q 4 4 2 4 3 3 1 3 displaystyle begin bmatrix 1 amp 0 amp 0 amp 0 amp 0 amp 0 amp 0 0 amp 1 amp 0 amp 0 amp 0 amp 0 amp 0 0 amp 0 amp 1 amp 0 amp 0 amp 0 amp 0 0 amp 0 amp 0 amp 1 amp 0 amp 0 amp 0 0 amp 0 amp 0 amp 0 amp 1 amp 0 amp 0 0 amp 0 amp 0 amp 0 amp 0 amp 1 amp 0 0 amp 0 amp 0 amp 0 amp 0 amp 0 amp 1 end bmatrix begin bmatrix e 0 e 1 q0 q1 q2 q3 q4 end bmatrix begin bmatrix 4 2 4 3 3 1 3 end bmatrix Comenzando desde la parte inferior de la matriz derecha y la restriccion e2 1 Q a i 3 x 4 1 x 3 3 x 2 3 x 4 displaystyle Q a i 3x 4 1x 3 3x 2 3x 4 E a i 1 x 2 2 x 4 displaystyle E a i 1x 2 2x 4 F a i Q a i E a i 3 x 2 2 x 1 displaystyle F a i Q a i E a i 3x 2 2x 1 con resto 0 E ai 0 en a2 1 y a5 4 Calcula F a2 1 6 y F a5 4 1 para producir la palabra de codigo corregida 1 6 3 6 1 2 2 Vease tambien EditarReed SolomonReferencias Editar Error correction for algebraic block codes en ingles 27 de septiembre de 1983 consultado el 28 de marzo de 2021 Algebraic Codes on Lines Planes and Curves Communications information theory and signal processing Cambridge University Press en ingles Consultado el 28 de marzo de 2021 US4633470A Error correction for algebraic block codes worldwide espacenet com Consultado el 28 de marzo de 2021 Berlekamp Elwyn R 1984 Algebraic coding theory Rev ed edicion Aegean Park Press ISBN 0 89412 063 8 OCLC 10787423 Consultado el 28 de marzo de 2021 A simple algorithm for decoding Reed Solomon codes and its relation to the Welch Berlekamp algorithm Koetter R Vardy A 2003 11 Algebraic soft decision decoding of Reed Solomon codes IEEE Transactions on Information Theory 49 11 2809 2825 ISSN 1557 9654 doi 10 1109 TIT 2003 819332 Consultado el 28 de marzo de 2021 Enlaces externos EditarMIT Lecture Notes on Essential Coding Theory Dr Madhu Sudan University at Buffalo Lecture Notes on Coding Theory Dr Atri RudraObtenido de https es wikipedia org w index php title Algoritmo de Berlekamp Welch amp oldid 137411443, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos