A Highly Parallel Algorithm for Multistage Optimization Problems and Shortest Path Problems

Abstract It appears that all of the known algorithms for solving multistage optimization problems are based explicitly on standard dynamic programming concepts. Such algorithms are inherently serial in the sense that computation must be completed at the current stage before meaningful computation can begin at the next stage. In this paper we present a technique which recursively divides the original problem into a set of smaller problems which can be solved in parallel. This technique is based on the recursive application of a simple aggregation procedure. For a multistage process with n stages, we show that our new algorithm can achieve a time complexity of O(log n). In contrast, competing algorithms based exclusively on the standard dynamic programming technique can only achieve a time complexity of Φ(n). The new algorithm is designed to operate on a tightly coupled parallel computer. As some important applications, it is shown that our algorithm can serve as a fast and efficient means of decoding convolutional codes, solving shortest path problems, and determining minimum-fuel flight paths.

[1]  Clyde P. Kruskal,et al.  Parallel Algorithms for Shortest Path Problems , 1985, ICPP.

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

[3]  Edison Tse,et al.  Parallel Processing Algorithms for the Optimal Control of Nonlinear Dynamic Systems , 1973, IEEE Transactions on Computers.

[4]  G. Huang,et al.  A textured model/algorithm for computationally efficient dispatch and control on the power system , 1986, 1986 25th IEEE Conference on Decision and Control.

[5]  Arthur E. Bryson,et al.  Applied Optimal Control , 1969 .

[6]  John K. Antonio,et al.  A Fast Distributed Shortest Path Algorithm for a Class of Hierarchically Clustered Data Networks , 1992, IEEE Trans. Computers.

[7]  John K. Antonio,et al.  Distributed iterative aggregation algorithms for box-constrained minimization problems and optimal routing in data networks , 1989 .

[8]  Dimitri P. Bertsekas,et al.  Data Networks , 1986 .

[9]  M. Schwartz,et al.  Routing Techniques Used in Computer Communication Networks , 1980, IEEE Trans. Commun..

[10]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[11]  Andrew J. Viterbi,et al.  Principles of Digital Communication and Coding , 1979 .

[12]  Sartaj Sahni,et al.  Parallel Matrix and Graph Algorithms , 1981, SIAM J. Comput..

[13]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[14]  J. Omura,et al.  On the Viterbi decoding algorithm , 1969, IEEE Trans. Inf. Theory.