一种用于长码的快速LDPC码度分布优化方法
技术领域
本发明属于信道纠错编码领域,尤其涉及一种用于长码的快速LDPC码度分布优化方法。
背景技术
自香农(Shannon)信息论建立以来,信道编码理论在移动通信、深空通信与卫星通信、数据存储、文件传输以及数字音视频传输等领域获得了广泛应用。目前,正在研究的下一代网络(NGN)是软交换系统网、IPv6数据互联网、第四代移动通信网、宽带接入网以及智能光纤传输网等多种新一代网络技术的有机融合,要求网络具有更高的数据传输率、更大的系统容量、更高的频谱利用率、更兼容的信道环境和更高的服务质量(QoS)。面对下一代网络应用的挑战,现有的纠错编码技术很难满足其传输要求,于是一批新型高效的纠错编码技术应运而生,其中性能最好、计算复杂度最低的纠错码之一就是低密度奇偶校验(LDPC)码。LDPC码最早在上世纪60年代由Gallager提出,但受当时计算机处理能力的限制,以及缺少可行的译码算法,并未受到足够重视。随着计算机技术的增强和相关理论的发展,LDPC码又重新引起了人们的兴趣。研究表明,LDPC码具有逼近Shannon限的良好性能,其译码复杂度较低且结构灵活,目前己广泛应用于深空通信、光纤通信、数字音视频传输等领域,并成为第四代移动通信系统(4G)编码方案的强有力竞争者。
自LDPC码被“重新发现”以来,通信工程师和编码理论家进行了大量的研究工作。LDPC码的极限性能分析和构造方法设计是LDPC码研究的两个重要方向。结合极限性能分析实现高性能不规则LDPC码的构造,是LDPC码构造方法设计研究的一个最新趋势,这一方法实现了一些更加逼近香农限的不规则LDPC码的构造。LDPC码的性能研究表明,不规则LDPC码的性能与其度分布有直接关系。度分布优化是不规则LDPC码构造的一个关键技术,该技术一般包括两个方面:一是LDPC码性能估算或基于译码算法的具有固定度分布的一类LDPC码的性能估算;二是选择合适的优化算法。迄今为止,较为有效的度分布优化算法主要有以下两类:
A.基于构造具体矩阵估算度分布性能的度分布优化算法。采用优化算法搜索度分布空间,对每一种度分布采用PEG方法构造一个具体的LDPC码校验矩阵,然后用译码算法测试具体矩阵的性能,估算具有此种度分布的LDPC码矩阵的性能,作为优化算法的对比标准,选择具有最优性能的度分布。由于长码的构造和译码的运算复杂度太高,故此种算法只能通过构造中短码验证度分布的性能,不适合用于长码的较复杂的度分布优化。
B.基于连续密度进化或离散密度进化的性能估算方法和差分进化的优化算法实现度分布优化。Richardson等基于消息传递机制的置信传播(Belief Propagation)译码算法提出了密度进化分析(Density Evolution)的思想,并给出了密度进化的直接算法。通过跟踪译码器中传递消息的概率密度函数在迭代过程中的变化情况,分析译码收敛特性,得到特定信道下的门限值。这种迭代分析方法非常复杂,计算量巨大,每一次性能估算运算量巨大,需要较长的运算时间;随着度分布空间维数的增加,每一次度分布优化均需要非常长的时间。当度分布优化的过程中需要频繁更换度分布非零节点的度数时,这种度分布优化方法的缺点更为明显。离散密度进化虽然在运算量方面相对于连续密度进化有所降低,但并没有质的改变。性能运算的高复杂度降低了优化算法取值样本的规模,因此其优化性能受到了很大的限制。
发明内容
为克服现存技术的不足,本发明提出一种用于长码的快速LDPC码度分布优化方法。根据中心极限定理,当满足独立性假设的随机的变量节点其样本数量足够大时,变量节点的对数似然比(LLR)消息接近于高斯分布,采用高斯近似密度进化方法实现长码的度分布的性能估算,大大降低了度分布性能估算的计算复杂度。采用全局迭代的基于反射的单纯形优化算法,增加了初始种群的多样性,克服了优化算法局部收敛的缺点。由于性能估算方法的简化和全局迭代方法的应用,提高了度分布样本计算的广度和密度,度分布优化性能也相应得到了改善。
本发明技术方案如下所述:
预先设定变量节点的非零度分布系数的维数l,相应的l个度分布系数非零的变量节点的度数,校验节点的非零度分布系数的维数,以及度分布系数非零的校验节点的度数差,校验节点的度分布根据变量节点的具体度分布和码率计算确定。
按照下列步骤进行LDPC码的度分布优化:
第一步,阈值初始化,包括全局迭代阈值和单纯形顶点的平均距离阈值;
第二步,最优度分布初始化,随机赋值最优度分布的l个分量,并进行校正;
第三步,创建2l-2维单纯形,单纯形的每一个顶点对应一个度分布,将最优度分布作为单纯形的一个顶点,对其他每个顶点所对应度分布的l个分量随机赋值,并进行校正;
第四步,按照度分布的性能估计方法评估每个顶点的度分布性能,更新性能最差的顶点,每次顶点更新后计算单纯形顶点的平均距离;
第五步,若所述单纯形顶点的平均距离不小于单纯形顶点的平均距离阈值,则重复第四步,直到此单纯形顶点的平均距离小于单纯形顶点的平均距离阈值;
第六步,按照度分布的性能估计方法的评估结果选择并记录单纯形的最优顶点,其对应的度分布作为最优度分布;
第七步,根据全局迭代阈值判断是否符合全局迭代终止条件,如果是,优化结束;否则,返回第三步。
所述第四步中度分布的性能估计方法为高斯近似密度进化方法。
所述第二步和第三步中度分布的随机赋值和校正方法如下所示,其中Λ为具有l个分量的度分布向量:
所述随机赋值方法:
for i=1to l
Λi←Random[0,1]
end
i为度分布向量的分量的序号,Random[0,1]为区间[0,1]的随机数生成函数。
所述校正方法:
计算令Λi=Λi/sum,以满足
所述第四步中的顶点更新步骤如下,其中单纯形的2l-2个顶点用Λj(j=1,2,...,2l-2)表示:
(4-1).根据度分布的性能估计方法,找出最差的顶点ΛW和次最差的顶点Λw,
其中为第j个顶点的按照性能估计方法得到的评估结果,为(1≤j≤2l-2)中的最大值,为(1≤j≤2l-2)中除以外的最大值。
(4-2).计算最差的顶点ΛW的反射顶点Λr,
Λr=(1+α)ΛR-αΛW,
其中
0<α<1,其中ΛR为单纯形的除顶点ΛW外的其它2l-3个顶点的中心点,α为小于1的正实数。
(4-3).基于Λr搜索一个新的顶点Λn,使Λn的性能优于次最差顶点Λw的性能,用Λn替代ΛW形成一个新的单纯形,
所述基于Λr搜索一个新的顶点Λn的方法如下:
(4-3-1)如果Λr的某一个分量小于0,则将该分量加上一个远小于1的正实数δ,作为该分量的新分量值;如果Λr的某一个分量大于1,则将该分量减去一个远小于1的正实数δ,作为该分量的新分量值;
(4-3-2)如果新的Λr的某一个分量小于0或者大于1,则重复步骤(4-3-1);将新的Λr进行校正,使之满足度分布的要求;
(4-3-3)用度分布的性能估计方法,估计Λr的度分布性能,如果Λr的性能优于所述的次最差顶点Λw的性能,则Λr即为新的顶点Λn;否则,令Λr=(ΛR+Λr)/2,返回步骤(4-3-1)。
所述基于Λr搜索一个新的顶点Λn的具体方法如下:
(4-3-1a).重复下述过程,使顶点分量满足
for i=1to l
end
其中δ为远小于1的正数;
(4-3-2a).计算 令 以满足
(4-3-3a).按照性能估算方法获得Λr的评估结果如果那么
否则
Λr=(ΛR+Λr)/2
返回子步骤(4-3-1a)中。
所述第七步中,如果全局迭代次数小于全局迭代阈值,则返回第三步;否则终止全局迭代,将此时得到的最优度分布作为度分布优化的结果。
上述步骤中度分布的性能估计采用高斯近似密度进化方法。高斯近似密度进化理论和方法具体如下所述:
本发明使用高斯近似密度进化方法实现用于长码的LDPC码度分布的性能估算:
不规则二进制LDPC码的变量节点和校验节点的度分布λ和ρ如下:
其中,dl和dr分别表示变量节点和校验节点的最大度数。
高斯近似密度进化的迭代公式为
其中mu0为来自于信道的对数似然比(LLR)消息的均值,即变量节点的初始LLR消息的均值,为第k次迭代的校验节点的对数似然比消息的均值,校验节点的初始LLR消息函数
μ是均值为mu、方差为2mu的高斯密度。
使用高斯近似密度进化的迭代公式(以下简称迭代公式)进行度分布性能估计的步骤如下:
1.对变量节点的初始对数似然比消息的均值mu0初始化,mu0取一个较小的初值,将mu0代入高斯近似密度进化的迭代公式进行迭代计算,使第k次迭代的校验节点的对数似然比消息的均值
2.mu0=mu0+s,其中s为预先设定的迭代取值步长,将mu0代入迭代公式进行迭代计算;
3.判断是否成立,如果不成立,返回步骤2;如果成立,则记录此时的mu0作为性能评估结果。
本发明的有益效果是:
1.根据中心极限定理,当满足独立性假设的随机的变量节点其样本数量足够大时,变量节点的LLR消息接近于高斯分布,采用高斯近似密度进化方法实现长码的度分布的性能估算,大大降低了度分布性能估算的计算复杂度。
2.采用全局迭代的基于反射的单纯形优化算法,增加了初始种群的多样性,克服了优化算法局部收敛的缺点。
3.由于性能估算方法的简化和全局迭代方法的应用,提高了度分布样本计算的广度和密度,度分布优化性能也相应得到了改善。
附图说明
图1:度分布优化方案流程图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细介绍。
图1为本发明度分布优化方案的流程图。下面按照此流程图,给出了本发明的一个实施例,并用实验结果证明本发明方案的有效性。
首先设定变量节点的非零度分布系数的维数为7维,相应的度分布系数非零的变量节点的度数分别为2、3、5、9、17、21、29,校验节点的非零度分布系数的维数为2维,度分布系数非零的校验节点的度数差为1。LDPC码的码率为0.85。检验节点的度分布可以根据变量节点的度分布和码率计算确定。
度分布优化的具体步骤如下:
第一步,阈值初始化,包括全局迭代阈值和单纯形顶点的平均距离阈值;
全局迭代阈值为全局迭代的最大次数,本实施例设定为100;本实施例中,单纯形顶点的平均距离阈值设定为10-2;
第二步,最优度分布初始化,随机赋值最优度分布的7个分量,并进行校正;
第三步,创建12维单纯形,单纯形的每一个顶点对应一个度分布,将最优度分布作为单纯形的一个顶点,对其他每个顶点所对应的度分布的7个分量随机赋值,并进行校正;
第四步,按照度分布的性能估计方法评估每个顶点的度分布性能,更新性能最差的顶点,每次顶点更新后计算单纯形顶点的平均距离;
第五步,若所述单纯形顶点的平均距离不小于单纯形顶点的平均距离阈值0.01,则重复第四步,直到此单纯形顶点的平均距离小于单纯形顶点的平均距离阈值0.01;
第六步,按照度分布的性能估计方法的评估结果选择并记录单纯形的最优顶点,其对应的度分布作为最优度分布;
第七步,根据全局迭代阈值判断是否符合全局迭代终止条件,如果是,优化结束;否则,返回第三步。
所述第二步和第三步中度分布的随机赋值和校正方法如下所示,其中Λ为具有7个分量的度分布向量:
所述随机赋值方法:
for i=1to7
Λi←Random[0,1]
end
i为度分布向量的分量的序号,Random[0,1]为区间[0,1]的随机数生成函数。
所述校正方法:
计算令Λi=Λi/sum,以满足
所述第四步中的顶点更新步骤如下,其中单纯形的12个顶点用Λj(j=1,2,...,12)表示:
4a.根据性能估计方法,找出最差的顶点ΛW和次最差的顶点Λw,
其中为第j个顶点的按照性能估计方法得到的评估结果,为(1≤j≤12)中的最大值,为(1≤j≤12)中除以外的最大值。
4b.计算最差的顶点ΛW的反射顶点Λr,
Λr=(1+α)ΛR-αΛW,
其中
0<α<1,α为一常数。本实施例中,α=0.2。
4c.基于Λr搜索一个新的顶点Λn替代ΛW,从而形成一个新的单纯形,搜索过程如下:
i.重复下述过程,使顶点分量满足
for i=1to7
end
其中δ设置为10-5;
ii.计算 令 以满足
iii.按照性能估算方法获得Λr的评估结果如果那么
否则
Λr=(ΛR+Λr)/2
返回子步骤i中。
所述第七步中,如果全局迭代次数小于全局迭代阈值,即小于100次,则返回第三步;否则终止全局迭代,将此时得到的最优度分布作为度分布优化的结果。
上述步骤中度分布的性能估计采用高斯近似密度进化方法。高斯近似密度进化理论和方法具体如下所述:
N.Wiberg的研究[N.Wiberg,“Codes and Decoding on General Graphs,”Ph.D.dissertation,Linkoping Univ.,Linkoping,Sweden,1996.]表明,BP译码过程中传递的变量节点的对数似然比(LLR)消息逼近高斯分布。Sae-Young Chung等在文献[Sae-Young Chung,T.J.Richardson,and R.L.Urbanke,“Analysis of Sum-Product Decoding of Low-DensityParity-Check Codes Using a Gaussian Approximation,”IEEE Trans.Inform.Theory,47(2),657-670,Feb2001.]中也指出:即使信道输入不是高斯分布,根据中心极限定理,当满足独立性假设的随机的变量节点其样本数量足够大时,变量节点的LLR消息接近于高斯分布。
基于上述理论,本发明使用高斯近似密度进化方法实现用于长码的LDPC码度分布的性能估算:
不规则二进制LDPC码的变量节点度分布函数λ(x)和校验节点度分布函数ρ(x)如下:
其中,dl和dr分别表示变量节点和校验节点的最大度数。
高斯近似密度进化的迭代公式为
其中mu0为来自于信道的对数似然比消息的均值,即变量节点的初始LLR消息的均值,为第k次迭代的校验节点的对数似然比消息的均值,校验节点的初始LLR消息函数
μ是均值为mu、方差为2mu的高斯密度。
利用迭代公式,可验证对于具有度分布对(λ(x),ρ(x))的LDPC码校验矩阵,在初始LLR消息为mu0(假设mu0>0)时BP译码收敛的可能性;对于固定的度分布总可以验证使的mu0的最小值即每一种度分布对(λ(x),ρ(x))对应一个其中,表示译码器获得的初始信息量。一般来讲,相同码率下使上述收敛的的值越小,表示度分布(λ(x),ρ(x))的性能越好,即由度分布(λ(x),ρ(x))生成的校验矩阵能够正确译码所需的先验信息的平均值越小,表示此度分布的性能越好。根据中心极限定理,为了满足高斯分布假设,优化的度分布最好用于长码。
使用高斯近似密度进化的迭代公式(以下简称迭代公式)进行度分布性能估计的具体步骤如下:
1.mu0初始化,mu0取一个较小的初值,将mu0代入迭代公式进行迭代计算,使
2.mu0=mu0+s,其中s为预先设定的迭代取值步长,本实施例中s=0.001,将mu0代入迭代公式进行迭代计算;
3.判断是否成立,如果不成立,返回步骤2;如果成立,则记录此时的mu0作为性能评估结果。
下面表1是本实施例依照本专利方案得到的优化的度分布。
性能对比方面,我们使用表1优化的度分布,构造码长为40000、码率为0.85的校验矩阵;采用由离散密度进化和差分进化优化的码率为0.85的度分布,构造码长为40000、码率为0.85的检验矩阵。通过比较这两种校验矩阵的译码性能,来对比两种优化的度分布的性能。
表2是两种优化的度分布生成的校验矩阵的译码性能对比,说明了本专利方案的有效性。
表1:优化的度分布;采用本专利方法优化的码率为0.85的度分布。
表2:性能对比;对比采用离散密度进化和差分进化优化的度分布和采用本专利方法优化的度分布生成的校验矩阵的译码性能,信道类型为BSC信道。
表1:优化的度分布
表2:性能对比
信道误码率 |
效率指数 |
优化方法A的误帧率 |
优化方法B的误帧率 |
0.0195 |
1.082 |
9.09E-001 |
1.96E-001 |
0.0194 |
1.086 |
5.56E-001 |
8.30E-002 |
0.0193 |
1.091 |
1.70E-001 |
4.40E-002 |
0.0192 |
1.095 |
8.65E-002 |
2.80E-002 |
0.0191 |
1.1001 |
1.00E-002 |
1.90E-002 |
效率指数=(1-R)/(1-C),R为码率,C为BSC信道的信道容量。
优化方法A是指采用离散密度进化和差分进化进行度分布优化的方法。
优化方法B是指本专利采用的方法。