System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 纠错码码表生成方法和基于生成码表的编解码方法技术_技高网

纠错码码表生成方法和基于生成码表的编解码方法技术

技术编号:43868049 阅读:5 留言:0更新日期:2024-12-31 18:54
提供了一种纠错码码表生成方法和基于生成码表的编解码方法。该纠错码码表生成方法包括:确定作为纠错目标的序列码的有限字符表和相应的纠错码的码表大小,并基于所述有限字符表和纠错错误种类生成纠错特征序列,所述纠错特征序列用于定义所述码表的基于所述纠错错误种类的纠错错误数目;基于所述纠错特征序列确定特征序列,特征掩码和平移量;基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵;以及,响应于所述动态规划矩阵的损失函数小于等于预定阈值,确定与迭代完成的每个动态规划矩阵对应的码表中的两个码字,以获得纠错码码表。这样,可以实现高性能的纠错码码表生成。

【技术实现步骤摘要】

本申请涉及数据纠错,更为具体地说,涉及一种纠错码码表生成方法和基于生成码表的编解码方法


技术介绍

1、序列码存储,例如dna存储作为新兴技术,越来越追求高密度、长期稳定性和大容量。而在序列码存储过程中,因为存储环境导致复杂的错误出现,使得纠错码的设计变得具有挑战。

2、这里,纠错码的基本思路可以理解为在序列空间上定义一组(一个或多个)函数,通过这些函数对接收到的序列进行评估,这些函数通常用来检测和纠正序列中的错误。如果接收到的序列的函数值符合预期,即与预先定义的规则相匹配,那么可以将其视为正确的序列;否则,根据不同的函数值结果进行判断或纠正,尽可能恢复原始信息。

3、因此,期望提供改进的纠错码码表生成技术以高性能地生成纠错码码表。


技术实现思路

1、本申请实施例提供了一种纠错码码表生成方法,其基于定义预定纠错错误种类的纠错错误数目的纠错特征序列来迭代动态规划矩阵以使得动态规划矩阵对应的码表的任意两个码字基于所述预定纠错错误种类的纠错错误数目可区分,实现高性能的纠错码码表生成。

2、本申请实施例进一步提供了基于生成码表的编解码方法,其通过码表基于预定纠错错误种类的纠错能力,实现高性能的序列编解码。

3、根据本申请的一方面,提供了一种纠错码码表生成方法,包括:确定作为纠错目标的序列码的有限字符表和相应的纠错码的码表大小,并基于所述有限字符表和纠错错误种类生成纠错特征序列,所述纠错特征序列用于定义所述码表的基于所述纠错错误种类的纠错错误数目;基于所述纠错特征序列确定特征序列,特征掩码和平移量;基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵;以及,响应于所述动态规划矩阵的损失函数小于等于预定阈值,确定与迭代完成的每个动态规划矩阵对应的码表中的两个码字,以获得纠错码码表。

4、根据本申请的另一方面,提供了一种基于生成码表的编码方法,包括:确定所述生成码表的码表大小的以2为底的对数函数的向下取整值;将输入二进制序列进行预处理以进行末尾补零并记录补零个数;以及,以所述向下取整值的数目为一组对已完成预处理的输入二进制序列进行分组编码。

5、根据本申请的又一方面,提供了一种基于生成码表的解码方法,包括:将接收的待解码序列划分为预定数目的组,所述预定数目为编码组数,且每组的长度为所述生成码表的每个码字的长度;从第一组开始将每一组与码表进行比对以确定码表中与该组对应的码字;对于所述待解码序列中的第k组且对应的纠错序列索引为i,将所述生成码表中码字增加码字减去窗口大小的前缀,并与上一个纠正序列减去窗口大小开始、码字长度与k相乘的长度的序列进行匹配;以及,在匹配完所述待解码序列的所有组的情况下,将所有正确的序列拼接以得到解码序列。

6、根据本申请的再一方面,提供了一种用于基因序列的纠错码码表生成方法,包括:确定用于基因序列的纠错码码表的大小,并基于作为有限字符表的基因序列{a,t,c,g}和与基因序列纠错目标对应的纠错错误种类及其纠错错误数目生成纠错特征序列;基于所述纠错特征序列确定特征序列,特征掩码和平移量;基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵;以及,响应于所述动态规划矩阵的损失函数小于等于预定阈值,确定与迭代完成的每个动态规划矩阵对应的码表中的两个码字,以获得用于基因序列的纠错码码表。

7、根据本申请的再一方面,提供了一种基于基因序列码表的编码方法,包括:确定所述基因序列码表的码表大小的以2为底的对数函数的向下取整值;将输入二进制序列进行预处理以进行末尾补零并记录补零个数;以及,以所述向下取整值的数目为一组对已完成预处理的输入二进制序列进行分组编码。

8、根据本申请的再一方面,提供了一种基于基因序列码表的解码方法,包括:将接收的待解码基因序列划分为预定数目的组,所述预定数目为编码组数,且每组的长度为所述基因序列码表的每个码字的长度;从第一组开始将每一组与所述基因序列码表进行比对以确定所述基因序列码表中与该组对应的码字;对于所述待解码基因序列中的第k组且对应的纠错序列索引为i,将所述基因序列码表中码字增加码字减去窗口大小的前缀,并与上一个纠正序列减去窗口大小开始、码字长度与k相乘的长度的序列进行匹配;以及,在匹配完所述待解码基因序列的所有组的情况下,将所有正确的序列拼接以得到解码基因序列。

9、本申请实施例提供的纠错码码表生成方法,可以基于定义预定纠错错误种类的纠错错误数目的纠错特征序列来迭代动态规划矩阵以使得动态规划矩阵对应的码表的任意两个码字基于所述预定纠错错误种类的纠错错误数目可区分,实现高性能的纠错码码表生成。

10、并且,本申请实施例提供的基于基因序列码表的编解码方法,可以通过基因序列码表基于预定纠错错误种类的纠错能力,实现高性能的基因序列编解码。

本文档来自技高网...

【技术保护点】

1.一种纠错码码表生成方法,包括:

2.如权利要求1所述的纠错码码表生成方法,其中,基于所述有限字符表和纠错错误种类生成纠错特征序列包括:

3.如权利要求2所述的纠错码码表生成方法,其中,所述表示纠错错误种类的特征序偶包括:

4.如权利要求1所述的纠错码码表生成方法,其中,在生成纠错特征序列之后进一步包括对所述纠错特征序列进行对称化处理,包括:

5.如权利要求1所述的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征序列包括:

6.如权利要求1所述的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征掩码和平移量包括:

7.如权利要求1所述的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

8.如权利要求7所述的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

9.如权利要求8所述的纠错码码表生成方法,其中,使用第一矩阵更新算法更新所述动态规划矩阵包括:

10.如权利要求8所述的纠错码码表生成方法,其中,根据特征掩码和平移量使用第二矩阵更新算法更新所述动态规划矩阵包括:

11.如权利要求10所述的纠错码码表生成方法,其中,所述动态规划矩阵的损失函数表示为:

12.如权利要求1所述的纠错码码表生成方法,进一步包括:

13.一种基于生成码表的编码方法,包括:

14.一种基于生成码表的解码方法,包括:

15.如权利要求14所述的基于生成码表的解码方法,进一步包括超量程处理:

16.一种用于基因序列的纠错码码表生成方法,包括:

17.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于作为有限字符表的基因序列{A,T,C,G}和与基因序列纠错目标对应的纠错错误种类及其纠错错误数目生成纠错特征序列包括:

18.如权利要求17所述的用于基因序列的纠错码码表生成方法,其中,所述表示纠错错误种类的特征序偶包括:

19.如权利要求17所述的用于基因序列的纠错码码表生成方法,其中,在生成纠错特征序列之后进一步包括对所述纠错特征序列进行对称化处理,包括:

20.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征序列包括:

21.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征掩码和平移量包括:

22.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

23.如权利要求21所述的用于基因序列的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

24.如权利要求23所述的用于基因序列的纠错码码表生成方法,其中,使用第一矩阵更新算法更新所述动态规划矩阵包括:

25.如权利要求22所述的用于基因序列的纠错码码表生成方法,其中,根据特征掩码和平移量使用第二矩阵更新算法更新所述动态规划矩阵包括:

26.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,所述动态规划矩阵的损失函数表示为:

27.如权利要求16所述的用于基因序列的纠错码码表生成方法,进一步包括:

28.如权利要求27所述的用于基因序列的纠错码码表生成方法,其中,在基于新码表中每个码字的长度和窗口宽度确定动态规划矩阵迭代时的起始坐标和终止坐标之前,进一步包括:

29.如权利要求28所述的用于基因序列的纠错码码表生成方法,其中,基于与基因序列对应的后缀增量约束条件确定所述增量策略,所述后缀增量约束条件包括GC占比约束条件和连续相同碱基约束条件。

30.如权利要求28所述的用于基因序列的纠错码码表生成方法,其中,所述增量策略基于蒙特卡洛策略,在所述蒙特卡洛策略中,在每一轮添加后缀时每个碱基的概率都为0.25,并根据已生成码表的码字基于损失函数对概率进行增量约束。

31.如权利要求28所述的用于基因序列的纠错码码表生成方法,其中,所述增量策略基于深度强化学习策略,并且,所述深度强化学习策略包括:

32.如权利要求31所述的用于基因序列的纠错码码表生成方法,其中,所述奖励为:

33.一种基于基因序列码表的编码方法,包括:

34.如权利要求33所述的基于基因序列码表的编码方法,其中,在所述生成码表的码表大小为n×l,...

【技术特征摘要】

1.一种纠错码码表生成方法,包括:

2.如权利要求1所述的纠错码码表生成方法,其中,基于所述有限字符表和纠错错误种类生成纠错特征序列包括:

3.如权利要求2所述的纠错码码表生成方法,其中,所述表示纠错错误种类的特征序偶包括:

4.如权利要求1所述的纠错码码表生成方法,其中,在生成纠错特征序列之后进一步包括对所述纠错特征序列进行对称化处理,包括:

5.如权利要求1所述的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征序列包括:

6.如权利要求1所述的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征掩码和平移量包括:

7.如权利要求1所述的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

8.如权利要求7所述的纠错码码表生成方法,其中,基于所述特征序列、所述特征掩码和所述平移量迭代动态规划矩阵包括:

9.如权利要求8所述的纠错码码表生成方法,其中,使用第一矩阵更新算法更新所述动态规划矩阵包括:

10.如权利要求8所述的纠错码码表生成方法,其中,根据特征掩码和平移量使用第二矩阵更新算法更新所述动态规划矩阵包括:

11.如权利要求10所述的纠错码码表生成方法,其中,所述动态规划矩阵的损失函数表示为:

12.如权利要求1所述的纠错码码表生成方法,进一步包括:

13.一种基于生成码表的编码方法,包括:

14.一种基于生成码表的解码方法,包括:

15.如权利要求14所述的基于生成码表的解码方法,进一步包括超量程处理:

16.一种用于基因序列的纠错码码表生成方法,包括:

17.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于作为有限字符表的基因序列{a,t,c,g}和与基因序列纠错目标对应的纠错错误种类及其纠错错误数目生成纠错特征序列包括:

18.如权利要求17所述的用于基因序列的纠错码码表生成方法,其中,所述表示纠错错误种类的特征序偶包括:

19.如权利要求17所述的用于基因序列的纠错码码表生成方法,其中,在生成纠错特征序列之后进一步包括对所述纠错特征序列进行对称化处理,包括:

20.如权利要求16所述的用于基因序列的纠错码码表生成方法,其中,基于所述纠错特征序列确定特征序列包...

【专利技术属性】
技术研发人员:陆艺唐舜
申请(专利权)人:首都师范大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1