Explaining and Controlling Ambiguity in Dynamic Programming

  • Authors:
  • Robert Giegerich

  • Affiliations:
  • -

  • Venue:
  • COM '00 Proceedings of the 11th Annual Symposium on Combinatorial Pattern Matching
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

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.