This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
An Efficient Algorithm for Row Minima Computations on Basic Reconfigurable Meshes
June 1998 (vol. 9 no. 6)
pp. 561-569

Abstract—A matrix A of size m×n containing items from a totally ordered universe is termed monotone if, for every i, j, 1 ≤i < jm, the minimum value in row j lies below or to the right of the minimum in row i. Monotone matrices, and variations thereof, are known to have many important applications. In particular, the problem of computing the row minima of a monotone matrix is of import in image processing, pattern recognition, text editing, facility location, optimization, and VLSI. Our first main contribution is to exhibit a number of nontrivial lower bounds for matrix search problems. These lower bound results hold for arbitrary, infinite, two-dimensional reconfigurable meshes as long as the input is pretiled onto a contiguous n×n submesh thereof. Specifically, in this context, we show that every algorithm that solves the problem of computing the minimum of an n×n matrix must take Ω(log log n) time. The same lower bound is shown to hold for the problem of computing the minimum in each row of an arbitrary n×n matrix. As a byproduct, we obtain an Ω(log log n) time lower bound for the problem of selecting the kth smallest item in a monotone matrix, thus extending the best previously known lower bound for selection on the reconfigurable mesh. Finally, we show an $\Omega \left( {\sqrt {\log\log n}} \right)$ time lower bound for the task of computing the row minima of a monotone n×n matrix. Our second main contribution is to provide a nearly optimal algorithm for the row-minima problem: With a monotone matrix of size m×n with mn pretiled, one item per processor, onto a basic reconfigurable mesh of the same size, our row-minima algorithm runs in O(log n) time if 1 ≤m≤ 2 and in $O\!\left( {{{{\log n} \over {\log m}}}\log\log m} \right)$ time if m > 2. In case $m = n^\epsilon$ for some constant $\epsilon,$$(0 < \epsilon \le 1),$ our algorithm runs in O(log log n) time.

[1] A. Aggarwal and M.M. Klawe, "Applications of Generalized Matrix Searching to Geometric Problems," Discrete Applied Mathematics, vol. 27, pp. 3-23, 1990.
[2] A. Aggarwal, M.M. Klawe, S. Moran, P. Shor, and R. Wilber, "Geometric Applications of a Matrix-Searching Algorithm," Algorithmica, vol. 2, pp. 195-208, 1987.
[3] A. Aggarwal and J. Park, "Notes on Searching in Multidimensional Monotone Arrays," Proc. 29th Ann. Symp. Foundations of Computer Science, pp. 497-512, Oct. 1988.
[4] A. Apostolico, M.J. Atallah, L.L. Larmore, and S. McFaddin, "Efficient Parallel Algorithms for String Editing and Related Problems," SIAM J. Computing, vol. 19, pp. 968-988, 1990.
[5] M.J. Atallah, "A Faster Parallel Algorithm for a Matrix Searching Problem," Algorithmica, vol. 9, pp. 156-167, 1993.
[6] M.J. Atallah and S.R. Kosaraju, "An Efficient Parallel Algorithm for the Row Minima of a Totally Monotone Matrix," J. Algorithms, vol. 13, pp. 394-413, 1992.
[7] Y. Ben-Asher,D. Peleg,R. Ramaswami,, and A. Schuster,“The power of reconfiguration,” J. of Parallel and Distributed Computing, vol. 13, no. 2, pp. 139-153, Oct. 1991.
[8] C. Berge, Graphs and Hypergraphs, pp. 280-282.Amsterdam: North-Holland, 1973.
[9] R.O. Duda and P.E. Hart, Pattern Classification and Scene Analysis.New York: Wiley and Sons, 1973.
[10] E. Hao, P.D. MacLenzie, and Q.F. Stout, "Selection on the Reconfigurable Mesh," Proc. Fourth Symp. Frontiers of Massively Parallel Computation, pp. 38-45, 1992.
[11] J. J'aJ'a, An Introduction to Parallel Algorithms.New York: Addison-Wesley, 1992.
[12] D. Kim and K. Hwang, "Mesh-Connected Array Processors with Bypass Capability for Signal/Image Processing," Proc. Hawaii Conf. System Sciences,Maui, Hawaii, Jan. 1988.
[13] H. Li and M. Maresca,“Polymorphic-torus network,” IEEE Trans. on Computers, vol. 38, no. 9, pp. 1345-1351, Sept. 1989.
[14] H. Li and M. Maresca, "Polymorphic-Torus Architecture for Computer Vision," IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 11, no. 3, pp. 233-243, Mar. 1989.
[15] R. Lin and S. Olariu, "Reconfigurable Buses with Shift Switching: Concepts and Applications," IEEE Trans. Parallel and Distributed Systems, vol. 6, no. 1, pp. 93-102, Jan. 1995.
[16] M. Maresca, "Polymorphic Processor Arrays," IEEE Trans. Parallel and Distributed Systems, vol. 4, pp. 490-506, 1993.
[17] M. Maresca and H. Li,“Connection autonomy in SIMD computers: a VLSI implementation,”J. Parallel Distribut. Comput., vol. 7, pp. 302–320, 1989.
[18] M. Maresca and H. Li, "Virtual Parallelism Support in Reconfigurable Processor Arrays," UCB-ICSI Technical Report 91-041, Univ. of California at Berkeley, July 1991.
[19] M. Maresca and H. Li, "Hierarchical Node Clustering in Polymorphic Processor Arrays," UCB-ICSI Technical Report 91-042, Univ. of California at Berkeley, July 1991.
[20] M. Maresca, H. Li, and P. Baglietto, "Hardware Support for Fast Reconfigurability in Processor Arrays," Proc. Int'l Conf. Parallel Processing, vol. I, pp. 282-289,St. Charles, Ill., 1993.
[21] R. Miller,V.K. Prasanna Kumar,D.I. Reisis, and Q.F. Stout,“Parallel computations on reconfigurable meshes,” IEEE Trans. on Computers, pp. 678-692, June 1993.
[22] K. Nakano, "A Bibliography of Published Papers on Dynamically Reconfigurable Architectures," Parallel Processing Letters, vol. 5, pp. 111-124, 1995.
[23] S. Olariu, J.L. Schwing, and J. Zhang, "Fundamental Data Movement on Reconfigurable Meshes," Int'l J. High Speed Computing, vol. 6, pp. 311-323, 1994.
[24] S. Olariu, J.L. Schwing, and J. Zhang, "Fundamental Algorithms on Reconfigurable Meshes," Proc. 29th Ann. Allerton Conf. Comm., Control, and Computing, pp. 811-820, 1991.
[25] J. Rothstein, "On the Ultimate Limitations of Parallel Processing," Proc. Int'l Conf. Parallel Processing, pp. 206-212, 1976.
[26] J. Rothstein,“Bus Automata, Brains, and Mental Models,” IEEE Trans. on Systems, Man, and Cybernetics, vol. 18, no. 4, pp. 522-531, Apr. 1988.
[27] D.B. Shu, L.W. Chow, and J.G. Nash, "A Content Addressable, Bit Serial Associate Processor," Proc. IEEE Workshop VLSI Signal Processing,Monterey, Calif., Nov. 1988.
[28] D.B. Shu and J.G. Nash, "The Gated Interconnection Network for Dynamic Programming," Concurrent Computations, S.K. Tewsburg et al., eds. Plenum Publishing, 1988.
[29] L.G. Valiant, "Parallelism in Comparison Problems," SIAM J. Computing, vol. 4, pp. 348-355, 1975.
[30] B. F. Wang and G. H. Chen,“Constant time algorithms for the transitive closure problem and some related graph problems on processor arrays with reconfigurable bus systems,” IEEE Trans. on Parallel and Distributed Systems, vol. 1, no. 4, pp. 500-507, 1991.
[31] C.C. Weems, S.P. Levitan, A.R. Hanson, E.M. Riseman, J.G. Nash, and D.B. Sheu, "The Image Understanding Architecture," Int'l J. Computer Vision, vol. 2, pp. 251-282, 1989

Index Terms:
Monotone matrices, totally monotone matrices, search problems, row minima, reconfigurable meshes, basic reconfigurable meshes, VLSI design, facility location problems, cellular system design.
Citation:
Koji Nakano, Stephan Olariu, "An Efficient Algorithm for Row Minima Computations on Basic Reconfigurable Meshes," IEEE Transactions on Parallel and Distributed Systems, vol. 9, no. 6, pp. 561-569, June 1998, doi:10.1109/71.689443
Usage of this product signifies your acceptance of the Terms of Use.