论文部分内容阅读
DNA和RNA核酸分子在生物的整个进化过程中是不可缺少的一部分。近年来随着生物技术的发展,经过优化设计的核酸分子的自组装技术在生物分子计算、生物传感器、靶向药物治疗等领域也有着重要应用。在这些领域中,核酸分子的优化设计和结构预测是一个重要的研究内容。核酸分子可以通过碱基的氢键吸引,折叠自身而形成多样的二级结构。任意的单链核酸分子都存在海量的碱基匹配组合,究竟哪种匹配的结构是核酸分子最稳定的结构是个复杂的组合优化问题。此外,包含假结的核酸分子二级结构预测问题已被证明是一个NP完全问题。因此,预测含假结的核酸分子的二级结构是一个重要的热点问题和难点问题,具有重要的理论意义和应用价值。目前,国内外许多学者已提出了预测核酸分子二级结构的各种算法。在目前已有的算法中,精确算法在核酸分子规模较小时有不错的搜索效果,但随着核酸分子碱基数量的增多,这些精确算法就显得有些无能为力,无法在有限的时间内预测出核酸分子的结构,且传统的动态规划算法无法预测出假结;另一方面,有些近似算法虽然能够处理碱基数量较多的核酸分子序列,但收敛速度过慢。通过对PseudoBase数据库中含假结的RNA分子进行观察,虽然这些RNA分子二级结构的圆顶图存在交叉的边,无法用传统的动态规划算法求解,但是这些图实际上都是可平面图。本文提出一种基于遗传算法的含假结的二级结构预测算法,允许在RNA分子骨架的下方连接氢键形成可平面的假结,最大程度地降低核酸分子的自由能。算法用茎区的长度和自由能一起作为作评估个体的标准,针对核酸分子的特点,提出了改进的交叉、变异遗传算子。本文利用PseudoBase数据库的核酸实例进行了测试,并与ProbKnot、Mfold、HotKnots等其它著名的核酸二级结构预测算法进行比较,分析结果证明了本文算法的有效性和可靠性。为了进一步提高求解较长的核酸分子的计算效率,本文选择了NVIDIA公司推出的CUDA并行计算模型,将遗传算法中种群初始化、适应度计算、选择、交叉、变异等重要的遗传算子进行并行化,利用GPU进行并行计算。实验结果表明,和传统的基于CPU的遗传算法相比,这种基于GPU的并行计算模式可以显著提高算法的效率。