Skip to main content

Understanding VSIDS Branching Heuristics in Conflict-Driven Clause-Learning SAT Solvers

  • Conference paper
  • First Online:
Hardware and Software: Verification and Testing (HVC 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9434))

Included in the following conference series:

Abstract

Conflict-Driven Clause-Learning (CDCL) SAT solvers crucially depend on the Variable State Independent Decaying Sum (VSIDS) branching heuristic for their performance. Although VSIDS was proposed nearly fifteen years ago, and many other branching heuristics for SAT solving have since been proposed, VSIDS remains one of the most effective branching heuristics. Despite its widespread use and repeated attempts to understand it, this additive bumping and multiplicative decay branching heuristic has remained an enigma.

In this paper, we advance our understanding of VSIDS by answering the following key questions. The first question we pose is “what is special about the class of variables that VSIDS chooses to additively bump?” In answering this question we showed that VSIDS overwhelmingly picks, bumps, and learns bridge variables, defined as the variables that connect distinct communities in the community structure of SAT instances. This is surprising since VSIDS was invented more than a decade before the link between community structure and SAT solver performance was discovered. Additionally, we show that VSIDS viewed as a ranking function correlates strongly with temporal graph centrality measures. Putting these two findings together, we conclude that VSIDS picks high-centrality bridge variables. The second question we pose is “what role does multiplicative decay play in making VSIDS so effective?” We show that the multiplicative decay behaves like an exponential moving average (EMA) that favors variables that persistently occur in conflicts (the signal) over variables that occur intermittently (the noise). The third question we pose is “whether VSIDS is temporally and spatially focused.” We show that VSIDS disproportionately picks variables from a few communities unlike, say, the random branching heuristic. We put these findings together to invent a new adaptive VSIDS branching heuristic that solves more instances than one of the best-known VSIDS variants over the SAT Competition 2013 benchmarks.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Notes

  1. 1.

    All code and experimental data sets are available from our website: https://github.com/JLiangWaterloo/vsids.

  2. 2.

    MiniSAT’s actual implementation is slightly different, but has the same effect. Rather than decaying the activities of every variable, it increases the bump quantum of all future conflicts instead [8].

References

  1. Starexec. http://www.starexec.org/

  2. Proceedings of Past SAT Conferences (2013). http://www.satisfiability.org

  3. SAT Competition Website (2013). http://www.satcompetition.org

  4. SHARCNET Website (2013). https://www.sharcnet.ca

  5. Atserias, A., Fichte, J.K., Thurley, M.: Clause-learning algorithms with many restarts and bounded-width resolution. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 114–127. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  6. Audemard, G., Simon, L.: Glucose: a solver that predicts learnt clauses quality. IJCAI 9, 399–404 (2009)

    Google Scholar 

  7. Beame, P., Kautz, H.A., Sabharwal, A.: Towards understanding and harnessing the potential of clause learning. J. Artif. Intell. Res. (JAIR) 22, 319–351 (2004)

    MathSciNet  MATH  Google Scholar 

  8. Biere, A.: Adaptive restart strategies for conflict driven SAT solvers. In: Kleine Büning, H., Zhao, X. (eds.) SAT 2008. LNCS, vol. 4996, pp. 28–33. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  9. Biere, A.: Lingeling (2010)

    Google Scholar 

  10. Blondel, V.D., Guillaume, J.L., Lambiotte, R., Lefebvre, E.: Fast unfolding of communities in large networks. J. Stat. Mech. Theor. Exp. 2008(10), P10008 (2008)

    Article  Google Scholar 

  11. Brown, R.G.: Exponential Smoothing for Predicting Demand. Little, Cambridge (1956)

    Google Scholar 

  12. Buro, M., Büning, H.K.: Report on a SAT competition. Fachbereich Math.-Informatik, Univ. Gesamthochschule (1992)

    Google Scholar 

  13. Clauset, A., Newman, M.E., Moore, C.: Finding community structure in very large networks. Phys. Rev. E 70(6), 066111 (2004)

    Article  Google Scholar 

  14. 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. ACM, New York (1971)

    Google Scholar 

  15. Een, N., Sörensson, N.: MiniSat: a SAT solver with conflict-clause minimization. In: SAT 2005 (2005)

    Google Scholar 

  16. Faust, K.: Centrality in affiliation networks. Soc. Netw. 19(2), 157–191 (1997)

    Article  Google Scholar 

  17. Fisher, R.A.: Frequency distribution of the values of the correlation coefficient in samples from an indefinitely large population. Biometrika 10(4), 507–521 (1915)

    Google Scholar 

  18. Freeman, J.W.: Improvements to propositional satisfiability search algorithms. Ph.D. thesis, Philadelphia, PA, USA (1995). uMI Order No. GAX95-32175

    Google Scholar 

  19. Freeman, L.: Centrality in social networks conceptual clarification. Soc. Netw. 1(3), 215–239 (1979)

    Article  Google Scholar 

  20. Gini, C.: Measurement of inequality of incomes. Econ. J. 31(121), 124–126 (1921)

    Article  Google Scholar 

  21. Girvan, M., Newman, M.E.: Community structure in social and biological networks. Proc. Natl. Acad. Sci. 99(12), 7821–7826 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  22. Gloor, P., Krauss, J., Nann, S., Fischbach, K., Schoder, D.: Web science 2.0: identifying trends through semantic social network analysis. In: 2009 International Conference on Computational Science and Engineering, CSE 2009, vol. 4, pp. 215–222, August 2009

    Google Scholar 

  23. Golub, G.H., Van Loan, C.F.: Matrix Computations. JHU Press, Baltimore (2012)

    MATH  Google Scholar 

  24. Hamadi, Y., Jabbour, S., Sais, L.: ManySAT: a parallel SAT solver. JSAT 6(4), 245–262 (2009)

    MATH  Google Scholar 

  25. Hoos, H.H., Stützle, T.: Stochastic Local Search: Foundations & Applications. Morgan Kaufmann Publishers Inc., San Francisco (2004)

    MATH  Google Scholar 

  26. Huang, R., Chen, Y., Zhang, W.: SAS+ planning as satisfiability. J. Artif. Int. Res. 43(1), 293–328 (2012)

    MathSciNet  MATH  Google Scholar 

  27. Iser, M., Taghdiri, M., Sinz, C.: Optimizing MiniSAT variable orderings for the relational model finder kodkod. In: Cimatti, A., Sebastiani, R. (eds.) SAT 2012. LNCS, vol. 7317, pp. 483–484. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  28. Jeroslow, R.G., Wang, J.: Solving propositional satisfiability problems. Ann. Math. Artif. Intell. 1(1–4), 167–187 (1990)

    Article  MATH  Google Scholar 

  29. Katebi, H., Sakallah, K.A., Marques-Silva, J.P.: Empirical study of the anatomy of modern SAT solvers. In: Sakallah, K.A., Simon, L. (eds.) SAT 2011. LNCS, vol. 6695, pp. 343–356. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  30. Katsirelos, G., Simon, L.: Eigenvector centrality in industrial SAT instances. In: Milano, M. (ed.) CP 2012. LNCS, vol. 7514, pp. 348–356. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  31. Kaufman, P.J.: Trading Systems and Methods. Wiley, New York (2013)

    Google Scholar 

  32. Mahajan, Y.S., Fu, Z., Malik, S.: Zchaff2004: an efficient SAT solver. In: H. Hoos, H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 360–375. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  33. Marques-Silva, J.: The impact of branching heuristics in propositional satisfiability algorithms. In: Barahona, P., Alferes, J.J. (eds.) EPIA 1999. LNCS (LNAI), vol. 1695, pp. 62–74. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  34. Marques-Silva, J.P., Sakallah, K.A.: Grasp: a search algorithm for propositional satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)

    Article  MathSciNet  Google Scholar 

  35. Moskewicz, M.W., Madigan, C.F., Malik, S.: Method and system for efficient implementation of boolean satisfiability (26 August 2008), US Patent 7,418,369

    Google Scholar 

  36. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Annual Design Automation Conference, DAC 2001, pp. 530–535. ACM, New York (2001)

    Google Scholar 

  37. Nadel, A., Ryvchin, V.: Assignment stack shrinking. In: Strichman, O., Szeider, S. (eds.) SAT 2010. LNCS, vol. 6175, pp. 375–381. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  38. Newsham, Z., Ganesh, V., Fischmeister, S., Audemard, G., Simon, L.: Impact of community structure on SAT solver performance. In: Sinz, C., Egly, U. (eds.) SAT 2014. LNCS, vol. 8561, pp. 252–268. Springer, Heidelberg (2014)

    Google Scholar 

  39. Pipatsrisawat, K., Darwiche, A.: On the power of clause-learning SAT solvers with restarts. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 654–668. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  40. Spearman, C.: The proof and measurement of association between two things. Am. J. Psychol. 15(1), 72–101 (1904)

    Article  Google Scholar 

  41. Straffin, P.D.: Linear algebra in geography: eigenvectors of networks. Math. Mag. 53(5), 269–276 (1980)

    Article  MathSciNet  MATH  Google Scholar 

  42. Yu, P.S., Li, X., Liu, B.: Adding the temporal dimension to search - a case study in publication search. In: Skowron, A., Agrawal, R., Luck, M., Yamaguchi, T., Morizet-Mahoudeaux, P., Liu, J., Zhong, N. (eds.) Web Intelligence, pp. 543–549. IEEE Computer Society (2005)

    Google Scholar 

  43. Zhang, W., Pan, G., Wu, Z., Li, S.: Online community detection for large complex networks. In: Proceedings of the Twenty-Third international joint conference on Artificial Intelligence, pp. 1903–1909. AAAI Press (2013)

    Google Scholar 

Download references

Acknowledgement

We thank Kaveh Ghasemloo for his help in refining our TGC model and for his insight on the connection between VSIDS decay and exponential moving average.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jia Hui Liang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Liang, J.H., Ganesh, V., Zulkoski, E., Zaman, A., Czarnecki, K. (2015). Understanding VSIDS Branching Heuristics in Conflict-Driven Clause-Learning SAT Solvers. In: Piterman, N. (eds) Hardware and Software: Verification and Testing. HVC 2015. Lecture Notes in Computer Science(), vol 9434. Springer, Cham. https://doi.org/10.1007/978-3-319-26287-1_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26287-1_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26286-4

  • Online ISBN: 978-3-319-26287-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics