Localizing the Delaunay Triangulation and its Parallel Implementation

Slides:



Advertisements
Similar presentations
Order-k Voronoi Diagram in the Plane
Advertisements

Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
Surface Reconstruction From Unorganized Point Sets
Lecture 3: Parallel Algorithm Design
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
4/29/2015 Wireless Sensor Networks COE 499 Deployment of Sensor Networks II Tarek Sheltami KFUPM CCSE COE
Computational Geometry II Brian Chen Rice University Computer Science.
C o m p u t i n g C O N V E X H U L L S by Kok Lim Low 10 Nov 1998 COMP Presentation.
The Divide-and-Conquer Strategy
Ruslana Mys Delaunay Triangulation Delaunay Triangulation (DT)  Introduction  Delaunay-Voronoi based method  Algorithms to compute the convex hull 
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Convex Hulls in 3-space Jason C. Yang.
What does that mean? To get the taste we will just look only at some sample problems... [Adapted from S.Suri]
3/5/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations II Carola Wenk Based on: Computational.
Intersections. Intersection Problem 3 Intersection Detection: Given two geometric objects, do they intersect? Intersection detection (test) is frequently.
Voronoi Diagram Presenter: GI1 11號 蔡逸凡
Computational Geometry -- Voronoi Diagram
1 Maximal Independent Set. 2 Independent Set (IS): In a graph, any set of nodes that are not adjacent.
1cs542g-term Notes. 2 Meshing goals  Robust: doesn’t fail on reasonable geometry  Efficient: as few triangles as possible Easy to refine later.
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
Delaunay Triangulation on the GPU Dan Maljovec. CPU Delaunay Triangulation Randomized Incremental Algorithm 1.Construct Bounding triangle 2.Choose point.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
CS CS 175 – Week 3 Triangulating Point Clouds VD, DT, MA, MAT, Crust.
1 Mesh Generation and Delaunay-Based Meshes Jernej Barbic Computer Science Department Carnegie Mellon University.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Voronoi diagrams of “nice” point sets Nina Amenta UC Davis “The World a Jigsaw”
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
Voronoi diagrams and applications Prof. Ramin Zabih
Line Arrangement Chapter 6. Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
On Graphs Supporting Greedy Forwarding for Directional Wireless Networks W. Si, B. Scholz, G. Mao, R. Boreli, et al. University of Western Sydney National.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
Delaunay Triangulation on the GPU
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
Convex hulls in 3D Maciej Kot. Finding convex hull Given a set of points, find a convex hull that contains all of them and is minimal.
Polygon Triangulation
CMPS 3130/6130 Computational Geometry Spring 2017
Randomized Incremental Algorithm for Delaunay Triangulation (DT) CS Gates 219 October 19, 3:00 – 4:20 Richard Zhang (for Leo G.) Disclaimer: All.
CENG 789 – Digital Geometry Processing 03- Point Sets
3. Polygon Triangulation
3.1 Clustering Finding a good clustering of the points is a fundamental issue in computing a representative simplicial complex. Mapper does not place any.
Introduction to Spatial Computing CSE 555
Image Morphing © Zooface Many slides from Alexei Efros, Berkeley.
Variational Tetrahedral Meshing
Case Study 2- Parallel Breadth-First Search Using OpenMP
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Haim Kaplan and Uri Zwick
Maximal Independent Set
Renjie Chen Craig Gotsman Technion – Israel Institute of Technology
Algorithm design techniques Dr. M. Gavrilova
3.1 Clustering Finding a good clustering of the points is a fundamental issue in computing a representative simplicial complex. Mapper does not place any.
The Art Gallery Problem
Craig Schroeder October 26, 2004
Enumerating Distances Using Spanners of Bounded Degree
Maximal Independent Set
The Art Gallery Problem
Depth Estimation via Sampling
On the effect of randomness on planted 3-coloring models
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA
Delaunay Triangulation & Application
L1 Shortest Path Queries among Polygonal Obstacles in the Plane
Approximation Algorithms
EE384Y: Packet Switch Architectures II
Communication Driven Remapping of Processing Element (PE) in Fault-tolerant NoC-based MPSoCs Chia-Ling Chen, Yen-Hao Chen and TingTing Hwang Department.
Algorithm Course Algorithms Lecture 3 Sorting Algorithm-1
Presentation transcript:

Localizing the Delaunay Triangulation and its Parallel Implementation Good morning everyone, I’m Renjie Chen from Technion, the Israel institute of technology. In the following, I’ll talk about my latest joint work with Craig Gotsman about Localizing the Delaunay Triangulation and its Parallel Implementation Renjie Chen Craig Gotsman Technion – Israel Institute of Technology

Outline Introduction of Delaunay triangulation(DT) Localize DT Parallel DT Experimental results & conclusion 2018/11/17 Here’s the outline of this talk. First, I will give a very brief introduction for the Delaunay triangulation. Next, I will talk about a local property about Delaunay triangulation. And based on this local property, I will present a parallel algorithm for computing the Delaunay triangulation Finally, I will show some experimental results and conclude the talk.

Delaunay Triangulation 2018/11/17 Given a point set, the Delaunay triangulation is a partition of the domain with triangles, which do not overlap with each other. And each triangle has a circumcircle which doesn’t contain any other point

Delaunay Triangulation - Voronoi Diagram 2018/11/17 The Delaunay triangulation has a dual, the Voronoi Diagram Each vertex of the Voronoi diagram is the circumcenter of some Delaunay triangle. By connecting the circumcircles properly, we have the Voronoi diagram

Delaunay Triangulation - Algorithms 2018/11/17 Edge flip non-Delaunay triangulation (Randomized) Incremental construction Divide and conquer Sweepline Sweephull Half-plane intersecting … There are many algorithms developed to compute the Delaunay triangulation To name a few, We have edge flipping algorithm based on a non-Delaunay triangulation Incremental construction algorithm and its randomized variant Divide and conquer Sweepline and sweephull And lastly half-plane intersecting, based on which we develop the parallel Delaunay triangulation algorithm

Delaunay Triangulation - Properties Empty circumcircle Convex hull Nearest neighbor … 2018/11/17 Delaunay triangulation has many properties, among them we have The empty circumcircle property we mentioned earlier Convex hull property which says the Delaunay triangulaiton always contains the convex hull of the same point set And the nearest neighbor graph property, which says the point nearest to each point is a neighbor in the Delaunay triangulation Our local Delaunay property is closely related to the last property

Delaunay Triangulation 2018/11/17 There is a lower bound on the distance of Delaunay neighbors, which is the minimal distance from a point to all the other points However we can not bound the distance from up. That is the maximal Delaunay edge length can be as large as the diameter of the point set. This happen most often near the convex hull. Now the problem is can we localize all the Delaunay neighbors in some way? Delaunay neighbor can be far away Can we localize it?

Localize Delaunay Triangulation 2018/11/17         For a given point, shown red If we are given a containing polygon formed by some points in the point set Then we can check the triangles formed by each edge of the polygon and the given point each such triangle has a circumcircle, shown transparently here And the union of these circumcircles defines the region which contains all the Delaunay neighbors of the current point. For example, the sub set shown in blue contains all the Delaunay neighbors of the red point, And none of the black points can be Delaunay neighbors of the red point. To verify, we can see the true Delaunay one-ring, colored in light blue For the formal proof for this local property, please check our paper. Please refer the paper for proof Given a containing polygon formed by points in the set

Localize Delaunay Triangulation 2018/11/17     Now what if we are only given an open polygon, which does not contain the given point inside. In this case, if we still take the union of the circumcles of the triangles formed by the edges of the polygon and the given point, We will miss some true Delaunay neighbors. The light blue polygon shows the true Delaunay one-ring However we can consider adding a virtual point, the infinity point, and make the polygon closed in some sense Then we can add another two circumcircles, to be precisely, two half-planes Now this new region defined by the circumcircles and the half-planes gives a localized region for the Delaunay neighbors of the red point Given an open polygon? ∞

Half-plane intersecting for DT Start from some initial (Delaunay) 1-ring 2018/11/17             Convergence of the alg.? The approximate Voronoi polygon always shrinks Now based on the local Delaunay property, we have a new half-plane intersecting algorithm for Delaunay triangulation Suppose we have some initial 1-ring formed by candidates of Delaunay neighbors Now for each triangle in the 1-ring, we check whether its circumcircle is empty, if we find a point inside it, then we use it to run half-plane intersecting with the current approximate Voronoi polygon We iteratively repeat this procedure for all the points in each of the circumcircle In the end, all the circumcircle will be empty, and we get the true Delaunay one-ring And also the Voronoi polygon This algorithm is guaranteed to converge to the correct answer, as the approximate Vornoi polygon always shrinks          

Parallel Delaunay Triangulation 2018/11/17 Now we are ready to present our parallel algorithm for Delaunay triangulation Given a point set, for each point in the set, we can find their Delaunay one-ring in parallel, using the half-plane intersecting algorithm Merge all the Delaunay one-rings, we have the Delaunay triangulation Find the Delaunay 1-ring for each point in parallel

Avoiding redundant computation Each Delaunay triangle found 3 times Each Delaunay edge found 4 times 2018/11/17           It is easy to see that by computing all the Delaunay one-ring independent of each other, we will find each Delaunay triangle 3 times, and each Delaunay edge 4 times However actually for each point, we only need to find two Delaunay triangles incident to it instead of all the one-ring Delaunay triangles As long as for each point, the two corresponding Delaunay triangles pass through the vertical line through itself. Of course, for point on the convex hull, we might find only one of them. Based on this observation, we can avoid redundant computation in the half-plane intersecting algorithm. Now we only need to iteratively do half-plane intersecting for the point inside the circumcirlce of the two triangles through the vertical The algorithm converges for the same reason as the full algorithm.        

Periodic DT 2018/11/17 Our algorithm can be used to compute Periodic Delaunay Triangluation Here’s an example of Periodic Delauanay Triangulation

Periodic DT 2018/11/17   Actually for Periodic Delaunay triangulation, we can always find a containing polygon for each point. In the worst case, we can always fall back to the polygon formed by it and replicas of itself in different periods

Results - Performance 2018/11/17 Here we show some results of our algorithm and its performance Top left shows the runtime of the algorithm under different configurations. The green curve corresponds to our algorithm with 4 cpu cores, We can see it out performs all the other state-of-the-art sequential algorithms, including triangle, CGAL, qhull In the bottom right, we show the speedup using multi-core CPU, we can see our algorithm achieves almost perfect speedup In the bottom left and top right, we show different point distributions we use to compute the Delaunay triangulations, Including both uniform and non-uniform distributions

Conclusion Local Delaunay triangulation Localize DT Parallel DT Future work GPU implementation Optimization for non-uniform distribution High dimensions Manifold surfaces 2018/11/17 Now lets conclude this talk. In this talk, we first introduce a local property of the Delaunay triangulation. Then we use it to developed a parallel algorithm for computing the Delaunay triangulation based on half-plane intersecting As for the future work, we want to implement the algorithm on the GPU, Optimize the algorithm for non-uniform distributions and generalize it to higher dimensions and non-Euclidean manifolds.

Thank you for your attention! 2018/11/17 Thank you for your attention!

Recovering regular DT from Periodic DT 2018/11/17