622 research outputs found
Low-rank semidefinite programming for the MAX2SAT problem
This paper proposes a new algorithm for solving MAX2SAT problems based on
combining search methods with semidefinite programming approaches. Semidefinite
programming techniques are well-known as a theoretical tool for approximating
maximum satisfiability problems, but their application has traditionally been
very limited by their speed and randomized nature. Our approach overcomes this
difficult by using a recent approach to low-rank semidefinite programming,
specialized to work in an incremental fashion suitable for use in an exact
search algorithm. The method can be used both within complete or incomplete
solver, and we demonstrate on a variety of problems from recent competitions.
Our experiments show that the approach is faster (sometimes by orders of
magnitude) than existing state-of-the-art complete and incomplete solvers,
representing a substantial advance in search methods specialized for MAX2SAT
problems.Comment: Accepted at AAAI'19. The code can be found at
https://github.com/locuslab/mixsa
Boolean Satisfiability in Electronic Design Automation
Boolean Satisfiability (SAT) is often used as the underlying model for a significant and increasing number of applications in Electronic Design Automation (EDA) as well as in many other fields of Computer Science and Engineering. In recent years, new and efficient algorithms for SAT have been developed, allowing much larger problem instances to be solved. SAT “packages” are currently expected to have an impact on EDA applications similar to that of BDD packages since their introduction more than a decade ago. This tutorial paper is aimed at introducing the EDA professional to the Boolean satisfiability problem. Specifically, we highlight the use of SAT models to formulate a number of EDA problems in such diverse areas as test pattern generation, circuit delay computation, logic optimization, combinational equivalence checking, bounded model checking and functional test vector generation, among others. In addition, we provide an overview of the algorithmic techniques commonly used for solving SAT, including those that have seen widespread use in specific EDA applications. We categorize these algorithmic techniques, indicating which have been shown to be best suited for which tasks
Taming a non-convex landscape with dynamical long-range order: memcomputing Ising benchmarks
Recent work on quantum annealing has emphasized the role of collective
behavior in solving optimization problems. By enabling transitions of clusters
of variables, such solvers are able to navigate their state space and locate
solutions more efficiently despite having only local connections between
elements. However, collective behavior is not exclusive to quantum annealers,
and classical solvers that display collective dynamics should also possess an
advantage in navigating a non-convex landscape. Here, we give evidence that a
benchmark derived from quantum annealing studies is solvable in polynomial time
using digital memcomputing machines, which utilize a collection of dynamical
components with memory to represent the structure of the underlying
optimization problem. To illustrate the role of memory and clarify the
structure of these solvers we propose a simple model of these machines that
demonstrates the emergence of long-range order. This model, when applied to
finding the ground state of the Ising frustrated-loop benchmarks, undergoes a
transient phase of avalanches which can span the entire lattice and
demonstrates a connection between long-range behavior and their probability of
success. These results establish the advantages of computational approaches
based on collective dynamics of continuous dynamical systems
A Novel SAT-Based Approach to the Task Graph Cost-Optimal Scheduling Problem
The Task Graph Cost-Optimal Scheduling Problem consists in scheduling a certain number of interdependent tasks onto a set of heterogeneous processors (characterized by idle and running rates per time unit), minimizing the cost of the entire process. This paper provides a novel formulation for this scheduling puzzle, in which an optimal solution is computed through a sequence of Binate Covering Problems, hinged within a Bounded Model Checking paradigm. In this approach, each covering instance, providing a min-cost trace for a given schedule depth, can be solved with several strategies, resorting to Minimum-Cost Satisfiability solvers or Pseudo-Boolean Optimization tools. Unfortunately, all direct resolution methods show very low efficiency and scalability. As a consequence, we introduce a specialized method to solve the same sequence of problems, based on a traditional all-solution SAT solver. This approach follows the "circuit cofactoring" strategy, as it exploits a powerful technique to capture a large set of solutions for any new SAT counter-example. The overall method is completed with a branch-and-bound heuristic which evaluates lower and upper bounds of the schedule length, to reduce the state space that has to be visited. Our results show that the proposed strategy significantly improves the blind binate covering schema, and it outperforms general purpose state-of-the-art tool
- …