Abstract
Imposing constraints in the form of a finite automaton or a regular expression is an effective way to incorporate additional a priori knowledge into sequence alignment procedures. With this motivation, the Regular Expression Constrained Sequence Alignment Problem was introduced, which proposed an O(n2t4) time and O(n2t2) space algorithm for solving it, where n is the length of the input strings and t is the number of states in the input non-deterministic automaton. A faster O(n 2t3) time algorithm for the same problem was subsequently proposed. In this article, we further speed up the algorithms for Regular Language Constrained Sequence Alignment by reducing their worst case time complexity bound to O(n2t3/log t). This is done by establishing an optimal bound on the size of Straight-Line Programs solving the maxima computation subproblem of the basic dynamic programming algorithm. We also study another solution based on a Steiner Tree computation. While it does not improve the worst case, our simulations show that both approaches are efficient in practice, especially when the input automata are dense.
Original language | American English |
---|---|
Pages (from-to) | 771-781 |
Number of pages | 11 |
Journal | Journal of Computational Biology |
Volume | 18 |
Issue number | 5 |
DOIs | |
State | Published - 1 May 2011 |
Keywords
- dynamic programming
- finite automaton
- regular expression
- sequence alignment
- Steiner minimal trees
- straight-line programs
All Science Journal Classification (ASJC) codes
- Modelling and Simulation
- Molecular Biology
- Genetics
- Computational Mathematics
- Computational Theory and Mathematics