Skip to main content

Explaining and Controlling Ambiguity in Dynamic Programming

  • Conference paper
  • First Online:
Combinatorial Pattern Matching (CPM 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1848))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Bellman. Dynamic Programming. Princeton University Press, 1957.

    Google Scholar 

  2. W.S. Brainerd. Tree generating regular systems. Information and Control, 14:217–231, 1969.

    Article  MATH  MathSciNet  Google Scholar 

  3. T.H. Cormen, C.E. Leiserson, and R.L. Rivest. Introduction to Algorithms. MIT Press, Cambridge, MA, 1990.

    MATH  Google Scholar 

  4. R. Durbin, S. Eddy, A. Krogh, and G. Mitchison. Biological Sequence Analysis. Cambridge University Press, 1998.

    Google Scholar 

  5. D. Evers. RNA Folding via Algebraic Dynamic Programming. Bielefeld University, 2000. Forthcoming Dissertation.

    Google Scholar 

  6. D. Evers and R. Giegerich. RNA Movies: Visualizing RNA Secondary Structure Spaces. Bioinformatics, 15(1):32–37, 1999.

    Article  Google Scholar 

  7. R. Giegerich. Code Selection by Inversion of Order-Sorted Derivors. Theor. Comput. Sci., 73:177–211, 1990.

    Article  MATH  MathSciNet  Google Scholar 

  8. 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.

    Google Scholar 

  9. 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).

    Google Scholar 

  10. D. Gusfield. Algorithms on Strings, Trees, and Sequences. Cambridge University Press, 1997.

    Google Scholar 

  11. D. Gusfield, K. Balasubramanian, and D. Naor. Parametric Optimization of Sequence Alignment. Algorithmica, 12:312–326, 1994.

    Article  MATH  MathSciNet  Google Scholar 

  12. I.L. Hofacker, P. Schuster, and P.F. Stadler. Combinatorics of rna secondary structures. Discr. Appl. Math, 89:177–207, 1999.

    Google Scholar 

  13. G. Hutton. Higher Order Functions for Parsing. Journal of Functional Programming, 3(2):323–343, 1992.

    Article  MathSciNet  Google Scholar 

  14. S. Kurtz and G. W. Myers. Estimating the Probability of Approximate Matches. In Proceedings Combinatorial Pattern Matching, pages 52–64, 1997.

    Google Scholar 

  15. H.T. Mevissen and M. Vingron. Quantifying the Local Reliability of a Sequence Alignment. Prot. Eng., 9(2), 1996.

    Google Scholar 

  16. C. Meyer. Lazy Auswertung von Rekurrenzen der Dynamischen Programmierung, 1999. Diploma Thesis, Bielefeld University, (in German).

    Google Scholar 

  17. D. Naor and D. Brutlag. On Near-Optimal Alignments in Biological Sequences. J. Biol., 1:349–366, 1994.

    Google Scholar 

  18. 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.

    Article  Google Scholar 

  19. R. Nussinov, G. Pieczenik, J.R. Griggs, and D.J. Kleitman. Algorithms for loop matchings. SIAM J. Appl. Math., 35:68–82, 1978.

    Article  MATH  MathSciNet  Google Scholar 

  20. M. S. Waterman and T. F. Smith. RNA secondary structure: A complete mathematical analysis. Math. Biosci., 41:257–266, 1978.

    Article  Google Scholar 

  21. 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.

    Article  MATH  MathSciNet  Google Scholar 

  22. 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.

    Article  Google Scholar 

  23. M. Zuker. On Finding all Suboptimal Foldings of an RNA Molecule. Science, 244:48–52, 1989.

    Article  MathSciNet  Google Scholar 

  24. M. Zuker and S. Sankoff. RNA secondary structures and their prediction. Bull. Math. Biol., 46:591–621, 1984.

    MATH  Google Scholar 

  25. 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.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics