Output-Sensitive Construction of the Union of Triangles Esther Ezra and Micha Sharir.

Slides:



Advertisements
Similar presentations
Parikshit Gopalan Georgia Institute of Technology Atlanta, Georgia, USA.
Advertisements

Klees Measure Problem Made Easy Timothy Chan U of Waterloo & HKUST.
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
Incremental Linear Programming Linear programming involves finding a solution to the constraints, one that maximizes the given linear function of variables.
Map Overlay Algorithm. Birch forest Wolves Map 1: Vegetation Map 2: Animals.
Approximations of points and polygonal chains
Motion Planning for Point Robots CS 659 Kris Hauser.
Visibility Graph Team 10 NakWon Lee, Dongwoo Kim.
B659: Principles of Intelligent Robot Motion Spring 2013 David Tidd.
Computing Convex Hulls CLRS 33.3
Near-Linear Approximation Algorithms for Geometric Hitting Sets Pankaj Agarwal Esther Ezra Micha Sharir Duke Duke Tel-Aviv University University University.
Shakhar Smorodinsky Courant Institute (NYU) Joint Work with Noga Alon Conflict-Free Coloring of Shallow Discs.
Shakhar Smorodinsky Courant Institute, New-York University (NYU) On the Chromatic Number of Some Geometric Hypergraphs.
Finding Volumes.
Visibility Computations: Finding the Shortest Route for Motion Planning COMP Presentation Eric D. Baker Tuesday 1 December 1998.
Multi-Robot Motion Planning Jur van den Berg. Outline Recap: Configuration Space for Single Robot Multiple Robots: Problem Definition Multiple Robots:
Computational Geometry and Spatial Data Mining
NUS CS5247 A Visibility-Based Pursuit-Evasion Problem Leonidas J.Guibas, Jean-Claude Latombe, Steven M. LaValle, David Lin, Rajeev Motwani. Computer Science.
All Pairs Shortest Paths and Floyd-Warshall Algorithm CLRS 25.2
Realizability of Graphs Maria Belk and Robert Connelly.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
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.
Algorithmic Robotics and Motion Planning Dan Halperin Tel Aviv University Fall 2006/7 Algorithmic motion planning, an overview.
CS 326A: Motion Planning Criticality-Based Motion Planning: Target Finding.
Almost Tight Bound for a Single Cell in an Arrangement of Convex Polyhedra in R 3 Esther Ezra Tel-Aviv University.
Small-size  -nets for Axis- Parallel Rectangles and Boxes Boris Aronov Esther Ezra Micha sharir polytechnic Duke Tel-Aviv Institute of NYU University.
1 Mesh Generation and Delaunay-Based Meshes Jernej Barbic Computer Science Department Carnegie Mellon University.
reconstruction process, RANSAC, primitive shapes, alpha-shapes
NUS CS 5247 David Hsu Minkowski Sum Gokul Varadhan.
Almost tight bound for the union of fat tetrahedra in R 3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Introduction Outline The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy.
Problem: Induced Planar Graphs Tim Hayes Mentor: Dr. Fiorini.
Outline Introduction The hardness result The approximation algorithm.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Visibility Graphs and Cell Decomposition By David Johnson.
4/21/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Motion Planning Carola Wenk.
Triangle Angle Sum. Properties of triangles Triangles have three sides and three angles Triangles are named according to their vertices The sum of the.
On the union of cylinders in 3-space Esther Ezra Duke University.
How to reform a terrain into a pyramid Takeshi Tokuyama (Tohoku U) Joint work with Jinhee Chun (Tohoku U) Naoki Katoh (Kyoto U) Danny Chen (U. Notre Dame)
October 9, 2003Lecture 11: Motion Planning Motion Planning Piotr Indyk.
Computing the Volume of the Union of Cubes in R 3 Pankaj K. Agarwal Haim Kaplan Micha Sharir.
Splitting a Face Point edge already split new vertex two new faces one new vertex six new half-edges.
Stabbing balls and simplifying proteins Ovidiu Daescu and Jun Luo Department of Computer Science University of Texas at Dallas Richardson, TX
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
1 / 41 Convex Hulls in 3-space Jason C. Yang. 2 / 41 Problem Statement Given P: set of n points in 3-space Return: –Convex hull of P: CH (P) –Smallest.
Substructures in Geometric Arrangements and  -nets Esther Ezra Duke University.
Finding Volumes Chapter 6.2 February 22, In General: Vertical Cut:Horizontal Cut:
Two Finger Caging of Concave Polygon Peam Pipattanasomporn Advisor: Attawith Sudsang.
Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir.
4/9/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Motion Planning Carola Wenk.
The 2x2 Simple Packing Problem André van Renssen Supervisor: Bettina Speckmann.
Kinetic Data Structures: for computational geometry and for graph drawing Sue Whitesides Computer Science Department.
Almost tight bound for the union of fat tetrahedra in R3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
The Set-covering Problem Problem statement –given a finite set X and a family F of subsets where every element of X is contained in one of the subsets.
Approximation Algorithms
NP-Complete Problems.
Mathematical Foundations of AI
Decimation Of Triangle Meshes
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
Finding Volumes.
Orthogonal Range Searching and Kd-Trees
Intro to NP Completeness
Predicting ligand binding sites on protein surface
Computing Shortest Path amid Pseudodisks
Chapter 8 Section 8.2 Applications of Definite Integral
Kinetic Collision Detection for Convex Fat Objects
The Visibility– Voronoi Complex and Its Applications
Minimum Spanning Trees
Convex Hull - most ubiquitous structure in computational geometry
Presentation transcript:

Output-Sensitive Construction of the Union of Triangles Esther Ezra and Micha Sharir

Definition: Union T ={ 1,…, n } - collection of n triangles in the plane. The union U= i I is defined as all regions in the plane that are covered by the triangles of T.

Constructing the Union: Motivation Robot motion planning Construct the forbidden portion of the configuration space. Ray shooting amid semi- algebraic sets in R 3 Construct the union of 4- dimensional regions.

Computing the union Constructing the arrangement of the triangles – too slow! O(n 2 ) Output-sensitive algorithm (in terms of the number of edges on the boundary)? unlikely to exist! 3SUM === HOLE-IN-UNION The best known solutions to problems from the 3SUM-hard family require (n 2 ) time in the worst case.

Union of triangles in R 2 Known results Special cases Union size Ref Fat triangles O(n loglog n) MPSSW-94 Pseudodiscs O(n) KLPS-86 General triangles: Algorithm Running time Ref RIC O(n log n + Θ 1 ) AH-01 DC O(n 2 ) EHS-02 Performs well in practice i |V i | / i i |V i | / i V i – the set of vertices in depth i

Output-sensitive union construction Given a collection T ={ 1,…, n } of n triangles in the plane, such that there exists a subset S T (unknown to us), of << n triangles with S = T, S = T, construct efficiently the union of the triangles in T.

Output Sensitivity: Example I = 2 = 2

= 6 = 6 Only 4 triangles determine the boundary of the union Output Sensitivity: Example II

Our Result We show that when there exists a subset S T of << n triangles, such that S = T, the union can be constructed in O*(n 4/3 + n ) time. Subquadratic when = o*(n)

A Set Cover in a Set System Use a variant of the method of Bronnimann and Goodrich for finding a set cover in a set system of finite VC-dimension Our set system : (V +, T) The set of vertices of A(T) that lie inside the union

Hitting Set in a Set System Dual set system: (T, V*) V* = { T v : v V + } T v consists of all the triangles in T that contain v in their interior. A hitting set: a subset H T, s.t. H has a non empty intersection with every subset member of V*. A hitting set H for (T,V*) is a set cover for (V +,T). H = T H = T

Finding a Hitting Set – general scheme (Bronnimann and Goodrich) 1. Assign weights to the triangles in T. Initially, all weights are Net finder: Construct a (1 / 2 )-net N for (T,V*). ( guess of a hitting set for (T, V*) with |N| = O( log ) ). 3. Verifier: If there exists a subset T v that is not hit by N (there exists a vertex v V + outside N), double the weights of the triangles in T v. Goto 2. Else N is a hitting set for (T,V*)

Performance of the algorithm A hitting set of size O( log ) is found after O( log (n/ )) iterations.

Ideal Setting Problem : The algorithm requires the knowledge of V +. (But we cannot afford to compute V + explicitly). Solution: Variant of the algorithm Use a random subset R V + instead. |R| = r = (t log n) |R| = r = (t log n) Lemma: A subset H that covers R, covers most of the vertices of V +, with high probability: The number of remaining uncovered vertices /t H and R are independent! |V + | = |V + |

The residual cost of the B-G algorithm How many vertices at positive-depth (in V + ) are constructed by the B-G algorithm? O( 2 log 2 + /t ), with high probability. The O( log ) triangles in H (over pessimistic) All remaining uncovered vertices

Implementation Net finder Net finder Drawing a sample R Drawing a sample R Verifier Verifier The actual construction of the union The actual construction of the union O( log (n/ )) times

Simple Implementation Sampling R: O*(r n 2 / ) pairs of triangle edges O(r) real vertices. Net-finder: O(n) Verifier: (brute-force) O*(r + n) If = O(n 4/3 ), construct the entire arrangement, and report the union

The actual construction of the union Divide the process into two stages: 1. Construct the union of all the triangles in H. 2. Insert all the remaining triangles (covering /t positive-depth vertices).

U is the union of the triangles in H. t1, t2, t3 are the remaining triangles.

The actual construction of the union Divide the set of the remaining triangles into n/( log ) subsets, each of size O( log ). Construct H in O( 2 log 2 ) time. For each such subset S, construct A(S). Report all intersections between S and H in an output-sensitive manner. O*(n + / t)

Overall running time O*(n 4/3 + r n 2 / + r 2 + n + / t) r = Ω(t log n) Choose t = k 1/2 / Choose t = k 1/2 / O*(n 4/3 + n )

Extensions: Simple objects in R 2 Implementation: generic and simple. The algorithm can be easily extended to other simple geometric objects in R 2 : O*(n 4/3 + n )

Extensions: Simple objects in R 3 Sampling R: O*(r n 3 / ) Net-finder: O(n) Verifier: (brute-force) O*(r + n) Actual construction of the union: construct the union, in an output-sensitive manner, on every facet of the input objects separately. O*(n 2 + / t). Overall running time: O*(n 2 ). If = O(n 2 ), construct the entire arrangement, and report the union Similar routines as before

Extensions: Simple objects in R d Apply the (d-1)-approach on each facet of the input objects, using induction on d. Overall running time: O*(n d-1 ).

Earlier variant We used the Disjoint-Cover (DC) algorithm [Ezra, Halperin, Sharir 2002] 1. Implementation: 1. more complex. 2. heavily relies on the geometry of the input objects Less generic. 2. Less efficient (subquadratic only for a smaller range of ).

Further research Simpler efficient alternative approaches? RIC : fails!