一种基于遗传算法的极化码译码方法与流程
1.本发明属于信道译码技术领域,涉及一种基于遗传算法的极化码译码方法。
背景技术:
2.极化码在新一代移动通信、卫星通信、深空探测等领域具有广阔的应用前景极化码编码的过程是选择合适的极化子信道来承载需要传输的数据和放置冻结比特,然后再进行运算的过程。
3.极化码的置信传播(belief propagation,bp)译码器在并行性上具有内在优势,可以有效改善串行译码时延高、吞吐率低等问题。而在置信传播列表(belief propagation list,bpl)译码算法中,相当于采用l个因子图互不相同的bp译码器同时译码,再从中选择较优结果进行输出,其中因子图的选取方式深刻影响着译码器的性能,合理选择因子图是提升bpl算法译码性能的关键所在。
4.现有的改变因子图结构的思想主要是交换输入序列的顺序,从而改变传统因子图迭代更新信息的结构,这样极有可能导致可靠性较低的比特信道用于传输信息比特,从而造成译码性能损失。除此之外,在传统bpl译码器中,l个不同的因子图采用同一个比特集进行译码,二者之间的适配度还存在较大的优化空间。
5.西安电子科技大学于2021年12月9日提交的发明专利申请cn114421974a公开了一种具有改进因子图选择方式的极化码bpl译码方法,结合排列因子图对应的错误概率上界及每个子信道的错误概率来选择因子图。
6.对于码长为n的极化码而言,因子图共包含log2n层结构,若考虑所有置换情况,则共有(log2n)!种因子图组成形式,且每一种因子图均有n!个候选比特集。当n数值偏大时,通过遍历的方式分别选取较优因子图与最优比特集的方法不切实际,因此,研究一种机器学习辅助的极化码译码方法具有重要意义。
技术实现要素:
7.针对现有极化码bpl译码方法存在的技术问题,本发明提供一种机器学习辅助的极化码译码方式,具体是一种基于遗传算法的极化码译码方法。
8.本发明保护一种基于遗传算法的极化码译码方法,包括以下步骤:步骤s1,发送端对输入信息进行极化码编码、调制,然后经无线信道发送出去;步骤s2,接收端接收到信号并进行解调,利用遗传算法从(log2n)!个因子图中筛选出译码性能较优的l个因子图,其中n为极化码码长,l为bpl译码器列表大小;步骤s3,利用遗传算法为筛选出的l个较优因子图匹配各自的最优比特集;步骤s4,接收端基于l个较优因子及其最优比特集进行bpl译码,得到译码结果并输出。
9.进一步的,步骤s2中,利用遗传算法从(log2n)!个因子图中筛选出译码性能较优的l个因子图具体包括以下步骤:
步骤s21,编号置换:基于极化码编码结构图进行标号,将每一层异或结构当前所处位置依次标记为1、2、
…
、n,其中n=(log2n)!,并将其作为初始因子图标号(1,2,...,n),在此基础上,对该结构图进行随机列置换得到q个不同的因子图,其中q为设定参数且q>l,在对各列结构进行置换时,对应的因子图标号也发生相应变化;步骤s22,生成因子图初始种:以步骤s21中得到的q个因子图标号组成因子图初始种,其中每个因子图标号视为初始种中的一个候选个体,代表整个搜索空间的一个解;步骤s23,计算适应度值并选择:bp译码器作为适应度函数,所得译码错误概率即为适应度值,种中的每一候选个体经过bp译码均得到各自的适应度值,基于q组适应度值,从所有候选个体中随机选取两个适应度值较好的个体作为父代;步骤s24,交叉与因子图结构适配:父代向量1的前半部分基因与父代向量2的后半部分基因结合,组成一个新的候选个体,当此候选个体不满足因子图中各层结构的互异性时,对其进行因子图结构适配;其中,进行因子图结构适配的方法为:出现重复标号时,保留位置靠前者,即保留位于向量前半部分的元素,同时统计向量中的缺失元素,并按照从小到大的顺序进行排列,依次对位置靠后的重复标号进行数值替换;步骤s25,重复步骤s23和步骤s24操作q次,得到q个新的候选个体;步骤s26,突变:对所有子代向量的元素进行突变;其中,对子代向量元素进行突变的方法为:进入该步骤的子代向量均满足元素互异,在此基础上,随机交换向量中任意两个元素的位置,即可得到变异后的子代;步骤s27,对当前种重复执行步骤s23至s26,达到最大进化代数t后停止,从最后一代种中挑选较优的l个候选个体,即为较优的l个因子图,其中t为设定参数。
10.进一步的,步骤s3中,利用遗传算法为筛选出的l个较优因子图匹配各自的最优比特集具体包括以下步骤:步骤s31,划定集合u:根据蒙特卡洛法计算出n个比特信道对应的可靠性值,得到各个比特信道的可靠性排序,挑选出可靠的比特信道组成集合i、不可靠的比特信道组成集合f,剩余作为不确定比特信道集合u,其中集合i和集合f中的元素数目相同,均为m,其中m为设定参数且2m<n;步骤s32,生成候选个体及码率适配:从(n-2m)!个可能的取值中随机选取p个,并与集合i和集合f共同构成完整的p个候选个体,组成比特集初始种,其中p为设定参数且p<(n-2m)!,对与既定码率rate不匹配的候选个体进行码率适配操作;步骤s33,计算适应度值并选择:对完成码率适配的p个候选个体分别进行bp译码得到p个适应度值,从中随机选取两个适应度值较好的个体作为父代;步骤s34,交叉并完成码率适配:将父代集合1中u的前半部分基因与父代集合2中u的后半部分基因结合,组成一个新的不确定比特信道集合,随后与集合i和集合f共同组成一个新的候选个体,对与既定码率rate不匹配的候选个体进行码率适配操作;步骤s35,重复步骤s33和s34的操作p次,得到p个新的候选个体;步骤s36,突变并完成码率适配:对所有子代集合的元素进行突变,并码率适配操作;
其中,对子代集合元素进行突变的方法为:针对当前子代集合,选择任意位置进行比特翻转,即相应位置上发生由冻结位到信息位,即元素由“0”到“1”或由信息位到冻结位,即元素由“1”到“0”的转变;步骤s37、对当前种重复执行步骤s33至s36,达到最大进化代数t后停止,从最后一代种中挑选最优个体,即为当前因子图的最优比特集,其中t为设定参数。
11.进一步的,步骤s32、s34、s36中,进行码率适配操作的方法为:根据当前系统既定码率rate以及集合i或集合f中的元素数目m,对不确定比特信道集合u中元素进行比特翻转,确保u中“1”的数目x满足x+m=n
×
rate。
12.本发明还保护一种基于遗传算法的极化码译码系统,包括发送端和接收端,所述发送端和所述接收端执行上述基于遗传算法的极化码译码方法。
13.与枚举遍历因子图或比特集的方法相比较,本发明以生物进化为原型,甄选出性能较为优异的l个极化码因子图,在此基础上,为其匹配最优比特集,提高了bpl译码性能,具有很好的收敛性,且计算时间少、鲁棒性高。
附图说明
14.图1为本发明提出的基于遗传算法的极化码译码方法流程框图;图2为本发明提出的基于遗传算法的较优因子图筛选流程图;图3为本发明实施例1中基于极化码编码结构图(码长n = 16)的标号方法示意图;图4为本发明提出的基于遗传算法的最优比特集筛选流程图。
具体实施方式
15.下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
16.实施例1为便于描述,本实施例以极化码码长n = 16、bpl译码器列表l = 4为例,阐述本发明公开的基于遗传算法的极化码译码方法,如图1所示。
17.步骤s1,发送端对输入信息进行极化码编码,极化码码长n=16,码率rate=0.5,编码结束后,对所得码字进行二进制相移键控调制,再将得到的序列通过无线信道传输至接收端。
18.应当理解的是,根据实际需要,也可以为极化码配置为其他码长或码率,也可选用其他调制方式,并且如何进行极化码编码以及如何进行调制属于本领域现有技术,并不是本发明讨论的核心内容。
19.步骤s2,接收端接收到信号并进行解调,利用遗传算法从4!=24个因子图中筛选出译码性能较优的4个因子图,如图2所示,具体包括以下步骤:步骤s21,编号置换:基于极化码编码结构图(参照图3)进行标号,将每一层异或结构当前所处位置依
次标记为1、2、3、4,并将其作为初始因子图标号(1,2,3,4),在此基础上,对该结构图进行随机列置换得到6个不同的因子图(即q设定为6),同时对应得到6个不同的因子图编号,假设分别为(1,4,2,3)、(2,4,1,3)、(4,3,1,2)、(3,4,1,2)、(1,3,4,2)、(2,1,3,4)。
20.步骤s22,生成因子图初始种:以步骤s21中得到的6个因子图标号组成因子图初始种,其中每个因子图标号视为初始种中的一个候选个体,代表整个搜索空间的一个解。
21.步骤s23,计算适应度值并选择:bp译码器作为适应度函数,所得译码错误概率即为适应度值,种中的每一候选个体(即因子图标号)经过bp译码均得到各自的适应度值,基于6组适应度值,从所有候选个体中随机选取两个适应度值较好的个体作为父代,假设初次选取的父代向量分别为(1,4,2,3)和(2,4,1,3)。
22.此处的“较好”指的是适应度值排名靠前的个体,并不需要限定其具体排名,具体在前多少排名的适应度值排名中选择,结合种中的个体数量确定,不限定最好是因为要形成多个子代向量,形成种,下同。
23.步骤s24,交叉与因子图结构适配:父代向量1的前半部分基因(1,4)与父代向量2的后半部分基因(1,3)结合,组成一个新的候选个体(1,4,1,3),此候选个体出现了两个“1”,为保障因子图中各层结构的互异性,需对交叉所得子代向量进行因子图结构适配操作,其中,进行因子图结构适配的方法为:保留位置靠前者,即保留位于向量前半部分的元素“1”,同时统计向量中的缺失元素,此处为元素“2”,并按照从小到大的顺序进行排列,依次对位置靠后的重复标号进行数值替换,此处是利用元素“2”替换位置靠后的元素“1”,从而因子图结构适配后的候选个体为(1,4,2,3)。
24.步骤s25,重复步骤s23和步骤s24操作6次,得到6个新的候选个体;步骤s26,突变:为保证当前种中个体的多样性,对所有子代向量的元素进行突变,以防止算法陷入局部最优解,具体方法为:随机交换向量中任意两个元素的位置,即可得到变异后的子代;例如当前子代向量为(1,4,2,3),随机挑选其中任意两个元素,互换位置即可得到突变后的新向量(1,2,4,3),其他5个新的候选个体进行同样操作。
25.步骤s27,完成突变后的6个子代向量重新组成新的种,对当前种重复执行步骤s23至s26,模拟物种的自然进化过程,达到最大进化代数100(即t取100)后停止,从最后一代种中挑选较优的4个候选个体,即为较优的4个因子图。
26.步骤s3,利用遗传算法为筛选出的4个较优因子图匹配各自的最优比特集,如图4所示,具体包括以下步骤:步骤s31,划定集合u:根据蒙特卡洛法计算出16个比特信道对应的可靠性值,假定分别为{0.000,0.887,1.419,1.225,2.011,1.882,2.665,1.791,2.763,3.654,2.417,2.955,3.875,3.013,4.103,4.468},得到各个比特信道的可靠性排序{0,1,3,2,7,5,4,10,6,8,11,13,9,12,14,15},挑选出可靠的比特信道组成集合i={13,9,12,14,15}(信息位“1”)、不可靠的比特信道组成集合f={0,1,3,2,7}(冻结位“0”),剩余作为不确定比特信道集合u={5,4,10,6,
8,11},此处集合i和集合f中的元素数目相同,均为5。
27.通过上述操作,可以将搜索范围从16!缩小至6!,从而加快遗传算法的收敛速度,利用遗传算法还可以对可靠性处于“中间地带”的比特信道进行精准定位,判定其传输信息比特或冻结比特。
28.步骤s32,生成候选个体及码率适配:不确定比特信道集合u中仍然有6个元素,共有6!=720种可能的取值,从中随机选取10个(即p设定为10),并与集合i和集合f共同构成完整的10个候选个体,组成比特集初始种,对与既定码率rate不匹配的候选个体进行码率适配操作,以确保极化码码率不发生变化。
29.具体而言,假设随机生成的候选个体中集合u的取值为:{0,1,1,0,0,0},此时u中包含的信息比特个数(即“1”的个数)为2,而集合i中信息比特个数为5,为保证码率rate为0.5(既定码率),需对u中元素进行比特翻转使信息比特个数固定为3,也就是需要将1个“0”翻转为“1”,此处对第5个位置进行翻转得到码率适配后的集合为{0,1,1,0,1,0},其他9个候选个体进行同样操作。此处翻转的位置可以规定位置靠前者优先翻转,或位置靠后者优先翻转,或随机选取翻转位置,并不影响码率适配结果。
30.步骤s33,计算适应度值并选择:对完成码率适配的10个候选个体分别进行bp译码得到10个适应度值(即译码错误概率),从中随机选取两个适应度值较好的个体作为父代。
31.假设本次取出的两个父代集合分别为{0,1,1,0,1,0}和{1,0,1,0,1,0}因为集合i和集合f固定,此处为便于表述,仅列举集合u中元素,下面同样如此。
32.步骤s34,交叉并完成码率适配:将父代集合1中u的前半部分基因{0,1,1}与父代集合2中u的后半部分基因{0,1,0}结合,组成一个新的不确定比特信道集合{0,1,1,0,1,0},随后与集合i和集合f共同组成一个新的候选个体。由于该集合中的信息比特个数恰好为3,即码率为0.5,则可以跳过码率适配操作。
33.步骤s35,重复步骤s33和s34的操作10次,得到10个新的候选个体,从而保证种规模不变。
34.步骤s36,突变并完成码率适配:为保证当前种中个体的多样性,需对所得子代集合元素进行突变,防止算法陷入局部最优解,对所有子代集合的元素进行突变,具体方法为:针对当前子代集合,选择任意位置进行比特翻转,即相应位置上发生由冻结位到信息位,即元素由“0”到“1”或由信息位到冻结位,即元素由“1”到“0”的转变。
35.例如,当前子代集合为{0,1,1,0,1,0},将其中任意位置的元素进行比特翻转即可得到突变后的新向量,此处翻转第2位,得到{0,0,1,0,1,0},随后进行码率适配操作以确保其中信息比特个数为3,即码率rate为0.5,则得到集合{0,0,1,1,1,0},其他9个候选个体进行相同操作即可。
36.步骤s37,完成突变和码率适配后的10个子代集合重新组成新的种,对当前种重复执行步骤s33至s36,模拟物种的自然进化过程,达到最大进化代数100(即t取100)后停止,从最后一代种中挑选最优个体,即为当前因子图的最优比特集,其他因子图的匹配方
法相同。
37.步骤s4,接收端基于4个较优因子及其最优比特集进行bpl译码,得到译码结果并输出。
38.实施例2一种基于遗传算法的极化码译码系统,包括发送端和接收端,所述发送端和所述接收端执行实施例1所述的基于遗传算法的极化码译码方法。
39.显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
技术特征:
1.一种基于遗传算法的极化码译码方法,其特征在于,包括以下步骤:步骤s1,发送端对输入信息进行极化码编码、调制,然后经无线信道发送出去;步骤s2,接收端接收到信号并进行解调,利用遗传算法从(log2n)!个因子图中筛选出译码性能较优的l个因子图,其中n为极化码码长,l为bpl译码器列表大小;步骤s3,利用遗传算法为筛选出的l个较优因子图匹配各自的最优比特集;步骤s4,接收端基于l个较优因子及其最优比特集进行bpl译码,得到译码结果并输出。2.根据权利要求1所述的基于遗传算法的极化码译码方法,其特征在于,步骤s2中,利用遗传算法从(log2n)!个因子图中筛选出译码性能较优的l个因子图具体包括以下步骤:步骤s21,编号置换:基于极化码编码结构图进行标号,将每一层异或结构当前所处位置依次标记为1、2、
…
、n,其中n=(log2n)!,并将其作为初始因子图标号(1,2,...,n),在此基础上,对该结构图进行随机列置换得到q个不同的因子图,其中q为设定参数且q>l,在对各列结构进行置换时,对应的因子图标号也发生相应变化;步骤s22,生成因子图初始种:以步骤s21中得到的q个因子图标号组成因子图初始种,其中每个因子图标号视为初始种中的一个候选个体,代表整个搜索空间的一个解;步骤s23,计算适应度值并选择:bp译码器作为适应度函数,所得译码错误概率即为适应度值,种中的每一候选个体经过bp译码均得到各自的适应度值,基于q组适应度值,从所有候选个体中随机选取两个适应度值较好的个体作为父代;步骤s24,交叉与因子图结构适配:父代向量1的前半部分基因与父代向量2的后半部分基因结合,组成一个新的候选个体,当此候选个体不满足因子图中各层结构的互异性时,对其进行因子图结构适配;步骤s25,重复步骤s23和步骤s24操作q次,得到q个新的候选个体;步骤s26,突变:对所有子代向量的元素进行突变;步骤s27,对当前种重复执行步骤s23至s26,达到最大进化代数t后停止,从最后一代种中挑选较优的l个候选个体,即为较优的l个因子图,其中t为设定参数。3.根据权利要求2所述的基于遗传算法的极化码译码方法,其特征在于,步骤s24中,进行因子图结构适配的方法为:出现重复标号时,保留位置靠前者,即保留位于向量前半部分的元素,同时统计向量中的缺失元素,并按照从小到大的顺序进行排列,依次对位置靠后的重复标号进行数值替换。4.根据权利要求2所述的基于遗传算法的极化码译码方法,其特征在于,步骤s26中,对子代向量元素进行突变的方法为:随机交换向量中任意两个元素的位置,即可得到变异后的子代。5.根据权利要求1所述的基于遗传算法的极化码译码方法,其特征在于,步骤s3中,利用遗传算法为筛选出的l个较优因子图匹配各自的最优比特集具体包括以下步骤:步骤s31,划定集合u:根据蒙特卡洛法计算出n个比特信道对应的可靠性值,得到各个比特信道的可靠性排序,挑选出可靠的比特信道组成集合i、不可靠的比特信道组成集合f,剩余作为不确定比特信道集合u,其中集合i和集合f中的元素数目相同,均为m,其中m为设定参数且2m<n;步骤s32,生成候选个体及码率适配:从(n-2m)!个可能的取值中随机选取p个,并与集合i和集合f共同构成完整的p个候选个体,组成比特集初始种,其中p为设定参数且p<
(n-2m)!,对与既定码率rate不匹配的候选个体进行码率适配操作;步骤s33,计算适应度值并选择:对完成码率适配的p个候选个体分别进行bp译码得到p个适应度值,从中随机选取两个适应度值较好的个体作为父代;步骤s34,交叉并完成码率适配:将父代集合1中u的前半部分基因与父代集合2中u的后半部分基因结合,组成一个新的不确定比特信道集合,随后与集合i和集合f共同组成一个新的候选个体,对与既定码率rate不匹配的候选个体进行码率适配操作;步骤s35,重复步骤s33和s34的操作p次,得到p个新的候选个体;步骤s36,突变并完成码率适配:对所有子代集合的元素进行突变,并码率适配操作;步骤s37、对当前种重复执行步骤s33至s36,达到最大进化代数t后停止,从最后一代种中挑选最优个体,即为当前因子图的最优比特集,其中t为设定参数。6.根据权利要求5所述的基于遗传算法的极化码译码方法,其特征在于,步骤s36中,对子代集合元素进行突变的方法为:针对当前子代集合,选择任意位置进行比特翻转,即相应位置上发生由冻结位到信息位,即元素由“0”到“1”或由信息位到冻结位,即元素由“1”到“0”的转变。7.根据权利要求5所述的基于遗传算法的极化码译码方法,其特征在于,步骤s32、s34、s36中,进行码率适配操作的方法为:根据当前系统既定码率rate以及集合i或集合f中的元素数目m,对不确定比特信道集合u中元素进行比特翻转,确保u中“1”的数目x满足x+m=n
×
rate。8.一种基于遗传算法的极化码译码系统,包括发送端和接收端,其特征在于,所述发送端和所述接收端执行权利要求1-7任意一项所述的基于遗传算法的极化码译码方法。
技术总结
本发明公开了一种基于遗传算法的极化码译码方法,首先,发送端对输入信息进行极化码编码、调制,然后经无线信道发送出去;其次,接收端接收到信号并进行解调,利用遗传算法从(log2)!个因子图中筛选出译码性能较优的L个因子图,其中为极化码码长,L为BPL译码器列表大小;然后,利用遗传算法为筛选出的L个较优因子图匹配各自的最优比特集;最后,接收端基于L个较优因子及其最优比特集进行BPL译码,得到译码结果并输出。本发明以生物进化为原型,甄选出性能较为优异的L个极化码因子图,在此基础上,为其匹配最优比特集,提高了BPL译码性能,具有很好的收敛性,且计算时间少、鲁棒性高。高。高。