SAT-based versus CSP-based Constraint Weighting for Satisfiability Duc Nghia Pham and John Thornton and Abdul Sattar and Abdelraouf Ishtaiwi Institute for Integrated and Intelligent System Griffith University, Queensland, Australia email:{d.n.pham, j.thornton, a.sattar, a.ishtaiwi}@griffith.edu.au Abstract Recent research has focused on bridging the gap between the satisfiability (SAT) and constraint satisfaction problem (CSP) formalisms. One approach has been to develop a many-valued SAT formula (MV-SAT) as an intermediate paradigm between SAT and CSP, and then to translate existing highly efficient SAT solvers to the MV-SAT domain. Experimental results have shown this approach can achieve significant improvements in performance compared with the traditional SAT and CSP approaches. In this paper, we follow a different route, developing SAT solvers that can automatically recognise CSP structure hidden in SAT encodings. This allows us to look more closely at how constraint weighting can be implemented in the SAT and CSP domains. Our experimental results show that a SAT-based approach to handle weights, together with CSP-based approach to variable instantiation, is superior to other combinations of SAT and CSP-based approaches. A further experiment on the round robin scheduling problem indicates that this many-valued constraint weighting approach outperforms other state-of-the-art solvers. Introduction Constraint satisfaction is an intuitively simple but expressively powerful concept. Over the last three decades, it has emerged as a major research field within artificial intelligence and computer science. Much of this research has focused on two areas: firstly the modelling of complex problems as constraint satisfaction problems (CSPs), e.g. in planning and scheduling, scene analysis, combinatorial problems, etc., and secondly the development of search techniques for efficiently solving such problems. While modelling hard real-world problems as CSPs remains an interesting research challenge (e.g., in bioinformatics), it has recently been recognised that many CSPs can be reformulated as satisfiability (SAT) problems and solved more efficiently using modern SAT solvers (Hoos 1999b; Walsh 2000). Examples of such problem domains include planning (Kautz & Selman 1996), scheduling (Béjar & Manyà 2000), hardware verification (Velev & Bryant 2003) and combinatorial problems (Kautz et al. 2001). c 2005, American Association for Artificial IntelliCopyright ° gence (www.aaai.org). All rights reserved. However, the encoding of CSPs as SAT problems raises further issues: firstly, many real world problems are more naturally formulated using non-Boolean variables, i.e. variables that can have more than two values. This means a SAT encoding can result in exponential increases in problem size. Secondly, the structure of a CSP, when reformulated as SAT, is usually flattened out and remains hidden in the encoding. This loss of structure can have negative impacts on solver performance. These concerns have motivated the investigation of hybrid models of SAT and CSP representations. For example, the automated theorem proving community has studied many-valued clausal formulas that represent conjunctive normal forms (CNF) of many-valued domain variables (Ansótegui et al. 2003). This representation enables SAT solvers to exploit the highly compact and structured nature of the CSP variables. More recent studies have looked at bridging the gap between SAT and CSP formalisms, and have produced a new generation of powerful many valued (MV-SAT) solvers, such as Mv-Satz (Ansótegui et al. 2003), a many-valued variant of Chaff (Ansótegui, Larrubia, & Manyà 2003), NB-WalkSAT (Frisch & Peugniez 2001) and Regular-SAT (Béjar et al. 2001). These methods can solve hard combinatorial problems, such as all interval series, round robin scheduling and quasigroup completion at a level unmatched by existing standard SAT and CSP solvers. On the other hand, stochastic local search (SLS) SAT solvers have been significantly improved in recent years. Within this group, dynamic local search (DLS) techniques (Hoos & Stützle 2005) have proved the most promising, especially for larger and more difficult problems. The underlying idea of a DLS approach is to dynamically adjust the weights of false clauses during the search, thereby escaping local minima and moving quickly towards a solution. The superiority of such DLS algorithms over nonweighting SLS solvers has been demonstrated on a wide range of SAT benchmarks (Hutter, Tompkins, & Hoos 2002; Thornton et al. 2004), but as yet DLS has not been explicitly applied to the many valued SAT domain. From this, two questions arise: firstly, will the superior performance of DLS algorithms still be maintained in the MV-SAT domain? And secondly, what is the most suitable way for an MV-SAT DLS solver to handle clause weights? In this paper, we aim to answer these questions through an investigation of the behaviour and performance of PAWS AAAI-05 / 455 (Thornton et al. 2004) and SAPS (Hutter, Tompkins, & Hoos 2002) in the MV-SAT domain. We chose PAWS and SAPS because they represent the state-of-the-art for DLS SAT solving using additive and multiplicative weighting respectively. We firstly extend the method of Ansótegui, Larrubia, & Manyà (2003) to make these SAT solvers automatically recognise the underlying structure of CSP variables and constraints hidden inside SAT formulas. Based on this recovered knowledge, we modified the SAT versions of PAWS and SAPS in small steps until they became CSPlike DLS algorithms. This approach allows us to look more closely at how constraint weighting should be handled in the MV-SAT domain. Our experimental results show that a SATbased approach to handle weights, together with CSP-based approach to variable selection, is superior to other combinations of SAT and CSP-based approaches. Our empirical results on the round robin scheduling problem also indicate that the proposed many-valued constraint weighting approach outperforms other state-of-the-art SAT solvers. The remainder of the paper is structured as follows: the next section reviews and discusses how modern DLS algorithms handle weights in the SAT domain. We then describe how to make SAT solvers automatically recognise hidden CSP structure. Further, we describe how constraint weighting should be handled in the many-valued domain by comparing the effects of SAT and CSP-based approaches to weight adjustment in combination with the SAT and CSPbased variable instantiation methods. In the next section we discuss our experimental study, describing the experimental design and analysing the performance results. Finally, we conclude the paper with some remarks on related and future work. Dynamic Local Search for SAT Like other SLS techniques, DLS algorithms start with a random truth assignment for each Boolean variable in a given formula, and iteratively flip single literals that minimise the objective function until a solution is found or a local minimum is encountered. The basics of DLS are sketched in algorithm 1. The main idea is that weights are typically associated with the clauses of a given formula and the sum of weights of unsatisfied clauses is used as the objective function to select the next move. During the search, DLS solvers dynamically adjust the clause weights and hence modify the search landscape to effectively avoid or escape from local minima. Since the introduction of the Breakout heuristic (Morris 1993), DLS algorithms have evolved into several variants which differ in which clause weights should be updated (all clauses or only unsatisfied clauses), how these weights should be adjusted (additively or multiplicatively), and when weight updates should take place (deterministically or probabilistically) (Hoos & Stützle 2005). Despite these differences, the underlying strategy to escape from local minima is based on two mechanisms: increasing and reducing weights.1 1 Also known as scaling and smoothing in multiplicative weighting DLS algorithms. Algorithm 1 DLS(F) generate a random starting point; set the weight wi of each clause ci to 1; while solution is not found and not timeout do find a list L of variables that minimise Σwi if flipped; if such list L exists then randomly flip a variable in L; else update the weight of each false clause; end if end while When a DLS search procedure encounters a local minimum, weights are increased on the currently unsatisfied clauses, changing the surface of the search landscape. As a result, the search is forced to move to a new neighbour that can satisfy at least one of the currently unsatisfied clauses, thus escaping from the original local minimum. However, this increasing mechanism has side-effects: as it locally modifies the search landscape to escape the current local minimum, it possibly gives rise to other new local minima, which may in some cases be even harder to avoid or escape (Morris 1993). Therefore, the reducing mechanism was introduced to counter these side-effects. After a certain period of time, the weights of chosen clauses are reduced in order to make the search forget the high costs of violating clauses which are no longer helpful. CSP-based Dynamic Local Search for SAT In this section we describe the procedures used to integrate the CSP-based variable instantiation heuristic and the CSPbased weighting mechanism into SAPS and PAWS: CSP Variable Extraction In (2003), Ansótegui, Larrubia, & Manyà hypothesised that SAT solvers could take advantage of the domain structure of CSP variables. They embedded a detection mechanism into Chaff to automatically identify the set of Boolean variables that model the same CSP variable. Their experiments showed that the performance of Chaff is significantly boosted by the integration of a CSP-based variable instantiation heuristic. In a direct SAT encoding, a CSP variable Xi with a domain Di = {1, 2, . . . , m} is encoded using a set of m Boolean variables Bi = {xsi |s ∈ [1..m]} so that the truth value of xsi represents the assignment of value s to Xi . The following clauses are also added to the SAT formula to ensure the exclusive-or relationship of CSP variable-value assignments, i.e. the attribute that Xi can be instantiated with exactly one value of Di : • One at-least-one (ALO) clause, x1i ∨ . . . ∨ xm i , to ensure that at least one domain value is assigned to Xi ; and • A set of at-most-one (AMO) clauses, ¬xsi ∨ ¬xti where 1 ≤ s ≤ t ≤ m, to ensure that at most one domain value can be assigned to Xi . AAAI-05 / 456 By detecting these two types of clauses in a given SAT formula, we can recognise the sets of Boolean variables that model the underlying CSP variables. It is worth noting that several studies on SAT encodings of CSPs have reported an improvement of performance when applying SLS solvers to a direct SAT encoding without the AMO clauses (known as a multivalued encoding (Prestwich 2004)).2 A CSP solution can then easily be extracted from a SAT solution by taking any SAT-assigned value for each CSP variable. CSP-based Variable Instantiation Scheme We firstly integrated the CSP variable extraction mechanism into SAPS and PAWS to automatically extract the underlying CSP variable structures from the SAT encodings (with or without the presence of AMO clauses). We then modified the variable instantiation mechanism, which controls how a Boolean variable is selected and flipped, so that the exclusive-or relationship was built into the operation of the algorithms. This is related to the work on NB-WalkSAT (Frisch & Peugniez 2001) and Regular-SAT (Béjar et al. 2001), that similarly enforces the unique instantiation of variables with non-binary domains within an MV-SAT framework. The new CSP-based variable instantiation heuristic ensures that for each underlying CSP variable Xi there is exactly one true Boolean variable xti at any one time during the search, while all related Boolean variables xsi ∈ Bi − {xti } remain false. Each time the search looks for a Boolean variable to flip, all false variables xsi involved in false clauses, and all associated variables xui ∈ Bi − {xti , xsi } are considered for selection. This differs from the original SAT-based variable instantiation heuristic which ignores these associated variables. When a false variable xsi is flipped, the previously associated true variable xti is set to false in one operation. Hence all ALO and AMO clauses become redundant and can be removed from the problem. CSP-based Weight Updating Scheme In a binary CSP, a constraint Cij between two CSP variables Xi and Xj defines a set of paired domain values (s, t) that Xi and Xj cannot take simultaneously. In the direct SAT encoding of a binary CSP, such a constraint Cij is encoded using a set of conflict (CON) clauses. A CON clause cst ij , of the form ¬xsi ∨ ¬xtj , ensures that if Xi is instantiated with value s then Xj cannot be instantiated with value t, or vice versa. In a binary CSP, weight is generally added to unsatisfied constraints, whereas in a direct SAT encoding weight is added to particular pairs of values that violate the underlying CSP constraint. Hence, in a CSP approach, all possible instantiations that violate a constraint are penalised, whereas in a SAT approach, only the current violating instantiation is penalised. In separate research, a similar fine-grained weighting scheme was employed in the GENET artificial neural network CSP solver (Choi, Lee, & Stuckey 2000). It is still an open research question as to which weighting approach is superior for any given problem class. In order to answer this question, we integrated a CSP constraint extraction mechanism into SAPS and PAWS to automatically recognise the set of CON clauses that represents the underlying CSP constraint. We then modified the weight updating mechanism in SAPS and PAWS so that, in both the weight increasing and reducing phases, either the weight of a particular unsatisfied clause cst ij is updated or the weights of all clauses that represent an unsatisfied CSP constraint Cij are updated. With the new architecture, we are able to compare different variants of weighting approaches based on the combinations between SAT-based and CSP-based variable instantiation and weighting mechanisms. Experimental Results and Discussion Based on this new architecture, we implemented four variants of SAPS and four variants of PAWS, using combinations of the SAT and CSP-based heuristics described above: • SVI+SWM (ss): SAT-based variable instantiation and SAT-based weighting mechanism (the original DLS SAT implementation); • SVI+CWM (sc): SAT-based variable instantiation and CSP-based weighting mechanism; • CVI+SWM (cs): CSP-based variable instantiation and SAT-based weighting mechanism; • CVI+CWM (cc): CSP-based variable instantiation and CSP-based weighting mechanism (a total CSP-like DLS variant for SAT); As one of the aims of this paper is to evaluate the impact of SAT and CSP-based weighting heuristics on the performance of DLS SAT solvers, but not to compare additive with multiplicative weighting, we selected the reactive version of SAPS (RSAPS) and used the default values for α (1.3) and ρ (0.8) to avoid the time consuming parameter tuning required for SAPS.3 Note also that Hutter, Tompkins, & Hoos (2002) reported that the performance of RSAPS is comparable to SAPS on a wide range of benchmark problems. Problem Set We selected all-interval-series, graph colouring, uniform random binary CSPs and round robin problems as the benchmarks to evaluate the performance of the eight DLS SAT solver variants. We obtained the graph colouring (flat100 and flat200) and random binary CSPs from the authors of SAPS and PAWS. To further evaluate the scalability of the DLS variants, we generated 10 instances of the flat graph colouring problem using Culberson’s generator with 450 vertices, 3 colours and an edge density of 0.018.4 This is the same generator used for the flat100 and flat200 problems. We then translated these 10 instances into direct SAT encodings and ran 3 2 This case was not considered in (Ansótegui, Larrubia, & Manyà 2003). Three out of four parameters of SAPS require fine tuning to achieve optimal performance of SAPS (Thornton et al. 2004). 4 http://web.cs.ualberta.ca/∼joe/Coloring/ AAAI-05 / 457 7 7 PAWS Scalability x 10 6 SS SC CS CC 5 4 3 2 1 0 100−m 100−h 200−m 200−h 450−m 450−h Problem (by difficulty) 0 100−m 100−h 200−m 200−h 450−m 450−h Problem (by difficulty) Figure 1: Scalability of PAWS and RSAPS variants on flat problems. The problems are ordered by hardness. The N m and N -h stand for the median and hard instances of the flatN series. PAWS Run−Time Distribution SAPS Run−Time Distribution 100 SS SC CS CC 80 60 40 20 0 0 200 400 600 800 Time (in seconds) 1000 1200 Percent successful runs Table 1 presents the results of PAWS and RSAPS variants on the structured CSP benchmarks, consisting of the allinterval-series and graph colouring problems. These results show the CVI+SWM combination consistently dominates the other combinations, both within the PAWS and RSAPS results and across problem classes. By grouping the four variants into a CVI-based and an SVI-based set, we can consider the impact of the different weighting mechanisms on the performance of RSAPS and PAWS, and ignore the effects of the variable instantiation heuristics. Such an analysis shows that in both sets the performance of the SWM variants are up to order of magnitude better than the CWM variants both in terms of execution time and local search cost (the number of flips performed to find a solution). Hence, SWM emerges as the best weighting approach for all-interval-series and graph colouring problems. We used the same approach to evaluate the impact of the different variable instantiation heuristics on the performance of PAWS and RSAPS. In contrast to the weighting methods, the CSP-based variable instantiation heuristic emerges as significantly better than the SAT-based heuristic. For PAWS, the CSP-based variants performed about 10 times better than the SAT-based variants on the flat450 series in terms of execution time and around 30 times better in terms of local search cost. For RSAPS, the relative dominance of the CSPbased variants was even more marked. Figure 1 graphs the mean local search costs of the RSAPS variants and PAWS variants on the flat graph colouring series. These two graphs clearly indicate that the performance of the CVI-based variants scale better than the SVI-based variants as the problems become harder and larger. In the random binary CSP domain, the CVI+SWM variant is generally still the better of the four variants, although for PAWS the performance of the CVI+CWM variant is close to the CVI+SWM variant and even slightly better in terms of the local search cost. However, the PAWS’ CVI+SWM variant is still better in terms of execution time, as shown in the run-time distributions (RTDs) (Hoos 1999a) of Figure 2. In contrast to the results for the structured CSPs, Table 2 shows a reversal in the relative performance between Percent successful runs 100 http://www.satlib.org 3 1 Structured and Random Binary CSPs 5 SS SC CS CC 4 2 SAPS Scalability x 10 5 Flips 6 Flips RSAPS to determine the median and hardest problem instances. Other problems used in this study are available at SATLIB.5 The results of the PAWS and SAPS variants on these benchmark problems are shown in Tables 1, 2 and 3. Each variant was run 1, 000 times on each benchmark problem except the 50v15d40c problems (100 runs) and the round robin scheduling for 16, 18 and 20 teams (with 100, 50 and 10 runs, respectively). All the time results are in seconds unless otherwise stated, and all experiments were performed on a Sun supercomputer with 8 × Sun Fire V880 servers, each with 8 × UltraSPARC-III 900MHz CPU and 8GB memory per node. SS SC CS CC 80 60 40 20 0 0 200 400 600 800 Time (in seconds) 1000 1200 Figure 2: RTDs of PAWS and RSAPS variants on the 50v15d40c-hard instance. SAT-weighting and CSP-weighting when using the SATvariable instantiation. Here, RSAPS prefers CSP-weighting on all the random binary problems, and PAWS prefers CSPweighting on the harder, larger problems. However, as the SAT-variable instantiation is not competitive, this result is of minor interest. Round Robin Scheduling Problems The results in the first experiment indicate that a combined application of CSP-based variable instantiation and a SATbased weighting mechanism can significantly boost the performance of DLS SAT solvers. To further clarify the efficiency of this approach in comparison with other stateof-the-art SAT solvers, we ran a second experiment on the round robin scheduling problem. In recent years, this sport tournament problem has become an important benchmark for the combinatorial search community (Gomes et al. 1998). In 2000, Béjar & Manyà translated this problem into the SAT domain and was able to find a solution for 20 teams in an average of 12.73 hours using the R-Novelty algorithm. Before this work, the 20 team instance was unsolvable by either combinatorial, SAT or MV-SAT approach. For this experiment, we ran the CVI+SWM variants of RSAPS and PAWS, called MV-RSAPS and MV-PAWS, on seven round robin problem instances from 8 teams to 20 teams (these problems were originally used in (Béjar & Manyà 2000)6 ). Table 3 shows the results of MV-PAWS and MV-RSAPS in comparison with the original PAWS and RSAPS and two of the best complete SAT solvers, 6 AAAI-05 / 458 http://web.udl.es/usuaris/d4372149/ PAWS Problem RSAPS PAWS % Time Flips % Time Flips Time Flips % Time SVI+CWM 100% 0.14 37, 704 100% 0.14 34, 842 v=30 Flips SVI+CWM 100% 0.06 9, 490 100% 0.14 23, 649 SVI+SWM 100% 0.08 24, 684 100% 0.07 20, 393 CVI+CWM 100% 0.05 5, 316 100% 0.04 4, 630 d=10 SVI+SWM 100% 0.04 6, 845 100% 0.21 43, 459 c=80 CVI+CWM 100% 0.02 1, 522 100% 0.03 CVI+SWM 100% 0.04 5, 040 100% 0.03 3, 063 2, 379 median CVI+SWM 100% 0.02 1, 584 100% 0.03 SVI+CWM 100% 2.34 435, 026 100% 1.95 2, 216 394, 003 v=30 SVI+CWM 100% 0.08 14, 160 100% 0.20 38, 798 SVI+SWM 100% 1.17 250, 188 100% CVI+CWM 100% 0.37 34, 830 100% 0.67 157, 082 d=10 SVI+SWM 100% 0.07 10, 298 100% 0.41 77, 230 0.36 27, 989 c=80 CVI+CWM 100% 0.03 2, 592 100% 0.05 CVI+SWM 100% 0.35 33, 000 4, 116 100% 0.16 14, 794 hard CVI+SWM 100% 0.03 2, 447 100% 0.04 flat100- SVI+CWM 100% 0.01 2, 994 9, 170 100% 0.02 8, 663 v=30 SVI+CWM 100% 0.14 23, 813 100% 0.27 45, 249 median SVI+SWM 100% CVI+CWM 100% 0.01 8, 348 100% 0.01 7, 677 d=10 SVI+SWM 100% 0.07 14, 998 100% 0.40 84, 141 0.01 1, 644 100% 0.01 2, 134 c=40 CVI+CWM 100% 0.05 3, 882 100% 0.09 CVI+SWM 6, 844 100% 0.00 1, 606 100% 0.00 1, 890 median CVI+SWM 100% 0.04 3, 811 100% 0.05 5, 094 flat100- SVI+CWM 100% 0.05 35, 614 100% 0.05 30, 025 v=30 SVI+CWM 100% 0.14 23, 171 100% 0.31 50, 710 hard SVI+SWM 100% 0.05 37, 311 100% 0.06 30, 063 d=10 SVI+SWM 100% 0.11 23, 266 100% 0.48 98, 759 CVI+CWM 100% 0.02 7, 894 100% 0.02 8, 229 c=40 CVI+CWM 100% 0.05 4, 176 100% 0.09 6, 723 CVI+SWM 100% 0.02 7, 736 100% 0.02 8, 169 hard CVI+SWM 100% 0.04 3, 729 100% 0.06 5, 063 flat200- SVI+CWM 100% 0.29 181, 566 100% 0.64 361, 786 v=50 SVI+CWM 100% 1.49 134, 128 99.8% 76.04 5, 631, 474 median SVI+SWM 100% 0.19 162, 398 100% 0.49 296, 697 d=10 SVI+SWM 100% 1.37 132, 363 99.1% CVI+CWM 100% 0.12 31, 786 100% 0.24 60, 235 c=80 CVI+CWM 100% 0.62 25, 575 100% 2.49 87, 653 CVI+SWM 100% 0.08 25, 200 100% 0.20 48, 278 median CVI+SWM 100% 0.60 29, 590 100% 1.47 59, 583 flat200- SVI+CWM 100% 10.03 6, 819, 680 100% 9.05 4, 807, 225 v=50 SVI+CWM 100% 1.90 159, 213 99.8% 92.65 6, 892, 970 hard SVI+SWM 100% 4.39 3, 153, 438 100% 6.06 4, 148, 664 d=10 SVI+SWM 100% 1.62 155, 124 98.9% CVI+CWM 100% 1.73 573, 207 100% 2.74 676, 973 c=80 CVI+CWM 100% 0.74 30, 196 100% 3.17 110, 510 CVI+SWM 100% 1.18 426, 136 100% 1.62 461, 815 hard CVI+SWM 100% 0.67 33, 221 100% 1.71 68, 682 flat450- SVI+CWM 100% 54.05 15, 407, 113 100% 99.42 28, 004, 978 v=50 SVI+CWM 100% 169.42 11, 878, 897 54% 729.61 58, 600, 553 median SVI+SWM 100% 24.25 7, 902, 070 100% 56.56 15, 966, 332 d=10 SVI+SWM 100% 192.58 17, 196, 220 44% 889.19 78, 820, 237 CVI+CWM 100% 2.72 341, 017 100% 33.00 3, 135, 384 c=40 CVI+CWM 100% 47.12 1, 593, 711 99% 84.20 2, 722, 482 CVI+SWM 100% 2.22 317, 243 100% 12.11 1, 203, 609 median CVI+SWM 100% 35.04 1, 542, 803 100% 38.32 1, 442, 271 100% 226.70 15, 813, 749 37% ais12 Problem Variant RSAPS % ais10 Variant 130.43 11, 586, 967 152.19 13, 704, 204 flat450- SVI+CWM 100% 190.24 55, 363, 281 93.2% 192.16 54, 140, 275 v=50 SVI+CWM hard SVI+SWM 100% 107.65 34, 479, 371 99.4% 111.74 31, 867, 483 d=10 SVI+SWM CVI+CWM 100% 13.29 1, 643, 087 100% 73.29 6, 838, 029 c=40 CVI+CWM 100% 72.99 2, 522, 204 93% 225.51 8, 200, 102 CVI+SWM 100% 12.36 1, 672, 053 100% 36.78 3, 574, 930 hard CVI+SWM 100% 58.75 2, 664, 852 100% 90.90 3, 455, 520 g125.17 SVI+CWM 100% 22.56 1, 348, 325 0% 600.00 n/a SVI+SWM 100% 9.82 744, 124 0% 600.00 n/a CVI+CWM 100% 5.24 166, 449 100% 371.78 8, 829, 445 100% CVI+SWM 100% 4.53 159, 275 60.85 1, 718, 548 g250.29 SVI+CWM 100% 69.23 579, 887 0% 600.00 n/a SVI+SWM 100% 28.71 359, 073 0% 600.00 n/a CVI+CWM 100% 13.86 79, 135 0% 600.00 n/a CVI+SWM 100% 12.36 75, 718 94% 215.40 1, 174, 523 Table 1: Structured CSP problems zChaff.2004.11.15 and Satz215. We also include the results of R-Novelty reported in (Béjar & Manyà 2000), in which the top numbers are the original results and the bottom numbers are the approximated results if run on our test machine. These results show MV-PAWS is a clear winner, particularly on the larger problems where it can find a solution for the 20 team instance within one hour, whereas R-Novelty takes more than 3 hours. Conclusions and Future Work We have integrated a structure extraction mechanism into SAPS and PAWS that automatically recovers the underlying CSP variable and constraint structure hidden in SAT formu- 99% 214.15 19, 248, 169 954.80 75, 526, 227 28% 1047.34 91, 501, 564 Table 2: Random binary CSP problems las. Based on this new architecture, we are able to explore and evaluate the impact of different SAT and CSP-based heuristics for instantiating variables and handling weights on the performance of DLS SAT solvers. Our experimental results show that a SAT-based weighting mechanism together with a CSP-based variable instantiation is the most suitable DLS approach to solve direct SAT-encodings of CSPs. A further comparison on the round robin scheduling problem shows that this approach significantly outperforms other methods. In particular, using the MV-PAWS variant with the CVI and SWM heuristics, we can find solutions for the 20 team round robin scheduling problem within one hour, while the previous state-of-the-art approach required several hours to solve the same problem. In 2002, Ostrowski et al. produced a pioneering paper on recognising the variable dependencies in SAT formulas through logic gates of the form {⇔, ∧, ∨}. Within this framework, the unique instantiation attribute of CSP variables discussed in this paper can be seen as an exclusive-or gate. In future work, we intend to further integrate the use of gates into SLS SAT solvers, especially DLS techniques. AAAI-05 / 459 Succ. Problem n=8 Variant MV-PAWS MV-RSAPS PAWS RSAPS n = 10 MV-PAWS MV-RSAPS PAWS RSAPS n = 12 MV-PAWS MV-RSAPS PAWS RSAPS n = 14 MV-PAWS MV-RSAPS PAWS RSAPS n = 16 MV-PAWS MV-RSAPS PAWS RSAPS n = 18 MV-PAWS MV-RSAPS PAWS RSAPS n = 20 MV-PAWS MV-RSAPS PAWS RSAPS Time Flips Param % mean mean Time Time Satz zChaf f R-Novelty 35 100% 0.01 610 1.85 n/a 100% 0.01 627 0.14 3 100% 0.02 2, 879 n/a 100% 0.16 18, 428 12 100% 0.16 5, 057 17.24 n/a 100% 0.35 9, 694 3190.37 3 100% 0.39 24, 177 n/a 100% 70.85 4, 236, 607 n/a n/a 11 100% 2.29 36, 912 115.27 16.20 n/a 100% 7.41 90, 947 > 24hrs 4.50 3 100% 9.01 258, 507 n/a 11% 3419.69 90, 818, 167 8 100% 26.66 242, 734 > 24hrs 104.40 n/a 89.8% 253.71 1, 528, 434 > 24hrs 29.00 3 58% 423.70 5, 481, 201 0% > 24hrs n/a 209.71 1, 352, 252 > 24hrs 1008.00 60% 16535.46 74, 040, 590 > 24hrs 280.00 n/a 6 n/a 3 n/a 100% 0% > 24hrs n/a 0% > 24hrs n/a 1652.95 6, 985, 404 > 24hrs 7128.00 n/a 0% > 24hrs n/a > 24hrs 1980.00 3 0% > 24hrs n/a 5 n/a 100% 0% > 24hrs n/a 3177.17 9, 079, 655 > 24hrs 45828.00 n/a 0% > 24hrs n/a > 24hrs 12730.00 3 0% > 24hrs n/a n/a 0% > 24hrs n/a 4 100% Table 3: Round robin results Another interesting direction is to extend this work to different SAT encodings of CSPs. Gent (2002) looked at the SAT support encoding, which allows complete SAT solvers to maintain the arc consistency of CSP problems by using unit propagation. He reported that local search techniques such as WalkSAT can also benefit from this encoding. It would therefore be interesting to investigate the behaviour and performance of SAT and CSP-based variants of DLS SAT solvers using the support encoding. References Ansótegui, C.; Larrubia, J.; Li, C. M.; and Manyà, F. 2003. Mv-Satz: A SAT solver for many-valued clausal forms. In Proceedings of JIM-2003. Ansótegui, C.; Larrubia, J.; and Manyà, F. 2003. Boosting Chaff’s performance by incorporating CSP heuristics. In Proceedings of CP-2003, 96–107. Béjar, R., and Manyà, F. 2000. Solving the round robin problem using propositional logic. In Proceedings of AAAI-2000, 262–266. Béjar, R.; Cabiscol, A.; Fernández, C.; Manyà, F.; and Gomes, C. P. 2001. Capturing structure with satisfiability. In Proceedings of CP-2001, 137–152. Choi, K.; Lee, J. H.-M.; and Stuckey, P. J. 2000. A La- grangian reconstruction of GENET. Artificial Intelligence 123:201–215. Frisch, A., and Peugniez, T. 2001. Solving non-Boolean satisfiability problems with stochastic local search. In Proceedings of IJCAI-2001. Gent, I. P. 2002. Arc consistency in SAT. In Proceedings of ECAI-02, 121–125. Gomes, C.; Selman, B.; McAloon, K.; and Tretkoff, C. 1998. Randomization in backtrack search: Exploiting heavy-tailed profiles for solving hard scheduling problems. In Proceedings of AIPS-1998. Hoos, H. H., and Stützle, T. 2005. Stochastic Local Search: Foundations and Applications. San Francisco, CA: Morgan Kaufmann. Hoos, H. H. 1999a. On the run-time behaviour of stochastic local search algorithms for SAT. In Proceedings of AAAI-1999, 661–666. Hoos, H. H. 1999b. SAT-encodings, search space structure, and local search performance. In Proceedings of IJCAI1999, 296–302. Hutter, F.; Tompkins, D. A. D.; and Hoos, H. H. 2002. Scaling and probabilistic smoothing: Efficient dynamic local search for SAT. In Proceedings of CP-2002, 233–248. Kautz, H., and Selman, B. 1996. Pushing the envelope: Planning, propositional logic, and stochastic search. In Proceedings of AAAI-1996, 1194–1201. Kautz, H.; Ruan, Y.; Achlioptas, D.; Gomes, C.; Selman, B.; and Stickel, M. 2001. Balance and filtering in structured satisfiable problems. In Proceedings of IJCAI-2001, 351–358. Morris, P. 1993. The Breakout method for escaping from local minima. In Proceedings of AAAI-1993, 40–45. Ostrowski, R.; Grégoire, E.; Mazure, B.; and Saı̈s, L. 2002. Recovering and exploiting strutural knowledge from CNF formulas. In Proceedings of CP-2002, 185–199. Prestwich, S. 2004. Full dynamic substitutability by SAT encoding. In Proceedings of CP-2004, 512–526. Thornton, J.; Pham, D. N.; Bain, S.; and Ferreira Jr., V. 2004. Additive versus multiplicative clause weighting for SAT. In Proceedings of AAAI-2004, 191–196. Velev, M. N., and Bryant, R. E. 2003. Effective use of Boolean satisfiability procedures in the formal verification of superscalar and VLIW microprocessors. Journal of Symbolic Computation 35(2):73–106. Walsh, T. 2000. SAT v CSP. In Proceedings of CP-2000, 441–456. AAAI-05 / 460