240 likes | 367 Views
On the Union of Fat Triangles Esther Ezra. Joint Work with Boris Aronov and Micha Sharir. Union of simply-shaped planar regions. S = {S 1 , …, S n } a collection of n simply-shaped planar regions. The union of S consists of all points in 2 that
E N D
On the Union of Fat TrianglesEstherEzra Joint Work with Boris Aronov and Micha Sharir
Union of simply-shaped planar regions S = {S1, …, Sn} a collection of nsimply-shaped planar regions. The union of Sconsists of all points in 2 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
The union complexity Combinatorial complexity of the union: The maximal number of vertices and edges that form the boundary of the union of the regions inS. Problem: Bound this complexity. Trivial bound:O(n2) It is sufficient to bound #vertices: Each pair of regions meets in O(1) points. Bound is tight?
Previous results: Fat objects Piecewise linear objects: n -fat wedges. Union complexity: O(n) . [Efrat et al. 1993] n -fat triangles. Number of holes in the union: O(n) . Union complexity: O(n log log n) . [Matousek et al. 1994] Worst case lower bound: (n (n) ) . Bound depends on Angle at apex Bound depends on Each of the angles
Previous results: Fat objects Fat curved objects (simply-shaped) n convex -fat objects. Union complexity: O*(n)[Efrat, Sharir 2000] Locally -fat objects: Union complexity: O(n log n) [De Berg 2010] r r’ r/r’ , and 1. O(n1+), for any >0. O area(D O) area(D) 0 < 1 D
Previous results: Fat objects Summary: Union complexity is ~ “one order of magnitude” smaller than the worse-case (n2) bound! Back to -fat triangles: The “flagship” problem: simple and natural. Previous results: Number of holes in the union: O(n) . Union complexity: O(n log log n) . Worst case lower bound: (n (n) ) Each of the angles Bounds depends on
Our results Union complexity of n -fat triangles : O(n 2(n) log* n) . Follow-up study [with Mark De Berg]: Union complexity of n-fat triangles : O(n log* n) . Union complexity of n locally -fat objects: n 2 O(log* n ) . Bound depends on O D
Consequences to geometric set-cover Input: P - points in the plane, T – a set of-fat triangles. A set-cover for (P,T) is a subset S T that covers all the points in P. Goal: find smallest set-cover. Problem is NP-hard to solve. Approximation factor (for the abstract setting): O(log |P|) .
Set-cover Vs. Union Theorem [Aronov Ezra, Sharir 2009] [Clarkson Varadarajan 2007]: The complexity of the union is O(n (n)) Approximation factor, achieved in polynomial time: O(log (OPT)) . Fat triangles: Previous bound on union complexity: O(n log log n) Approximation factor : O(log log log(OPT)). New bound on union complexity: O(n 2(n) log* n) New approximation factor : O(log log*(OPT)) . () is a slowly growing function. OPT = size of the smallest set-cover.
Union complexity: Analysis Main idea: Reduce triangles to wedges • Decompose plane into trapezoidal cells . • Show that in each cell most of the triangles appearas -fat wedges. • Process the remaining (survival) triangles in recursion.At the bottom of the recursion we are left with only a fewof them. Apply the O(n) bound on their union.
Ingredient I: #holes in the union Number of holes in the union is only O(n) . [Matousek et al. 1994] Expand to obtain fat triangles (n2) holes O(n) holes
Ingredient II: The Combination Lemma We have two sets of triangles (not necessarily fat): T1 – Blue collection T2 – Red collection U(T1 ) , U(T2 )are given. What is the joint complexity U(T1 T2)? Boundary complexity of the union: # vertices.
Ingredient II: The Combination Lemma Combination Lemma [Edelsbrunner etal. 1990]: T1, T2 two sets with total of n triangles. Then: U(T1 T2) U(T1 ) + U(T2) + O( n + H(T1 T2) ) Remarks: • The lemma is fairly general, and does not assume fatness . • The coefficients of U(T1 ) , U(T2) are precisely 1 . # holes in the joint union. Crucial!
Curse and recurs T – a set of n-fat triangles . Derive an O(n log n) bound for T : Use a divide and conquer scheme: • Partition T into two equal-size subsets T1, T2 , |T1| = |T2| = n/2. • Use Combination Lemma + linear number of holes:U(T1 T2) U(T1 ) + U(T2) + O(n) f(n) 2 f(n/2) + O(n) Solution: f(n) = O(n log n) Bottom of recursion: n=1. maximum union complexity ofn-fat triangles
Our recurrence Goal: Obtain a recurrence of the form: f(n) (n / log n) f( log n) + O(n 2 (n) ) Solution:Use induction… f(n) = A n 2 (n) log* n, A > 0 constant. Strategy:Use a D&C mechanism in order to partition the plane. maximum union complexity ofn-fat triangles
f(n) (n / log n) f( log n) + O(n 2 (n) ) Lemma: Fix a parameter r := n / log n . There is a subdivision of the plane into ~ r openly disjoint trapezoidal subcells , s.t., each meets at mostn/r = log n triangles edges . Main property: Number of cells is small! (due to fatness) Easy to obtain O(r 2).
f(n) (n / log n) f( log n) + O(n 2 (n) ) Goals: • Reduce triangles to wedges in each cell , and apply the linear bound on their complexity. • Bound union complexity of triangles recursively(show that the number of survival triangles is small). • Combine union complexity of wedges and triangles by the Combination Lemma and the fact that #holes is linear.
How to obtain the subdivision?Reduce to semi-canonical triangles Reduce the problem to semi-canonical triangles: “almost isosceles” right triangles . Theorem [Matousek et al. 1994]: Let T be a set of n semi-canonical triangles, all of which lie on a common horizontal line. Then: U(T) = O( n 2(n) ) Hypotenuse orientation is 1351 degrees ( ) is the inverse Ackermann function
A tree partitioning for T At most n/2 triangles above l Use an interval tree on the y-projections of the triangles in T. Obtain at most k = O(log n) subfamilies T1, …, Tk , T = i=1k Ti , For each subfamily Tiwe have: U(Ti ) O( ni 2(n) ) , ni = |Ti | . T2 l T1 T2 At most n/2 triangles below l The “lower” and the “upper” blue sets are pairwise disjoint.
The key for reducing the number of cells Build decomposition only with the exterior portions Lemma: Overall number of segments:O( n2(n) ) . Overall number of intersections: O( n2(n) log n).[ much smaller than O(n2) ] The key to reducing the number of cells Number of intersections among the full triangles
Wrapping up: the actual recurrence Actual choose of r :n2(n) / log n We have a decomposition into O(r) cells , each of which meets n 2(n)/ r (boundary of) triangles. Number of “wedge triangles” in : O(n 2(n)/ r) = O(log n) . Their union complexity in : O(log n) . Their overall union complexity, over all : O(n 2(n) ) . Wedge-triangles
Wrapping up : the actual recurrence Number of “real” triangles in : O(n 2(n)/ r) = O(log n) . BUT there is only a single cell where a triangle can survive! So on average, there are only O(log n / 2(n) ) such triangles. Their union complexity in : f(log n / 2(n) ) . Real triangle
Wrapping up : the actual recurrence By the Combination Lemma, total union complexity in : O(log n) + f(log n / 2(n) ) + O(log n) Summing over all : f(n) (n 2(n)/ log n) f( log n / 2(n)) + O(n 2 (n) ) Solution: f(n) = A n 2 (n) log* n, A > 0 constant. Wedge triangles Real triangles # holes