Lecture 33: Approximation of Vertex Cover
Let xi be 0 if vi is not in the Vertex Cover, and 1 if vi is in the Vertex Cover. (vi, vj) is an edge such that xi + xj >= 1. We want to make the sum of all xi as small as possible, and still cover the edges.
Linear Programming:
A set of linear inequalities define a feasible region, for example:
x + y >=0
x - y >= 0
x <= 5
y <= 2
Or, in matrix form:
[[1,1][1,-1][1,0][0,1]] * [[x][y]] >= [[0][0][-5][-2]]
The goal is to remain the feasible region while optimizing something. In general, given {Ax = b}, a set of linear inequalities, we want to minimize c*x, i.e. find the minimum {c*x | Ax >= b}. Geometrically, this is finding the extreme point of a polytope. We can write this as a decision problem, too. Given A, b, c, and a bound B, is there a solution x such that Ax >= b and c’*x <= B?
Claim: “LP is in NP”
Given a set of values, we can check the solution in polynomial time. Rational numbers, however, require additional book keeping. Beware! Also, LP is in Co-NP and in P, using an interior point method.
VC as a LP problem:
xi >= 0
-xi >= -1
xi + xj 7gt;= 1 for all (vi, vj)
minimize sum(xi)
Then, run LP but only allow integer solutions. This is called “Integer Programming” (IP). Claim: “VC <=p IP.” Rewrite VC as an IP problem, then the solution to one implies the other. Claim: “IP is in NP.” Obvious. Therefore, IP is NP-Complete.
Approximation:
Simply round the LP solution to get integers. S = {i | i >= 1/2}, our approximate vertex cover. Then, |S| = sum(i in S) <= sum(2*xi in S) = s * sum(xi in S) <= 2 * sum(xi from i = 0 to n) <= 2 * |S*|. So, we are within a factor of two of the optimal solution.
This entry was posted on Monday, April 18th, 2005 at 2:32 am and is tagged with interior point method, linear inequalities, polynomial time, lt 2, lp solution, feasible region, ax gt, lp problem, integer solutions, decision problem, extreme point, integer programming, polytope, rational numbers, optimal solution, book keeping, vertex, linear programming, vj, integers. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback.
Leave a Reply
Please take time to enjoy the archives: May 2005 (1) April 2005 (11) March 2005 (11) February 2005 (15) January 2005 (7)
Fresh, related resources:
- Old tips
chap 11,slide 12-33 not included.rest in dat chapter important. AA:chapter 12-approximation algo, montey carlo algo, las vegas algo important, vertex cover not in final.quick n heap sort. - Lecture 12: Approximation Algorithms
Rajeev Motwani?s (old) lecture notes on approximation algorithms. The notes are old, but the fundamentals haven?t really changed. I?ll be drawing on material from Chapter 1 (pages 1-33: the definitions, and the impossibility results). ... - Lecture 33: Approximation of Vertex Cover
Approximation:. Simply round the LP solution to get integers. S = {i | i >= 1/2}, our approximate vertex cover. Then, |S| = sum(i in S)
