Abstract
Ambiguity in dynamic programming arises from two independent sources, the non-uniqueness of optimal solutions and the particular recursion scheme by which the search space is evaluated. Ambiguity, unless explicitly considered, leads to unnecessarily complicated, inflexible, and sometimes even incorrect dynamic programming algorithms. Building upon the recently developed algebraic approach to dynamic programming, we formalize the notions of ambiguity and canonicity. We argue that the use of canonical yield grammars leads to transparent and versatile dynamic programming algorithms. They provide a master copy of recurrences, that can solve all DP problems in a well-defined domain. We demonstrate the advantages of such a systematic approach using problems from the areas of RNA folding and pairwise sequence comparison.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
R. Bellman. Dynamic Programming. Princeton University Press, 1957.
W.S. Brainerd. Tree generating regular systems. Information and Control, 14:217–231, 1969.
T.H. Cormen, C.E. Leiserson, and R.L. Rivest. Introduction to Algorithms. MIT Press, Cambridge, MA, 1990.
R. Durbin, S. Eddy, A. Krogh, and G. Mitchison. Biological Sequence Analysis. Cambridge University Press, 1998.
D. Evers. RNA Folding via Algebraic Dynamic Programming. Bielefeld University, 2000. Forthcoming Dissertation.
D. Evers and R. Giegerich. RNA Movies: Visualizing RNA Secondary Structure Spaces. Bioinformatics, 15(1):32–37, 1999.
R. Giegerich. Code Selection by Inversion of Order-Sorted Derivors. Theor. Comput. Sci., 73:177–211, 1990.
R. Giegerich. A declarative approach to the development of dynamic programming algorithms, applied to RNA folding. Report 98-02, Technische Fakultät, Universität Bielefeld, 1998.
R. Giegerich. Towards a discipline of dynamic programming in bioinformatics. Parts 1 and 2: Sequence comparison and RNA folding. Report 99-05, Technische Fakultät, Universität Bielefeld, 1999. (Lecture Notes).
D. Gusfield. Algorithms on Strings, Trees, and Sequences. Cambridge University Press, 1997.
D. Gusfield, K. Balasubramanian, and D. Naor. Parametric Optimization of Sequence Alignment. Algorithmica, 12:312–326, 1994.
I.L. Hofacker, P. Schuster, and P.F. Stadler. Combinatorics of rna secondary structures. Discr. Appl. Math, 89:177–207, 1999.
G. Hutton. Higher Order Functions for Parsing. Journal of Functional Programming, 3(2):323–343, 1992.
S. Kurtz and G. W. Myers. Estimating the Probability of Approximate Matches. In Proceedings Combinatorial Pattern Matching, pages 52–64, 1997.
H.T. Mevissen and M. Vingron. Quantifying the Local Reliability of a Sequence Alignment. Prot. Eng., 9(2), 1996.
C. Meyer. Lazy Auswertung von Rekurrenzen der Dynamischen Programmierung, 1999. Diploma Thesis, Bielefeld University, (in German).
D. Naor and D. Brutlag. On Near-Optimal Alignments in Biological Sequences. J. Biol., 1:349–366, 1994.
S. B. Needleman and C. D. Wunsch. A general method applicable to the search for similarities in the amino acid sequence of two proteins. J. Mol. Biol., 48:443–453, 1970.
R. Nussinov, G. Pieczenik, J.R. Griggs, and D.J. Kleitman. Algorithms for loop matchings. SIAM J. Appl. Math., 35:68–82, 1978.
M. S. Waterman and T. F. Smith. RNA secondary structure: A complete mathematical analysis. Math. Biosci., 41:257–266, 1978.
M.S. Waterman and T.H. Byers. A dynamic programming algorithm to find all solutions in a neighborhood of the optimum. Math. Biosci., 77:179–188, 1985.
S. Wuchty, I. Fontana, W. and Hofacker, and P. Schuster. Complete suboptimal folding of RNA and the stability of secondary structures. Biopolymers, 49:145–165, 1998.
M. Zuker. On Finding all Suboptimal Foldings of an RNA Molecule. Science, 244:48–52, 1989.
M. Zuker and S. Sankoff. RNA secondary structures and their prediction. Bull. Math. Biol., 46:591–621, 1984.
M. Zuker and P. Stiegler. Optimal computer folding of large RNA sequences using thermodynamics and auxiliary information. Nucleic Acids Res., 9(1):133–148, 1981.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Giegerich, R. (2000). Explaining and Controlling Ambiguity in Dynamic Programming. In: Giancarlo, R., Sankoff, D. (eds) Combinatorial Pattern Matching. CPM 2000. Lecture Notes in Computer Science, vol 1848. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45123-4_6
Download citation
DOI: https://doi.org/10.1007/3-540-45123-4_6
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67633-1
Online ISBN: 978-3-540-45123-5
eBook Packages: Springer Book Archive