Throwing Darts: Random Sampling Helps Tree Search when the Number of Short Certificates Is Moderate

Authors

  • John Dickerson Carnegie Mellon University
  • Tuomas Sandholm Carnegie Mellon University

DOI:

https://doi.org/10.1609/socs.v4i1.18278

Keywords:

Search, Sampling, Proving optimality, Proving infeasibility

Abstract

One typically proves infeasibility in satisfiability/constraint satisfaction (or optimality in integer programming) by constructing a tree certificate. However, deciding how to branch in the search tree is hard, and impacts search time drastically. We explore the power of a simple paradigm, that of throwing random darts into the assignment space and then using information gathered by that dart to guide what to do next. Such guidance is easy to incorporate into state-of-the-art solvers. This method seems to work well when the number of short certificates of infeasibility is moderate, suggesting the overhead of throwing darts can be countered by the information gained by these darts. We explore results supporting this suggestion both on instances from a new generator where the size and number of short certificates can be controlled, and on industral instances from the annual SAT competition.

Downloads

Published

2021-08-20