Skip to main content
  • 1288 Accesses

Abstract

In this chapter, we show how competition and cooperation can be integrated in Parallel SAT Solving. We describe ManySAT, a portfolio-based parallel SAT solver which runs a set of complementary sequential algorithms obtained through careful variations of the standard CDCL algorithm. Additionally, each sequential algorithm shares clauses to improve the overall performance of the whole system. We also report on two innovative policies to dynamically adjust the size of shared clauses between any pair of processing units.

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
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover 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.

    http://www-sr.informatik.uni-tuebingen.de/sat-race-2008/index.html.

  2. 2.

    http://www-sr.informatik.uni-tuebingen.de/sat-race-2008/.

References

  1. G. Audemard, L. Bordeaux, Y. Hamadi, S. Jabbour, L. Sais, A generalized framework for conflict analysis, in Theory and Applications of Satisfiability Testing, SAT 2008, ed. by H.K. Büning, X. Zhao. Lecture Notes in Computer Science, vol. 4996 (Springer, Berlin, 2008), pp. 21–27

    Chapter  Google Scholar 

  2. A. Arbelaez, Y. Hamadi, Improving parallel local search for SAT, in Learning and Intelligent Optimization, 5th International Conference (LION’11), Rome, Italy, ed. by C.A.C. Coello. Lecture Notes in Computer Science, vol. 6683 (Springer, Berlin, 2011), pp. 46–60

    Chapter  Google Scholar 

  3. L. Brisoux, E. Grégoire, L. Sais, Improving backtrack search for SAT by means of redundancy, in Foundations of Intelligent Systems, 11th International Symposium, ISMIS’99. Lecture Notes in Computer Science, vol. 1609 (Springer, Berlin, 1999), pp. 301–309

    Chapter  Google Scholar 

  4. L. Bordeaux, Y. Hamadi, H. Samulowitz, Experiments with massively parallel constraint solving, in IJCAI 2009, Proceedings of the 21st International Joint Conference on Artificial Intelligence, ed. by C. Boutilier (2009), pp. 443–448

    Google Scholar 

  5. L. Bordeaux, Y. Hamadi, L. Zhang, Propositional satisfiability and constraint programming: a comparative survey. ACM Comput. Surv. 9(2), 135–196 (2006)

    Google Scholar 

  6. A. Biere, Adaptive restart strategies for conflict driven SAT solvers, in Theory and Applications of Satisfiability Testing—Proceedings of the 11th International Conference, SAT 2008, ed. by H.K. Büning, X. Zhao. Lecture Notes in Computer Science, vol. 4996 (Springer, Berlin, 2008), pp. 28–33

    Chapter  Google Scholar 

  7. M. Böhm, E. Speckenmeyer, A fast parallel SAT-solver—efficient workload balancing. Ann. Math. Artif. Intell. 17(3–4), 381–400 (1996)

    Article  MATH  Google Scholar 

  8. W. Blochinger, C. Sinz, W. Küchlin, Parallel propositional satisfiability checking with distributed dynamic learning. Parallel Comput. 29(7), 969–994 (2003)

    Article  Google Scholar 

  9. F. Corblin, L. Bordeaux, Y. Hamadi, E. Fanchon, L. Trilling, A SAT-based approach to decipher gene regulatory networks, in Integrative Post-Genomics, RIAMS, Lyon (2007)

    Google Scholar 

  10. G. Chu, P.J. Stuckey, Pminisat: a parallelization of Minisat 2.0. Technical Report, Sat-race 2008, solver description (2008)

    Google Scholar 

  11. W. Chrabakh, R. Wolski, GridSAT: a system for solving satisfiability problems using a computational grid. Parallel Comput. 32(9), 660–687 (2006)

    Article  MathSciNet  Google Scholar 

  12. O. Dubois, G. Dequen, A backbone-search heuristic for efficient solving of hard 3-SAT formulae, in Proceedings of the International Joint Conference on Artificial Intelligence, IJCAI’01 (2001), pp. 248–253

    Google Scholar 

  13. M. Davis, G. Logemann, D.W. Loveland, A machine program for theorem-proving. Commun. ACM 5(7), 394–397 (1962)

    Article  MathSciNet  MATH  Google Scholar 

  14. L.M. de Moura, N. Bjørner, Z3: an efficient SMT solver, in TACAS, ed. by C.R. Ramakrishnan, J. Rehof. Lecture Notes in Computer Science, vol. 4963 (Springer, Berlin, 2008), pp. 337–340

    Google Scholar 

  15. N. Eén, A. Biere, Effective preprocessing in SAT through variable and clause elimination, in Theory and Applications of Satisfiability Testing, SAT 2005, ed. by F. Bacchus, T. Walsh. Lecture Notes in Computer Science, vol. 3569 (Springer, Berlin, 2005), pp. 61–75

    Google Scholar 

  16. N. Eén, N. Sörensson, An extensible SAT-solver, in 6th International Conference on Theory and Applications of Satisfiability Testing (SAT’03), Santa Margherita Ligure, Italy, ed. by E. Giunchiglia, A. Tacchella. Lecture Notes in Computer Science, vol. 2919 (Springer, Berlin, 2003), pp. 502–518

    Chapter  Google Scholar 

  17. D. Frost, R. Dechter, In search of the best constraint satisfaction search, in Proceedings of the 12th National Conference on Artificial Intelligence, AAAI’94 (1994), pp. 301–306

    Google Scholar 

  18. S.L. Forman, A.M. Segre, Nagsat: a randomized, complete, parallel solver for 3-SAT, in Proceedings of Theory and Applications of Satisfiability Testing, SAT’02 (2002), pp. 236–243

    Google Scholar 

  19. L. Gil, P. Flores, L.M. Silveira, PMSat: a parallel version of minisat. J. Satisf. Boolean Model. Comput. 6, 71–98 (2008)

    MathSciNet  Google Scholar 

  20. L. Guo, Y. Hamadi, S. Jabbour, L. Sais, Diversification and intensification in parallel SAT solving, in CP, ed. by D. Cohen. Lecture Notes in Computer Science, vol. 6308 (Springer, Berlin, 2010), pp. 252–265

    Google Scholar 

  21. C. Gomes, B. Selman, N. Crato, H. Kautz, Heavy-tailed phenomena in satisfiability and constraint satisfaction problems. J. Autom. Reason. 24(1/2), 67–100 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  22. C. Gomes, B. Selman, H. Kautz, Boosting combinatorial search through randomization, in AAAI/IAAI (1998), pp. 431–437

    Google Scholar 

  23. Y. Hamadi, S. Jabbour, C. Piette, L. Sais, Deterministic parallel DPLL. J. Satisf. Boolean Model. Comput. 7(4), 127–132 (2011)

    MathSciNet  Google Scholar 

  24. Y. Hamadi, S. Jabbour, L. Sais, ManySAT: solver description. Technical Report MSR-TR-2008-83, Microsoft Research (2008)

    Google Scholar 

  25. Y. Hamadi, S. Jabbour, L. Sais, Control-based clause sharing in parallel SAT solving, in IJCAI 2009, Proceedings of the 21st International Joint Conference on Artificial Intelligence, ed. by C. Boutilier (2009), pp. 499–504

    Google Scholar 

  26. Y. Hamadi, S. Jabbour, L. Sais, ManySAT: a parallel SAT solver. J. Satisf. Boolean Model. Comput. 6(4), 245–262 (2009)

    MathSciNet  MATH  Google Scholar 

  27. Y. Hamadi, J. Marques-Silva, C.M. Wintersteiger, Lazy decomposition for distributed decision procedures, in PDMC, ed. by J. Barnat, K. Heljanko. EPTCS, vol. 72 (2011), pp. 43–54

    Google Scholar 

  28. J. Huang, The effect of restarts on the efficiency of clause learning, in IJCAI, ed. by M.M. Veloso (2007), pp. 2318–2323

    Google Scholar 

  29. M.J.H. Heule, H. van Maaren, March dl: adding adaptive heuristics and a new branching strategy. J. Satisf. Boolean Model. Comput. 2, 47–59 (2006)

    MATH  Google Scholar 

  30. Y. Hamadi, C.M. Wintersteiger, Seven challenges in parallel SAT solving, in AAAI, ed. by J. Hoffmann, B. Selman (AAAI Press, Menlo Park, 2012)

    Google Scholar 

  31. Y. Hamadi, C.M. Wintersteiger, Seven challenges in parallel SAT solving. AI Mag. 34(2) (2013)

    Google Scholar 

  32. V. Jacobson, Congestion avoidance and control, in SIGCOMM (1988), pp. 314–329

    Google Scholar 

  33. B. Jurkowiak, C.M. Li, G. Utard, A parallelization scheme based on work stealing for a class of SAT solvers. J. Autom. Reason. 34(1), 73–101 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  34. H.A. Kautz, E. Horvitz, Y. Ruan, C.P. Gomes, B. Selman, Dynamic restart policies, in AAAI/IAAI (2002), pp. 674–681

    Google Scholar 

  35. C.M. Li, Anbulagan, Heuristics based on unit propagation for satisfiability problems, in Proceedings of the International Joint Conference on Artificial Intelligence, IJCAI’97 (1997), pp. 366–371

    Google Scholar 

  36. M. Lewis, T. Schubert, B. Becker, Multithreaded SAT solving, in 12th Asia and South Pacific Design Automation Conference (2007)

    Google Scholar 

  37. M. Luby, A. Sinclair, D. Zuckerman, Optimal speedup of Las Vegas algorithms. Inf. Process. Lett. 47, 173–180 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  38. M.W. Moskewicz, C.F. Madigan, Y. Zhao, L. Zhang, S. Malik, Chaff: engineering an efficient SAT solver, in 38th Design Automation Conference (DAC’01), Las Vegas, NV, USA (ACM, New York, 2001), pp. 530–535

    Google Scholar 

  39. J. Marques-Silva, K.A. Sakallah, GRASP—a new search algorithm for satisfiability, in Proceedings of IEEE/ACM International Conference on Computer-Aided Design (1996), pp. 220–227

    Chapter  Google Scholar 

  40. R. Nieuwenhuis, A. Oliveras, C. Tinelli, Solving SAT and SAT modulo theories: from an abstract Davis–Putnam–Logemann–Loveland procedure to DPLL(t). J. ACM 53(6), 937–977 (2006)

    MathSciNet  Google Scholar 

  41. K. Pipatsrisawat, A. Darwiche, A lightweight component caching scheme for satisfiability solvers, in Theory and Applications of Satisfiability Testing SAT 2007, ed. by J. Marques-Silva, K.A. Sakallah. Lecture Notes in Computer Science, vol. 4501 (Springer, Berlin, 2007), pp. 294–299

    Chapter  Google Scholar 

  42. J. Rintanen, Heuristics for planning with SAT and expressive action definitions, in ICAPS, ed. by F. Bacchus, C. Domshlak, S. Edelkamp, M. Helmert (AAAI Press, Menlo Park, 2011)

    Google Scholar 

  43. V. Ryvchin, O. Strichman, Local restarts, in Theory and Applications of Satisfiability Testing—Proceedings of the 11th International Conference, SAT 2008, ed. by H.K. Büning, X. Zhao. Lecture Notes in Computer Science, vol. 4996 (Springer, Berlin, 2008), pp. 271–276

    Chapter  Google Scholar 

  44. C.M. Wintersteiger, Y. Hamadi, L.M. de Moura, A concurrent portfolio approach to SMT solving, in CAV, ed. by A. Bouajjani, O. Maler. Lecture Notes in Computer Science, vol. 5643 (Springer, Berlin, 2009), pp. 715–720

    Google Scholar 

  45. H. Zhang, M.P. Bonacina, J. Hsiang, PSATO: a distributed propositional prover and its application to quasigroup problems. J. Symb. Comput. 21(4), 543–560 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  46. L. Zhang, C.F. Madigan, M.W. Moskewicz, S. Malik, Efficient conflict driven learning in boolean satisfiability solver, in ICCAD (2001), pp. 279–285

    Google Scholar 

  47. H. Zhang, M.E. Stickel, Implementing the Davis-Putnam algorithm by tries. Technical Report, Artificial Intelligence Center, SRI International, Menlo (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Hamadi, Y. (2013). Parallel Tree Search for Satisfiability. In: Combinatorial Search: From Algorithms to Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-41482-4_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-41482-4_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-41481-7

  • Online ISBN: 978-3-642-41482-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics