A systolic algorithm for dynamic programming

https://doi.org/10.1016/0898-1221(94)90001-9Get rights and content
Under an Elsevier user license
open archive

Abstract

We present a formal systolic algorithm to solve the dynamic programming problem for an optimal binary search tree. For a fixed integer j such that 2 ≤ jn, first we derive a linear systolic array to evaluate the minimal cost ci,j for 1 ≤ i < j. Then we combine these (n − 1) linear systolic arrays to form a two-dimensional systolic array. The computational model consists of ⌈(n2 + 2n − 4)/4⌉ processing elements. The algorithm requires (2n − 3) time steps to solve this problem. The elapsed time within a time step is independent of the problem size n. It is suitable for the VLSI implementation due to the identical and simple structure of processing elements. We also prove the correctness of this algorithm by induction.

Cited by (0)

This work was supported partially by the National Science Council in Taiwan, R.O.C. under the contract number NSC 82-0208-M009-22.