Boosting the Performance of CDCL-Based SAT Solvers by Exploiting Backbones and Backdoors
Abstract
:1. Introduction
- To compute backbones and backdoors based on a low-overhead computational heuristic, in order to guide the CDCL SAT solver to branch on backbone/backdoor variables (Section 4.1).
- To extend the VSIDS variable decision heuristic to exploit backbones and backdoors (Section 4.2).
2. Definitions and Notations
2.1. Boolean Satisfiability Problem
2.2. Boolean Structural Measures
- 1.
- (Trichotomy) Γ correctly determines ϕ. If satisfiable it returns a solution; otherwise, it is unsatisfiable.
- 2.
- (Efficiency) Γ runs in polynomial time.
- 3.
- (Trivial-solvability) Γ can determine whether ϕ is trivially
- , that is, ϕ has no clauses; or
- , that is, ϕ has an empty clause.
- 4.
- (Self-reducibility) If Γ determines ϕ, then , Γ determines:where the latter denotes a simplified formula by fixing the value of any to or .
3. Related Work
3.1. CDCL Solvers in SAT Competitions
3.2. Algorithms for Computing Backbones and Backdoors
3.3. MapleLCMDistChronoBT-DL-v3 and LSTech
Algorithm 1: Pseudocode for top-level implementation of MapleLCMDistChronoBT-DL-v3. |
Algorithm 2: Pseudocode for top-level implementation of LSTech. |
4. The Proposed CDCL SAT Solvers
4.1. Backbone and Backdoor Computational Heuristics
4.1.1. The BBLO Heuristic
Algorithm 3: A backbone-based low-overhead computational heuristic (BBLO). |
4.1.2. The BDLO Heuristic
Algorithm 4: A backdoor-based low-overhead computational heuristic (BDLO). |
4.2. VSIDS Variants
- Initialization: Each variable has a floating point number, called activity, which is initialized to 0.
- Additive bump: Following a conflict analysis phase, the activities of all variables that led to a conflict are additively bumped (increased), typically by 1, if their decision levels are greater than the backtrack level; otherwise, they are bumped by 0.5.
- Decision: The (unassigned) variable with the highest activity is chosen at each decision.
- Multiplicative decay: All variables are periodically decremented by multiplying their activities by a constant called the multiplicative decay factor.
- 1.
- VSIDS_BBsize_restart (Algorithm 5): Following a restart, the activities of the backbone literals computed in Algorithm 3 are additively bumped, typically by 1 (lines 4–5).
Algorithm 5: VSIDS_BBsize_restart a variant of the VSIDS decision heuristic. |
- 2.
- VSIDS_BBsize_BBfreq_restart (Algorithm 6): Following a restart, the activities of the backbone literals computed in Algorithm 3 are additively bumped typically by their frequencies (lines 4–6).
Algorithm 6: VSIDS_BBsize_BBFreq_restart a variant of the VSIDS decision heuristic. |
- 3.
- VSIDS_BBsize_BBfreq_backtrack (Algorithm 7): Following a backtrack, the activities of the backbone literals computed in Algorithm 3 are additively bumped typically by their frequencies (lines 3–4).
Algorithm 7: VSIDS_BBsize_BBFreq_backtrack a variant of the VSIDS decision heuristic. |
- 4.
- VSIDS_BBsize_BBfreq_conflict (Algorithm 8): Following a conflict, the activities of the backbone literals computed in Algorithm 3 that led to the learnt clause (including those in the learnt clause) are additively bumped typically by their frequencies (lines 3–6).
Algorithm 8: VSIDS_BBsize_BBfreq_conflict a variant of the VSIDS decision heuristic. |
- 5.
- VSIDS_BBsize_BBfreq_restart_conflict (Algorithm 9): In combination of variant 2 and 4.
Algorithm 9: VSIDS_BBsize_BBfreq_restart_conflict a variant of the VSIDS decision heuristic. |
- 6.
- VSIDS_BDsize_restart (Algorithm 10): Following a restart, the activities of the backdoor variables computed in Algorithm 4 are additively bumped typically by 1 (lines 4–5).
Algorithm 10: VSIDS_BDsize_restart a variant of the VSIDS decision heuristic. |
4.3. The CDCL SAT Solvers
5. Performance Evaluation
5.1. Benchmarks and Experimental Setup
5.2. Results
6. Discussion
7. Conclusion and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A. The Evidence of Boolean Structural Measures for SAT
Appendix A.1. Backbone and Backdoor Computation
Appendix A.2. Benchmarks and Experimental Setup
Year | Industrial | Crafted | Random |
---|---|---|---|
2002 | 209 | 541 | 97 |
2003 | 69 | 259 | 138 |
2006 | 70 | × | × |
2007 | 161 | 16 | 406 |
2008 | 62 | × | × |
2009 | 165 | 159 | 570 |
2010 | 100 | × | × |
2011 | 150 | 150 | 613 |
2012 | 208 | 53 | 600 |
2013 | 150 | 201 | 430 |
2014 | 58 | 121 | 225 |
2015 | 176 | × | × |
2016 | 182 | 200 | 240 |
2018 | 400 | × | × |
2019 | 200 | × | × |
2020 | 400 | × | × |
Appendix A.3. Experimental Results
Industrial | Crafted | Random | |
---|---|---|---|
Backbone size | 0.13 (0.2) | 0.26 (0.39) | 0.06 (0.23) |
Backbone frequency | 0.05% (0.18) | 0.34% (1.14) | 1.09% (3.63) |
Backbone coverage | 15.22% (23.92) | 28.49% (40.33) | 6.71% (23.74) |
Backdoor size | 0.67 (0.31) | 0.88 (0.2) | 0.98 (0.08) |
Backdoor coverage | 83.41% (25.1) | 95.18% (12.73) | 99.61% (3.49) |
Backbone/backdoor variable overlap | 0.08 (0.1) | 0.29 (0.36) | 0.22 (0.4) |
Appendix B. Correlation and Exploitation Analysis
Appendix B.1. Correlation Analysis
Appendix B.2. Exploitation Analysis
Number of Decisions | Percentage of Exploited Backbones in All Decision Variables |
---|---|
370 | 54.05% |
15 | 66.67% |
180 | 70.00% |
372 | 91.67% |
335 | 95.52% |
174 | 99.43% |
3 | 100.00% |
36 | 100.00% |
49 | 100.00% |
55 | 100.00% |
57 | 100.00% |
57 | 100.00% |
60 | 100.00% |
152 | 100.00% |
Number of Decisions | Percentage of Exploited Backbones in All Decision Variables | Number of Decisions | Percentage of Exploited Backbones in All Decision Variables | Number of Decisions | Percentage of Exploited Backbones in All Decision Variables |
---|---|---|---|---|---|
18 | 55.56% | 44 | 86.36% | 116 | 100.00% |
19 | 57.89% | 369 | 92.68% | 144 | 100.00% |
940 | 58.62% | 184 | 98.37% | 188 | 100.00% |
563 | 58.79% | 258 | 98.84% | 208 | 100.00% |
352 | 61.08% | 215 | 99.07% | 229 | 100.00% |
443 | 61.63% | 217 | 99.08% | 239 | 100.00% |
716 | 62.15% | 224 | 99.11% | 276 | 100.00% |
534 | 63.11% | 173 | 99.42% | 281 | 100.00% |
789 | 63.88% | 16 | 100.00% | 298 | 100.00% |
490 | 65.51% | 26 | 100.00% | 300 | 100.00% |
160 | 67.50% | 30 | 100.00% | 323 | 100.00% |
61 | 70.49% | 88 | 100.00% | 346 | 100.00% |
22 | 72.73% | 99 | 100.00% | 351 | 100.00% |
22 | 81.82% | 106 | 100.00% | 401 | 100.00% |
33 | 81.82% | 109 | 100.00% | 435 | 100.00% |
Number of Decisions | Percentage of Exploited Backbones in All Decision Variables |
---|---|
69 | 47.83% |
169 | 47.93% |
678 | 48.82% |
352 | 49.72% |
667 | 49.93% |
191 | 50.79% |
391 | 51.15% |
156 | 51.28% |
594 | 53.20% |
656 | 53.20% |
312 | 53.53% |
404 | 54.21% |
Appendix C. The CDCL Framework and Popular Variable Decision Heuristics
Appendix C.1. The CDCL Framework
Algorithm A1: CDCL framework. |
Appendix C.2. The VSIDS Heuristic
Algorithm A2: VSIDS decision heuristic. All procedures are part of the CDCL framework in Algorithm A1. |
Appendix D. Reported Results on Industrial Families
Family | MapleLCM DistChrono BT-DL-v3 | Maple_ VBBsfr_v1 | LSTech | LSTech_ VBBsfrc_v2 | Relaxed_ LCMDCBDL_ newTech | Kissat_GB | Kissat_MAB |
---|---|---|---|---|---|---|---|
aloul_bart | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
goldberg | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
grastien_anbulagan_diag | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
grastien_anbulagan_medium | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
rintanen | 5 | 6 | 5 | 7 | 6 | 4 | 5 |
soos | 5 | 6 | 5 | 7 | 6 | 5 | 5 |
Argumentation | 7 | 7 | 7 | 7 | 7 | 6 | 7 |
StedmanTriples | 7 | 7 | 7 | 7 | 6 | 6 | 7 |
MinimalSuperpermutation | 6 | 7 | 7 | 7 | 6 | 6 | 7 |
biere_dinphil | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
eichberger | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
manthey_cvc4 | 6 | 5 | 7 | 6 | 6 | 7 | 7 |
corblin | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
cryptanalysis_zaikin | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
surynek | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
stojadinovic | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
zarpas_Ibm | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
manthey_stp | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
HamiltonianCycle | 7 | 7 | 4 | 5 | 4 | 7 | 7 |
fuhs_aes | 5 | 4 | 6 | 6 | 6 | 6 | 7 |
MaxsatOptimum | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
CircuitMultiplie | 6 | 5 | 7 | 7 | 6 | 6 | 6 |
GiraldezCr | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
scheduling | 7 | 7 | 7 | 7 | 7 | 1 | 7 |
PetrinetConcurrency | 5 | 7 | 7 | 7 | 7 | 3 | 7 |
velve | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
ehlers | 4 | 4 | 5 | 5 | 6 | 4 | 6 |
Total | 175 | 177 | 179 | 183 | 178 | 166 | 183 |
Family | MapleLCMDistChronoBT-DL-v3 | Maple_VBBsfr_v1 | LSTech | LSTech_ VBBsfrc_v2 | Relaxed_LCMDCBDL_newTech | Kissat_GB | Kissat_MAB |
---|---|---|---|---|---|---|---|
rintanen | 6 | 7 | 7 | 7 | 7 | 6 | 6 |
eichberger | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
stojadinovic | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
surynek | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
GiraldezCr | 6 | 7 | 6 | 6 | 6 | 6 | 6 |
manthey_cvc4 | 4 | 5 | 5 | 4 | 5 | 5 | 4 |
manthey_stp | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
ehlers | 6 | 6 | 6 | 6 | 6 | 6 | 6 |
zaikin | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
goldberg | 5 | 6 | 6 | 7 | 6 | 7 | 6 |
biere_dinphil | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
velve | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
zarpas_Ibm | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
corblin | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
AtLeastTwoSolutions | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
CellularAutomata | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
strcmpVerification | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
lamProblem | 6 | 6 | 6 | 6 | 6 | 6 | 6 |
populationSafety | 7 | 7 | 7 | 7 | 7 | 7 | 6 |
fuhs_aes | 5 | 4 | 4 | 4 | 3 | 6 | 6 |
Total | 127 | 130 | 129 | 129 | 128 | 131 | 128 |
References
- Cook, S.A. The Complexity of Theorem-proving Procedures. In Proceedings of the Third Annual ACM Symposium on Theory of Computing, Shaker Heights, OH, USA, 3–5 May 1971; pp. 151–158. [Google Scholar] [CrossRef]
- Lai, K.; Siewiorek, D.P. Functional testing of digital systems. In Proceedings of the 20th Design Automation Conference, DAC ’83, Miami Beach, FL, USA, 27–29 June 1983; pp. 207–213. [Google Scholar]
- Clarke, E.M.; Emerson, E.A. Design and synthesis of synchronization skeletons using branching time temporal logic. In Proceedings of the Logics of Programs, Yorktown Heights, NY, USA, 1982; Kozen, D., Ed.; Springer: Berlin/Heidelberg, Germany, 1982; pp. 52–71. [Google Scholar]
- D’Silva, V.; Kroening, D.; Weissenbacher, G. A Survey of Automated Techniques for Formal Software Verification. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2008, 27, 1165–1178. [Google Scholar] [CrossRef]
- SAT Competitions. 2002. Available online: http://www.satcompetition.org (accessed on 19 November 2019).
- 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), Las Vegas, NV, USA, 22 June 2001; pp. 530–535. [Google Scholar] [CrossRef]
- Luby, M.; Sinclair, A.; Zuckerman, D. Optimal speedup of Las Vegas algorithms. Inf. Process. Lett. 1993, 47, 173–180. [Google Scholar] [CrossRef]
- Audemard, G.; Simon, L. Predicting Learnt Clauses Quality in Modern SAT Solvers. In Proceedings of the 21st International Jont Conference on Artifical Intelligence, Pasadena, CA, USA, 11–17 July 2009; IJCAI’09. pp. 399–404. [Google Scholar]
- Luo, M.; Li, C.M.; Xiao, F.; Manyà, F.; Lü, Z. An Effective Learnt Clause Minimization Approach for CDCL SAT Solvers. In Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, IJCAI-17, Melbourne, Australia 19–25 August 2017; pp. 703–711. [Google Scholar] [CrossRef]
- Xiao, F.; Luo, M.; Li, C.M.; Manyà, F.; Lü, Z. MapleLRB LCM, Maple LCM, Maple LCM Dist, MapleLRB LCMoccRestart and Glucose-3.0+width in SAT Competition 2017. In Proceedings of the SAT Competition 2017: Solver and Benchmark Descriptions, Melbourne, Australia, 28 August–1 September 2017; Volume B-2017-1, pp. 25–26. [Google Scholar]
- Nadel, A.; Ryvchin, V. Chronological Backtracking. In Proceedings of the Theory and Applications of Satisfiability Testing—SAT 2018, Oxford, UK, 9–12 July 2018; Beyersdorff, O., Wintersteiger, C.M., Eds.; Springer International Publishing: Cham, Switzerland, 2018; pp. 111–121. [Google Scholar]
- Kochemazov, S.; Zaikin, O.; Semenov, A.A.; Kondratiev, V. Speeding Up CDCL Inference with Duplicate Learnt Clauses. In Proceedings of the ECAI 2020—24th European Conference on Artificial Intelligence, Santiago de Compostela, Spain, 29 August–8 September 2020; Giacomo, G.D., Catalá, A., Dilkina, B., Milano, M., Barro, S., Bugarín, A., Lang, J., Eds.; IOS Press: Shepherdsville, KY, USA, 2020; Volume 325, pp. 339–346. [Google Scholar] [CrossRef]
- Liang, J.H.; Ganesh, V.; Poupart, P.; Czarnecki, K. Exponential Recency Weighted Average Branching Heuristic for SAT Solvers. In Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, Phoenix, AZ, USA, 12–17 February 2016; AAAI’16. pp. 3434–3440. [Google Scholar]
- Liang, J.H.; Ganesh, V.; Poupart, P.; Czarnecki, K. Learning Rate Based Branching Heuristic for SAT Solvers. In Proceedings of the Theory and Applications of Satisfiability Testing—SAT 2016—19th International Conference, Bordeaux, France, 5–8 July 2016; Creignou, N., Berre, D.L., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9710, pp. 123–140. [Google Scholar] [CrossRef]
- Zhang, X.; Cai, S. Relaxed Backtracking with Rephasing. In Proceedings of the SAT Competition 2020, Alghero, Italy, 3–10 July 2020; Solver and Benchmark Descriptions. University of Helsinki, Department of Computer Science: Helsinki, Finland, 2020; Volume B-2020-1, pp. 15–16. [Google Scholar]
- Cheeseman, P.; Kanefsky, B.; Taylor, W.M. Where the Really Hard Problems Are. In Proceedings of the 12th International Joint Conference on Artificial Intelligence—Volume 1, Sydney, Australia, 24–30 August 1991; Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA, 1991. IJCAI’91. pp. 331–337. [Google Scholar]
- Monasson, R.; Zecchina, R.; Kirkpatrick, S.; Selman, B.; Troyansky, L. Determining computational complexity from characteristic ‘phase transitions’. Nature 1999, 400, 133–137. [Google Scholar] [CrossRef]
- Williams, R.; Gomes, C.P.; Selman, B. Backdoors to Typical Case Complexity. In Proceedings of the 18th International Joint Conference on Artificial Intelligence, Acapulco, Mexico, 9–15 August 2003; Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA, 2003. IJCAI’03. pp. 1173–1178. [Google Scholar]
- Zulkoski, E.; Martins, R.; Wintersteiger, C.M.; Robere, R.; Liang, J.H.; Czarnecki, K.; Ganesh, V. Learning-Sensitive Backdoors with Restarts. In Proceedings of the Principles and Practice of Constraint Programming 2018, Lille, France, 27–31 August 2018; Volume 11008, pp. 453–469. [Google Scholar]
- Kilby, P.; Slaney, J.; Thiébaux, S.; Walsh, T. Backbones and Backdoors in Satisfiability. In Proceedings of the 20th National Conference on Artificial Intelligence, Pittsburgh, PA, USA, 9–13 July 2005; AAAI’05. pp. 1368–1373. [Google Scholar]
- Gregory, P.; Fox, M.; Long, D. A New Empirical Study of Weak Backdoors. In Proceedings of the Principles and Practice of Constraint Programming, Sydney, Australia, 14–18 September 2008; Stuckey, P.J., Ed.; Springer: Berlin/Heidelberg, Germany, 2008; pp. 618–623. [Google Scholar]
- Paris, L.; Ostrowski, R.; Siegel, P.; Sais, L. Computing Horn Strong Backdoor Sets Thanks to Local Search. In Proceedings of the 2006 18th IEEE International Conference on Tools with Artificial Intelligence (ICTAI’06), Arlington, VA, USA, 13–15 November 2006; pp. 139–143. [Google Scholar] [CrossRef]
- Kilby, P.; Slaney, J.; Walsh, T. The Backbone of the Travelling Salesperson. In Proceedings of the 19th International Joint Conference on Artificial Intelligence, Edinburgh, Scotland, UK, 30 July–5 August 2005; Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA, 2005. IJCAI’05. pp. 175–180. [Google Scholar]
- Dequen, G.; Dubois, O. kcnfs: An Efficient Solver for Random k-SAT Formulae. In Proceedings of the Theory and Applications of Satisfiability Testing, 6th International Conference, Santa Margherita Ligure, Italy, 5–8 May 2003; Volume 2919, pp. 486–501. [Google Scholar] [CrossRef]
- Alyahya, T.N.; Menai, M.; Mathkour, H. On the Structure of the Boolean Satisfiability Problem: A Survey. ACM Comput. Surv. 2022, 55, 1–34. [Google Scholar]
- Janota, M.; Lynce, I.; Marques-Silva, J. Algorithms for computing backbones of propositional formulae. AI Commun. 2015, 28, 161–177. [Google Scholar] [CrossRef]
- Dilkina, B.N.; Gomes, C.P.; Sabharwal, A. Backdoors in the Context of Learning. In Proceedings of the Theory and Applications of Satisfiability Testing 2009, Swansea, Wales, UK, 30 June–3 July 2009; Volume 5584, pp. 73–79. [Google Scholar]
- Davis, M.; Putnam, H. A Computing Procedure for Quantification Theory. J. ACM 1960, 7, 201–215. [Google Scholar] [CrossRef]
- Marques-Silva, J.P.; Sakallah, K.A. GRASP: A search algorithm for propositional satisfiability. IEEE Trans. Comput. 1999, 48, 506–521. [Google Scholar] [CrossRef]
- Goldberg, E.; Novikov, Y. BerkMin: A fast and robust Sat-solver. Discret. Appl. Math. 2007, 155, 1549–1561. [Google Scholar] [CrossRef]
- Gomes, C.P.; Selman, B.; Kautz, H.A. Boosting Combinatorial Search Through Randomization. In Proceedings of the Fifteenth National Conference on Artificial Intelligence and Tenth Innovative Applications of Artificial Intelligence Conference, Madison, WI, USA, 26–30 July 1998; pp. 431–437. [Google Scholar]
- Eén, N.; Sörensson, N. An Extensible SAT-solver. In Proceedings of the Theory and Applications of Satisfiability Testing 2003, Santa Margherita Ligure, Italy, 5–8 May 2003; Volume 2919, pp. 502–518. [Google Scholar]
- Soos, M.; Nohl, K.; Castelluccia, C. Extending SAT Solvers to Cryptographic Problems. In Proceedings of the Theory and Applications of Satisfiability Testing 2009, Swansea, Wales, UK, 30 June–3 July 2009; Volume 5584, pp. 244–257. [Google Scholar]
- Biere, A.; Fazekas, K.; Fleury, M.; Heisinger, M. CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling entering the SAT Competition 2020. In Proceedings of the SAT Competition 2020: Solver and Benchmark Descriptions, Alghero, Italy, 5–9 July 2020; University of Helsinki, Department of Computer Science: Helsinki, Finland, 2020; Volume B-2020-1, pp. 50–53. [Google Scholar]
- Oh, C. Between SAT and UNSAT: The Fundamental Difference in CDCL SAT. In Proceedings of the Theory and Applications of Satisfiability Testing—SAT 2015, Austin, TX, USA, 24–27 September 2015; pp. 307–323. [Google Scholar]
- Ryvchin, V.; Nadel, A. Maple_LCM_Dist_ChronoBT: Featuring chronological backtracking. In Proceedings of the SAT Competition 2018: Solver and Benchmark Descriptions, Oxford, UK, 9–12 July 2018; Volume B-2028-1, p. 29. [Google Scholar]
- Zhang, X.; Cai, S.; Zhihan, C. Improving CDCL via Local Search. In Proceedings of the SAT Competition 2021: Solver and Benchmark Descriptions, Barcelona, Spain, 5–9 July 2021; Volume B-2021-1, p. 42. [Google Scholar]
- Solimul Chowdhury, M.; Müller, M.; You, J.H. Four CDCL solvers based on expLRB, expVSIDS and Glue Bumping. In Proceedings of the SAT Competition 2021: Solver and Benchmark Descriptions, Barcelona, Spain, 5–9 July 2021; Volume B-2021-1, pp. 17–18. [Google Scholar]
- Cherif, M.S.; Habet, D.; Terrioux, C. Combining VSIDS and CHB Using Restarts in SAT. In Proceedings of the 27th International Conference on Principles and Practice of Constraint Programming (CP 2021), online, 25–29 October 2021; Volume 210, pp. 20:1–20:19. [Google Scholar] [CrossRef]
- Kaiser, A.; Küchlin, W. Detecting Inadmissible and Necessary Variables in Large Propositional Formulae; Technical Report; University of Siena: Siena, Italy, 2001. [Google Scholar]
- Climer, S.; Zhang, W. Searching for Backbones and Fat: A Limit-Crossing Approach with Applications. In Proceedings of the Eighteenth National Conference on Artificial Intelligence, Edmonton, Alberta, Canada, 28 July–1 August 2002; pp. 707–712. [Google Scholar]
- Previti, A.; Järvisalo, M. A Preference-Based Approach to Backbone Computation with Application to Argumentation. In Proceedings of the 33rd Annual ACM Symposium on Applied Computing, Pau, France, 9–13 April 2018; Association for Computing Machinery: New York, NY, USA, 2018. SAC ’18. pp. 896–902. [Google Scholar] [CrossRef]
- Zhang, Y.; Zhang, M.; Pu, G. Optimizing Backbone Filtering. Sci. Comput. Program. 2020, 187, 102374. [Google Scholar] [CrossRef]
- Wu, H. Improving SAT-Solving with Machine Learning. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, Seattle, WA, USA, 8–11 March 2017; Association for Computing Machinery: New York, NY, USA, 2017. SIGCSE ’17. pp. 787–788. [Google Scholar] [CrossRef]
- Dilkina, B.N.; Gomes, C.P.; Malitsky, Y.; Sabharwal, A.; Sellmann, M. Backdoors to Combinatorial Optimization: Feasibility and Optimality. In Proceedings of the Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, 6th International Conference, CPAIOR 2009, Pittsburgh, PA, USA, 27–31 May 2009; pp. 56–70. [Google Scholar] [CrossRef]
- Achterberg, T.; Koch, T.; Martin, A. MIPLIB 2003. Oper. Res. Lett. 2006, 34, 361–372. [Google Scholar] [CrossRef]
- Menai, M.E.; Batouche, M. A Backbone-Based Co-evolutionary Heuristic for Partial MAX-SAT. In Proceedings of the Artificial Evolution, 7th International Conference, Evolution Artificielle, EA 2005, Lille, France, 26–28 October 2005; Revised Selected Papers. Talbi, E., Liardet, P., Collet, P., Lutton, E., Schoenauer, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3871, pp. 155–166. [Google Scholar] [CrossRef]
- Hadri, B.; Kortas, S.; Feki, S.; Khurram, R.; Newby, G. Overview of the KAUST’s Cray X40 system–Shaheen II. In Proceedings of the 2015 Cray User Group, Chicago, IL, USA, 26–30 April 2015. [Google Scholar]
- Williams, R.; Gomes, C.; Selman, B. On the connections between backdoors, restarts, and heavy-tailedness in combinatorial search. Structure 2003, 23, 4. [Google Scholar]
- Zulkoski, E.; Martins, R.; Wintersteiger, C.M.; Robere, R.; Liang, J.; Czarnecki, K.; Ganesh, V. Relating Complexity-theoretic Parameters with SAT Solver Performance. arXiv 2017, arXiv:1706.08611. [Google Scholar]
- Kochemazov, S. Improving Implementation of SAT Competitions 2017-2019 Winners. In Proceedings of the Theory and Applications of Satisfiability Testing—SAT 2020—23rd International Conference, Alghero, Italy, 3–10 July 2020; Volume 12178, pp. 139–148. [Google Scholar] [CrossRef]
- Gomes, C.P.; Selman, B.; Crato, N.; Kautz, H.A. Heavy-Tailed Phenomena in Satisfiability and Constraint Satisfaction Problems. J. Autom. Reason. 2000, 24, 67–100. [Google Scholar] [CrossRef]
- Zulkoski, E.; Martins, R.; Wintersteiger, C.M.; Liang, J.H.; Czarnecki, K.; Ganesh, V. The Effect of Structural Measures and Merges on SAT Solver Performance. In Proceedings of the Principles and Practice of Constraint Programming 2018, Lille, France, 27–37 August 2018; Volume 11008, pp. 436–452. [Google Scholar]
- Liang, J.H.; Ganesh, V.; Zulkoski, E.; Zaman, A.; Czarnecki, K. Understanding VSIDS Branching Heuristics in Conflict-Driven Clause-Learning SAT Solvers. In Proceedings of the Haifa Verification Conference, Haifa, Israel, 17–19 November 2015; Volume 9434, pp. 225–241. [Google Scholar]
- Luo, M.; Li, C.; Wu, X.; Li, S.; Lü, Z. Branching Strategy Selection Approach Based on Vivification Ratio. arXiv 2021, arXiv:2112.06917. [Google Scholar] [CrossRef]
- Liang, J.H.; Oh, C.; Ganesh, V.; Czarnecki, K. MapleCOMSPS, MapleCOMSPS LRB, MapleCOMSPS CHB. In Proceedings of the SAT Competition 2016: Solver and Benchmark Descriptions, Bordeaux, France, 5–8 July 2016; Volume B-2016-1, pp. 52–53. [Google Scholar]
CDCL Solver | Base Solver | Decision Heuristic | Restart Heuristic | Backtracks | Improvements | SAT Competition Rank |
---|---|---|---|---|---|---|
MapleLCM DistChronoBT -DL-v3 [12] | MapleLCM DistChronoBT | LRB and VSIDS |
| ChronoBT |
|
|
Relaxed LCMDCBDL- newTech [15] | MapleLCMDist- ChronoBT-DL | LRB and VSIDS |
| ChronoBT |
|
|
Kissat_MAB [39] | Kissat | VSIDS and CHB |
| ChronoBT | Multi-Armed Bandit framework which combines VSIDS and CHB | Main track ALL/SAT 1st (2021) |
Kissat_gb [38] | Kissat_SAT | VSIDS and CHB |
| ChronoBT | Glue Bumping (GB) based on glue centrality of glue variables | Main track ALL/SAT 3rd (2021) |
LSTech [37] | Relaxed LCMDCBDL- newTech | LRB and VSIDS |
| ChronoBT | Relaxed CDCL approach based on number of restarts | Main track SAT 2nd (2021) |
#families (satisfiable-unsatisfiable-both) | 32 (12-5-15) |
#instances | 329 |
#satisfiable instances (with backbones-without backbones) | 189 (185-4) |
#unsatisfiable instances | 140 |
Number of Solved Industrial Instances | |||||||
---|---|---|---|---|---|---|---|
VBS 1 | 329 | ||||||
Version 1 | Version 2 | Version 3 | |||||
Base Solver | Maple | LSTech | Maple | LSTech | Maple | LSTech | |
302 | 308 | 302 | 308 | 302 | 308 | ||
1 | VSIDS_BBsize_restart | 301 | 309 | 301 | 310 | — 3 | |
2 | VSIDS_BBsize_BBfreq_restart | 302 | 304 | 307 | 308 | 305 | 309 |
3 | VSIDS_BBsize_BBfreq_backtrack | 296 | 305 | 290 | 302 | 299 | 302 |
4 | VSIDS_BBsize_BBfreq_conflict | 303 | 308 | — 2 | 299 | 308 | |
5 | VSIDS_BBsize_BBfreq_restart_conflict | 300 | 312 | 301 | 310 | 302 | 311 |
6 | VSIDS_BDsize_restart | 299 | 310 | 302 | 308 | — 3 |
#SAT | #UNSAT | Total | |
---|---|---|---|
VBS | 189 | 140 | 329 |
MapleLCMDistChronoBT-DL-v3 | 175 | 127 | 302 |
Maple_VBBsfr_v1 | 177 | 130 | 307 |
LSTech | 179 | 129 | 308 |
LSTech_VBBsfrc_v2 | 183 | 129 | 312 |
Relaxed_LCMDCBDL_newTech | 178 | 128 | 306 |
Kissat_GB | 166 | 131 | 297 |
Kissat_MAB | 183 | 128 | 311 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Al-Yahya, T.; Menai, M.E.B.A.; Mathkour, H. Boosting the Performance of CDCL-Based SAT Solvers by Exploiting Backbones and Backdoors. Algorithms 2022, 15, 302. https://doi.org/10.3390/a15090302
Al-Yahya T, Menai MEBA, Mathkour H. Boosting the Performance of CDCL-Based SAT Solvers by Exploiting Backbones and Backdoors. Algorithms. 2022; 15(9):302. https://doi.org/10.3390/a15090302
Chicago/Turabian StyleAl-Yahya, Tasniem, Mohamed El Bachir Abdelkrim Menai, and Hassan Mathkour. 2022. "Boosting the Performance of CDCL-Based SAT Solvers by Exploiting Backbones and Backdoors" Algorithms 15, no. 9: 302. https://doi.org/10.3390/a15090302
APA StyleAl-Yahya, T., Menai, M. E. B. A., & Mathkour, H. (2022). Boosting the Performance of CDCL-Based SAT Solvers by Exploiting Backbones and Backdoors. Algorithms, 15(9), 302. https://doi.org/10.3390/a15090302