Merging Free Trees in Parallel for Efficient Voronoi Diagram Construction (Preliminary Version)

This paper describes a new approach for constructing the Voronoi diagram of n points in the plane in parallel. Our approach is based on a divide-and-conquer procedure where we implement the “marry” step by merging forests of free trees (to build the “contour” between the subproblem solutions) in O(log log n) time. This merging procedure is based an a n-divide-and-merge technique reminiscent of the list-merging approach of Valiant. Our method also involves an optimal parallel method for computing the proximity envelope of a point set with respect to a given line. This structure facilitates the use of our fast mering procedure, for it allows the divide-and-conquer procedure to continue without needing to explicitly remove edges of recursively constructed diagrams that are not part of the final diagram. We use this approach to derive two results regarding the deterministic parallel construction of a Voronoi diagram. Specifically, we show that one can solve the Voronoi diagram problem in O(log n log log n) time and O(n log2n) work (which improves the previous time bound while maintaining the same work bound) or, alternatively, in O(log2n) time and O(n log n) work (which improves the previous work bound while maintaining the same time bound). Our model of computation is the CREW PRAM.

[1]  Kurt Mehlhorn,et al.  On the Construction of Abstract Voronoi Diagrams , 1990, STACS.

[2]  Marc Snir,et al.  On Parallel Searching , 2011, SIAM J. Comput..

[3]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[4]  Richard Cole,et al.  Parallel merge sort , 1988, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[5]  Larry Rudolph,et al.  The power of parallel prefix , 1985, IEEE Transactions on Computers.

[6]  Michael Ian Shamos,et al.  Geometric complexity , 1975, STOC.

[7]  David G. Kirkpatrick,et al.  Parallel processing for efficient subdivision search , 1987, SCG '87.

[8]  Michael T. Goodrich,et al.  Constructing the Voronoi Diagram of a Set of Line Segments in Parallel (Preliminary Version) , 1989, WADS.

[9]  Raimund Seidel,et al.  Voronoi diagrams and arrangements , 1986, Discret. Comput. Geom..

[10]  Richard Cole,et al.  Cascading divide-and-conquer: A technique for designing parallel algorithms , 1989, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[11]  Michael Ian Shamos,et al.  Closest-point problems , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[12]  Kurt Mehlhorn,et al.  On the construction of abstract voronoi diagrams , 1990, STACS.

[13]  Leonidas J. Guibas,et al.  Parallel computational geometry , 1988, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[14]  Leslie G. Valiant,et al.  Parallelism in Comparison Problems , 1975, SIAM J. Comput..

[15]  Herbert Edelsbrunner,et al.  Algorithms in Combinatorial Geometry , 1987, EATCS Monographs in Theoretical Computer Science.

[16]  Clyde P. Kruskal,et al.  Searching, Merging, and Sorting in Parallel Computation , 1983, IEEE Transactions on Computers.

[17]  Mikhail J. Atallah,et al.  Parallel Algorithms for Evaluating Sequences of Set-Manipulation Operations , 1988, AWOC.

[18]  Anita Liu Chow Parallel algorithms for geometric problems , 1980 .

[19]  Uzi Vishkin,et al.  Recursive *-tree parallel data-structure , 1989, 30th Annual Symposium on Foundations of Computer Science.

[20]  John H. Reif,et al.  Polling: a new randomized sampling technique for computational geometry , 1989, STOC '89.

[21]  Rolf Klein,et al.  Concrete and Abstract Voronoi Diagrams , 1990, Lecture Notes in Computer Science.