多序列集的分布与沉积算法
数据结构与算法
2010-05-03 v4 分布式、并行与集群计算
离散数学
摘要
序列集是许多应用中使用的数学模型。随着序列数量的增加,单序列集模型已不适用于快速增长的问题规模。例如,越来越多的文本处理应用在处理前将单个大文本文件分割成多个文件。对于这些应用,其底层数学模型是多序列集(MSS)。尽管MSS的使用日益增多,但关于如何高效处理MSS的研究却很少。为了处理多序列集,首先将序列分布到不同的集合中,然后处理每个集合中的序列。推导有效的MSS处理算法既有趣又具有挑战性。在本文中,我们定义了用于分析合成序列质量的成本函数和性能比。在此基础上,提出了多序列集处理(PMSS)问题。我们首先针对PMSS问题提出了两种贪心算法,它们基于对单序列集算法的推广。然后,基于对多序列集特征的分析,我们针对PMSS问题提出了分布与沉积(DDA)算法和DDA*算法。在DDA算法中,首先根据序列的字母表内容将序列分布到多个集合中;然后通过沉积算法沉积每个集合中的序列。DDA*算法与DDA算法的不同之处在于,DDA*算法通过基于序列谱的聚类来分布序列。实验表明,DDA和DDA*总是输出成本低于其他算法的结果,并且DDA*在大多数实例中优于DDA。DDA和DDA*算法在时间和空间上也是高效的。
引用
@article{arxiv.0904.1242,
title = {The Distribution and Deposition Algorithm for Multiple Sequences Sets},
author = {Kang Ning and Hon Wai Leong},
journal= {arXiv preprint arXiv:0904.1242},
year = {2010}
}
备注
15 pages, 7 figures, extended version of conference paper presented on GIW 2006, revised version accepted by Journal of Combinatorial Optimization.