Presentation is loading. Please wait.

Presentation is loading. Please wait.

A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003.

Similar presentations


Presentation on theme: "A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003."— Presentation transcript:

1 A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003

2 Outline Introduction Preliminaries Approximation Algorithm Conclusion

3 1.Introduction: Projective clustering Given a set S of n objects in R d and two integers k < n and q  d, find k q-dimensional flats h 1,...,h k and partition S into k subsets S 1,...,S k so that is minimized. The k-line-center problem is the projective clustering problem for d =2 and q = 1. Partition S into k clusters and each cluster S i is projected onto a line so that the maximum distance between a point p and its projection p * is minimized. 

4 1.Introduction:This paper 2-line-center Given a set S of n points in R 2, cover S by two strips so that th maximum width of a strip is minimized Projective clustering has recently received attention as a tool for creating more efficient nearest neighbor structures, as searching amid high dimensional point set is becoming increasingly important. 

5 1.Introduction: Previous Work 2-line: near-quadratic running time for exact version. 1-line: width problem  (nlogn) for d =2 (1+  )Approximation: General: computing k projective clusters Whether a set of n points in the plane can be covered by k lines is NP-Complete  Projective clustering is NP-Complete  Approximating the minimum width within a constant factor is NP-Complete.  

6 1.Introduction: This result Let w * denote the minimum value so that S can be covered by two strips of width at most w*. This paper present an algorithm that computes, for any  >0, a cover of S by two strips of width at most (1+  ) w *, in time Strategy of this paper: first presenting a 6-approximation algorithm then derive a (1+  )-approximation algorithm

7 2.Preliminaries Notations Strip  : the region lying between two parallel lines l 1 and l 2 width of  : distance between l 1 and l 2 direction of  : direction of l 1 strip cover  of S: two strips that each point of S lies in one of the strips. For any points p,q, l pq : the line passing through p, q  (p,q, r): if r  l pq, is the same as l pq  (p,q; w): the strip having lpq as the median line of width 2w.     p q r  (p,q, r) l pq

8 2.Preliminaries Notations Optimal cover:  * = {  1 *,  2 * } of S, its width w * S i * = S   i * Anchor pair (p,q) of  : if d(p,q)  diam(S   )         p q    S   diam(S   )

9 2.Preliminaries Proof let  be the diameter of S *  : the smallest rectangle containing S *, the length of  is L, the width of  is w. We choose r  S * to be the point farthest away from l pq. Since r , d(r,l pq )  3w. Moreover S * =S   *   (p,q,r), and the lemma follows             ’: parallel to l pq, thinnest strip contains , its width w’.

10 3. Approximation Algorithm Two phases phase 1: computes a cover  of S by two strips of width at most 6w * phase 2: Use  to compute a new cover by two strips of width at most (1+  )w*          

11 3.16-approximation cover Suppose we have an anchor pair (p,q) of a strip in  * How to obtain such a pair will be described in 3.2 WLOG, let (p,q) be an anchor pair of  1 * By Lemma 2.1 there exist r  S so that width(  (p,q,r))  6w * and (S\  (p,q,r))   2 * Perform a binary search to find that r !! Then compute a strip of width at most 2w * that contains the rest points, i.e. S\  (p,q,r)          

12 Suppose we have an anchor pair (p,q) of a strip in  * f(w) Proof: 3.16-approximation cover           w f(w) 2w2wg(w) wiwi w i+1 wnwn

13 f(w) Binary search over w Proof: 3.16-approximation cover           w f(w) 2w2wg(w) wiwi w i+1 wnwn

14 Compute a family F of at most 11 pairs of points that contains an anchor pair. compute the diameter  of S, and let (p,q) be a diametral pair in S. Let D p, D q be the disks of radius  /2, centered at p, respectively q. 3.2Computing an anchor pair          

15 Case 1 If S\(D p  D q )  , let r  S\(D p  D q ). Return F ={(p,q),(q,r),(p,r)} Correctness: At least two points among p,q, and r must be in the same strip subset. Since d(p,q) =  and d(p,r), d(q,r)   /2. all these 3 are greater than diam(S)/2, and is also greater than any diam/2 of any subset. At least one of these 3 pairs must be an anchor pair. (of an optimal strip) (Recall the definition of anchor pairs) 3.2Computing an anchor pair            

16 Case 2 else, S\(D p  D q ) =  Let P =S  D p and Q = S  D q. conv(P) and conv(Q) be their convex hulls, these two hulls do not intersect Compute l 1 and l 2, the inner common tangent lines of conv(P) and conv(Q) let p 1  P, q 1  Q be the points lying on l 1. Respectively p 2, q 2 let p 3, p 4 be a diametral pair in P, and q 3,q 4 be a diametral pair in Q Return F = { (p,q), (p 3,p 4 ), (q 3,q 4 ), (p,q 1 ), (p,q 2 ), (p,q 3 ), (p,q 4 ), (q, p 1 ), (q,p 2 ), (q,p 3 ), (q,p 4 )} 3.2Computing an anchor pair             P, Q are points

17 Correctness of Case 2 Suppose on the contrary that no pair of F is an anchor pair. This implies p,q is neither an anchor pair of  1 * nor of  2 *, so S 12 * contains either p or q but not both. WLOG, let p  S 12 * and q  S 21 *. Since d(p,q i ), d(q,p i )   /2 (different disk), p i  S 12 and q i  S 21 *, for i = 1,2,3,4 S 12 *  Q  . because otherwise S 12 *  P, and (p 3,p 4 ) is an anchor pair, a contradiction. Similarly S 21 *  P   Therefore there exist point p’  S 12 *  Q, and q’  S 21 *  P   3.2Computing an anchor pair             P, Q are points S 12 * S 21 *

18 Correctness of Case 2  1 * |  2 * p 1 ~p 4 |q 1 ~q 4 p |q p’ |q’ x let s be the intersection point of l 1 and l 2. Since strip q 1, q 2, and q’, it also contains the triangle  q 1 q 2 s. Hence, p’   q 1 q 2 s But p’ lies in the wedge. therefore  p 1 p 2 p’ intersects the segment q 1 q 2 (green).Let x be a point on this segment. Since  1 * contains p 1 p 2 p’, it also contains x. But q 1 q 2 do not lie inside  1 *,so  1 * separates q 1 and q 2.  2 * separates p 1 and p 2. 3.2Computing an anchor pair             P, Q are points x

19 Strategy We have a 6-approximation cover. Within this region, we try to “guess” the optimal  *. We guess its direction(  ), displacement(by z) and its width w * (by w) The result of our guess is  ’, an (1+  )-approximation of  *, and totally contains  *. For the points not covered by  ’, we run the known PTAS width algorithm to find the second strip covering them. 3.3(1+  )-Approximation              z 3w’ 4d(p,q)

20 Detail R as shown. Z, , and W Let  = C , where C is a constant to be specified later. Z: grid of “positions” along the boundary, so that there are grid points on each side of R  : grid of “directions”. W: grid of the value of “width” 3.3(1+  )-APX                 -- 2w~ w~/6 (ε/2) . (w~/6)

21 Existence of z’,  ’, w’ Assuming we know z’,  ’, we can perform binary search on w’.(By computing the width of the “rest”) Since we don’t know z’,  ’, we try all possible pairs of them. 3.3(1+  )-APX              

22 Proof of correctness Can we find by guessing? Also by Lemma 2.1, we know So R is “big enough”. The remaining question is whether the grids are “dense enough”? 1.First we prove there exists a “good”  2. Then we prove there exists a good z. 3.3(1+  )-APX              s

23 Proof of Lemma 3.6 2. There is a good z (together with the previous ,) such that there exists a strip  such that S*  , width(  )  (1+  /2)w * 3.3(1+  )-APX              s

24 Proof of Lemma 3.6 1.There is a good , such that there exists a strip  such that S*  , width(  )  (1+  /4)w * If ½  (w~) /d(p,q), assuming   2/3, If ½ >(w~) /d(p,q) , which implies  <30° 3.3(1+  )-APX              s

25 Conclusion We have an simple and efficient 2-line-center approximation algorithm. k-line-center for fixed k, to higher dimensions hyper-strips


Download ppt "A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003."

Similar presentations


Ads by Google