
300 Chapter 12. Dense Instances of Hard Optimization Problems
Theorem 12.3. Let Opt denote the optimal value of the objective function of
a smooth degree d integer program. For each ~ > 0 there is an n O(1/e2) time
algorithm computing a 0-1 assignment to the variables which satisfies
p(xl,...,Xn) >1 Opt - end for a maximization problem, and
p(xl,...,Xn) <~ Opt + end for a minimization problem.
As we will see, the approximation scheme with additive performance guarantee
yields a (multiplicative) PTAS when applied to dense instances of the optimiza-
tion problems we are concerned with. But first, let us describe the underlying
ideas, treating MAXCUT as an example. We defer the proof of the theorem until
Section 12.3.
12.2 Motivation and Preliminaries
Let G = (V,E) be an undirected graph with vertex set V, (IV[ = n), and edge
set E. F(v) := {u 9 V [ (u, v) 9 E} denotes the set of vertices adjacent to vertex
v. The MAXCUT problem is to determine a set W C V such that the number of
edges having one endpoint in W and the other endpoint in V - W is maximized.
We can easily formulate MAXCUT as a smooth quadratic integer program if we
introduce a variable Xv for each vertex v 9 V:
maximize ~ ((1-x~)- ~ x~)
vEV uEr(v)
subject to xve{0,1}, v9
Let us interpret Xv = 0 as "v is on the left-hand side W" and xv -- 1 as "v is on
the right-hand side V - W" of the cut. In the above sum we count for each left
vertex the number of its neighbors on the right.
In a maximum cut each vertex must be situated opposite to the majority of its
neighbors, because otherwise one could move a vertex and increase the number
of edges crossing the cut. So, we could determine the position of a vertex, if we
knew to which side most of its neighbors belong. It seems as if nothing is won,
since we do not know the neighbors' positions either.
A useful trick in order to cope with this circularity is taking a sample and fixing
the positions of the sampled vertices arbitrarily. For the size of the sample we
choose k = O(log n).
Once we have arranged the sampled vertices, we could place each unsampled
vertex opposite the majority of its sampled neighbors. This will not be successful,
unless the numbers of right and left sampled neighbors differ a great deal. But
a different approach is more promising: By inspecting the sample, we can for