Optimizing the Computation of Heuristics for Answer Set Programming Systems

Most SAT solvers and Answer Set Programming (ASP) systems employ a backtracking search by repeatedly assuming the truth of literals. The choice of these branching literals is crucial for the performance of these systems. Competitive ASP systems employ advanced heuristics to select branching literals, which are usually based on "look-ahead" techniques: To evaluate the heuristic value of a literal L, truth and falsity of L are assumed in the current interpretation, consequences are derived, and the quality of the resulting interpretations is evaluated. This process can be very expensive, and often consumes most of the time taken by an ASP system. In this paper, we present two techniques to optimize the computation of the heuristics in the ASP system DLV. The first technique singles out pairs of literals {A, not B} having precisely the same consequences, which allows for making only one look-ahead for each of these pairs. The second technique (inspired by SAT solvers) is a 2-layered heuristic, in which a simple heuristic criterion reduces the set of literals to be looked-ahead. We implement both techniques in the ASP system DLV and evaluate their efficiency on a number of benchmark problems taken from various domains. The experiments confirm the usefulness of both techniques, sensibly improving the performance of DLV.

[1]  Gerald Pfeifer,et al.  The KR System dlv: Progress Report, Comparisons and Benchmarks , 1998, KR.

[2]  Wolfgang Faber,et al.  DLV - A System for Declarative Problem Solving , 2000, ArXiv.

[3]  Jack Minker,et al.  On Indefinite Databases and the Closed World Assumption , 1987, CADE.

[4]  Wolfgang Faber,et al.  Experimenting with Heuristics for Answer Set Programming , 2001, IJCAI.

[5]  Wolfgang Faber,et al.  Pushing Goal Derivation in DLP Computations , 1999, LPNMR.

[6]  Wolfgang Faber,et al.  Using Database Optimization , 1999 .

[7]  Gerald Pfeifer,et al.  Progress Report on the Disjunctive Deductive Database System dlv , 1998, FQAS.

[8]  Georg Gottlob,et al.  Default Logic as a Query Language , 1997, IEEE Trans. Knowl. Data Eng..

[9]  Wolfgang Faber,et al.  Declarative problem-solving using the DLV system , 2000 .

[10]  V. Lifschitz,et al.  Foundations of Logic Programming , 1997 .

[11]  Vladimir Lifschitz,et al.  Answer Set Planning (Abstract) , 1999, LPNMR.

[12]  Wolfgang Faber,et al.  The Diagnosis Frontend of the dlv System , 1999, AI Commun..

[13]  G. Brewka Principles of Knowledge Representation , 1996 .

[14]  Esra Erdem,et al.  Applications of Logic Programming to Planning: Computational Experiments , 1999 .

[15]  Timo Soininen,et al.  Extending and implementing the stable model semantics , 2000, Artif. Intell..

[16]  Francesco Scarcello,et al.  Disjunctive Stable Models: Unfounded Sets, Fixpoint Semantics, and Computation , 1997, Inf. Comput..

[17]  Chu Min Li,et al.  Heuristics Based on Unit Propagation for Satisfiability Problems , 1997, IJCAI.