Hostname: page-component-586b7cd67f-r5fsc Total loading time: 0 Render date: 2024-11-26T01:12:33.008Z Has data issue: false hasContentIssue false

The External Interface for Extending WASP

Published online by Cambridge University Press:  10 December 2018

CARMINE DODARO*
Affiliation:
DIBRIS, University of Genova, Genova, Italy (e-mail: [email protected])
FRANCESCO RICCA
Affiliation:
DEMACS, University of Calabria, Rende, Italy (e-mail: [email protected])

Abstract

Answer set programming (ASP) is a successful declarative formalism for knowledge representation and reasoning. The evaluation of ASP programs is nowadays based on the conflict-driven clause learning (CDCL) backtracking search algorithm. Recent work suggested that the performance of CDCL-based implementations can be considerably improved on specific benchmarks by extending their solving capabilities with custom heuristics and propagators. However, embedding such algorithms into existing systems requires expert knowledge of the internals of ASP implementations. The development of effective solver extensions can be made easier by providing suitable programming interfaces. In this paper, we present the interface for extending the CDCL-based ASP solver wasp. The interface is both general, that is, it can be used for providing either new branching heuristics or propagators, and external, that is, the implementation of new algorithms requires no internal modifications of wasp. Moreover, we review the applications of the interface witnessing it can be successfully used to extend wasp for solving effectively hard instances of both real-world and synthetic problems.

Type
Technical Note
Copyright
© Cambridge University Press 2018 

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Footnotes

*

The paper has been partially supported by the Italian Ministry for Economic Development (MISE) under project “PIUCultura – Paradigmi Innovativi per l’Utilizzo della Cultura” (no. F/020016/01-02/X27), and under project “Smarter Solutions in the Big Data World (S2BDW)” (no. F/050389/01-03/X32) funded within the call “HORIZON2020” PON I&C 2014-2020. Authors are grateful to Mario Alviano, Bernardo Cuteri, Philip Gasteiger, Nicola Leone, Benjamin Musitsch, Peter Schüller, and Kostyantyn Shchekotykhin for their suggestions.

References

Abseher, M., Gebser, M., Musliu, N., Schaub, T. and Woltran, S. 2016. Shift design with answer set programming. Fundamenta Informaticae 147, 1, 125.CrossRefGoogle Scholar
Alviano, M., Calimeri, F., Dodaro, C., Fuscà, D., Leone, N., Perri, S., Ricca, F., Veltri, P. and Zangari, J. 2017. The ASP system DLV2. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 10377. Springer, 215221.CrossRefGoogle Scholar
Alviano, M. and Dodaro, C. 2016. Completion of disjunctive logic programs. In International Joint Conference on Artificial Intelligence. IJCAI/AAAI Press, 886892.Google Scholar
Alviano, M., Dodaro, C., Faber, W., Leone, N. and Ricca, F. 2013. WASP: A native ASP solver based on constraint learning. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 8148. Springer, 5466.CrossRefGoogle Scholar
Alviano, M., Dodaro, C., Leone, N. and Ricca, F. 2015. Advances in WASP. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 9345. Springer, 4054.CrossRefGoogle Scholar
Alviano, M., Dodaro, C. and Maratea, M. 2017. An advanced answer set programming encoding for nurse scheduling. In AI*IA. Lecture Notes in Computer Science, vol. 10640. Springer, 468482.Google Scholar
Alviano, M., Dodaro, C. and Maratea, M. 2018. Shared aggregate sets in answer set programming. Theory and Practice of Logic Programming 18, 3–4, 301318.CrossRefGoogle Scholar
Balduccini, M. 2011. Learning and using domain-specific heuristics in ASP solvers. AI Communications 24, 2, 147164.CrossRefGoogle Scholar
Balduccini, M., Gelfond, M., Watson, R. and Nogueira, M. 2001. The USA-advisor: A case study in answer set planning. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 2173. Springer, 439442.Google Scholar
Balduccini, M. and Lierler, Y. 2017. Constraint answer set solver EZCSP and why integration schemas matter. Theory and Practice of Logic Programming 17, 4, 462515.CrossRefGoogle Scholar
Baral, C. 2003. Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press.CrossRefGoogle Scholar
Bartholomew, M. and Lee, J. 2013. Functional stable model semantics and answer set programming modulo theories. In International Joint Conference on Artificial Intelligence. IJCAI/AAAI, 718724.Google Scholar
Bartholomew, M. and Lee, J. 2014. System aspmt2smt: Computing ASPMT theories by SMT solvers. In European Conference on Logics in Artificial Intelligence. Lecture Notes in Computer Science, vol. 8761. Springer, 529542.CrossRefGoogle Scholar
Baselice, S., Bonatti, P. A. and Gelfond, M. 2005. Towards an integration of answer set and constraint solving. In International Conference on Logic Programming. Lecture Notes in Computer Science, vol. 3668. Springer, 5266.CrossRefGoogle Scholar
Biere, A. and Fröhlich, A. 2015. Evaluating CDCL variable scoring schemes. In SAT. Lecture Notes in Computer Science, vol. 9340. Springer, 405422.Google Scholar
Bomanson, J., Gebser, M., Janhunen, T., Kaufmann, B. and Schaub, T. 2015. Answer set programming modulo acyclicity. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 9345. Springer, 143150.CrossRefGoogle Scholar
Bomanson, J., Gebser, M., Janhunen, T., Kaufmann, B. and Schaub, T. 2016. Answer set programming modulo acyclicity. Fundamenta Informaticae 147, 1, 6391.CrossRefGoogle Scholar
Brewka, G., Eiter, T. and Truszczynski, M. 2011. Answer set programming at a glance. Communications of the ACM 54, 12, 92103.CrossRefGoogle Scholar
Cuteri, B., Dodaro, C., Ricca, F. and Schüller, P. 2017. Constraints, lazy constraints, or propagators in ASP solving: An empirical analysis. Theory and Practice of Logic Programming 17, 5–6, 780799.CrossRefGoogle Scholar
Dodaro, C. 2015. Computational Tasks in Answer Set Programming: Algorithms and Implementations. Ph.D. dissertation, University of Calabria.Google Scholar
Dodaro, C., Alviano, M., Faber, W., Leone, N., Ricca, F. and Sirianni, M. 2011. The birth of a WASP: Preliminary report on a new ASP solver. In Italian Conference on Computational Logic. CEUR Workshop Proceedings, vol. 810. CEUR-WS.org, 99113.Google Scholar
Dodaro, C., Gasteiger, P., Leone, N., Musitsch, B., Ricca, F. and Schekotihin, K. 2016. Combining answer set programming and domain heuristics for solving hard industrial problems (application paper). Theory and Practice of Logic Programming 16, 5–6, 653669.CrossRefGoogle Scholar
Dodaro, C., Leone, N., Nardi, B. and Ricca, F. 2015. Allotment problem in travel industry: A solution based on ASP. In International Conference on Web Reasoning and Rule Systems. Lecture Notes in Computer Science, vol. 9209. Springer, 7792.CrossRefGoogle Scholar
Dodaro, C. and Maratea, M. 2017. Nurse scheduling via answer set programming. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 10377. Springer, 301307.CrossRefGoogle Scholar
Dodaro, C., Ricca, F. and Schüller, P. 2016. External propagators in WASP: Preliminary report. In International RCRA Workshop on Experimental Evaluation of Algorithms for Solving Problems with Combinatorial Explosion. CEUR Workshop Proceedings, vol. 1745. CEUR-WS.org, 19.Google Scholar
Eén, N. and Sörensson, N. 2003. An extensible sat-solver. In International Conference on Theory and Applications of Satisfiability Testing. Lecture Notes in Computer Science, vol. 2919. Springer, 502518.CrossRefGoogle Scholar
Erdem, E., Gelfond, M. and Leone, N. 2016. Applications of answer set programming. AI Magazine 37, 3, 5368.CrossRefGoogle Scholar
Erdem, E. and Öztok, U. 2015. Generating explanations for biomedical queries. Theory and Practice of Logic Programming 15, 1, 3578.CrossRefGoogle Scholar
Friedrich, G. 2015. Industrial success stories of ASP and CP: What’s still open? Joint invited talk at ICLP and CP 2015. http://booleconferences.ucc.ie/iclp2015speakers.Google Scholar
Garro, A., Palopoli, L. and Ricca, F. 2006. Exploiting agents in e-learning and skills management context. AI Communications 19, 2, 137154.Google Scholar
Gavanelli, M., Nonato, M. and Peano, A. 2015. An ASP approach for the valves positioning optimization in a water distribution system. Journal of Logic and Computation 25, 6, 13511369.CrossRefGoogle Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T. and Wanko, P. 2016. Theory solving made easy with clingo 5. In International Conference on Logic Programming (Technical Communications). OpenAccess Series in Informatics, vol. 52. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2:1–2:15.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Romero, J. and Schaub, T. 2015. Progress in clasp Series 3. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 9345. Springer, 368383.CrossRefGoogle Scholar
Gebser, M., Kaminski, R., Kaufmann, B. and Schaub, T. 2012. Answer Set Solving in Practice. Synthesis Lectures on Artificial Intelligence and Machine Learning. Morgan & Claypool Publishers.CrossRefGoogle Scholar
Gebser, M., Kaminski, R., Kaufmann, B. and Schaub, T. 2014. Clingo = ASP + control: Preliminary report. CoRR abs/1405.3694.Google Scholar
Gebser, M., Kaufmann, B., Kaminski, R., Ostrowski, M., Schaub, T. and Schneider, M. T. 2011. Potassco: The potsdam answer set solving collection. AI Communications 24, 2, 107124.CrossRefGoogle Scholar
Gebser, M., Kaufmann, B., Neumann, A. and Schaub, T. 2008. Advanced preprocessing for answer set solving. In European Conference on Artificial Intelligence. Frontiers in Artificial Intelligence and Applications, vol. 178. IOS Press, 1519.Google Scholar
Gebser, M., Kaufmann, B., Romero, J., Otero, R., Schaub, T. and Wanko, P. 2013. Domain-specific heuristics in answer set programming. In AAAI Conference on Artificial Intelligence. AAAI Press.Google Scholar
Gebser, M., Kaufmann, B. and Schaub, T. 2012. Conflict-driven answer set solving: From theory to practice. Artificial Intelligence 187, 5289.CrossRefGoogle Scholar
Gebser, M., Kaufmann, B. and Schaub, T. 2013. Advanced conflict-driven disjunctive answer set solving. In International Joint Conference on Artificial Intelligence. IJCAI/AAAI.Google Scholar
Gebser, M., Maratea, M. and Ricca, F. 2015. The design of the sixth answer set programming competition. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 9345. Springer, 531544.CrossRefGoogle Scholar
Gebser, M., Maratea, M. and Ricca, F. 2016. What’s Hot in the Answer Set Programming Competition. In AAAI Conference on Artificial Intelligence. AAAI Press, 43274329.Google Scholar
Gebser, M., Maratea, M. and Ricca, F. 2017. The sixth answer set programming competition. Journal of Artificial Intelligence Research 60, 4195.CrossRefGoogle Scholar
Gebser, M., Ryabokon, A. and Schenner, G. 2015. Combining heuristics for configuration problems using answer set programming. In International Conference on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science, vol. 9345. Springer, 384397.CrossRefGoogle Scholar
Gelfond, M. and Lifschitz, V. 1991. Classical negation in logic programs and disjunctive databases. New Generation Computing 9, 3/4, 365386.CrossRefGoogle Scholar
Janhunen, T. and Niemelä, I. 2016. The answer set programming paradigm. AI Magazine 37, 3, 1324.CrossRefGoogle Scholar
Janhunen, T., Tasharrofi, S. and Ternovska, E. 2016. SAT-to-SAT: Declarative extension of SAT solvers with new propagators. In AAAI Conference on Artificial Intelligence. AAAI Press, 978984.Google Scholar
Kaufmann, B., Leone, N., Perri, S. and Schaub, T. 2016. Grounding and solving in answer set programming. AI Magazine 37, 3, 2532.CrossRefGoogle Scholar
Koponen, L., Oikarinen, E., Janhunen, T. and Säilä, L. 2015. Optimizing phylogenetic supertrees using answer set programming. Theory and Practice of Logic Programming 15, 4–5, 604619.CrossRefGoogle Scholar
Lierler, Y., Maratea, M. and Ricca, F. 2016. Systems, engineering environments, and competitions. AI Magazine 37, 3, 4552.CrossRefGoogle Scholar
Lifschitz, V. 2016. Answer sets and the language of answer set programming. AI Magazine 37, 3, 712.CrossRefGoogle Scholar
Manna, M., Ricca, F. and Terracina, G. 2013. Consistent query answering via ASP from different perspectives: Theory and practice. Theory and Practice of Logic Programming 13, 2, 227252.CrossRefGoogle Scholar
Manna, M., Ricca, F. and Terracina, G. 2015. Taming primary key violations to query large inconsistent data via ASP. Theory and Practice of Logic Programming 15, 4–5, 696710.CrossRefGoogle Scholar
Maratea, M., Pulina, L. and Ricca, F. 2012. The multi-engine ASP solver ME-ASP. In European Conference on Logics in Artificial Intelligence. Lecture Notes in Computer Science, vol. 7519. Springer, 484487.CrossRefGoogle Scholar
Marileo, M. C. and Bertossi, L. E. 2010. The consistency extractor system: Answer set programs for consistent query answering in databases. Data & Knowledge Engineering 69, 6, 545572.Google Scholar
Moskewicz, M. W., Madigan, C. F., Zhao, Y., Zhang, L. and Malik, S. 2001. Chaff: Engineering an efficient SAT solver. In Design Automation Conference. ACM, 530535.Google Scholar
Nieuwenhuis, R., Oliveras, A. and Tinelli, C. 2006. Solving SAT and SAT modulo theories: From an abstract Davis–Putnam–Logemann–Loveland procedure to DPLL(T). Journal of the ACM 53, 6, 937977.CrossRefGoogle Scholar
Ostrowski, M. and Schaub, T. 2012. ASP modulo CSP: The clingcon system. Theory and Practice of Logic Programming 12, 4–5, 485503.CrossRefGoogle Scholar
Rossi, F., van Beek, P. and Walsh, T., Eds. 2006. Handbook of Constraint Programming. Foundations of Artificial Intelligence, vol. 2. Elsevier.CrossRefGoogle Scholar
Schüller, P. 2016. Modeling variations of first-order horn abduction in answer set programming. Fundamenta Informaticae 149, 1–2, 159207.CrossRefGoogle Scholar
Silva, J. P. M. and Sakallah, K. A. 1999. GRASP: A search algorithm for propositional satisfiability. IEEE Transactions on Computers 48, 5, 506521.CrossRefGoogle Scholar
Susman, B. and Lierler, Y. 2016. SMT-based constraint answer set solver EZSMT (system description). In International Conference on Logic Programming (Technical Communications). OpenAccess Series in Informatics, vol. 52. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 1:1–1:15.Google Scholar
Zhang, L., Madigan, C. F., Moskewicz, M. W. and Malik, S. 2001. Efficient conflict driven learning in Boolean satisfiability solver. In IEEE/ACM International Conference on Computer-Aided Design. IEEE Computer Society, 279285.Google Scholar