论文部分内容阅读
基因组测序技术为生物学研究提供了基础数据,从而有力地推动了对生命活动规律的理解与认识。然而由于受限于测序技术,测序仪每次只能读出基因组上一个短片段,而不是一次读出完整的基因组序列。因此,从短片段恢复出完整基因组的序列拼接是生物信息学的一个基本问题。 测序技术不断发展,经历了第一代的Sanger法,以及“边合成边测序”策略的第二代测序法,现在又发展出来采用单分子技术的第三代测序法。不同测序技术产生的数据具有不同的特点,对拼接造成不同的困难。比如第二代测序数据读段(reads)比较短、通量高,因此基因组中大量存在的重复序列是拼接的主要问题;第三代测序技术产生读段长,天然具有解决一些重复序列的潜力;但是错误率很高且Ins/del错误多,使得难以直接用第三代测序数据进行拼接。 本文主要报告了两方面的工作: 1)提出了针对第二代测序数据的全局优化拼接方法:我们设计了新的针对第二代数据的序列拼接的拆解de Bruijn形成contigs的算法,并与他人合作开发了第二代测序数据的基因组序列拼接软件ARCS。我们的算法产生压缩de Bruijn图,估计压缩边的序列重数,挑选unique压缩边,利用pair-kmer的插入距离信息,估计unique压缩边之间的距离,并采用线性规划技术求得unique压缩边的最优排布,最终形成更长的contigs和scaffolds。 2)提出了第二、三代测序数据联合拼接算法:我们设计并开发了第二、三代测序数据联用的序列拼接软件ARCS23。我们不是采用“先拼接二代数据形成scaffolds,再用三代拼接scaffolds”的策略,而是利用长的第三代reads直接拆解二代数据的de Bruijn图。算法利用第二代测序数据形成压缩de Bruijn图,采用线性规划技术获得二代数据压缩边的最优排布,从而跨过复杂的重复序列,形成更长的contigs和scaffolds。 在多套真实测试数据集上的实验表明:同已有拼接软件做系统比较,两种拼接软件都取得了比较好的结果,显著地提高了拼接的长度。