24 research outputs found
The Fractal Dimension of SAT Formulas
Modern SAT solvers have experienced a remarkable progress on solving
industrial instances. Most of the techniques have been developed after an
intensive experimental testing process. Recently, there have been some attempts
to analyze the structure of these formulas in terms of complex networks, with
the long-term aim of explaining the success of these SAT solving techniques,
and possibly improving them.
We study the fractal dimension of SAT formulas, and show that most industrial
families of formulas are self-similar, with a small fractal dimension. We also
show that this dimension is not affected by the addition of learnt clauses. We
explore how the dimension of a formula, together with other graph properties
can be used to characterize SAT instances. Finally, we give empirical evidence
that these graph properties can be used in state-of-the-art portfolios.Comment: 20 pages, 11 Postscript figure
An Extensive Evaluation of Portfolio Approaches for Constraint Satisfaction Problems
In the context of Constraint Programming, a portfolio
approach exploits the complementary strengths of a portfolio of
different constraint solvers. The goal is to predict and run the best
solver(s) of the portfolio for solving a new, unseen problem. In
this work we reproduce, simulate, and evaluate the performance
of different portfolio approaches on extensive benchmarks of
Constraint Satisfaction Problems. Empirical results clearly show
the benefits of portfolio solvers in terms of both solved instances
and solving time
SUNNY: a Lazy Portfolio Approach for Constraint Solving
*** To appear in Theory and Practice of Logic Programming (TPLP) ***
Within the context of constraint solving, a portfolio approach allows one to
exploit the synergy between different solvers in order to create a globally
better solver. In this paper we present SUNNY: a simple and flexible algorithm
that takes advantage of a portfolio of constraint solvers in order to compute
--- without learning an explicit model --- a schedule of them for solving a
given Constraint Satisfaction Problem (CSP). Motivated by the performance
reached by SUNNY vs. different simulations of other state of the art
approaches, we developed sunny-csp, an effective portfolio solver that exploits
the underlying SUNNY algorithm in order to solve a given CSP. Empirical tests
conducted on exhaustive benchmarks of MiniZinc models show that the actual
performance of SUNNY conforms to the predictions. This is encouraging both for
improving the power of CSP portfolio solvers and for trying to export them to
fields such as Answer Set Programming and Constraint Logic Programming
A Multi-Engine Approach to Answer Set Programming
Answer Set Programming (ASP) is a truly-declarative programming paradigm
proposed in the area of non-monotonic reasoning and logic programming, that has
been recently employed in many applications. The development of efficient ASP
systems is, thus, crucial. Having in mind the task of improving the solving
methods for ASP, there are two usual ways to reach this goal: extending
state-of-the-art techniques and ASP solvers, or designing a new ASP
solver from scratch. An alternative to these trends is to build on top of
state-of-the-art solvers, and to apply machine learning techniques for choosing
automatically the "best" available solver on a per-instance basis.
In this paper we pursue this latter direction. We first define a set of
cheap-to-compute syntactic features that characterize several aspects of ASP
programs. Then, we apply classification methods that, given the features of the
instances in a {\sl training} set and the solvers' performance on these
instances, inductively learn algorithm selection strategies to be applied to a
{\sl test} set. We report the results of a number of experiments considering
solvers and different training and test sets of instances taken from the ones
submitted to the "System Track" of the 3rd ASP Competition. Our analysis shows
that, by applying machine learning techniques to ASP solving, it is possible to
obtain very robust performance: our approach can solve more instances compared
with any solver that entered the 3rd ASP Competition. (To appear in Theory and
Practice of Logic Programming (TPLP).)Comment: 26 pages, 8 figure
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
An Extensive Evaluation of Portfolio Approaches for Constraint Satisfaction Problems
International audienceIn the context of Constraint Programming, a portfolio approach exploits the complementary strengths of a portfolio of different constraint solvers. The goal is to predict and run the best solver(s) of the portfolio for solving a new, unseen problem. In this work we reproduce, simulate, and evaluate the performance of different portfolio approaches on extensive benchmarks of Constraint Satisfaction Problems. Empirical results clearly show the benefits of portfolio solvers in terms of both solved instances and solving time
ASlib: A Benchmark Library for Algorithm Selection
The task of algorithm selection involves choosing an algorithm from a set of
algorithms on a per-instance basis in order to exploit the varying performance
of algorithms over a set of instances. The algorithm selection problem is
attracting increasing attention from researchers and practitioners in AI. Years
of fruitful applications in a number of domains have resulted in a large amount
of data, but the community lacks a standard format or repository for this data.
This situation makes it difficult to share and compare different approaches
effectively, as is done in other, more established fields. It also
unnecessarily hinders new researchers who want to work in this area. To address
this problem, we introduce a standardized format for representing algorithm
selection scenarios and a repository that contains a growing number of data
sets from the literature. Our format has been designed to be able to express a
wide variety of different scenarios. Demonstrating the breadth and power of our
platform, we describe a set of example experiments that build and evaluate
algorithm selection models through a common interface. The results display the
potential of algorithm selection to achieve significant performance
improvements across a broad range of problems and algorithms.Comment: Accepted to be published in Artificial Intelligence Journa
MachSMT: A Machine Learning-based Algorithm Selector for SMT Solvers
In this paper, we present MachSMT, an algorithm selection tool for state-of-the-art Satisfiability Modulo Theories (SMT) solvers. MachSMT supports the entirety of the logics within the SMT-LIB initiative. MachSMT uses machine learning to learn empirical hardness models (a mapping from SMT-LIB instances to solvers) for state-of-the-art SMT solvers to compute a ranking of which solver is most likely to solve a particular instance the fastest. We analyzed the performance of MachSMT on 102 logics/tracks of SMT-COMP 2019 and observe that it improves on competition winners in 49 logics (with up to 240% in performance for certain logics). MachSMT is clearly not a replacement for any particular SMT solver, but rather a tool that enables users to leverage the collective strength of the diverse set of algorithms implemented as part of these sophisticated solvers. Our MachSMT artifact is available at https://github.com/j29scott/MachSMT