A Stronger Model of Dynamic Programming Algorithms

被引:8
|
作者
Buresh-Oppenheim, Joshua [2 ]
Davis, Sashka [1 ]
Impagliazzo, Russell [1 ]
机构
[1] Univ Calif San Diego, San Diego, CA 92103 USA
[2] Akamai Technol, Cambridge, MA USA
基金
美国国家科学基金会;
关键词
Dynamic programming; Algorithmic paradigms; Priority algorithms; PRIORITY ALGORITHMS;
D O I
10.1007/s00453-009-9385-1
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:938 / 968
页数:31
相关论文
共 50 条
  • [1] A Stronger Model of Dynamic Programming Algorithms
    Joshua Buresh-Oppenheim
    Sashka Davis
    Russell Impagliazzo
    Algorithmica, 2011, 60 : 938 - 968
  • [2] Chunks and Tasks: A programming model for parallelization of dynamic algorithms
    Rubensson, Emanuel H.
    Rudberg, Elias
    PARALLEL COMPUTING, 2014, 40 (07) : 328 - 343
  • [3] DISCRETE DYNAMIC PROGRAMMING ALGORITHMS
    SEINFELD, JH
    LAPIDUS, L
    INDUSTRIAL & ENGINEERING CHEMISTRY PROCESS DESIGN AND DEVELOPMENT, 1968, 7 (03): : 479 - &
  • [4] Evolutionary algorithms and dynamic programming
    Doerr, Benjamin
    Eremeev, Anton
    Neumann, Frank
    Theile, Madeleine
    Thyssen, Christian
    THEORETICAL COMPUTER SCIENCE, 2011, 412 (43) : 6020 - 6035
  • [5] ON THE ALGORITHMS OF DYNAMIC PROGRAMMING FOR OPTIMAL PROCESSES
    Ovchinnikov, V. G.
    VESTNIK SAMARSKOGO GOSUDARSTVENNOGO TEKHNICHESKOGO UNIVERSITETA-SERIYA-FIZIKO-MATEMATICHESKIYE NAUKI, 2012, (03): : 215 - 218
  • [6] How to Multiply Dynamic Programming Algorithms
    Siederdissen, Christian Hoener Zu
    Hofacker, Ivo L.
    Stadler, Peter F.
    ADVANCES IN BIOINFORMATICS AND COMPUTATIONAL BIOLOGY, 2013, 8213 : 82 - 93
  • [7] Canonical greedy algorithms and dynamic programming
    Lew, Art
    CONTROL AND CYBERNETICS, 2006, 35 (03): : 621 - 643
  • [8] PARALLEL DYNAMIC-PROGRAMMING ALGORITHMS
    VELDHORST, M
    LECTURE NOTES IN COMPUTER SCIENCE, 1986, 237 : 393 - 402
  • [9] DYNAMIC-PROGRAMMING MODELS AND ALGORITHMS
    DREYFUS, S
    MANAGEMENT SCIENCE, 1959, 5 (03) : 346 - 346
  • [10] Genetic Programming Algorithms for Dynamic Environments
    Macedo, Joao
    Costa, Ernesto
    Marques, Lino
    APPLICATIONS OF EVOLUTIONARY COMPUTATION, EVOAPPLICATIONS 2016, PT II, 2016, 9598 : 280 - 295