Approximation Algorithms


 Adrian Nichols
 1 years ago
 Views:
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. Suboptimal 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 subcollection 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 (LPbased) 14
15 Combinatorial & LPbased Combinatorial algorithms Greedy algorithms Layering algorithms LPbased 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 + degreeweighted function: c > 0 s.t. v V, w v = c deg (v) 49
50 Vertex Cover Problem arbitrary weight function: w: V Q + degreeweighted function: c > 0 s.t. v V, w v = c deg (v) 50
51 Degree weighted function Lemma: If w: V Q + is a degreeweighted function. Then w V 2 OPT 51
52 Proof: Lemma: If w: V Q + is a degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted function. Then w V 2 OPT degreeweighted 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 degreeweighted 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 degreeweighted 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 nonzero 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 degreeweighted 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 degreeweighted 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 degreeweighted 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 degreeweighted 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)} = degreeweighted function: t v = c deg v = deg v 73
74 Iteration D 1 = { 7 } compute c = min {w v deg(v)} = degreeweighted 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)} = degreeweighted 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)} = degreeweighted 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 degreeweighted function: t v = c deg v = deg v 78
79 Iteration D 2 = { 6 } compute c = min {w v deg(v)} = 0.25 degreeweighted 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 degreeweighted 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 degreeweighted 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 degreeweighted 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 LPDuality Zhu Xiaolu 90
91 Introduction to LPDuality Linear Programming (LP) LPDuality Theorem a) Weak duality theorem b) LPduality 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. Primaldual Schema to use the dual of the LPrelaxation in the design of the algorithm. analyzing combinatorially obtained approximation algorithms LPduality 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 LPDuality? 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 LPDuality? 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 LPduality 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 LPduality 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 LPduality 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:subcollection with minimum cost 106
107 LPRelaxation Motivation: NPhard 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 ki+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 costeffective 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 LPrelaxation 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 LPrelaxation. 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 LPrelaxation: 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 LPrelaxation 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 LPrelaxation. 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 LPrelaxation, right now we could only find algorithm with factor of f and O log n. 134
135 Set Cover via the Primaldual Schema Zhang Hao 135
136 Primaldual 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 Primaldual 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 Primaldual 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 Primaldual 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 Primaldual 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 Primaldual 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 Primaldual 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. LPbased algorithms are global. 146
147 Conclusion Combinatorial algorithms Greedy algorithms Factor: Hn Layering algorithms Factor: f LPbased 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:
More informationApproximation Algorithms: The PrimalDual Method. My T. Thai
Approximation Algorithms: The PrimalDual Method My T. Thai 1 Overview of the PrimalDual 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
More informationRepetition: 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
More informationSteiner 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
More informationDiscrete Optimization 2010 Lecture 5 MinCost Flows & Total Unimodularity
Discrete Optimization 2010 Lecture 5 MinCost Flows & Total Unimodularity Marc Uetz University of Twente m.uetz@utwente.nl Lecture 5: sheet 1 / 26 Marc Uetz Discrete Optimization Outline 1 MinCost Flows
More information/ 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
More informationLinear 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
More informationON THE EQUIVALENCE BETWEEN THE PRIMALDUAL SCHEMA AND THE LOCAL RATIO TECHNIQUE
ON THE EQUIVALENCE BETWEEN THE PRIMALDUAL SCHEMA AND THE LOCAL RATIO TECHNIQUE REUVEN BARYEHUDA AND DROR RAWITZ Abstract. We discuss two approximation paradigms that were used to construct many approximation
More informationTraveling 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
More informationSection 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
More informationPolynomialTime Approximation Algorithms
6.854 Advanced Algorithms Lecture 20: 10/27/2006 Lecturer: David Karger Scribes: Matt Doherty, John Nham, Sergiy Sidenko, David Schultz PolynomialTime Approximation Algorithms NPhard problems are a vast
More informationAM 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
More information1 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.5approximate algorithm for the Metric TSP, we introduce the Set Cover problem, observe
More information5. DUAL LP, SOLUTION INTERPRETATION, AND POSTOPTIMALITY
5. DUAL LP, SOLUTION INTERPRETATION, AND POSTOPTIMALITY 5.1 DUALITY Associated with every linear programming problem (the primal) is another linear programming problem called its dual. If the primal involves
More informationAlgorithm 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
More informationCOT 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
More informationIn 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}
More informationTopic: Local Search: MaxCut, Facility Location Date: 2/13/2007
CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Local Search: MaxCut, Facility Location Date: 2/3/2007 In previous lectures we saw how dynamic programming could be
More information3 NoWait Job Shops with Variable Processing Times
3 NoWait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical nowait job shop setting, we are given a set of processing times for each operation. We may select
More informationMA4254: 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: S140425 Telephone: 6516 3343 Aims/Objectives: Discrete optimization deals with problems of
More information1 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
More information6. 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
More informationLecture 4: Primal Dual Matching Algorithm and NonBipartite 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 NonBipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009
More information11.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
More informationProblem 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 23 students that is, submit one homework with all of your names.
More informationMath 5593 Linear Programming Lecture Notes
Math 5593 Linear Programming Lecture Notes Unit II: Theory & Foundations (Convex Analysis) University of Colorado Denver, Fall 2013 Topics 1 Convex Sets 1 1.1 Basic Properties (LuenbergerYe Appendix B.1).........................
More information11. 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
More informationCS261: Problem Set #2
CS261: Problem Set #2 Due by 11:59 PM on Tuesday, February 9, 2016 Instructions: (1) Form a group of 13 students. You should turn in only one writeup for your entire group. (2) Submission instructions:
More informationDiscrete Optimization. Lecture Notes 2
Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The
More informationCOMS 4771 Support Vector Machines. Nakul Verma
COMS 4771 Support Vector Machines Nakul Verma Last time Decision boundaries for classification Linear decision boundary (linear classification) The Perceptron algorithm Mistake bound for the perceptron
More informationLecture 2. 1 Introduction. 2 The Set Cover Problem. COMPSCI 632: Approximation Algorithms August 30, 2017
COMPSCI 632: Approximation Algorithms August 30, 2017 Lecturer: Debmalya Panigrahi Lecture 2 Scribe: Nat Kell 1 Introduction In this lecture, we examine a variety of problems for which we give greedy approximation
More informationSupport Vector Machines. James McInerney Adapted from slides by Nakul Verma
Support Vector Machines James McInerney Adapted from slides by Nakul Verma Last time Decision boundaries for classification Linear decision boundary (linear classification) The Perceptron algorithm Mistake
More informationApplied Lagrange Duality for Constrained Optimization
Applied Lagrange Duality for Constrained Optimization Robert M. Freund February 10, 2004 c 2004 Massachusetts Institute of Technology. 1 1 Overview The Practical Importance of Duality Review of Convexity
More information10. EXTENDING TRACTABILITY
0. EXTENDING TRACTABILITY finding small vertex covers solving NPhard problems on trees circular arc coverings vertex cover in bipartite graphs Lecture slides by Kevin Wayne Copyright 005 PearsonAddison
More information15451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015
15451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 While we have good algorithms for many optimization problems, the previous lecture showed that many
More information3 INTEGER LINEAR PROGRAMMING
3 INTEGER LINEAR PROGRAMMING PROBLEM DEFINITION Integer linear programming problem (ILP) of the decision variables x 1,..,x n : (ILP) subject to minimize c x j j n j= 1 a ij x j x j 0 x j integer n j=
More informationThe complement of PATH is in NL
340 The complement of PATH is in NL Let c be the number of nodes in graph G that are reachable from s We assume that c is provided as an input to M Given G, s, t, and c the machine M operates as follows:
More informationLinear Programming and Integer Linear Programming
Linear Programming and Integer Linear Programming Kurt Mehlhorn May 26, 2013 revised, May 20, 2014 1 Introduction 2 2 History 3 3 Expressiveness 3 4 Duality 4 5 Algorithms 8 5.1 FourierMotzkin Elimination............................
More informationIntroduction to Constrained Optimization
Introduction to Constrained Optimization Duality and KKT Conditions Pratik Shah {pratik.shah [at] lnmiit.ac.in} The LNM Institute of Information Technology www.lnmiit.ac.in February 13, 2013 LNMIIT MLPR
More informationConstruction of MinimumWeight Spanners Mikkel Sigurd Martin Zachariasen
Construction of MinimumWeight Spanners Mikkel Sigurd Martin Zachariasen University of Copenhagen Outline Motivation and Background MinimumWeight Spanner Problem Greedy Spanner Algorithm Exact Algorithm:
More informationClustering: CentroidBased Partitioning
Clustering: CentroidBased Partitioning Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong 1 / 29 Y Tao Clustering: CentroidBased Partitioning In this lecture, we
More informationOutline: Finish uncapacitated simplex method Negative cost cycle algorithm The maxflow problem Maxflow mincut theorem
Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The maxflow problem Maxflow mincut theorem Uncapacitated Networks: Basic primal and dual solutions Flow conservation constraints
More informationApproximate Labeling via Graph Cuts Based on Linear Programming
1 Approximate Labeling via Graph Cuts Based on Linear Programming Nikos Komodakis, Georgios Tziritas Computer Science Department, University of Crete Emails: {komod, tziritas}@csd.uoc.gr Abstract A new
More informationCombinatorial Interpretations of Dual Fitting and Primal Fitting
Combinatorial Interpretations of Dual Fitting and Primal Fitting Ari Freund Dror Rawitz May 3, 2011 Abstract We present two new combinatorial approximation frameworks that are not based on LPduality, or
More informationGENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI
GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI Outline Review the column generation in Generalized Assignment Problem (GAP) GAP Examples in Branch and Price 2 Assignment Problem The assignment
More informationThe Encoding Complexity of Network Coding
The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network
More informationCS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri
CS 598CSC: Approximation Algorithms Lecture date: March, 011 Instructor: Chandra Chekuri Scribe: CC Local search is a powerful and widely used heuristic method (with various extensions). In this lecture
More informationThe RemoteClique Problem Revisited
Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE0066 0060101 The RemoteClique
More informationAlgorithmic Game Theory and Applications. Lecture 6: The Simplex Algorithm
Algorithmic Game Theory and Applications Lecture 6: The Simplex Algorithm Kousha Etessami Recall our example 1 x + y
More informationGreedy Approximations
CS 787: Advanced Algorithms Instructor: Dieter van Melkebeek Greedy Approximations Approximation algorithms give a solution to a problem in polynomial time, at most a given factor away from the correct
More informationMinimum sum multicoloring on the edges of trees
Minimum sum multicoloring on the edges of trees Dániel Marx a,1 a Department of Computer Science and Information Theory, Budapest University of Technology and Economics, H1521 Budapest, Hungary. Abstract
More informationAlgorithms for Data Science
Algorithms for Data Science CSOR W4246 Eleni Drinea Computer Science Department Columbia University Thursday, October 1, 2015 Outline 1 Recap 2 Shortest paths in graphs with nonnegative edge weights (Dijkstra
More informationScheduling, Map Coloring, and Graph Coloring
Scheduling, Map Coloring, and Graph Coloring Scheduling via Graph Coloring: Final Exam Example Suppose want to schedule some ;inal exams for CS courses with following course numbers: 1007, 3137, 3157,
More informationCombinatorial Optimization  Lecture 14  TSP EPFL
Combinatorial Optimization  Lecture 14  TSP EPFL 2012 Plan Simple heuristics Alternative approaches Best heuristics: local search Lower bounds from LP Moats Simple Heuristics Nearest Neighbor (NN) Greedy
More informationThe Online Connected Facility Location Problem
The Online Connected Facility Location Problem Mário César San Felice 1, David P. Willamson 2, and Orlando Lee 1 1 Unicamp, Institute of Computing, Campinas SP 13083852, Brazil felice@ic.unicamp.br, lee@ic.unicamp.br
More information9.5 Equivalence Relations
9.5 Equivalence Relations You know from your early study of fractions that each fraction has many equivalent forms. For example, 2, 2 4, 3 6, 2, 3 6, 5 30,... are all different ways to represent the same
More informationMathematical Programming and Research Methods (Part II)
Mathematical Programming and Research Methods (Part II) 4. Convexity and Optimization Massimiliano Pontil (based on previous lecture by Andreas Argyriou) 1 Today s Plan Convex sets and functions Types
More informationCME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 03/02/17
CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#3 Due at the beginning of class Thursday 03/02/17 1. Consider a model of a nonbipartite undirected graph in which
More informationCPSC 536N: Randomized Algorithms Term 2. Lecture 10
CPSC 536N: Randomized Algorithms 0111 Term Prof. Nick Harvey Lecture 10 University of British Columbia In the first lecture we discussed the Max Cut problem, which is NPcomplete, and we presented a very
More informationIncremental Algorithms for the Minimum Cost Flow Problem
Incremental Algorithms for the Minimum Cost Flow Problem LAURA CIUPALĂ Department of Computer Science University Transilvania of Braşov Iuliu Maniu Street 50, Braşov ROMANIA laura_ciupala@yahoo.com Abstract:
More informationThe External Network Problem
The External Network Problem Jan van den Heuvel and Matthew Johnson CDAM Research Report LSECDAM200415 December 2004 Abstract The connectivity of a communications network can often be enhanced if the
More informationarxiv: v1 [cs.ds] 15 Jan 2014
Better Approximation Algorithms for Maximum Asymmetric Traveling Salesman and Shortest Superstring Katarzyna Paluch Institute of Computer Science, University of Wrocław abraka@cs.uni.wroc.pl arxiv:1401.3670v1
More informationSUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING
Bulletin of Mathematics Vol. 06, No. 0 (20), pp.. SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING Eddy Roflin, Sisca Octarina, Putra B. J Bangun,
More informationCOMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)
COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section 35.135.2(CLRS) 1 Coping with NPCompleteness Bruteforce search: This is usually only a viable option for small
More information1 Variations of the Traveling Salesman Problem
Stanford University CS26: Optimization Handout 3 Luca Trevisan January, 20 Lecture 3 In which we prove the equivalence of three versions of the Traveling Salesman Problem, we provide a 2approximate algorithm,
More informationApproximation Algorithms Based on the PrimalDual Method
CSE 594: Combinatorial and Graph Algorithms Lecturer: Hung Q. Ngo SUNY at Buffalo, Spring 2005 Last update: March 11, 2005 Approximation Algorithms Based on the PrimalDual Method The primaldual method
More informationRigidity, connectivity and graph decompositions
First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework
More informationSparse Optimization Lecture: Proximal Operator/Algorithm and Lagrange Dual
Sparse Optimization Lecture: Proximal Operator/Algorithm and Lagrange Dual Instructor: Wotao Yin July 2013 online discussions on piazza.com Those who complete this lecture will know learn the proximal
More informationSolution for Homework set 3
TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and nonnegative integral capacities
More informationBCN Decision and Risk Analysis. Syed M. Ahmed, Ph.D.
Linear Programming Module Outline Introduction The Linear Programming Model Examples of Linear Programming Problems Developing Linear Programming Models Graphical Solution to LP Problems The Simplex Method
More informationA graph is finite if its vertex set and edge set are finite. We call a graph with just one vertex trivial and all other graphs nontrivial.
2301670 Graph theory 1.1 What is a graph? 1 st semester 2550 1 1.1. What is a graph? 1.1.2. Definition. A graph G is a triple (V(G), E(G), ψ G ) consisting of V(G) of vertices, a set E(G), disjoint from
More informationCoverings and Matchings in rpartite Hypergraphs
Coverings and Matchings in rpartite Hypergraphs Douglas S. Altner Department of Mathematics, United States Naval Academy, Annapolis, Maryland, altner@usna.edu. J. Paul Brooks Department of Statistical
More informationGreedy algorithms is another useful way for solving optimization problems.
Greedy Algorithms Greedy algorithms is another useful way for solving optimization problems. Optimization Problems For the given input, we are seeking solutions that must satisfy certain conditions. These
More informationNP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch]
NP Completeness Andreas Klappenecker [partially based on slides by Jennifer Welch] Overview We already know the following examples of NPC problems: SAT 3SAT We are going to show that the following are
More informationNPHardness. We start by defining types of problem, and then move on to defining the polynomialtime reductions.
CS 787: Advanced Algorithms NPHardness Instructor: Dieter van Melkebeek We review the concept of polynomialtime reductions, define various classes of problems including NPcomplete, and show that 3SAT
More information9.1 CookLevin Theorem
CS787: Advanced Algorithms Scribe: Shijin Kong and David Malec Lecturer: Shuchi Chawla Topic: NPCompleteness, Approximation Algorithms Date: 10/1/2007 As we ve already seen in the preceding lecture, two
More informationCS6841: Advanced Algorithms IIT Madras, Spring 2016 Lecture #1: Properties of LP Optimal Solutions + Machine Scheduling February 24, 2016
CS6841: Advanced Algorithms IIT Madras, Spring 2016 Lecture #1: Properties of LP Optimal Solutions + Machine Scheduling February 24, 2016 Lecturer: Ravishankar Krishnaswamy Scribe: Anand Kumar(CS15M010)
More informationFigure : Example Precedence Graph
CS787: Advanced Algorithms Topic: Scheduling with Precedence Constraints Presenter(s): James Jolly, Pratima Kolan 17.5.1 Motivation 17.5.1.1 Objective Consider the problem of scheduling a collection of
More informationCOVERING POINTS WITH AXIS PARALLEL LINES. KAWSAR JAHAN Bachelor of Science, Bangladesh University of Professionals, 2009
COVERING POINTS WITH AXIS PARALLEL LINES KAWSAR JAHAN Bachelor of Science, Bangladesh University of Professionals, 2009 A Thesis Submitted to the School of Graduate Studies of the University of Lethbridge
More information15 Graph Theory Counting the Number of Relations. 2. onto (surjective).
2. onto (surjective). You should convince yourself that if these two properties hold, then it is always going to be the case that f 1 is a function. In order to do this, you should remember the definition
More informationCSC2420 Fall 2012: Algorithm Design, Analysis and Theory
CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin September 27, 2012 1 / 23 Lecture 3 1 We will first do the analysis of the Greedy α revocable priority algorithm for the WISP problem
More informationLecture and notes by: Nate Chenette, Brent Myers, Hari Prasad November 8, Property Testing
Property Testing 1 Introduction Broadly, property testing is the study of the following class of problems: Given the ability to perform (local) queries concerning a particular object (e.g., a function,
More informationAn Improved Approximation Algorithm For Vertex Cover with Hard Capacities
An Improved Approximation Algorithm For Vertex Cover with Hard Capacities (Extended Abstract) Rajiv Gandhi 1, Eran Halperin 2, Samir Khuller 3, Guy Kortsarz 4, and Aravind Srinivasan 5 1 Department of
More information16.410/413 Principles of Autonomy and Decision Making
16.410/413 Principles of Autonomy and Decision Making Lecture 17: The Simplex Method Emilio Frazzoli Aeronautics and Astronautics Massachusetts Institute of Technology November 10, 2010 Frazzoli (MIT)
More informationOn the Complexity of the Policy Improvement Algorithm. for Markov Decision Processes
On the Complexity of the Policy Improvement Algorithm for Markov Decision Processes Mary Melekopoglou Anne Condon Computer Sciences Department University of Wisconsin  Madison 0 West Dayton Street Madison,
More informationPRIMALDUAL INTERIOR POINT METHOD FOR LINEAR PROGRAMMING. 1. Introduction
PRIMALDUAL INTERIOR POINT METHOD FOR LINEAR PROGRAMMING KELLER VANDEBOGERT AND CHARLES LANNING 1. Introduction Interior point methods are, put simply, a technique of optimization where, given a problem
More information4 Generating functions in two variables
4 Generating functions in two variables (Wilf, sections.5.6 and 3.4 3.7) Definition. Let a(n, m) (n, m 0) be a function of two integer variables. The 2variable generating function of a(n, m) is F (x,
More informationOn the Max Coloring Problem
On the Max Coloring Problem Leah Epstein Asaf Levin May 22, 2010 Abstract We consider max coloring on hereditary graph classes. The problem is defined as follows. Given a graph G = (V, E) and positive
More information6th Bay Area Mathematical Olympiad
6th Bay Area Mathematical Olympiad February 4, 004 Problems and Solutions 1 A tiling of the plane with polygons consists of placing the polygons in the plane so that interiors of polygons do not overlap,
More informationVARIANTS OF THE SIMPLEX METHOD
C H A P T E R 6 VARIANTS OF THE SIMPLEX METHOD By a variant of the Simplex Method (in this chapter) we mean an algorithm consisting of a sequence of pivot steps in the primal system using alternative rules
More informationLast topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far:
Last topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far: I Strength of formulations; improving formulations by adding valid inequalities I Relaxations and dual problems; obtaining
More informationα Coverage to Extend Network Lifetime on Wireless Sensor Networks
Noname manuscript No. (will be inserted by the editor) α Coverage to Extend Network Lifetime on Wireless Sensor Networks Monica Gentili Andrea Raiconi Received: date / Accepted: date Abstract An important
More informationRecap, and outline of Lecture 18
Recap, and outline of Lecture 18 Previously Applications of duality: Farkas lemma (example of theorems of alternative) A geometric view of duality Degeneracy and multiple solutions: a duality connection
More informationUnsplittable Flows. Hoon Cho and Alex Wein Final Project
Unsplittable Flows Hoon Cho (hhcho@mit.edu) and Alex Wein (awein@mit.edu) 6.854 Final Project Abstract An unsplittable flow in a multicommodity network is a flow that routes each commoidty on a single
More informationDecomposition in Integer Linear Programming
Decomposition in Integer Linear Programming M.V. Galati Advanced Analytics  Operations R & D, SAS Institute, Chesterbrook, PA 9 Ted K. Ralphs Department of Industrial and System Engineering, Lehigh University,
More informationChapter 8 DOMINATING SETS
Chapter 8 DOMINATING SETS Distributed Computing Group Mobile Computing Summer 2004 Overview Motivation Dominating Set Connected Dominating Set The Greedy Algorithm The Tree Growing Algorithm The Marking
More informationThis lecture: Convex optimization Convex sets Convex functions Convex optimization problems Why convex optimization? Why so early in the course?
Lec4 Page 1 Lec4p1, ORF363/COS323 This lecture: Convex optimization Convex sets Convex functions Convex optimization problems Why convex optimization? Why so early in the course? Instructor: Amir Ali Ahmadi
More informationGraph Algorithms Matching
Chapter 5 Graph Algorithms Matching Algorithm Theory WS 2012/13 Fabian Kuhn Circulation: Demands and Lower Bounds Given: Directed network, with Edge capacities 0and lower bounds l for Node demands for
More informationConstructive and destructive algorithms
Constructive and destructive algorithms Heuristic algorithms Giovanni Righini University of Milan Department of Computer Science (Crema) Constructive algorithms In combinatorial optimization problems every
More informationMultiple Vertex Coverings by Cliques
Multiple Vertex Coverings by Cliques Wayne Goddard Department of Computer Science University of Natal Durban, 4041 South Africa Michael A. Henning Department of Mathematics University of Natal Private
More information