We show that nonserial dynamic programming is optimal among one class of algorithms for an important class of discrete optimization problems. We consider discrete, multivariate, optimization problems in which the objective function is given as a sum of terms. Each term is a function of only a subset of the variables. We first consider a class of optimization algorithms which eliminate suboptimal solutions by comparing the objective function on “comparable” partial solutions. A large, natural subclass of comparison algorithms in which the subproblems considered are either nested or nonadjacent (i.e., noninteracting) is then defined. It is shown that a variable-elimination procedure, nonserial dynamic programming, is optimal in an extremely strong sense among all algorithms in the subclass. The results' strong implications for choosing deterministic, adaptive, and nondeterministic algorithms for the optimization problem, for defining a complexity measure for a pattern of interactions, and for describing general classes of decomposition procedures are discussed. Several possible extensions and unsolved problems are mentioned.
[1]
A. Rosenthal.
Computing the Reliability of Complex Networks
,
1977
.
[2]
Kenneth Steiglitz,et al.
Optimal Design of Offshore Natural-Gas Pipeline Systems
,
1970,
Oper. Res..
[3]
Alfred V. Aho,et al.
The Design and Analysis of Computer Algorithms
,
1974
.
[4]
R. Karp.
Functional Decomposition and Switching Circuit Design
,
1963
.
[5]
R. E. Allsop.
Selection of Offsets to Minimize Delay to Traffic in a Network Controlled by Fixed-Time Signals
,
1968
.
[6]
Zvi Galil,et al.
On the validity and complexity of bounded resolution
,
1975,
STOC.
[7]
Masao Fukushima,et al.
Multilevel decomposition of nonlinear programming problems by dynamic programming
,
1976
.
[8]
Umberto Bertelè,et al.
Nonserial Dynamic Programming
,
1972
.
[9]
Mike Paterson,et al.
Complexity of Monotone Networks for Boolean Matrix Product
,
1974,
Theor. Comput. Sci..