MATHEMATICAL ENGINEERING TECHNICAL REPORTS Calculus of Minimals: Deriving Dynamic-Programming Algorithms based on Preservation of Monotonicity

Akimasa MORIHATA,Kiminori MATSUZAKI,Zhenjiang HU,Masato TAKEICHI
2007-01-01
Abstract:Constructing efficient algorithms is difficult and often considered to be a privilege of a few specialists. Program calculation is a methodology for easy construction of efficient algorithms, where efficient algorithms are systematically derived from naive but obviously correct algorithms by calculational laws. This paper shows an ongoing effort to give a clear and effective methodology to deal with combinatorial optimization problems based on program calculation. First, we formalize greedy algorithms and dynamic programming algorithms in terms of minimals and the strictly monotone property. Next, we propose a new calculational law to derive dynamic programming algorithms, which builds on some calculational laws to construct orders satisfying monotone properties. Our law is not only applicable for a wide class of combinatorial optimization problems, but also suitable for automatic implementation. Finally, as a nontrivial application of our calculational laws, we show systematic derivations of algorithms for regular-language constrained shortest path problems.
What problem does this paper attempt to address?