17 research outputs found
Automatic Algorithm Selection for Pseudo-Boolean Optimization with Given Computational Time Limits
Machine learning (ML) techniques have been proposed to automatically select
the best solver from a portfolio of solvers, based on predicted performance.
These techniques have been applied to various problems, such as Boolean
Satisfiability, Traveling Salesperson, Graph Coloring, and others.
These methods, known as meta-solvers, take an instance of a problem and a
portfolio of solvers as input. They then predict the best-performing solver and
execute it to deliver a solution. Typically, the quality of the solution
improves with a longer computational time. This has led to the development of
anytime selectors, which consider both the instance and a user-prescribed
computational time limit. Anytime meta-solvers predict the best-performing
solver within the specified time limit.
Constructing an anytime meta-solver is considerably more challenging than
building a meta-solver without the "anytime" feature. In this study, we focus
on the task of designing anytime meta-solvers for the NP-hard optimization
problem of Pseudo-Boolean Optimization (PBO), which generalizes Satisfiability
and Maximum Satisfiability problems. The effectiveness of our approach is
demonstrated via extensive empirical study in which our anytime meta-solver
improves dramatically on the performance of Mixed Integer Programming solver
Gurobi, which is the best-performing single solver in the portfolio. For
example, out of all instances and time limits for which Gurobi failed to find
feasible solutions, our meta-solver identified feasible solutions for 47% of
these
Engineering an Efficient PB-XOR Solver
Despite the NP-completeness of Boolean satisfiability, modern SAT solvers are routinely able to handle large practical instances, and consequently have found wide ranging applications. The primary workhorse behind the success of SAT solvers is the widely acclaimed Conflict Driven Clause Learning (CDCL) paradigm, which was originally proposed in the context of Boolean formulas in CNF. The wide ranging applications of SAT solvers have highlighted that for several domains, CNF is not a natural representation and the reliance of modern SAT solvers on resolution proof system limit their ability to efficiently solve several families of constraints. Consequently, the past decade has witnessed the design of solvers with native support for constraints such as Pseudo-Boolean (PB) and CNF-XOR.
The primary contribution of our work is an efficient solver engineered for PB-XOR formulas, i.e., formulas consisting of a conjunction of PB and XOR constraints. We first observe that a simple adaption of CNF-XOR architecture does not provide an improvement over baseline; our analysis highlights the need for careful engineering of the order of propagations. To this end, we propose three different tactics, all of which achieve significant performance improvements over the baseline. Our work is motivated by applications arising from binarized neural network verification where the verification of properties such as robustness, fairness, trojan attacks can be reduced to model counting queries; the state of the art model counters reduce counting to polynomially many SAT queries over the original formula conjuncted with randomly generated XOR constraints. To this end, we augment ApproxMC with LinPB and we call the resulting counter as ApproxMCPB. In an extensive empirical comparison over 1076 benchmarks, we observe that ApproxMCPB can solve 912 instances while the baseline version of ApproxMC4 (augmented with CryptoMiniSat) can solve only 802 instances
International Competition on Graph Counting Algorithms 2023
This paper reports on the details of the International Competition on Graph
Counting Algorithms (ICGCA) held in 2023. The graph counting problem is to
count the subgraphs satisfying specified constraints on a given graph. The
problem belongs to #P-complete, a computationally tough class. Since many
essential systems in modern society, e.g., infrastructure networks, are often
represented as graphs, graph counting algorithms are a key technology to
efficiently scan all the subgraphs representing the feasible states of the
system. In the ICGCA, contestants were asked to count the paths on a graph
under a length constraint. The benchmark set included 150 challenging
instances, emphasizing graphs resembling infrastructure networks. Eleven
solvers were submitted and ranked by the number of benchmarks correctly solved
within a time limit. The winning solver, TLDC, was designed based on three
fundamental approaches: backtracking search, dynamic programming, and model
counting or #SAT (a counting version of Boolean satisfiability). Detailed
analyses show that each approach has its own strengths, and one approach is
unlikely to dominate the others. The codes and papers of the participating
solvers are available: https://afsa.jp/icgca/.Comment: https://afsa.jp/icgca
Pseudo-Boolean Optimization by Implicit Hitting Sets
Recent developments in applying and extending Boolean satisfiability (SAT) based techniques have resulted in new types of approaches to pseudo-Boolean optimization (PBO), complementary to the more classical integer programming techniques. In this paper, we develop the first approach to pseudo-Boolean optimization based on instantiating the so-called implicit hitting set (IHS) approach, motivated by the success of IHS implementations for maximum satisfiability (MaxSAT). In particular, we harness recent advances in native reasoning techniques for pseudo-Boolean constraints, which enable efficiently identifying inconsistent assignments over subsets of objective function variables (i.e. unsatisfiable cores in the context of PBO), as a basis for developing a native IHS approach to PBO, and study the impact of various search techniques applicable in the context of IHS for PBO. Through an extensive empirical evaluation, we show that the IHS approach to PBO can outperform other currently available PBO solvers, and also provides a complementary approach to PBO when compared to classical integer programming techniques
Optimization of energy consumption in cloud computing datacenters
Cloud computing has emerged as a practical paradigm for providing IT resources, infrastructure and services. This has led to the establishment of datacenters that have substantial energy demands for their operation. This work investigates the optimization of energy consumption in cloud datacenter using energy efficient allocation of tasks to resources. The work seeks to develop formal optimization models that minimize the energy consumption of computational resources and evaluates the use of existing optimization solvers in testing these models. Integer linear programming (ILP) techniques are used to model the scheduling problem. The objective is to minimize the total power consumed by the active and idle cores of the servers’ CPUs while meeting a set of constraints. Next, we use these models to carry out a detailed performance comparison between a selected set of Generic ILP and 0-1 Boolean satisfiability based solvers in solving the ILP formulations. Simulation results indicate that in some cases the developed models have saved up to 38% in energy consumption when compared to common techniques such as round robin. Furthermore, results also showed that generic ILP solvers had superior performance when compared to SAT-based ILP solvers especially as the number of tasks and resources grow in size
On Continuous Local BDD-Based Search for Hybrid SAT Solving
We explore the potential of continuous local search (CLS) in SAT solving by
proposing a novel approach for finding a solution of a hybrid system of Boolean
constraints. The algorithm is based on CLS combined with belief propagation on
binary decision diagrams (BDDs). Our framework accepts all Boolean constraints
that admit compact BDDs, including symmetric Boolean constraints and
small-coefficient pseudo-Boolean constraints as interesting families. We
propose a novel algorithm for efficiently computing the gradient needed by CLS.
We study the capabilities and limitations of our versatile CLS solver, GradSAT,
by applying it on many benchmark instances. The experimental results indicate
that GradSAT can be a useful addition to the portfolio of existing SAT and
MaxSAT solvers for solving Boolean satisfiability and optimization problems.Comment: AAAI 2