The Community for Technology Leaders
Green Image
<p><b>Abstract</b>—A matrix <it>A</it> of size <it>m</it>×<it>n</it> containing items from a totally ordered universe is termed <it>monotone</it> if, for every <it>i</it>, <it>j</it>, 1 ≤<it>i</it> < <it>j</it>≤<it>m</it>, the minimum value in row <it>j</it> lies below or to the right of the minimum in row <it>i</it>. 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 <it>n</it>×<it>n</it> submesh thereof. Specifically, in this context, we show that every algorithm that solves the problem of computing the minimum of an <it>n</it>×<it>n</it> matrix must take Ω(log log <it>n</it>) time. The same lower bound is shown to hold for the problem of computing the minimum in each row of an arbitrary <it>n</it>×<it>n</it> matrix. As a byproduct, we obtain an Ω(log log <it>n</it>) time lower bound for the problem of selecting the <it>k</it>th smallest item in a <it>monotone</it> matrix, thus extending the best previously known lower bound for selection on the reconfigurable mesh. Finally, we show an <tmath>$\Omega \left( {\sqrt {\log\log n}} \right)$</tmath> time lower bound for the task of computing the row minima of a <it>monotone n</it>×<it>n</it> matrix. Our second main contribution is to provide a nearly optimal algorithm for the row-minima problem: With a monotone matrix of size <it>m</it>×<it>n</it> with <it>m</it>≤<it>n</it> pretiled, one item per processor, onto a basic reconfigurable mesh of the same size, our row-minima algorithm runs in O(log <it>n</it>) time if 1 ≤<it>m</it>≤ 2 and in <tmath>$O\!\left( {{{{\log n} \over {\log m}}}\log\log m} \right)$</tmath> time if <it>m</it> > 2. In case <tmath>$m = n^\epsilon$</tmath> for some constant <tmath>$\epsilon,$</tmath><tmath>$(0 < \epsilon \le 1),$</tmath> our algorithm runs in O(log log <it>n</it>) time.</p>
Monotone matrices, totally monotone matrices, search problems, row minima, reconfigurable meshes, basic reconfigurable meshes, VLSI design, facility location problems, cellular system design.
Koji Nakano, Stephan Olariu, "An Efficient Algorithm for Row Minima Computations on Basic Reconfigurable Meshes", IEEE Transactions on Parallel & Distributed Systems, vol. 9, no. , pp. 561-569, June 1998, doi:10.1109/71.689443
179 ms
(Ver )