Modeling Dynamic Programming Problems over Sequences and Trees with Inverse Coupled Rewrite Systems

Robert Giegerich 1 Hélène Touzet 2, 3
3 BONSAI - Bioinformatics and Sequence Analysis
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : Dynamic programming is a classical algorithmic paradigm, which often allows the evaluation of a search space of exponential size in polynomial time. Recursive problem decomposition, tabulation of intermediate results for re-use, and Bellman's Principle of Optimality are its well-understood ingredients. However, algorithms often lack abstraction and are difficult to implement, tedious to debug, and delicate to modify. The present article proposes a generic framework for specifying dynamic programming problems. This framework can handle all kinds of sequential inputs, as well as tree-structured data. Biosequence analysis, document processing, molecular structure analysis, comparison of objects assembled in a hierarchic fashion, and generally, all domains come under consideration where strings and ordered, rooted trees serve as natural data representations. The new approach introduces inverse coupled rewrite systems. They describe the solutions of combinatorial optimization problems as the inverse image of a term rewrite relation that reduces problem solutions to problem inputs. This specification leads to concise yet translucent specifications of dynamic programming algorithms. Their actual implementation may be challenging, but eventually, as we hope, it can be produced automatically. The present article demonstrates the scope of this new approach by describing a diverse set of dynamic programming problems which arise in the domain of computational biology, with examples in biosequence and molecular structure analysis.
Type de document :
Article dans une revue
Algorithms, MDPI AG, 2014, 7, pp.62 - 144. 〈10.3390/a7010062〉
Liste complète des métadonnées

Littérature citée [49 références]  Voir  Masquer  Télécharger
Contributeur : Helene Touzet <>
Soumis le : mercredi 19 novembre 2014 - 04:46:43
Dernière modification le : jeudi 11 janvier 2018 - 06:23:37
Document(s) archivé(s) le : vendredi 14 avril 2017 - 20:45:39


Fichiers éditeurs autorisés sur une archive ouverte



Robert Giegerich, Hélène Touzet. Modeling Dynamic Programming Problems over Sequences and Trees with Inverse Coupled Rewrite Systems. Algorithms, MDPI AG, 2014, 7, pp.62 - 144. 〈10.3390/a7010062〉. 〈hal-01084318〉



Consultations de la notice


Téléchargements de fichiers