Computational geometry: an introduction
Computational geometry: an introduction
Obstacle growing in a nonpolygonal world
Information Processing Letters
IEEE Transactions on Computers
Computer graphics: principles and practice (2nd ed.)
Computer graphics: principles and practice (2nd ed.)
Parallel computational geometry
Parallel computational geometry
Parallel Computations on Reconfigurable Meshes
IEEE Transactions on Computers
A Fast Algorithm for Computing a Histogram on Reconfigurable Mesh
IEEE Transactions on Pattern Analysis and Machine Intelligence
Integer summing algorithms on reconfigurable meshes
Theoretical Computer Science
An Efficient Algorithm for Row Minima Computations on Basic Reconfigurable Meshes
IEEE Transactions on Parallel and Distributed Systems
Sorting on a mesh-connected parallel computer
Communications of the ACM
Computer Vision
IEEE Transactions on Parallel and Distributed Systems
Histogramming on a Reconfigurable Mesh Computer
IPPS '92 Proceedings of the 6th International Parallel Processing Symposium
Fast Computer Vision Algorithms for Reconfigurable Meshes
IPPS '92 Proceedings of the 6th International Parallel Processing Symposium
Image Analysis and Mathematical Morphology
Image Analysis and Mathematical Morphology
The Journal of Supercomputing
Hi-index | 0.00 |
The main contribution of this work is to show that a number of fundamental and seemingly unrelated problems in database design, pattern recognition, robotics, computational geometry, and image processing can be solved simply and elegantly by stating them as instances of a unifying algorithmic framework that we call the Multiple Query problem. The Multiple Query problem (MQ, for short) is a 5-tuple ({\cal{Q}}, {\cal{A}}, {\cal{D}}, \phi, \oplus), where {\cal{Q}} is a set of queries, {\cal{A}} is a set of items, \cal D is a set of solutions, \phi:{\cal{Q}}\times {\cal{A}}\rightarrow {\cal{D}} is a function, and \oplus is a commutative and associative binary operator over \cal D. The input to the MQ problem consists of a sequence Q=\langle q_1, q_2, \ldots, q_m\rangle of m queries from {\cal{Q}} and of a sequence A=\langle a_1, a_2, \ldots a_n\rangle of n items from {\cal{A}}. The goal is to compute, for every query q_i (1\leq i\leq m) its solution defined as \phi(q_i,A) = \phi(q_i,a_1)\oplus \phi(q_i,a_2) \oplus \cdots \oplus \phi(q_i,a_n). We begin by discussing a generic algorithm that solves a large class of MQ problems in O(\sqrt{m}+f(n)) time on a reconfigurable mesh of size \sqrt{n}\times \sqrt{n}, where f(n) is the time necessary to compute the expression d_1 \oplus d_2\oplus \cdots \oplus d_n with d_i\in{\cal{D}} on such a platform. We then go on to show that the MQ framework affords us an optimal algorithm for the multiple point location problem on a reconfigurable mesh of size \sqrt{n}\times\sqrt{n}. Given a set A of n points and a set Q of m(m\leq n) points in the plane, our algorithm reports, in O(\sqrt{m}+\log\log n) time, all points of Q that lie inside the convex hull of A. Quite surprisingly, our algorithm solves the multiple point location problem without computing the convex hull of A which, in itself, takes \Omega(\sqrt{n}) time on a reconfigurable mesh of size \sqrt{n}\times\sqrt{n}. Finally, we prove an \Omega(\sqrt{m}+g(n)) time lower bound for nontrivial MQ problems, where g(n) is the lower bound for evaluating the expression d_1 \oplus d_2\oplus \cdots \oplus d_n with d_i\in{\cal{D}}, on a reconfigurable mesh of size \sqrt{n}\times\sqrt{n}.