CN112908409A - 一种基于并行改进人工蚁群算法的rna二级结构预测方法 - Google Patents
一种基于并行改进人工蚁群算法的rna二级结构预测方法 Download PDFInfo
- Publication number
- CN112908409A CN112908409A CN202110253566.5A CN202110253566A CN112908409A CN 112908409 A CN112908409 A CN 112908409A CN 202110253566 A CN202110253566 A CN 202110253566A CN 112908409 A CN112908409 A CN 112908409A
- Authority
- CN
- China
- Prior art keywords
- stem
- stem region
- base
- bases
- free energy
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000005457 optimization Methods 0.000 claims abstract description 5
- 108091032973 (ribonucleotides)n+m Proteins 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 27
- 239000003016 pheromone Substances 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 12
- UYTPUPDQBNUYGX-UHFFFAOYSA-N guanine Chemical compound O=C1NC(N)=NC2=C1N=CN2 UYTPUPDQBNUYGX-UHFFFAOYSA-N 0.000 claims description 10
- ISAKRJDGNUQOIC-UHFFFAOYSA-N Uracil Chemical compound O=C1C=CNC(=O)N1 ISAKRJDGNUQOIC-UHFFFAOYSA-N 0.000 claims description 8
- 108091028043 Nucleic acid sequence Proteins 0.000 claims description 7
- OPTASPLRGRRNAP-UHFFFAOYSA-N cytosine Chemical compound NC=1C=CNC(=O)N=1 OPTASPLRGRRNAP-UHFFFAOYSA-N 0.000 claims description 6
- 229940035893 uracil Drugs 0.000 claims description 4
- 229930024421 Adenine Natural products 0.000 claims description 3
- GFFGJBXGBJISGV-UHFFFAOYSA-N Adenine Chemical compound NC1=NC=NC2=C1N=CN2 GFFGJBXGBJISGV-UHFFFAOYSA-N 0.000 claims description 3
- 229960000643 adenine Drugs 0.000 claims description 3
- 229940104302 cytosine Drugs 0.000 claims description 3
- 241000257303 Hymenoptera Species 0.000 claims description 2
- 230000008020 evaporation Effects 0.000 claims description 2
- 238000001704 evaporation Methods 0.000 claims description 2
- 210000000130 stem cell Anatomy 0.000 claims 1
- 230000007547 defect Effects 0.000 abstract description 2
- 108020004414 DNA Proteins 0.000 description 6
- 150000007523 nucleic acids Chemical group 0.000 description 5
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 4
- 108091027963 non-coding RNA Proteins 0.000 description 3
- 102000042567 non-coding RNA Human genes 0.000 description 3
- 239000002773 nucleotide Substances 0.000 description 3
- 125000003729 nucleotide group Chemical group 0.000 description 3
- ASJSAQIRZKANQN-CRCLSJGQSA-N 2-deoxy-D-ribose Chemical compound OC[C@@H](O)[C@@H](O)CC=O ASJSAQIRZKANQN-CRCLSJGQSA-N 0.000 description 2
- 108700011259 MicroRNAs Proteins 0.000 description 2
- 108020004459 Small interfering RNA Proteins 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 210000003527 eukaryotic cell Anatomy 0.000 description 2
- 108020004999 messenger RNA Proteins 0.000 description 2
- 239000002679 microRNA Substances 0.000 description 2
- 108020004707 nucleic acids Proteins 0.000 description 2
- 102000039446 nucleic acids Human genes 0.000 description 2
- 108090000623 proteins and genes Proteins 0.000 description 2
- 102000004169 proteins and genes Human genes 0.000 description 2
- 108020004418 ribosomal RNA Proteins 0.000 description 2
- 239000004055 small Interfering RNA Substances 0.000 description 2
- RWQNBRDOKXIBIV-UHFFFAOYSA-N thymine Chemical compound CC1=CNC(=O)NC1=O RWQNBRDOKXIBIV-UHFFFAOYSA-N 0.000 description 2
- 108091032955 Bacterial small RNA Proteins 0.000 description 1
- HMFHBZSHGGEWLO-SOOFDHNKSA-N D-ribofuranose Chemical compound OC[C@H]1OC(O)[C@H](O)[C@@H]1O HMFHBZSHGGEWLO-SOOFDHNKSA-N 0.000 description 1
- MYMOFIZGZYHOMD-UHFFFAOYSA-N Dioxygen Chemical compound O=O MYMOFIZGZYHOMD-UHFFFAOYSA-N 0.000 description 1
- 206010028980 Neoplasm Diseases 0.000 description 1
- 102000007999 Nuclear Proteins Human genes 0.000 description 1
- 108010089610 Nuclear Proteins Proteins 0.000 description 1
- PYMYPHUHKUWMLA-LMVFSUKVSA-N Ribose Natural products OC[C@@H](O)[C@@H](O)[C@@H](O)C=O PYMYPHUHKUWMLA-LMVFSUKVSA-N 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- HMFHBZSHGGEWLO-UHFFFAOYSA-N alpha-D-Furanose-Ribose Natural products OCC1OC(O)C(O)C1O HMFHBZSHGGEWLO-UHFFFAOYSA-N 0.000 description 1
- 230000006907 apoptotic process Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000011712 cell development Effects 0.000 description 1
- 230000010261 cell growth Effects 0.000 description 1
- 230000019522 cellular metabolic process Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 229920002521 macromolecule Polymers 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 229940113082 thymine Drugs 0.000 description 1
- 210000001519 tissue Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B15/00—ICT specially adapted for analysing two-dimensional or three-dimensional molecular structures, e.g. structural or functional relations or structure alignment
- G16B15/10—Nucleic acid folding
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
Landscapes
- Life Sciences & Earth Sciences (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Chemical & Material Sciences (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Biotechnology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Public Health (AREA)
- Bioethics (AREA)
- Evolutionary Computation (AREA)
- Epidemiology (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biochemistry (AREA)
- Molecular Biology (AREA)
- Crystallography & Structural Chemistry (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明提供一种基于并行改进的人工蚁群算法的RNA二级结构预测方法,人工蚁群算法在迭代寻优过程中存在收敛过慢的缺陷,对于人工蚁群算法改进方面,本发明采用多线程优化的方法,将每一只人工蚂蚁分配一个线程进行各自的线程搜索;在RNA二级结构预测方面,改进了子结构区分算法,使得算法更加适用于并行计算,同时是的使用改进并行人工蚁群算法预测RNA二级结构时,能获得更低的自由能,更快运算速度和更少的计算资源。
Description
技术领域
本发明涉及路径规划领域,尤其涉及一种基于CUDA改进人工蚁群算法的RNA二级结构预测方法。
背景技术
核酸序列是生物信息学主要研究的对象之一,它分为DNA核酸序列和RNA核酸序列,DNA携带合成RNA和蛋白质所必要的遗传信息,是生物体发育和正常运作必不可少的生物大分子。RNA存在于生物细胞以及部分病毒中,分为编码RNA和非编码RNA(ncRNA),前者负责编码蛋白也称为信使RNA(mRNA),后者为功能性RNA负责调控细胞的生长,发育和凋亡,其中比较常见的是核糖体RNA(rRNA)和运转RNA(tRNA)这两种RNA负责细胞的基础代谢,因此在多种组织和器官中均有连续表达;microRNA(miRNA)一般是长度为21-23个碱基对的发夹结构,在肿瘤的发生过程中有调控作用;除此之外还有核仁小分子RNA(snoRNA),小干扰RNA(siRNA)负责不同的功能。DNA的核酸是脱氧核糖,而RNA的核酸是核糖。与RNA相比,DNA的脱氧核糖缺少一个氧分子。组成DNA的核苷酸(nucleotide)包括A(腺嘌呤,adenine)、G(鸟嘌呤,guanine)、C(胞嘧啶,cytosine)和T(胸腺嘧啶,thymine),而RNA核苷酸有A,G,C和U(尿嘧啶,uracil)。在真核细胞(eukaryotic cells)中,DNA的结构是双螺旋的,而RNA的结构是各种形式的单链结构,RNA的单链结构允许RNA在必要的时候进行自身折叠,从而形成各种稳定的二级结构。
RNA的二级结构有两个重要的作用,第一,它可以帮助解释与RNA功能,RNA的功能常常与RNA的结构有关,二级结构是RNA所有结构中(一级结构、二级结构和三级结构)中最至关重要的,RNA一旦形成,会经过变化,形成特定的三级结构。三级结构的形成依赖于二级结构中碱基对之间的匹配。第二,对于二级结构的了解,也可以用来探究RNA的新功能。
发明内容
本发明的目的在于解决现有技术中存在的不足,提供一种基于改进人工蚁群算法的路径规划方法,从技术改进层面讲,通过CUDA的多线程技术,提高并行能力和计算效率。从而大幅度提升程序的运行速度。从算法改进层面讲,改进了RNA的子结构的区分算法。在使用自由能公式计算子结构能量之前,还需要对序列的各个子结构进行识别、区分,本文提出一种新的子结构区分算法,相比其它的子结构区分算法执行起来花费更少的时间复杂度和空间复杂度,并且适用于CUDA中的自由能的计算。
附图说明
为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明:
附图1为茎区矩阵图
附图2为茎区示例图
附图3为本发明流程图。
具体实施方式
为更加了解本发明的技术内容,特举具体实施方式配合图例进行说明如下。
实现本发明目的的技术方案是:一种基于CUDA改进人工蚁群算法的RNA二级结构预测方法,包括如下步骤:
步骤一:构建RNA二级结构茎区池;
步骤二:基于并行改进的人工蚁群进行计算最小自由能并构建相应的二级结构,避免陷入局部最优以获得全局最优解;
步骤三:对构建好的RNA二级结构进行可视化,生物信息学的工作人员可以更加直观的对RNA序列进行分析;
进一步的,所述步骤一的具体过程如下:
(1.1)根据图1所示,RNA序列S的长度N,构建N*N大小的茎区矩阵,并将序列字幕按次序放在首行的上一行,首列的前一列,然后在下三角矩阵中,根据碱基对匹配的规则,将矩阵中匹配碱基的对应位置设为1,将矩阵中不匹配碱基的对应位置设为0。碱基的种类包括A(腺嘌呤,adenine)、G(鸟嘌呤,guanine)、C(胞嘧啶,cytosine)和U(尿嘧啶,uracil)。根据Watson-Crick和GU摇摆碱基对配对法有六种配对方法:“AU”、“UA”、“CG”、“GC”、“GU”、“UG”。以RNA序列CGCCCAGCGAAAUGCAAAGUC为例,其茎区矩阵如图1所示。
(1.2)茎区矩阵建立好之后,在茎区矩阵中寻找连续的碱基对,其过程如下
a)从矩阵的左上角第i(0≤i≤N)行第j(0≤j≤N)开始,向矩阵右上(i+1,j-1)的方向搜索连续的碱基对,并在首个连续处停下。
b)计算连续碱基的长度是否大于茎区最小长度n,如果连续碱基的长度大于n则将此段连续的碱基保存起来,反之,则不保存。
c)继续向茎区矩阵的右上方寻找连续的碱基对,如果遇到匹配的碱基则执行b)。
d)如个寻找的位置到了矩阵的边缘,判断的条件为i=N或j=N,就将i和j重置为原来的位置,并将i设置为i+1。以RNA序列CGCCCAGCGAAAUGCAAAGUC,n=3为例,其茎区矩阵中连续如图1中所圈出碱基。
(1.3)完成茎区的寻找后,需要将寻找到的茎区作为茎区池保存,并作为下一步的输入。
(2.1)步骤二的过程如附图2所示,设置人工蚁群算法的参数,控制算法的参数包括种群大小colony_size、最大迭代次数steps,信息素蒸发的常数p,信息素初始值initial_pheromone,信息素的权重α,启发函数的权重β,启发函数η(l),线程数量m。信息素矩阵初始化全部为initial_pheromone。信息素矩阵的大小为与茎区池中茎区数量一致。将每只人工蚂蚁分配到不同的线程上。每只人工蚂蚁内部通过存储一个bitmap结构,判断对应位置的茎区是否被访问,初始化时,将所有的bitmap设为false。当访问过某一个节点后设为true。设置为true之后不再重复访问。
(2.2)判断两个茎区是否存在冲突和假结,对茎区A和茎区B而言冲突的判读如公式1所示
对于假结的判断如公式2所示
i<i′<j<j′(i,i′∈StemA and j,j′∈StemB) (2)
(2.3)判断茎区i是否与解决方案S冲突的三个条件
1.茎区i与解决方案S中每一个茎区都不冲突。
2.茎区i与解决方案S中每一个茎区都不构成假结(如果有需要)。
3.茎区i没有被蚂蚁k访问过。
(2.4)将所有符合(2.3)要求的茎区构造集合Nk。
(2.5)茎区选择算法的公式如公式3所示:
(2.6)每个节点的信息素更新算法为公式4所示:
(2.7)每个节点信息素的挥发遵从公式5:
τ(i)=(1-ρ)·τ(i) (5)
每次信息素都会在原有的基础上按照一定比例挥发。
(2.6)在RNA序列的实际折叠过程中长度更长的序列更容易被选中,启发函数的定义见公式6:
其中i表示某个茎区,i.length表示茎区序列的长度,paired_length表示所有匹配碱基的长度。
(2.7)在公式3为每个茎区生成了不同的概率,再通过轮盘赌算法返回通过概率计算得来的茎区。
(2.8)将计算得来的茎区添加到解决方案S中。
(2.9)计算解决方案S的自由能,自由能的计算如公式7所示:
E=Ehelices+Ehairpin+Ebulge+Eintermal+Emultibranch+Epknots (7)
RNA二级结构的自由能根据每一个部分不同计算得来。所以首先需要使用区分算法区分不同的结构。
(2.10)如果单链末梢两端碱基与同一个茎区a相邻,则这条单链s与茎区a属于同一个发夹环子结构,s属于发夹环子结构的环状单链,茎区a属于发夹环的茎区。如公式8所示。
s1-1,sn+1∈StemA (8)
(2.11)如果单链s的末梢两端所对应的碱基b1,b2,都是碱基对,且b1和b2所配对的碱基相邻一个单元,那么就认为单链s与b1b2所在茎区形成一个凸环子结构。如公式9所示。
b1+1=b2(b1=pair(s1),b2=pair(sn)) (9)
(2.12)对于一条单链s如果s末梢两端的碱基b1、b2是有配对,与b1、b2配对的碱基分别记做b′1和b′2,如果碱基b′1、b′2之间不存在其它的碱基对,则称b′1和b′2之间单链为s′,内环子结构包含单链s、s′、b1和b2所在茎区。如公式10所示
b1=pair(b′1),b2=pair(b′2)(b1,b2∈s,b′1,b′2∈s′) (10)
(2.13)从单链角度出发给出多分支环的定义,对于一条单链s1来说,如果这条单链s1的末梢两端所对应的碱基b1,b2,都是碱基对,并且任意一个碱基对,假设b1,令b1的配对碱基为b′1、b′1必然与一条新的的单链s2、s2的长度length(s2)≥0,单链s2的末梢两端的碱基为b′1和b3,b3又有配对碱基b′3,像这样继续下去,不断出现新的配对碱基和新的单链,直到有新的碱基bn有配对碱基b′n,并且b′n=b2
(2.14)对于假结的判断较为复杂,参照(2.2)中的方法。
(2.15)螺旋区自由能的计算方法为公式11:
Ehelices=Einitiation+EAUpenalty+Esymmetry+Estack (11)
其中内分子的初始自由能一般为常数Einitiation,每个以AU碱基对作为结尾的惩罚项的自由能为常数EAUpenalty,螺旋茎区的自对称自由能为常数Esymmetry,堆积的螺旋茎区自由能Estack。
(2.16)发夹茎区自由能的计算方法为公式12:
Ehairpin=Einitiation(n)+Emismatch+Epenalty(C) (12)
其中初始化自由能Einitiation(n)与内环的单链长度有关,而Emismatch是指螺旋茎区和发夹单链之间第一个不配的碱基的能量,Epenalty(C)是惩罚项
(2.17)凸环自由能的计算方法为公式13、公式14:
Ebulge(n=1)=Einitiation(n)+Epenalty(C)-RTln(n) (13)
Ebulge(n≥1)=Einitiation(n) (14)
计算凸环的能量需要分为两个部分,如果凸环单链长度唯一,则使用公式13,否则使用公式14。Epenalty(C)为惩罚项,RT是固定系数,Einitiation(n)与单链长度有关。
(2.18)内环来说,计算公式为公式15
Eintermal=Einitiation(n)+Easym*|n1-n2|+Emismatch(mismatch1)+Emismatch2(mismatch2) (15)
其中Easym*|n1-n2|为非对称项乘以内环中两条单链的差的绝对值,Emismatch(mismatch1)与Emismatch2(mismatch2)分别代表茎区与两条单链临界处第一个不匹配的碱基的能量值。
(2.19)多分支环来说,计算公式为公式16
Emultibranch=a+b×[averageasymmetry]+c×[numberof branchinghelices] (16)
其中a,b,c为系数,averagea symmetry代表每个螺旋茎区两侧单链碱基数量差值的平均值,number of branchinghelices是指多分支环中所有单链碱基的数量和。
(2.20)对于假结来说,如公式17,公式18,公式19所示
Epknots=Einitiation+Epairedbase+Eunpairedbase (17)
Epairedbase=bandpenalty+stacked_energy*paired_penalty (18)
Eunpairedbase=unpairedpenalty*n (19)
其中paired_pena,band_penalty都是惩罚项,unpairedpenalty为为匹配的惩罚项。
(2.21)使用公式7计算完自由能E之后使用公式20判断解决方案S是否接受这次添加。
Sold=min_energy(Sold,Snew) (20)
min_energy会返回两个解决方案S中的更小者。
(2.22)如果迭代次数达到steps,则终止算法,输出最小自由能的结果,否则回到(2.3)继续循环循环;
(3.1)将(2.22)求解出最小自由能的解决方案S转换为点括号的形式。匹配的碱基中位于前面的碱基用”(”表示,匹配的碱基中位于后面的碱基用”)”表示。没有被匹配的碱基用”.”表示。
(3.2)将上一步生成的点括号表达式绘制成图形输出。
Claims (4)
1.一种基于并行改进人工蚁群的RNA二级结构预测方法,其特征在于所述方法具体过程按如下步骤进行:
步骤一:构建RNA二级结构茎区池;
步骤二:基于并行人工蚁群进行计算最小自由能并构建相应的二级结构,避免陷入局部最优以获得全局最优解;
步骤三:对构建好的二级结构进行可视化。
2.根据权利要求1所述一种基于并行改进人工蚁群的RNA二级结构预测方法,其特征在于:所诉步骤一中根据RNA序列S和茎区最小长度n,构建茎区最小长度构建茎区池:
1)根据序列S的长度N,构建N*N大小的茎区矩阵,并将序列按次序放在首行的上一行,首列的前一列,然后在下三角矩阵中,根据碱基对匹配的规则,将矩阵中匹配碱基的对应位置设为1,将矩阵中不匹配碱基的对应位置设为0,碱基包括A(腺嘌呤,adenine)、G(鸟嘌呤,guanine)、C(胞嘧啶,cytosine)和U(尿嘧啶,uracil),根据Watson-Crick和GU摇摆碱基对配对法有六种配对方法:“AU”、“UA”、“CG”、“GC”、“GU”、“UG”,以RNA序列CGCCCAGCGAAAUGCAAAGUC为例。
2)茎区矩阵建立好之后,在茎区矩阵中寻找连续的碱基对,其过程如下:
a)从矩阵的左上角第i(0≤i≤N)行第j(0≤j≤N)开始,向矩阵右上(i+1,j-1)的方向搜索连续的碱基对,并在首个连续处停下。
b)计算连续碱基的长度是否大于茎区最小长度n,如果连续碱基的长度大于n则将此段连续的碱基保存起来,反之,则不保存。
c)继续向茎区矩阵的右上方寻找连续的碱基对,如果遇到匹配的碱基则执行b)。
d)如个寻找的位置到了矩阵的边缘,判断的条件为i=N或j=N,就将i和j重置为原来的位置,并将i设置为i+1,以RNA序列CGCCCAGCGAAAUGCAAAGUC,n=3为例,其茎区矩阵中连续如图1中所圈出碱基。
3)完成茎区的寻找后,需要将寻找到的茎区作为茎区池保存,并作为下一步的输入。
3.根据权利要求1所述一种基于并行改进人工蚁群的RNA二级结构预测方法,其特征在于:所诉步骤二中一种基于并行改进人工蚁群的RNA二级结构预测方法,避免陷入局部最优以获得全局最优解;具体过程为:
1)从设置人工蚁群算法的参数,控制算法的参数包括种群大小colony_size、最大迭代次数steps,信息素蒸发的常数ρ,信息素初始值initial_pheromone,信息素的权重α,启发函数的权重β,启发函数η(i),线程数量m,信息素矩阵初始化全部为initial_pheromone;信息素矩阵的大小为与茎区池中茎区数量一致,将每只人工蚂蚁分配到不同的线程上,每只人工蚂蚁内部通过存储一个bitmap结构,判断对应位置的茎区是否被访问,初始化时,将所有的bitmap设为false,当访问过某一个节点后设为true,设置为true之后不再重复访问。
2)当判断两个茎区是否存在冲突和假结,对茎区A和茎区B而言冲突的判读如公式1所示
对于假结的判断如公式2所示
i<i′<j<j′(i,i′∈StemA and j,j′∈StemB) (2)
3)判断茎区i是否与解决方案S冲突的三个条件
1.茎区i与解决方案S中每一个茎区都不冲突。
2.茎区i与解决方案S中每一个茎区都不构成假结(如果有需要)。
3.茎区i没有被蚂蚁k访问过。
4)将所有符合(2.3)要求的茎区构造集合Nk。
5)茎区选择算法的公式如公式3所示:
其中pk(i)表示第k个蚂蚁选择第i个茎区的概率,τ是表示信息素,η表示启发函数。
6)每个节点的信息素更新算法为公式4所示
7)每个节点信息素的挥发遵从公式5:
τ(i)=(1-ρ)·τ(i) (5)
每次信息素都会在原有的基础上按照一定比例挥发。
8)在RNA序列的实际折叠过程中长度更长的序列更容易被选中,启发函数的定义见公式6
其中i表示某个茎区,i.length表示茎区序列的长度,paired_length表示所有匹配碱基的长度。
9)在公式3为每个茎区生成了不同的概率,再通过轮盘赌算法返回通过概率计算得来的茎区。
10)将计算得来的茎区添加到解决方案S中。
11)计算解决方案S的自由能,自由能的计算如公式7所示:
E=Ehelices+Ehairpin+Ebulge+Eintermal+Emultibranch+Epknots (7)
RNA二级结构的自由能根据每一个部分不同计算得来,所以首先需要使用区分算法区分不同的结构。
12)如果单链末梢两端碱基与同一个茎区a相邻,则这条单链s与茎区a属于同一个发夹环子结构,s属于发夹环子结构的环状单链,茎区a属于发夹环的茎区,如公式8所示:
s1-1,sn+1∈StemA (8)
13)如果单链s的末梢两端所对应的碱基b1,b2,都是碱基对,且b1和b2所配对的碱基相邻一个单元,那么就认为单链s与b1 b2所在茎区形成一个凸环子结构,如公式9所示。
b1+1=b2(b1=pair(s1),b2=pair(sn)) (9)
14)对于一条单链s如果s末梢两端的碱基b1、b2是有配对,与b1、b2配对的碱基分别记做b′1和b′2,如果碱基b′1、b′2之间不存在其它的碱基对,则称b′1和b′2之间单链为s′,内环子结构包含单链s、s′、b1和b2所在茎区,如公式10所示。
b1=pair(b′1),b2=pair(b′2)(b1,b2∈s,b′1,b′2∈s′) (10)
15)从单链角度出发给出多分支环的定义,对于一条单链s1来说,如果这条单链s1的末梢两端所对应的碱基b1,b2,都是碱基对,并且任意一个碱基对,假设b1,令b1的配对碱基为b′1、b′1必然与一条新的的单链s2、s2的长度length(s2)≥0,单链s2的末梢两端的碱基为b′1和b3,b3又有配对碱基b′3,像这样继续下去,不断出现新的配对碱基和新的单链,直到有新的碱基bn有配对碱基b′n,并且b′n=b2。
16)对于假结的判断较为复杂,参照(2.2)中的方法。
17)螺旋区自由能的计算方法为公式11:
Ehelices=Einitiation+EAUpenalty+Esymmetry+Estack (11)
其中内分子的初始自由能一般为常数Einitiation,每个以AU碱基对作为结尾的惩罚项的自由能为常数EAUpenalty,螺旋茎区的自对称自由能为常数Esymmetry,堆积的螺旋茎区自由能Estack。
18)发夹茎区自由能的计算方法为公式12:
Ehairpin=Einitiation(n)+Emismatch+Epenalty(C) (12)
其中初始化自由能Einitiation(n)与内环的单链长度有关,而Emismatch是指螺旋茎区和发夹单链之间第一个不配的碱基的能量,Epenalty(C)是惩罚项。
19)凸环自由能的计算方法为公式13、公式14:
Ebulge(n=1)=Einitiation(n)+Epenalty(C)-RTln(n) (13)
Ebulge(n≥1)=Einitiation(n) (14)
计算凸环的能量需要分为两个部分,如果凸环单链长度唯一,则使用公式13,否则使用公式14,Epenalty(C)为惩罚项,RT是固定系数,Einitiation(n)与单链长度有关。
20)如内环来说,计算公式为公式15
Eintermal=Einitiation(n)+Easym*|n1-n2|
+Emismatch(mismatch1)+Emismatch2(mismatch2) (15)
其中Easym*|n1-n2|为非对称项乘以内环中两条单链的差的绝对值,Emismatch(mismatch1)与Emismatch2(mismatch2)分别代表茎区与两条单链临界处第一个不匹配的碱基的能量值。
21)多分支环来说,计算公式为公式16
Emultibranch=a+b×[averageasymmetry]+c×[numberofbranchinghelices](16)
其中a,b,c为系数,averagea symmetry代表每个螺旋茎区两侧单链碱基数量差值的平均值,number of branchinghelices是指多分支环中所有单链碱基的数量和。
22)对于假结来说,如计算公式17,18,19所示
Epknots=Einitiation+Epairedbase+Eunpairedbase (17)
Epairedbase=bandpenalty+stacked_energy*paired_penalty (18)
Eunpairedbase=unpairedpenalty*n (19)
其中paired_pena,band_penalty都是惩罚项,unpairedpenalty为为匹配的惩罚项。
23)使用公式7计算完自由能E之后使用公式20判断解决方案S是否接受这次添加:
Sold=min_energy(Sold,Snew) (20)
min_energy会返回两个解决方案S中的更小者。
24)如果迭代次数达到steps,则终止算法,输出最小自由能的结果,否则回到2)继续循环循环。
4.根据权利要求1所述一种基于改进人工蜂群算法的路径规划方法,其特征在于:所诉步骤三中将解决方案S进行可视化;具体过程为:
1)将(2.22)求解出最小自由能的解决方案S转换为点括号的形式,匹配的碱基中位于前面的碱基用”(”表示,匹配的碱基中位于后面的碱基用”)”表示,没有被匹配的碱基用”.”表示。
2)将上一步生成的点括号表达式绘制成图形输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110253566.5A CN112908409A (zh) | 2021-03-09 | 2021-03-09 | 一种基于并行改进人工蚁群算法的rna二级结构预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110253566.5A CN112908409A (zh) | 2021-03-09 | 2021-03-09 | 一种基于并行改进人工蚁群算法的rna二级结构预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112908409A true CN112908409A (zh) | 2021-06-04 |
Family
ID=76108103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110253566.5A Pending CN112908409A (zh) | 2021-03-09 | 2021-03-09 | 一种基于并行改进人工蚁群算法的rna二级结构预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112908409A (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108629150A (zh) * | 2018-03-16 | 2018-10-09 | 西安电子科技大学 | 基于多种群协助的量子遗传算法的rna二级结构预测方法 |
-
2021
- 2021-03-09 CN CN202110253566.5A patent/CN112908409A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108629150A (zh) * | 2018-03-16 | 2018-10-09 | 西安电子科技大学 | 基于多种群协助的量子遗传算法的rna二级结构预测方法 |
Non-Patent Citations (1)
Title |
---|
李建明等: "一种基于GPU加速的细粒度并行蚁群算法", 《控制与决策》, pages 1132 - 1136 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yoon et al. | Prediction of regulatory modules comprising microRNAs and target genes | |
CN111310999B (zh) | 一种基于改进蚁群算法的仓库移动机器人路径规划方法 | |
Zhang et al. | CircRNA-disease associations prediction based on metapath2vec++ and matrix factorization | |
CN105469145B (zh) | 一种基于遗传粒子群算法的智能组卷方法 | |
US20050272923A1 (en) | Mature microRNA prediction method using bidirectional hidden markov model and medium recording computer program to implement the same | |
CN102945333B (zh) | 一种基于先验知识和网络拓扑特性的关键蛋白预测方法 | |
CN113407185B (zh) | 基于贝叶斯优化的编译器优化选项推荐方法 | |
JP2008146538A (ja) | マイクロrna検出装置、方法およびプログラム | |
CN114662638A (zh) | 基于改进人工蜂群算法的移动机器人路径规划方法 | |
CN115391385A (zh) | 一种基于蚁群遗传动态融合算法的数据库查询优化方法 | |
CN109390032B (zh) | 一种基于进化算法在全基因组关联分析的数据中探索与疾病相关的snp组合的方法 | |
CN112908409A (zh) | 一种基于并行改进人工蚁群算法的rna二级结构预测方法 | |
Sav et al. | SIMARD: A simulated annealing based RNA design algorithm with quality pre-selection strategies | |
Srikamdee et al. | RNA secondary structure prediction with coincidence algorithm | |
CN110222023B (zh) | 基于Spark与蚁群优化的多目标并行属性约简方法 | |
CN116705142A (zh) | 基于二进制量子粒子群优化算法与通量平衡分析混合算法的代谢产物优化方法 | |
CN116013409A (zh) | miRNA靶基因预测及其模型训练的方法、系统和存储介质 | |
CN113641471B (zh) | 基于遗传算法模型的软负载调度方法、装置、设备及介质 | |
Liu et al. | Multi-objective evolutionary algorithm for mining 3D clusters in gene-sample-time microarray data | |
CN111488991A (zh) | 结合遗传和离散差分的布谷鸟算法的通信社区检测方法 | |
CN117253549B (zh) | 通路相关性的确定方法及装置、存储介质及电子设备 | |
CN117497092B (zh) | 基于动态规划和量子退火的rna结构预测方法及系统 | |
Bu et al. | An efficient deep learning based predictor for identifying miRNA-triggered phasiRNA loci in plant | |
US20220246235A1 (en) | System and method for gene editing cassette design | |
Pant et al. | Decision tree classifier for classification of plant and animal micro RNA’s |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |