Chapter 20 Approximation Algorithms using Linear Program - ming


Consider the Weighted Vertex Cover problem. Here, we have a graph G = (V,E), and each vertex v ∈ V has an associated cost cv. We would like to compute a vertex cover of minimum cost – a subset of the vertices of G with minimum total cost so that each edge has at least one of its endpoints in the cover. This problem is (of course) NP-Hard, since the decision problem where all the weights are 1, is the Vertex Cover problem, which we had shown to be NPC. Let us first state this optimization problem is an integer programming. Indeed, for any v ∈ V, let define a variable xv which is 1 if we decide to pick v to the vertex cover, and zero otherwise. The restriction that xv is either 0 or 1, is written formally as xv ∈ {0, 1}. Next, its required that every edge vu ∈ E is covered. Namely, we require that xv ∨ xu to be TRUE. For reasons that would be come clearer shortly, we prefer to write this condition as a linear inequality; namely, we require that xv+xu ≥ 1. Finally, we would like to minimize the total cost of the vertices we pick for the cover; namely, we would like to minimize ∑ v∈V xvcv. Putting it together, we get the following integer programming instance:

Cite this paper

@inproceedings{HarPeled2015Chapter2A, title={Chapter 20 Approximation Algorithms using Linear Program - ming}, author={Sariel Har-Peled}, year={2015} }