Solution Enumeration for Projected Boolean Search Problems (original) (raw)

Conflict-Driven Answer Set Enumeration

2007

We elaborate upon a recently proposed approach to finding an answer set of a logic program based on concepts from constraint processing and satisfiability checking. We extend this approach and propose a new algorithm for enumerating answer sets. The algorithm, which to our knowledge is novel even in the context of satisfiability checking, is implemented in the clasp answer set solver. We contrast our new approach to alternative systems and different options of clasp, and provide an empirical evaluation.

Solver Scheduling via Answer Set Programming

Theory and Practice of Logic Programming

Although Boolean Constraint Technology has made tremendous progress over the last decade, the efficacy of state-of-the-art solvers is known to vary considerably across different types of problem instances and is known to depend strongly on algorithm parameters. This problem was addressed by means of a simple, yet effective approach using handmade, uniform and unordered schedules of multiple solvers in ppfolio, which showed very impressive performance in the 2011 SAT Competition. Inspired by this, we take advantage of the modeling and solving capacities of Answer Set Programming (ASP) to automatically determine more refined, that is, non-uniform and ordered solver schedules from existing benchmarking data. We begin by formulating the determination of such schedules as multi-criteria optimization problems and provide corresponding ASP encodings. The resulting encodings are easily customizable for different settings and the computation of optimum schedules can mostly be done in the bli...

A New Algorithm for Answer Set Computation

A new exact algorithm for computing answer sets of logic programs is presented and analyzed. The algorithm takes a logic program in Kernel nor- mal form as an input and computes its answer sets by reducing the problem to a suitable version of graph colorability. Even though worst-case complexity is exponential, thanks to a straightforward formulation we can prove that the algo- rithm works in time O�(1.6181n), which is asymptotically better than the trivial bound O�(2n) of the brute force algorithms. We argue that this new algorithm represents a significant progress in terms of worst-case tim e complexity over tra- ditional branch-and-bound algorithms.