Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Decodificación de códigos LDPC en canal de Rayleigh con algoritmos genéticos

Mónica Liberatori, Leonardo J. Arnone, Adriana G. Scandurra, Jorge Castiñeira Moreira

Published Jan 1, 2011• 0 citations
OpenAlex

Abstract

En este trabajo se propone la decodificación de Códigos Low Density Parity Check (LDPC) mediante un decodificador que utiliza una combinación de Algorimos Genéticos (GA, Genetic Algorithms) con Lógica Mayoritaria. La selección de GA obedece a la capacidad de los mismos para resolver problemas de optimización complejos, basándose en principios de la evolución natural de una población cuyos individuos se evalúan de acuerdo a una función de ajuste. El tipo de decodificación propuesto en este trabajo ha arrojado valores de Probabilidad Binaria de Error (BER, Bit Error Rate) comparables con la comportamiento del algoritmo tradicional de decodificación suma-producto para un canal de comunicaciones inalámbricas. La ventaja adicional de la decodificación propuesta frente a la tradicional es que no precisa conocer información de la relación Señal a Ruido en el canal.

Related papers

Estructuras y características de desempeño de los códigos LDPC (Low-Density Parity-Check Codes)

Wilson Giovanni Castañeda Barbosa

Este trabajo presenta el análisis de las estructuras y características de\ndesempeño de los códigos LDPC (Low-Density Parity-Check Codes), los\ncuales son una clase de códigos lineales de bloque que proporcionan un\nrendimiento cercano a la Capacidad utilizando decodificación iterativa.\nEn principio se presenta la idea general de un sistema de comunicaciones\ny por medio de un diagrama de bloques se muestra cómo está\nconformado tal sistema. Después se sigue con la explicación del concepto\nde codificación y la razón por la cual se necesita de ésta para la\ntransmisión o almacenamiento de información. Además se dan las\ndefiniciones de algunos parámetros utilizados en este campo, incluyendo\nel gran aporte de Shannon con sus teoremas.\nPosteriormente se realiza una revisión general de las familias de códigos\nde corrección de error presentes en la literatura, definiendo sus\nestructuras y diferencias. Luego de esta revisión se da una introducción a\nlos códigos LDPC, en donde se explica la forma de codificación y los\ndistintos algoritmos de decodificación para estos códigos.\nFinalmente, se realiza el análisis del tipo de códigos LDPC basados en\narreglos y se muestran los resultados de las simulaciones realizadas. Se\npresenta la definición del fenómeno de error-floor y conjuntos absorbentes\nlos cuales afectan el rendimiento de los códigos LDPC en las regiones de\nbajo BER (Bit-Error Rate). Se estudia el efecto de la cuantización en el\nrendimiento de los decodificadores de los códigos LDPC basados en\narreglos. Así mismo, basados en el estudio anterior se analiza el resultado\nde la variación de los pesos de las columnas de las matrices de\ncomprobación de paridad para dichos códigos.\nAl final de la tesis se incluyen los códigos de los programas realizados,\njunto con una breve descripción de ellos, y se detalla un programa\ninteractivo basado en MatLab para la enseñanza de comunicaciones\ndigitales.

•Oct 1, 2013•0 citations

Diseño de decodificadores de altas prestaciones para código LDPC

F. Angarita

RESUMENEn esta tesis se han investigado los algoritmos de decodificación para códigos de comprobación de paridad de baja densidad (LDPC) y las arquitecturas para la implementación hardware de éstos.El trabajo realizado se centra en los algoritmos del tipo de intercambio de mensajes para códigos estructurados los cuales se incluyen en varios estándares de comunicaciones.Inicialmente se han evaluado las prestaciones de los algoritmos existentes Sum-product, Min-Sum y las principales variantes de este último (Min-Sum con escalado y Min-Sum con offset).Además, se ha realizado un análisis de precisión finita utilizando los códigos LDPC de los estándares IEEE 802.3an,IEEE 802.11n e IEEE 802.16e.Posteriormente se han propuesto dos algoritmos basados en el algoritmo Min-Sum, denominados Min-Sum entero y Min-Sum modificado con corrección.La complejidad de éstos es menor que las de los algoritmos estudiados anteriormente y además permiten una implementación hardware eficiente.Por otra parte, se han estudiado diferentes métodos de actualización de los algoritmos de decodificación: por inundación, por capas horizontales (layered) y por capas verticales (shuffled), y se ha propuesto un nuevo método por capas verticales entrelazadas (x-shuffled) que consigue mejorar la tasa de decodificación.Tras el estudio algorítmico, se han realizado implementaciones hardware con diferentes arquitecturas para los algoritmos y métodos de actualización evaluados y propuestos.En la mayoría de algoritmos implementados se requiere el cálculo de los dos primeros mínimos, por lo que inicialmente se realiza un estudio de las arquitecturas hardware para realizar este cálculo y se ha propuesto una nueva arquitectura de menor complejidad.En segundo lugar se ha realizado una comparación de las prestaciones hardware de los diferentes algoritmos con las arquitecturas de referencia: completamente paralela y parcialmente paralela basada en memorias.También se han propuesto dos arquitecturas enfocadas a la alta velocidad, la cuales se implementan con el algoritmo Sum-Product.La primera es una modificación de la arquitectura Sliced Message-Passing que consigue una reducción en el área de la implementación, y la segunda, es una arquitectura específica para el método de actualización propuesto x-shuffled que alcanza tasas de decodificación muy altas.Finalmente, se han implementado los algoritmos propuestos con la arquitectura layered obteniendo implementaciones hardware eficientes con baja área y muy alta tasa de decodificación.Estas últimas consiguen un ratio entre tasa de decodificación y área mejor que las implementa-III ciones existentes en la literatura.Por último, se ha evaluado el comportamiento de los algoritmos de decodificación estudiados en la zona de baja tasa de error, donde las prestaciones se suelen degradar debido a la aparición de un suelo de error.Para ello se ha implementado un simulador hardware usando dispositivos FPGA.La tasa de datos alcanzada con el simulador hardware diseñado es superior a la de otros simuladores documentados en la literatura.En la zona de baja tasa de error el algoritmo propuesto Min-Sum modificado con corrección presenta un mejor comportamiento que el resto de algoritmos evaluados, consiguiendo bajar el suelo de error varios órdenes de magnitud.

•Jul 19, 2013•0 citations

Reconciliación de errores mínimamente interactiva en distribución cuántica de claves

Jesús Martínez-Mateo, David Elkouss, Alex Ciurana Aguilar +2 more

Algunos trabajos recientes han desarrollado varias alternativas a Cascade, entre las cuales destacan aquellas basadas en el uso de técnicas de codificación modernas. Por ejemplo, a través del uso de códigos Low-Density Parity-Check (LDPC) hoy día encontramos varias propuestas que permiten mejorar la eficiencia de la reconciliación de clave para ratios de error elevados. Al utilizar códigos LDPC tan sólo se requiere un único uso del canal de comunicación. Estas propuestas se basan en una técnica conocida como “codificación de síndrome” que permite aplicar métodos de corrección de errores para reconciliar cadenas aleatorias correlacionadas. En una de estas propuestas aplicamos dos técnicas conocidas en codificación, cómo son la perforación y el acortado de símbolos, para adaptar en tiempo real el ratio de información proporcionado por el síndrome intercambiado.

•Sep 19, 2011•0 citations

Códigos convolucionales con propiedades predicibles correctoras de errores

Jordi Miravet Comellas

Se usan los códigos convolucionales extensivamente en las telecomunicaciones, en parte por la facilidad en que corrigen errores y en parte por la existencia de algoritmos rápidos de descodificación. Un código convolucional binario utiliza una matriz $r \\times n$ binaria (las entradas son ceros o unos) y una secuencia de bits $x_0,x_1,x_2,\\ldots$ que corresponde al mensaje por enviar. Sean $u_i=(x_i,x_{i+1},\\ldots,x_{i+r})$ vectores de longitud $r$, y $v_i=u_iG$ vectores de longitud $n$. Observamos que todos los cálculos se hacen módulo $2$. Se envian los vectores $v_0,v_k,v_{2k},\\ldots$, donde $k$ es un número entre $1$ y $r-1$. Supongamos que se reciben los vectores $w_i=v_i+e_i$, donde $e_i$ es el error que ha ocurrido durante la transmisión. El algoritmo de Viterbi considera todas las posibilidades de descodificación y cuando empiezan a ocurrir errores se siguen todas las posibilidades hasta un límite de errores fijado. Se rechazan los caminos que llevan demasiados errores y se sigue hasta que se hayan rechazado todos los caminos excepto uno. Las matrices $G$ que se usan en la práctica han sido elegidas heurísticamente. O sea,se han probado varias matrices $G$ y se han elegido las matrices que son las más fiables para corregir errores. En esta propuesta, se propone encontrar una manera de predecir cuantos errores (dependiendo de alguna distribución de probabilidad) se pueden corregir utilizando una matriz determinada. Se sabe que para los códigos de bloques de longitud $n$ y distancia mínima $d$ se corrigen hasta $\\lfloor \\frac{d-1}{2} \\rfloor$ errores en cada $n$ bits de una palabra con probabilidad $1$. Nos gustaría hallar matrices $G$ con la siguiente propiedad. Cuando un error ocurre, el número de errores en una posible (pero incorrecta) descodificación crece rápido, y por lo tanto, se puede descartar en poco tiempo. Sea $G$ una matriz $r \\times n$ de rango $n$. Si $xG=yG$ y la distancia entre $x$ y $y$ es grande, y además $x$ corresponde a la codificación que queremos descodificar, escogiendo la descodificación de $y$ se espera que el número de errores crezca rápido. Por lo tanto, puede que sea deseable utilizar matrices $G$ con la propiedad que $uG=0$ implica que $u$ tiene peso grande. (Si $xG=yG$ entonces $(x-y)G=0$ y por lo tanto la distancia entre $x$ y $y$ es grande.) Sea $H$ la matrix $(r-n) \\times r$ con la propiedad $HG=0$. Queremos probar matrices $G$ para las cuales la matriz $H$ tiene la propiedad que los vectores del subespacio generado por las filas de $H$ no tienen peso peque\\~no. {\\bf Primer Objetivo} Escribir un programa que nos deja probar la hipótesis. Sea $G$ una matriz binario $10 \\times 5$. \\\\ Generar secuencia $v$ de $100$ bits, a\\~nadiendo 10 bits de ceros al inicio y al final de la secuencia. Sea $k=3$. De los 120 bits generamos $5 \\times 120/3= 200$ bits (por lo tanto la tasa de información es $100/200=1/2$.) Genera una secuencia $e$ de 200 bits de peso $Bin(200, \\frac{1}{10})$ de errores. Descodifica $v+e$ con el algoritmo de Viterbi rechazando caminos que llevan más de dos/tres errores. Comprueba la descodificación. Aplica el progama 30 veces para una matriz aleatoria $G$ de rango $5$ y una matriz $G$ que es una matriz comprobadora de paridad para un código bloque de longitud $10$, dimensión $5$ y distancia mínima $4$. {\\bf Segundo Objetivo} Análisis de los datos obtenidos para ver si en la práctica es mejor utilizar matrices $G$ que son matrices comprobadoras de paridad para códigos de bloques. Análisis de los datos para predecir cuantos errores se pueden corregir (depende de una probabilidad) utilizando una matriz determinada.

•Jan 27, 2010•0 citations

Códigos Verificadores de Paridade de Baixa Densidade

Hugerles S. Silva, J. E. P. de Farias, Marcelo Sampaio de Alencar

Neste artigo sao apresentados aspectos gerais sobre a construcao, codificacao e decodificacao dos codigos verificadores de paridade de baixa densidade (LDPC – Low-Density Parity- Check). Essa classe de codigos, conhecida por proporcionar excelentes desempenhos quando aplicados em uma variedade de canais de comunicacao, e baseada em matrizes de verificacao de paridade esparsas. Quando comparado a outros esquemas de codificacao, os codigos LDPC apresentam uma maior capacidade de correcao de erros e um algoritmo de decodificacao menos complexo. Um algoritmo foi construido no MatLab para avaliar o desempenho da taxa de erro de bit (BER – Bit Error Rate) para enlaces opticos. Resultados recentemente publicados foram utilizados para validar o algoritmo.

Revista de Tecnologia da Informação e Comunicação•Oct 30, 2016•0 citations

Códigos polares en teoría de la información clásica y cuántica.

Sergio Enrique Cristancho Sánchez

Desde el trabajo seminal de Shannon en 1948, uno de los objetivos centrales de la teoría de códigos ha sido encontrar códigos que alcancen la capacidad de canal. Este también ha sido el caso en el contexto cuántico, tanto para transmisión de información clásica, como cuántica. Los códigos polares, inicialmente desarrollados por Arikan en 2008 y luego extendidos a canales cuánticos por Wilde y Guha en 2011, son códigos que alcanzan asintóticamente la capacidad de canal al aprovechar el fenómeno de polarización de canales. Además, los códigos polares utilizan un algoritmo de decodificación práctico. El propósito de este trabajo de grado es hacer una revisión de los códigos polares clásicos y cuánticos, y los principios y contexto en los que se originan.

•Jan 1, 2021•0 citations
En este trabajo se propone la decodificación de Códigos Low Density Parity Check (LDPC) mediante un decodificador que utiliza una combinación de Algorimos Genéticos (GA, Genetic Algorithms) con Lógica Mayoritaria. La selección de GA obedece a la capacidad de los mismos para resolver problemas de optimización complejos, basándose en principios de la evolución natural de una población cuyos individuos se evalúan de acuerdo a una función de ajuste. El tipo de decodificación propuesto en este trabajo ha arrojado valores de Probabilidad Binaria de Error (BER, Bit Error Rate) comparables con la comportamiento del algoritmo tradicional de decodificación suma-producto para un canal de comunicaciones inalámbricas. La ventaja adicional de la decodificación propuesta frente a la tradicional es que no precisa conocer información de la relación Señal a Ruido en el canal.
Este trabajo presenta el análisis de las estructuras y características de\ndesempeño de los códigos LDPC (Low-Density Parity-Check Codes), los\ncuales son una clase de códigos lineales de bloque que proporcionan un\nrendimiento cercano a la Capacidad utilizando decodificación iterativa.\nEn principio se presenta la idea general de un sistema de comunicaciones\ny por medio de un diagrama de bloques se muestra cómo está\nconformado tal sistema. Después se sigue con la explicación del concepto\nde codificación y la razón por la cual se necesita de ésta para la\ntransmisión o almacenamiento de información. Además se dan las\ndefiniciones de algunos parámetros utilizados en este campo, incluyendo\nel gran aporte de Shannon con sus teoremas.\nPosteriormente se realiza una revisión general de las familias de códigos\nde corrección de error presentes en la literatura, definiendo sus\nestructuras y diferencias. Luego de esta revisión se da una introducción a\nlos códigos LDPC, en donde se explica la forma de codificación y los\ndistintos algoritmos de decodificación para estos códigos.\nFinalmente, se realiza el análisis del tipo de códigos LDPC basados en\narreglos y se muestran los resultados de las simulaciones realizadas. Se\npresenta la definición del fenómeno de error-floor y conjuntos absorbentes\nlos cuales afectan el rendimiento de los códigos LDPC en las regiones de\nbajo BER (Bit-Error Rate). Se estudia el efecto de la cuantización en el\nrendimiento de los decodificadores de los códigos LDPC basados en\narreglos. Así mismo, basados en el estudio anterior se analiza el resultado\nde la variación de los pesos de las columnas de las matrices de\ncomprobación de paridad para dichos códigos.\nAl final de la tesis se incluyen los códigos de los programas realizados,\njunto con una breve descripción de ellos, y se detalla un programa\ninteractivo basado en MatLab para la enseñanza de comunicaciones\ndigitales.
RESUMENEn esta tesis se han investigado los algoritmos de decodificación para códigos de comprobación de paridad de baja densidad (LDPC) y las arquitecturas para la implementación hardware de éstos.El trabajo realizado se centra en los algoritmos del tipo de intercambio de mensajes para códigos estructurados los cuales se incluyen en varios estándares de comunicaciones.Inicialmente se han evaluado las prestaciones de los algoritmos existentes Sum-product, Min-Sum y las principales variantes de este último (Min-Sum con escalado y Min-Sum con offset).Además, se ha realizado un análisis de precisión finita utilizando los códigos LDPC de los estándares IEEE 802.3an,IEEE 802.11n e IEEE 802.16e.Posteriormente se han propuesto dos algoritmos basados en el algoritmo Min-Sum, denominados Min-Sum entero y Min-Sum modificado con corrección.La complejidad de éstos es menor que las de los algoritmos estudiados anteriormente y además permiten una implementación hardware eficiente.Por otra parte, se han estudiado diferentes métodos de actualización de los algoritmos de decodificación: por inundación, por capas horizontales (layered) y por capas verticales (shuffled), y se ha propuesto un nuevo método por capas verticales entrelazadas (x-shuffled) que consigue mejorar la tasa de decodificación.Tras el estudio algorítmico, se han realizado implementaciones hardware con diferentes arquitecturas para los algoritmos y métodos de actualización evaluados y propuestos.En la mayoría de algoritmos implementados se requiere el cálculo de los dos primeros mínimos, por lo que inicialmente se realiza un estudio de las arquitecturas hardware para realizar este cálculo y se ha propuesto una nueva arquitectura de menor complejidad.En segundo lugar se ha realizado una comparación de las prestaciones hardware de los diferentes algoritmos con las arquitecturas de referencia: completamente paralela y parcialmente paralela basada en memorias.También se han propuesto dos arquitecturas enfocadas a la alta velocidad, la cuales se implementan con el algoritmo Sum-Product.La primera es una modificación de la arquitectura Sliced Message-Passing que consigue una reducción en el área de la implementación, y la segunda, es una arquitectura específica para el método de actualización propuesto x-shuffled que alcanza tasas de decodificación muy altas.Finalmente, se han implementado los algoritmos propuestos con la arquitectura layered obteniendo implementaciones hardware eficientes con baja área y muy alta tasa de decodificación.Estas últimas consiguen un ratio entre tasa de decodificación y área mejor que las implementa-III ciones existentes en la literatura.Por último, se ha evaluado el comportamiento de los algoritmos de decodificación estudiados en la zona de baja tasa de error, donde las prestaciones se suelen degradar debido a la aparición de un suelo de error.Para ello se ha implementado un simulador hardware usando dispositivos FPGA.La tasa de datos alcanzada con el simulador hardware diseñado es superior a la de otros simuladores documentados en la literatura.En la zona de baja tasa de error el algoritmo propuesto Min-Sum modificado con corrección presenta un mejor comportamiento que el resto de algoritmos evaluados, consiguiendo bajar el suelo de error varios órdenes de magnitud.
Algunos trabajos recientes han desarrollado varias alternativas a Cascade, entre las cuales destacan aquellas basadas en el uso de técnicas de codificación modernas. Por ejemplo, a través del uso de códigos Low-Density Parity-Check (LDPC) hoy día encontramos varias propuestas que permiten mejorar la eficiencia de la reconciliación de clave para ratios de error elevados. Al utilizar códigos LDPC tan sólo se requiere un único uso del canal de comunicación. Estas propuestas se basan en una técnica conocida como “codificación de síndrome” que permite aplicar métodos de corrección de errores para reconciliar cadenas aleatorias correlacionadas. En una de estas propuestas aplicamos dos técnicas conocidas en codificación, cómo son la perforación y el acortado de símbolos, para adaptar en tiempo real el ratio de información proporcionado por el síndrome intercambiado.
Se usan los códigos convolucionales extensivamente en las telecomunicaciones, en parte por la facilidad en que corrigen errores y en parte por la existencia de algoritmos rápidos de descodificación. Un código convolucional binario utiliza una matriz rtimesnr \\times nrtimesn binaria (las entradas son ceros o unos) y una secuencia de bits x0,x1,x2,ldotsx_0,x_1,x_2,\\ldotsx0​,x1​,x2​,ldots que corresponde al mensaje por enviar. Sean ui=(xi,xi+1,ldots,xi+r)u_i=(x_i,x_{i+1},\\ldots,x_{i+r})ui​=(xi​,xi+1​,ldots,xi+r​) vectores de longitud rrr, y vi=uiGv_i=u_iGvi​=ui​G vectores de longitud nnn. Observamos que todos los cálculos se hacen módulo 222. Se envian los vectores v0,vk,v2k,ldotsv_0,v_k,v_{2k},\\ldotsv0​,vk​,v2k​,ldots, donde kkk es un número entre 111 y r−1r-1r−1. Supongamos que se reciben los vectores wi=vi+eiw_i=v_i+e_iwi​=vi​+ei​, donde eie_iei​ es el error que ha ocurrido durante la transmisión. El algoritmo de Viterbi considera todas las posibilidades de descodificación y cuando empiezan a ocurrir errores se siguen todas las posibilidades hasta un límite de errores fijado. Se rechazan los caminos que llevan demasiados errores y se sigue hasta que se hayan rechazado todos los caminos excepto uno. Las matrices GGG que se usan en la práctica han sido elegidas heurísticamente. O sea,se han probado varias matrices GGG y se han elegido las matrices que son las más fiables para corregir errores. En esta propuesta, se propone encontrar una manera de predecir cuantos errores (dependiendo de alguna distribución de probabilidad) se pueden corregir utilizando una matriz determinada. Se sabe que para los códigos de bloques de longitud nnn y distancia mínima ddd se corrigen hasta lfloorfracd−12rfloor\\lfloor \\frac{d-1}{2} \\rfloorlfloorfracd−12rfloor errores en cada nnn bits de una palabra con probabilidad 111. Nos gustaría hallar matrices GGG con la siguiente propiedad. Cuando un error ocurre, el número de errores en una posible (pero incorrecta) descodificación crece rápido, y por lo tanto, se puede descartar en poco tiempo. Sea GGG una matriz rtimesnr \\times nrtimesn de rango nnn. Si xG=yGxG=yGxG=yG y la distancia entre xxx y yyy es grande, y además xxx corresponde a la codificación que queremos descodificar, escogiendo la descodificación de yyy se espera que el número de errores crezca rápido. Por lo tanto, puede que sea deseable utilizar matrices GGG con la propiedad que uG=0uG=0uG=0 implica que uuu tiene peso grande. (Si xG=yGxG=yGxG=yG entonces (x−y)G=0(x-y)G=0(x−y)G=0 y por lo tanto la distancia entre xxx y yyy es grande.) Sea HHH la matrix (r−n)timesr(r-n) \\times r(r−n)timesr con la propiedad HG=0HG=0HG=0. Queremos probar matrices GGG para las cuales la matriz HHH tiene la propiedad que los vectores del subespacio generado por las filas de HHH no tienen peso peque\\~no. {\\bf Primer Objetivo} Escribir un programa que nos deja probar la hipótesis. Sea GGG una matriz binario 10times510 \\times 510times5. \\\\ Generar secuencia vvv de 100100100 bits, a\\~nadiendo 10 bits de ceros al inicio y al final de la secuencia. Sea k=3k=3k=3. De los 120 bits generamos 5times120/3=2005 \\times 120/3= 2005times120/3=200 bits (por lo tanto la tasa de información es 100/200=1/2100/200=1/2100/200=1/2.) Genera una secuencia eee de 200 bits de peso Bin(200,frac110)Bin(200, \\frac{1}{10})Bin(200,frac110) de errores. Descodifica v+ev+ev+e con el algoritmo de Viterbi rechazando caminos que llevan más de dos/tres errores. Comprueba la descodificación. Aplica el progama 30 veces para una matriz aleatoria GGG de rango 555 y una matriz GGG que es una matriz comprobadora de paridad para un código bloque de longitud 101010, dimensión 555 y distancia mínima 444. {\\bf Segundo Objetivo} Análisis de los datos obtenidos para ver si en la práctica es mejor utilizar matrices GGG que son matrices comprobadoras de paridad para códigos de bloques. Análisis de los datos para predecir cuantos errores se pueden corregir (depende de una probabilidad) utilizando una matriz determinada.
Neste artigo sao apresentados aspectos gerais sobre a construcao, codificacao e decodificacao dos codigos verificadores de paridade de baixa densidade (LDPC – Low-Density Parity- Check). Essa classe de codigos, conhecida por proporcionar excelentes desempenhos quando aplicados em uma variedade de canais de comunicacao, e baseada em matrizes de verificacao de paridade esparsas. Quando comparado a outros esquemas de codificacao, os codigos LDPC apresentam uma maior capacidade de correcao de erros e um algoritmo de decodificacao menos complexo. Um algoritmo foi construido no MatLab para avaliar o desempenho da taxa de erro de bit (BER – Bit Error Rate) para enlaces opticos. Resultados recentemente publicados foram utilizados para validar o algoritmo.
Desde el trabajo seminal de Shannon en 1948, uno de los objetivos centrales de la teoría de códigos ha sido encontrar códigos que alcancen la capacidad de canal. Este también ha sido el caso en el contexto cuántico, tanto para transmisión de información clásica, como cuántica. Los códigos polares, inicialmente desarrollados por Arikan en 2008 y luego extendidos a canales cuánticos por Wilde y Guha en 2011, son códigos que alcanzan asintóticamente la capacidad de canal al aprovechar el fenómeno de polarización de canales. Además, los códigos polares utilizan un algoritmo de decodificación práctico. El propósito de este trabajo de grado es hacer una revisión de los códigos polares clásicos y cuánticos, y los principios y contexto en los que se originan.