Skip to main content
Log in

Answer set programming unleashed!

  • Technical Contribution
  • Published:
KI - Künstliche Intelligenz Aims and scope Submit manuscript

Abstract

Answer Set Programming faces an increasing popularity for problem solving in various domains. While its modeling language allows us to express many complex problems in an easy way, its solving technology enables their effective resolution. In what follows, we detail some of the key factors of its success. Answer Set Programming [ASP; Brewka et al. Commun ACM 54(12):92–103, (2011)] is seeing a rapid proliferation in academia and industry due to its easy and flexible way to model and solve knowledge-intense combinatorial (optimization) problems. To this end, ASP offers a high-level modeling language paired with high-performance solving technology. As a result, ASP systems provide out-off-the-box, general-purpose search engines that allow for enumerating (optimal) solutions. They are represented as answer sets, each being a set of atoms representing a solution. The declarative approach of ASP allows a user to concentrate on a problem’s specification rather than the computational means to solve it. This makes ASP a prime candidate for rapid prototyping and an attractive tool for teaching key AI techniques since complex problems can be expressed in a succinct and elaboration tolerant way. This is eased by the tuning of ASP’s modeling language to knowledge representation and reasoning (KRR). The resulting impact is nicely reflected by a growing range of successful applications of ASP [Erdem et al. AI Mag 37(3):53–68, 2016; Falkner et al. Industrial applications of answer set programming. K++nstliche Intelligenz (2018)].

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Notes

  1. Davis–Putnam–Logemann–Loveland [15, 16].

  2. Note that problems over real-valued variables only are not combinatorial and solvable in polynomial time.

  3. Exceptions include [21, 38].

References

  1. Abiteboul S, Hull R, Vianu V (1995) Foundations of databases. Addison-Wesley, Boston

    MATH  Google Scholar 

  2. Alviano M, Dodaro C, Leone N, Ricca F (2015) Advances in WASP. In: Calimeri E, Ianni G, Truszczyński (eds) Proceedings of the thirteenth international conference on logic programming and nonmonotonic reasoning (LPNMR’15). Lecture notes in artificial intelligence, vol 9345. Springer, Berlin, pp 40–54 (2015)

  3. Alviano M, Faber W (2018) Aggregates in answer set programming. K++nstliche Intelligenz

  4. Baral C (2003) Knowledge representation, reasoning and declarative problem solving. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  5. Barrett C, Sebastiani R, Seshia S, Tinelli C (2018) Satisfiability modulo theories. In: Biere et al. (ed) Chap. 26, pp 825–885

  6. Bidoit N, Froidevaux C (1987) Minimalism subsumes default logic and circumscription in stratified logic programming. In: Proceedings of the second annual symposium on logic in computer science (LICS’87), IEEE Computer Society Press, Washington, DC, pp 89–97

  7. Biere A, Heule M, van Maaren H, Walsh T (eds) (2009) Handbook of satisfiability. Frontiers in artificial intelligence and applications, vol 185. IOS Press, Amsterdam

    Google Scholar 

  8. Brewka G, Delgrande J, Romero J, Schaub T (2015) Asprin: customizing answer set preferences without a headache. In: Bonet B, Koenig S (eds) Proceedings of the twenty-ninth national conference on artificial intelligence (AAAI’15), AAAI Press, Palo Alto, pp 1467–1474. http://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/view/9535

  9. Brewka G, Eiter T, Truszczyński M (2011) Answer set programming at a glance. Commun ACM 54(12):92–103

    Article  Google Scholar 

  10. Cabalar P, Pearce D, Valverde A (2018) Answer set programming from a logical point of view. K++nstliche Intelligenz

  11. Calimeri F, Faber W, Gebser M, Ianni G, Kaminski R, Krennwallner T, Leone N, Ricca F, Schaub T (2012) ASP-Core-2: input language format. https://www.mat.unical.it/aspcomp2013/ASPStandardization

  12. Ceri S, Gottlob G, Tanca L (1990) Logic programming and databases. Springer, Berlin

    Book  Google Scholar 

  13. Clark K (1978) Negation as failure. In: Gallaire H, Minker J (eds) Logic and data bases. Plenum Press, Berlin, pp 293–322

    Chapter  Google Scholar 

  14. Clocksin W (1981) Programming in Prolog. Springer, Berlin

    MATH  Google Scholar 

  15. Davis M, Logemann G, Loveland D (1962) A machine program for theorem-proving. Commun ACM 5:394–397

    Article  MathSciNet  MATH  Google Scholar 

  16. Davis M, Putnam H (1960) A computing procedure for quantification theory. J ACM 7:201–215

    Article  MathSciNet  MATH  Google Scholar 

  17. Dechter R (2003) Constraint processing. Morgan Kaufmann Publishers, Burlington

    MATH  Google Scholar 

  18. Eiter T, Ianni G, Krennwallner T (2009) Answer set programming: a primer. In: Tessaris S, Franconi E, Eiter T, Gutierrez C, Handschuh S, Rousset M, Schmidt R (eds) Fifth international reasoning web summer school (RW’09). Lecture notes in computer science, vol 5689. Springer, Berlin, pp 40–110. http://www.kr.tuwien.ac.at/staff/tkren/pub/2009/rw2009-asp.pdf

  19. Erdem E, Gelfond M, Leone N (2016) Applications of ASP. AI Mag 37(3):53–68

    Article  Google Scholar 

  20. Falkner A, Friedrich G, Schekotihin K, Taupe R, Teppan E (2018) Industrial applications of answer set programming. K++nstliche Intelligenz (to appear)

  21. Febbraro O, Reale K, Ricca F (2011) ASPIDE: integrated development environment for answer set programming. In: Delgrande J, Faber W (eds) Proceedings of the eleventh international conference on logic programming and nonmonotonic reasoning (LPNMR’11). Lecture notes in artificial intelligence, vol 6645. Springer, Berlin, pp 317–330

  22. Gebser M, Kaminski R, Kaufmann B, Schaub T (2012) Answer set solving in practice. Synthesis lectures on artificial intelligence and machine learning. Morgan and Claypool Publishers, San Rafael

    Google Scholar 

  23. Gebser M, Kaufmann B, Schaub T (2012) Conflict-driven answer set solving: from theory to practice. Artif Intell 187–188:52–89

    Article  MathSciNet  MATH  Google Scholar 

  24. Gebser M, Schaub T (2016) Modeling and language extensions. AI Mag 37(3):33–44

    Article  Google Scholar 

  25. Gelfond M, Kahl Y (2014) Knowledge representation, reasoning, and the design of intelligent agents: the answer-set programming approach. Cambridge University Press, Cambridge

    Book  Google Scholar 

  26. Gelfond M, Lifschitz V (1988) The stable model semantics for logic programming. In: Kowalski R, Bowen K (eds) Proceedings of the fifth international conference and symposium of logic programming (ICLP’88), MIT Press, Cambridge, pp 1070–1080

  27. Heyting A (1986) Die formalen Regeln der intuitionistischen Logik. In: Sitzungsberichte der Preussischen Akademie der Wissenschaften, pp 42–56. Deutsche Akademie der Wissenschaften zu Berlin (1930). Reprint in Logik-Texte: Kommentierte Auswahl zur Geschichte der Modernen Logik, Akademie-Verlag

  28. Kaminski R, Schaub T, Wanko P (2017) A tutorial on hybrid answer set solving with clingo. In: Ianni G, Lembo D, Bertossi L, Faber W, Glimm B, Gottlob G, Staab S (eds) Proceedings of the thirteenth international summer school of the reasoning web. Lecture notes in computer science, vol 10370. Springer, Berlin, pp 167–203

  29. Kaufmann B, Leone N, Perri S, Schaub T (2016) Grounding and solving in answer set programming. AI Mag 37(3):25–32

    Article  Google Scholar 

  30. Kowalski R (1974) Predicate logic as programming language. In: Proceedings IFIP Congress, North-Holland Publishing Company, Amsterdam, pp 569–574

  31. Leone N, Pfeifer G, Faber W, Eiter T, Gottlob G, Perri S, Scarcello F (2006) The DLV system for knowledge representation and reasoning. ACM Trans Comput Logic 7(3):499–562

    Article  MathSciNet  MATH  Google Scholar 

  32. Lifschitz V, Razborov A (2006) Why are there so many loop formulas? ACM Trans Comput Logic 7(2):261–268

    Article  MathSciNet  MATH  Google Scholar 

  33. Lin F, Zhao Y (2002) ASSAT: computing answer sets of a logic program by SAT solvers. In: Proceedings of the national conference on artificial intelligence (AAAI), AAAI/MIT Press, Cambridge, pp 112–118

  34. Marques-Silva J, Sakallah K (1999) GRASP: a search algorithm for propositional satisfiability. IEEE Trans Comput 48(5):506–521

    Article  MathSciNet  MATH  Google Scholar 

  35. McCarthy J (1986) Applications of circumscription to formalizing common-sense knowledge. Artif Intell 28:89–116

    Article  MathSciNet  Google Scholar 

  36. McCarthy J (1998) Elaboration tolerance. http://www-formal.stanford.edu/jmc/elaboration.html

  37. Niemelä I (1999) Logic programs with stable model semantics as a constraint programming paradigm. Ann Math Artif Intell 25(3–4):241–273

    Article  MathSciNet  MATH  Google Scholar 

  38. Oetsch J, Pührer J, Tompits H (2010) Catching the ouroboros: on debugging non-ground answer-set programs. Theory Pract Logic Program 10(4–6):513–529

    Article  MathSciNet  MATH  Google Scholar 

  39. Pearce D (2006) Equilibrium logic. Ann Math Artif Intell 47(1–2):3–41

    Article  MathSciNet  MATH  Google Scholar 

  40. Pearce D, Tompits H, Woltran S (2001) Encodings for equilibrium logic and logic programs with nested expressions. In: Brazdil P, Jorge A (eds) Proceedings of the tenth Portuguese conference on artificial intelligence (EPIA’01). Lecture notes in computer science, vol 2258. Springer, Berlin, pp 306–320

  41. Reiter R (1980) A logic for default reasoning. Artif Intell 13(1–2):81–132

    Article  MathSciNet  MATH  Google Scholar 

  42. Schrijver A (1999) Theory of linear and integer programming. Discrete mathematics and optimization. Wiley, Hoboken

    Google Scholar 

  43. Simons P, Niemelä I, Soininen T (2002) Extending and implementing the stable model semantics. Artif Intell 138(1–2):181–234

    Article  MathSciNet  MATH  Google Scholar 

  44. Zhang L, Madigan C, Moskewicz M, Malik S (2001) Efficient conflict driven learning in a Boolean satisfiability solver. In: Ernst R (ed) Proceedings of the 2001 IEEE/ACM international conference on Computer-aided design. IEEE, San Jose, pp 279–285

    Google Scholar 

Download references

Acknowledgements

Torsten Schaub has been supported by the German Science Foundation (DFG): Projects SCHA 550/9 and 11. Stefan Woltran has been supported by the Austrian Science Fund (FWF): Project Y698.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Torsten Schaub.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Schaub, T., Woltran, S. Answer set programming unleashed!. Künstl Intell 32, 105–108 (2018). https://doi.org/10.1007/s13218-018-0550-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13218-018-0550-z

Keywords

Navigation