Faster algorithms for optimal multiple sequence alignment based on pairwise comparisons.
Multiple Sequence Alignment (MSA) is one of the most fundamental problems in computational molecular biology. The running time of the best known scheme for finding an optimal alignment, based on dynamic programming, increases exponentially with the number of input sequences. Hence, many heuristics were suggested for the problem. We consider a version of the MSA problem where the goal is to find an optimal alignment in which matches are restricted to positions in predefined matching segments. We present several techniques for making the dynamic programming algorithm more efficient, while still finding an optimal solution under these restrictions. We prove that it suffices to find an optimal alignment of the predefined sequence segments, rather than single letters, thereby reducing the input size and thus improving the running time. We also identify "shortcuts" that expedite the dynamic programming scheme. Empirical study shows that, taken together, these observations lead to an improved running time over the basic dynamic programming algorithm by 4 to 12 orders of magnitude, while still obtaining an optimal solution. Under the additional assumption that matches between segments are transitive, we further improve the running time for finding the optimal solution by restricting the search space of the dynamic programming algorithm.
Bilu
Yonatan
Y
Department of Molecular Genetics, Weizmann Institute of Science, Rehovot, Israel. yonatan.bilu@weizmann.ac.il
Agarwal
Pankaj K
PK
Kolodny
Rachel
R
D000465:Algorithms; D020137:Base Pair Mismatch; D002874:Chromosome Mapping / Q000379:methods*; D004251:DNA Transposable Elements / Q000235:genetics*; D016415:Sequence Alignment / Q000379:methods; D017422:Sequence Analysis, DNA / Q000379:methods*; D020539:Sequence Analysis, Protein / Q000379:methods*
D004251:DNA Transposable Elements