Abstract
We define a formal model of dynamic programming algorithms which we call Prioritized Branching Programs (pBP). Our model is a generalization of the BT model of Alekhnovich et al. (IEEE Conference on Computational Complexity, pp. 308–322, 2005), which is in turn a generalization of the priority algorithms model of Borodin, Nielson and Rackoff. One of the distinguishing features of these models is that they not only capture large classes of algorithms generally considered to be greedy, backtracking or dynamic programming algorithms, but they also allow characterizations of their limitations. Hence they give meaning to the statement that a given problem can or cannot be solved by dynamic programming. After defining the model, we prove three main results: (i) that certain types of natural restrictions of our seemingly more powerful model can be simulated by the BT model; (ii) that in general our model is stronger than the BT model—a fact which is witnessed by the classical shortest paths problem; (iii) that our model has very real limitations, namely that bipartite matching cannot be efficiently computed in it, hence suggesting that there are problems that can be solved efficiently by network flow algorithms and by simple linear programming that cannot be solved by natural dynamic programming approaches.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Angelopoulos, S., Borodin, A.: The power of priority algorithms for facility location and set cover. Algorithmica 40(4), 271–291 (2004)
Alekhnovich, M., Borodin, A., Buresh-Oppenheim, J., Impagliazzo, R., Magen, A., Pitassi, T.: Toward a model for backtracking and dynamic programming. In: IEEE Conference on Computational Complexity, pp. 308–322 (2005)
Arkin, E.M., Silverberg, E.L.: Scheduling jobs with fixed start and end times. Discrete Appl. Math. 18, 1–8 (1987)
Arora, S., Bollobás, B., Lovász, L.: Proving integrality gaps without knowing the linear program. In: FOCS, pp. 313–322 (2002)
Arora, S., Bollobás, B., Lovász, L., Tourlakis, I.: Proving integrality gaps without knowing the linear program. Theory Comput. 2(1), 19–51 (2006)
Bellman, R.: Combinatorial processes and dynamic programming. In: Proceedings of the Tenth Symposium in Applied Mathematics of The American Mathematical Society, pp. 24–26 (1958)
Borodin, A., Nielsen, M.N., Rackoff, C.: (Incremental) priority algorithms. Algorithmica 37(4), 295–326 (2003)
Borodin, A., Boyar, J., Larsen, K.S.: Priority algorithms for graph optimization problems. In: WAOA, pp. 126–139 (2004)
Borodin, A., Cashman, D., Magen, A.: How well can primal-dual and local-ratio algorithms perform? In: ICALP, pp. 943–955 (2005)
Chvatal, V.: Hard knapsack problems. Oper. Res. 28 (1980)
Cormen, T., Leiserson, C., Rivest, R., Stein, C.: Introduction to Algorithms. MIT Press, Cambridge (2001)
Davis, S., Impagliazzo, R.: Models of greedy algorithms for graph problems. In: SODA, pp. 381–390 (2004)
Helman, P.: A common schema for dynamic programming and branch and bound algorithms. J. ACM 36(1), 97–128 (1989)
Helman, P., Rosenthal, A.: A comprehensive model of dynamic programming. SIAM J. Algebr. Discrete Methods 6, 319–334 (1985)
Karp, R., Held, M.: Finite state processes and dynamic programming. SIAM J. Appl. Math. 15, 693–718 (1967)
Khanna, Motwani, Sudan, Vazirani: On syntactic versus computational views of approximability. SICOMP: SIAM J. Comput. 28 (1998)
Regev, O.: Priority algorithms for makespan minimization in the subset model. Inf. Process. Lett. 84(3), 153–157 (2002)
Robson, J.M.: Algorithms for maximum independent sets. J. Algorithms 7(3), 425–440 (1986)
Rosenthal, A.: Dynamic programming is optimal for nonserial optimization problems. SIAM J. Comput. 11(1), 47–59 (1982)
Woeginger, G.J.: When does a dynamic programming formulation guarantee the existence of a fully polynomial time approximation scheme (fptas)? INFORMS J. Comput. 12(1), 57–74 (2000)
Author information
Authors and Affiliations
Corresponding author
Additional information
S. Davis research partially supported by NSF Awards CCR-0313241 and CCR-0515332. Views expressed are not endorsed by the NSF.
R. Impagliazzo research partially supported by NSF Awards CCR-0313241 and CCR-0515332. Views expressed are not endorsed by the NSF.
Rights and permissions
Open Access This is an open access article distributed under the terms of the Creative Commons Attribution Noncommercial License (https://creativecommons.org/licenses/by-nc/2.0), which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
About this article
Cite this article
Buresh-Oppenheim, J., Davis, S. & Impagliazzo, R. A Stronger Model of Dynamic Programming Algorithms. Algorithmica 60, 938–968 (2011). https://doi.org/10.1007/s00453-009-9385-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00453-009-9385-1