Answer Set Programming - Comparison of Implementations

Comparison of Implementations

Early systems, such as Smodels, used backtracking to find solutions. As the theory and practice of Boolean SAT solvers evolved, a number of ASP solvers were built on top of SAT solvers, including ASSAT and Cmodels. These converted ASP formula into SAT propositions, applied the SAT solver, and then converted the solutions back to ASP form. More recent systems, such as Clasp, use a hybrid approach, using conflict-driven algorithms inspired by SAT, without full converting into a boolean-logic form. These approaches allow for significant improvements of performance, often by an order of magnitude, over earlier backtracking algorithms.

The Potassco project acts as an umbrella for many of the systems below, including clasp, grounding systems (gringo), incremental systems (iclingo), constraint solvers (clingcon), action language to ASP compilers (coala), distributed MPI implementations (claspar), and many others.

Most systems support variables, but only indirectly, by forcing grounding, by using a grounding system such as Lparse or gringo as a front end. The need for grounding can cause a combinatorial explosion of clauses; thus, systems that perform on-the-fly grounding might have an advantage.

Platform Features Mechanics
Name OS Licence Variables Function symbols Explicit sets Explicit lists Disjunctive (choice rules) support
ASPeRiX Linux GPL Yes No on-the-fly grounding
ASSAT Solaris Freeware SAT-solver based
Clasp Answer Set Solver Linux, Mac OS, Windows GPL yes, in Clingo Yes No No Yes, in ClaspD Incremental, SAT-inspired (nogood, conflict-driven)
Cmodels Linux, Solaris GPL Requires grounding Yes Incremental, SAT-solver inspired (nogood conflict-driven)
DLV Linux, Mac OS, Windows free for academic and non-commercial educational use, and for non-profit organizations Yes Yes No No Yes Not Lparse compatible
DLV-Complex Linux, Mac OS, Windows Freeware Yes Yes Yes Yes Built on top of DLV - Not Lparse compatible
GnT Linux GPL Requires grounding Yes built on top of smodels.
nomore++ Linux GPL combined literal+rule-based
Platypus Linux, Solaris, Windows GPL Distributed, multi-threaded nomore++, smodels
Pbmodels Linux ? Pseudo-boolean solver based
Smodels Linux, Mac OS, Windows GPL Requires grounding No No No No
Smodels-cc Linux ? Requires grounding SAT-solver based; smodels w/conflict clauses.
Sup Linux ? SAT-solver based

Read more about this topic:  Answer Set Programming

Famous quotes containing the words comparison of and/or comparison:

    We teach boys to be such men as we are. We do not teach them to aspire to be all they can. We do not give them a training as if we believed in their noble nature. We scarce educate their bodies. We do not train the eye and the hand. We exercise their understandings to the apprehension and comparison of some facts, to a skill in numbers, in words; we aim to make accountants, attorneys, engineers; but not to make able, earnest, great- hearted men.
    Ralph Waldo Emerson (1803–1882)

    [Girls] study under the paralyzing idea that their acquirements cannot be brought into practical use. They may subserve the purposes of promoting individual domestic pleasure and social enjoyment in conversation, but what are they in comparison with the grand stimulation of independence and self- reliance, of the capability of contributing to the comfort and happiness of those whom they love as their own souls?
    Sarah M. Grimke (1792–1873)