The CDP: A unifying formulation for heuristic search, dynamic programming, and branch-and-bound

This paper presents the composite decision process (CDP), a general model for discrete optimization problems. Using certain relationships between formal grammars, AND/OR graphs, and game trees, it is shown that a large number of search problems in artificial intelligence can be formulated in terms of this model. Two general classes of algorithms are discussed, and it is shown that most of the existing search algorithms to solve problems represented by this model fall into one of two categories. This approach to formulating and solving discrete optimization problems makes it possible to view several search procedures in a unified manner and clarifies the relationships among them. The approach also aids in synthesizing new variations and generalizations of existing search procedures.

[1]  R. Bellman Dynamic programming. , 1957, Science.

[2]  E. L. Lawler,et al.  Branch-and-Bound Methods: A Survey , 1966, Oper. Res..

[3]  M. Held,et al.  Finite-State Processes and Dynamic Programming , 1967 .

[4]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[5]  D. J. White,et al.  Dynamic Programming , 2018, Wiley Encyclopedia of Computer Science and Engineering.

[6]  Stuart E. Dreyfus,et al.  An Appraisal of Some Shortest-Path Algorithms , 1969, Oper. Res..

[7]  Nils J. Nilsson,et al.  Problem-solving methods in artificial intelligence , 1971, McGraw-Hill computer science series.

[8]  Patrick A. V. Hall,et al.  Equivalence between AND/OR graphs and context-free grammars , 1973, Commun. ACM.

[9]  T. Ibaraki Solvable classes of discrete dynamic programming , 1973 .

[10]  Alberto Martelli,et al.  Additive AND/OR Graphs , 1973, IJCAI.

[11]  George Epstein,et al.  Comments on "The Relationship Between Multivalued Switching Algebra and Boolean Algebra Under Different Definitions of Complement" , 1973, IEEE Trans. Computers.

[12]  Donald E. Knuth,et al.  An Analysis of Alpha-Beta Pruning , 1975, Artif. Intell..

[13]  Thomas L. Morin,et al.  Branch-and-Bound Strategies for Dynamic Programming , 2015, Oper. Res..

[14]  Averill M. Law,et al.  The art and theory of dynamic programming , 1977 .

[15]  Toshihide Ibaraki,et al.  The Power of Dominance Relations in Branch-and-Bound Algorithms , 1977, JACM.

[16]  Toshihide Ibaraki,et al.  Branch-and-Bound Procedure and State-Space Representation of Combinatorial Optimization Problems , 1978, Inf. Control..

[17]  George C. Stockman,et al.  A Minimax Algorithm Better than Alpha-Beta? , 1979, Artif. Intell..

[18]  Kevin Q. Brown Dynamic programming in computer science , 1979 .

[19]  Alberto Martelli,et al.  Dynamic Programming as Graph Searching: An Algebraic Approach , 1981, JACM.

[20]  Nils J. Nilsson,et al.  Principles of Artificial Intelligence , 1980, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[21]  Barr and Feigenbaum Edward A. Avron The Handbook of Artificial Intelligence , 1981 .

[22]  Vipin Kumar A unified approach to problem solving search procedures , 1982 .

[23]  Vipin Kumar,et al.  A General Bottom-up Procedure for Searching And/Or Graphs , 1983, AAAI.

[24]  Judea Pearl,et al.  Heuristics : intelligent search strategies for computer problem solving , 1984 .

[25]  Vipin Kumar,et al.  Parallel Branch-and-Bound Formulations for AND/OR Tree Search , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[26]  Vipin Kumar Branch-And-Bound Search , 1985 .

[27]  P. Helman,et al.  An algebra for search problems and their solutions , 1988 .

[28]  Dana S. Nau,et al.  A general branch-and-bound formulation for and/or graph and game tree search , 1988 .