什么是polar code极化码

  为了实现可靠的信号传输,编码学家在过去的半个多世纪提出多种纠错码技术如里所码(RS码)、卷积码,Turbo码等,并在各种通信系统中取得了广泛的应用。但是以往所有实用的编码方法都未能到香农于1948年所给出的信道传输的容量极限(也称为香农界)。2008年在国际信息论ISIT会议上,Arikan首次提出了信道极化的概念,基于该理论,他给出了人类已知的第一种能够被严格证明达到信道容量的信道编码方法,并命名为极化码(Polar Code)。Polar码具有明确而简单的编码及译码算法。通过信道编码学者的不断努力,当前Polar码所能达到的纠错性能超过目前广泛使用的Turbo码、LDPC码。

  极化码(polar code)是由土耳其毕尔肯大学(bilkent)Erdal Arikan教授于2008年首次提出,其论文从理论上第一次严格证明了在二进制输入对称离散无记忆信道下,极化码可以“达到”香农容量,并且有着低的编码和译码复杂度。从某种意义上说,极化码“理论上”解决了近60年来信息论和编码领域一直想要解决的问题。

  虽然极化码的理论很优美,但其实际性能从其刚出现时还不太理想(“理论上”是指当码长趋向于无穷时的性能;“实际”是指有限长度码长)。但近年来,极化码实际构造方法和列表连续消去译码算法(list successive cancellaTIon decoding)等技术的提出,极化码的整体性能在某些应用场景中取得了和当前最先进的信道编码技术Turbo码和低密度奇偶校验码(LDPC码)相同或更优的性能。

  在这里我们再谈谈arikan教授发明极化码时所提到的2*2矩阵为核的极化码的三大要点:(以下三点,或者是极化码在信道编码中最核心的创新。)

  1.上鞅收敛:构造了一个信道变换,如果不断递归这个变换并随机挑选变换结果的话,则变换结果的巴氏参数(Bhattacharya parameter)构成一个随机过程。arikan证明这个随机过程是一个上鞅,再利用上鞅中的随机变量序列a.s收敛和按期望收敛,证明收敛结果为一个二值随机变量。再证明这个二值随机变量为0的概率是二元离散对称无记忆信道容量I, 推断证明码长n无穷的时候可以挑出约nI个巴氏参数逼近0的无失真子信道,这就证明了信道极化是信道容量可达的。FoundaTIon and trends里面polar章节,有另外一种证明方法,初等一些。

  2.SC译码:有了好码还需要有好的译码算法。香农和Gallager都已经证明,大部分码都是好码,只缺好的,多项式复杂度的译码算法。arikan使用信道变换中的递归结构,先译“坏”信道的结果,甚至冻结“坏”信道的译码结果为0(降低码率),然后作为“好”信道译码的依据。复杂度是超线性的,非常Nice.

PolarCode的更多相关文章

  1. 小小知识点(二十六)关于5G发展的28个核心问题,来自华为内部的深度解读

    本文来自微信公众号“腾讯深网”(ID:qqshenwang),作者 马关夏.36氪经授权转载. 一.5G先进性与行业应用 1.5G到底是什么?和4G比有什么不一样? 从国际电信联盟(ITU)的定义来看 ...

  2. 5G时代,会有什么奇葩事儿?

    ​ 在3GPP RAN第187次会议关于5G短码方案的讨论中,中国华为推荐的PolarCode方案获得认可,成为5G控制信道eMBB场景编码的最终解决方案.坦白讲,笔者在读这个新闻的时候,手里备着一本 ...

随机推荐

  1. PJ可能会用到的动态规划选讲-学习笔记

    PJ可能会用到的动态规划选讲-学习笔记 by Pleiades_Antares 难度和速度全部都是按照普及组来定的咯 数位状压啥就先不讲了 这里主要提到的都是比较简单的DP 一道思维数学巧题(补昨天) ...

  2. mobx 入门

    observable(可观察的数据) 数组 import { observable, isArrayLike } from 'mobx' const arr = observable(['a', 'b ...

  3. Beta冲刺(5/5)(麻瓜制造者)

    今日已完成 邓弘立:完成了图书馆新功能 符天愉:完成管理员用户查询,删除商品/需求以及注销功能 江郑:进行后台管理员的web开发 刘双玉:修改了商品搜索中数据返回类型不对的错误,添加了图书馆查询接口 ...

  4. CanalSharp.AspNetCore v0.0.4-支持输出到MongoDB

    一.多样输出支持 CanalSharp.AspNetCore是一个基于CanalSharp的适用于ASP.NET Core的一个后台任务组件,它可以随着ASP.NET Core实例的启动而启动,目前采 ...

  5. [Oracle] ROWNUM和分页

    rownum是oracle的一个伪劣,它的顺序依据从表中获取记录的顺序递增,这里要注意的是:由于记录在表中是无序存放的.因此你无法通过简单的rownum和order by的组合获得相似TOP N的结果 ...

  6. [NOIP2018]保卫王国

    嘟嘟嘟 由于一些知道的人所知道的,不知道的人所不知道的原因,我来发NOIP2018day2T3的题解了. (好像我只是个搬运工--) 这题真可以叫做NOIplus了,跟其他几道比较水的题果然不一样,无 ...

  7. Lock和Condition在JDK中LinkedBlockingQueue的应用

    Lock和Condition在JDK中LinkedBlockingQueue的应用,核心源码注释解析如下: import java.util.concurrent.LinkedBlockingQueu ...

  8. PHP获取目录下面所有文件和文件夹

    如果做一个在线的文件管理系统的话,那么首先必须知道怎么读取目录和文件,其实这个功能几行代码就可以实现了. <?php $dir = "D:/";  //要获取的目录 echo ...

  9. 1002-过河卒-洛谷-luogu-动态规划dp

    题目描述 棋盘上AA点有一个过河卒,需要走到目标BB点.卒行走的规则:可以向下.或者向右.同时在棋盘上CC点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点.因此称之为“马拦过河卒 ...

  10. 深入浅出的webpack构建工具---tree shaking打包性能优化(十二)

    阅读目录 1. 什么是tree-shaking? 2. 在webpack中如何使用 tree-shaking 呢? 3. 使用webpack-deep-scope-plugin 优化 回到顶部 1. ...