Skip to main content
Log in

A self-adaptive multi-engine solver for quantified Boolean formulas

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

In this paper we study the problem of engineering a robust solver for quantified Boolean formulas (QBFs), i.e., a tool that can efficiently solve formulas across different problem domains without the need for domain-specific tuning. The paper presents two main empirical results along this line of research. Our first result is the development of a multi-engine solver, i.e., a tool that selects among its reasoning engines the one which is more likely to yield optimal results. In particular, we show that syntactic QBF features can be correlated to the performances of existing QBF engines across a variety of domains. We also show how a multi-engine solver can be obtained by carefully picking state-of-the-art QBF solvers as basic engines, and by harnessing inductive reasoning techniques to learn engine-selection policies. Our second result is the improvement of our multi-engine solver with the capability of updating the learned policies when they fail to give good predictions. In this way the solver becomes also self-adaptive, i.e., able to adjust its internal models when the usage scenario changes substantially. The rewarding results obtained in our experiments show that our solver AQME—Adaptive QBF Multi-Engine—can be more robust and efficient than state-of-the-art single-engine solvers, even when it is confronted with previously uncharted formulas and competitors.

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. Aha, D., & Kibler, D. (1991). Instance-based learning algorithms. Machine Learning, 6, 37–66.

    Google Scholar 

  2. Ansotegui, C., Gomes, C. P., & Selman, B. (2005). Achille’s heel of QBF. In Proc. of AAAI (pp. 275–281).

  3. Benedetti, M. (2005). sKizzo: A suite to evaluate and certify QBFs. In 20th int’l. conference on automated deduction, Lecture notes in computer science (Vol. 3632, pp. 369–376). Springer.

  4. Biere, A. (2005). Resolve and expand. In Seventh intl. conference on theory and applications of satisfiability testing (SAT’04), LNCS (Vol. 3542, pp. 59–70).

  5. Castellini, C., Giunchiglia, E., & Tacchella, A. (2003). SAT-based planning in complex domains: Concurrency, constraints and nondeterminism. Artificial Intelligence, 147, 85–117.

    MATH  MathSciNet  Google Scholar 

  6. Cohen, W. W. (1995). Fast effective rule induction. In Twelfth international conference on machine learning (pp. 115–123).

  7. Davis, M., Logemann, G., Loveland, D. (1962). A machine program for theorem proving. Communications of the ACM, 5(7), 394–397.

    Article  MATH  MathSciNet  Google Scholar 

  8. Egly, U., Eiter, T., Tompits, H., & Woltran, S. (2000). Solving advanced reasoning tasks using quantified Boolean formulas. In Seventeenth national conference on artificial intelligence (AAAI 2000) (pp. 417–422). The MIT Press.

  9. Gebruers, C., Hnich, B., Bridge, D. G., & Freuder, E. C. (2005). Using CBR to select solution strategies in constraint programming. In Proceedings of the 6th int.l conf. of case-based reasoning, research and development (ICCBR 2005) (pp. 222–236).

  10. Gent, I. P., Nightingale, P., & Rowley, A. (2004). Encoding quantified CSPs as quantified Boolean formulae. In Proceedings of the 16th European conference on artificial intelligence (ECAI 2004) (pp. 176–180).

  11. Gent, I. P., & Rowley, A. G. D. (2003). Encoding connect 4 using quantified Boolean formulae. Technical Report APES-68-2003, APES Research Group, July.

  12. Giunchiglia, E., Narizzano, M., & Tacchella, A. (2001). Quantified Boolean formulas satisfiability library (QBFLIB). www.qbflib.org.

  13. Gomes, C. P., & Selman, B. (2001). Algorithm portfolios. Artificial Intelligence, 126, 43–62.

    Article  MATH  MathSciNet  Google Scholar 

  14. Hanna, Z., Dershowitz, N., & Katz, J. (2005). Bounded model checking with QBF. In Eight international conference on theory and applications of satisfiability testing (SAT 2005), Lecture notes in computer science (Vol. 3569, pp. 408–414). Springer.

  15. Herbstritt, M., Becker, B., & Scholl, C. (2006). Advanced SAT-techniques for bounded model checking of blackbox designs. In MTV workshop (pp. 37–44).

  16. Huberman, B. A., Lukose, R. M., & Hogg, T. (1997). An economics approach to hard computational problems. Science, 275, 51–54.

    Article  Google Scholar 

  17. Jussila, T., & Biere, A. (2006). Compressing BMC encodings with QBF. In Proc. 4th intl. workshop on bounded model checking (BMC’06).

  18. Kaufman, L., & Rousseeeuw, P. J. (1990). Finding groups in Data. Wiley.

  19. Kleine-Büning, H., Karpinski, M., & Flögel, A. (1995). Resolution for quantified Boolean formulas. Information and Computation, 117(1), 12–18.

    Article  MATH  MathSciNet  Google Scholar 

  20. Kohavi, R. (1995). A study of cross-validation and bootstrap for accuracy estimation and model selection. In Proc. of int’l joint conference on artificial intelligence (IJCAI) (pp. 1137–1145).

  21. Le Cessie, S., & van Houwelingen, J. C. (1992). Ridge estimators in logistic regression. Applied Statistics, 41, 191–201.

    Article  MATH  Google Scholar 

  22. Lobjois, L., & Lemaître, M. (1998). Branch and bound algorithm selection by performance prediction. In Proceedings of 15th nat’l conf. on artificial intelligence (AAAI 1998) (pp. 353–358).

  23. Mneimneh, M., & Sakallah, K. (2003). Computing vertex eccentricity in exponentially large graphs: QBF formulation and solution. In Sixth international conference on theory and applications of satisfiability testing (SAT 2003), Lecture notes in computer science (Vol. 2919, pp. 411–425). Springer.

  24. Mitchell, D. G., Selman, B., & Levesque, H. J. (1992). Hard and easy distributions for SAT problems. In Proceedings of the tenth national conference on artificial intelligence (pp. 459–465). AAAI Press.

  25. Narizzano, M., Pulina, L., & Taccchella, A. (2006). QBF solvers competitive evaluation (QBFEVAL). http://www.qbflib.org/qbfeval.

  26. Narizzano, M., Pulina, L., & Tacchella, A. (2006). The third QBF solvers comparative evaluation. Journal on Satisfiability, Boolean Modeling and Computation, 2, 145–164. Available on-line at http://jsat.ewi.tudelft.nl/.

    MATH  Google Scholar 

  27. Narizzano, M., Pulina, L., & Tacchella, A. (2006). The QBFEVAL web portal. In 10th European conference on logics in artificial intelligence (JELIA 2006), Lecture notes in computer science (Vol. 4160, pp. 494–497). Springer.

  28. Narizzano, M., Pulina, L., & Tacchella, A. (2007). Ranking and reputation sytems in the QBF competition. In 10th conference of the Italian association for artificial intelligence (AI*IA 2007), Lecture notes in artificial intelligence (Vol. 4733, pp. 97–108). Springer.

  29. Narizzano, M., & Tacchella, A. (2005). QDIMACS prenex CNF standard ver. 1.1. Available online from http://www.qbflib.org/qdimacs.html.

  30. Nudelman, E., Devku, A., Shoham, Y., & Leyton-Brown, K. (2004). Understanding random SAT: Beyond the clauses-to-variables ratio. In 10th intl conference on principles and practice of constraint programming (CP2004), LNCS (Vol. 3258, pp. 438–452). Springer.

  31. Nudelman, E., Leyton-Brown, K., Devkar, A., Shoham, Y., & Hoos, H. (2004). SATzilla: An algorithm portfolio for SAT. In In seventh international conference on theory and applications of satisfiability testing, SAT 2004 competition: Solver descriptions (pp. 13–14).

  32. Pan, G., & Vardi, M. Y. (2003). Optimizing a BDD-based modal solver. In Proceedings of the 19th international conference on automated deduction, Lecture notes in computer science (Vol. 2741, pp. 75–89). Springer.

  33. Papadimitriou, C. H. (1994). Computational complexity. Addison-Wesley.

  34. Pulina, L., & Tacchella, A. (2007). A multi-engine solver for quantified Boolean formulas. In 13th conference on principles and practice of constraint programming (CP 2007), Lecture notes in computer science (Vol. 4741, pp. 574–589). Springer.

  35. Quinlan, J. R. (1993). C4.5: Programs for machine learning. Morgan Kaufmann Publishers.

  36. Rintanen, J. (2001). Partial implicit unfolding in the Davis-Putnam procedure for quantified Boolean formulae. In Proc. LPAR, LNCS (Vol. 2250, pp. 362–376).

  37. Samulowitz, H., & Memisevic, R. (2007). Learning to solve QBF. In In proc. of 22nd conference on artificial intelligence (AAAI’07) (pp. 255–260).

  38. Stéphan, I. (2006). Boolean propagation based on literals for quantified Boolean formulae. In Proceedings of 17th European conf. on artificial intelligence (ECAI 2006) (pp. 452–456).

  39. Stockmeyer, L. J., & Meyer, A. R. (1973). Word problems requiring exponential time. In 5th annual ACM symposium on the theory of computation (pp. 1–9).

  40. Streeter, M. J., Golovin, D., & Smith, S. F. (2007). Restart schedules for ensembles of problem instances. In Proceedings of 22nd AAAI conference on artificial intelligence (AAAI 2007) (pp. 1204–1210).

  41. Turner, H. (2002). Polynomial-length planning spans the polynomial hierarchy. In Proc. of eighth European conf. on logics in artificial intelligence (JELIA’02), Lecture notes in artificial intelligence (Vol. 2424, pp. 111–124). Springer.

  42. Witten, I. H., & Frank, E. (2005). Data mining (2nd ed.). Morgan Kaufmann.

  43. Xu, L., Hoos, H. H., & Leyton-Brown, K. (2007). Hierarchical hardness models for SAT. In 13th conference on principles and practice of constraint programming (CP 2007), Lecture notes in computer science (Vol. 4741, pp. 696–711). Springer.

  44. Xu, L., Hutter, F., Hoos, H. H., & Leyton-Brown, K. (2007). The design and analysis of an algorithm portfolio for SAT. In 13th conference on principles and practice of constraint programming (CP 2007), Lecture notes in computer science (Vol. 4741, pp. 712–727). Springer.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Luca Pulina.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Pulina, L., Tacchella, A. A self-adaptive multi-engine solver for quantified Boolean formulas. Constraints 14, 80–116 (2009). https://doi.org/10.1007/s10601-008-9051-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-008-9051-2

Keywords

Navigation