Presentation is loading. Please wait.

Presentation is loading. Please wait.

Substructures in Geometric Arrangements and  -nets Esther Ezra Duke University.

Similar presentations


Presentation on theme: "Substructures in Geometric Arrangements and  -nets Esther Ezra Duke University."— Presentation transcript:

1 Substructures in Geometric Arrangements and  -nets Esther Ezra Duke University

2 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

3 Motivation: Motion planning Input Robot R, a set A = {A 1, …, A n } of n disjoint obstacles. The robot and the obstacles are d-dimensional bodies. The robot moves around the obstacles. Goal: Construct the free space The set of all legal placements of R, while translating R in d-space. R does not intersect any of the obstacles in A The workspace collision No rotations

4 The configuration space The robot R is mapped to a point. Each obstacle A i is mapped to the set: P i = { x   d : R(x)  A i   } A point p in P i corresponds to an illegal placement of R and vice versa. The forbidden placements of R The expanded obstacle reference point

5 The free space The free space is the complement of  1  i  n P i

6 The arrangement A(S) is the subdivision of space induced by S. The combinatorial complexity of A(S) : The maximal number of vertices/edges/faces of A(S) :  (n d ) The Union as a substructure in arrangements Union is a substructure of the arrangement

7 The union 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!).

8 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 (simple-shaped) 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

9 Previous results in 3D: Fat Objects Congruent cubes n arbitrarily aligned congruent cubes. Union complexity: O*(n 2 ) [Pach, Safruti, Sharir 2003]. 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

10 Our results: New union bounds. Fat Tetrahedra [Ezra, Sharir 2007]: n  -fat tetrahedra in  3, of arbitrary sizes: O*(n 2 ). n arbitrary side-length cubes: O*(n 2 ). Bound is nearly optimal! Settling a Conjecture of [Pach, Safruti, Sharir, 2003] In particular: Obtain a simpler proof for congruent cubes. A cube can be decomposed into O(1) fat tetrahedra.  

11 Our results: New union bounds. Infinite cylinders [Ezra 2008]: n infinite cylinders in  3 of arbitrary radii: O*(n 2 ). Bound is nearly optimal! Settling a Conjecture of [Agarwal, Sharir 2000]. In particular: Obtain a simpler proof for congruent infinite cylinders. It is crucial that the cylinders are infinite. Otherwise, the union complexity is  (n 3 ).

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

13 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 )

14 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].

15 Small-size  -nets for Axis- Parallel Rectangles and Boxes

16 Range Spaces Range space (X, R) : X – Ground set. R – Ranges: Subsets of X. |R|  2 |X| Abstract form: Hypergraphs. X – vertices. R – hyperedges.

17 specification: X =  d, R = set of simply-shaped regions in  d. X – Points on the real line. R – Intervals. X – Points on the plane. R – halfplanes. X – Points on the plane. R – Disks. Geometric Range Spaces X finite: Discrete model, X infinite: Continuous model

18 The hitting-set problem A hitting set for (X, R) is a subset H  X, s.t., for any Q  R, Q  H  . Goal: Find smallest hitting set. A fundamental problem with various applications…

19 Art-gallery Application Useful application: art-gallery Input: Polygon P. Goal: Find minimum-size set of guards (points in P) that “see” the entire P. P g q q’ g, q are visible. g, q’ are invisible Visibility polygon P q g q’Vis(g)

20 Art-gallery Application The actual goal is to cover P with a minimum number of visibility polygons! This is the so-called set-cover problem. Observation: q lies inside Vis(g) iff g lies inside Vis(q) ! Hitting-set instance: X – points in a polygonal region P. R – all visibility polygons in P. P q g P q g Vis(g) Vis(q)

21 Input: C – set of clients c. A - locations of antennas a, each of which with a unit sensing radius. Each antenna serves the clients within its sensing distance Goal: Find minimum-size set of antennas that serve all clients. The actual goal is to find a smallest set of disks (centered in A) that covers C. Sensor networking application c a

22 Hitting-set instance: X – antennas locations R – D ( c,1): unit disks with client-centers. Observation: a covers c iff a is inside D ( c,1) c a

23 Approximation for hitting sets Finding a hitting set of smallest size is NP-hard, even for geometric range spaces! Abstract range spaces: Greedy algorithm. Approximation factor: O(1 + log |X|) Best known approximation achieved in polynomial time! Geometric range spaces: Achieve improved approximation factor! Approximation factor: O(1 + log OPT), OPT = size of the smallest hitting set. Sometimes, the approximation factor is even smaller! This is achieved via  -nets

24  -nets for range spaces Given: A range space (X, R), assume X is finite, |X| = n. A parameter 0 <  < 1, An  -net for (X, R) is a subset N  X that hits every range Q  R, with |Q  X|   n. N is a hitting set for all the ``heavy'' ranges. Example: Points and intervals on the real line: |N| = 1/ .  n n Bound does not depend on n.

25 Approximation for geometric hitting sets The Bronimann-Goodrich technique / LP-relaxation If (X, R) admits an  -net of size f(1/  ), then there exists a polynomial-time approximation algorithm that reports a hitting set of size O(f(OPT)). Idea: Assign weights on X s.t each range Q  R becomes heavy. Construct an  -net for the weighed range space. Each range is hit by the  -net. Small-size  -nets imply small approximation factors!

26 An upper bound for the  -net size The  -net theorem [Haussler-Welzl, 87]: If the ranges are simply-shaped regions, then, for any  > 0, a random sample of size O(1/  log (1/  )) is an  -net, with constant probability. Remark: In fact, it is sufficient to assume that the number of ranges is only polynomial in n. Bound does not depend on n.

27 Is the bound optimal? Theorem [Komlos, Pach, Woeginger 92]: The bound is tight! The construction: Artificial on abstract hypergraphs (non-geometric!). No lower bound better than  (1/  ) is known in geometry. What is the actual bound? O(1/  ) ? Goal: Obtain smaller bounds for geometric range spaces. Ideally O(1/  ), but anything better than O(1/  log (1/  )) is `exciting‘ ! Achieved by points and intervals on the real line.

28 Previous results Points and halfspaces in 2D, 3D. O(1/  ) [Matousek 92], [Pyrga, Ray 08], [Har-Peled et al. 08] Points and disks, or pseudo-disks in 2D: O(1/  ) [Matousek, Seidel, Welzl 90], [Pyrga, Ray 08]. Pseudo-disks

29 Our results [Aronov, Ezra, Sharir] Points and axis-parallel rectangles in the plane.  -net size is O(1/  log log (1/  )). Points and axis-parallel boxes in 3-space.  -net size is O(1/  log log (1/  )). Points and  -fat triangles in the plane.  -net size is O(1/  log log (1/  )). Points uniformly distributed over the unit-cube, and axis-parallel boxes in d-space.  -net size is O(1/  log log (1/  )). Each of the angles  

30 Improved approximation factors for geometric hitting sets Ranges previous bound new bound Axis-parallel rectangles log OPT log log OPT Axis-parallel 3-boxes log OPT log log OPT  -fat triangles log OPT log log OPT Axis-parallel d-boxes log OPT log log OPT Uniformly distributed points in [0,1] d.

31 Main idea for axis parallel rectangles : Use two-level sampling Primary sampling step: Obtain an initial sample S of ~ 1/  points of X. Each rectangle Q with Q  S = , contains at most O(  n log (1/  )) points of X. Second sampling step (repair step): In each heavy rectangle Q  R, with Q  S =  (“bad”), sample additional points to guarantee that Q is stabbed by the net. According to the  -net theorem “bad” = contains at least  n points S Q

32 Main idea repair step: On average, each heavy rectangle Q must satisfy Q  S  . The number of “bad” rectangles is small. It is sufficient to consider a set M of representative rectangles, instead of R. M is defined over the points of S. | M | = f(1/  ) (does not depend on n). and so does #points sampled at the repair step. Q M S

33 The  -net construction Input: X - a set of n points. Parameters: r := 1/ . Primary sample: Produce a random sample S  X, s.t., each point is chosen with probability r/n. S is part of the  -net. E{|S|} = r. Generate the set M of all maximal S-empty rectangles, with respect to S. The representative rectangles

34 The set of maximal S-empty rectangles Each rectangle M  M is defined by  4 points of S, and M  S = . M is a representative set for R: For each input heavy rectangle Q, with Q  S = , expand Q until each of its sides touches a point of S or continues to . Apply repair-step on M. Q M Otherwise, done! S

35 The repair step Consider a heavy rectangle M, with |M  X | = t  n/r, 1  t  log r. Second sampling step: Construct 1/ t -net N M inside M, by sampling O(t log t ) points in M. According to the  -net theorem, each input (empty) rectangle Q  R, Q  M, with |Q|  n/r, must be stabbed by N M ! According to the  -net theorem Q M The excess of M The “universe” size is now t  n/r

36 The final  -net Output: The union of S and  M  M N M. What is the expected size of the  -net ? E{|S|} + E{  t  1 t log t | M t | } Exponential Decay Lemma: [Chazelle, Friedman 90], [Agarwal Matousek, Schwarzkopf. 98] E{ | M  t | } = O( 2 -t E{ | M | }), The number of bad rectangles decreases exponentially! M t = # rectangles in M with excess t Expected number of maximal empty rectangles

37 An improved  -net Theorem: E{ |M| } = O(r log r) The expected  -net size is O(1/  log (1/  )). Observation: Choose a slightly larger primary sample: |S| = O(r) |S| = O(r log log r) and repair only rectangles M with excess t  c  log log r. Using the Exponential Decay Lemma: E{ | M  t | } = o(r). The number of bad rectangles is only sublinear in r ! No improvement yet… |M  X |  n/r Recall r = 1/ 

38 Quadratic Lower bound construction A staircase construction: Each point in the upper staircase is matched with each point in the lower staircase.  (r 2 ) empty rectangles. We can prune away most of these rectangles and remain only with O(r log r) rectangles.

39 An O(s log s) bound for | M | Key observation: Consider a vertical line l, and all points to its left. Claim: The number of maximal S-empty rectangles, anchored at l is only linear. Next step: Use a tree decomposition built on top of X in order to obtain the O(r log r) bound. vv Q Q’ l1l1 l3l3 l‘2l‘2 l2l2 l ‘‘ 3 l‘3l‘3 l3l3 l

40 Efficient sensor placement in a polygonal domain

41 Problem statement Input: A polygon P of unit area. Goal: Find minimum-size set of sensors (points in P) that monitor P.  = size of the smallest set of sensors. A polynomial-time approximation algorithm: Unknown! P g Vis(g) Under the continuous model.

42 Our result: [Agarwal, Ezra, Ganjugunte] For any 0    1 : Obtain a polynomial time approximation algorithm to monitor (1-  ) of the polygon! The approximation factor: O(log (  /  )) Use a landmark-based approach: Randomly sample points inside P, and cover only them. If the sample is sufficiently large, it is guaranteed, with high probability, that (1-  ) of the polygon is covered! P g

43 An  -net application Define the range space (X, R) : X = P R = {P \  i=1,…  Vis(x i ) | x 1, …, x   P} Observation: An  -net N for (X, R) hits all ranges of R with area  , and misses all ranges of area  . If we manage to cover N with  visibility polygons, then their area  1 - . Complement of the union of each collection of  visibility polygons Thus the complement of this area is 1 -  ! The  - net is the landmark set.

44 Approximation algorithms for geometric hitting sets

45 hitting sets for (X,R) Input: Range space (X, R), m = |X|, n = |R|.  = size of the smallest hitting set. previous algorithms: Greedy: O*(nm  ) Bronimann-Goodrich: O*(m  + n  2 ) Running time can be improved to O*((n + m)  ) for both algorithms: Axis-parallel rectangles. Planar regions with near-linear union complexity.

46 Our result [Agarwal, Ezra, Sharir] Obtain a O*(log n) approximation in near-linear time, when the union complexity of R is near-linear. Applied in both discrete and continuous models. Specifically: Union complexity of R is O(n  (n)). Obtain an approximation factor of O(  (  ) log n) in (randomized expected) time O*(m + n).  (  ) is a slowly growing function. The running time is O*(n) for the continuous model

47 Our result: Axis-parallel rectangles Discrete model: Approximation factor O(log  log n) Running time: O*(m + n) Continuous model (axis-parallel boxed in d-space): Approximation factor O(log d-1  ) Running time: O(n log n) Fast implementation of the Bronimann-Goodrich algorithm: Approximation factor O(log  ) in any dimension d. Running time: O*(m + n +  d+1 ) Union complexity: quadratic

48 Improve our upper bound O(1/  log log (1/  )) for points and axis-parallel rectangles. Conservative goal: Obtain a weak  -net of size o(1/  log log (1/  )). Extend our bound to points and axis-parallel boxes in d  4. Best known upper bound: O(1/  log (1/  )). Dual range spaces for rectangles and points. Best known upper bound: O(1/  log (1/  )). Can improve to O(1/  log log (1/  )) ? Open problems p The points of the  -net are not necessarily chosen from X.

49 Thank you

50 Sensor networking: Extensions Sensor networking within a polygonal domain An art-gallery problem can be interpreted as a sensor-networking problem within a polygonal domain and infinite sensing radius. Each guard is a sensor. P g Vis(g)

51 Sensor networking: Extensions Unit sensing radius Each range is the intersection of a visibility polygon and a unit disk (centered at the sensor). Hitting-set instance: X – points in a polygonal region P. R – intersections of each visibility polygon with a source in P and a unit disk. P Vis(g) g

52 Sensor networking: Extensions Camera sensors Each range is the intersection of a visibility polygon and a wedge (with an apex at the sensor). Hitting-set instance: X – points in a polygonal region P. R – intersections of each visibility polygon with a source in P and a wedge. P Vis(g) g

53 The  -net construction Input: X - a set of n points. Parameters: r := 1/ , s  r (s is slightly larger than r). Primary sample: Produce a random sample S  X, s.t., each point is chosen with probability s/n. S is part of the  -net. E{|S|} = s. Generate the set M of all maximal S-empty rectangles, with respect to S. The representative rectangles

54 An improved  -net Theorem: E{ |M| } = O(s log s) The expected  -net size is O(1/  log (1/  )). Idea: Choose s = O(r log log r) for the primary sample, and repair only rectangles M with excess t  c  log log r. Observation: Using the Exponential Decay Lemma: E{ | M  t | } = O( 2 -t E{ | M | }). E{ | M  t | } = O(s log s / polylog s) = o(s) = o(r). The number of bad rectangles is only sublinear in r ! No improvement yet… |M  X |  n/r Recall r = 1/ 

55 Bounding | M | The expected  -net size is thus: E{|S|} + E{ | M | }   t  1 t log t  2 -t Goal: Show that E{ | M | } is o(s log s). Upper bound: O(s 2 ). Each rectangle is determined by its two opposite corners. problem: The bound O(s 2 ) is bad for the analysis, and yields an  -net of size O(1/  2 ) ! Recall s  1/ 

56 Bounding the final  -net size The expected size of the final  -net is: E{|S|} + E{ | M | }   t  c loglog r t log t  2 -t = O(r log log r) + o(r) = O(r log log r) = O(1/  log log (1/  )). Note: Any bound on E{ |M| } of the form O(s polylog s) yields an  -net of that size. Extensions: Axis-parallel 3-boxes.  -fat triangles.

57 An O(s log s) bound for | M | Key observation: Consider a vertical line l, and all points to its left. Claim: The number of maximal S-empty rectangles, anchored at l is only linear. Handling a query rectangle Q: One of the halves Q’of Q contains at least n/(2r) points. Q’ is anchored at l. Expand Q’ on “heavier” side of l. l l Q Q’

58 Tree decomposition Build balanced binary tree T on X, sorted by x-coordinate Stop expansion of T when nodes have  n/r points. T has O(log r) = O(log s) levels. At each level: #maximal S-empty anchored rectangles: O(s) Overall (over all levels): O(s log s). l1l1 l3l3 l‘2l‘2 l2l2 l ‘‘ 3 l‘3l‘3 l3l3 vv Each node is a vertical strip

59 Query rectangle Q For an input rectangle Q with  n/r points: Find the first (highest) node of T whose bounding line l meets Q. Expand Q within the “heavier” strip  v bounded by l. The maximal S-empty anchored rectangles comprise the representative set for R. vv Q Q’ l1l1 l3l3 l‘2l‘2 l2l2 l ‘‘ 3 l‘3l‘3 l3l3

60 Axis-parallel boxes in 3-space: E{ |M| } = O(s log 3 s)  -fat triangles in the plane: E{ |M| } = O(s log 2 s) Axis-parallel boxes in d-space, with points uniformly distributed over the unit-cube: E{ |M| } = O(s log d-1 s) The expected size of the  -net is O(1/  log log (1/  )). Extensions Number of maximal empty anchored orthants is only linear! No need to decompose space.

61 Dual (Geometric) Range Spaces Flip roles of X and R, and obtain (R, X*). R = set of regions in  d, X* = {R p | p  X}, R p = {r | r  R, r contains p}. R – Intervals. X* – Subsets of intervals containing a common point in  1. R – Disks. X – Subsets of Disks containing a common point in  2 p p

62 The set-cover problem Primal: A hitting set for (X, R) is a subset H  X, s.t., for any Q  R, Q  H  . Dual: A set cover for (X, R) is a subset S  R, s.t., any x  X is covered by S. A set cover for (X, R) is a hitting set for (R, X*) Finding a set cover of smallest size is NP-hard! (even for geometric range spaces). Achieve improved approximation factors via  -nets (using the Bronimann-Goodrich technique / LP-relaxation).

63  -nets for dual range spaces Useful for the set cover problem.  -net for (R, X*) is a subset N  R that covers all points at depth   |R|. An  -net is a set cover for all the deep points. Example: Intervals and points on the real line: |N| = 1/ . depth(p) = #ranges that cover p  X.  n n

64 Range space (R, X*), s.t., for each S  R, |S| = m, the union  S has (a small) complexity o(m log m) : o(1/  log (1/  )). [Clarkson, Varadarajan 07] Specifically: The complexity of the union is O(m  (m))  -net size is O(1/   (1/  )). Previous results  (  ) is a slowly growing function.

65 More about the Clarkson- Varadarajantechnique More about the Clarkson- Varadarajan technique Example: disks (or pseudo-disks) and points Input: A set S of m disks. Union complexity: O(m). [kedem et al. 86]  -net size is O(1/  ). Example: fat triangles and points Input: A set S of m  -fat triangles. Union complexity: O(m loglog m). [Matousek et al. 1994]  -net size is O(1/  log log (1/  )). Each of the angles  

66 Our results: Dual The complexity of the union is O(m  (m))  -net size is O(1/  log  (1/  )). Fat triangles: Union complexity: O(m loglog m)  -net size is O(1/  log log log (1/  )). Locally  -fat objects: Union complexity: O(m polylog m)  -net size is O(1/  log log (1/  )). And several other improved factors. O D area(D  O)    area(D) 0 <   1 Use an initial sample s  r and then the Exponential Decay Lemma.

67 Is the bound optimal? Theorem [Komlos, Pach, Woeginger 92]: The bound is tight! The construction: Artificial on abstract hypergraphs (non-geometric!). No lower bound better than  (1/  ) is known in geometry. What is the actual bound? O(1/  ) ? Goal: Obtain smaller bounds for geometric range spaces. Ideally O(1/  ), but anything better than O(1/  log (1/  )) is `exciting‘ ! Achieved by points and intervals on the real line.

68 Bounding the  -net size Exponential Decay Lemma: [Chazelle, Friedman 90], [Agarwal Matousek, Schwarzkopf. 98] E{ | M t | } = O( 2 -t E{ | M '| }), where: S' is a smaller random sample, each point chosen with probability s/(t  n). M t - all maximal S-empty rectangles M with t M  t. M ' - all maximal S'-empty rectangles.

69 Bounding the final  -net size A very useful tool: Exponential Decay Lemma: [Chazelle, Friedman 90], [Agarwal Matousek, Schwarzkopf. 98] E{ | M t | } = O( 2 -t E{ | M | }), where M t is all maximal S-empty rectangles M with t M  t. The number of heavy rectangles decreases exponentially!

70 A nearly-linear bound for | M | Fix a node v of T and its strip  v : X v = S   v, S v = S   v Lemma: The number of maximal S v -empty anchored rectangles in  v is O(S v ). At a fixed level i of T, overall number is O(s). Overall: O(s log r). vv Entry side


Download ppt "Substructures in Geometric Arrangements and  -nets Esther Ezra Duke University."

Similar presentations


Ads by Google