CN102063643B - 一种基于dna计算的智能优化仿真方法 - Google Patents

一种基于dna计算的智能优化仿真方法 Download PDF

Info

Publication number
CN102063643B
CN102063643B CN201010602187.4A CN201010602187A CN102063643B CN 102063643 B CN102063643 B CN 102063643B CN 201010602187 A CN201010602187 A CN 201010602187A CN 102063643 B CN102063643 B CN 102063643B
Authority
CN
China
Prior art keywords
array
dna
computing
function
variable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201010602187.4A
Other languages
English (en)
Other versions
CN102063643A (zh
Inventor
董萌
段海滨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN201010602187.4A priority Critical patent/CN102063643B/zh
Publication of CN102063643A publication Critical patent/CN102063643A/zh
Application granted granted Critical
Publication of CN102063643B publication Critical patent/CN102063643B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于DNA计算的智能优化仿真方法,其特征在于:具体步骤如下:步骤一:确定求解问题;步骤二:确定反应算子;步骤三:确定删选和约束算子;步骤四:计算机代码实现。该方法借鉴了DNA计算并行计算与互补结构的特点,与实际问题相结合,从而实现了计算机模拟的快速求解。该算法充分利用了DNA计算高密度存储信息的特点。根据本发明方法,可以对一个NP完全问题求出最优解,且运算速度快速与精确性高。根据本发明方法,可以对一个NP完全问题求出最优解,且运算速度快速与精确性高。

Description

一种基于DNA计算的智能优化仿真方法
技术领域
本发明是一种基于DNA计算(DNA computing)的智能优化仿真方法,属于计算机信息处理领域。
背景技术
计算机的发展已经有很长的历史,设计用来便利计算的工具的历史更长。在当今社会,电子计算机在我们的日常生活中占有主导地位,没有它的帮助,我们的生活显得举步维艰。然而,随着社会和技术的发展,许多工程中的复杂系统不断涌现,在这些复杂系统的研究领域内,充斥着各种各样的非线性问题,NP(Non-deterministic Polynomial多项式复杂程度的非确定性问题)完全问题。面对这些问题,现有的电子计算机却显得无能为力,其主要是由于电子计算机的运算速度太慢,存储容量太小,量子物理学已经预测出基于这种形式的芯片的微处理能力不可能长期的保持下去,基于这两点原因及制造技术的局限,探索新的计算方式势在必行。很早以前就有人提出现代计算机的基本部件应该逐步过渡到分子水平,这样也有利于实现计算机技术的微型化,DNA计算在这种思想和需求下应用而生,在接下来的十余年备受科学界关注。
DNA计算是一种全新的计算模式,也是信息科学与生物科学相结合的一种全新的思维模式,利用有机分子的信息处理能力来代替数字开关部件是DNA计算的基本思想。
DNA计算具有大规模的搜索能力及并行计算的能力。这主要基于如下两个方面:
(1)DNA链的巨大并行性。由于DNA链由A、C、G、T四种碱基组成,相对于电子计算机的0-1编码,DNA链可看作0-1-2-3编码,对于相同长度的序列,电子计算机存储的信息仅为2n,而DNA链存储的信息则为4n,由此可知,DNA链能够高密度地存储信息,又由于DNA的复制、粘贴等性能,它可以在有限的空间和时间内进行大量的拷贝,这也给群举提供了可能。
(2)DNA链具有双螺旋碱基互补结构。DNA分子由两条DNA单链聚合而成,相对的碱基彼此互补,这就告诉我们,如果知道了其中一条单链的信息,那么就可以知道另一条单链的信息,如此我们便不需要对所有的单链进行遍历式检测,减少了工作量。
DNA计算是以DNA链及相关的酶作为基本材料利用分子生化技术得出可行解的一种分子生物计算方法。它主要是利用DNA双螺旋结构和碱基互补规律对问题进行信息编码,将问题映射成DNA分子链,在有关酶的作用下生成各种数据池,而后原始数据的运算规律映射成DNA链可控的生化反应使DNA链进行反应。反应结束后,利用分子生物技术如聚合链反应PCR、超声波降解、亲和层析、克隆、诱变、分子纯化、电泳、磁珠分离等,检测筛选出所需要的结果。
DNA计算的本质就是利用大量的不同核酸分子杂交,产生类似数学计算过程中某种组合的结果,并且根据限制条件得出约束解。由于不同的DNA分子具有不同的编码形式,当大量随机的DNA分子进行杂交后,每个DNA分子的原始信息就会与其它分子所携带的原始信息进行组合,这就是类似于数学中的组合问题。对DNA分子进行一系列连续的生化操作,可用于模拟特定的运算过程。
DNA计算的核心问题是将经过编码后的DNA分子链作为输入,对DNA分子进行生化操作(既有物理操作也有化学操作.物理操作实质上是调控生化反应的外部条件,例如温度,酸碱度等。此外是在试管内或其它载体上经过一定时间完成控制的生物化学反应,尤其是通过各种酶的操作.这些操作包括:合并、分离、加热与退火、扩增、切割、连接、聚合、检测等生物工程技术)。最后对结果DNA分子(即待求问题的解)进行萃取。
DNA计算是1994年被Adleman提出并用实验显示了用于计算的可行性。他用DNA计算解决了图论中NP完全问题有向图七顶点六条边Hamilton(哈密顿)路径问题。其主要思想是:首先随机生成所有的有向路,然后找出所有开始于起点终止于终点的有向路,最后寻找经过图的每个顶点且每个顶点只经过一次的有向Hamilton路。
这一研究成果引起了数学、物理、化学以及生物界科学家们的广泛关注,也开辟了DNA计算这一崭新的研究领域。目前DNA计算的研究主要集中在以下几个方面:
(1)研究DNA计算的生物工具和算法实现技术;
(2)建立不同问题的DNA计算模型;
(3)研究DNA计算的形式语言及DNA计算的复杂度;
(4)研究DNA计算和软计算的结合;
(5)DNA自组装相关计算;
(6)体内应用为目标的DNA计算。
本发明即是基于DNA计算的思想将其应用于具体问题的智能优化仿真方法。
发明内容
本发明提出了一种基于DNA计算的智能优化仿真方法,其目的是提供一种解决群举问题的有效途径,其思想也可应用于其它NP完全问题。
该方法借鉴了DNA计算并行计算与互补结构的特点,与实际问题相结合,从而实现了计算机模拟的快速求解。该算法充分利用了DNA计算高密度存储信息的特点。
DNA计算最初解决了Hamilton有向图问题,有向图的简单形象描述是:给定n个地点,从某一地点出发,访问各点一次且仅有一次后到达终点,要求找出一条最短的路径。
DNA计算的数学模型如下:
一个DNA单链可看作由符号集∑={A、C、T、G}组成的字符串,相当于电子计算机中的0-1编码,可按DNA双螺旋结构和碱基互补配对规则用{A、C、T、G}对实际问题进行编码,例如:A=1,C=0,将一个实际问题编码为ACCTGAGTT则在计算模拟时则可写成当计算得到结果时亦可使用相同方法解码。
生物酶可以看作是模拟在DNA分子上的不同的计算,不同的生物酶相当于作用在DNA串上的不同的算子。常用的生物酶有:限制性内切酶,它能够识别特定的碱基序列,并在相应的位置切断DNA分子作分离操作;核酸外切酶,从DNA序列的端开始,切除碱基,作删除操作;聚合酶,在DNA分子的一端添加核苷酸使序列加长,作复制操作;连接酶,是两条具有粘性末端的DNA链连接为一条,做连接操作。
各种化学、物理操作可以看作是对DNA分子的筛选和约束计算,不同的操作相当于作用在DNA串上不同的算子。常用的操作有:合成,将核苷酸按照一定的次序生成所需长度的DNA链;熔解,使双链DNA分解成两条互补的单链DNA;退火,使单链DNA重新组装成双链DNA;凝胶电泳,测量DNA分子的长度;杂交,利用碱基互补配对原则,利用一堆寡核苷酸序列将两条单链分子首尾相接形成说螺旋DNA分子;磁珠分离,将含有特定寡核苷酸片段的单链DNA从溶液中分离出来;变性梯度凝胶电泳及温度梯度凝胶电泳,将相同长度但序列组成不同的DNA片段分离开来。
对于一个特定的问题,首先用DNA的碱基对其编码,之后选择特定的生物酶作为算子使被编码的DNA链在生物酶的作用下反应产生适用于问题的解,而后根据约束条件选择分离方法筛选出拥有可行解及最优解的DNA链,解码DNA读取信息即可找出问题的解。其基本步骤如图1所示。
本发明是一种基于DNA计算的智能优化仿真方法,其具体实现步骤如下(可参见图2):
步骤一:确定求解问题。
首先,将所要求解的问题归纳成对应的数学模型,确定输入的变量和需要输出的变量;
然后,对输入的变量进行DNA编码,这里指出,根据输入变量数的不同和计算过程中对变量特异性要求的不同,选取编码的位数不同,在没有特殊要求的情况下可选择编码位数20为默认值,但可根据实际需要选择不同的编码位数,为了计算方便,所有变量的编码位数最好相同。
而后,将所编码的DNA链中的{A、C、T、G}对应为映射成数字编码存放于数组1、2...n(n为输入变量数)中。
步骤二:确定反应算子。
首先,确定问题求解的过程,将变量运算的过程归纳称为数学模型,即相关的函数或逻辑运算;
其次,将相关的函数或逻辑运算抽取成为可应用于序列的函数和运算。这里给出具体生物酶的建议函数和运算:
限制性内切酶,逐个搜索数组中的特定序列,直接取出所需数组元素;核酸外切酶,从数组首元素开始逐渐删除并将余下数组存于另一数组,更新数组;聚合酶,在数组末端添加元素;连接酶,检测两个数组、的末端和前端是否匹配,匹配即合并为一个数组(这里的匹配可自行定义)。
其中,上述的每一种具体生物酶的函数和运算所涉及的数组均为不特定的数组。
步骤三:确定删选和约束算子。
首先,确定所求输出变量的约束条件,将约束条件归纳为数学模型,也即步骤二中所述的相关的函数和逻辑运算;
而后,将相关函数和逻辑运算抽取成为可用于序列的函数和运算,这里给出具体的生化反应的建议函数和运算:
合成,将需要合并的数组逐次存放到另一空白数组中;熔解,对于两行数组,将每行分别存于不同的空白数组中;
退火,对于一个单行数组按自行定义的求补规则求出其中每个元素的补存放于另一数组中,而后将两个数组存放在另一个两行数组中;
凝胶电泳,计算数组元素的个数;
杂交,寻找一数组,检测该单行数组与另外两个单行数组元素的补运算是否匹配,弱匹配则求出各数组求补后的数组匹配合并为一个两行数组;
磁珠分离,利用已知的数组排序检测数组群,搜寻出所需排序数组(有相同排序的数组)。
其中,上述的每一种具体的生化反应的函数和运算中所涉及的数组均为不特定的数组。
步骤四:计算机代码实现。
首先,输入变量的编码在数组1、2...n(n是输入变量数)中;
其次,根据步骤二所抽取的相关酶算子模型函数和逻辑运算对相应的数组变量进行运算;
最后,根据步骤三抽取的约束模型函数和运算,在变量所产生的解数组中搜寻出所要求的可行解和最优解。
本发明一种基于DNA计算的智能优化仿真方法,其优点及功效在于:该方法借鉴了DNA计算并行计算与互补结构的特点,与实际问题相结合,从而实现了计算机模拟的快速求解。该算法充分利用了DNA计算高密度存储信息的特点。根据本发明方法,可以对一个NP完全问题求出最优解,且运算速度快速与精确性高。
附图说明
图1本发明方法DNA计算的基本步骤
图2本发明方法基于DNA计算的智能优化仿真方法流程
图3待解决的Hamilton有向图
图4本发明方法的运行结果
具体实施方式
下面通过一个具体实施事例来验证本发明所提出的基于DNA计算的智能优化仿真方法的性能,所采用的求解问题即是七顶点Hamilton有向图问题。实验环境为1.8Ghz,2G内存,MATLAB 7.0版本,其具体实现步骤如下:
步骤一:确定求解问题。
要求解的问题是七顶点Hamilton有向图问题,即寻找经过图的七个顶点的每个顶点且每个顶点只经过一次的有向Hamilton路,本发明采用图3。
首先确定输入变量,即每个顶点的位置和两顶点之间的最短距离(由于路障等问题,该距离并不一定是直线距离)。对每个顶点及边进行编码,由于顶点较少,采用6个字母的编码方式,则对七个顶点的编码可取为:
顶点一:CCCCCC
顶点二:CCACCA
顶点三:CACCAC
顶点四:CAACAA
顶点五:ACCACC
顶点六:ACAACA
顶点七:AACAAC
对应于计算机编码,为:
顶点一:000000
顶点二:001001
顶点三:010010
顶点四:011011
顶点五:100100
顶点六:101101
顶点七:110110
每个顶点的坐标及计算出各条边的长度如表1(a第i列为第i个点的横坐标,b第i列为第i个点的纵坐标,str的第i行第j列代表第i个点到第j个点的距离),对每条边编码,每条边由6位编码组成,前三位编码为起点的前三位编码,后三位编码为终点的后三位编码,例如:一二顶点的编码为000001,二一顶点的编码为001000。
表1
步骤二:确定反应算子。
将所有边的编码存放于一个数组中,令所有的边进行组合,只有两条边第一条边的后三个编码和第二条边的前三个编码相同时才能组合,组合过的边不容许再次参与组合,由于七个顶点存在六条边,故组合为六条边后组合结束。
步骤三:筛选组合。
将所有的七顶点六条边组合译码成顶点序列,求出每一条序列的边的组合长度,比较找出最短距离的序列边。
步骤四:计算机代码实现
运行结果如图4。所用时间不到1s。可见本方法的快速与精确性。
该方法是解决信息计算的有效途径,可广泛应用于航空、航天、工业生产等领域。

Claims (1)

1.一种在计算机信息处理中对DNA计算的智能优化仿真方法,用于对NP完全问题求出可行解和最优解,其特征在于:具体步骤如下:
步骤一:确定求解问题
首先,将所要求解的问题归纳成对应的数学模型,确定输入的变量和需要输出的变量;
其次,对输入的变量进行DNA编码;
最后,将所编码的DNA链中的{A、C、T、G}对应为映射成数字编码存放于数组1、2…n中,n为输入变量数;
步骤二:确定反应算子
首先,确定问题求解的过程,将变量运算的过程归纳称为数学模型,即相关的函数或逻辑运算;
其次,将所述的相关的函数或逻辑运算抽取成为可应用于序列的生物酶的函数和运算;其中,生物酶的函数和运算包括:
限制性内切酶,逐个搜索数组中的特定序列,直接取出所需数组元素;
核酸外切酶,从数组首元素开始逐渐删除并将余下数组存于另一数组,更新数组;
聚合酶,在数组末端添加元素;
连接酶,检测两个数组的末端和前端是否匹配,匹配即合并为一个数组;
上述的每一种具体生物酶的函数和运算所涉及的数组均为不特定的数组;
步骤三:确定删选和约束算子
首先,确定所求输出变量的约束条件,将约束条件归纳为数学模型,数学模型为相关的函数和逻辑运算;
其次,将相关函数和逻辑运算抽取成为可用于序列的生化反应的函数和运算,其中,生化反应的函数和运算包括:
合成,将需要合并的数组逐次存放到另一空白数组中;
熔解,对于两行数组,将每行分别存于不同的空白数组中;
退火,对于一个单行数组按自行定义的求补规则求出其中每个元素的补存放于另一数组中,而后将两个数组存放在另一个两行数组中;
凝胶电泳,计算数组元素的个数;
杂交,寻找一数组,检测该单行数组与另外两个单行数组元素的补运算是否匹配,若匹配则求出各数组求补后的数组匹配合并为一个两行数组;
磁珠分离,利用已知的数组排序检测数组群,搜寻出所需排序数组;
上述的每一种具体的生化反应的函数和运算中所涉及的数组均为不特定的数组;
步骤四:计算机代码实现
首先,输入变量的编码在数组1、2…n中,n是输入变量数;
其次,根据步骤二所抽取的函数和运算对相应的数组变量进行运算;
最后,根据步骤三抽取的约束模型函数和运算,在变量所产生的解数组中搜寻出所要求的可行解和最优解。
CN201010602187.4A 2010-12-13 2010-12-13 一种基于dna计算的智能优化仿真方法 Expired - Fee Related CN102063643B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010602187.4A CN102063643B (zh) 2010-12-13 2010-12-13 一种基于dna计算的智能优化仿真方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010602187.4A CN102063643B (zh) 2010-12-13 2010-12-13 一种基于dna计算的智能优化仿真方法

Publications (2)

Publication Number Publication Date
CN102063643A CN102063643A (zh) 2011-05-18
CN102063643B true CN102063643B (zh) 2014-07-30

Family

ID=43998913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010602187.4A Expired - Fee Related CN102063643B (zh) 2010-12-13 2010-12-13 一种基于dna计算的智能优化仿真方法

Country Status (1)

Country Link
CN (1) CN102063643B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10528868B2 (en) 2010-06-25 2020-01-07 Clayton Gillespie Solving NP-complete problems without hyper polynomial cost
CN103106352B (zh) * 2013-01-22 2017-04-26 武汉科技大学 一种全局最优化dna计算序列编码方法
CN105745618A (zh) * 2014-03-25 2016-07-06 克莱顿·吉莱斯皮 在无超高多项式成本的情况下求解np完全问题
EP2983297A1 (en) * 2014-08-08 2016-02-10 Thomson Licensing Code generation method, code generating apparatus and computer readable storage medium
CN106355251B (zh) * 2016-04-29 2018-10-12 北京大学 一种数据处理装置及数据处理方法
CN111420718B (zh) * 2020-04-01 2022-01-14 安徽大学 一种求解最小集合覆盖问题的微流控芯片及其dna计算方法
CN111858507B (zh) * 2020-06-16 2023-06-20 广州大学 基于dna的数据存储方法、解码方法、系统和装置
CN117077181B (zh) * 2023-10-16 2024-01-09 南通千寻信息科技有限公司 一种企业信息管理数据的存储方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1779703A (zh) * 2004-11-23 2006-05-31 中国科学院大连化学物理研究所 一种微流控芯片dna分子计算机

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004068398A1 (ja) * 2003-01-30 2004-08-12 Fujitsu Limited Dnaコンピュータ及びそれを用いた計算方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1779703A (zh) * 2004-11-23 2006-05-31 中国科学院大连化学物理研究所 一种微流控芯片dna分子计算机

Also Published As

Publication number Publication date
CN102063643A (zh) 2011-05-18

Similar Documents

Publication Publication Date Title
CN102063643B (zh) 一种基于dna计算的智能优化仿真方法
Bee et al. Molecular-level similarity search brings computing to DNA data storage
Reif et al. Experimental construction of very large scale DNA databases with associative search capability
Wang et al. A new fast algorithm for solving the minimum spanning tree problem based on DNA molecules computation
CN103093121A (zh) 双向多步deBruijn图的压缩存储和构造方法
Achar et al. RNA motif discovery: a computational overview
CN109559782B (zh) 一种基于多目标遗传算法的dna序列编码方法
CN103218544B (zh) 基于序列相似性与频谱3-周期性的基因识别方法
Arita Writing information into DNA
Xu et al. Using MoBIoS'scalable genome join to find conserved primer pair candidates between two genomes
Hsieh et al. A DNA-based solution to the graph isomorphism problem using Adleman–Lipton model with stickers
Luo et al. Recall DNA methylation levels at low coverage sites using a CNN model in WGBS
Kashiwamura et al. Two-step search for DNA sequence design
Jiménez-Sánchez DNA computer code based on expanded genetic alphabet
Wang et al. Solving the maximal matching problem with DNA molecules in Adleman–Lipton model
Tran et al. Network representation of large-scale heterogeneous RNA sequences with integration of diverse multi-omics, interactions, and annotations data
Khalid et al. Implementation of binary particle swarm optimization for DNA sequence design
Dozono et al. An algorithm of SOM using simulated annealing in the batch update phase for sequence analysis
CN101847145A (zh) 一种基于dna计算模型的拉蒙赛图的获取方法和系统
EP3966826B1 (en) Efficient polymer synthesis
Yang et al. Combining BPSO and ELM Models for Inferring Novel lncRNA-Disease Associations.
Alshamlan et al. Solving Shortest Hamiltonion Path Problem Using DNA Computing
Sethuraman et al. Star Colouring Problem: The DNA Solution
Mahapatra et al. Deep Learning Techniques for miRNA Sequence Analysis
Liu et al. Machine learning based LncRNA function prediction

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140730

Termination date: 20141213

EXPY Termination of patent right or utility model