On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University.

Slides:



Advertisements
Similar presentations
UNC Chapel Hill Lin/Foskey/Manocha Steps in DP: Step 1 Think what decision is the “last piece in the puzzle” –Where to place the outermost parentheses.
Advertisements

1 Decomposing Hypergraphs with Hypertrees Raphael Yuster University of Haifa - Oranim.
Divide and Conquer. Subject Series-Parallel Digraphs Planarity testing.
Planar Orientations Chapter 4 ( ) in the book Written By: Tomer Heber.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Fast Algorithms For Hierarchical Range Histogram Constructions
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Applications of Euler’s Formula for Graphs Hannah Stevens.
Brute-Force Triangulation
Krakow, Summer 2011 Schnyder’s Theorem and Relatives William T. Trotter
Near-Linear Approximation Algorithms for Geometric Hitting Sets Pankaj Agarwal Esther Ezra Micha Sharir Duke Duke Tel-Aviv University University University.
UNC Chapel Hill M. C. Lin Polygon Triangulation Chapter 3 of the Textbook Driving Applications –Guarding an Art Gallery –3D Morphing.
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.
Computing the Fréchet Distance Between Folded Polygons
Feb Polygon Triangulation Shmuel Wimer Bar Ilan Univ., School of Engineering.
Problems in Ramsey theory typically ask a question of the form: "how many elements of some structure must there be to guarantee that a particular property.
Incidences and Many Faces via cuttings Sivanne Goldfarb
The number of edge-disjoint transitive triples in a tournament.
Intersections. Intersection Problem 3 Intersection Detection: Given two geometric objects, do they intersect? Intersection detection (test) is frequently.
Lecture 3 Lower envelopes Computational Geometry, 2005/06 Prof.Dr.Th.Ottmann 1 The Lower Envelope The Pointwise Minimum of a Set of Functions.
Steps in DP: Step 1 Think what decision is the “last piece in the puzzle” –Where to place the outermost parentheses in a matrix chain multiplication (A.
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
The Lower Envelope: The Pointwise Minimum of a Set of Functions Computational Geometry, WS 2006/07 Lecture 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen,
Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
Lecture 3: Polygon Triangulation Computational Geometry Prof. Dr. Th. Ottmann Polygon Triangulation Motivation: Guarding art galleries Art gallery theorem.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Delaunay Triangulation.
Almost Tight Bound for a Single Cell in an Arrangement of Convex Polyhedra in R 3 Esther Ezra Tel-Aviv University.
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Small-size  -nets for Axis- Parallel Rectangles and Boxes Boris Aronov Esther Ezra Micha sharir polytechnic Duke Tel-Aviv Institute of NYU University.
Crossing Lemma - Part I1 Computational Geometry Seminar Lecture 7 The “Crossing Lemma” and applications Ori Orenbach.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Almost tight bound for the union of fat tetrahedra in R 3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Chapter 4: Straight Line Drawing Ronald Kieft. Contents Introduction Algorithm 1: Shift Method Algorithm 2: Realizer Method Other parts of chapter 4 Questions?
On the ICP Algorithm Esther Ezra, Micha Sharir Alon Efrat.
On Neighbors in Geometric Permutations Shakhar Smorodinsky Tel-Aviv University Joint work with Micha Sharir.
Constant Factor Approximation of Vertex Cuts in Planar Graphs Eyal Amir, Robert Krauthgamer, Satish Rao Presented by Elif Kolotoglu.
The Art Gallery Problem
Brute-Force Triangulation
Efficient Partition Trees Jiri Matousek Presented By Benny Schlesinger Omer Tavori 1.
On the union of cylinders in 3-space Esther Ezra Duke University.
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
Chapter 9: Geometric Selection Theorems 11/01/2013
1 Prune-and-Search Method 2012/10/30. A simple example: Binary search sorted sequence : (search 9) step 1  step 2  step 3  Binary search.
Three-Dimensional Solids Polyhedron – A solid with all flat surfaces that enclose a single region of space. Face – Each flat surface of the polyhedron.
How to Cut Pseudoparabolas into Segments Seminar on Geometric Incidences By: Almog Freizeit.
Volume: The Disk Method
Arrangements and Duality Sanjay Sthapit Comp290 10/6/98.
Computing Inner and Outer Shape Approximations Joseph S.B. Mitchell Stony Brook University.
1/19 Minimizing weighted completion time with precedence constraints Nikhil Bansal (IBM) Subhash Khot (NYU)
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.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir.
Polygon Triangulation
Almost tight bound for the union of fat tetrahedra in R3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
CMPS 3130/6130 Computational Geometry Spring 2017
Minimum Spanning Tree 8/7/2018 4:26 AM
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
Geometric Graphs and Quasi-Planar Graphs
Algorithm design techniques Dr. M. Gavrilova
Chapter 5. Optimal Matchings
The Art Gallery Problem
The Art Gallery Problem
Polygon Triangulation
Depth Estimation via Sampling
Kinetic Collision Detection for Convex Fat Objects
Presentation transcript:

On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University

S = {S 1, …, S n } a collection of n simply-shaped bodies in d -space. The union of S consists of all region of  d that are covered by at least one element of S. Example: Union of triangles in the plane All portions of the plane that are covered by the triangles. Union of simply-shaped bodies The union boundary The union has two holes

The arrangement A(S) is the subdivision of space induced by S. The maximal number of vertices/edges/faces of A(S) :  (n d ) The problem: What is the maximal number of vertices/edges/faces that form the boundary of the union of the bodies in S ? Trivial bound: O(n d ) (tight!). The Union as a substructure in arrangements Combinatorial complexity. Union is a substructure of the arrangement

Previous results in 2D: Fat objects n  -fat triangles. Number of holes in the union: O(n). Union complexity: O(n loglog n). [Matousek et al. 1994] Fat curved objects (of constant description complexity) n convex  -fat objects. Union complexity: O*(n) [Efrat, Sharir. 2000]. n  -curved objects. Union complexity: O*(n) [Efrat, Katz. 1999]. Union complexity is ~ “one order of magnitude” smaller than the arrangement complexity! Each of the angles   O(n 1+  ), for any  >0. r r’ r’/r  , and   1. r   diam(C), D  C,  < 1 is a constant. r C D depends linearly on 1/  log ( 1/  ). [Pach, Tardos. 2002]

Previous results in 3D: Fat Objects Congruent cubes n arbitrarily aligned (nearly) congruent cubes. Union complexity: O*(n 2 ) [Pach, Safruti, Sharir 2003]. Generalization: Arbitrary side-length cubes Union complexity: O*(n 2 ) [Ezra, Sharir 2007]. Simple curved objects n congruent infinite cylinders. Union complexity: O*(n 2 ) [Agarwal, Sharir 2000]. n  -round objects. Union complexity: O*(n 2 ) [Aronov et al. 2006]. Union complexity is ~ “one order of magnitude” smaller than the arrangement complexity! Each of these bounds is nearly-optimal. r C r   diam(C), D  C,  < 1 is a constant. D

The case of infinite cylinders Input: K = {K 1, …, K n } a collection of n infinite cylinders in R 3 of arbitrary radii. What is the combinatorial complexity of the union? Trivial bound: O(n 3 ). Conjectured by [agarwal, sharir 2000]: Upper bound: O(n 2 ) (?) It is crucial that the cylinders are infinite. Otherwise, the union complexity is  (n 3 ).

The vertices of the union Each vertex v of the union is generated by the intersection of a triple of cylinders. Reduce the problem to: How many (intersection) vertices appear on the boundary of the union? # edges + # faces = O(# vertices + n 2 ) v

Quadratic lower bounds T B The number of vertices of the union is Ω(n 2 ). Each (top) intersection line of a consecutive pair of cylinders in B intersects all the top cylinders in T. B T

Envelopes in d-space Input: F = {F 1, …, F n } a collection of n (d-1)- variate functions. The lower envelope E F of F is the pointwise minimum of these functions: E F (x) = min {F  F} F(x), for x   d-1. [Sharir 1994] The complexity of the lower envelope of n simple algebraic surfaces in d -space is O*(n d-1 ). The lower envelope is monotone. O*(n 2 ) for d=3.

The sandwich region [Agarwal et al. 1996, koltun sharir 2003] The complexity of the sandwich region enclosed between the lower envelope of n simple algebraic surfaces in d -space and the upper envelope of another such collection is O*(n d-1 ), for d  4. For d=3, the complexity of the sandwich region is: O*(n 2 )

Main idea: Reduce cylinders to envelopes Decompose space into vertical prism cells . Partition the boundary of the cylinders into canonical strips. Show that in each cell  most of the union vertices v appear on the sandwich region enclosed between two envelopes of the strips. Apply the bound O*(n 2 ) of [Agarwal et al. 1996].

From cylinders to envelopes Use (1/r)- cuttings in order to partition space. (1/r)- cutting: A useful divide & conquer paradigm. Fix a parameter 1  r  n. (1/r)- cutting is a subdivision of space into openly disjoint simplicial subcells , s.t., each cell  meets at most n/r elements of the input. 

The 1-dim problem: We have a set of n points on the real line. Choose a random sample R of r log r points : With high probability, the points in R partition the real line into roughly “equal pieces”. How to construct (1/r)-cuttings The number of the non-sampled points is n/r, with high probability! n/r

Constructing (1/r)- cuttings: First step: Construct a (1/r)- cutting in the xy- plane: 1.Project all the cylinders in K onto the xy -plane. Obtain a set of n strips. Let L be the set of the bounding lines of the projections of K. Each cylinder is projected to a strip.

Constructing (1/r)- cuttings: 2.Choose a random sample R of O(r log r) lines of L ( r is a fixed parameter). 3.Form the planar arrangement A(R) of R : Each cell C of A(R) is a convex polygon. Overall complexity: O(r 2 log 2 r). 4.Triangulate each cell C. Number of simplices: O(r 2 log 2 r) Theorem [Clarkson & Shor] [Haussler & Welzl] : Each simplicial cell is crossed by  n/r lines of L, with high probability. C

The cutting property Second step: 5.Lift all the simplices in the z -direction into vertical prisms . Obtain a collection  of O(r 2 log 2 r) prisms. Each prism cell  meets only  n/r silhouette - lines of the cylinders in K.

The problem decomposition Construct a (1/r)- cutting  for K as above. Fix a prism-cell  of . Classify each cylinder K that meets  as: wide – if the radius  of K satisfies:   w/2, where w is the width of . narrow - otherwise. Main goal: 1.Wide cylinders behave as functions within . 2.The number of narrow cylinders in  is small (  n/r ) : A narrow cylinder in  must have a silhouette-line crossing . H H’ w 

Classification of the union vertices Each vertex v of the union that appears in  is classified as: Good - if all three cylinders that are incident to v are wide in . v lies in the sandwich region enclosed between two envelopes. Bad - otherwise. Framework: Construct a recursive (1/r)- cutting  for K. Most of the vertices of the union become good at some recursive step. Bound the number of bad vertices by brute force at the bottom of the recursion. O*(n 2 ). Apply the nearly-quadratic bound of [Agarwal et al. 1996]. Overall bound: O*(n 2 )

The recursion tree N = n, W = 0 N  n/r, W  n 11 r2r2 22  =  3 Partitioning  3 into O*(r 2 ) prisms: Some narrow become wide. … Dispose of overall O*(n 2 ) good vertices. N  n/r 2, W  n/r … … Dispose of overall O*(n 2 ) good vertices. N=O(1), W  n/r … #good vertices = O*(n 2 ) #bad vertices = O*(n 2 ) The overall bound is: O*(n 2 ). # nodes in bottom of recurrence = O*(n 2 )

Thank You

Previous results in 3D: Fat Objects Fat tetrahedra n  -fat tetrahedra of arbitrary sizes. Union complexity: O*(n 2 ) [Ezra, Sharir 2007]. Special cases: n arbitrary side-length cubes. Union complexity: O*(n 2 ). n  -fat triangular (infinite) prisms, having cross sections of arbitrary sizes. Union complexity: O*(n 2 ). n  -fat triangles. A simpler proof that shows a bound of O*(n). Each of these bounds is nearly-optimal. fat  

Extend the notion of “fatness” A cylinder is not fat! A wider definition for fatness: We can sweep K with a plane h whose 2D cross section with each K  K is always fat. The 2D cross section is a set of fat ellipses. Lemma: Let K’  K be a subset of K that captures most of the union vertices. Then we can sweep K’ with a plane h whose 2D cross section with each K  K’ is always fat. h h h is the xy - plane.

Envelopes in d-space Input: F = {F 1, …, F n } a collection of n (d-1)- variate functions. The lower envelope E F of F is the pointwise minimum of these functions. That is, E F is the graph of the following function: E F (x) = min {F  F} F(x), for x   d-1. The lower envelope is monotone.

The complexity of envelopes [Sharir 1994] The complexity of the lower envelope of n simple algebraic surfaces in d -space is O*(n d-1 ). For d=3, the complexity of the lower envelope: O*(n 2 )

The 1-dim problem: We have a set of n points on the real line. Choose a random sample R of r log r points : With high probability, the points in R partition the real line into roughly “equal pieces”. How to construct (1/r)-cuttings The number of the non-sampled points is n/r, with high probability! n/r

The number of narrow cylinders in a single prism-cell  K l1l1 l2l2 l1l1 l2l2  22 The silhouette-lines of K do not meet . The projection onto the xy -plane. Claim: A narrow cylinder K in  must have a silhouette-line crossing . w Conclusion: By the cutting properties,  meets only a small number of narrow cylinders.

Wide cylinders behave as functions inside  Main idea: Partition the boundary of the cylinders into canonical strips . A direction  is good for a strip  if when entering from  into the cylinder K bounded by  in the  - direction, we exit  before leaving K. Key lemma: Each strip  of a wide cylinder has many good directions. There is a common good direction , for which all strips behave as functions. The strips  behave as functions in the  -direction inside . Construct the envelopes in the  -direction. From technical reasons.

Wide cylinders behave as functions inside  Main idea: Partition the boundary of the cylinders into canonical strips . A direction  is good for a strip  if when entering from  into the cylinder K bounded by  in the  - direction, we exit  before leaving K.  is good for a vertex v of the union, if it is good for each of its three incident strips. The strips  behave as functions in the  -direction inside . From technical reasons. 11 22 33 v 

Wide cylinders behave as functions inside  Key lemma: Each vertex v incident to three wide cylinders has many good directions. There is a common good direction , for which all strips behave as functions. Construct the envelopes in the  -direction.

Wide cylinders behave as functions inside  Main idea: Partition the boundary of the cylinders into canonical strips . A direction  is good for a strip  if when entering from  into the cylinder K bounded by  in the  - direction, we exit  before leaving K. Key lemma: Each strip  of a wide cylinder has many good directions. There is a common good direction , for which all strips behave as functions. The strips  behave as functions in the  -direction inside . Construct the envelopes in the  -direction. From technical reasons.

The overall analysis Construct a recursive (1/r)- cutting  for K. Most of the vertices of the union become good at some recursive step. Bound the number of bad vertices by brute force at the bottom of the recursion. The overall bound is: O*(n 2 ).

The recursion tree N = n, W = 0 N  n/r, W  n 11 r2r2 22  =  3 Partitioning  3 into O*(r 2 ) prisms: Some narrow become wide. … Dispose of overall O*(n 2 ) good vertices. N  n/r 2, W  n/r … … Dispose of overall O*(n 2 ) good vertices. N=O(1), W  n/r … #good vertices = O*(n 2 ) #bad vertices = O*(n 2 ) The overall bound is: O*(n 2 ). # nodes in bottom of recurrence = O*(n 2 )

The case of congruent cylinders: A simple proof Simplifying the proof of [Agarwal, Sharir 2000]: Since all cylinders have equal radii, all cylinders K meeting  are either wide or narrow within . Each bad vertex v in  must be incident to a triple of narrow cylinders! ( v cannot be incident to both wide and narrow cylinders.) Does not hold for cylinders with arbitrary radii

The case of congruent cylinders Construct a recursive (1/r)- cutting  for K ( r - a sufficiently large constant). Number of cells in the cutting:  O(r 2 ). Each cell  meets at most: 1.n wide cylinders of K. 2.  n/r narrow cylinders of K. Bound # good vertices in each  before applying a new recursive step. Bound # bad vertices by brute-force at the bottom of the recursion. U(n) = O*(n 2 ) + O*(r 2 ) U(n/r) Solution: U(n) = O*(n 2 ). Number of (bad) vertices on the union boundary.