Advertisement

UnitWalk: A new SAT solver that uses local search guided by unit clause elimination

  • Edward A. Hirsch
  • Arist Kojevnikov
Article

Abstract

In this paper we present a new randomized algorithm for SAT, i.e., the satisfiability problem for Boolean formulas in conjunctive normal form. Despite its simplicity, this algorithm performs well on many common benchmarks ranging from graph coloring problems to microprocessor verification. Our algorithm is inspired by two randomized algorithms having the best current worst-case upper bounds ([27,28] and [30,31]). We combine the main ideas of these algorithms in one algorithm. The two approaches we use are local search (which is used in many SAT algorithms, e.g., in GSAT [34] and WalkSAT [33]) and unit clause elimination (which is rarely used in local search algorithms). In this paper we do not prove any theoretical bounds. However, we present encouraging results of computational experiments comparing several implementations of our algorithm with other SAT solvers. We also prove that our algorithm is probabilistically approximately complete (PAC).

Keywords

Boolean satisfiability local search empirical evaluation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    F. Asahiro, K. Iwama and E. Miyano, Random generation of test instances with controlled attributes, in: [17] (1996).Google Scholar
  2. [2]
    J. Culberson, I.P. Gent and H.H. Hoos, On the probabilistic approximate completeness of WalkSAT for 2-SAT, Technical Report APES-15A-2000, Department of Computer Science, University of Strathclyde (2000).Google Scholar
  3. [3]
    E. Dantsin, Two propositional proof systems based on the splitting method, Zapiski Nauchnykh Seminarov LOMI 105 (1981) 24–44 (in Russian), English translation: Journal of Soviet Mathematics 22(3) (1983) 1293–1305.zbMATHMathSciNetGoogle Scholar
  4. [4]
    E. Dantsin, A. Goerdt, E.A. Hirsch, R. Kannan, J. Kleinberg, C. Papadimitriou, P. Raghavan and U. Schöning, A deterministic (2 − 2 (k + 1))n algorithm for k-SAT based on local search, Theoretical Computer Science 289(1) (2002) 69–83.CrossRefzbMATHMathSciNetGoogle Scholar
  5. [5]
    E.Y. Dantsin, E.A. Hirsch, S.V. Ivanov and M.V. Vsemirnov, Algorithms for SAT and upper bounds on their complexity, Journal of Mathematical Sciences 118(2) (2003) 4948–4962, Russian original appears in: Zapiski Nauchnykh Seminarov POMI 277 (2001) 14–46.CrossRefMathSciNetGoogle Scholar
  6. [6]
    I.P. Gent and T. Walsh, Towards an understanding of hill-climbing procedures for SAT, in: Proceedings of the 11th National Conference on Artificial Intelligence, AAAI’93 (1993) pp. 28–33.Google Scholar
  7. [7]
    I.P. Gent and T. Walsh, Unsatisfied variables in local search, in: Hybrid Problems, Hybrid Solutions, ed. J. Hallam (IOS Press, 1995) pp. 73–85.Google Scholar
  8. [8]
    J. Gu, Efficient local search for very large-scale satisfiability problems, ACM SIGART Bulletin 3(1) (1992) 8–12.CrossRefGoogle Scholar
  9. [9]
    J. Gu and Q.-P. Gu, Average time complexity of the SAT1.2 algorithm, in: Proceedings of the 5th Annual International Symposium on Algorithms and Computation, ISAAC’94, Lecture Notes in Computer Science, Vol. 834 (1994) pp. 146–154.CrossRefGoogle Scholar
  10. [10]
    J. Gu, P.W. Purdom, J. Franco and B.W. Wah, Algorithms for satisfiability (SAT) problem: A survey, in: Satisfiability Problem: Theory and Applications (DIMACS Workshop), eds. D .Du, J. Gu and P.M. Pardalos, March 11–13, 1996, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Vol. 35 (AMS, 1997) pp. 19–152.Google Scholar
  11. [11]
    E.A. Hirsch, SAT local search algorithms: Worst-case study, Journal of Automated Reasoning 24(1–2) (2000) 127–143.CrossRefzbMATHMathSciNetGoogle Scholar
  12. [12]
    E.A. Hirsch and A. Kojevnikov, UnitWalk: A new SAT solver that uses local search guided by unit clause elimination, PDMI preprint 9/2001, Steklov Institute of Mathematics at St. Petersburg (2001).Google Scholar
  13. [13]
    H.H. Hoos, Stochastic local search — method, models, applications, Ph.D. thesis, Department of Computer Science, Darmstadt University of Technology (1998).Google Scholar
  14. [14]
    H.H. Hoos, On the run-time behaviour of stochastic local search algorithms for SAT, in: Proceedings of the 16th National Conference on Artificial Intelligence, AAAI’99 (1999) pp. 661–666.Google Scholar
  15. [15]
    H.H. Hoos and T. Stützle, Local search algorithms for SAT: An empirical evaluation, Journal of Automated Reasoning 24(4) (2000) 421–481.CrossRefzbMATHGoogle Scholar
  16. [16]
    H.H. Hoos and T. Stützle, SATLIB: An online resource for research on SAT, in: Highlights of Satisfiability Research in the Year 2000, Frontiers in Artificial Intelligence and Applications, Vol. 63 (IOS Press, 2000) pp. 283–292.Google Scholar
  17. [17]
    D.S. Johnson and M.A. Tricks (eds.), Cliques, Coloring and Satisfiability, DIMACS Series on Discrete Mathematics and Theoretical Computer Science, Vol. 26, AMS (1996).Google Scholar
  18. [18]
    A.P. Kamath, N.K. Karmarkar, K.G. Ramakrishnan and M.G.C. Resende, A continuous approach to inductive inference, Mathematical Programming 57 (1992) 215–238.CrossRefzbMATHMathSciNetGoogle Scholar
  19. [19]
    E. Koutsoupias and C.H. Papadimitriou, On the greedy algorithm for satisfiability, Information Processing Letters 43(1) (1992) 53–55.CrossRefzbMATHMathSciNetGoogle Scholar
  20. [20]
    T. Larrabee, Test pattern generation using Boolean satisfiability, IEEE Transactions on Computer-Aided Design 11(1) (1992) 6–22.CrossRefGoogle Scholar
  21. [21]
    C.M. Li and Anbulagan, Heuristics based on unit propagation for satisfiability problems, in: Proceedings of the International Joint Conference on Artificial Intelligence (1997) pp. 366–371.Google Scholar
  22. [22]
    H. Luckhardt, Obere Komplexitätsschranken für TAUT-Entscheidungen, in: Proceedings of Frege Conference 1984, Schwerin (1984) pp. 331–337.Google Scholar
  23. [23]
    D. McAllester, B. Selman and H. Kautz, Evidence in invariants for local search, in: Proceedings of the 14th National Conference on Artificial Intelligence, AAAI’97 (1997) pp. 321–326.Google Scholar
  24. [24]
    B. Monien and E. Speckenmeyer, Solving satisfiability in less then 2n steps, Discrete Applied Mathematics 10 (1985) 287–295.CrossRefzbMATHMathSciNetGoogle Scholar
  25. [25]
    M.W. Moskewicz, C.F. Madigan, Y. Zhao, L. Zhang and S. Malik, Chaff: Engineering an efficient SAT solver, in: Proceedings of the 38th Design Automation Conference (DAC’01) (2001) pp. 530–535.Google Scholar
  26. [26]
    C.H. Papadimitriou, On selecting a satisfying truth assignment, in: Proceedings of the 32nd Annual IEEE Symposium on Foundations of Computer Science, FOCS’91 (1991) pp. 163–169.Google Scholar
  27. [27]
    R. Paturi, P. Pudlák, M.E. Saks and F. Zane, An improved exponential-time algorithm for k-SAT, in: Proceedings of the 39th Annual IEEE Symposium on Foundations of Computer Science, FOCS’98 (1998) pp. 628–637.Google Scholar
  28. [28]
    R. Paturi, P. Pudlák and F. Zane, Satisfiability coding lemma, in: Proceedings of the 38th Annual IEEE Symposium on Foundations of Computer Science, FOCS’97 (1997) pp. 566–574.Google Scholar
  29. [29]
    S.D. Prestwich, Local search and backtracking vs non-systematic backtracking, in: AAAI 2001 Fall Symposium on Using Uncertainty within Computation (2001).Google Scholar
  30. [30]
    U. Schöning, A probabilistic algorithm for k-SAT and constraint satisfaction problems, in: Proceedings of the 40th Annual IEEE Symposium on Foundations of Computer Science, FOCS’99 (1999) pp. 410–414.Google Scholar
  31. [31]
    R. Schuler, U. Schöning and O. Watanabe, An improved randomized algorithm for 3-SAT, Technical Report TR-C146, Department of Mathematical and Computing Sciences, Tokyo Institute of Technics (2001).Google Scholar
  32. [32]
    D. Schuurmans and F. Southey, Local search characteristics of incomplete SAT procedures, in: Proc. of AAAI’2000 (2000) pp. 297–302.Google Scholar
  33. [33]
    B. Selman, H.A. Kautz and B. Cohen, Noise strategies for improving local search, in: Proceedings of the 12th National Conference on Artificial Intelligence, AAAI’94 (1994) pp. 337–343.Google Scholar
  34. [34]
    B. Selman, H. Levesque and D. Mitchell, A new method for solving hard satisfiability problems, in: Proceedings of the 10th National Conference on Artificial Intelligence, AAAI’92 (1992) pp. 440–446.Google Scholar
  35. [35]
    J.M. Silva and K.A. Sakallah, GRASP: a search algorithm for propositional satisfiability, IEEE Transactions on Computers 48(5) (1999) 506–521.CrossRefGoogle Scholar
  36. [36]
    L. Simon, D. Le Berre and E.A. Hirsch, The SAT2002 Competition, this issue (2004).Google Scholar
  37. [37]
    L. Simon and P. Chatalic, SATEx: a Web-based framework for SAT experimentation, in: Proceedings of the Workshop on Theory and Applications of Satisfiability Testing (SAT2001), eds. H. Kautz and B. Selman (Boston University, Boston, MA, 2001).Google Scholar
  38. [38]
    M.N. Velev and R.E. Bryant, Effective use of Boolean satisfiability procedures in the formal verification of superscalar and VLIW microprocessors, in: Proceedings of the 38th Design Automation Conference (DAC’01) (2001) pp. 226–231.Google Scholar
  39. [39]
    H. Zhang, A decision procedure for propositional logic, Assoc. Automated Reasoning Newslett. 22 (1993) 1–3.zbMATHGoogle Scholar
  40. [40]
    H. Zhang and M. Stickel, Implementing the Davis-Putnam method, Journal of Automated Reasoning 24(1–2) (2000) 277–296.CrossRefzbMATHMathSciNetGoogle Scholar
  41. [41]
    L. Zheng and P.J. Stuckey, Improving SAT using 2SAT, in: Proceedings of the 25th Australasian Computer Science Conference (ACSC2002), ed. M.J. Oudshoorn, Melbourne, Australia (2002).Google Scholar

Copyright information

© Springer 2004

Authors and Affiliations

  • Edward A. Hirsch
    • 1
  • Arist Kojevnikov
    • 1
  1. 1.Steklov Institute of Mathematics at St. PetersburgRussia

Personalised recommendations