When solving Constraint Satisfaction Problems (CSPs), it is desirable to find multiple solutions, or to find solutions that
are robust, allowing us to modify the values of variables without breaking the solution. Furthermore, we would like to be
able to represent these multiple solutions in a compact manner. We present a method for improving the performance of, and
solutions returned by,
... [Show full abstract] stochastic local search using maximal independent sets of the constraint graph. Given an independent set, this information can be used to significantly speed up the process of
solving a CSP by reducing the search space. The CSP is partitioned into two sets of variables I and [`(I)]\bar{I}, where I is a maximal independent set of the constraint graph. In this way, search is concentrated only on the variables of [`(I)]\bar{I}, reducing the search space by a factor exponential in the size of I. Also this technique can provide multiple solutions in a compact form with no extra cost, since if we find a set of valid
domain values for each variable in I, every element of the Cartesian product of these sets is a solution to the CSP. We focus on exploiting this information in
local search. This technique is limited to low-density graphs, since dense graphs are less likely to contain a large independent
set. The resulting solutions are robust with respect to the variables in the independent set. We compare the technique with
WalkSAT, as defined for CSPs by [2], on low-density random CSP instances generated according to model B, with 16 variables,
domain size 8, tightness 0.3 and density 0.1. The average CPU run-time for WalkSAT was 96.5 seconds, while the average for
WalkSAT_IS was 0.36 seconds. Also, while WalkSAT returns one solution, the average number of solutions returned by WalkSAT_IS
per instance was 47,536,305 solutions This is a dramatic improvement in performance, as well as in the number of solutions
returned. This technique falls in the category of algorithms exploiting backdoor variables [3]. A related technique is the
cycle-cutset technique [2]. Related work on SAT problems can be found in [4]. Future work will involve a wider range of experiments.
Also we plan to perform a comparison with the cycle-cutset technique.