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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Clustering coefficient example [image]. https://www.oreilly.com/library/view/mastering-python-data/9781783988327/ch07s02.html. Accessed 25 May 2022
SAT competition website. http://www.satcompetition.org/
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
Bennaceur, H.: A comparison between SAT and CSP techniques. Constraints 9, 123–138 (2004). https://doi.org/10.1023/B:CONS.0000024048.03454.c0
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
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)
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
Breiman, L.: Random forests. Mach. Learn. 45, 5–32 (2001). https://doi.org/10.1023/A:1010933404324
Clauset, A., Newman, M., Moore, C.: Finding community structure in very large networks, p. 066111 (2005). https://doi.org/10.1103/PhysRevE.70.066111
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
Davis, M., Putnam, H.: A computing procedure for quantification theory. J. ACM 7(3), 201–215 (1960)
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
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
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
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
Ganesh, V., Singh, R., Near, J., Rinard, M.: AvatarSAT: an auto-tuning Boolean SAT solver (2009)
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
Haken, A.: The intractability of resolution (complexity). Ph.D. thesis, USA (1984). aAI8422073
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
Kautz, H., Selman, B.: Planning as satisfiability, pp. 359–363 (1992)
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
Liang, J.H.: Machine learning for SAT solvers. Ph.D. thesis, University of Waterloo (2018)
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
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)
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)
Mitchell, T.M.: Machine Learning. McGraw-Hill, New York City (1997)
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)
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
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
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
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
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
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
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
Xu, L., Hutter, F., Hoos, H.H., Leyton-Brown, K.: SATzilla: portfolio-based algorithm selection for SAT, pp. 565–606 (2008)
Acknowledgements
This research has been supported by GAČR - the Czech Science Foundation, grant registration number 22-31346S.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
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)