2 Chapter 6. Incomplete Algorithms
schemes which have made local search solvers highly competitive [14, 27, 47, 48,
78, 98, 101], and explore alternative techniques based on the discrete Lagrangian
method [92, 99, 102, 103]. We will close this chapter with a discussion of the phase
transition phenomenon in random k-SAT [20, 55, 76] which played a critical role
in the development of incomplete methods for SAT in the 1990s, and mention a
relatively new incomplete technique for SAT called Survey Propagation [73].
These ideas lie at the core of most of the local search based competitive
incomplete SAT solvers out there today, and have been refined and implemented in
a number of very successful prototypes including adaptg2wsat+, AdaptNovelty,
gNovelty+, R+AdaptNovelty+, SAPS, UBCSAT, UnitWalk, and Walksat. Rather
than going into the details of each individual solver, we hope to present the
broader computer science concepts that form the backbone of these solvers and
to provide the reader with enough background and references to further explore
the intricacies if desired.
We note that there are other exciting incomplete solution methodologies, such
as those based on translation to Integer Programming [43, 52], Evolutionary and
Genetic Algorithms [22, 24, 35, 61], and Finite Learning Automata [36], that we
will not discuss here. There has also been work on formally analyzing local search
methods, yielding some of the best o(2
n
) time algorithms for SAT. For instance,
the expected running time, ignoring polynomial factors, of a simple local search
method with restarts after every 3n “flips” has been shown to be (2 · (k − 1)/k)
n
for k-SAT [89, 90], which yields a complexity of (4/3)
n
for 3-SAT. This result has
been derandomized to yield a deterministic algorithm with complexity 1.481
n
up
to polynomial factors [21]. We refer the reader to Part 1, Chapter 12 of this
Handbook for a detailed discussion of worst-case upper bounds for k-SAT.
For the discussion in the rest of this chapter, it will be illustrative to think
of a propositional formula F with n variables and m clauses as creating a dis-
crete manifold or landscape in the space {0, 1}
n
× {0, 1, . . . , m}. The 2
n
truth
assignments to the variables of F correspond to the points in {0, 1}
n
, and the
“height” of each such point, a number in {0, 1, . . . , m}, corresponds to the num-
ber of clauses of F that are violated by this truth assignment. The solutions or
satisfying assignments for F are precisely the points in this landscape with height
zero, and thus correspond to the global minima of this landscape, or, equivalently,
the global minima of the function that maps each point in {0, 1}
n
to its height.
The search problem for SAT is then a search for a global minimum in this im-
plicitly defined exponential-size landscape. Clearly, if the landscape did not have
any local minima, a greedy descent would provide an effective search method.
All interesting formulas, however, do have local minima—the main challenge and
opportunity for the designers of local search methods.
This landscape view also leads one naturally to the problem of maximum
satisfiability or MAX-SAT: Given a formula F , find a truth assignment that
satisfies the most number of clauses possible. Solutions to the MAX-SAT problem
are, again, precisely the global minima of the corresponding landscape, only that
these global minima may not have height zero. Most of the incomplete methods
we will discuss in this chapter, especially those based on local search, can also work
as a solution approach for the MAX-SAT problem, by providing the “best found”
truth assignment (i.e., one with the lowest observed height) upon termination.