Linear Programming and Approximation Seminar in Approximation Algorithms














![Algorithms for Solving LP Simplex [Dantzig 47] n Ellipsoid [Khachian 79] n Interior point Algorithms for Solving LP Simplex [Dantzig 47] n Ellipsoid [Khachian 79] n Interior point](https://slidetodoc.com/presentation_image_h/f28efdf0962f962df52f2de376eb7afb/image-15.jpg)

















- Slides: 32
Linear Programming and Approximation Seminar in Approximation Algorithms
Linear Programming Linear objective function and Linear constraints n Canonical form n Standard form n
Linear Programming – Example x=(2, 1, 3) is a feasible solution n 7 * 2 + 1 + 5 * 3 = 30 is an upper bound the optimum n
Lower Bound How can we find a lower bound? n For example, n
Lower Bound Another example:
Lower Bound n Assign a non-negative coefficient yi to every primal inequality such that n Lower bound 10 y 1+6 y 2
LP Duality n The problem of finding the best lower bound is a linear program
LP Duality For every x and y: c. Tx b. Ty n Thus, Opt(primal) Opt(dual) n The dual of the dual is the primal n
Example x=(7/4, 0, 11/4) and y=(2, 1) are feasible solutions 7*7/4 + 0 + 5*11/4 = 10*2 + 6*1 = 26 Thus, x and y are optimal
Max Flow vs. Min s, t-cut n Path(s, t) - the set of directed paths from s to t. n Max Flow: n Dual: Implicit n Min s, t-cut n Opt(Dual) = Opt(Min s, t-cut) n
LP-duality Theorem: n Opt(primal) is finite Opt(dual) is finite n If x* and y* are optimal Conclusion: LP NP co. NP
Weak Duality Theorem If x and y are feasible Proof:
Complementary Slackness Conditions x and y are optimal Primal conditions: Dual conditions:
Complementary Slackness Conditions - Proof n By the duality theorem n n n § § Similar arguments work for y For other direction read the slide upwards
Algorithms for Solving LP Simplex [Dantzig 47] n Ellipsoid [Khachian 79] n Interior point [Karmakar 84] n n Open question: Is there a strongly polynomial time algorithm for LP?
Integer Programming NP-hard n Branch and Bound n LP relaxation n Opt(LP) Opt(IP) n Integrality Gap – Opt(IP)/Opt(LP) n
Using LP for Approximation Finding a good lower bound - Opt(LP) Opt(IP) n Integrality gap is the best we can hope for n Techniques: n Rounding – Solve LP-relaxation and then round solution. n Primal Dual – Find a feasible dual solution y, and a feasible integral primal solution x such that c. Tx r * b. Ty
Minimum Vertex Cover LP-relaxation and its dual: n (P) n (D)
Solving the Dual Algorithm: 1. Solve (D) 2. Define: Analysis: CD is a cover:
Solving the Dual CD is r-approx: n n n Weak duality The.
Rounding Algorithm: 1. Solve (P) 2. Define: Analysis: n n x* is not feasible Due to the complementary conditions: n Conclusion: x(CP) is 2 -approx
Rounding Algorithm: 1. Solve (P) 2. Define: Analysis: n n n x* is not feasible Clearly, Conclusion: x(C½) is 2 -approx
The Geometry of LP n Claim: Let x 1, x 2 be feasible solutions Then, x 1+(1 - )x 2 is a feasible solution n Definition: x is a vertex if n Theorem: If a finite solution exists, there exists an optimal solution x* which is a vertex
Half Integrality Theorem: If x is a vertex then x {0, 1/2, 1}n Proof: n Let x be a vertex such that x {0, 1/2, 1}n Both solutions are feasible n = shortest distance to {0, 1/2, 1} n Conclusion:
Half Integrality Algorithm: n Construct the following bipartite graph G’: n n Find a vertex cover C’ in G’ (This can be done by using max-flow. )
Primal Dual Construct an integral feasible solution x and a feasible solution y such that c. Tx r b. Ty n Weak duality theorem b. Ty Opt(LP) n c. Tx r Opt(LP) r Opt(IP) n x is r-approx n
Greedy H( )-Approximation Algorithm n n While there exists an uncovered edge: – – – Remove u and incident edges
Primal Dual Schema Modified version of the primal dual method for solving LP n Construct integral primal solution and feasible dual solution simultaneously. n We impose the primal complementary slackness conditions, while relaxing the dual conditions n
Relaxed Dual Conditions Primal: n Relaxed dual: n Claim: If x, y satisfy the above conditions Proof:
Vertex Cover Algorithm: n n For every edge e=(u, v) do: – – n Output C (We can construct C at the end. )
Vertex Cover There are no uncovered edges, or over packed vertices at the end. So x=x(C) and y are feasible. n Since x and y satisfy the relaxed complementary slackness conditions with =2, x is a 2 -approx solution. n – Primal: – Relaxed Dual:
Generalized Vertex Cover LP-relaxation and its dual: n (P) n (D)