The.Algorithm.Design.Manual.Springer-Verlag.1998

The.Algorithm.Design.Manual.Springer-Verlag.1998 The.Algorithm.Design.Manual.Springer-Verlag.1998

18.04.2013 Views

Approximation Algorithms ● Approximating Vertex Cover ● The Euclidean Traveling Salesman Next: Approximating Vertex Cover Up: Intractable Problems and Approximations Previous: War Story: Hard Against Algorithms Mon Jun 2 23:33:50 EDT 1997 file:///E|/BOOK/BOOK3/NODE119.HTM (2 of 2) [19/1/2003 1:29:57]

Approximating Vertex Cover Next: The Euclidean Traveling Salesman Up: Approximation Algorithms Previous: Approximation Algorithms Approximating Vertex Cover As we have seen before, finding the minimum vertex cover of a graph is NP-complete. However, a very simple procedure can efficiently find a cover that is at most twice as large as the optimal cover: VertexCover(G=(V,E)) u or v. while do: Select an arbitrary edge Add both u and v to the vertex cover Delete all edges from E that are incident on either It should be apparent that this procedure always produces a vertex cover, since each edge is only deleted immediately after an incident vertex has been added to the cover. More interesting is the claim that any vertex cover must use at least half as many vertices as this one. Why? Consider just the edges selected by the algorithm. No two of these edges can share a vertex. Therefore, any cover of just these edges must include at least one vertex per edge, which makes it at least half the size of the greedy cover. There are several interesting things to notice about this algorithm: ● Although the procedure is simple, it is not stupid - Many seemingly smarter heuristics can give a far worse performance in the worst case. For example, why not modify the procedure above to select only one of the two vertices for the cover instead of both. After all, the selected edge will be equally well covered by only one vertex. However, consider the star-shaped graph of Figure . This heuristic will produce a two-vertex cover, while the single vertex heuristic can return a cover as large as n-1 vertices, should we get unlucky and repeatedly select the leaf instead of the center as the cover vertex. file:///E|/BOOK/BOOK3/NODE120.HTM (1 of 2) [19/1/2003 1:29:58]

Approximation <strong>Algorithm</strong>s<br />

● Approximating Vertex Cover<br />

● <strong>The</strong> Euclidean Traveling Salesman<br />

Next: Approximating Vertex Cover Up: Intractable Problems and Approximations Previous: War Story:<br />

Hard Against<br />

<strong>Algorithm</strong>s<br />

Mon Jun 2 23:33:50 EDT 1997<br />

file:///E|/BOOK/BOOK3/NODE119.HTM (2 of 2) [19/1/2003 1:29:57]

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!