Presentation is loading. Please wait.

Presentation is loading. Please wait.

Localizing the Delaunay Triangulation and its Parallel Implementation

Similar presentations


Presentation on theme: "Localizing the Delaunay Triangulation and its Parallel Implementation"— Presentation transcript:

1 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

2 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.

3 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

4 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

5 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

6 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

7 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?

8 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

9 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?

10 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

11 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

12 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.

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

14 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

15 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

16 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.

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

18 Recovering regular DT from Periodic DT
2018/11/17


Download ppt "Localizing the Delaunay Triangulation and its Parallel Implementation"

Similar presentations


Ads by Google