Presentation is loading. Please wait.

Presentation is loading. Please wait.

Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir.

Similar presentations


Presentation on theme: "Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir."— Presentation transcript:

1 Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir

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

3 Input: S = {S 1, …, S n } a collection of n simply-shaped bodies in d -space of constant description complexity. 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!). Substructure in arrangements: Union of simply-shaped bodies Combinatorial complexity.

4 Substructure in arrangements: A single cell in an arrangement Input: S = {S 1, …, S n } a collection of n geometric objects in d-space of constant description complexity. A(S) : The arrangement induced by S. The problem: What is the maximal number of vertices/edges/faces that form the boundary of a single cell of A(S) ? Trivial bound: O(n d ) (NOT tight!). A hole in the complement of the union.

5 Survey of thesis results CombinatorialAlgorithmic

6 Union of “fat” tetrahedra Input: A set of n fat tetrahedra in R 3 of arbitrary sizes. Result: Union complexity:  O(n 2 ) Almost tight. Special case: Union of cubes of arbitrary sizes. fat thin A cube can be decomposed into O(1) fat tetrahedra.

7 A single cell in an arrangements of convex polyhedra Input: A set of k convex polyhedra with n facets (overall). Result: Single cell complexity:  O(nk) Almost tight. Algorithm:  O(nk polylog(n)) running time.

8 Regular vertices on the union boundary Input: n compact convex sets in the plane, with simple boundaries. Regular vertex: Each pair of boundaries intersect in at most O(1) points. Regular Intersection points of two boundaries that intersect twice. Irregular

9 Regular vertices on the union boundary Problem statement: How many regular vertices appear on the boundary of the union? Result: # regular vertices:  O(n 4/3 ) Almost tight.

10 Constructing the union boundary Input: A set T of n triangles in the plane, where, there exists a small subset S  T, of  << n triangles s.t.,    S  =    T  Result: Algorithm:  O(n 4/3 + n  ) time, Subquadratic when  = o(n). Extensions to d -space:  O(n d-1  )

11 Counting Intersections Among Triangles in 3-space Input: A set of n triangles in 3-space. Problem statement: Efficiently count / represent in a compact form all intersections among them. Result: Algorithm:  O(n 2 ) time. The problem is 3SUM-hard. The algorithm is likely to be nearly- optimal. # intersections = O(n 3 )

12 Analyzing the ICP algorithm Input: A = {a 1, …, a m }, B = {b 1, …, b n } A,B  R d How much A and B resemble each other? The Iterative Closest Point (ICP) algorithm: A heuristic matching algorithm that repeatedly aligns A on B, while decreasing . With respect to some cost function . a1a1 a2a2 a3a3 b1b1 b2b2 b3b3 b4b4 The algorithm uses only translations.

13 Analyzing the ICP algorithm Problem statement: How may iterations does the algorithm perform? Results (  = RMS): # iterations: O(m d n d ) # iterations (in R 1 ):  (n log n) Show structural properties of the algorithm. Results (  = Hausdroff): # iterations: O(m d n d ) # iterations (in R 1 ):  (n) When the spread of B is polynomial.

14 Union of Geometric Objects

15 Previous results in 2D The case of pseudodisks n compact simply-connected sets, s.t., the boundaries of any pair of sets intersect at most twice. Arise in the case of a convex translating robot R amid convex pairwise disjoint obstacles. Union complexity: 6n-12 = O(n) [Kedem et al. 1986].

16 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( s (n) log n) [Efrat Katz. 1999]. 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 DS-sequence of order s on n symbols. ( s is a fixed constant). s (n)  O(n). C D

17 Previous results in 3D Translational motion planning P = a set of k convex polyhedra with n facets (overall) that arise in the case of a convex translating robot R amid convex (pairwise disjoint) obstacles. Each P  P is the Minkowski sums of (-R) and an obstacle. Union complexity: O(nk log k) [Aronov, Sharir 1997]. The general problem P = arbitrary set of k convex polyhedra with n facets (overall). Union Complexity: O(k 3 + nk log k) [Aronov, Sharir, Tagansky 1997]. Cannot be applied when R is non- convex.

18 Previous results in 3D: Fat Objects Congruent cubes n arbitrarily aligned (nearly) congruent cubes. Union complexity: O*(n 2 ) [Pach, Safruti, Sharir 2003]. Simple curved objects n congruent inifnite cylinders. Union complexity: O*(n 2 ) [Agarwal Sharir 2000]. n  -round objects. Union complexity: O*(n 2 ) [Aronov et al. 2006]. Each of these bounds is nearly-optimal. r C r   diam(C), D  C,  < 1 is a constant. D

19 Special case: Fat tetrahedra Input: T = {T 1, …, T n } a collection of n fat tetrahedra in R 3 of arbitrary sized. Combinatorial problem What is the combinatorial complexity of the boundary of the union? Trivial bound: O(n 3 ). fat thin It is sufficient to bound the number of intersection vertices.

20 Classification of the intersection vertices Outer vertex: The intersection of an edge of a tetrahedron with a facet of another tetrahedron. Overall : O(n 2 ). Inner vertex: The intersection of three facets of three distinct tetrahedra. Overall : O(n 3 ). Reduce the problem to: How many inner vertices appear on the boundary of the union? u v

21  -fat dihedral/trihedral wedges  -fat dihedral wedge W : W is the intersection of two halfspaces. The dihedral angle  .  The dihedral angle.  -fat trihedral wedge W : W is the intersection of three halfspaces. The solid angle  . W is ( ,  )- substantially fat if the sum of the angles of its three facets  , and  > 4  /3.  The solid angle. 

22  -fat tetrahedron A tetrahedron T is  -fat if: 1.Each pair of its facets define an  -fat dihedral wedge. 2.Each triple of its facets define an  -fat trihedral wedge.  

23 The union of fat wedges [Pach, Safruti, Sharir 2003] The combinatorial complexity of the union of n  -fat dihedral wedges: O*(n 2 ). Thin dihedral wedges (almost half-planes) create a grid with Ω(n 3 ) vertices. The bound depends linearly on 1/ .

24 The union of fat wedges: A quadratic lower bound construction Merge the wedges in R and in B so that they form a 2D-grid on W. R B W The right facet of W “shaves” the edges of the wedges in R and in B. The number of vertices of the union is Ω(n 2 ).

25 The union of fat trihedral wedges: An almost quadratic upper bound [Pach, Safruti, Sharir 2003] The union of n ( ,  )- substantially fat trihedral wedges: O*(n 2 ). The combinatorial complexity of the union of n congruent arbitrarily aligned cubes is O*(n 2 ). Apply a reduction from cubes to wedges. Each cube intersects only O(1) cells of the grid.

26 More general union problems Union of arbitrary side-length cubes: Use the grid reduction? Does not work! Need to apply a more elaborate partition technique of space, so as to reduce cubes to wedges. Union of fat tetrahedra: The grid reduction does not work even when the tetrahedra are congruent!  Each tetrahedron induces at least one non-substantially fat trihedral wedge.

27 Our results The combinatorial complexity of the union of n  -fat tetrahedra, of arbitrary sizes, is O*(n 2 ). The combinatorial complexity of the union of polyhedra, of arbitrary sizes, that can be decomposed or covered by n fat tetrahedra, is O*(n 2 ). The combinatorial complexity of the union of n  -fat trihedral wedges is O*(n 2 ). The combinatorial complexity of the union of n  -fat triangular prisms, having cross sections of arbitrary sizes is O*(n 2 ). Special case: Union of cubes of arbitrary sizes. Almost tight. Follows easily by our analysis.

28 From tetrahedra to wedges T is a collection of n  - fat tetrahedra in R 3. Use (1/r)- cutting 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 tetrahedra facets of T. 

29 Constructing (1/r)- cuttings 1.Choose a random sample R of O(r log r) of the planes containing tetrahedra facets in T ( r is a fixed parameter). 2.Form the arrangement A(R) of R : Each cell C of A(R) is a convex polyhedron. Overall complexity: O(r 3 log 3 r). 3.Triangulate each cell C, and obtain a collection  of O(r 3 log 3 r) simplices. Theorem [Clarkson & Shor] [Haussler & Welzl] : Each cell  of  is crossed by  n/r tetrahedra facets of T, with high probability. C Use the hierarchical decomposition of Dobkin & Kirkpatrick

30 Triangulating a cell: The hierarchical decomposition of Dobkin & Kirkpatrick Hierarchical representation of a convex polyhedron C (An informal description): 1.Construct a (large) independent set V 1 of vertices of C=C 1. 2.Remove the vertices in V 1 from C 1 : Fill each hole with simplicial subcells, and peel them off C 1. 3.Obtain a new polyhedron C 2  C 1. 4.Apply steps 1—3 recursively. Bottom of recursion: The new polyhedron C k is a simplex. C 1 =C C3C3 C2C2 k = O(log r) number of levels in the recursion.

31 Claim: There exists a hierarchical representation for C that satisfies: 1.k = O(log r). 2.. Each line l that stabs C, crosses only O(log r) of its simplices. The DK-hierarchical decomposition l

32 Properties of the overall decomposition  The DK-decomposition properties imply: The overall number of cells  of  is O(r 3 log 3 r). Each tetrahedron edge crosses at most O(r log 2 r) simplices  of . Another crucial property to follow. Due to the stabbing line property. There are O(r log r) planes in R.

33 The problem decomposition Construct an “edge-sensitive” (1/r)- cutting  for T as above. Fix a cell  of . Some of the tetrahedra in T may become half-spaces/  -fat dihedral wedges inside . Classify each (inner) vertex v of the union that appears in  as: Good - if all three tetrahedra that are incident to v are half-spaces/  -fat dihedral wedges in . Bad - otherwise. At least one of these tetrahedra has three (or more) facets that meet . Apply the nearly-quadratic bound of [Pach, Safruti, Sharir 2003].

34 Bounding the number of bad vertices Fix a tetrahedron T  T : A cell  is called bad for T, if it meets at least three facets of T. Goal: For each fixed tetrahedron T  T, the number of bad cells is small. Lemma: There are only O*(r) bad cells for T. Immediate when the cells meet an edge of T (stabbing line property).   meets all four facets of T.

35 Goal: Bad cells are scarce F The 2D cross-sections of all cells intersecting F is a 2D arrangement of lines. Overall number of cells: O*(r 2 ). Our bound improves the trivial bound by roughly an order of magnitude. The trivial bound is O*(r 2 ).

36 The frequency of bad cells Two facets of T can meet Ω*(r 2 ) cells. The construction is impossible for three facets of T ! F1F1 F2F2

37 The overall analysis Construct a recursive “edge-sensitive” (1/r)- cutting  for T. 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 ).

38 Specialization: Union of fat triangles Input: T = {T 1, …, T n } a collection of n  -fat triangles in the plane. Construct a (1/r)- cutting  for T. Number of cells in the cutting:  O(r 2 ). Each cell  meets at most n/r triangles edges of T. Fix a cell  of . Classify each triangle T  T as: W-triangle in , if  meets at most two edges of T. T-triangle in , otherwise. T behaves as a half- plane or a wedge inside . T behaves as a triangle inside .

39 The classification of the vertices of the union Each vertex v of the union that appears in  is classified as: WW – if the two triangles that are incident to v are W-tetrahedra in . WT – if one of these triangles is a W-triangle and the other is a T-triangle in . TT - if both of these triangles are T-triangles in .  u v w

40 Bounding the number of intersection vertices of the union WW vertices Easy – reduce to the case of  -fat wedges. WT, TT vertices More involved. In particular: WT vertices Obtain a nearly-linear bound. Apply the linear bound of [Efrat, Rote, Sharir 1994]. Use a non-trivial variant of the construction.

41 T-triangles are scarce  T Only a single triangle  can meet all three edges of T. On average, each cell  meets at most  n/r 2 triangle edges of T-triangles.

42 The recursive scheme Construct a (1/r)- cutting  for T. Number of cells in the cutting:  O(r 2 ). Each cell  meets at most 1.n/r W-triangles edges of T. 2.  n/r 2 T-triangles edges of T. Bound WW and WT vertices before applying a new recursive step. Bound TT vertices by brute-force at the bottom of the recursion. U(n) = O*(n) + O(r 2 )  U(n/r 2 ) Solution : U(n) = O*(n). Number of vertices on the union boundary.

43 A single cell in geometric arrangements

44 A single cell in 2D arrangements Arrangement of lines: Complexity of arrangement: O(n 2 ). Complexity of a single cell: O(n). Arrangement of segments/triangles: Complexity of arrangement: O(n 2 ). Complexity of a single cell: O(n) ? Actual bound:  (n  (n)) [Guibas et al. 1989] C The inverse Ackermann function.

45 Previous results 2D arrangements: n Jordan arcs, each pair of arcs intersect in at most s point. Single cell complexity: O( s+2 (n))  O(n) [Guibas et al. 1989]. k convex polygons with n edges in total. Single cell complexity: Θ(n  (k)) [Aronov & Sharir 1997]. 3D arrangements: A set T of n triangles. The complexity of all non-convex cells in A(T) : O(n 7/3 log n) [Aronov & Sharir 1990]. n low degree algebraic surface patches. Single cell complexity: O*(n 2 ) [Halperin & Sharir 1995]. Many components Curved simply-shaped regions Some constant. Segments: s=1.

46 Previous results d- dimensional arrangements: n (d-1)- simplices. Single cell complexity: O(n d-1 log n) [Aronov & Sharir 1994]. n low degree algebraic surface patches. Generalizing the bound of [Halperin & Sharir 1995]. Single cell complexity: O*(n d-1 ) [ Basu 2003]. All bounds are almost tight in the worst case. The case of k convex polyhedra with n facets in R 3 : Use [Aronov & Sharir 1994]: O(n 2 log n). This bound does not depend on k. Conjecture [Aronov, Sharir, Tagansky 1997] : The actual upper bound is close to O(nk).

47 Lower bounds for the unbounded cell in 3D Ω(nk) vertices Ω(k 2 ) vertices Can be modified to Ω(nk  (k)) vertices

48 Our result The combinatorial complexity of a single cell of A(  ) is O(nk 1+  ),   > 0. We use a variant of the technique of [Halperin & Sharir 1995]. We present a deterministic algorithm that constructs a single cell in O(nk 1+  log 3 n) time,   > 0. The bound depends on the number k of polyhedra Crucial: The input regions are of constant description complexity

49 Classification of the intersection vertices Outer vertex: The intersection of an edge of a polyhedron with a facet of another polyhedron. Overall number: O(nk). Inner vertex: The intersection of three facets of three distinct polyhedra. Overall number: O(nk 2 ). Reduce the problem to: How many inner vertices appear on the boundary of a single cell? u

50 Analysis: Exposed convex chains Not meeting any polyhedra  After the removal of P’: 4 steps  Classify each vertex v by: How long can we freely go from v when alternating out-of/into the unbounded cell. 1 step

51 Analysis: Continue We trace this way Exposed convex chains. Number of steps = length of the chain V (j) (  ) – the number of inner vertices of the unbounded cell of A(  ) with  j steps. V (0) (  ) bounds the overall number of inner vertices of the unbounded cell. 5 steps  

52 The overall complexity of exposed chains Exposed chains of length  4 Use recurrence: V (j) (  )  V (j+1) (  ) Exposed chains of length 4 or 5 Lemma: The number of vertices on exposed chains of length  5 is O(nk). The number of vertices on exposed closed chains (of length 4) is O(nk). Multiply by O(k  ). This is the only interesting case. 

53 Solving the recurrence V (j) (  ) = O(nk 1+  ),   > 0, 0  j  4 The combinatorial complexity of a single cell of A(  ) is O(nk 1+  ),   > 0.

54 Thanks!

55 Exposed chains of length  5 M=F_1  P_2  ’=M  P’  =M  P_3  ’’ ’’

56 Motivation: Translational motion planning Input: Robot R, a set A = {A 1, …, A k } of k disjoint obstacles. The robot and the obstacles are (not necessarily convex) polyhedra in 3-space. The free space The set of all legal placements of R, while translating R in 3-space. R does not intersect any of the obstacles in A. The workspace. collision.

57 The configuration space The robot R is mapped to a point. Each obstacle A i is mapped to the set: P i = { (x,y,z) : R(x,y,z)  A i   } = A i  (-R(0,0,0)) A point p in P i corresponds to an illegal placement of R and vice versa. The forbidden placements of R. The Minkowski sum. The expanded obstacle. reference point.

58 The free space The free space is

59 Union of convex polyhedra Input: P = {P 1, …, P k } a collection of k convex polyhedra in 3-space with n facets in total ( k ≤ n ). Combinatorial problem What is the maximal number of vertices/edges/faces that form the boundary of the union of the polyhedra in P ? Trivial bound: O(n 3 ) (tight!). It is sufficient to bound the number of intersection vertices.

60 Union of convex polyhedra General goal: Obtaining (natural) special cases where the union has subcubic/nearly-quadratic complexity. Computational problem An algorithm that constructs the union? Not efficient when the complexity of the whole union is high (cubic).

61 Restriction: A single component of the free space A single component of The subset of all placements reachable from a given initial free placement of R via a collision-free motion.

62 Restatement: A single component in the complement of the union Input:  = {P 1, …, P k } a collection of k convex polyhedra in 3-space with n facets in total. The problem: What is the maximal number of vertices/edges/faces that form the boundary of a single component of ? It is sufficient to bound the number of intersection vertice. Minkowski sum of a convex obstacle with a convex part of –R. A single cell of A(  ).

63 Single (bounded) cell in 2D


Download ppt "Geometric Arrangements: Substructures and Algorithms Esther Ezra Advisor: Micha Sharir."

Similar presentations


Ads by Google