TY - GEN
T1 - Dynamic programming via thinning and incrementalization
AU - Morihata, Akimasa
AU - Koishi, Masato
AU - Ohori, Atsushi
PY - 2014/1/1
Y1 - 2014/1/1
N2 - We demonstrate that it is useful to combine two independently studied methods, thinning and incrementalization, to develop programs that use dynamic programming. While dynamic programming is a fundamental algorithmic pattern, its development is often difficult for average programmers. There are several methods for systematically developing dynamic programming from plain problem descriptions by program transformations. We show that by combining two known methods, thinning and incrementalization, we can systematically derive efficient dynamic-programming implementations from high-level descriptions. The derivations cannot be achieved by using only one of them. We illustrate our approach with the 0-1 knapsack problem, the longest common subsequence problem, and association rule mining from numeric data.
AB - We demonstrate that it is useful to combine two independently studied methods, thinning and incrementalization, to develop programs that use dynamic programming. While dynamic programming is a fundamental algorithmic pattern, its development is often difficult for average programmers. There are several methods for systematically developing dynamic programming from plain problem descriptions by program transformations. We show that by combining two known methods, thinning and incrementalization, we can systematically derive efficient dynamic-programming implementations from high-level descriptions. The derivations cannot be achieved by using only one of them. We illustrate our approach with the 0-1 knapsack problem, the longest common subsequence problem, and association rule mining from numeric data.
UR - http://www.scopus.com/inward/record.url?scp=84902461334&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84902461334&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-07151-0_12
DO - 10.1007/978-3-319-07151-0_12
M3 - Conference contribution
AN - SCOPUS:84902461334
SN - 9783319071503
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 186
EP - 202
BT - Functional and Logic Programming - 12th International Symposium, FLOPS 2014, Proceedings
PB - Springer-Verlag
T2 - 12th International Symposium on Functional and Logic Programming, FLOPS 2014
Y2 - 4 June 2014 through 6 June 2014
ER -