CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36
|
|
- Nickolas Lynch
- 5 years ago
- Views:
Transcription
1 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring / 36
2 CS 473: Algorithms, Spring 2018 LP Duality Lecture 20 April 3, 2018 Some of the slides are courtesy Prof. Chekuri1 Ruta (UIUC) CS473 2 Spring / 36
3 Part I Recall Ruta (UIUC) CS473 3 Spring / 36
4 Feasible Solutions and Lower Bounds Consider the program maximize 4x 1 + 2x 2 subject to x 1 + 3x 2 5 2x 1 4x 2 10 x 1 + x 2 7 x 1 5 Ruta (UIUC) CS473 4 Spring / 36
5 Feasible Solutions and Lower Bounds Consider the program maximize 4x 1 + 2x 2 subject to x 1 + 3x 2 5 2x 1 4x 2 10 x 1 + x 2 7 x (2, 0) also feasible, and gives a better bound of 8. Ruta (UIUC) CS473 4 Spring / 36
6 Feasible Solutions and Lower Bounds Consider the program maximize 4x 1 + 2x 2 subject to x 1 + 3x 2 5 2x 1 4x 2 10 x 1 + x 2 7 x (2, 0) also feasible, and gives a better bound of 8. 2 How good is 8 when compared with σ? Ruta (UIUC) CS473 4 Spring / 36
7 Obtaining Upper Bounds 1 Let us multiply the first constraint by 2 and the and add it to second constraint 2( x 1 + 3x 2 ) 2(5) +1( 2x 1 4x 2 ) 1(10) 4x 1 + 2x Thus, 20 is an upper bound on the optimum value! Ruta (UIUC) CS473 5 Spring / 36
8 Generalizing... 1 Multiply first equation by y 1, second by y 2, third by y 3 and fourth by y 4 (all of y 1, y 2, y 3, y 4 being positive) and add y 1 ( x 1 + 3x 2 ) y 1 (5) +y 2 ( 2x 1 4x 2 ) y 2 (10) +y 3 ( x 1 + x 2 ) y 3 (7) +y 4 ( x 1 ) y 4 (5) (y 1 + 2y 2 + y 3 + y 4 )x 1 + (3y 1 4y 2 + y 3 )x y y 2 + 7y 3 + 5y 4 is an upper bound, provided coefficients of x i are same as in the objective function, i.e., y 1 + 2y 2 + y 3 + y 4 = 4 3y 1 4y 2 + y 3 = 2 3 The best upper bound is when 5y y 2 + 7y 3 + 5y 4 is minimized! Ruta (UIUC) CS473 6 Spring / 36
9 Dual LP: Example Thus, the optimum value of program maximize 4x 1 + 2x 2 subject to x 1 + 3x 2 5 2x 1 4x 2 10 x 1 + x 2 7 x 1 5 is upper bounded by the optimal value of the program minimize 5y y 2 + 7y 3 + 5y 4 subject to y 1 + 2y 2 + y 3 + y 4 = 4 3y 1 4y 2 + y 3 = 2 y 1, y 2 0 Ruta (UIUC) CS473 7 Spring / 36
10 Dual Linear Program Given a linear program Π in canonical form maximize subject to d j=1 c jx j d j=1 a ijx j b i i = 1, 2,... n the dual Dual(Π) is given by minimize subject to n i =1 b i y i n i =1 y i a ij = c j y i 0 j = 1, 2,... d i = 1, 2,... n Ruta (UIUC) CS473 8 Spring / 36
11 Dual Linear Program Given a linear program Π in canonical form maximize subject to d j=1 c jx j d j=1 a ijx j b i i = 1, 2,... n the dual Dual(Π) is given by minimize subject to n i =1 b i y i n i =1 y i a ij = c j y i 0 j = 1, 2,... d i = 1, 2,... n Proposition Dual(Dual(Π)) is equivalent to Π Ruta (UIUC) CS473 8 Spring / 36
12 Duality Theorems Theorem (Weak Duality) If x is a feasible solution to Π and y is a feasible solution to Dual(Π) then c x y b. Ruta (UIUC) CS473 9 Spring / 36
13 Duality Theorems Theorem (Weak Duality) If x is a feasible solution to Π and y is a feasible solution to Dual(Π) then c x y b. Theorem (Strong Duality) If x is an optimal solution to Π and y is an optimal solution to Dual(Π) then c x = y b. Many applications! Maxflow-Mincut theorem can be deduced from duality. Ruta (UIUC) CS473 9 Spring / 36
14 Weak Duality Theorem (Weak Duality) If x is a feasible solution to Π and y is a feasible solution to Dual(Π) then c x y b. We already saw the proof by the way we derived it but we will do it again formally. Proof. Since y is feasible in Dual(Π): y A = c Ruta (UIUC) CS Spring / 36
15 Weak Duality Theorem (Weak Duality) If x is a feasible solution to Π and y is a feasible solution to Dual(Π) then c x y b. We already saw the proof by the way we derived it but we will do it again formally. Proof. Since y is feasible in Dual(Π): y A = c Therefore c x = y Ax Ruta (UIUC) CS Spring / 36
16 Weak Duality Theorem (Weak Duality) If x is a feasible solution to Π and y is a feasible solution to Dual(Π) then c x y b. We already saw the proof by the way we derived it but we will do it again formally. Proof. Since y is feasible in Dual(Π): y A = c Therefore c x = y Ax Since x is feasible in Π, Ax b and hence, c x = y Ax y b Ruta (UIUC) CS Spring / 36
17 Strong Duality Complementary Slackness maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 Definition (Complementary Slackness) x feasible in Π and y feasible in Dual(Π), s.t., i = 1..n, y i > 0 (Ax) i = b i Ruta (UIUC) CS Spring / 36
18 Strong Duality Complementary Slackness maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 Definition (Complementary Slackness) x feasible in Π and y feasible in Dual(Π), s.t., i = 1..n, y i > 0 (Ax) i = b i Theorem (x, y ) satisfies complementary slackness Strong duality holds, i.e., c x = y b. Ruta (UIUC) CS Spring / 36
19 Strong Duality Complementary Slackness maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 Definition (Complementary Slackness) x feasible in Π and y feasible in Dual(Π), s.t., i = 1..n, y i > 0 (Ax) i = b i Theorem (x, y ) satisfies complementary slackness Strong duality holds, i.e., c x = y b. Q: Why complementary slackness is satisfied at the optimum? Ruta (UIUC) CS Spring / 36
20 Complementary Slackness: Geometric View maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 i = 1..n, y i > 0 (Ax) i = b i Ruta (UIUC) CS Spring / 36
21 Complementary Slackness: Geometric View maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 i = 1..n, y i > 0 (Ax) i = b i x : optimum vertex. Suppose first d inequalities are tight at x. Ruta (UIUC) CS Spring / 36
22 Complementary Slackness: Geometric View maximize : subject to c x Ax b Dual minimize : subject to y b ya = c y 0 i = 1..n, y i > 0 (Ax) i = b i x : optimum vertex. Suppose first d inequalities are tight at x. c is in the cone of Ruta (UIUC) CS Spring / 36
23 Optimality implies Complementary Slackness x : Optimum vertex. Ruta (UIUC) CS Spring / 36
24 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Ruta (UIUC) CS Spring / 36
25 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. Ruta (UIUC) CS Spring / 36
26 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. Ruta (UIUC) CS Spring / 36
27 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Ruta (UIUC) CS Spring / 36
28 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Suppose cone is on the negative side, and c on the positive size. If the d is the normal vector of the hyperplane, then formally, Âd < 0, c d > 0 Ruta (UIUC) CS Spring / 36
29 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Suppose cone is on the negative side, and c on the positive size. If the d is the normal vector of the hyperplane, then formally, Âd < 0, c d > 0 Also known as Farkas Lemma Ruta (UIUC) CS Spring / 36
30 Optimality implies Complementary Slackness x : Optimum vertex. Ruta (UIUC) CS Spring / 36
31 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Ruta (UIUC) CS Spring / 36
32 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Choose v. v. tiny ɛ > 0 such that Ã(x + ɛd) b. Â(x + ɛd) = Âx + ɛâd < ˆb Ruta (UIUC) CS Spring / 36
33 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Choose v. v. tiny ɛ > 0 such that Ã(x + ɛd) b. Â(x + ɛd) = Âx + ɛâd < ˆb (x + ɛd) is feasible in Π Ruta (UIUC) CS Spring / 36
34 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Choose v. v. tiny ɛ > 0 such that Ã(x + ɛd) b. Â(x + ɛd) = Âx + ɛâd < ˆb (x + ɛd) is feasible in Π c (x + ɛd) = c x + ɛ(c d) Ruta (UIUC) CS Spring / 36
35 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Choose v. v. tiny ɛ > 0 such that Ã(x + ɛd) b. Â(x + ɛd) = Âx + ɛâd < ˆb (x + ɛd) is feasible in Π c (x + ɛd) = c x + ɛ(c d) > c x Ruta (UIUC) CS Spring / 36
36 Optimality implies Complementary Slackness x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Suppose c is NOT in the cone of rows of Â. There exists a hyperplane separating c from the cone. Âd < 0, c d > 0 Also known as Farkas Lemma Choose v. v. tiny ɛ > 0 such that Ã(x + ɛd) b. Â(x + ɛd) = Âx + ɛâd < ˆb (x + ɛd) is feasible in Π c (x + ɛd) = c x + ɛ(c d) > c x x is NOT optimum! Ruta (UIUC) CS Spring / 36
37 Proof of Strong Duality x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Then c IS in the cone of rows of Â. Ruta (UIUC) CS Spring / 36
38 Proof of Strong Duality x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Then c IS in the cone of rows of Â. y feasible in Dual(Π) such that (x, y ) satisfies complementary slackness. Ruta (UIUC) CS Spring / 36
39 Proof of Strong Duality x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Then c IS in the cone of rows of Â. y feasible in Dual(Π) such that (x, y ) satisfies complementary slackness. (x, y ) satisfies strong duality, c x = y b. Ruta (UIUC) CS Spring / 36
40 Proof of Strong Duality x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Then c IS in the cone of rows of Â. y feasible in Dual(Π) such that (x, y ) satisfies complementary slackness. (x, y ) satisfies strong duality, c x = y b. (implies y optimal in Dual(Π)). Ruta (UIUC) CS Spring / 36
41 Proof of Strong Duality x : Optimum vertex. First d inequalities tight at x. Ax b splits into Âx = ˆb, Ãx < b Then c IS in the cone of rows of Â. y feasible in Dual(Π) such that (x, y ) satisfies complementary slackness. (x, y ) satisfies strong duality, c x = y b. (implies y optimal in Dual(Π)). Theorem (Strong Duality) If x is an optimal solution to Π and y is an optimal solution to Dual(Π) then c x = y b. Ruta (UIUC) CS Spring / 36
42 Optimization vs Feasibility Suppose we want to solve LP of the form: max cx subject to Ax b It is an optimization problem. Can we reduce it to a decision problem? Ruta (UIUC) CS Spring / 36
43 Optimization vs Feasibility Suppose we want to solve LP of the form: max cx subject to Ax b It is an optimization problem. Can we reduce it to a decision problem? Yes, via binary search. Find the largest values of σ such that the system of inequalities Ax b, cx σ is feasible. Feasible implies that there is at least one solution. Ruta (UIUC) CS Spring / 36
44 Optimization vs Feasibility Suppose we want to solve LP of the form: max cx subject to Ax b It is an optimization problem. Can we reduce it to a decision problem? Yes, via binary search. Find the largest values of σ such that the system of inequalities Ax b, cx σ is feasible. Feasible implies that there is at least one solution. Caveat: to do binary search need to know the range of numbers. Skip for now since we need to worry about precision issues etc. Ruta (UIUC) CS Spring / 36
45 Certificate for (in)feasibility Suppose we have a system of m inequalities in n variables defined by Ax b How can we convince some one that there is a feasible solution? How can we convince some one that there is no feasible solution? Ruta (UIUC) CS Spring / 36
46 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. Ruta (UIUC) CS Spring / 36
47 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya) Ruta (UIUC) CS Spring / 36
48 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya)x = y(ax) = Ruta (UIUC) CS Spring / 36
49 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya)x = y(ax) = y b < 0! Ruta (UIUC) CS Spring / 36
50 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya)x = y(ax) = y b < 0! (possibly) the Dual is unbounded! Ruta (UIUC) CS Spring / 36
51 Theorem of the Alternatives Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya)x = y(ax) = y b < 0! (possibly) the Dual is unbounded! The preceding theorem can also be used to prove strong duality. Ruta (UIUC) CS Spring / 36
52 Theorem of the Alternatives Farkas lemma is another such theorem. These are related. Ruta (UIUC) CS Spring / 36 Theorem Let A R m n and b R m. Exactly one of the following two holds (i) The system Ax b is feasible. (ii) There is a y R m such that y 0 and ya = 0 and yb < 0. In other words, if Ax b is infeasible we can demonstrate it as follows: Find a non-negative combination of the rows of A (given by certificate y) to get a contradiction 0 < 0. 0 = (ya)x = y(ax) = y b < 0! (possibly) the Dual is unbounded! The preceding theorem can also be used to prove strong duality.
53 Duality for another canonical form Compactly, for the primal LP Π max c x subject to Ax b, x 0 the dual LP is Dual(Π) min y b subject to ya c, y 0 Definition (Complementary Slackness) x feasible in Π and y feasible in Dual(Π), s.t., i = 1,..., n, y i > 0 (Ax) i = b i j = 1,..., d, x j > 0 (ya) j = c j Ruta (UIUC) CS Spring / 36
54 In General... from Jeff s notes Ruta (UIUC) CS Spring / 36
55 Some Useful Duality Properties Assume primal LP is a maximization LP. For a given LP, Dual is another LP. The variables in the dual correspond to non-trival primal constraints and vice-versa. Dual of the dual LP give us back the primal LP. Weak and strong duality theorems. Ruta (UIUC) CS Spring / 36
56 Some Useful Duality Properties Assume primal LP is a maximization LP. For a given LP, Dual is another LP. The variables in the dual correspond to non-trival primal constraints and vice-versa. Dual of the dual LP give us back the primal LP. Weak and strong duality theorems. If primal is unbounded (objective achieves infinity) then dual LP is infeasible. Why? If dual LP had a feasible solution it would upper bound the primal LP which is not possible. Ruta (UIUC) CS Spring / 36
57 Some Useful Duality Properties Assume primal LP is a maximization LP. For a given LP, Dual is another LP. The variables in the dual correspond to non-trival primal constraints and vice-versa. Dual of the dual LP give us back the primal LP. Weak and strong duality theorems. If primal is unbounded (objective achieves infinity) then dual LP is infeasible. Why? If dual LP had a feasible solution it would upper bound the primal LP which is not possible. Primal and dual optimum solutions satisfy complementary slackness conditions (discussed soon). Ruta (UIUC) CS Spring / 36
58 Part II Examples of Duality Ruta (UIUC) CS Spring / 36
59 Network flow s-t flow in directed graph G = (V, E) with capacities c. Assume for simplicity that no incoming edges into s. max x(s, v) (s,v) E x(u, v) x(v, w) = 0 v V \ {s, t} (u,v) E (v,w) E x(u, v) c(u, v) (u, v) E x(u, v) 0 (u, v) E. Ruta (UIUC) CS Spring / 36
60 Network flow: Equivalent formulation Directed graph G = (V, E), with capacities on edges. Add a t to s edge with infinite capacity. Now maximize flow on this edge. max x(t, s) x(u, v) x(v, w) = 0 v V (u,v) E (v,w) E x(u, v) c(u, v) (u, v) E \ (t, s) x(u, v) 0 (u, v) E. Ruta (UIUC) CS Spring / 36
61 Dual of Network Flow Ruta (UIUC) CS Spring / 36
62 Part III Integer Linear Programming Ruta (UIUC) CS Spring / 36
63 Integer Linear Programming Problem Find a vector x Z d (integer values) that maximize subject to d j=1 c jx j d j=1 a ijx j b i for i = 1... n Input is matrix A = (a ij ) R n d, column vector b = (b i ) R n, and row vector c = (c j ) R d Ruta (UIUC) CS Spring / 36
64 Factory Example maximize x 1 + 6x 2 subject to x x x 1 + x x 1, x 2 0 Suppose we want x 1, x 2 to be integer valued. Ruta (UIUC) CS Spring / 36
65 Factory Example Figure x x Feasible values of x 1 and x 2 are integer points in shaded region 2 Optimization function is a line; moving the line until it just leaves the final integer point in feasible region, gives optimal values Ruta (UIUC) CS Spring / 36
66 Factory Example Figure x x Feasible values of x 1 and x 2 are integer points in shaded region 2 Optimization function is a line; moving the line until it just leaves the final integer point in feasible region, gives optimal values Ruta (UIUC) CS Spring / 36
67 Factory Example Figure x x Feasible values of x 1 and x 2 are integer points in shaded region 2 Optimization function is a line; moving the line until it just leaves the final integer point in feasible region, gives optimal values Ruta (UIUC) CS Spring / 36
68 Integer Programming Can model many difficult discrete optimization problems as integer programs! Therefore integer programming is a hard problem. NP-hard. Ruta (UIUC) CS Spring / 36
69 Integer Programming Can model many difficult discrete optimization problems as integer programs! Therefore integer programming is a hard problem. NP-hard. Can relax integer program to linear program and approximate. Ruta (UIUC) CS Spring / 36
70 Integer Programming Can model many difficult discrete optimization problems as integer programs! Therefore integer programming is a hard problem. NP-hard. Can relax integer program to linear program and approximate. Practice: integer programs are solved by a variety of methods 1 branch and bound 2 branch and cut 3 adding cutting planes 4 linear programming plays a fundamental role Ruta (UIUC) CS Spring / 36
71 Example: Maximum Independent Set Definition Given undirected graph G = (V, E) a subset of nodes S V is an independent set (also called a stable set) if for there are no edges between nodes in S. That is, if u, v S then (u, v) E. Input Graph G = (V, E) Goal Find maximum sized independent set in G Ruta (UIUC) CS Spring / 36
72 Example: Dominating Set Definition Given undirected graph G = (V, E) a subset of nodes S V is a dominating set if for all v V, either v S or a neighbor of v is in S. Input Graph G = (V, E), weights w(v) 0 for v V Goal Find minimum weight dominating set in G Ruta (UIUC) CS Spring / 36
73 Example: s-t minimum cut and implicit constraints Input Graph G = (V, E), edge capacities c(e), e E. s, t V Goal Find minimum capacity s-t cut in G. Ruta (UIUC) CS Spring / 36
74 Linear Programs with Integer Vertices Suppose we know that for a linear program all vertices have integer coordinates. Ruta (UIUC) CS Spring / 36
75 Linear Programs with Integer Vertices Suppose we know that for a linear program all vertices have integer coordinates. Then solving linear program is same as solving integer program. We know how to solve linear programs efficiently (polynomial time) and hence we get an integer solution for free! Ruta (UIUC) CS Spring / 36
76 Linear Programs with Integer Vertices Suppose we know that for a linear program all vertices have integer coordinates. Then solving linear program is same as solving integer program. We know how to solve linear programs efficiently (polynomial time) and hence we get an integer solution for free! Luck or Structure: 1 Linear program for flows with integer capacities have integer vertices 2 Linear program for matchings in bipartite graphs have integer vertices 3 A complicated linear program for matchings in general graphs have integer vertices. All of above problems can hence be solved efficiently. Ruta (UIUC) CS Spring / 36
77 Linear Programs with Integer Vertices Meta Theorem: A combinatorial optimization problem can be solved efficiently if and only if there is a linear program for problem with integer vertices. Consequence of the Ellipsoid method for solving linear programming. In a sense linear programming and other geometric generalizations such as convex programming are the most general problems that we can solve efficiently. Ruta (UIUC) CS Spring / 36
78 Summary 1 Linear Programming is a useful and powerful (modeling) problem. Ruta (UIUC) CS Spring / 36
79 Summary 1 Linear Programming is a useful and powerful (modeling) problem. 2 Can be solved in polynomial time. Practical solvers available commercially as well as in open source. Whether there is a strongly polynomial time algorithm is a major open problem. Ruta (UIUC) CS Spring / 36
80 Summary 1 Linear Programming is a useful and powerful (modeling) problem. 2 Can be solved in polynomial time. Practical solvers available commercially as well as in open source. Whether there is a strongly polynomial time algorithm is a major open problem. 3 Geometry and linear algebra are important to understand the structure of LP and in algorithm design. Vertex solutions imply that LPs have poly-sized optimum solutions. This implies that LP is in NP. Ruta (UIUC) CS Spring / 36
81 Summary 1 Linear Programming is a useful and powerful (modeling) problem. 2 Can be solved in polynomial time. Practical solvers available commercially as well as in open source. Whether there is a strongly polynomial time algorithm is a major open problem. 3 Geometry and linear algebra are important to understand the structure of LP and in algorithm design. Vertex solutions imply that LPs have poly-sized optimum solutions. This implies that LP is in NP. 4 Duality is a critical tool in the theory of linear programming. Duality implies the Linear Programming is in co-np. Do you see why? Ruta (UIUC) CS Spring / 36
82 Summary 1 Linear Programming is a useful and powerful (modeling) problem. 2 Can be solved in polynomial time. Practical solvers available commercially as well as in open source. Whether there is a strongly polynomial time algorithm is a major open problem. 3 Geometry and linear algebra are important to understand the structure of LP and in algorithm design. Vertex solutions imply that LPs have poly-sized optimum solutions. This implies that LP is in NP. 4 Duality is a critical tool in the theory of linear programming. Duality implies the Linear Programming is in co-np. Do you see why? 5 Integer Programming in NP-Complete. LP-based techniques critical in heuristically solving integer programs. Ruta (UIUC) CS Spring / 36
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
More informationCS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 50
CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 50 CS 473: Algorithms, Spring 2018 Introduction to Linear Programming Lecture 18 March
More informationMathematical 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
More informationIntroduction 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
More informationSome Advanced Topics in Linear Programming
Some Advanced Topics in Linear Programming Matthew J. Saltzman July 2, 995 Connections with Algebra and Geometry In this section, we will explore how some of the ideas in linear programming, duality theory,
More information1 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
More informationDuality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1
Duality Primal program P: Maximize n j=1 c jx j subject to n a ij x j b i, i = 1, 2,..., m j=1 x j 0, j = 1, 2,..., n Dual program D: Minimize m i=1 b iy i subject to m a ij x j c j, j = 1, 2,..., n i=1
More information6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality
6.854 Advanced Algorithms Scribes: Jay Kumar Sundararajan Lecturer: David Karger Duality This lecture covers weak and strong duality, and also explains the rules for finding the dual of a linear program,
More informationCombinatorial 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
More informationLecture 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
More informationOutline. 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
More informationAdvanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs
Advanced Operations Research Techniques IE316 Quiz 2 Review Dr. Ted Ralphs IE316 Quiz 2 Review 1 Reading for The Quiz Material covered in detail in lecture Bertsimas 4.1-4.5, 4.8, 5.1-5.5, 6.1-6.3 Material
More informationLinear 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
More informationApproximation 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
More information1. 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)
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 informationInteger 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
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 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 2-3 students that is, submit one homework with all of your names.
More informationLinear Programming: Introduction
CSC 373 - Algorithm Design, Analysis, and Complexity Summer 2016 Lalla Mouatadid Linear Programming: Introduction A bit of a historical background about linear programming, that I stole from Jeff Erickson
More informationDual-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
More informationLinear 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
More informationLinear 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
More information11 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
More informationSection Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018
Section Notes 4 Duality, Sensitivity, and the Dual Simplex Algorithm Applied Math / Engineering Sciences 121 Week of October 8, 2018 Goals for the week understand the relationship between primal and dual
More informationCivil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics
Civil Engineering Systems Analysis Lecture XIV Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics Today s Learning Objectives Dual 2 Linear Programming Dual Problem 3
More informationLecture 6: Faces, Facets
IE 511: Integer Programming, Spring 2019 31 Jan, 2019 Lecturer: Karthik Chandrasekaran Lecture 6: Faces, Facets Scribe: Setareh Taki Disclaimer: These notes have not been subjected to the usual scrutiny
More informationOutline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014
5/2/24 Outline CS38 Introduction to Algorithms Lecture 5 May 2, 24 Linear programming simplex algorithm LP duality ellipsoid algorithm * slides from Kevin Wayne May 2, 24 CS38 Lecture 5 May 2, 24 CS38
More informationLecture 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
More informationHeuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam
Heuristic Optimization Today: Linear Programming Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam Linear programming Let s first define it formally: A linear program is an optimization
More informationLinear 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
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 informationCollege 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
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 informationNotes for Lecture 20
U.C. Berkeley CS170: Intro to CS Theory Handout N20 Professor Luca Trevisan November 13, 2001 Notes for Lecture 20 1 Duality As it turns out, the max-flow min-cut theorem is a special case of a more general
More informationDM545 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
More informationDiscrete 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
More informationApproximation Algorithms
Approximation Algorithms Group Members: 1. Geng Xue (A0095628R) 2. Cai Jingli (A0095623B) 3. Xing Zhe (A0095644W) 4. Zhu Xiaolu (A0109657W) 5. Wang Zixiao (A0095670X) 6. Jiao Qing (A0095637R) 7. Zhang
More informationACO 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
More informationCS675: 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
More informationLinear Programming. Course review MS-E2140. v. 1.1
Linear Programming MS-E2140 Course review v. 1.1 Course structure Modeling techniques Linear programming theory and the Simplex method Duality theory Dual Simplex algorithm and sensitivity analysis Integer
More informationArtificial 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
More informationApproximation 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
More information3 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
More information1. 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
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 (Luenberger-Ye Appendix B.1).........................
More informationAdvanced Algorithms Linear Programming
Reading: Advanced Algorithms Linear Programming CLRS, Chapter29 (2 nd ed. onward). Linear Algebra and Its Applications, by Gilbert Strang, chapter 8 Linear Programming, by Vasek Chvatal Introduction to
More informationLECTURES 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
More informationLecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh
Lecture 3 Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets Gérard Cornuéjols Tepper School of Business Carnegie Mellon University, Pittsburgh January 2016 Mixed Integer Linear Programming
More informationApproximation 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
More information4 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
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 informationLinear Programming. Slides by Carl Kingsford. Apr. 14, 2014
Linear Programming Slides by Carl Kingsford Apr. 14, 2014 Linear Programming Suppose you are given: A matrix A with m rows and n columns. A vector b of length m. A vector c of length n. Find a length-n
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 informationSubmodularity 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:
More information15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018
15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 In this lecture, we describe a very general problem called linear programming
More informationLecture 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
More informationLecture 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
More informationLinear Programming [Read Chapters F and G first.] Status: Text beta. Needs figures.
The greatest flood has the soonest ebb; the sorest tempest the most sudden calm; the hottest love the coldest end; and from the deepest desire oftentimes ensues the deadliest hate. Socrates Th extremes
More informationTHEORY OF LINEAR AND INTEGER PROGRAMMING
THEORY OF LINEAR AND INTEGER PROGRAMMING ALEXANDER SCHRIJVER Centrum voor Wiskunde en Informatica, Amsterdam A Wiley-Inter science Publication JOHN WILEY & SONS^ Chichester New York Weinheim Brisbane Singapore
More informationIntroduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs
Introduction to Mathematical Programming IE406 Lecture 20 Dr. Ted Ralphs IE406 Lecture 20 1 Reading for This Lecture Bertsimas Sections 10.1, 11.4 IE406 Lecture 20 2 Integer Linear Programming An integer
More informationMVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms
MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2018 04 24 Lecture 9 Linear and integer optimization with applications
More informationCS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi
CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm Instructor: Shaddin Dughmi Algorithms for Convex Optimization We will look at 2 algorithms in detail: Simplex and Ellipsoid.
More informationLinear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?
Linear and Integer Programming 15-853:Algorithms in the Real World Linear and Integer Programming I Introduction Geometric Interpretation Simplex Method Linear or Integer programming maximize z = c T x
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 informationCSE 417 Network Flows (pt 4) Min Cost Flows
CSE 417 Network Flows (pt 4) Min Cost Flows Reminders > HW6 is due Monday Review of last three lectures > Defined the maximum flow problem find the feasible flow of maximum value flow is feasible if it
More informationDesign 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
More informationLecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.
Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject
More informationCSE 417 Network Flows (pt 3) Modeling with Min Cuts
CSE 417 Network Flows (pt 3) Modeling with Min Cuts Reminders > HW6 is due on Friday start early bug fixed on line 33 of OptimalLineup.java: > change true to false Review of last two lectures > Defined
More information1 Bipartite maximum matching
Cornell University, Fall 2017 Lecture notes: Matchings CS 6820: Algorithms 23 Aug 1 Sep These notes analyze algorithms for optimization problems involving matchings in bipartite graphs. Matching algorithms
More informationTopic: 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
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 informationCS599: 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
More informationAlgorithms for Integer Programming
Algorithms for Integer Programming Laura Galli November 9, 2016 Unlike linear programming problems, integer programming problems are very difficult to solve. In fact, no efficient general algorithm is
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 informationMVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg
MVE165/MMG630, Integer linear programming algorithms Ann-Brith Strömberg 2009 04 15 Methods for ILP: Overview (Ch. 14.1) Enumeration Implicit enumeration: Branch and bound Relaxations Decomposition methods:
More informationPrimal-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
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 informationLinear Programming and its Applications
Linear Programming and its Applications Outline for Today What is linear programming (LP)? Examples Formal definition Geometric intuition Why is LP useful? A first look at LP algorithms Duality Linear
More informationPolytopes Course Notes
Polytopes Course Notes Carl W. Lee Department of Mathematics University of Kentucky Lexington, KY 40506 lee@ms.uky.edu Fall 2013 i Contents 1 Polytopes 1 1.1 Convex Combinations and V-Polytopes.....................
More informationCS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension
CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension Antoine Vigneron King Abdullah University of Science and Technology November 7, 2012 Antoine Vigneron (KAUST) CS 372 Lecture
More informationCS612 Algorithms for Electronic Design Automation
CS612 Algorithms for Electronic Design Automation Lecture 8 Network Flow Based Modeling 1 Flow Network Definition Given a directed graph G = (V, E): Each edge (u, v) has capacity c(u,v) 0 Each edge (u,
More informationLinear 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
More informationCMSC 451: Linear Programming
CMSC 451: Linear Programming Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Linear Programming Suppose you are given: A matrix A with m rows and n columns.
More informationApproximation 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
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 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 informationCS 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.
More informationThe Simplex Algorithm
The Simplex Algorithm Uri Feige November 2011 1 The simplex algorithm The simplex algorithm was designed by Danzig in 1947. This write-up presents the main ideas involved. It is a slight update (mostly
More informationChapter 15 Introduction to Linear Programming
Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2015 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of
More informationDM515 Spring 2011 Weekly Note 7
Institut for Matematik og Datalogi Syddansk Universitet May 18, 2011 JBJ DM515 Spring 2011 Weekly Note 7 Stuff covered in Week 20: MG sections 8.2-8,3 Overview of the course Hints for the exam Note that
More information5. Lecture notes on matroid intersection
Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a
More informationAMS : 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
More informationLinear 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
More informationLP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008
LP-Modelling dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven January 30, 2008 1 Linear and Integer Programming After a brief check with the backgrounds of the participants it seems that the following
More informationCMPSCI611: The Simplex Algorithm Lecture 24
CMPSCI611: The Simplex Algorithm Lecture 24 Let s first review the general situation for linear programming problems. Our problem in standard form is to choose a vector x R n, such that x 0 and Ax = b,
More informationApproximation 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.
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: S14-04-25 Telephone: 6516 3343 Aims/Objectives: Discrete optimization deals with problems of
More informationLinear Programming 1
Linear Programming 1 Fei Li March 5, 2012 1 With references of Algorithms by S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani. Many of the problems for which we want algorithms are optimization tasks.
More information4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Mathematical programming (optimization) problem: min f (x) s.t. x X R n set of feasible solutions with linear objective function
More information