Abstract
There exist several general techniques in the literature for speeding up naive implementations of dynamic programming. Two of the best known are the Knuth-Yao quadrangle inequality speedup and the SMAWK algorithm for finding the row-minima of totally monotone matrices. Although both of these techniques use a quadrangle inequality and seem similar, they are actually quite different and have been used differently in the literature.
In this article we show that the Knuth-Yao technique is actually a direct consequence of total monotonicity. As well as providing new derivations of the Knuth-Yao result, this also permits to solve the Knuth-Yao problem directly using the SMAWK algorithm. Another consequence of this approach is a method for solving online versions of problems with the Knuth-Yao property. The online algorithms given here are asymptotically as fast as the best previously known static ones. For example, the Knuth-Yao technique speeds up the standard dynamic program for finding the optimal binary search tree of n elements from Θ(n3) down to O(n2), and the results in this article allow construction of an optimal binary search tree in an online fashion (adding a node to the left or the right of the current nodes at each step) in O(n) time per step.
- Aggarwal, A., Klawe, M. M., Moran, S., Shor, P. W., and Wilber, R. E. 1987. Geometric applications of a matrix-searching algorithm. Algorithmica 2, 1, 195--208.Google Scholar
Digital Library
- Aggarwal, A., and Park, J. K. 1988. Notes on searching in multidimensional monotone arrays. In Proceedings of the 29th Annual Symposium on Foundations of Computer Science. IEEE Computer Society, Los Alamitos, CA, 497--512. Google Scholar
Digital Library
- Atallah, M. J., Kosaraju, S. R., Larmore, L. L., Miller, G. L., and Teng, S.-H. 1989. Constructing trees in parallel. In Proceedings of the 1th Annual ACM Symposium on Parallel Algorithms and Architectures. ACM, New York, 421--431. Google Scholar
Digital Library
- Bar-Noy, A., and Lander, R. E. 2004. Efficient algorithms for optimal stream merging for media-on-demand. SIAM J. Comput. 33, 5, 1011--1034. Google Scholar
Digital Library
- Bein, W. W., Brucker, P., Larmore, L. L., and Park, J. K. 2005. The algebraic Monge property and path problems. Discr. Appl. Math. 145, 3, 455--464. Google Scholar
Digital Library
- Borchers, A., and Gupta, P. 1994. Extending the quadrangle inequality to speed-up dynamic programming. Inf. Process. Lett. 49, 6, 287--290. Google Scholar
Digital Library
- Burkard, R. E., Klinz, B., and Rudolf, R. 1996. Perspectives of Monge properties in optimization. Discr. Appl. Math. 70, 2, 95--161. Google Scholar
Digital Library
- Galil, Z., and Park, K. 1992. Dynamic programming with convexity, concavity and sparsity. Theor. Comput. Sci. 92, 1, 49--76. Google Scholar
Digital Library
- Gilbert, E. N., and Moore, E. F. 1959. Variable length encodings. Bell Syst. Tech. J. 38, 933--967.Google Scholar
Cross Ref
- Knuth, D. E. 1971. Optimum binary search trees. Acta Inf. 1, 14--25.Google Scholar
Digital Library
- Larmore, L. L., and Schieber, B. 1991. On-Line dynamic programming with applications to the prediction of RNA secondary structure. J. Algor. 12, 3, 490--515. A preliminary version appeared in Proceedings of the 1st Annual ACM-SIAM Symposium on Discrete Algorithms. 503--512, 1990. Google Scholar
Digital Library
- Rao, S. K., Sadayappan, P., Hwang, F. K., and Shor, P. W. 1992. The rectilinear Steiner arborescence problem. Algorithmica 7, 2-3, 277--288.Google Scholar
Cross Ref
- Said, A. 2005. Efficient alphabet partitioning algorithms for low-complexity entropy coding. In Proceedings of the Data Compression Conference. IEEE Computer Society, Los Alamitos, CA, 183--192. Google Scholar
Digital Library
- Wachs, M. L. 1989. On an efficient dynamic programming technique of F. F. Yao. J. Algor. 10, 4, 518--530. Google Scholar
Digital Library
- Wessner, R. L. 1976. Optimal alphabtic search trees with restricted maximal height. Inf. Process. Lett. 4, 4, 90--94.Google Scholar
Cross Ref
- Wilber, R. 1988. The concave least-weight subsequence problem revisited. J. Algor. 9, 3, 418--425. Google Scholar
Digital Library
- Woeginger, G. J. 2000. Monge strikes again: Optimal placement of Web proxies in the Internet. Oper. Res. Lett. 27, 3, 93--96. Google Scholar
Digital Library
- Yao, F. F. 1980. Efficient dynamic programming using quadrangle inequalities. In Proceedings of the 12th Annual ACM Symposium on Theory of Computing. ACM, New York, 429--435. Google Scholar
Digital Library
- Yao, F. F. 1982. Speed-Up in dynamic programming. SIAM J. Matrix Anal. Appl. (formerly SIAM J. Algebraic Discr. Methods) 3, 4, 532--540.Google Scholar
Cross Ref
Index Terms
The Knuth-Yao quadrangle-inequality speedup is a consequence of total monotonicity
Recommendations
The Knuth-Yao quadrangle-inequality speedup is a consequence of total-monotonicity
SODA '06: Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithmThere exist several general techniques in the literature for speeding up naive implementations of dynamic programming. Two of the best known are the Knuth-Yao quadrangle inequality speedup and the SMAWK algorithm for finding the row-minima of totally ...
Notes on searching in multidimensional monotone arrays
SFCS '88: Proceedings of the 29th Annual Symposium on Foundations of Computer ScienceA two-dimensional array A=(a/sub i,j/) is called monotone if the maximum entry in its ith row lies below or to the right of the maximum entry in its (i- 1)-st row. An array A is called totally monotone if every 2*2 subarray (i.e., every 2*2 minor) is ...
Hexagon quadrangle systems
A hexagon quadrangle system of order n and index @r [HQS"@r(n)] is a pair (X,H), where X is a finite set of n vertices and H is a collection of edge disjoint hexagon quadrangles (called blocks) which partitions the edge set of @rK"n, with vertex set X. ...






Comments