Iterative Rounding and Relaxation

Size: px
Start display at page:

Download "Iterative Rounding and Relaxation"

Transcription

1 Iterative Rounding and Relaxation 1 / 58 Iterative Rounding and Relaxation James Davis Department of Computer Science Rutgers University Camden February 12, 2010

2 Iterative Rounding and Relaxation 2 / 58 Iterative Rounding and Relaxation Ingredients: Linear Program Theorem about individual variable values in LP solution Technique: Solve LP Round some variables Remove variables, relax constraints Iterate

3 Iterative Rounding and Relaxation 3 / 58 Brief History Survivable Network Design Jain (1998) MBDST Goemans (2006) Singh and Lau (2007, 2008) Bansal, Khandekar, Nagarajan (2008)

4 Iterative Rounding and Relaxation 4 / 58 Introduction: Vertex Cover Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

5 Iterative Rounding and Relaxation 5 / 58 Introduction: Vertex Cover Vertex Cover Input: A graph G = (V, E) Non-negative costs on vertices c v Output: A minimum-cost collection of vertices so that each edge in G is incident on at least one vertex in the collection

6 Iterative Rounding and Relaxation 6 / 58 Introduction: Vertex Cover Vertex Cover min v V c v x v x u + x v 1 e = (u, v) x v 0 v V

7 Iterative Rounding and Relaxation 7 / 58 Introduction: Vertex Cover Vertex Cover: Main Theorem Theorem (Nemhauser-Trotter) In a basic optimal LP solution, each x v { 1 2, 1, 0} Simple 2-appx algorithm: Solve the Vertex Cover LP Include all vertices with x v 0 in our cover

8 Iterative Rounding and Relaxation 8 / 58 Introduction: Vertex Cover MBDST: Problem Statement Input: Output: A graph G = (V, E) Costs c e 0 for all e E A set W V Degree bounds b v for all v W Find a min-cost spanning tree (V, F) that doesn t violate degree bounds.

9 Iterative Rounding and Relaxation 9 / 58 Introduction: Vertex Cover Example MST MBDST Cost = 3 Cost = 7

10 Iterative Rounding and Relaxation 10 / 58 LP Formulation Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

11 Iterative Rounding and Relaxation 11 / 58 LP Formulation MBDST Properties Notation: S: any subset of vertices E(S): edges with both endpoints in S F: set of edges in MBDST Properties: Spanning: Acyclic: Degree Bounds: Exactly V 1 edges in F For S 2, at most S 1 edges of F in E(S) At most b v edges of F incident on v

12 Iterative Rounding and Relaxation 12 / 58 LP Formulation Integer Program x e = 1 if e F and x e = 0 otherwise min c e x e (Objective) e E x e = V 1 (1) e E e E(S) e δ(v) x e S 1 S V, S 2 (2) x e b v v W (3) x e {0, 1} e E

13 Iterative Rounding and Relaxation 13 / 58 LP Formulation Linear Program x e = 1 if e F and x e = 0 otherwise min c e x e (Objective) e E x e = V 1 (1) e E e E(S) e δ(v) x e S 1 S V, S 2 (2) x e b v v W (3) x e 0 e E

14 Iterative Rounding and Relaxation 14 / 58 LP Formulation LP Properties There are exponentially many constraints (2) Ellipsoid method Separation oracle (1) and (3) are easy to check (2) requires work Skip Oracle

15 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network

16 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network s t

17 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network s t

18 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network s 1/2 1/2 1/2 3/ t

19 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network s 1/2 1/2 1/2 3/2 0 1\2 1/2 0 1/2 t

20 Iterative Rounding and Relaxation 15 / 58 LP Formulation Separation Oracle: Flow Network s 1/2 1/2 1/2 3/2 0 1\2 1/2 0 1/ t

21 Iterative Rounding and Relaxation 16 / 58 LP Formulation Separation Oracle:s-t cut Capacity =

22 Iterative Rounding and Relaxation 17 / 58 LP Formulation Separation Oracle The capacity across S is V + ( S 1) The capacity across S is at least V iff x e e E(S) e E(S) The max-flow from s to t is V iff (2) are satisfied x e S 1

23 Iterative Rounding and Relaxation 18 / 58 Algorithm Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

24 Iterative Rounding and Relaxation 19 / 58 Algorithm Main Theorem x =< x 1, x 2,..., x E >: solution to LP Support( x): set of edges s.t. x e > 0 Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v Condition 1 identifies a leaf in the tree Condition 2 identifies a vertex with sufficiently small number of nonzero incident edges

25 Iterative Rounding and Relaxation 20 / 58 Algorithm Algorithm F = While V > 1 x LP solution on < G, W > Remove all edges e with x e = 0 If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

26 Iterative Rounding and Relaxation 21 / 58 Algorithm Linear Program min c e x e (Objective) e E x e = V 1 (1) e E e E(S) e δ(v) x e S 1 S V, S 2 (2) x e b v v W (3) x e 0 e E

27 Iterative Rounding and Relaxation 22 / 58 Algorithm LP Relationships In each iteration LP is in the same family Same separation oracle The Main Theorem applies to each LP If condition 1 is satisfied LP is incrementally modified: Delete an x e variable Modify (1) constraint Remove some (2) constraints Modify some (3) constraints If condition 2 is satisfied LP is incrementally modified: Remove a (3) constraint

28 Iterative Rounding and Relaxation 23 / 58 Analysis Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

29 Iterative Rounding and Relaxation 24 / 58 Analysis Bounding Cost Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

30 Iterative Rounding and Relaxation 25 / 58 Analysis Bounding Cost Bounding Cost Theorem The tree returned by our algorithm has cost at most LP OPT G' e 1 v IH: cost(f ) LP (G ) cost(f ) + c e LP (G ) + c e x e LP(G ) + c e x e LP: current lin. prog. LP : new lin. prog. F : MBDST in G = LP(G)

31 Iterative Rounding and Relaxation 26 / 58 Analysis Bounding Cost Bounding Cost Lemma LP(G ) is a feasible solution to LP (G ) Changes: 1 1 on RHS, 1 on LHS 2 Remove constraints 3 1 on RHS, 1 on LHS; Remove constraints x e = V 1 (1) e E e E(S) e δ(v) x e S 1 (2) x e b v (3)

32 Iterative Rounding and Relaxation 27 / 58 Analysis Bounding Cost Min-Cost Spanning Trees Recap: Spanning tree has optimal cost Degree bounds? Implications: Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v

33 Iterative Rounding and Relaxation 27 / 58 Analysis Bounding Cost Min-Cost Spanning Trees Recap: Spanning tree has optimal cost Degree bounds? Implications: Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v When W = we have OPT

34 Iterative Rounding and Relaxation 28 / 58 Analysis Bounding Degrees Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

35 Iterative Rounding and Relaxation 29 / 58 Analysis Bounding Degrees Degree Bounds u 1 b v, b u 1 b v never violated b u adjusted v Algorithm x LP solution on < G, W > Remove e / Support( x) If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

36 Iterative Rounding and Relaxation 29 / 58 Analysis Bounding Degrees Degree Bounds 1 u b v, b u 1 b v never violated b u adjusted v Algorithm x LP solution on < G, W > Remove e / Support( x) If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

37 Iterative Rounding and Relaxation 29 / 58 Analysis Bounding Degrees Degree Bounds 1/2 1/4 0 v 0 1/4 Algorithm x LP solution on < G, W > Remove e / Support( x) If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G b v 1 All 3 edges may be in F b v violated by at most 2 If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

38 Iterative Rounding and Relaxation 29 / 58 Analysis Bounding Degrees Degree Bounds 1/2 1/4 0 v 0 1/4 Algorithm x LP solution on < G, W > Remove e / Support( x) If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G b v 1 All 3 edges may be in F b v violated by at most 2 If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

39 Iterative Rounding and Relaxation 29 / 58 Analysis Bounding Degrees Degree Bounds v 0 1 Algorithm x LP solution on < G, W > Remove e / Support( x) If condition 1 is satisfied by x Add (u, v) to F Remove v and (u, v) from G b v 1 All 3 edges may be in F b v violated by at most 2 If u W reduce b u by 1 If condition 2 is satisfied by x Remove v from W

40 Iterative Rounding and Relaxation 30 / 58 Analysis Bounding Degrees Analysis Summary Cost: Tree has cost no more than OPT Degree Bounds: No degree bound violated by more than 2 Theorem (Goemans) The algorithm for MBDST produces a spanning tree in which the degree of v is at most b v + 2 for v W and has cost no greater than OPT

41 Iterative Rounding and Relaxation 31 / 58 Main Theorem Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

42 Iterative Rounding and Relaxation 32 / 58 Main Theorem Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v

43 Iterative Rounding and Relaxation 33 / 58 Main Theorem Linear Program min c e x e (Objective) e E x e = V 1 (1) e E e E(S) e δ(v) x e S 1 S V, S 2 (2) x e b v v W (3) x e 0 e E

44 Iterative Rounding and Relaxation 34 / 58 Main Theorem Laminar Lemma Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar

45 Iterative Rounding and Relaxation 35 / 58 Main Theorem Characteristic Vector χ E(S) =< 1, 1, 1, 0, 0, 0, 0 > 6 χ δ(v) =< 0, 1, 1, 0, 1, 0, 0 >

46 Iterative Rounding and Relaxation 36 / 58 Main Theorem Laminar Sets Intersecting Sets A B Laminar Sets No intersecting sets A B A B B A

47 Iterative Rounding and Relaxation 37 / 58 Main Theorem Laminar Lemma Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar

48 Iterative Rounding and Relaxation 38 / 58 Main Theorem Property of L Lemma If all S L contain at least 2 vertices then L V 1 Use induction on V Base case: V = 2 Induction step Shrink smallest set to vertex Generates L and V L is laminar L = L 1 V V 1 L V 1 L V 1

49 Iterative Rounding and Relaxation 38 / 58 Main Theorem Property of L Lemma If all S L contain at least 2 vertices then L V 1 Use induction on V Base case: V = 2 Induction step Shrink smallest set to vertex Generates L and V L is laminar L = L 1 V V 1 L V 1 L V 1

50 Iterative Rounding and Relaxation 39 / 58 Main Theorem Property of Support( x) Lemma Support( x) < V + W Recall property 3 of Laminar Lemma: L + Z = Support( x) Support( x) = L + Z L + W < V + W (Previous Lemma)

51 Iterative Rounding and Relaxation 40 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v Suppose Main Theorem wasn t true: For every v V there are at least 2 edges incident on it For every v W there are at least 4 edges incident on it Support( x) 1 2 (2( V W ) + 4( W )) = V + W (Contradiction!)

52 Iterative Rounding and Relaxation 40 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v Suppose Main Theorem wasn t true: For every v V there are at least 2 edges incident on it For every v W there are at least 4 edges incident on it Support( x) 1 2 (2( V W ) + 4( W )) = V + W (Contradiction!)

53 Iterative Rounding and Relaxation 40 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v Suppose Main Theorem wasn t true: For every v V there are at least 2 edges incident on it For every v W there are at least 4 edges incident on it Support( x) 1 2 (2( V W ) + 4( W )) = V + W (Contradiction!)

54 Iterative Rounding and Relaxation 41 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v v S=V-v e E(S) x e V 2 e E x e = V 1 e δ(v) x e 1 x e 1 x e 1 x e = 1

55 Iterative Rounding and Relaxation 41 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v v S=V-v e E(S) x e V 2 e E x e = V 1 e δ(v) x e 1 x e 1 x e 1 x e = 1

56 Iterative Rounding and Relaxation 41 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v v S=V-v e E(S) x e V 2 e E x e = V 1 e δ(v) x e 1 x e 1 x e 1 x e = 1

57 Iterative Rounding and Relaxation 41 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v v S=V-v e E(S) x e V 2 e E x e = V 1 e δ(v) x e 1 x e 1 x e 1 x e = 1

58 Iterative Rounding and Relaxation 41 / 58 Main Theorem From Laminar Lemma to Main Theorem Theorem For any basic solution x to the linear program either: 1 v with exactly one incident edge e Support( x) x e = 1 2 v W with at most 3 edges of Support( x) incident on v u v S={u,v} e E(S) x e V 2 e E x e = V 1 e δ(v) x e 1 x e 1 x e 1 x e = 1

59 Iterative Rounding and Relaxation 42 / 58 Main Theorem Laminar Lemma Proof Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

60 Iterative Rounding and Relaxation 43 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar

61 Iterative Rounding and Relaxation 44 / 58 Main Theorem Laminar Lemma Proof LP Background min c i x i (Objective) a 11 x 1 + a 12 x a 1n x n b 1 (1) a 21 x 1 + a 22 x a 2n x n b 2 (2)... =... a m1 x 1 + a m2 x a mn x n b m (m) x i 0 (Non-Negative)

62 Iterative Rounding and Relaxation 45 / 58 Main Theorem Laminar Lemma Proof LP Background Linear Program Constraints define half-spaces Objective is a hyperplane Solution always a corner n tight constraints Constraints lin. ind. min c i x i a 11 x 1 + a 12 x a 1n x n b 1 (1) a 21 x 1 + a 22 x a 2n x n b 2 (2)... =... a m1 x 1 + a m2 x a mnx n b m (m) x i 0

63 Iterative Rounding and Relaxation 45 / 58 Main Theorem Laminar Lemma Proof LP Background MBDST LP Constraints define half-spaces Objective is a hyperplane Solution always a corner E tight constraints Constraints lin. ind. min c ex e e E x e = V 1 (1) e E x e S 1 (2) e E(S) x e b v (3) e δ(v) x e 0

64 Iterative Rounding and Relaxation 46 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar

65 Iterative Rounding and Relaxation 46 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar

66 Iterative Rounding and Relaxation 47 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof Lemma e E(S) x e is supermodular e E(S) x e + e E(T ) x e e E(S T ) x e + e E(S T ) x e S T

67 Iterative Rounding and Relaxation 48 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof Lemma S, T are tight, S and T cross, then S T, S T are tight and χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) ( S 1) + ( T 1) = ( S T 1) + ( S T 1) x e + (feasibility) E(S T ) E(S T ) x e x e + x e (supermodularity) E(S) E(T ) Since S and T are tight, these are all equalities

68 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) S T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

69 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) S T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

70 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) S T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

71 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) S T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

72 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

73 Iterative Rounding and Relaxation 49 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding L Lemma L that is laminar and Span(T ) Span(L), where T contains all tight sets Let L be a maximal laminar collection of T Recall that χ E(S) + χ E(T ) = χ E(S T ) + χ E(S T ) T Span(T ) Span(L) S (least int. in L) T (int. S) S T and S T S T and S T S T S T S T S T

74 Iterative Rounding and Relaxation 50 / 58 Main Theorem Laminar Lemma Proof Laminar Lemma Proof: Finding Z Lemma For any basic LP solution x there is a Z W and a collection L of S V where: 1 S L, S is tight; v Z, v is tight 2 The vectors χ E(S) and χ δ(v) are independent 3 L + Z = Support( x) 4 L is laminar (T, Y ) spans R Support( x) (L, Y ) spans R Support( x) To obtain (L, Z ) remove v Y that are dependent

75 Iterative Rounding and Relaxation 51 / 58 Main Theorem Laminar Lemma Proof Recap LP formulation Main Theorem Algorithm Cost no more than OPT Degree bounds violated by at most 2 Main Theorem Proof Laminar Lemma Proof

76 Iterative Rounding and Relaxation 52 / 58 Improvement Outline 1 Introduction: Vertex Cover 2 LP Formulation 3 Algorithm 4 Analysis Bounding Cost Bounding Degrees 5 Main Theorem Laminar Lemma Proof 6 Improvement

77 Iterative Rounding and Relaxation 53 / 58 Improvement Improved Main Theorem Theorem If x is a basic solution to LP where W then there is a v, s.t. δ(v) Support( x) b v + 1

78 Iterative Rounding and Relaxation 54 / 58 Improvement Algorithm Phase 1: While W x LP solution on < G, W > For all x e = 0, remove e from E Remove v from W if there are at most b v + 1 edges of δ(v) in Support( x) Phase 2: Run algorithm on < G, >

79 Iterative Rounding and Relaxation 55 / 58 Improvement Analysis Theorem (Singh and Lau) The improved algorithm for MBDST produces a spanning tree in which the degree of v is at most b v + 1 for v W and has cost no greater than OPT

80 Iterative Rounding and Relaxation 56 / 58 Improvement References Kamal Jain. A factor 2 approximation algorithm for the generalized Steiner network problem. Combinatorica, 21:39-60, Michel X. Goemans. Minimum bounded-degree spanning trees. FOCS 06 Mohit Singh and Lap Chi Lau. Approximating minimum bounded degree spanning trees to within one of optimal. STOC 07.

81 Iterative Rounding and Relaxation 57 / 58 Improvement Acknowledgements Thanks to David Shmoys and David Williamson for letting us use the manuscript of their forthcoming book, The Design of Approximation Algorithms.

82 Iterative Rounding and Relaxation 58 / 58 Improvement Thank You! Return to Oracle

Lecture 9 and 10: Iterative rounding II

Lecture 9 and 10: Iterative rounding II Approximation Algorithms and Hardness of Approximation March 19, 013 Lecture 9 and 10: Iterative rounding II Lecturer: Ola Svensson Scribes: Olivier Blanvillain In the last lecture we saw a framework for

More information

Lecture 18&19: Iterative relaxation

Lecture 18&19: Iterative relaxation CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 2009) Lecture 18&19: Iterative relaxation Lecturer: Mohammad R. Salavatipour Date: Nov 5, 2009 Scriber: Zhong Li 1 Spanning Tree Polytope

More information

College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007

College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007 College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007 CS G399: Algorithmic Power Tools I Scribe: Laura Poplawski Lecture Outline: Network Design Steiner Forest (primal-dual

More information

2 Approximation Results for Group Steiner Tree

2 Approximation Results for Group Steiner Tree Advanced Approximation Algorithms (CMU 15-854B, Spring 2008) Lecture 10: Group Steiner Tree problem 14 February, 2008 Lecturer: Anupam Gupta Scribe: Amitabh Basu 1 Problem Definition We will be studying

More information

Approximating Minimum Bounded Degree Spanning Trees to within One of Optimal

Approximating Minimum Bounded Degree Spanning Trees to within One of Optimal Approximating Minimum Bounded Degree Spanning Trees to within One of Optimal ABSTACT Mohit Singh Tepper School of Business Carnegie Mellon University Pittsburgh, PA USA mohits@andrew.cmu.edu In the MINIMUM

More information

Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007

Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007 CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007 Last time we discussed how LP-duality can be

More information

Vertex Cover. Linear Progamming and Approximation Algorithms. Joshua Wetzel

Vertex Cover. Linear Progamming and Approximation Algorithms. Joshua Wetzel Linear Progamming and Approximation Algorithms Joshua Wetzel Department of Computer Science Rutgers University Camden wetzeljo@camden.rutgers.edu March 24, 29 Joshua Wetzel / 52 What is Linear Programming?

More information

1 The Minimum Spanning Tree (MST) Problem

1 The Minimum Spanning Tree (MST) Problem IEOR269: Lecture 3 1 Integer Programming and Combinatorial Optimization Lecture #3 IEOR 269 Feb 5, 2010 Lecturer: Dorit Hochbaum Scribe: Dogan Bilguvar Handouts: Game of Fiver and Fire Station Problems

More information

Lecture 6: Approximation via LP Rounding

Lecture 6: Approximation via LP Rounding Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other

More information

7. Lecture notes on the ellipsoid algorithm

7. Lecture notes on the ellipsoid algorithm Massachusetts Institute of Technology Handout 19 18.433: Combinatorial Optimization May 4th, 009 Michel X. Goemans 7. Lecture notes on the ellipsoid algorithm The simplex algorithm was the first algorithm

More information

Figure 1: Example Matching: Matching consists of edges in bold.

Figure 1: Example Matching: Matching consists of edges in bold. CS 6505: Computability & Algorithms Lectures 3 & 4, January 20 & 22, 2010 Greedy Algorithms In this lecture we will examine a couple of famous greedy algorithms and then look at matroids, which are a class

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

More information

Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

More information

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm Instructor: Shaddin Dughmi Announcements Outline 1 Recapping the Ellipsoid Method 2 Complexity

More information

Generalizing Vertex Cover, an Introduction to LPs

Generalizing Vertex Cover, an Introduction to LPs CS5234: Combinatorial and Graph Algorithms Lecture 2 Generalizing Vertex Cover, an Introduction to LPs Lecturer: Seth Gilbert August 19, 2014 Abstract Today we consider two generalizations of vertex cover:

More information

Definition A tree is a connected, acyclic graph. Alternately, a tree is a graph in which any two vertices are connected by exactly one simple path.

Definition A tree is a connected, acyclic graph. Alternately, a tree is a graph in which any two vertices are connected by exactly one simple path. 11.5 Trees Examples Definitions Definition A tree is a connected, acyclic graph. Alternately, a tree is a graph in which any two vertices are connected by exactly one simple path. Definition In an undirected

More information

(where C, X R and are column vectors)

(where C, X R and are column vectors) CS 05: Algorithms (Grad) What is a Linear Programming Problem? A linear program (LP) is a minimization problem where we are asked to minimize a given linear function subject to one or more linear inequality

More information

Week 10. c T x + d T y. Ax + Dy = b. x integer.

Week 10. c T x + d T y. Ax + Dy = b. x integer. Week 10 1 Integer Linear Programg So far we considered LP s with continuous variables. However sometimes decisions are intrinsically restricted to integer numbers. E.g., in the long term planning, decision

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS Coping with NP-completeness 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Q. Suppose I

More information

Chapter 4. Trees. 4.1 Basics

Chapter 4. Trees. 4.1 Basics Chapter 4 Trees 4.1 Basics A tree is a connected graph with no cycles. A forest is a collection of trees. A vertex of degree one, particularly in a tree, is called a leaf. Trees arise in a variety of applications.

More information

Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree

Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree R. Ravi Carnegie Mellon University Joint Work with Mohit Singh 10/5/2006 1 Minimum Degree MST problem Given an undirected graph G, cost

More information

10.1 Integer Programming and LP relaxation

10.1 Integer Programming and LP relaxation CS787: Advanced Algorithms Lecture 10: LP Relaxation and Rounding In this lecture we will design approximation algorithms using linear programming. The key insight behind this approach is that the closely

More information

CSC Linear Programming and Combinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP

CSC Linear Programming and Combinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP S2411 - Linear Programming and ombinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP Notes taken by Matei David April 12, 2005 Summary: In this lecture, we give three example

More information

4. Lecture notes on matroid optimization

4. Lecture notes on matroid optimization Massachusetts Institute of Technology Handout 9 18.433: Combinatorial Optimization March 20th, 2009 Michel X. Goemans 4. Lecture notes on matroid optimization 4.1 Definition of a Matroid Matroids are combinatorial

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

1 NP-Completeness (continued)

1 NP-Completeness (continued) Mathematical Programming Lecture 27 OR 630 Fall 2006 November 30, 2006 adapted from notes by Omer Hancer 1 NP-Completeness (continued) Before starting on complexity theory, we talked about running times,

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

Definition 11.1. Given a graph G on n vertices, we define the following quantities:

Definition 11.1. Given a graph G on n vertices, we define the following quantities: Lecture 11 The Lovász ϑ Function 11.1 Perfect graphs We begin with some background on perfect graphs. graphs. First, we define some quantities on Definition 11.1. Given a graph G on n vertices, we define

More information

Chapter 6: Random rounding of semidefinite programs

Chapter 6: Random rounding of semidefinite programs Chapter 6: Random rounding of semidefinite programs Section 6.1: Semidefinite Programming Section 6.: Finding large cuts Extra (not in book): The max -sat problem. Section 6.5: Coloring 3-colorabale graphs.

More information

LP-based solution methods for the asymmetric TSP

LP-based solution methods for the asymmetric TSP LP-based solution methods for the asymmetric TSP Vardges Melkonian Department of Mathematics, Ohio Universtiy, Athens, Ohio 45701, USA vardges@math.ohiou.edu Abstract We consider an LP relaxation for ATSP.

More information

Totally Unimodular Matrices

Totally Unimodular Matrices Totally Unimodular Matrices m constraints, n variables Vertex solution: unique solution of n linearly independent tight inequalities Can be rewritten as: That is: Totally Unimodular Matrices Assuming all

More information

Lecture 5. Combinatorial Algorithm for maximum cardinality matching (König s Theorem and Hall s Theorem)

Lecture 5. Combinatorial Algorithm for maximum cardinality matching (König s Theorem and Hall s Theorem) Topics in Theoretical Computer Science March 16, 2015 Lecture 5 Lecturer: Ola Svensson Scribes: Mateusz Golebiewski, Maciej Duleba These lecture notes are partly based on http://theory.epfl.ch/courses/topicstcs/lecture10.pdf

More information

CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri

CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri Scribe: CC Notes updated from Spring 2011. In the previous lecture we discussed the Knapsack problem. In this

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology Handout 3 18.433: Combinatorial Optimization February 9th, 2009 Michel X. Goemans 1. Lecture notes on bipartite matching Matching problems are among the fundamental

More information

Approximation Algorithms for Weighted Vertex Cover

Approximation Algorithms for Weighted Vertex Cover Approximation Algorithms for Weighted Vertex Cover CS 511 Iowa State University November 7, 2010 CS 511 (Iowa State University) Approximation Algorithms for Weighted Vertex Cover November 7, 2010 1 / 14

More information

CMPSCI611: Greedy Algorithms and Matroids Lecture 4

CMPSCI611: Greedy Algorithms and Matroids Lecture 4 CMPSCI611: Greedy Algorithms and Matroids Lecture 4 Our next algorithmic paradigm is greedy algorithms. A greedy algorithm tries to solve an optimization problem by always choosing a next step that is

More information

Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011

Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011 Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011 Lecture 7 In which we show how to use linear programming to approximate the vertex cover problem. 1 Linear Programming Relaxations

More information

Introduction to Operations Research

Introduction to Operations Research 0-0 Introduction to Operations Research Peng Zhang June 7, 2015 School of Computer Science and Technology, Shandong University, Jinan, 250101, China. Email: algzhang@sdu.edu.cn. 1 Introduction 1 2 Overview

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Randomized Linear Time Algorithm to Find Minimum Spanning Trees. Given a connected, undirected graph, a spanning tree of that graph is a

Randomized Linear Time Algorithm to Find Minimum Spanning Trees. Given a connected, undirected graph, a spanning tree of that graph is a Mao-Chi (Mike) Weng CS537, Prof. Homer 12/5/2013 Randomized Linear Time Algorithm to Find Minimum Spanning Trees Given a connected, undirected graph, a spanning tree of that graph is a subgraph that is

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli November 11, 2014 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

More information

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued. Linear Programming Widget Factory Example Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory:, Vertices, Existence of Solutions. Equivalent formulations.

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Partial Vertex Cover

Partial Vertex Cover Partial Vertex Cover Joshua Wetzel Department of Computer Science Rutgers University Camden wetzeljo@camden.rutgers.edu April 2, 2009 Joshua Wetzel Partial Vertex Cover / 48 Vertex Cover Input: Given G

More information

CS173 Lecture B, November 17, 2015

CS173 Lecture B, November 17, 2015 CS173 Lecture B, November 17, 2015 Tandy Warnow November 17, 2015 CS 173, Lecture B November 17, 2015 Tandy Warnow Today s material Adjacency matrices and adjacency lists (and a class exercise) Depth-first

More information

Quadratic programming on graphs without long odd cycles

Quadratic programming on graphs without long odd cycles Quadratic programming on graphs without long odd cycles Marcin Kamiński Department of Computer Science Université Libre de Bruxelles, Belgium Marcin.Kaminski@ulb.ac.be Abstract We introduce a quadratic

More information

Lecture 12: Steiner Tree Problems

Lecture 12: Steiner Tree Problems Advanced Approximation Algorithms (CMU 15-854B, Spring 008) Lecture 1: Steiner Tree Problems February 1, 008 Lecturer: Anupam Gupta Scribe: Michael Dinitz 1 Finishing up Group Steiner Tree Hardness Last

More information

1 Unrelated Parallel Machine Scheduling

1 Unrelated Parallel Machine Scheduling IIIS 014 Spring: ATCS - Selected Topics in Optimization Lecture date: Mar 13, 014 Instructor: Jian Li TA: Lingxiao Huang Scribe: Yifei Jin (Polishing not finished yet.) 1 Unrelated Parallel Machine Scheduling

More information

3.3 Easy ILP problems and totally unimodular matrices

3.3 Easy ILP problems and totally unimodular matrices 3.3 Easy ILP problems and totally unimodular matrices Consider a generic ILP problem expressed in standard form where A Z m n with n m, and b Z m. min{c t x : Ax = b, x Z n +} (1) P(b) = {x R n : Ax =

More information

1 Bipartite matching and vertex covers

1 Bipartite matching and vertex covers ORF 523 Lecture 6 Spring 2016, Princeton University Instructor: A.A. Ahmadi Scribe: G. Hall Thursday, February 25, 2016 When in doubt on the accuracy of these notes, please cross check with the instructor

More information

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

More information

Vertex Cover Problems

Vertex Cover Problems Rob van Stee: Approximations- und Online-Algorithmen 1 Vertex Cover Problems Consider a graph G=(V,E) S V is a vertex cover if {u,v} E : u S v S minimum vertex cover (MIN-VCP): find a vertex cover S that

More information

Math 443/543 Graph Theory Notes 4: Connector Problems

Math 443/543 Graph Theory Notes 4: Connector Problems Math 443/543 Graph Theory Notes 4: Connector Problems David Glickenstein September 19, 2012 1 Trees and the Minimal Connector Problem Here is the problem: Suppose we have a collection of cities which we

More information

Graph Theory. 1 Defining and representing graphs

Graph Theory. 1 Defining and representing graphs Graph Theory 1 Defining and representing graphs A graph is an ordered pair G = (V, E), where V is a finite, non-empty set of objects called vertices, and E is a (possibly empty) set of unordered pairs

More information

Advanced Combinatorial Optimization 8 October Lecture 8: Matroids

Advanced Combinatorial Optimization 8 October Lecture 8: Matroids 18.438 Advanced Combinatorial Optimization 8 October 2009 Lecture 8: Matroids Lecturer: Michel X. Goemans Scribe: Elette Boyle* (*Based on notes from Bridget Eileen Tenner and Nicole Immorlica.) 1 Matroids

More information

1 Polyhedra and Linear Programming

1 Polyhedra and Linear Programming CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

More information

Sparsest Cut. Computational and Metric Geometry. Instructor: Yury Makarychev

Sparsest Cut. Computational and Metric Geometry. Instructor: Yury Makarychev Sparsest Cut Computational and Metric Geometry Instructor: Yury Makarychev 1 Overview 1.1 Sparsest Cut with Uniform Demands Today we will talk about applications of metric embeddings in combinatorial optimization.

More information

On the Covering Steiner Problem

On the Covering Steiner Problem On the Covering Steiner Problem Anupam Gupta 1 and Aravind Srinivasan 2 1 Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15232, USA. anupamg@cs.cmu.edu 2 Department of Computer

More information

Minimum Makespan Scheduling

Minimum Makespan Scheduling Minimum Makespan Scheduling Minimum makespan scheduling: Definition and variants Factor 2 algorithm for identical machines PTAS for identical machines Factor 2 algorithm for unrelated machines Martin Zachariasen,

More information

Linear Programming. Computer Science 511. Iowa State University. September 24, 2010

Linear Programming. Computer Science 511. Iowa State University. September 24, 2010 Linear Programming Computer Science 511 Iowa State University September 24, 2010 Computer Science 511 (Iowa State University) Linear Programming September 24, 2010 1 / 27 Example: Profit Maximization Joe

More information

15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016

15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016 15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016 While we have good algorithms for many optimization problems, the previous lecture showed that many others

More information

GRAPH THEORY and APPLICATIONS. Trees

GRAPH THEORY and APPLICATIONS. Trees GRAPH THEORY and APPLICATIONS Trees Properties Tree: a connected graph with no cycle (acyclic) Forest: a graph with no cycle Paths are trees. Star: A tree consisting of one vertex adjacent to all the others.

More information

CSC Linear Programming and Combinatorial Optimization Lecture 7: von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm

CSC Linear Programming and Combinatorial Optimization Lecture 7: von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm D CSC2411 - Linear Programming and Combinatorial Optimization Lecture : von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm Notes taken by Xuming He March 4, 200 Summary: In this

More information

Graph theory. Po-Shen Loh. June We begin by collecting some basic facts which can be proved via bare-hands techniques.

Graph theory. Po-Shen Loh. June We begin by collecting some basic facts which can be proved via bare-hands techniques. Graph theory Po-Shen Loh June 011 1 Well-known results We begin by collecting some basic facts which can be proved via bare-hands techniques. 1. The sum of all of the degrees is equal to twice the number

More information

Minimum Spanning Trees. Based on Mahesh Viswanathan s notes

Minimum Spanning Trees. Based on Mahesh Viswanathan s notes Minimum Spanning Trees Based on Mahesh Viswanathan s notes MST: the problem Input: Connected graph with edge costs Goal: find such that is connected and the total cost of all edges in is the smallest T

More information

On Allocations that Maximize Fairness

On Allocations that Maximize Fairness On Allocations that Maximize Fairness Uriel Feige Abstract We consider a problem known as the restricted assignment version of the max-min allocation problem with indivisible goods. There are n items of

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

Definition of a Linear Program

Definition of a Linear Program Definition of a Linear Program Definition: A function f(x 1, x,..., x n ) of x 1, x,..., x n is a linear function if and only if for some set of constants c 1, c,..., c n, f(x 1, x,..., x n ) = c 1 x 1

More information

Machine Minimization for Scheduling Jobs with Interval Constraints

Machine Minimization for Scheduling Jobs with Interval Constraints ! Machine Minimization for Scheduling Jobs with Interval Constraints Julia Chuzhoy Sudipto Guha Sanjeev Khanna Joseph (Seffi) Naor Abstract The problem of scheduling jobs with interval constraints is a

More information

Practice Final Solutions

Practice Final Solutions Introduction to Algorithms May 14, 2003 Massachusetts Institute of Technology 6.046J18.410J Professors Erik Demaine and Shafi Goldwasser Practice Final Solutions Practice Final Solutions Do not open this

More information

Minimum Spanning Trees

Minimum Spanning Trees Minimum Spanning Trees Algorithms and 18.304 Presentation Outline 1 Graph Terminology Minimum Spanning Trees 2 3 Outline Graph Terminology Minimum Spanning Trees 1 Graph Terminology Minimum Spanning Trees

More information

Lecture 11: Integer Linear Programs

Lecture 11: Integer Linear Programs Lecture 11: Integer Linear Programs 1 Integer Linear Programs Consider the following version of Woody s problem: x 1 = chairs per day, x 2 = tables per day max z = 35x 1 + 60x 2 profits 14x 1 + 26x 2 190

More information

THE PRIMAL-DUAL METHOD FOR APPROXIMATION ALGORITHMS AND ITS APPLICATION TO NETWORK DESIGN PROBLEMS

THE PRIMAL-DUAL METHOD FOR APPROXIMATION ALGORITHMS AND ITS APPLICATION TO NETWORK DESIGN PROBLEMS C H A P T E R 4 THE PRIMAL-DUAL METHOD FOR APPROXIMATION ALGORITHMS AND ITS APPLICATION TO NETWORK DESIGN PROBLEMS Michel X. Goemans David P. Williamson Dedicated to the memory of Albert W. Tucker The

More information

Tutte-Berge Formula. EECS 495: Combinatorial Optimization Lecture 2 Matching: Edmonds-Gallai Decomposition, Edmonds Algorithm

Tutte-Berge Formula. EECS 495: Combinatorial Optimization Lecture 2 Matching: Edmonds-Gallai Decomposition, Edmonds Algorithm EECS 495: Combinatorial Optimization Lecture Matching: Edmonds-Gallai Decomposition, Edmonds Algorithm Reading: Schrijver, Chapter 4 = ( V + U o(g U))/. Tutte-Berge Formula For graph G and U V, let G U

More information

Approximate Min-Max Theorems for Steiner Rooted-Orientations of Graphs and Hypergraphs

Approximate Min-Max Theorems for Steiner Rooted-Orientations of Graphs and Hypergraphs Egerváry Research Group on Combinatorial Optimization Technical reports TR-006-13. Published by the Egerváry Research Group, Pázmány P. sétány 1/C, H 1117, Budapest, Hungary. Web site: www.cs.elte.hu/egres.

More information

1 Total Dual Integrality

1 Total Dual Integrality CS 598CSC: Combinatorial Optimization Lecture date: February 25, 2010 Instructor: Chandra Chekuri Scribe: Bill Kinnersley 1 Total Dual Integrality Recall that if A is TUM and b, c are integral vectors,

More information

Lecture More common geometric view of the simplex method

Lecture More common geometric view of the simplex method 18.409 The Behavior of Algorithms in Practice 9 Apr. 2002 Lecture 14 Lecturer: Dan Spielman Scribe: Brian Sutton In this lecture, we study the worst-case complexity of the simplex method. We conclude by

More information

Lecture 7,8 (Sep 22 & 24, 2015):Facility Location, K-Center

Lecture 7,8 (Sep 22 & 24, 2015):Facility Location, K-Center ,8 CMPUT 675: Approximation Algorithms Fall 2015 Lecture 7,8 (Sep 22 & 24, 2015):Facility Location, K-Center Lecturer: Mohammad R. Salavatipour Scribe: Based on older notes 7.1 Uncapacitated Facility Location

More information

Analysis of Algorithms I: Minimum Spanning Tree

Analysis of Algorithms I: Minimum Spanning Tree Analysis of Algorithms I: Minimum Spanning Tree Xi Chen Columbia University We discuss the Minimum Spanning Tree problem. The input of the problem is an undirected and connected weighted graph G = (V,

More information

Good luck, veel succes!

Good luck, veel succes! Final exam Advanced Linear Programming, May 7, 13.00-16.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam

More information

Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011

Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011 Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011 Lecture 5 In which we introduce linear programming. 1 Linear Programming A linear program is an optimization problem in

More information

M AT H E M AT I C S O F O P - E R AT I O N S R E S E A R C H

M AT H E M AT I C S O F O P - E R AT I O N S R E S E A R C H A N D R E W T U L L O C H M AT H E M AT I C S O F O P - E R AT I O N S R E S E A R C H T R I N I T Y C O L L E G E T H E U N I V E R S I T Y O F C A M B R I D G E Contents 1 Generalities 5 2 Constrained

More information

2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines 2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

More information

Minimum Spanning Trees

Minimum Spanning Trees Minimum Spanning Trees Yan Liu LDCSEE West Virginia University, Morgantown, WV {yanliu@csee.wvu.edu} 1 Statement of Problem Let G =< V, E > be a connected graph with real-valued edge weights: w : E R,

More information

1 Introduction: Approximation Algorithms

1 Introduction: Approximation Algorithms Cornell University, Fall 01 CS 680: Algorithms Lecture notes on approximation algorithms October 10 15, 010 1 Introduction: Approximation Algorithms For many important optimization problems, there is no

More information

Integer Programming Formulations for Minimum Spanning Forest Problem

Integer Programming Formulations for Minimum Spanning Forest Problem Integer Programming Formulations for Minimum Spanning Forest Problem Mehdi Golari Systems and Industrial Engineering Department The University of Arizona Math 543 November 19, 2015 Golari (SIE@UA) () IP

More information

The geometry of LP solutions

The geometry of LP solutions The geometry of LP solutions Optimization - 10725 Carlos Guestrin Carnegie Mellon University January 25 th, 2008 1 The Simplex alg walks from vertex to vertex. Why?? 2 1 Understanding the Geometry of LPs

More information

Polynomiality of Linear Programming

Polynomiality of Linear Programming Chapter 10 Polynomiality of Linear Programming In the previous section, we presented the Simplex Method. This method turns out to be very efficient for solving linear programmes in practice. While it is

More information

1 Approximation Algorithms: Vertex Cover

1 Approximation Algorithms: Vertex Cover Approximation Algorithms: Vertex Cover. Introduction to Approximation Algorithms There are several optimization problems such as Minimum Spanning Tree (MST), Min-Cut, Maximum- Matching, in which you can

More information

Resource Minimization Job Scheduling

Resource Minimization Job Scheduling Resource Minimization Job Scheduling Julia Chuzhoy 1 and Paolo Codenotti 2 1 Toyota Technological Institute, Chicago, IL 60637 Supported in part by NSF CAREER award CCF-0844872 cjulia@tti-c.org 2 Department

More information

LINEAR PROGRAMMING. Vazirani Chapter 12 Introduction to LP-Duality. George Alexandridis(NTUA)

LINEAR PROGRAMMING. Vazirani Chapter 12 Introduction to LP-Duality. George Alexandridis(NTUA) LINEAR PROGRAMMING Vazirani Chapter 12 Introduction to LP-Duality George Alexandridis(NTUA) gealexan@mail.ntua.gr 1 LINEAR PROGRAMMING What is it? A tool for optimal allocation of scarce resources, among

More information

Stanford University CS261: Optimization Handout 13 Luca Trevisan February 17, 2011

Stanford University CS261: Optimization Handout 13 Luca Trevisan February 17, 2011 Stanford University CS61: Optimization Handout 13 Luca Trevisan February 17, 011 Lecture 13 In which we describe a randomized algorithm for finding the minimum cut in an undirected graph. 1 Global Min-Cut

More information

13.1 Semi-Definite Programming

13.1 Semi-Definite Programming CS787: Advanced Algorithms Lecture 13: Semi-definite programming In this lecture we will study an extension of linear programming, namely semi-definite programming. Semi-definite programs are much more

More information

On the core and f -nucleolus of flow games

On the core and f -nucleolus of flow games On the core and f -nucleolus of flow games Walter Kern Daniël Paulusma Univerisity of Twente Durham University Bristol Algorithms Days 2008 Introduction Game Theory: models and analyses situations of conflict

More information

Lecture 20: Inapproximability of Minimum Vertex Cover

Lecture 20: Inapproximability of Minimum Vertex Cover CS 880: Advanced Complexity Theory 3//008 Lecture 0: Inapproximability of Minimum Vertex Cover Instructor: Dieter van Melkebeek Scribe: Mark Liu Last time we examined a generic approach for inapproximability

More information

Lecture notes on the mincut problem

Lecture notes on the mincut problem Massachusetts Institute of Technology Handout 20 8.433: Combinatorial Optimization May 0th, 2007 Michel X. Goemans Lecture notes on the mincut problem Minimum Cuts In this lecture we will describe an algorithm

More information

Minimize subject to. x S R

Minimize subject to. x S R Chapter 12 Lagrangian Relaxation This chapter is mostly inspired by Chapter 16 of [1]. In the previous chapters, we have succeeded to find efficient algorithms to solve several important problems such

More information