1 / 38

On the Union of Geometric Objects Esther Ezra Duke University

On the Union of Geometric Objects Esther Ezra Duke University. Union of simply-shaped bodies. 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:

mikasi
Download Presentation

On the Union of Geometric Objects Esther Ezra Duke University

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. On the Union of Geometric ObjectsEstherEzraDuke University

  2. Union of simply-shaped bodies S = {S1, …, Sn} a collection of n simply-shaped bodies in d-space. The union of Sconsists 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. The union has two holes The union boundary

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

  4. Motivation: Motion planning The workspace Input Robot R, a set A = {A1, …, An} of ndisjoint obstacles. The robot and the obstacles are objects in d-space. The robot moves around the obstacles. Goal: Construct the free space The set of all legal placements of R, while translatingRin d-space. collision R does not intersect any of the obstacles in A

  5. The configuration space reference point The robotR is mapped to a point. Each obstacle Aiis mapped to the set: Pi = { x  d : R(x)  Ai  } = Ai(-R(0)) A point p in Pi corresponds to an illegal placement of R and vice versa. The forbidden placements of R The Minkowski sum The expanded obstacle

  6. The free space The free space is the complement of 1 i nPi

  7. Previous results in 2D:Fat objects Each of the angles   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! depends linearly on 1/ log (1/). r’/r   , and  1. r O(n1+), for any>0. r’ r   diam(C) ,D  C, < 1is a constant. C r D

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

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

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

  11. The vertices of the union Each vertex v of the union is generated by the intersection of three cylinders. Reduce the problem to: How many (intersection) vertices appear on the boundary of the union? v

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

  13. 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 is the xy-plane. h

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

  15. The complexity of envelopes [Sharir 1994] The complexity of the lower envelope of nsimple algebraic surfaces in d-space isO*(nd-1). For d=3, the complexity of the lower envelope:O*(n2)

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

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

  18. 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 mostn/relements ofthe input . 

  19. How to construct (1/r)-cuttings 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”. n/r The number of the non-sampled points is n/r, with high probability!

  20. Constructing (1/r)-cuttings: First step: Construct a (1/r)-cutting in the xy-plane: • 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.

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

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

  23. The problem decomposition Construct a (1/r)-cutting forKas 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: • Wide cylinders behave as functions within  . • The number of narrow cylinders in  is small. H’ H  w

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

  25. 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 leavingK. 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. From technical reasons. The strips behave as functions in the -direction inside  . Construct the envelopes in the -direction.

  26. 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. Apply the nearly-quadratic bound of [Agarwal et al. 1996]. v At least one of these cylinders is narrow in .

  27. 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 forceat the bottom of the recursion. The overall bound is:O*(n2).

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

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

  30. 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(r2) .Each cell meets at most: • nwide cylinders ofK . •  n/r narrow cylinders of K. • Bound # goodvertices in each before applying a new recursive step. • Bound # badvertices by brute-force at the bottom of the recursion. U(n) = O*(n2) + O*(r2) U(n/r) Solution:U(n) = O*(n2) . Number of (bad) vertices on the union boundary.

  31. Thank You

  32. Arrangement of geometric objects Input: S = {S1, …, Sn} a collection of n simply geometric objects in d-space. The arrangementA(S) is the subdivision of space induced by S . The maximal number of vertices/edges/faces of A(S) is: (nd) Each object has a constant description complexity Combinatorial complexity.

  33. The problem decomposition Each prism-cell of  meets • At most n large cylinders. • At most n/r small cylinders. Next stage: Show that large cylinders behave as functions within . Process in recursion all the small cylinders.

  34. Quadratic lower bounds Each blue intersection line of a consecutive pair of cylinders in B intersects all the red cylinders in R. R The number of vertices of the union is Ω(n2). B

  35. Wide cylinders behave as functions Theorem: The number of the good vertices in isO*(n2). Main idea: Partition the boundary of the cylinders into canonical strips . A direction  is good for a stripif when entering into the cylinder K bounded by in the-direction, we exit before leavingK. The strips behave as functions in the -direction inside  .

  36. Bounding the number of the good vertices A direction  is good for a vertexvof the union, incident uponthree strips 1, 2, 3, if it is good for each of 1, 2, 3. Key Lemma: Each good vertex vof the union has many good directions . Each good vertex appears on the sandwich region enclosed between two envelopes of thestrips  . Overall: O*(n2) .  1 n 2 v 3

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

More Related