Hostname: page-component-77c89778f8-cnmwb Total loading time: 0 Render date: 2024-07-19T07:56:00.495Z Has data issue: false hasContentIssue false

A sparse dynamic programming algorithm for alignment with non-overlapping inversions

Published online by Cambridge University Press:  15 March 2005

Alair Pereira do Lago
Affiliation:
Universidade de São Paulo, Brasil; alair@ime.usp.br
Ilya Muchnik
Affiliation:
Rutgers University
Casimir Kulikowski
Affiliation:
Rutgers University
Get access

Abstract

Alignment of sequences is widely used for biological sequence comparisons, and only biological events like mutations, insertions and deletions are considered. Other biological events like inversions are not automatically detected by the usual alignment algorithms, thus some alternative approaches have been tried in order to include inversions or other kinds of rearrangements. Despite many important results in the last decade, the complexity of the problem of alignment with inversions is still unknown. In 1992, Schöniger and Waterman proposed the simplification hypothesis that the inversions do not overlap. They also presented an O(n6) exact solution for the alignment with non-overlapping inversions problem and introduced a heuristic for it that brings the average case complexity down. (In this work, n is the maximal length of both sequences that are aligned.) The present paper gives two exact algorithms for the simplified problem. We give a quite simple dynamic program with O(n4)-time and O(n2)-space complexity for alignments with non-overlapping inversions and exhibit a sparse and exact implementation version of this procedure that uses much less resources for some applications with real data.

Keywords

Type
Research Article
Copyright
© EDP Sciences, 2005

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

D.A. Bader, B.M.E. Moret and M. Yan, A linear-time algorithm for computing inversion distance between signed permutations with an experimental study, in Algorithms and data structures (Providence, RI, 2001), Lect. Notes Comput. Sci. 2125 (2001) 365–376.
Caprara, A., Sorting permutations by reversals and Eulerian cycle decompositions. SIAM J. Discrete Math. 12 (1999) 91110 (electronic). CrossRef
D.A. Christie, A 3/2-approximation algorithm for sorting by reversals, in Proc. of the Ninth Annual ACM-SIAM Symposium on Discrete Algorithms (San Francisco, CA, 1998). ACM, New York (1998) 244–252.
A.P. do Lago, C.A. Kulikowski, E. Linton, J. Messing and I. Muchnik, Comparative genomics: simultaneous identification of conserved regions and their rearrangements through global optimization, in The Second University of Sao Paulo/Rutgers University Biotechnology Conference, Rutgers University Inn and Conference Center, New Brunswick, NJ (August 2001).
A.P. do Lago, A sparse dynamic programming algorithm for alignment with inversions. Workshop on Combinatorics, Algorithms, and Applications (2003).
A.P. do Lago, I. Muchnik and C. Kulikowski, An o(n4) algorithm for alignment with non-overlapping inversions, in Second Brazilian Workshop on Bioinformatics, WOB 2003, Macaé, RJ, Brazil (2003) http://www.ime.usp.br/~alair/woob03.pdf
El-Mabrouk, N., Genome rearrangement by reversals and insertions/deletions of contiguous segments, in Combinatorial pattern matching (Montreal, QC, 2000). Lect. Notes Comput. Sci. 1848 (2000) 222234. CrossRef
El-Mabrouk, N., Sorting signed permutations by reversals and insertions/deletions of contiguous segments. J. Discrete Algorithms 1 (2000) 105121.
El-Mabrouk, N., Reconstructing an ancestral genome using minimum segments duplications and reversals. J. Comput. Syst. Sci. 65 (2002) 442464. Special issue on computational biology (2002). CrossRef
Eppstein, D., Galil, Z., Giancarlo, R. and Italiano, G.F., Sparse dynamic programming. I. Linear cost functions. J. Assoc. Comput. Mach. 39 (1992) 519545. CrossRef
Eppstein, D., Galil, Z., Giancarlo, R. and Italiano, G.F., Sparse dynamic programming. II. Convex and concave cost functions. J. Assoc. Comput. Mach. 39 (1992) 546567. CrossRef
Y. Gao, J. Wu, R. Niewiadomski1, Y. Wang, Z.-Z. Chen and G. Lin, A space efficient algorithm for sequence alignment with inversions, in Computing and Combinatorics, 9th Annual International Conference, COCOON 2003. Lect. Notes Comput. Sci. 2697 57–67 (2003).
S. Hannenhalli and P.A. Pevzner, Transforming cabbage into turnip: polynomial algorithm for sorting signed permutations by reversals, in ACM Symposium on Theory of Computing, Association for Computing Machinery (1995) 178–189.
Hannenhalli, S. and Pevzner, P.A., Transforming cabbage into turnip: polynomial algorithm for sorting signed permutations by reversals. J. ACM 46 (1999) 127. CrossRef
Hunt, J.W. and Szymanski, T.G., A fast algorithm for computing longest common subsequences. Comm. ACM 20 (1997) 350353. CrossRef
H. Kaplan, R. Shamir and R.E. Tarjan, Faster and simpler algorithm for sorting signed permutations by reversals, in Proc. of the Eighth Annual ACM-SIAM Symposium on Discrete Algorithms (New Orleans, LA, 1997), ACM, New York (1997) 344–351.
Kaplan, H., Shamir, R. and Tarjan, R.E., A faster and simpler algorithm for sorting signed permutations by reversals. SIAM J. Comput. 29 (2000) 880892 (electronic). CrossRef
Kececioglu, J. and Sankoff, D., Exact and approximation algorithms for sorting by reversals, with application to genome rearrangement. Algorithmica 13 (1995) 180210. CrossRef
I. Muchnik, A. Pereira do Lago, V. Llaca, E. Linton, C.A. Kulikowski and J. Messing, Assignment-like optimization on bipartite graphs with ordered nodes as an approach to the analysis of comparative genomic data. DIMACS Workshop on Whole Genome Comparison (2001) http://dimacs.rutgers.edu/Workshops/WholeGenome/
M. Schöniger and M.S. Waterman, A local algorithm for DNA sequence alignment with inversions. Bull. Math. Biology 54 (Jul. 1992) 521–536.
I. Simon, Sequence comparison: some theory and some practice, in Electronic Dictionaries and Automata in Computational Linguistics, edited by M. Gross and D. Perrin. Springer-Verlag. Berlin, Lect. Notes Comput. Sci. 377 (1989) 79–92.
R. Wagner, On the complexity of the extended string-to-string correction problem, in Seventh ACM Symposium on the Theory of Computation. Association for Computing Machinery (1975).
Waterman, and Eggert, , A new algorithm for best subsequence alignments with application to tRNA-rRNA comparisons. J. Molecular Biology 197 (1987) 723728. CrossRef