I/O-Efficient Construction of Constrained Delaunay Triangulations Pankaj K. Agarwal, Lars Arge, and Ke Yi Duke University.

Slides:



Advertisements
Similar presentations
Planar Orientations Chapter 4 ( ) in the book Written By: Tomer Heber.
Advertisements

An Optimal Dynamic Interval Stabbing-Max Data Structure? Pankaj K. Agarwal, Lars Arge and Ke Yi Department of Computer Science Duke University.
Lars Arge 1/43 Big Terrain Data Analysis Algorithms in the Field Workshop SoCG June 19, 2012 Lars Arge.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
KIM TAEHO PARK YOUNGMIN.  Curve Reconstruction problem.
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.
Modeling & Analyzing Massive Terrain Data Sets (STREAM Project) Pankaj K. Agarwal Workshop on Algorithms for Modern Massive Data Sets.
An Introduction to Unstructured Mesh Generation Material tret de: S. J. Owen, "A Survey of Unstructured Mesh Generation Technology", Proceedings 7th International.
Lasse Deleuran 1/37 Homotopic Polygonal Line Simplification Lasse Deleuran PhD student.
Computational Geometry Piyush Kumar (Lecture 3: Convexity and Convex hulls) Welcome to CIS5930.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 Lecture 2 Polygon Partitioning Thursday,
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Convex Hulls Today: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness,
Computational Geometry -- Voronoi Diagram
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
Convex Hulls Computational Geometry, WS 2006/07 Lecture 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
I/O-Algorithms Lars Arge January 31, Lars Arge I/O-algorithms 2 Random Access Machine Model Standard theoretical model of computation: –Infinite.
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, Ke Yi Duke University University of Aarhus.
1cs542g-term Notes. 2 Meshing goals  Robust: doesn’t fail on reasonable geometry  Efficient: as few triangles as possible Easy to refine later.
Delaunay Triangulation Computational Geometry, WS 2006/07 Lecture 11 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
By Dor Lahav. Overview Straight Skeletons Convex Polygons Constrained Voronoi diagrams and Delauney triangulations.
Streaming Computation of Delaunay Triangulations Jack Snoeyink UNC Chapel Hill Jonathan Shewchuk UC Berkeley Yuanxin Liu UNC Chapel Hill Martin Isenburg.
TU/e computational geometry introduction Mark de Berg.
On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
I/O-Algorithms Lars Arge Spring 2009 March 3, 2009.
I/O-Algorithms Lars Arge Spring 2006 February 2, 2006.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Delaunay Triangulation.
Voronoi Diagrams and Delaunay Triangulations Generalized spaces and distances.
Lars Arge1, Mark de Berg2, Herman Haverkort3 and Ke Yi1
Image Morphing : Rendering and Image Processing Alexei Efros.
I/O-Algorithms Lars Arge Aarhus University February 14, 2008.
CS CS 175 – Week 3 Triangulating Point Clouds VD, DT, MA, MAT, Crust.
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, and Ke Yi Duke University University of Aarhus.
I/O-Algorithms Lars Arge University of Aarhus March 7, 2005.
reconstruction process, RANSAC, primitive shapes, alpha-shapes
Generating Raster DEM from Mass Points via TIN Streaming Jack Snoeyink UNC Chapel Hill Jonathan Shewchuk UC Berkeley Tim Thirion UNC Chapel Hill Martin.
From Elevation Data to Watershed Hierarchies Pankaj K. Agarwal Duke University Supported by ARO W911NF
Lection 1: Introduction Computational Geometry Prof.Dr.Th.Ottmann 1 History: Proof-based, algorithmic, axiomatic geometry, computational geometry today.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
TerraStream: From Elevation Data to Watershed Hierarchies Thursday, 08 November 2007 Andrew Danner (Swarthmore), T. Moelhave (Aarhus), K. Yi (HKUST), P.
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
Bin Yao Spring 2014 (Slides were made available by Feifei Li) Advanced Topics in Data Management.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
External Memory Algorithms for Geometric Problems Piotr Indyk (slides partially by Lars Arge and Jeff Vitter)
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.
Lars Arge Presented by Or Ozery. I/O Model Previously defined: N = # of elements in input M = # of elements that fit into memory B = # of elements per.
I/O-Efficient Batched Union-Find and Its Applications to Terrain Analysis Pankaj K. Agarwal, Lars Arge, Ke Yi Duke University University of Aarhus.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2015.
Computational Geometry Polygon Triangulation and The Art Gallery Problem Joachim Gudmundsson NICTA, Sydney.
L8 - Delaunay triangulation L8 – Delaunay triangulation NGEN06(TEK230) – Algorithms in Geographical Information Systems.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
Lecture 1: Basic Operators in Large Data CS 6931 Database Seminar.
Convex Sets & Concave Sets A planar region R is called convex if and only if for any pair of points p, q in R, the line segment pq lies completely in R.
IntroductionReduction to Arrangements of Hyperplanes We keep the canonical triangulation (bottom, left corner triangulation) of each convex cell of the.
Zero Skew Clock Routing ECE 556 Project Proposal John Thompson Kurt Ting Simon Wong.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
3/3/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations I Carola Wenk Based on: Computational.
Polygon Triangulation
CMPS 3130/6130 Computational Geometry Spring 2017
Exterior Angles.
Advanced Topics in Data Management
Transformations and Congruence
Presentation transcript:

I/O-Efficient Construction of Constrained Delaunay Triangulations Pankaj K. Agarwal, Lars Arge, and Ke Yi Duke University

DT vs. Constrained DT Delaunay TriangulationConstrained Delaunay Triangulation As much “Delaunay” as possible while keeping the constrained edges

Constrained DT: Definition A valid edge in DT A valid edge in CDT A set of points: P A set of non-intersecting obstacle segments S with endpoints in P CDT(P,S) consists of all segments in S and all edges connecting pairs of points p,q of P such that (1) p and q can see each other, and (2) there exists a circle passing through p and q, that contains only points of P that cannot see both p and q pq pq

Constrained DT: Definition (2) A valid triangle in DT A valid triangle in CDT A set of points: P A set of non-intersecting obstacle segments S with endpoints in P Or equivalently, CDT(P,S) consists of all triangles pqr such that (1) any two of p, q, and r can see each other or are connected by a segment of S; (2) their circumcircle contains only points that cannot see the interior of pqr. pq pq r r

I/O Model Main memory: M CPU Disk Disk size = B N elements Scan: O(N/B) I/Os (linear) Sort: O(N/B log M N) I/Os

Previous Results Internal memory algorithms DT: many algorithms [Aurenhammer and Klein], practical CDT: [Chew 1987], [Wang and Schubert 1987], runs in O(N log N) time but impractical; Use incremental construction in practice External memory algorithms DT: [Crauser et al. 2001] runs in expected O(N/B log M N) I/Os CDT: not known

Our Results The first external memory algorithm for building the constrained Delaunay triangulation Runs in expected O(N/B log M N) I/Os when #segments < M Implementation

Algorithm ① Take a sample R of size M including all segment endpoints ② Build CDT(R,S) ③ Construct the conflict list of each edge of CDT(R,S) The conflict list of an edge e consists of all points in two adjacent circumcircles and visible from e

Algorithm ④ Build CDT of each conflict list (recurse if still too large to fit in memory)  Assemble results together (discussed later) Linear I/Os (in the total size of conflict lists) if ignore recursion

Analysis Lemma: Expected size of each conflict list = O(N/M) Following Clarkson and Shor framework Difference: Only a constant fraction of the samples are random O(log M N) levels of recursion Total: O(N/B log M N)

Kernels Kernel

Assemble Results Together Lemma 1: A triangle is a valid triangle of CDT(P,S) iff its circumcenter lies inside the kernel Kernel

Assemble Results Together Lemma 2: The circumcenter of each triangle of CDT(P,S) lies inside exactly one kernel Kernel

Implementation & Experiments Using TPIE Compared with Shewchuk’s Triangle program Incremental construction Delete all edges intersected by s Retriangulate two polygons on both sides of s Pre-sort points and segments along some space filling curve (Hilbert curve)

Experiment: Uniform Data 10 million points Varying #segments Ave segment length = Memory: 128M

Experiment: Segment Length 10 million points 10,000 segments Varying segment length Memory: 128M

Experiments: Real World Data Segments: TIGER road data Largest dataset: 0.5 billion points, 1 million segment (input file: 80GB) points: LIDAR points from the Neuse River Basin

Experiments: Real World Data 16M 28M 44M 59M 91M 116M 163M 257M 503M Couldn’t run internal algorithm 7.5 hours

Open Questions External memory algorithms for arbitrary #segments Analysis of the (internal memory) randomized incremental algorithm O(n log 2 n) Ω (n log n)

Thank you!

Extending the Plane [Seidel, 1989] Primary sheet Secondary sheet

Extending the Plane [Seidel, 1989] Primary sheet Secondary sheets

Traveling Rule [Seidel, 1989] Primary sheet Secondary sheets x y z

Extended Voronoi Diagram [Seidel, 1989] Primary sheet Secondary sheets p

Extended Voronoi Diagram CDT(P,S) is dual to EVD(P,S) [Seidel, 1989] Primary sheet Secondary sheets

Kernels Primary sheet Secondary sheets