Skip to main content
Log in

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

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

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).

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. F. Asahiro, K. Iwama and E. Miyano, Random generation of test instances with controlled attributes, in: [17] (1996).

  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).

  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.

    MATH  MathSciNet  Google Scholar 

  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.

    Article  MATH  MathSciNet  Google Scholar 

  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.

    Article  MathSciNet  Google Scholar 

  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.

  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.

  8. J. Gu, Efficient local search for very large-scale satisfiability problems, ACM SIGART Bulletin 3(1) (1992) 8–12.

    Article  Google Scholar 

  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.

    Article  Google Scholar 

  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.

  11. E.A. Hirsch, SAT local search algorithms: Worst-case study, Journal of Automated Reasoning 24(1–2) (2000) 127–143.

    Article  MATH  MathSciNet  Google Scholar 

  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).

  13. H.H. Hoos, Stochastic local search — method, models, applications, Ph.D. thesis, Department of Computer Science, Darmstadt University of Technology (1998).

  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.

  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.

    Article  MATH  Google Scholar 

  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.

  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).

  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.

    Article  MATH  MathSciNet  Google Scholar 

  19. E. Koutsoupias and C.H. Papadimitriou, On the greedy algorithm for satisfiability, Information Processing Letters 43(1) (1992) 53–55.

    Article  MATH  MathSciNet  Google Scholar 

  20. T. Larrabee, Test pattern generation using Boolean satisfiability, IEEE Transactions on Computer-Aided Design 11(1) (1992) 6–22.

    Article  Google Scholar 

  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.

  22. H. Luckhardt, Obere Komplexitätsschranken für TAUT-Entscheidungen, in: Proceedings of Frege Conference 1984, Schwerin (1984) pp. 331–337.

  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.

  24. B. Monien and E. Speckenmeyer, Solving satisfiability in less then 2n steps, Discrete Applied Mathematics 10 (1985) 287–295.

    Article  MATH  MathSciNet  Google Scholar 

  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.

  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.

  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.

  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.

  29. S.D. Prestwich, Local search and backtracking vs non-systematic backtracking, in: AAAI 2001 Fall Symposium on Using Uncertainty within Computation (2001).

  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.

  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).

  32. D. Schuurmans and F. Southey, Local search characteristics of incomplete SAT procedures, in: Proc. of AAAI’2000 (2000) pp. 297–302.

  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.

  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.

  35. J.M. Silva and K.A. Sakallah, GRASP: a search algorithm for propositional satisfiability, IEEE Transactions on Computers 48(5) (1999) 506–521.

    Article  Google Scholar 

  36. L. Simon, D. Le Berre and E.A. Hirsch, The SAT2002 Competition, this issue (2004).

  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).

  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.

  39. H. Zhang, A decision procedure for propositional logic, Assoc. Automated Reasoning Newslett. 22 (1993) 1–3.

    MATH  Google Scholar 

  40. H. Zhang and M. Stickel, Implementing the Davis-Putnam method, Journal of Automated Reasoning 24(1–2) (2000) 277–296.

    Article  MATH  MathSciNet  Google Scholar 

  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).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hirsch, E.A., Kojevnikov, A. UnitWalk: A new SAT solver that uses local search guided by unit clause elimination. Ann Math Artif Intell 43, 91–111 (2005). https://doi.org/10.1007/s10472-005-0421-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10472-005-0421-9

Keywords

Navigation