www.cs.technion.ac.il/~reuven 1 seminar 236803: approximation algorithms for lp optimization...

25
www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation Seminar 236803: Approximation algorithms for LP optimization algorithms for LP optimization problems problems Reuven Bar-Yehuda Technion IIT Slides and paper at: http://www.cs.technion.ac.il/~reuven

Post on 20-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 1Seminar 236803: ApproximationSeminar 236803: Approximationalgorithms for LP optimization algorithms for LP optimization problemsproblems

Reuven Bar-Yehuda

Technion IIT

Slides and paper at:

http://www.cs.technion.ac.il/~reuven

Page 2: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 2

Linear Programming (LP)Linear Programming (LP) Integer Programming (IP) Integer Programming (IP)

Given a profit [penalty] vector p.

Maximize[Minimize] p·x

Subject to: Linear Constreints F(x)

IP: where “x is an integer vector” is a constreint

Page 3: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 3

Example VCExample VC

Given a graph G=(V,E) and penalty vector p Zn

Minimizep·x

Subject to: x {0,1}n

xi + xj 1 {i,j} E

Page 4: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 4

Example SCExample SC

Given a Collection S1, S2,…,Sn of all subsetsof {1,2,3,…,m} and penalty vector p Zn

Minimizep·x

Subject to: x {0,1}n

xi 1 j=1..m j Si

Page 5: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 5

Example Min CutExample Min Cut

Given Network N(V,E) s,t V and capasity vector p Z|E|

Minimizep·x

Subject to: x {0,1}|E|

xe 1 st path P e P

Page 6: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 6

Example Min PathExample Min Path

Given digraph G(V,E) s,t V and length vector p Z|E|

Minimizep·x

Subject to: x {0,1}|E|

xe 1 st cut P e P

Page 7: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 7

Example MST (Minimum Spanning Tree)Example MST (Minimum Spanning Tree)

Given graph G(V,E) s,t V and length vector p Z|E|

Minimizep·x

Subject to: x {0,1}|E|

xe 1 cut P e P

Page 8: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 8

Example Minimum Steiner TreeExample Minimum Steiner Tree

Given graph G(V,E) TV and length vector p Z|E|

Minimizep·x

Subject to: x {0,1}|E|

xe 1 T’s cut P e P

Page 9: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 9

Example Generalized Steiner ForestExample Generalized Steiner Forest

Given graph G(V,E) T1T1…Tk V

and length vector p Z|E|

Min p·x

S.t.: x {0,1}|E|

xe 1 i Ti’s cut P

e P

Page 10: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 10

Example IS (Maximum Independent Set)Example IS (Maximum Independent Set)

Given a graph G=(V,E) and profit vector p Zn

Maximaize p·x

Subject to: x {0,1}n

xi + xj 1 {i,j} E

Page 11: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 11

Maximum Independent Set in Interval GraphsMaximum Independent Set in Interval Graphs

Activity9Activity8Activity7Activity6Activity5Activity4Activity3Activity2

Activity1

time

Maximize s.t. For each instance I:

For each time t:

I

IxIp )( }1,0{Ix

)()(:

1IetIsIIx

Page 12: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 12

The Local-Ratio Technique:The Local-Ratio Technique: Basic definitions Basic definitions

Given a profit [penalty] vector p.

Maximize[Minimize] p·x

Subject to: feasibility constraints F(x)

x is r-approximation if F(x) and p·x [] r · p·x*

An algorithm is r-approximation if for any p, F

it returns an r-approximation

Page 13: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 13

The Local-Ratio Theorem:The Local-Ratio Theorem:

x is an r-approximation with respect to p1

x is an r-approximation with respect to p- p1

x is an r-approximation with respect to p

Proof: (For maximization)

p1 · x r × p1*

p2 · x r × p2*

p · x r × ( p1*+ p2*)

r × ( p1 + p2 )*

Page 14: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 14

Special case: Optimization is 1-approximationSpecial case: Optimization is 1-approximation

x is an optimum with respect to p1

x is an optimum with respect to p- p1

x is an optimum with respect to p

Page 15: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 15

A Local-Ratio Schema for A Local-Ratio Schema for Maximization[Minimization] problems: Maximization[Minimization] problems:

Algorithm r-ApproxMax[Min]( Set, p )

If Set = Φ then return Φ ;

If I Set p(I) 0 then return r-ApproxMax( Set-{I}, p ) ;

[If I Set p(I)=0 then return {I} r-ApproxMin( Set-{I}, p ) ;]

Define “good” p1 ;

REC = r-ApproxMax[Min]( Set, p- p1 ) ;

If REC is not an r-approximation w.r.t. p1 then “fix it”;

return REC;

Page 16: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 16

The Local-Ratio Theorem: ApplicationsThe Local-Ratio Theorem: Applications

Applications to some optimization algorithms (r = 1):

( MST) Minimum Spanning Tree (Kruskal)

( SHORTEST-PATH) s-t Shortest Path (Dijkstra)

(LONGEST-PATH) s-t DAG Longest Path (Can be done with dynamic programming)

(INTERVAL-IS) Independents-Set in Interval Graphs Usually done with dynamic programming)

(LONG-SEQ) Longest (weighted) monotone subsequence (Can be done with dynamic programming)

( MIN_CUT) Minimum Capacity s,t Cut (e.g. Ford, Dinitz)

Applications to some 2-Approximation algorithms: (r = 2)

( VC) Minimum Vertex Cover (Bar-Yehuda and Even)

( FVS) Vertex Feedback Set (Becker and Geiger)

( GSF) Generalized Steiner Forest (Williamson, Goemans, Mihail, and Vazirani)

( Min 2SAT) Minimum Two-Satisfibility (Gusfield and Pitt)

( 2VIP) Two Variable Integer Programming (Bar-Yehuda and Rawitz)

( PVC) Partial Vertex Cover (Bar-Yehuda)

( GVC) Generalized Vertex Cover (Bar-Yehuda and Rawitz)

Applications to some other Approximations:

( SC) Minimum Set Cover (Bar-Yehuda and Even)

( PSC) Partial Set Cover (Bar-Yehuda)

( MSP) Maximum Set Packing (Arkin and Hasin)

Applications Resource Allocation and Scheduling :

….

Page 17: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 17

The creative part…The creative part…find find -Effective weights-Effective weights

p1 is -Effective if every feisible solution is -approx w.r.t. p1

i.e. p1 ·x p1*

VC (vertex cover) Edge Matching Greedy Homogenious

Page 18: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 18

VC (V, E, p)

If E= return ;

If p(v)=0 return VC(V-{v}, E-E(v), p);

Let (x,y)E;

Let = min{p(x), p(y)};

Define p1 (v) = if v=x or v=y and 0 otherwise;

Return VC(V, E, p- p1 )

VC: Recursive implementation (edge by edge)VC: Recursive implementation (edge by edge)

0

0

00

0

0

Page 19: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 19

VC: Iterative implementation (edge by edge)VC: Iterative implementation (edge by edge)

VC (V, E, p)

for each e E;

let = min{p(v)| v e};

for each v e

p(v) = p(v) - ;

return {v| p(v)=0};

0

0

00

0

0

Page 20: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 20

VC: Greedy ( H(VC: Greedy ( H() - approximation)) - approximation)H(H()=1/2+1/3+…+1/)=1/2+1/3+…+1/ = O(ln = O(ln ))

Greedy_VC (V, E, p)

C = ;

while E=

let v=arc min p(v)/d(v)

C = C + {v};

V = V – {v};

return C;

n/

n/4

n/3

n/2

n

… …

Page 21: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 21

VC: LR-Greedy (star by star)VC: LR-Greedy (star by star)

LR_Greedy_VC (V, E, p)

C = ;

while E=

let v=arc min p(v)/d(v)

let = p(v)/d(v);

C = C + {v};

V = V – {v};

for each u N(v)

p(v) = p(v) - ;

return C;

4

Page 22: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 22

VC: LR-GreedyVC: LR-GreedyHomogenious = all vertices have the same “greedy value”Homogenious = all vertices have the same “greedy value”

LR_Greedy_VC (V, E, p)

C = ;

Repeat

Let = Min p(v)/d(v);

For each v V

p(v) = p(v) – d(v);

Move from V to C all zero weight vertices;

Remove from V all zero degree vertices;

Until E=Return C;

46 4

53

3

3

2

Page 23: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 23

Page 24: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 24

Page 25: Www.cs.technion.ac.il/~reuven 1 Seminar 236803: Approximation algorithms for LP optimization problems Reuven Bar-Yehuda Technion IIT Slides and paper at:

www.cs.technion.ac.il/~reuven 25