一种基于簇图结构的并行基因拼接算法

文档序号:6523090阅读:271来源:国知局
一种基于簇图结构的并行基因拼接算法
【专利摘要】本发明提供一种基于簇图结构的并行基因拼接算法。本发明以多个其他基因拼接算法的拼接得到的长序列(scaffold)和双端测序仪生成的短读长基因序列(read-pair)为输入,通过构建索引、映射read-pair、scaffold聚簇、构建簇图、搜索路径等步骤将具有互补的scaffold拼接成更长的序列。构建索引和读长映射两个步骤旨在通过读长找到不同算法获得的长序列scaffold之间的相关性和匹配度,然后通过相关性和匹配度进行聚簇,簇内的所有scaffold具有互补性,是潜在的可拼接的序列。最后构建簇图,求解图的全局最长路径,得到拼接的长基因序列。
【专利说明】一种基于簇图结构的并行基因拼接算法
【技术领域】
[0001]本发明属于生物信息学【技术领域】,具体涉及一种新的基于簇图结构的并行基因拼接算法。
【背景技术】
[0002]自从2006年5月18日《自然》杂志报道称,科学家已对含有2.23亿个碱基对占人类基因组中碱基对总量的8%左右的人类第一号染色体完成测序宣告持续16年的人类基因组计划全部完成。作为人类自然科学史上重要的里程碑,“人类基因组”的研究已从“结构基因组”阶段进入“功能基因组”阶段。在人类基因组计划后相继推出的水稻基因组计划、马铃薯基因组计划、草鱼基因组计划等和快速增长的微生物基因测序“海量”的基因信息的积累催生了 “功能基因组”时代的来临。针对充分利用“海量”基因组信息的生物信息学不仅应运而生而且为以注释、阐明基因功和利用基因生物学功能的“后基因组时代”的研究发挥了重大作用。
[0003]基因组测序的目的就是要确定DNA分子的碱基序列,而DNA序列拼接则是基因组测序的关键技术之一。DNA序列拼接的定义可概括为:从DNA片段集合F中重构该DNA序列S,其中F为该DNA序列S的子序列。无模版拼接算法,是指在没有参考基因作为模板的情况下,根据F重构S。这些重构的DNA源序列可以被进一步的评估和分析,可以成为解决生物问题的线索,如寻找致病病毒、进行药物设计、研究如何将纤维物质转化为生物燃料、揭示生物遗传和变异的。另外,对进行基因诊断、基因治疗、药物设计都有巨大的作用。
[0004]基因组拼接的挑战在于将碎片状的读长进行重建得到原始的基因组。基于化学的第一代测序技术一桑格测序方法得到的读长的长度范围从大约500至1000个碱基。像Illumina, Complete Genomics 公司、Helicos、454 Life Sciences、SOLID、1n Torrent 公司等这些新一代的技术是以牺 牲读长的长度为代价获得高产量。这种海量的、短小的、包含错误的读长数据导致了拼接的高难度。
[0005]随着新一代基因组测序技术的推广使用,全基因组Shotgun拼接算法和软件得到了广泛的研究。当前的基因测序技术获得的DNA序列数据相对于第一代测序方法一Sanger测序表现为:高通量、高覆盖率、低成本,与此同时还具有短读长、更多类型的错误等特点,而且普通高等生物的基因组碱基数目巨大,如人类基因组总长约30亿bp。另外,高等生物的基因还具有非常复杂的重复结构,因而基因组的无模板拼接具有很大难度。自从2005年以后,出现了多种基于下一代测序平台基因序列的从头拼接算法软件包,包括:
【权利要求】
1.一种基于簇图结构的并行基因拼接算法,其特征在于所述基因拼接算法包含创建簇图和搭建并行框架; 其中创建簇图指的是:根据原始基因数据(read-pair)与其他算法生成结果长序列(scaffold)之间的映射结果对scaffold进行相似性和匹配度计算,然后进行聚簇,簇中的两个匹配的 scaffold 构成 scaffold 对(scaffold-pair),所有 scaffold-pair 中具有多个匹配的区域,以这些区域作为节点,他们之间的连接构成边,创建簇图; 搭建并行框架指的是:贯穿在整个基因拼接算法的各个步骤中,包括读写文件、构建索弓1、短读长映射、scaffold聚簇、构建簇图、搜索路径等步骤;采用的并行框架对每个步骤中的任务进行分割、执行、合并,执行过程中节省了大量的时间; 包括以下步骤: (1)数据准备:准备本方法所有的输入数据,包括两种数据,一是原始的双端读长(read-pair)数据,这个可以在NCBI上获得;二是来自其他拼接算法的结果数据scaffold ;这两类数据分别要进行预处理; (2)构建索引:构建索引就是要将来自其他拼接算法的结果数据scaffold所包含的序列建立一个索引结构,这个索引结构为下一步读长映射提供基础; 索引构建完毕,将得到每个算法的scaffold的索引文件; (3)读长映射:利用索引将read-pair映射到scaffold上; 首先将上一步中生成的索引文件读入到内存,接下来就是对读长进行映射了,映射的方式并没有采用读长序列中所有的碱基,而是只使用了读长对的内侧的一部分(L=3*k_mer),所谓内侧是指left read的右端和right read的左端; 规定只有这部分映射成功之后,整个读长对就可映射成功,映射结果表现为一个scaffold的不同的位置上有多个read与之映射; (4)Scaffold聚簇:为了下一步进行拼接生成簇图,首先对所有的scaffold进行聚簇; 每个scaffold的特征由上一步映射结果得到的read的集合 -j.来体现,根据计算不同scaffold对应的read集合之间的相关性和scaffold之间的匹配程度,我们找到互补的、潜在的、可拼接的scaffold对(scaffold-pair),并将他们聚到同一个簇中,对于每一个簇将会通过构建簇图并寻找最长路径的方式得到的长序列; (5)构建簇图:构建簇图的过程包括生成子图和合并子图两个步骤,即对于簇f中第J个contig生成子图,然后将簇中所有.SG^-合并成能表示一个簇的最终图0?,最后求解簇图的最长路径;最长路径所包含的碱基序列即为我们算法拼接之后的结果; (6)生成拼接结果:得到簇图之后,通过计算簇图的最长路径,根据路径信息得到拼接成的基因序列。
2.根据权利要求1所述的方法,其特征在于数据准备步骤要下载的基因序列原始数据要求是来自Illumina测序平台生成的双端短序列,文件格式要是fasta或fastq格式,其他格式的文件需要先进行转换;对于从NCBI官方网站上下载的数据一般是SRA格式,需要使用SRA Toolkit工具包将下载得到的*.sra文件转化成要求的fastq和fasta格式的数据文件; 运行命令:
$ fastq-dump —split-files 转换得到两个文件,是读长对(read-pair)分别存储的左读长(left reads)和右读长(right reads)的 fastq 文件; 数据准备步骤要准备的第二类数据是长序列scaffold文件;该文件是其他基因拼接算法的结果文件,所以需要配置并运行这些算法,并得到最终结果,这些拼接算法可以是Velvet、ABySS、SOAPdenovo、Ray; 数据预处理要求处理未知碱基,DNA序列中碱基只有四种,即A、C、G、T ;然而由于测序过程中的一些技术限制或错误导致了未能准确区别两种碱基,从而生成了不确定的非A、C、G、T碱基,需要采用一定的方法将这些不确定的碱基进行确定话。
3.根据权利要求1所述的方法,其特征在于,所述索引结构是首先共享的索引可供多个线程访问,其次索引结构是采用的是预分配空间直接存取的方式,这种方式节省了映射过程中查找序列的时间。
4.根据权利要求1所述的方法,其特征在于,所述短读长(read)高通量基因测序平台产生的序列,一次测序中仪器读取的核苷酸序列,该序列是原始DNA序列经过随机打断生成的碎片序列,基因序列的无模板拼接(de novo assembly)就是要将这些碎片序列拼接成更长的序列;高通量测序中read —般会成对出现,也就是以read-pair形式存在。
5.根据权利要求1所述的方法,其中所述Scaffold,是由其他拼接方法产生的更长的序列,在实际情况中,scaffold和scaffold之间并不能直接连接起来,很多情况下是它们之间只有通过它们内部的一些小的read之间的某些距离信息或者mate信息进行连接,它借助其他reads之间的关系信息,把contig直接的缝隙进行填充。
6.根据权利要求1所述的方法,其特征在于所述方法实现的算法软件包可以运行在64位或32位Linux/Mac/Windows等多类型的操作系统中,推荐使用64_bit,系统需要的软件包依赖是Java、R、rjava包;其中Java支持32_bit版本,推荐使用64_bit;版本选用JDK1.6版以上(包括1.6);运行软件包时可以修改相关的配置文件,以软件包分配合适的运行时内存; Linux系统下可安装OpenJDKl.6版以上(包括1.6)。
7.根据权利要求1所述所述的方法,其特征在于其内存要求IlOG以上,所需内存大小主要是由基因数据集的测试深度和物种的基因组序列的长度决定的,实验中用到的是测试深度约为500、物种的基因组序列的长度大约为数据集(ERR022075)大约消耗内存110Gb。
8.根据权利要求1所述所述的方法,其特征在于其处理器是多核的,核数的多少直接影响拼接执行的时间。
9.根据权利要求1所述的方法,其特征在于所述软件包依赖,其中R包含2.5.X版本以及以上版本,下载网址。
10.根据权利要求1所述的方法,其特征在于所述软件包依赖,其中rjava包:在R中安装rjava软件包,命令:install, packages ("rjava") ;R和rjava包是用于绘图,提供了用于绘制簇图和相关性能分析和评价的可视化接口。
【文档编号】G06F19/18GK103761453SQ201310666751
【公开日】2014年4月30日 申请日期:2013年12月9日 优先权日:2013年12月9日
【发明者】陈科, 徐魁 申请人:天津工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1