基于双策略黑蜘蛛算法的dna存储编码优化方法

文档序号:1964421 发布日期:2021-12-14 浏览:12次 >En<

阅读说明:本技术 基于双策略黑蜘蛛算法的dna存储编码优化方法 (DNA storage coding optimization method based on dual-strategy black spider algorithm ) 是由 王宾 吴洁琼 胡轶男 张强 魏小鹏 于 2021-09-18 设计创作,主要内容包括:本发明提出了一种基于双策略黑蜘蛛算法的DNA存储编码优化方法,首先构造出满足当前约束组合的DNA编码序列集合,并对所述DNA编码序列集合中的序列进行适应度评定,按其结果进行排序;其次引入双策略黑蜘蛛算法对上述集合进行优化,得到优化后的适应度较高的DNA编码序列;再次通过组合约束对优化后的DNA编码序列进行筛选,保留满足组合约束的序列;最后将保留的序列集合并到DNA编码序列集中,输出满足组合约束的最优编码序列集。将优化后的双策略黑蜘蛛算法应用到DNA编码序列集,实现优化序列的目的。优化后的序列集在适应度函数上拥有更好的表现;通过末端约束将优化后的序列集进行筛选,构造具有稳定物理和热力学特性的DNA编码序列集。(The invention provides a DNA storage coding optimization method based on a dual-strategy black spider algorithm, which comprises the steps of firstly constructing a DNA coding sequence set meeting the current constraint combination, evaluating the fitness of sequences in the DNA coding sequence set, and sequencing according to the result; secondly, introducing a double-strategy black spider algorithm to optimize the set to obtain an optimized DNA coding sequence with higher fitness; screening the optimized DNA coding sequence through combination constraint again, and reserving a sequence meeting the combination constraint; and finally merging the reserved sequence set into a DNA coding sequence set, and outputting an optimal coding sequence set meeting combination constraint. And applying the optimized double-strategy black spider algorithm to the DNA coding sequence set to realize the purpose of optimizing the sequence. The optimized sequence set has better performance on a fitness function; and screening the optimized sequence set through terminal constraint to construct a DNA coding sequence set with stable physical and thermodynamic properties.)

基于双策略黑蜘蛛算法的DNA存储编码优化方法

技术领域

本发明涉及DNA存储中编码设计领域,具体涉及一种基于双策略黑蜘蛛算法的DNA存储编码优化方法。

背景技术

在数据大爆炸的背景下,DNA由于具有存储密度大、资源丰富且易于获取、可储存时间长、消耗能量少等优点被认为是用于信息存储的一个理想载体。近几年,DNA存储技术不断得到发展和应用,DNA编码集的编码方法也层出不穷。

将智能、种群算法与DNA编码方法相结合是当前广泛应用的方法。然而,一方面有些种群的更新方式和逻辑相对简单,容易出现种群的多样性不足和易陷入局部最优的状况。另一方面由于DNA序列具有特殊的生物特性,相似性差异较大的序列可以尽量避免非特异性杂交现象的发生,同时物理特性和热力学特性都相对稳定的序列集在存储过程中更不易出现问题,高质量的DNA编码序列集在存储过程中能降低错误率。因此更好地提高算法的效率和质量、扩大存储序列集的规模外,关注序列的物理特性和热力学特性是当前亟待解决的问题。

发明内容

本发明的目的在于通过元启发式算法对DNA编码序列集进行搜索与优化,最终得到数量提高且物理特性和热力学特性稳定的DNA存储编码集,以此提高DNA编码集的质量,保障DNA存储的稳定性。

为了实现以上目的,本发明采用如下技术方案:

首先构造出满足当前约束组合的DNA编码序列集,并对所述DNA编码序列集中的序列进行适应度评定,按其结果进行排序;其次引入双策略黑蜘蛛算法对DNA编码序列集进行优化,得到优化后的适应度较高的DNA编码序列;再次通过组合约束对优化后的DNA编码序列进行筛选,保留满足组合约束的序列;最后将保留的序列合并到DNA编码序列集中,输出满足组合约束的最优编码序列集。

上述技术方案可以使本发明得到如下的技术效果:

1.引入随机交换策略和权重选择策略以提高算法的开发和探索能力。其中随机交换策略能提高序列的多样性,权重选择策略在序列生成下代序列的过程中选择不同更新方法:在前半部分寻找围绕序列的最优解,提高算法的探索能力;在后半部分寻找远离当前最优解的可选择的解,提高算法的开发能力,避免序列选择陷入局部最优;

2.通过将优化后的双策略黑蜘蛛算法应用到DNA编码序列集,实现优化序列的目的。优化后的序列集在适应度函数上拥有更好的表现;

3.通过末端约束将优化后的序列集进行筛选,构造具有稳定物理和热力学特性的DNA编码序列集;

4.将具有稳定物理和热力学特性的存储序列集应用到DNA存储中,提高存储的稳定性和可靠性。

附图说明

图1为基于双策略黑蜘蛛算法的DNA存储编码优化方法的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施中的技术方案进行清楚、完整的描述,可以理解的是,所描述的实例仅仅是本发明的一部分实例,而不是全部的实施例。基于本发明的实施例,本领域的技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明中涉及的算法为双策略黑蜘蛛算法,涉及的约束为汉明距离、非连续性约束、GC含量和末端约束,涉及衡量序列稳定性的指标为发夹结构、解链温度和最小自由能。

本发明涉及的双策略黑蜘蛛算法中引入的两种策略分别为随机交换策略和权重选择策略,用来提高算法的探索及开发能力。其中随机交换策略用来增强序列的多样性,权重选择策略用来避免结果陷入局部最优和提高优化性。整个序列更新分为四个阶段,分别为初始化阶段、产生子代阶段、同类相残阶段和变异阶段。

本发明中使用的汉明距离约束条件指的是在序列集中任意两条序列中必须存在至少n个不同的碱基以维持稳定性,GC含量指的是序列中鸟嘌呤(G)和胞嘧啶(C)的数量占整条序列碱基总数的百分比。由于不同碱基连接的氢键不同,通常存储序列的GC含量维持在40%-60%会拥有相对稳定的状态。为了维持序列稳定的生物特性,本实施例中GC含量为50%。非连续性约束指的是存储序列中不能有超过连续两个相同碱基。末端约束指的是在存储序列末端最后五个序列中不能存在三个及三个以上的G或C碱基,其公式表示如下所示:

其中分别表示序列S中最后5个中碱基鸟嘌呤(G)和胞嘧啶(C)的数量。

具体详细步骤如下所示:

步骤1:初始化DNA编码序列集Pop以及更新DNA编码序列所需的参数;

示例性的,初始化更新DNA编码序列所需的参数包括nPop、nvar pMutation、pCannibalism、MIter。其中nPop指的是序列规模;nvar指的是序列维数;pMutation指的是变异率;pCannibalism指的是同类相残率;MIter指的是最大迭代次数。

步骤2:以汉明距离作为适应度函数对初始化后的所述DNA编码序列集Pop进行适应度排序,得到当前最优解;

步骤3:获取权重选择策略中的参数S;

示例性的,参数S初始化为0;如果当前解的适应度小于当前最优解,则参数S除以2来控制大小;如果当前解的适应度大于当前最优解则S加1;

步骤4:在DNA编码序列集Pop更新中判断是否使用随机交换策略;

示例性的,在序列更新中通过公式(2)和(3)来判断是否使用随机交换策略。其中,若参数α小于参数β,则应用随机交换策略,用当前最优解的某个维度替换成Pop中的某个维度;反之,则不使用该策略,维持Pop中的当前解和最优解值;

α=tan(π×(rand-0.5)) (2)

β=1-CIter/MIter (3)

其中CIter为当前迭代次数,rand是取值为(0,1)的随机数。

步骤5:获取权重选择策略中的参数Wa、Wb,通过所述参数Wa、Wb更新DNA编码序列集Pop;

示例性的,用公式(4)和(5)来产生应用于权重选择策略中的参数Wa、Wb,

Wa=(1-CIter/MIter)1-(rand-0.5)×S/MIter (4)

Wb=(2-2×CIter/MIter)1-(rand-0.5)×/SMIter (5)

其中,参数S由步骤2产生,Wa和Wb的取值范围不同,Wa用来提高算法的开发能力,Wb用来提高算法的探索能力。

步骤6:以汉明距离作为适应度函数,获取更新后DNA编码序列集Pop中序列的适应度,然后根据适应度进行排序,保留满足汉明距离约束的序列,并将其放在DNA编码序列集Pop2中;

示例性的,用公式(6)来判断两个参数的使用方法。在序列循环的前半部分使用Wa来产生子代,即公式(7);序列循环的后半部分用Wb来产生子代,即公式(8):

CIter/MIter<0.5 (6)

其中Wa、Wb分别由公式(4)(4)产生,x1、x2更新前DNA序列集Pop中的序列;y1,y2为更新后DNA序列集Pop中的序列。

根据适应度对更新后DNA序列集Pop进行排序,替换掉表现稍差的DNA序列集,保留当前序列集中相对较好的结果,并将结果存放在Pop2中;

步骤7:根据当前DNA编码序列集Pop中的序列数量和变异率得到应该进行变异的部分数据集,在所述部分数据集中随机交换任意两个维度上的值,将变异后的结果存放在DNA编码序列集Pop3中

示例性的,变异的部分数据集中序列数量为nMutation,如公式(9)所示。随机交换部分数据集中序列的两个维度上的值,将变异后的结果存放在Pop3中;

nMutation=Pop×pMutation (9)

步骤8:通过适应度函数筛选出DNA编码序列集Pop2和DNA编码序列集Pop3中不满足组合约束的序列,并将其剔除出去;

示例性的,分别用发夹结构、解链温度和自由能来衡量序列的物理及热力学特性,其中发夹结构的计算方式如下所示:

其中r表示形成发夹环所需要的最短子序列长度,pinlen表示形成发夹茎的子序列长度。序列S中,若在序列的第k个碱基处产生发夹结构,且发夹茎中互补碱基个数多于组成茎长的碱基数目的一半时,Hairpin(S,k)取值为1,否则,取值为0。

对于拥有m条序列的DNA序列集S来说,用FTm(S)来表示序列间Tm值的差异,公式如下:

其中Tm(Si)表示序列DNA序列集S中第i条序列的解链温度,表示序列DNA序列集S解链温度的均值。

步骤9:将DNA编码序列集Pop2和DNA编码序列集Pop3存放在DNA编码序列集Pop中;

步骤10:判断当前DNA编码序列集Pop更新次数是否达到最大迭代次数MIter,如果是则输出DNA编码序列集Pop,否则转到步骤2。

实施例1

本实施例中DNA编码的长度取值为20,汉明距离取值为n大于等于17,同时满足组合约束。

步骤1:初始化更新DNA编码序列所需的参数;其中nPop=2000,nvar=20,pMutation=0.4,pCannibalism=0.5,MIter=2500。将该参数设置下的初始化DNA序列集进行组合约束过滤,并将过滤后的序列放入Pop集合中作为DNA编码初始序列集。在该设置下序列初始化的大小为130;

步骤2:以汉明距离作为适应度函数将Pop中的序列进行排序,得到当前最优解;

步骤3:通过比较当前解和最优解来得到权重选择策略中的参数S。如果当前解的适应度小于当前最优解,则S除以2;如果当前解的适应度大于当前最优解则S加1;

步骤4:在当前序列集Pop中应用随机交换策略进行序列变异;

步骤5:用公式(4)和(5)来产生应用于权重选择策略中的参数Wa、Wb;用公式(6)来判断两个参数的使用方法。在序列循环的前半部分使用Wa来产生子代,即公式(7);序列循环的后半部分用Wb来产生子代,即公式(8);

步骤6:根据适应度对Pop进行排序,替换掉表现稍差的DNA序列集,保留当前序列集中相对较好的结果,并将结果存放在Pop2中;

步骤7:随机交换nMutation个DNA序列集中的两个维度上的值,将变异后的结果存放在Pop3中;

步骤8:通过适应度函数筛选出Pop2和Pop3中不满足约束条件的序列,并将其剔除出去;

步骤9:将Pop2和Pop3存放在Pop中。

步骤10:判断当前DNA编码序列集Pop更新次数是否达到最大迭代次数,如果是则输出DNA编码序列集Pop,否则转到步骤2。

本发明提出一种将双策略黑蜘蛛算法和组合约束结合起来以构造稳定DNA编码序列集的方法。其中在双策略黑蜘蛛算法中引入随机交换策略和权重选择策略,在提高序列多样性的同时提高了算法的开发和探索能力。本发明及实验结果是在处理器为Intel(R)CPU 3.6GHz、存储空间为4.0GB、运行环境为Windows 8的台式机上完成的。

表1 n=10d≥7的结果

表2 n=9d≥7时序列集物理和热力学表现

表1和表2分别展示了本发明在序列长度n=9,汉明距离d≥7时的序列集合结果以及集合物理及热力学表现。由实验结果和其他已知编码方法对比可知,本发明不仅能提高编码数量,而且能提高编码集物理和热力学的稳定性。

以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种数值程序蜕变关系的自动识别方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!