|
: http://www.cs.ucr.edu/~neal/wiki/wiki.pl?ClassW04ApproxAlgs --- UCR graduate seminar on approximation algorithms : http://www.cs.ucr.edu/~neal/index.cgi?q=chapter --- book chapter introducing approximation algorithms for NP optimization problems. |
: http://www.cs.ucr.edu/~neal/teaching --- UCR graduate seminars on approximation algorithms : http://www.cs.ucr.edu/~neal/publications?paper=Klein99Approximation --- chapter - introduction to approximation algorithms for NP optimization problems. |
Many decision problems have closely related optimization versions. For example, VERTEX-COVER can be formulated as a decision problem, but it can also be formulated as: "Given a graph G, find a vertex cover of minimum size." Similarly, CLIQUE, MAX-CUT, DOMINATING-SET can be formulated as optimization problems. Of course, the optimization versions of these problems are also hard, in the sense that if you had a polynomial-time algorithm for any one of them, you would be able to solve the decision problem in polynomial time too, and so P would equal NP.
However, in some cases the optimization problems may be approximately solved in polynomial time. For example, in polynomial time I can find a vertex cover whose size is at most 2 times the minimum possible. An algorithm that does this is called a 2-approximation algorithm.
Another example: in poly-time I can find a cut whose size is at least 1/2 times the maximum possible.
It is also possible to prove hardness results for approximation problems. For example, unless P=NP, it is known that there is no 1.0001-approximation algorithm for vertex cover.
Most natural hard optimization problems seem to fall into one of these classes:
For more information, see the following: