# Approximation Algorithms

Size: px
Start display at page:

## Transcription

1 Approximation Algorithms Group Members: 1. Geng Xue (A R) 2. Cai Jingli (A B) 3. Xing Zhe (A W) 4. Zhu Xiaolu (A W) 5. Wang Zixiao (A X) 6. Jiao Qing (A R) 7. Zhang Hao (A U) 1

2 Introduction Geng Xue 2

3 Optimization problem Find the minimum/maximum of Vertex Cover : A minimum set of vertices that covers all the edges in a graph. 3

4 NP optimization problem The hardness of NP optimization is NP hard. Can t be solved in polynomial time. 4

5 How to solve? 5

6 How to solve? 6

7 How to solve? 7

8 How to solve? 8

9 How to evaluate? Mine is better! 9

10 How to evaluate? Exact optimal value of optimization problem. relative performance guarantee. Sub-optimal solution : ρ OPT (ρ is factor). The closer factor ρ is to 1, The better the algorithm is. 10

11 Set cover It leads to the development of fundamental techniques for the entire approximation algorithms field. Due to set cover, many of the basic algorithm design techniques can be explained with great ease. 11

12 What is set cover? Definition: Given a universe U of n elements, a collection of subsets of U, S = {S 1, S 2,, S k }, and a cost function c: S Q +, find a minimum cost subcollection of S that covers all elements of U. 12

13 What is set cover? Example: S Sets Cost S 1 {1,2} 1 S 2 {3,4} 1 S 3 {1,3} 2 S 4 {5,6} 1 S 5 {1,5} 3 S 6 {4,6} 1 Universal Set : U = {1,2,3,4,5,6} Find a sub-collection of S that covers all the elements of U with minimum cost. Solution? S 1 S 2 S 4 Cost = = 3 13

14 Approximation algorithms to set cover problem Combinatorial algorithms Linear programming based Algorithms (LP-based) 14

15 Combinatorial & LP-based Combinatorial algorithms Greedy algorithms Layering algorithms LP-based algorithms Dual Fitting Rounding Primal Dual Schema 15

16 Greedy set cover algorithm Cai Jingli 16

17 Greedy set cover algorithm Where C is the set of elements already covered at the beginning of an iteration and α is the average cost at which it covers new elements. 17

18 Example S1 1 S S2 subset cost S1 = {1, 2} 1 S2 = {2, 3, 4} 2 S3 = {3, 4} 3 U 6 5 S4 S4 = {5, 6} 3 Iteration 1: C = {} α1 = 1 / 2 = 0.5 α2 = 2 / 3 = 0.67 α3 = 3 / 2 = 1.5 α4 = 3 / 2 = 1.5 C = {1, 2} Price(1) = 0.5 Price(2) = 0.5 Iteration 2: C = {1, 2} α2 = 2 / 2 = 1 α3 = 3 / 2 = 1.5 α4 = 3 / 2 = 1.5 C = {1, 2, 3, 4} Price(3) = 1 Price(4) = 1 Iteration 3: C = {1, 2, 3, 4 } α3 = 3 / 0 = infinite α4 = 3 / 2 = 1.5 C = {1, 2, 3, 4, 5, 6} Price(5) = 1.5 Price(6) =

19 Example S1 1 S S2 subset cost S1 = {1, 2} 1 S2 = {2, 3, 4} 2 S3 = {3, 4} 3 U 6 5 S4 S4 = {5, 6} 3 The picked sets = {S1, S2, S4} Total cost = Cost(S1)+Cost(S2)+Cost(S4) = Price(1) + Price(2) + + Price(6) = = 6 19

20 Theorem The greedy algorithm is an H n factor approximation algorithm for the minimum set cover problem, where H n = n i Cost(Si) H n OPT 20

21 Proof 1) We know price e = e U cost of the greedy algorithm = c S 1 + c S c S m. 2) We will show price(e k ) OPT n k+1, where e k is the kth element covered. If 2) is proved then theorem is proved also. i Cost(Si) = price e e U n k=1 OPT n k + 1 = OPT = OPT ( n ) = H n OPT n k=1 1 n k

22 price(e k ) OPT n k + 1 Say the optimal sets are O 1, O 2,, O p, so p i=1 OPT = c O 1 + c O c O p = c O i Now, assume the greedy algorithm has covered the elements in C so far. U C O 1 U C = O i U C i=1 price e k = α c(o i) p O i (U C) this because of greedy algorithm + + O p U C (2), i=1,,p. we know 22

23 price(e k ) p OPT n k OPT = c O i i=1 p 2 U C O i U C i=1 3 c O i α O i U C So OPT = p i=1 c O i α O i U C U C = n k + 1 price e k = α OPT n k + 1 p i=1 α U C 23

24 Shortest Superstring Problem (SSP) Given a finite alphabet Σ, and set of n strings, S = {s 1,, s n } Σ +. Find a shortest string s that contains each s i as a substring. Without loss of generality, we may assume that no string s i is a substring of another string s j, j i. 24

25 Application: Shotgun sequencing 25

26 Approximating SSP Using Set Cover 26

27 Set Cover Based Algorithm Set Cover Problem: Choose some sets that cover all elements with least cost Elements The input strings Subsets σ ijk = string obtained by overlapping input strings s i and s j, with k letters. β = S σ ijk, all i, j, k Let π β set(π) = {s S s is a substr. of π} 27

28 Set Cover Based Algorithm Set Cover Problem: Choose some sets that cover all elements with least cost Elements The input strings Subsets σ ijk = string obtained by overlapping input strings s i and s j, with k letters. β = S σ ijk, all i, j, k Let π β set(π) = {s S s is a substr. of π} Cost of a subset set(π) is π A solution to SSP is the concatenation of π obtained from SCP 28

29 Example S = {CATGC, CTAAGT, GCTA, TTCA, ATGCATC} π Set Cost CATGC CTAAGT CATGCTAAGT CATGC, CTAAGT, GCTA 10 CATGC..... GCTA CATGCTA CATGC, GCTA CATGC ATGCATC.... ATGCATCATGC CATGC, ATGCATC 11 CTAAGT TTCA CTAAGTTCA CTAAGT, TTCA 9 ATGCATC CTAAGT ATGCATCTAAGT CTAAGT, ATGCATC 12 29

30 GCTA ATGCATC GCTATGCATC GCTA, ATGCATC 10 TTCA ATGCATC TTCATGCATC TTCA, ATGCATC, CATGC 10 GCTA.... CTAAGT GCTAAGT GCTA, CTAAGT 7 TTCA..... CATGC TTCATGC CATGC, TTCA 7 CATGC.... ATGCATC CATGCATC CATGC, ATGCATC CATGC CATGC 5 CTAAGT CTAAGT 6 GCTA GCTA 4 TTCA TTCA 4 ATGCATC ATGCATC

31 Lemma OPT OPT SCA 2H n OPT 31

32 Layering Technique Xing Zhe 32

33 Layering Technique Set Cover Problem Greedy: H n Combinatorial algorithms Layering? 33

34 Vertex Cover Problem Definition: Given a graph G = (V, E), and a weight function w: V Q + assigning weights to the vertices, find a minimum weighted subset of vertices C V, such that C covers all edges in E, i.e., every edge e i E is incident to at least one vertex in C. 34

35 Vertex Cover Problem Example: all vertices of unit weight

36 Vertex Cover Problem Example: all vertices of unit weight Total cost = 5 36

37 Vertex Cover Problem Example: all vertices of unit weight Total cost = 3 37

38 Vertex Cover Problem Example: all vertices of unit weight Total cost = 3 OPT 38

39 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 39

40 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 40

41 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 41

42 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 42

43 Notation 1) frequency 2) f : the frequency of the most frequent element. Layering algorithm is an f factor approximation for the minimum set cover problem. 43

44 Notation 1) frequency 2) f : the frequency of the most frequent element. Layering In the vertex algorithm cover problem, is an f factor f =? approximation for the minimum set cover problem. 44

45 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 45

46 Vertex Cover Problem Vertex cover is a special case of set cover. a b c d e f Edges are elements, vertices are subsets Universe U = {a, b, c, d, e, f, g, h} A collection of subsets S = S 1, S 2, S 3, S 4, S 5, S 6, S 7 g h S 1 = {a, b} S 2 = {b, c, d} S 3 = {c, e, g, h} S 4 = {a} S 5 = {d, e, f} S 6 = {f, g} S 7 = {h} Vertex cover problem is a set cover problem with f = 2 46

47 Approximation factor 1) frequency 2) f : the frequency of the most frequent element. In the vertex cover problem, f = 2 Layering Algorithm Set Cover Problem Vertex Cover Problem factor = f factor = 2 47

48 Approximation factor 1) frequency 2) f : the frequency of the most frequent element. In the vertex cover problem, f = 2 Layering Algorithm Set Cover Problem Vertex Cover Problem factor = f factor = 2 48

49 Vertex Cover Problem arbitrary weight function: w: V Q + degree-weighted function: c > 0 s.t. v V, w v = c deg (v) 49

50 Vertex Cover Problem arbitrary weight function: w: V Q + degree-weighted function: c > 0 s.t. v V, w v = c deg (v) 50

51 Degree weighted function Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT 51

52 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 52

53 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 53

54 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 54

55 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 55

56 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 56

57 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 57

58 Proof: Lemma: If w: V Q + is a degree-weighted function. Then w V 2 OPT degree-weighted function, w v = c deg (v) C is the optimal vertex cover in G, deg v E v C OPT = w C = c deg v c E v C (1) in worst case, we pick all vertices. handshaking lemma, deg v = 2 E v V w V = v V w v = v V c deg v = c v V deg v = c 2 E (2) from (1) and (2), w V 2 OPT 58

59 Layering algorithm Basic idea: arbitrary weight function several degree-weighted functions nice property (factor = 2) holds in each layer 59

60 Layering algorithm 1) remove all degree zero vertices, say this set is D 0 2) compute c = min {w v deg(v)} 3) compute degree-weighted function t(v) = c deg (v) 4) compute residual weight function w v = w v t(v) 5) let W 0 = v w v = 0}, pick zero residual vertices into the cover set 6) let G 1 be the graph induced on V (D 0 W 0 ) 7) repeat the entire process on G 1 w.r.t. the residual weight function, until all vertices are of degree zero 60

61 Layering algorithm zero residual weight non-zero residual weight zero degree 61

62 Layering algorithm 62

63 Layering algorithm 63

64 Layering algorithm 64

65 Layering algorithm The vertex cover chosen is C = W 0 W 1 W k 1 Clearly, V C = D 0 D 1 D k 65

66 Layering algorithm Example: all vertices of unit weight: w(v) =

67 Iteration D 0 = { 8 } 67

68 Iteration D 0 = { 8 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v 68

69 0.5 Iteration D 0 = { 8 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) 69

70 0.5 Iteration D 0 = { 8 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 0 = { 3 } 70

71 Iteration D 0 = { 8 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 0 = { 3 } remove D 0 and W 0 71

72 Iteration D 1 = { 7 } 72

73 Iteration D 1 = { 7 } compute c = min {w v deg(v)} = degree-weighted function: t v = c deg v = deg v 73

74 Iteration D 1 = { 7 } compute c = min {w v deg(v)} = degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) 74

75 Iteration D 1 = { 7 } compute c = min {w v deg(v)} = degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 1 = { 2, 5 } 75

76 Iteration D 1 = { 7 } compute c = min {w v deg(v)} = degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 1 = { 2, 5 } remove D 1 and W 1 76

77 Iteration D 2 = { 6 } 77

78 Iteration D 2 = { 6 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v 78

79 Iteration D 2 = { 6 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) 79

80 Iteration D 2 = { 6 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 2 = { 1 } 80

81 Iteration D 2 = { 6 } compute c = min {w v deg(v)} = 0.25 degree-weighted function: t v = c deg v = deg v compute residual weight: w (v) = w(v) t(v) W 2 = { 1 } remove D 2 and W 2 81

82 Layering algorithm all vertices of unit weight: w(v) = Vertex cover C = W 0 W 1 W 2 = {1, 2, 3, 5} Total cost: w C = 4 82

83 Layering algorithm all vertices of unit weight: w(v) = Optimal vertex cover C = {1, 3, 5} Optimal cost: OPT = w C = 3 83

84 Layering algorithm all vertices of unit weight: w(v) = Vertex cover C = W 0 W 1 W 2 = {1, 2, 3, 5} Total cost: w C = 4 Optimal cost: OPT = w C = 3 w C < 2 OPT 84

85 Approximation factor The layering algorithm for vertex cover problem (assuming arbitrary vertex weights) achieves an approximation guarantee of factor 2. 85

86 Approximation factor The layering algorithm for vertex cover problem (assuming arbitrary vertex weights) achieves an approximation guarantee of factor 2. We need to prove: 1) set C is a vertex cover for G 2) w C 2 OPT 86

87 Proof 1) set C is a vertex cover for G layering algorithm terminates until all nodes are zero degree. all edges have been already covered. 87

88 Proof 2) w C 2 OPT a vertex v C, if v W j, its weight can be decomposed as w v = i j t i (v) a vertex v V C, if v D j, a lower bound on its weight is given by w v i j t i (v) Let C be the optimal vertex cover, in each layer i, C G i is a vertex cover for G i recall the lemma : if w: V Q + is a degree-weighted function, then w V by lemma, t i (C G i ) 2 t i (C G i ) 2 OPT k 1 k 1 w C = i=0 t i C G i 2 i=0 t i C G i 2 w(c ) 88

89 Summary Layering Algorithm Vertex Cover Problem factor = 2 Set Cover Problem factor = f 89

90 Introduction to LP-Duality Zhu Xiaolu 90

91 Introduction to LP-Duality Linear Programming (LP) LP-Duality Theorem a) Weak duality theorem b) LP-duality theorem c) Complementary slackness conditions 91

92 Why use LP? obtaining approximation algorithms using LP Rounding Techniques to solve the linear program and convert the fractional solution into an integral solution. Primal-dual Schema to use the dual of the LP-relaxation in the design of the algorithm. analyzing combinatorially obtained approximation algorithms LP-duality theory is useful using the method of dual fitting 92

93 What is LP? Linear programming: the problem of optimizing (i.e., minimizing or maximizing) a linear function subject to linear inequality constraints. Minimize 7X 1 + X 2 + 5X 3 Subject to X 1 X 2 + 3X X 1 + 2X 2 X 3 6 X 1, X 2, X 3 0 Objective function: The linear function that we want to optimize. Feasible solution: An assignment of values to the variables that satisfies the inequalities. E.g. X=(2,1,3) Cost: The value that the objective function gives to an assignment. E.g =30 93

94 What is LP-Duality? Minimize 7X 1 + X 2 + 5X 3 Subject to X 1 X 2 + 3X X 1 + 2X 2 X 3 6 X 1, X 2, X 3 0 Abstract the constraints: a b c d Find multipliers: y 1, y 2 0 y 1 a y 1 b y 2 c y 2 d Objective function y 1 a + y 2 c y 1 b + y 2 d (1) As large as possible 7X 1 + X 2 + 5X 3 1 X 1 X 2 + 3X X 1 + 2X 2 X 3 = 6X 1 + X 2 + 2X 3 = X 1 + X 2 + 5X 3 2 X 1 X 2 + 3X X 1 + 2X 2 X 3 = 7X 1 + 5X 3 = Range of the objective function Min 94

95 What is LP-Duality? The primal program The dual program Minimize 7X 1 + X 2 + 5X 3 Subject to X 1 X 2 + 3X X 1 + 2X 2 X 3 6 X 1, X 2, X 3 0 Maximize 10Y 1 + 6Y 2 Subject to Y 1 + 5Y 2 7 Y 1 + 2Y 2 1 3Y 1 Y 2 5 Y 1, Y 2 0 n Minimize j=1 c j x j n Subject to j=1 a ij x j b i, i = 1,, m x j 0, j = 1,, n a ij, b i, c j are given rational numbers m Maximize i=1 b i y i m Subject to i=1 a ij y i c j, j = 1,, n y i 0, i = 1,, m a ij, b i, c j are given rational numbers 95

96 Minimize c 1 X c n X n Subject to a 1,1 X a 1,n X n b 1 a m,1 X a m,n X n b m X 1,, X n 0 Minimize 7X 1 + X 2 + 5X 3 Subject to X 1 X 2 + 3X X 1 + 2X 2 X 3 6 X 1, X 2, X 3 0 Y 1 (a 1,1 X a 1,n X n ) + +Y m (a m,1 X a m,n X n ) Y 1 b Y m b m (1) a 1,1 Y a m,1 Y m X (a 1,n Y a m,n Y m ) X n Y 1 b Y m b m (2) Assume: a 1,1 Y a m,1 Y m c 1 a 1,n Y a m,n Y m c n c 1 X c n X n a 1,1 Y a m,1 Y m X (a 1,n Y a m,n Y m ) X n b 1 Y b m Y m (3) Maximize b 1 Y b m Y m Subject to a 1,1 Y a m,1 Y m c 1 a 1,n Y a m,n Y m c n Y 1,, Y m 0 Maximize 10Y 1 + 6Y 2 Subject to Y 1 + 5Y 2 7 Y 1 + 2Y 2 1 3Y 1 Y 2 5 Y 1, Y

97 Weak duality theorem If X =(X 1,,X n ) and Y =(Y 1,,Y m ) are feasible solutions for the primal and dual program, respectively, then m i=1 b i y i n j=1 c j x j 97

98 Weak duality theorem - proof n Minimize j=1 c j x j n Subject to j=1 a ij x j b i, i = 1,, m x j 0, j = 1,, n a ij, b i, c j are given rational numbers m Maximize i=1 b i y i m Subject to i=1 a ij y i c j, j = 1,, n y i 0, i = 1,, m a ij, b i, c j are given rational numbers Since y is dual feasible and x j s are nonnegative, Since x is primal feasible and y j s are nonnegative, Obviously, So, we proof that n j=1 m c j x j a ij y i n j=1 i=1 i=1 j=1 n m n j=1 c j x j b i y i j=1 i=1 m i=1 m x j a ij x j y i b i y i i=1 j=1 i=1 n m m n a ij y i x j = a ij x j y i 98

99 LP-duality theorem If X = (X 1,,X n ) and Y = Y 1,,Y m are optimal solutions for the primal and dual programs, respectively, then n j=1 c j x j m = b i y i i=1 99

100 Complementary slackness conditions Let X and Y be primal and dual feasible solutions, respectively. Then, X and Y are both optimal iff all of the following conditions are satisfied: Primal complementary slackness conditions For each 1 j n: either x j = 0 or m i=1 a ij y i = c j ; And Dual complementary slackness conditions For each 1 i m: either y i = 0 or n j=1 a ij x j = b i. 100

101 Complementary slackness conditions -proof Proof how these two conditions comes up From the proof of weak duality theorem: n n m c j x j a ij y i j=1 j=1 i=1 m i=1 n m x j a ij x j y i b i y i j=1 i=1 (1) (2) By the LP-duality theorem, x and y are both optimal solutions iff: n j=1 c j x j m = b i y i i=1 These happens iff (1) and (2) hold with equality: n c j x j = n m a ij y i x j = m n a ij x j y i = m b i y i j=1 j=1 i=1 i=1 j=1 i=1 101

102 n c j x j = n m a ij y i x j = m n a ij x j y i = m b i y i j=1 j=1 i=1 i=1 j=1 i=1 n m (c j a ij y i j=1 i=1 )x j = 0 Same Process Dual complementary slackness conditions For each 1 j n If x m j > 0 then c j i=1 a ij y i = 0 m Ifc j i=1 a ij y i > 0 then x j = 0 Primal complementary slackness conditions For each 1 j n: either x j = 0 or a ij y i = c j m i=1 102

103 Set Cover via Dual Fitting Wang Zixiao 103

104 Set Cover via Dual Fitting Dual Fitting: help analyze combinatorial algorithms using LP-duality theory Analysis of the greedy algorithm for the set cover problem Give a lower bound 104

105 Dual Fitting Minimization problem: combinatorial algorithm Linear programming relaxation, Dual Primal is fully paid for by the dual Infeasible Feasible (shrunk with factor) Factor Approximation guarantee 105

106 Formulation U: universe S: {S1, S2,, Sk} C: S > Q + Goal:sub-collection with minimum cost 106

107 LP-Relaxation Motivation: NP-hard Polynomial Integer program Fractional program Letting x S : 0 x S 107

108 LP Dual Problem 108

109 LP Dual Problem OPT: cost of optimal integral set cover OPTf: cost of optimal fractional set cover 109

110 Solution ye = price(e)? U = {1, 2, 3} S = {{1, 2, 3}, {1, 3}} C({1, 2, 3}) = 3 C({1, 3}) = 1 Not feasible! Iteration 1: {1, 3} chosen price(1) = price(3) = 0.5 Iteration 2: {1, 2, 3} chosen price(2) = 3 price(1) + price(2) + price(3) = 4 > C({1, 2, 3}) violation 110

111 Solution y e = price(e) H n The vector y defined above is a feasible solution for the dual program There is no set S in S overpacked 111

112 Proof Consider a set S S S = k Consider the iteration for ei: e1, e2,, ei,, ek Select S: price e i C(S) k i + 1 Select S : price e i < C(S) k i + 1 Number the elements in the order of being covered: e1, e2,, ek At least k-i+1 elements uncovered in S price e i C(S) k i + 1 y ei = price(e i) H n C S H n 1 k i + 1 k i=1 y ei C(S) H n 1 k + 1 k = H k H n C(S) C(S) 112

113 The approximation of guarantee of the greedy set cover algorithm is H n Proof: The cost of the set cover picked is: e U price e = H n ( y e ) e U H n OPT f H n OPT 113

114 Constrained Set Multicover Constrained Set Multicover: Each element e has to be covered r e times Greedy algorithm: Pick the most cost-effective set until all elements have been covered by required times 114

115 Analysis of the greedy algorithm 115

116 Analysis of the greedy algorithm 116

117 Analysis of the greedy alrogithm 117

118 Analysis of the greedy algorithm 118

119 Analysis of the greedy algorithm 119

120 Rounding Applied to LP to solve Set Cover Jiao Qing 120

121 Why rounding? Previous slides show LP-relaxation for the set cover problem, but for set cover real applications, they usually need integral solution. Next section will introduce two rounding algorithms and their approximation factor to OPT f and OPT. 121

122 Rounding Algorithms A simple rounding algorithm Randomized rounding 122

123 A simple rounding algorithm Algorithm Description 1. Find an optimal solution to the LP-relaxation. 2. Pick all sets S for which x s 1 in this solution. f Apparently, its algorithm complexity equals to LP problem. 123

124 A simple rounding algorithm Proving that it solves set cover problem. 1. Remember the LP-relaxation: 2. Let C be the collection of picked sets. For e U, e is in at most f sets, one of these sets must has x s 1, therefore, this simple algorithm f at least solve the set cover problem. 124

125 A simple rounding algorithm Firstly we prove that it solves set cover problem. Then we estimate its approximation factor to OPT f and OPT is f. 125

126 Approximation Factor Estimating its approximation factor 1. The rounding process increases x s by a factor of at most f, and further it reduces the number of sets. 2. Thus it gives a desired approximation guarantee of f. 126

127 Randomized Rounding This rounding views the LP-relaxation coefficient x s of sets as probabilities. Using probabilities theory it proves this rounding method has approximation factor O(log n). 127

128 Randomized Rounding Algorithm Description: 1. Find an optimal solution to the LP-relaxation. 2. Independently picks v log n subsets of full set S. 3. Get these subsets union C, check whether C is a valid set cover and has cost OPT f 4v log n. If not, repeat the step 2 and 3 again. 4. The expected number of repetitions needed at most 2. Apparently, its algorithm complexity equals to LP problem. 128

129 Proof Approximation Factor Next,we prove its approximate factor is O(log n). 1. For each set S, its probability of being picked is p s (equals to x s coefficient). 2. Let C be one collection of sets picked. The expected cost of C is: E cost C = p r s is picked c s = p s c s = OPT f s s s s 129

130 Proof Approximation Factor 3. Let us compute the probability that an element a is covered by C. Suppose that a occurs in k sets of S, with the probabilities associated with these sets be p 1,... p k. Because their sum greater than 1. Using elementary calculus, we get: p r a is covered by C k and thus, k 1 1 e p r a is not covered by C 1 e where e is the base of natural logarithms. Hence each element is covered with constant probability by C. 130

131 Proof Approximation Factor 4. And then considering their union C, we get: p r a is not covered by c 5. Summing over all elements a U, we get p r c is not a valid set cover = n 1 e v log n 1 4n With n e v log n 1 4n 6. With: E cost C E cost c i i =OPT f v log n = OPT f v log n Applying Markov s Inequality with t=opt f 4v log n, we get: p r cost C OPT f 4v log n

132 Proof Approximation Factor 7. With p r c is not a valid set cover 1 4 p r cost C OPT f 4v log n 1 4 Hence, p r C is a valid set cover and has cost OPT f 4v log n

133 Approximation Factor The chance one could find a set cover and has a cost smaller than O(log n)opt f is bigger than 50%, and the expected number of iteration is two. Thus this randomized rounding algorithm provides a factor O(log n) approximation, with a high probability guarantee. 133

134 Summary Those two algorithm provide us with factor f and O(log n) approximation, which remind us the factor of greedy and layering algorithms. Even through LP-relaxation, right now we could only find algorithm with factor of f and O log n. 134

135 Set Cover via the Primal-dual Schema Zhang Hao 135

136 Primal-dual Schema? A broad outline for the algorithm The details have to be designed individually to specific problems Good approximation factors and good running times 136

137 Primal-dual Program(Recall) The primal program The dual program n Minimize j=1 c j x j n Subject to j=1 a ij x j b i, i = 1,, m x j 0, j = 1,, n a ij, b i, c j are given rational numbers m Maximize i=1 b i y i m Subject to i=1 a ij y i c j, j = 1,, n y i 0, i = 1,, m a ij, b i, c j are given rational numbers 137

138 Standard Complementary slackness conditions (Recall) Let x and y be primal and dual feasible solutions, respectively. Then, x and y are both optimal iff all of the following conditions are satisfied: Primal complementary slackness conditions For each 1 j n: either x j = 0 or m i=1 a ij y i = c j ; And Dual complementary slackness conditions For each 1 i m: either y i = 0 or n j=1 a ij x j = b i. 138

139 Relaxed Complementary slackness conditions Let x and y be primal and dual feasible solutions, respectively. Primal complementary slackness conditions For each 1 j n: either x j = 0 or c i m α i=1 a ij y i c i ; And Dual complementary slackness conditions n For each 1 i m: either y i = 0 or b i j=1 a ij x j βb i. α, β => The optimality of x and y solutions If α = β = 1 => standard complementary slackness conditions 139

140 Overview of the Schema Pick a primal infeasible solution x, and a dual feasible solution y, such that the slackness conditions are satisfied for chosen α and β (usually x = 0, y = 0). Iteratively improve the feasibility of x (integrally) and the optimality of y, such that the conditions remain satisfied, until x becomes feasible. 140

141 Proposition Primal-dual Schema An approximation guarantee of αβ is achieved using this schema. Proof: ( c i m α i=1 a ij y i ) ( j=1 a ij x j βb i ) n j=1 c j x j α n j=1 m i=1 a ij y i x j = α m i=1 n j=1 a ij x j n y i αβ m i=1 b i y i n j=1 c j x j (primal and dual condition) m αβ b i y i αβ OPT f αβ OPT i=1 141

142 Primal-dual Schema Applied to Set Cover Set Cover(Recall) Standard Primal Program The Dual Program minimize s S c(s) x s maximize e U y e subject to e:e S x s 1, e U x s {0,1}, S S subject to e:e S y e c S, S S y e 0, e U 142

143 Relaxed Complementary Primal-dual Schema Applied to Set Cover Slackness Conditions Definition: Set S is called tight if e:e S y e = c(s) Set α = 1, β = f(to obtain approximation factor f) Primal Conditions Pick only tight sets in the cover S S: x S 0 y e = c(s) e:e S Dual Conditions Each e, y e 0, can be covered at most f times - trivially satisfied e: y e 0 S:e S x S f 143

144 Algorithm (Set Cover factor Primal-dual Schema Applied to Set Cover f) Initialization: x = 0, y = 0. Until all elements are covered, do Pick an uncovered element e, and raise y e until some set goes tight. Pick all tight sets in the cover and update x. Declare all the elements occuring in these sets as covered. Output the set cover x. 144

145 Theorem Primal-dual Schema Applied to Set Cover The algorithm can achieve an approximation factor of f. Proof Clearly, there will be no uncovered and no overpacked sets in the end. Thus, primal and dual solutions will be feasible. Since they satisfy the relaxed complementary slackness conditions with α = 1, β = f, the approximation factor is f. 145

146 Conclusion Combinatorial algorithms are greedy and local. LP-based algorithms are global. 146

147 Conclusion Combinatorial algorithms Greedy algorithms Factor: Hn Layering algorithms Factor: f LP-based algorithms Rounding Factor: f, Hn Primal Dual Schema Factor: f 147

### A List Heuristic for Vertex Cover

A List Heuristic for Vertex Cover Happy Birthday Vasek! David Avis McGill University Tomokazu Imamura Kyoto University Operations Research Letters (to appear) Online: http://cgm.cs.mcgill.ca/ avis revised:

### Approximation Algorithms: The Primal-Dual Method. My T. Thai

Approximation Algorithms: The Primal-Dual Method My T. Thai 1 Overview of the Primal-Dual Method Consider the following primal program, called P: min st n c j x j j=1 n a ij x j b i j=1 x j 0 Then the

### Mathematical and Algorithmic Foundations Linear Programming and Matchings

Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

### Repetition: Primal Dual for Set Cover

Repetition: Primal Dual for Set Cover Primal Relaxation: k min i=1 w ix i s.t. u U i:u S i x i 1 i {1,..., k} x i 0 Dual Formulation: max u U y u s.t. i {1,..., k} u:u S i y u w i y u 0 Harald Räcke 428

### CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 36 CS 473: Algorithms, Spring 2018 LP Duality Lecture 20 April 3, 2018 Some of the

### 12 Introduction to LP-Duality

12 Introduction to LP-Duality A large fraction of the theory of approximation algorithms, as we know it today, is built around linear programming (LP). In Section 12.1 we will review some key concepts

### College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 CS G399: Algorithmic Power Tools I Scribe: Eric Robinson Lecture Outline: Linear Programming: Vertex Definitions

### Approximation Algorithms

Approximation Algorithms Frédéric Giroire FG Simplex 1/11 Motivation Goal: Find good solutions for difficult problems (NP-hard). Be able to quantify the goodness of the given solution. Presentation of

### Approximation Algorithms

Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours

### Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

COMPSCI 632: Approximation Algorithms September 18, 2017 Lecturer: Debmalya Panigrahi Lecture 7 Scribe: Xiang Wang 1 Overview In this lecture, we will use Primal-Dual method to design approximation algorithms

### Dual-fitting analysis of Greedy for Set Cover

Dual-fitting analysis of Greedy for Set Cover We showed earlier that the greedy algorithm for set cover gives a H n approximation We will show that greedy produces a solution of cost at most H n OPT LP

### ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

1. Computability, Complexity and Algorithms Given a simple directed graph G = (V, E), a cycle cover is a set of vertex-disjoint directed cycles that cover all vertices of the graph. 1. Show that there

### Graph Theory and Optimization Approximation Algorithms

Graph Theory and Optimization Approximation Algorithms Nicolas Nisse Université Côte d Azur, Inria, CNRS, I3S, France October 2018 Thank you to F. Giroire for some of the slides N. Nisse Graph Theory and

### CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

### Steiner Trees and Forests

Massachusetts Institute of Technology Lecturer: Adriana Lopez 18.434: Seminar in Theoretical Computer Science March 7, 2006 Steiner Trees and Forests 1 Steiner Tree Problem Given an undirected graph G

### Combinatorial Optimization

Combinatorial Optimization Frank de Zeeuw EPFL 2012 Today Introduction Graph problems - What combinatorial things will we be optimizing? Algorithms - What kind of solution are we looking for? Linear Programming

### Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity Marc Uetz University of Twente m.uetz@utwente.nl Lecture 5: sheet 1 / 26 Marc Uetz Discrete Optimization Outline 1 Min-Cost Flows

### Primal-Dual Methods for Approximation Algorithms

Primal-Dual Methods for Approximation Algorithms Nadia Hardy, April 2004 The following is based on: Approximation Algorithms for NP-Hard Problems. D.Hochbaum, ed. Chapter 4: The primal-dual method for

### 1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

### / Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

### 4 Greedy Approximation for Set Cover

COMPSCI 532: Design and Analysis of Algorithms October 14, 2015 Lecturer: Debmalya Panigrahi Lecture 12 Scribe: Allen Xiao 1 Overview In this lecture, we introduce approximation algorithms and their analysis

### CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved.

### Approximation Algorithms

Approximation Algorithms Subhash Suri June 5, 2018 1 Figure of Merit: Performance Ratio Suppose we are working on an optimization problem in which each potential solution has a positive cost, and we want

### /633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

### 4 Integer Linear Programming (ILP)

TDA6/DIT37 DISCRETE OPTIMIZATION 17 PERIOD 3 WEEK III 4 Integer Linear Programg (ILP) 14 An integer linear program, ILP for short, has the same form as a linear program (LP). The only difference is that

### Lecture Overview. 2 Shortest s t path. 2.1 The LP. 2.2 The Algorithm. COMPSCI 530: Design and Analysis of Algorithms 11/14/2013

COMPCI 530: Design and Analysis of Algorithms 11/14/2013 Lecturer: Debmalya Panigrahi Lecture 22 cribe: Abhinandan Nath 1 Overview In the last class, the primal-dual method was introduced through the metric

### Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Introduction to Mathematical Programming IE496 Final Review Dr. Ted Ralphs IE496 Final Review 1 Course Wrap-up: Chapter 2 In the introduction, we discussed the general framework of mathematical modeling

### Integer Programming Theory

Integer Programming Theory Laura Galli October 24, 2016 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

### 1. Lecture notes on bipartite matching

Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

### 1 Linear programming relaxation

Cornell University, Fall 2010 CS 6820: Algorithms Lecture notes: Primal-dual min-cost bipartite matching August 27 30 1 Linear programming relaxation Recall that in the bipartite minimum-cost perfect matching

### Approximation Algorithms

Approximation Algorithms Given an NP-hard problem, what should be done? Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one of three desired features. Solve problem to optimality.

### Linear programming and duality theory

Linear programming and duality theory Complements of Operations Research Giovanni Righini Linear Programming (LP) A linear program is defined by linear constraints, a linear objective function. Its variables

### Notes for Lecture 24

U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

### ON THE EQUIVALENCE BETWEEN THE PRIMAL-DUAL SCHEMA AND THE LOCAL RATIO TECHNIQUE

ON THE EQUIVALENCE BETWEEN THE PRIMAL-DUAL SCHEMA AND THE LOCAL RATIO TECHNIQUE REUVEN BAR-YEHUDA AND DROR RAWITZ Abstract. We discuss two approximation paradigms that were used to construct many approximation

### Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graphs and Network Flows IE411 Lecture 21 Dr. Ted Ralphs IE411 Lecture 21 1 Combinatorial Optimization and Network Flows In general, most combinatorial optimization and integer programming problems are

### LECTURES 3 and 4: Flows and Matchings

LECTURES 3 and 4: Flows and Matchings 1 Max Flow MAX FLOW (SP). Instance: Directed graph N = (V,A), two nodes s,t V, and capacities on the arcs c : A R +. A flow is a set of numbers on the arcs such that

### Stanford University CS261: Optimization Handout 1 Luca Trevisan January 4, 2011

Stanford University CS261: Optimization Handout 1 Luca Trevisan January 4, 2011 Lecture 1 In which we describe what this course is about and give two simple examples of approximation algorithms 1 Overview

### Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R

### Linear Programming Motivation: The Diet Problem

Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Network Flows & Applications NP-completeness Now Linear Programming and the Simplex Method Hung Q. Ngo (SUNY at Buffalo) CSE 531 1

### 11 Linear Programming

11 Linear Programming 11.1 Definition and Importance The final topic in this course is Linear Programming. We say that a problem is an instance of linear programming when it can be effectively expressed

### 6 Randomized rounding of semidefinite programs

6 Randomized rounding of semidefinite programs We now turn to a new tool which gives substantially improved performance guarantees for some problems We now show how nonlinear programming relaxations can

### Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Section Notes 5 Review of Linear Programming Applied Math / Engineering Sciences 121 Week of October 15, 2017 The following list of topics is an overview of the material that was covered in the lectures

### Linear Programming Duality and Algorithms

COMPSCI 330: Design and Analysis of Algorithms 4/5/2016 and 4/7/2016 Linear Programming Duality and Algorithms Lecturer: Debmalya Panigrahi Scribe: Tianqi Song 1 Overview In this lecture, we will cover

### Lecture 7: Asymmetric K-Center

Advanced Approximation Algorithms (CMU 18-854B, Spring 008) Lecture 7: Asymmetric K-Center February 5, 007 Lecturer: Anupam Gupta Scribe: Jeremiah Blocki In this lecture, we will consider the K-center

### Practice Final Exam 2: Solutions

lgorithm Design Techniques Practice Final Exam 2: Solutions 1. The Simplex lgorithm. (a) Take the LP max x 1 + 2x 2 s.t. 2x 1 + x 2 3 x 1 x 2 2 x 1, x 2 0 and write it in dictionary form. Pivot: add x

### Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class)

CPS 590.1 - Linear and integer programming Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class) Please read the rules for assignments on the course web page. Contact Vince (conitzer@cs.duke.edu)

### Primal-Dual Algorithms for Connected Facility Location Problems

Primal-Dual Algorithms for Connected Facility Location Problems Lecture Notes for the course Approximation algorithms by Martin Korff (korff@diku.dk) Matias Sevel Rasmussen (sevel@math.ku.dk) Tor Justesen

### Convex Optimization CMU-10725

Convex Optimization CMU-10725 Ellipsoid Methods Barnabás Póczos & Ryan Tibshirani Outline Linear programs Simplex algorithm Running time: Polynomial or Exponential? Cutting planes & Ellipsoid methods for

### x ji = s i, i N, (1.1)

Dual Ascent Methods. DUAL ASCENT In this chapter we focus on the minimum cost flow problem minimize subject to (i,j) A {j (i,j) A} a ij x ij x ij {j (j,i) A} (MCF) x ji = s i, i N, (.) b ij x ij c ij,

### Approximation Algorithms

Chapter 8 Approximation Algorithms Algorithm Theory WS 2016/17 Fabian Kuhn Approximation Algorithms Optimization appears everywhere in computer science We have seen many examples, e.g.: scheduling jobs

### Design and Analysis of Algorithms (V)

Design and Analysis of Algorithms (V) An Introduction to Linear Programming Guoqiang Li School of Software, Shanghai Jiao Tong University Homework Assignment 2 is announced! (deadline Apr. 10) Linear Programming

### 1 Better Approximation of the Traveling Salesman

Stanford University CS261: Optimization Handout 4 Luca Trevisan January 13, 2011 Lecture 4 In which we describe a 1.5-approximate algorithm for the Metric TSP, we introduce the Set Cover problem, observe

### Lecture 3: Totally Unimodularity and Network Flows

Lecture 3: Totally Unimodularity and Network Flows (3 units) Outline Properties of Easy Problems Totally Unimodular Matrix Minimum Cost Network Flows Dijkstra Algorithm for Shortest Path Problem Ford-Fulkerson

### Algorithm Design and Analysis

Algorithm Design and Analysis LECTURE 29 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/7/2016 Approximation

### COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

### AM 121: Intro to Optimization Models and Methods Fall 2017

AM 121: Intro to Optimization Models and Methods Fall 2017 Lecture 10: Dual Simplex Yiling Chen SEAS Lesson Plan Interpret primal simplex in terms of pivots on the corresponding dual tableau Dictionaries

### Polynomial-Time Approximation Algorithms

6.854 Advanced Algorithms Lecture 20: 10/27/2006 Lecturer: David Karger Scribes: Matt Doherty, John Nham, Sergiy Sidenko, David Schultz Polynomial-Time Approximation Algorithms NP-hard problems are a vast

### 11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

### In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

2 Basics In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2.1 Notation Let A R m n be a matrix with row index set M = {1,...,m}

### 5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY 5.1 DUALITY Associated with every linear programming problem (the primal) is another linear programming problem called its dual. If the primal involves

### COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

### Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Local Search: Max-Cut, Facility Location Date: 2/3/2007 In previous lectures we saw how dynamic programming could be

### Lecture 14: Linear Programming II

A Theorist s Toolkit (CMU 18-859T, Fall 013) Lecture 14: Linear Programming II October 3, 013 Lecturer: Ryan O Donnell Scribe: Stylianos Despotakis 1 Introduction At a big conference in Wisconsin in 1948

### 11. APPROXIMATION ALGORITHMS

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

### Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Linear Programming Larry Blume Cornell University & The Santa Fe Institute & IHS Linear Programs The general linear program is a constrained optimization problem where objectives and constraints are all

### CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm Instructor: Shaddin Dughmi Outline 1 Recapping the Ellipsoid Method 2 Complexity of Convex Optimization

### Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

Linear Programming 3 describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. Linear Programming consists of three parts: A set of

### DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

DM545 Linear and Integer Programming Lecture 2 The Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 3. 4. Standard Form Basic Feasible Solutions

### CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29

CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 29 CS 473: Algorithms, Spring 2018 Simplex and LP Duality Lecture 19 March 29, 2018

### 1 The Traveling Salesperson Problem (TSP)

CS 598CSC: Approximation Algorithms Lecture date: January 23, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im In the previous lecture, we had a quick overview of several basic aspects of approximation

### Models of distributed computing: port numbering and local algorithms

Models of distributed computing: port numbering and local algorithms Jukka Suomela Adaptive Computing Group Helsinki Institute for Information Technology HIIT University of Helsinki FMT seminar, 26 February

### AMS : Combinatorial Optimization Homework Problems - Week V

AMS 553.766: Combinatorial Optimization Homework Problems - Week V For the following problems, A R m n will be m n matrices, and b R m. An affine subspace is the set of solutions to a a system of linear

### 6. Lecture notes on matroid intersection

Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

### MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

MA4254: Discrete Optimization Defeng Sun Department of Mathematics National University of Singapore Office: S14-04-25 Telephone: 6516 3343 Aims/Objectives: Discrete optimization deals with problems of

### Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar http://www.robots.ox.ac.uk/~oval/ Outline Linear Programming Matroid Polytopes Polymatroid Polyhedron Ax b A : m x n matrix b:

### Linear Programming in Small Dimensions

Linear Programming in Small Dimensions Lekcija 7 sergio.cabello@fmf.uni-lj.si FMF Univerza v Ljubljani Edited from slides by Antoine Vigneron Outline linear programming, motivation and definition one dimensional

### 3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

### Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Approximation slides 1 An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 2 Linear independence A collection of row vectors {v T i } are independent

### Approximation Basics

Milestones, Concepts, and Examples Xiaofeng Gao Department of Computer Science and Engineering Shanghai Jiao Tong University, P.R.China Spring 2015 Spring, 2015 Xiaofeng Gao 1/53 Outline History NP Optimization

### 2 The Fractional Chromatic Gap

C 1 11 2 The Fractional Chromatic Gap As previously noted, for any finite graph. This result follows from the strong duality of linear programs. Since there is no such duality result for infinite linear

### Lecture 5: Duality Theory

Lecture 5: Duality Theory Rajat Mittal IIT Kanpur The objective of this lecture note will be to learn duality theory of linear programming. We are planning to answer following questions. What are hyperplane

### Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 009) Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009

### In this lecture, we ll look at applications of duality to three problems:

Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,

### Approximability Results for the p-center Problem

Approximability Results for the p-center Problem Stefan Buettcher Course Project Algorithm Design and Analysis Prof. Timothy Chan University of Waterloo, Spring 2004 The p-center

### Approximation Algorithms

18.433 Combinatorial Optimization Approximation Algorithms November 20,25 Lecturer: Santosh Vempala 1 Approximation Algorithms Any known algorithm that finds the solution to an NP-hard optimization problem

### Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 2009) Lecture 10,11: General Matching Polytope, Maximum Flow Lecturer: Mohammad R Salavatipour Date: Oct 6 and 8, 2009 Scriber: Mohammad

### Approximation Algorithms

Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A new 4 credit unit course Part of Theoretical Computer Science courses at the Department of Mathematics There will be 4 hours

### Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

University of Southern California Viterbi School of Engineering Daniel J. Epstein Department of Industrial and Systems Engineering ISE 330: Introduction to Operations Research - Deterministic Models Fall

### Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

Outline Combinatorial Optimization 2 Rumen Andonov Irisa/Symbiose and University of Rennes 1 9 novembre 2009 Finite Systems of Linear Inequalities, variants of Farkas Lemma Duality theory in Linear Programming

### Artificial Intelligence

Artificial Intelligence Combinatorial Optimization G. Guérard Department of Nouvelles Energies Ecole Supérieur d Ingénieurs Léonard de Vinci Lecture 1 GG A.I. 1/34 Outline 1 Motivation 2 Geometric resolution

### Math 5490 Network Flows

Math 590 Network Flows Lecture 7: Preflow Push Algorithm, cont. Stephen Billups University of Colorado at Denver Math 590Network Flows p./6 Preliminaries Optimization Seminar Next Thursday: Speaker: Ariela

### c 2005 Society for Industrial and Applied Mathematics

SIAM J. DISCRETE MATH. Vol. 19, No. 3, pp. 762 797 c 2005 Society for Industrial and Applied Mathematics ON THE EQUIVALENCE BETWEEN THE PRIMAL-DUAL SCHEMA AND THE LOCAL RATIO TECHNIQUE REUVEN BAR-YEHUDA

### 11.1 Facility Location

CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Facility Location ctd., Linear Programming Date: October 8, 2007 Today we conclude the discussion of local

### Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.

CS261, Winter 2017. Instructor: Ashish Goel. Problem set 2 Electronic submission to Gradescope due 11:59pm Thursday 2/16. Form a group of 2-3 students that is, submit one homework with all of your names.

### Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Iterative Methods in Combinatorial Optimization R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University ravi@cmu.edu Combinatorial Optimization Easy Problems : polynomial

### Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14

600.363 Introduction to Algorithms / 600.463 Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14 23.1 Introduction We spent last week proving that for certain problems,

### Computer Science is no more about computers than astronomy is about telescopes. E. W. Dijkstra.

Computer Science is no more about computers than astronomy is about telescopes E. W. Dijkstra. University of Alberta Improved approximation algorithms for Min-Max Tree Cover, Bounded Tree Cover, Shallow-Light

### A Primal-Dual Approximation Algorithm for Partial Vertex Cover: Making Educated Guesses

A Primal-Dual Approximation Algorithm for Partial Vertex Cover: Making Educated Guesses Julián Mestre Department of Computer Science University of Maryland, College Park, MD 20742 jmestre@cs.umd.edu Abstract