Presentation is loading. Please wait.

Presentation is loading. Please wait.

Www.cs.technion.ac.il/~reuven 1 New Developments in the Local Ratio Technique Reuven Bar-Yehuda www.cs.technion.ac.il/~reuven.

Similar presentations


Presentation on theme: "Www.cs.technion.ac.il/~reuven 1 New Developments in the Local Ratio Technique Reuven Bar-Yehuda www.cs.technion.ac.il/~reuven."— Presentation transcript:

1 www.cs.technion.ac.il/~reuven 1 New Developments in the Local Ratio Technique Reuven Bar-Yehuda www.cs.technion.ac.il/~reuven

2 www.cs.technion.ac.il/~reuven 2 General framework: Given a weight vector w. Minimize [Maximize] w·x Subject to:feasibility constraints F(x) x is an r-approximation if F(x) and w·x  r  w·x* [w·x  r  w·x* ] An algorithm is an r-approximation if for any w, F it returns an r-approximation

3 www.cs.technion.ac.il/~reuven 3 The minimum vertex cover problem Minimize w·x Subject to:x u + x v  1  e=(u,v)  E x  {0,1} |V|

4 www.cs.technion.ac.il/~reuven 4 15 Min 5x Bisli +8x Tea +12x Water +10x Bamba +20x Shampoo +15x Popcorn +6x Chocolate s.t. x Shampoo + x Water  1 5 8 12 20 6 10

5 www.cs.technion.ac.il/~reuven 5 Movie: 1 4 the price of 2

6 www.cs.technion.ac.il/~reuven 6 2-Approx VC(G,w) If G=  return  If  v  V w(v)=0 return {v}+GVC(G-E(v)-v, w) Let {u,v}  E and  = min {w(u), w(v)}.  if i  {u,v} 1 w 1 (i) = 0 else Notice:w 1 x  2 w 1 x for Good(x) VC(G, w-w 1 ) REC= VC(G, w 2 = w-w 1 ) Return REC Induction hyp is: w 2 REC  2 w 2 x so if Good(REC): w 1 REC  2 w 1 x we are done  

7 www.cs.technion.ac.il/~reuven 7 2-Approx VC (Bar-Yehuda Even 81) 1. For each edge {u,v} do: 2. Let  = min {w(u), w(v)}. 3. w(u)  w(u) - . 4. w(v)  w(v) - . 5. Return {v | w(v) = 0}.

8 www.cs.technion.ac.il/~reuven 8 The generalized vertex cover problem Minimize w·x Subject to:x u + x v + x e  1  e={u,v}  E x  {0,1} |V|+|E|

9 www.cs.technion.ac.il/~reuven 9 15 Min 5x Bisli +8x Tea +12x Water +10x Bamba +20x Shampoo +15x Popcorn +6x Chocolate +$4x WaterShampoo + s.t. x Shampoo + x Water + x WaterShampoo  1 5 8 12 20 6 10 $4 $1 $3 $1 $2 $1

10 www.cs.technion.ac.il/~reuven 10 2-Approx GVC(G,w) If E=  return  If  e  E w(e)=0 return {e}+GVC(G-e, w) If  v  V w(v)=0 return {v}+GVC(G-E(v), w) Let e={u,v}  E s.t  = min {w(u), w(v), w(e)}>0.  if x  {u,v,e} 1 w 1 (x) = 0 else Notice:w 1 x  2 w 1 x for Good(x) VC(G, w-w 1 ) REC= GVC(G, w 2 = w-w 1 ) Induction hyp is: w 2 REC  2 w 2 x so if Good(REC): w 1 REC  2 w 1 x we are done If REC-e is a cover thenREC=REC-e If REC-e is a cover thenREC=REC-e Return REC   

11 www.cs.technion.ac.il/~reuven 11 “2 integral for the price of 1 fractional”: The local ratio technique for rounding Let x be the the fractional solution Minimize w·x Subject to:x u + x v + x e  1  e=(u,v)  E x  [0,1] |V|+|E|

12 www.cs.technion.ac.il/~reuven 12 “d integral for the price of fractional”: 2-2/(Δ+1)-Approx GVC(G,w) “d integral for the price of ½(d+1) fractional”: 2-2/(Δ+1)-Approx GVC(G,w) If E=  return  If  e  E w(e)=0 return {e}+GVC(G-e, w) If  v  V w(v)=0 return {v}+GVC(G-E(v)-v, w) Let v  V s.t x v is minum and Let  =min(w(i) : i  N[v]}  if i  N[v] 1 w 1 (i) = 0 else Claim:w 1 x  r Δ w 1 x for Good(x) VC(G, w-w 1 ) REC= GVC(G, w 2 = w-w 1 ) Induction hyp is: w 2 REC  r Δ w 2 x so if Good(REC): w 1 REC  r Δ w 1 x we are done If REC is not a minimal cover then make REC minimal If REC is not a minimal cover then make REC minimal Return REC           Min x v

13 www.cs.technion.ac.il/~reuven 13 “d integral for the price of fractional”: “d integral for the price of ½(d+1) fractional”: Claim: w 1 x  r Δ w 1 x for Good(x)           Min x v If Min x v ≥ ½ Then x(N[v]) ≥ ½(d+1) Else x(N[v]) ≥ ½(d+1) Thus w 1 x ≥ ½(d+1)  But w 1 x  d  Hence : w 1 x/ w 1 x  2-2/(d+1) Δ  2-2/( Δ +1) = r Δ

14 www.cs.technion.ac.il/~reuven 14 A Generalized Local-Ratio Schema for M inimization [ M aximization] problems: Let x be any “fisible?” vector (e.g. an optimal solution) Algorithm r-ApproxMin [Max](Set, w) If Set =  then return  ; If  v  G w(v) = 0 then return {v}  r-ApproxMin(Set-{v},w ) ; [If  v  G w(v)  0 then return r-ApproxMax(Set-{v},w ) ;] Define “good” w 1 ; i.e.  Good(x): w 1 x  [  ] r w 1 x REC = r-ApproxMin [Max](Set, w 2 ) ; Induction hyp is: w 2 REC  [  ] r w 2 x so if Good(REC): w 1 REC  [  ] r w 1 x we are done, otherwise “fix it”; return REC’;

15 www.cs.technion.ac.il/~reuven 15 The maximum independent set problem Maximize w·x Subject to:x u + x v ≤ 1  e=(u,v)  E x  {0,1} |V|

16 www.cs.technion.ac.il/~reuven 16 The maximum independent set problem “1 integral for the gain of 2 fractional”: Let x be the the fractional solution Maximize w·x Subject to:x u + x v ≤ 1  e=(u,v)  E x  [0,1] |V|

17 www.cs.technion.ac.il/~reuven 17 Gain 1 integral, lose fractional 2/(Δ+1)-Approx IS(G,w) Gain 1 integral, lose ½(d+1) fractional 2/(Δ+1)-Approx IS(G,w) If  v  V w(v)  0 return IS(G-v, w) If E=  return V Let v  V s.t x v is maximum and Let  = w(v)  if i  N[v] 1 w 1 (i) = 0 else Claim:w 1 x ≥r Δ w 1 x for Good(x) (G, w-w 1 ) REC= IS(G, w 2 = w-w 1 ) Induction hyp is: w 2 REC ≥ r Δ w 2 x so if Good(REC): w 1 REC ≥ r Δ w 1 x we are done If REC+v is an independent set then REC=REC+v If REC+v is an independent set then REC=REC+v Return REC       Max x v

18 www.cs.technion.ac.il/~reuven 18 Gain 1 integral, lose fractional Gain 1 integral, lose ½(d+1) fractional Claim: w 1 x ≥ r Δ w 1 x for Good(x) Max x v If Max x v ≤ ½ Then x(N[v]) ≤ ½(d+1) Else x(N[v]) ≤ ½(d+1) Thus w 1 x ≤ ½(d+1)  But w 1 x ≥ d  Hens : w 1 x/ w 1 x ≥ 2-2/(d+1) Δ ≥ 2-2/( Δ +1) = r Δ      

19 www.cs.technion.ac.il/~reuven 19 Single Machine Scheduling : Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 ????????????? time Maximize s.t. For each instance I: For each time t: For each activity A: Bar-Noy, Guha, Naor and Schieber STOC 99: 1/2 LP Berman, DasGupta, STOC 00: 1/2 This Talk, STOC 00(Independent) 1/2

20 www.cs.technion.ac.il/~reuven 20 Î, and the weight decomposition: Let Î be the interval which ends first.  I in conflict with Î, Define w 1 (I) = w 2 = w-w 1 0 otherwise, w 1 =  w 1 = 0 time Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1

21 www.cs.technion.ac.il/~reuven 21 ½ -Approx IS(G,w): 1. Delete all instances with non-positive weight. 2. If G= , return . 3. Select Î which end first, and let  = w (Î ).  I in conflict with Î, 4. Define w 1 (I) = 0 otherwise, 5. REC  IS(G, w 2 = w-w 1 ) 6. If REC  {Î } is a feasible schedule, return REC  {Î } Otherwise, return REC

22 www.cs.technion.ac.il/~reuven 22 4-approximation for 2 Dimentional Interval graphs

23 www.cs.technion.ac.il/~reuven 23 2t-approximation for t- Dimentional Interval graphs

24 www.cs.technion.ac.il/~reuven 24 2t-approximation for t- Split Interval Graphs Maximize w·x Subject to:  v  C x v ≤ 1  C Clique x  {0,1} |V|

25 www.cs.technion.ac.il/~reuven 25 2t-approximation for t- Split Interval Graphs find relaxed x Maximize w·x Subject to:  v  C x v ≤ 1  C Interval Clique x  [0,1] |V| e.g. x 1 +x 4 +x 5 ≤ 1

26 www.cs.technion.ac.il/~reuven 26 Gain 1 integral, lose fractional 1/(2t)-Approx IS(G,w) Gain 1 integral, lose 2 t fractional 1/(2t)-Approx IS(G,w) If  v  V w(v)  0 return IS(G-v, w) If E=  return V Let v  V s.t x (N[v]) is minimum and Let  = w(v)  if i  N[v] 1 w 1 (i) = 0 else Claim:w 1 x ≥ r t w 1 x for Good(x) (G, w-w 1 ) REC= IS(G, w 2 = w-w 1 ) Induction hyp is: w 2 REC ≥ r t w 2 x so if Good(REC): w 1 REC ≥ r t w 1 x we are done If REC+v is an independent set then REC=REC+v If REC+v is an independent set then REC=REC+v Return REC       Min x (N[v])  2t

27 www.cs.technion.ac.il/~reuven 27 Gain 1 integral, lose fractional Gain 1 integral, lose 2t fractional Claim: w 1 x ≥ r t w 1 x for Good(x) Min x (N[v]) We need to show that (next slide) x (N[v]) ≤ 2t Thus w 1 x ≤ 2t  But w 1 x ≥ 1  Hence : w 1 x/ w 1 x ≥  /(2t  ) = r t      

28 www.cs.technion.ac.il/~reuven 28 We need to show that  v  u  N[v] x u ≤ 2t Define a directed graph G(V,E) V = Set of segments E = {i  j : Right endpoind of i “hits” segment j} Define x ij = x i x j y i + =  i  j x ij and y i - =  j  i x ji Thus y i +  x i  i y i =  i y i + +  i y i -  2  i x i Thus  i y i  2 x i and therefore  i  i-j x j  2


Download ppt "Www.cs.technion.ac.il/~reuven 1 New Developments in the Local Ratio Technique Reuven Bar-Yehuda www.cs.technion.ac.il/~reuven."

Similar presentations


Ads by Google