Skip to main content

Domain Dependent Parameter Setting in SAT Solver Using Machine Learning Techniques

  • Conference paper
  • First Online:
Agents and Artificial Intelligence (ICAART 2022)

Abstract

We address the problem of variable and truth-value choice in modern search-based Boolean satisfiability (SAT) solvers depending on the problem domain. The SAT problem is the task to determine truth-value assignment for variables of a given Boolean formula under which the formula evaluates to true. The SAT problem is often used as a canonical representation of combinatorial problems in many domains of computer science ranging from artificial intelligence to software engineering. Modern complete search-based SAT solvers represent a universal problem solving tool which often provide higher efficiency than ad-hoc direct solving approaches. Many efficient variable and truth-value selection heuristics were devised. Heuristics can usually be fine tuned by single or multiple numerical parameters prior to executing the search process over the concrete SAT instance. In this paper we present a machine learning approach that predicts the parameters of heuristic from the underlying structure of a graph derived from the input SAT instance. Using this approach we effectively fine tune the SAT solver for specific problem domain.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 44.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 59.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Clustering coefficient example [image]. https://www.oreilly.com/library/view/mastering-python-data/9781783988327/ch07s02.html. Accessed 25 May 2022

  2. SAT competition website. http://www.satcompetition.org/

  3. Ansótegui, C., Giráldez-Cru, J., Levy, J.: The community structure of SAT formulas. In: Cimatti, A., Sebastiani, R. (eds.) SAT 2012. LNCS, vol. 7317, pp. 410–423. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31612-8_31

    Chapter  MATH  Google Scholar 

  4. Bennaceur, H.: A comparison between SAT and CSP techniques. Constraints 9, 123–138 (2004). https://doi.org/10.1023/B:CONS.0000024048.03454.c0

    Article  MATH  Google Scholar 

  5. Beskyd, F., Surynek, P.: Parameter setting in SAT solver using machine learning techniques. In: Proceedings of the 14th International Conference on Agents and Artificial Intelligence, ICAART, vol. 2, pp. 586–597. INSTICC, SciTePress (2022). https://doi.org/10.5220/0010910200003116

  6. Biere, A., Biere, A., Heule, M., van Maaren, H., Walsh, T.: Handbook of Satisfiability: Volume 185 Frontiers in Artificial Intelligence and Applications. IOS Press (2009)

    Google Scholar 

  7. Boppana, R., Halldórsson, M.M.: Approximating maximum independent sets by excluding subgraphs. In: Gilbert, J.R., Karlsson, R. (eds.) SWAT 1990. LNCS, vol. 447, pp. 13–25. Springer, Heidelberg (1990). https://doi.org/10.1007/3-540-52846-6_74

    Chapter  Google Scholar 

  8. Breiman, L.: Random forests. Mach. Learn. 45, 5–32 (2001). https://doi.org/10.1023/A:1010933404324

    Article  MATH  Google Scholar 

  9. Clauset, A., Newman, M., Moore, C.: Finding community structure in very large networks, p. 066111 (2005). https://doi.org/10.1103/PhysRevE.70.066111

  10. Cook, S.A.: The complexity of theorem-proving procedures. In: Proceedings of the Third Annual ACM Symposium on Theory of Computing, STOC 1971, pp. 151–158. Association for Computing Machinery, New York (1971). https://doi.org/10.1145/800157.805047

  11. Davis, M., Putnam, H.: A computing procedure for quantification theory. J. ACM 7(3), 201–215 (1960)

    Article  MATH  Google Scholar 

  12. Dennis, G., Chang, F.S.H., Jackson, D.: Modular verification of code with SAT. In: Proceedings of the 2006 International Symposium on Software Testing and Analysis, ISSTA 2006, pp. 109–120. Association for Computing Machinery, New York (2006). https://doi.org/10.1145/1146238.1146251

  13. D’Ippolito, N., Frias, M.F., Galeotti, J.P., Lanzarotti, E., Mera, S.: Alloy+HotCore: a fast approximation to unsat core. In: Frappier, M., Glässer, U., Khurshid, S., Laleau, R., Reeves, S. (eds.) ABZ 2010. LNCS, vol. 5977, pp. 160–173. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11811-1_13

    Chapter  Google Scholar 

  14. Eén, N., Biere, A.: Effective preprocessing in SAT through variable and clause elimination. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 61–75. Springer, Heidelberg (2005). https://doi.org/10.1007/11499107_5

    Chapter  MATH  Google Scholar 

  15. Feurer, M., Hutter, F.: Hyperparameter optimization. In: Hutter, F., Kotthoff, L., Vanschoren, J. (eds.) Automated Machine Learning. TSSCML, pp. 3–33. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-05318-5_1

    Chapter  Google Scholar 

  16. Ganesh, V., Singh, R., Near, J., Rinard, M.: AvatarSAT: an auto-tuning Boolean SAT solver (2009)

    Google Scholar 

  17. Gupta, A., Ganai, M.K., Wang, C.: SAT-based verification methods and applications in hardware verification. In: Bernardo, M., Cimatti, A. (eds.) SFM 2006. LNCS, vol. 3965, pp. 108–143. Springer, Heidelberg (2006). https://doi.org/10.1007/11757283_5

    Chapter  MATH  Google Scholar 

  18. Haken, A.: The intractability of resolution (complexity). Ph.D. thesis, USA (1984). aAI8422073

    Google Scholar 

  19. Horn, A.: On sentences which are true of direct unions of algebras. J. Symbolic Logic (1), 14–21 (1951). https://projecteuclid.org:443/euclid.jsl/1183731038

  20. Kautz, H., Selman, B.: Planning as satisfiability, pp. 359–363 (1992)

    Google Scholar 

  21. Latapy, M., Magnien, C., Del Vecchio, N.: Basic notions for the analysis of large two-mode networks. Soc. Netw. 30, 31–48 (2008). https://doi.org/10.1016/j.socnet.2007.04.006

    Article  Google Scholar 

  22. Liang, J.H.: Machine learning for SAT solvers. Ph.D. thesis, University of Waterloo (2018)

    Google Scholar 

  23. Lourenço, H., Martin, O., Stützle, T.: Iterated local search: framework and applications. In: Gendreau, M., Potvin, J.Y. (eds.) Handbook of Metaheuristics. ISOR, vol. 146, pp. 363–397. Springer, Boston (2010). https://doi.org/10.1007/978-1-4419-1665-5_12

    Chapter  Google Scholar 

  24. Marques Silva, J.P., Sakallah, K.A.: Grasp-a new search algorithm for satisfiability. In: Proceedings of International Conference on Computer Aided Design, pp. 220–227 (1996)

    Google Scholar 

  25. Mitchell, D., Selman, B., Levesque, H.: Hard and easy distributions of SAT problems. In: Proceedings of the Tenth National Conference on Artificial Intelligence, AAAI 1992, pp. 459–465. AAAI Press (1992)

    Google Scholar 

  26. Mitchell, T.M.: Machine Learning. McGraw-Hill, New York City (1997)

    MATH  Google Scholar 

  27. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232), pp. 530–535 (2001)

    Google Scholar 

  28. Newsham, Z., Lindsay, W., Ganesh, V., Liang, J.H., Fischmeister, S., Czarnecki, K.: SATGraf: visualizing the evolution of SAT formula structure in solvers. In: Heule, M., Weaver, S. (eds.) SAT 2015. LNCS, vol. 9340, pp. 62–70. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24318-4_6

    Chapter  MATH  Google Scholar 

  29. Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24605-3_37

    Chapter  Google Scholar 

  30. Pintjuk, D.: Boosting SAT-solver performance on fact instances with automatic parameter tuning (2015). https://www.diva-portal.org/smash/get/diva2:811289/FULLTEXT01.pdf

  31. Pipatsrisawat, K., Darwiche, A.: A lightweight component caching scheme for satisfiability solvers. In: Marques-Silva, J., Sakallah, K.A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 294–299. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-72788-0_28

    Chapter  Google Scholar 

  32. Sinz, C., Dieringer, E.-M.: DPvis – a tool to visualize the structure of SAT instances. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 257–268. Springer, Heidelberg (2005). https://doi.org/10.1007/11499107_19

    Chapter  MATH  Google Scholar 

  33. Soos, M., Nohl, K., Castelluccia, C.: Extending SAT solvers to cryptographic problems. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 244–257. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02777-2_24

    Chapter  Google Scholar 

  34. Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Siekmann, J.H., Wrightson, G. (eds.) Automation of Reasoning. Symbolic Computation, pp. 466–483. Springer, Heidelberg (1983). https://doi.org/10.1007/978-3-642-81955-1_28

    Chapter  Google Scholar 

  35. Xu, L., Hutter, F., Hoos, H.H., Leyton-Brown, K.: SATzilla: portfolio-based algorithm selection for SAT, pp. 565–606 (2008)

    Google Scholar 

Download references

Acknowledgements

This research has been supported by GAČR - the Czech Science Foundation, grant registration number 22-31346S.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pavel Surynek .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Beskyd, F., Surynek, P. (2022). Domain Dependent Parameter Setting in SAT Solver Using Machine Learning Techniques. In: Rocha, A.P., Steels, L., van den Herik, J. (eds) Agents and Artificial Intelligence. ICAART 2022. Lecture Notes in Computer Science(), vol 13786. Springer, Cham. https://doi.org/10.1007/978-3-031-22953-4_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-22953-4_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-22952-7

  • Online ISBN: 978-3-031-22953-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics