论文部分内容阅读
DNA序列数据量巨大,其相关压缩技术是生物信息学中必不可少的关键技术,是DNA序列数据有效存储、读取和传输的基础,是进行DNA测序拼接、序列比对、基因预测等的前提,因此,对DNA序列数据的压缩技术进行研究具有非常重要的理论意义与应用价值。近年来,随着信息处理技术的发展以及对DNA序列数据自身特点研究的深入,各种专门针对DNA序列数据的压缩算法大量涌现。本文从DNA序列数据具有高度重复性的特点出发,对序列中长度很小的k-mer子序列片段重复性进行了统计分析,并归纳和总结了DNA序列数据碱基及k-mer短序列分布的重复性规律。针对DNA序列中,不同片段区域k-mer分布具有很大差异性的特点,提出了基于分段编码的DNA数据压缩算法。在预处理阶段,将DNA序列分割成64个碱基一组的短序列片段,对每一个片段分别进行独立考虑。统计片段中重复率最高的3-mer子序列,利用其在片段中出现的次数和位置等信息进行替代编码,从而对DNA序列进行压缩。分段编码压缩算法简单,对常用基准测试序列都能具有比较好的压缩性能。针对DNA序列中,k-mer长度很小时,部分k-mer具有很高重复性的特点,提出了基于GA-PSO混合优化的DNA数据压缩算法,将DNA序列中等长k-mer的不同组合抽象成不同的寻优粒子,用GA-PSO混合优化算法搜索序列中重复性高,能达到最大压缩率的最优k-mer组合,对序列中出现的最优k-mer进行编码,从而对序列进行压缩。GA-PSO混合优化算法中,每一轮迭代寻优前,先用支持向量机模型将DNA碱基粒子群分成两组,然后分别采用GA算法和PSO算法优化。实验结果表明,本算法能获得比较高的压缩率,而且相比于传统算法,具有更好的鲁棒性。