论文部分内容阅读
目的:
近年来随着测序技术的飞跃发展,越来越多的微生物基因组将被测序。从头组装一个微生物基因组主要分为两个阶段,第一个阶段把测序的原始序列进行拼接得到重叠群,第二个阶段是分析这些重叠群之间的关系并进行补洞。第一个阶段的生物信息学方法已经比较成熟,然而第二个阶段,尚缺乏很有效的生物信息学分析工具。并且我们发现了当前生物信息学领域尚缺少一个简单、实用的文件处理框架,所以我们这个项目的目的是:设计并完成一个非常实用的生物信息学文件处理框架,来满足一般的生物信息学分析需求;并以此框架为基础搭建一个基于蚁群遗传算法的基因组组装平台,来帮助科研工作者们完成细菌基因组组装“完成”(finish)阶段。这个平台要具有很好的用户体验,能够快速有效地得到重叠群之间的排列顺序,并能对重叠群之间的排列顺序进行可视化,还能根据重叠群排列顺序自动设计PCR引物,当分析流程结束能够及时通知用户,让用户在第一时间获得分析结果。
方法:
1.对基因组分析常用功能进行分析抽象,参考GOF设计模式设计基因组分析框架。
2.采用AJAX技术提升用户体验。
3.通过Blast程序获得重叠群相对于参考序列的坐标信息,采用蚁群遗传算法优化重叠群排列关系。
4.采用Perl的SVG模块可视化重叠群排列关系预测结果。
5.读取重叠群排列关系结果文件,根据重叠群排列关系整合Primer3进行批量引物设计。
6.采用JavaMailAPI进行邮件操作。
结果:
1.我们构建了一个基因组分析框架,代码具有良好的可靠性、可读性和可重用性,能够胜任常见的生物信息学分析任务。该框架实现了对生物信息学常见文件格式(FASTA、FASTQ、GFF、BED、VCF、BAM和SAM)的读写操作,并实现了可以对这些文件进行排序,过滤和注释。
2.实时获取用户上传重叠群文件大小,并实时反馈上传信息给用户,包括用户上传文件总大小,当前已上传文件大小,以及当前上传所用时间,上传完整个总共所需时间,还剩余多少时间才能上传完成等信息。
3.长度短于一定阈值的序列都被过滤掉,剩下的Contig的排列关系被预测出来。
4.用一张排列相连的箭头组成的SVG图片表示排列关系预测结果,该图片可以根据用户输入缩放倍数进行缩放,当鼠标悬停在某个箭头上时,弹出提示框提示该箭头所代表的Contig名字。并且用不同的颜色表示不同的contig方向,两个contig直接的距离也被标示出来。
5.能够根据用户所设参数批量设计PCR引物,所设计的PCR引物结果以表格的形式显示在网页上,并且同时PCR引物结果还被以文本文件的形式存放到网页上,可供批量下载。
6.用户每次提交任务都被分配给一个ID,当整个分析过程完成,自动发送该任务的分析结果链接到用户邮箱,用户点击此链接便可跳转到相应任务结果界面。
结论:
1.良好的分析框架设计,可以加快生物信息学工具开发,方便后续升级维护。
2.良好的用户体验对软件开发来说至关重要。
3.基于遗传算法的重叠群排列关系预测,适合基因组组装后期补洞应用。