Hostname: page-component-cd9895bd7-q99xh Total loading time: 0 Render date: 2024-12-23T14:57:58.629Z Has data issue: false hasContentIssue false

Clingcon: The next generation*

Published online by Cambridge University Press:  28 June 2017

MUTSUNORI BANBARA
Affiliation:
Kobe University, Kobe, Japan (e-mail: banbara@kobe-u.ac.jp)
BENJAMIN KAUFMANN
Affiliation:
University of Potsdam, Potsdam, Germany (e-mails: kaufmann@cs.uni-potsdam.de, ostrowsk@cs.uni-potsdam.de)
MAX OSTROWSKI
Affiliation:
University of Potsdam, Potsdam, Germany (e-mails: kaufmann@cs.uni-potsdam.de, ostrowsk@cs.uni-potsdam.de)
TORSTEN SCHAUB
Affiliation:
University of Potsdam, Germany and INRIA Rennes, Rennes, France (e-mail: torsten@cs.uni-potsdam.de)

Abstract

We present the third generation of the constraint answer set system clingcon, combining Answer Set Programming (ASP) with finite domain constraint processing (CP). While its predecessors rely on a black-box approach to hybrid solving by integrating the CP solver gecode, the new clingcon system pursues a lazy approach using dedicated constraint propagators to extend propagation in the underlying ASP solver clasp. No extension is needed for parsing and grounding clingcon's hybrid modeling language since both can be accommodated by the new generic theory handling capabilities of the ASP grounder gringo. As a whole, clingcon 3 is thus an extension of the ASP system clingo 5, which itself relies on the grounder gringo and the solver clasp. The new approach of clingcon offers a seamless integration of CP propagation into ASP solving that benefits from the whole spectrum of clasp's reasoning modes, including, for instance, multi-shot solving and advanced optimization techniques. This is accomplished by a lazy approach that unfolds the representation of constraints and adds it to that of the logic program only when needed. Although the unfolding is usually dictated by the constraint propagators during solving, it can already be partially (or even totally) done during preprocessing. Moreover, clingcon's constraint preprocessing and propagation incorporate several well-established CP techniques that greatly improve its performance. We demonstrate this via an extensive empirical evaluation contrasting, first, the various techniques in the context of CSP solving and, second, the new clingcon system with other hybrid ASP systems.

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2017 

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 author is currently affiliated with the Simon Fraser University, Canada, and Griffith University, Australia.

*

This work was partially funded by JSPS (KAKENHI 15K00099) and DFG (SCHA 550/9).

References

Andres, B., Kaufmann, B., Matheis, O. and Schaub, T. 2012. Unsatisfiability-based optimization in clasp. Technical Communications of the 28th International Conference on Logic Programming (ICLP'12), vol. 17. Leibniz International Proceedings in Informatics (LIPIcs), 212–221.Google Scholar
Aziz, R., Chu, G. and Stuckey, P. 2013. Stable model semantics for founded bounds. Theory and Practice of Logic Programming 13, 4–5, 517532.CrossRefGoogle Scholar
Balduccini, M. 2009. Representing constraint satisfaction problems in answer set programming. In Proc. of the 2nd Workshop on Answer Set Programming and Other Computing Paradigms (ASPOCP'09), Faber, W. and Lee, J., Eds, 16–30.Google Scholar
Balduccini, M. and Lierler, Y. 2013. Integration schemas for constraint answer set programming: A case study. Theory and Practice of Logic Programming 13.Google Scholar
Balduccini, M., Magazzeni, D. and Maratea, M. 2016. PDDL+ planning via constraint answer set programming. CoRR abs/1609.00030.Google Scholar
Banbara, M., Gebser, M., Inoue, K., Ostrowski, M., Peano, A., Schaub, T., Soh, T., Tamura, N. and Weise, M. 2015. Aspartame: Solving constraint satisfaction problems with answer set programming. In Proc. of the 13th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR'15), Calimeri, F., Ianni, G. and Truszczyński, M., Eds. Lecture Notes in Artificial Intelligence, vol. 9345. Springer-Verlag, 112–126.Google Scholar
Barrett, C., Sebastiani, R., Seshia, S. and Tinelli, C. 2009. Satisfiability modulo theories. In Handbook of Satisfiability. Frontiers in Artificial Intelligence and Applications, vol. 185. IOS Press, Chapter 26, 825885.Google Scholar
Baselice, S., Bonatti, P. and Gelfond, M. 2005. Towards an integration of answer set and constraint solving. In Proc. of the 21st International Conference on Logic Programming (ICLP'05), Gabbrielli, M. and Gupta, G., Eds. Lecture Notes in Computer Science, vol. 3668. Springer-Verlag, 52–66.Google Scholar
Biere, A., Heule, M., van Maaren, H. and Walsh, T., Eds. 2009. Handbook of Satisfiability. Frontiers in Artificial Intelligence and Applications, vol. 185. IOS Press.Google Scholar
Brodsky, A., Ed. 2013. Proc. of the 25th IEEE International Conference on Tools with Artificial Intelligence (ICTAI'13). IEEE Computer Society.Google Scholar
Cabalar, P., Kaminski, R., Ostrowski, M. and Schaub, T. 2016. An ASP semantics for default reasoning with constraints. In Proc. of the 25th International Joint Conference on Artificial Intelligence (IJCAI'16), Kambhampati, R., Ed. IJCAI/AAAI Press, 1015–1021.Google Scholar
Carro, M. and King, A., Eds. 2016. Technical Communications of the 32nd International Conference on Logic Programming (ICLP'16), vol. 52. Open Access Series in Informatics (OASIcs).CrossRefGoogle Scholar
Crawford, J. and Baker, A. 1994. Experimental results on the application of satisfiability algorithms to scheduling problems. In Proc. of the 12th National Conference on Artificial Intelligence (AAAI'94), Hayes-Roth, B. and Korf, R., Eds. AAAI Press, 1092–1097.Google Scholar
Davis, M., Logemann, G. and Loveland, D. 1962. A machine program for theorem-proving. Communications of the ACM 5, 394397.CrossRefGoogle Scholar
Davis, M. and Putnam, H. 1960. A computing procedure for quantification theory. Journal of the ACM 7, 201215.CrossRefGoogle Scholar
De Cat, B., Bogaerts, B., Bruynooghe, M. and Denecker, M. 2014. Predicate logic as a modelling language: The IDP system. CoRR abs/1401.6312.Google Scholar
De Cat, B., Bogaerts, B., Devriendt, J. and Denecker, M. 2013. Model expansion in the presence of function symbols using constraint programming. Proc. of the 25th IEEE International Conference on Tools with Artificial Intelligence (ICTAI'13). IEEE Computer Society, 1068–1075.Google Scholar
Dovier, A. and Santos Costa, V., Eds. 2012. Technical Communications of the 28th International Conference on Logic Programming (ICLP'12), vol. 17. Leibniz International Proceedings in Informatics (LIPIcs).CrossRefGoogle Scholar
Drescher, C. 2015. Conflict-Driven Constraint Answer Set Solving. PhD Thesis, Computer Science and Engineering, Faculty of Engineering, UNSW.Google Scholar
Drescher, C. and Walsh, T. 2010. A translational approach to constraint answer set solving. Theory and Practice of Logic Programming 10, 4–6, 465480.CrossRefGoogle Scholar
Drescher, C. and Walsh, T. 2012. Answer set solving with lazy nogood generation. Technical Communications of the 28th International Conference on Logic Programming (ICLP'12), vol. 17. Leibniz International Proceedings in Informatics (LIPIcs), 188–200.Google Scholar
Eiter, T., Fink, M., Krennwallner, T. and Redl, C. 2012. Conflict-driven ASP solving with external sources. Theory and Practice of Logic Programming 12, 4–5, 659679.CrossRefGoogle Scholar
Feydy, T., Somogyi, Z. and Stuckey, P. 2011. Half reification and flattening. In Proc. of the 17th International Conference on Principles and Practice of Constraint Programming (CP'11), Lee, J., Ed. Lecture Notes in Computer Science, vol. 6876. Springer-Verlag, 286–301.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T. and Wanko, P. 2016a. Theory solving made easy with clingo 5. Technical Communications of the 32nd International Conference on Logic Programming (ICLP'16), vol. 52. Open Access Series in Informatics (OASIcs), 2:1–2:15.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T. and Wanko, P. 2016b. Theory solving made easy with clingo 5 (extended version). Technical Communications of the 32nd International Conference on Logic Programming (ICLP'16), vol. 52. Open Access Series in Informatics (OASIcs), 2:1–2:15. URL: http://www.cs.uni-potsdam.de/wv/publications/. [Accessed on 16/06/2017].Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B. and Schaub, T. 2011. Multi-criteria optimization in answer set programming. In Technical Communications of the 27th International Conference on Logic Programming (ICLP'11), Gallagher, J. and Gelfond, M., Eds. vol. 11. Leibniz International Proceedings in Informatics (LIPIcs), 1–10.Google 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 and Claypool Publishers.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B. and Schaub, T. 2014. Clingo = ASP + control: Preliminary report. In Technical Communications of the 20th International Conference on Logic Programming (ICLP'14), Leuschel, M. and Schrijvers, T., Eds. Theory and Practice of Logic Programming, Online Supplement, vol. arXiv:1405.3694v1. URL: http://arxiv.org/abs/1405.3694v1. [Accessed on 16/6/2017].Google Scholar
Gebser, M., Kaminski, R., Obermeier, P. and Schaub, T. 2015. Ricochet robots reloaded: A case-study in multi-shot ASP solving. In Advances in Knowledge Representation, Logic Programming, and Abstract Argumentation: Essays Dedicated to Gerhard Brewka on the Occasion of His 60th Birthday, Eiter, T., Strass, H., Truszczyński, M. and Woltran, S., Eds. Lecture Notes in Artificial Intelligence, vol. 9060. Springer-Verlag, 1732.CrossRefGoogle Scholar
Gebser, M., Kaufmann, B., Neumann, A. and Schaub, T. 2007. Conflict-driven answer set solving. In Proc. of the 20th International Joint Conference on Artificial Intelligence (IJCAI'07), Veloso, M., Ed. AAAI/MIT Press, 386–392.Google Scholar
Gebser, M., Kaufmann, B., Otero, R., Romero, J., Schaub, T. and Wanko, P. 2013. Domain-specific heuristics in answer set programming. In Proc. of the 27th National Conference on Artificial Intelligence (AAAI'13), desJardins, M. and Littman, M., Eds. AAAI Press, 350356.Google Scholar
Gebser, M., Kaufmann, B. and Schaub, T. 2012. Multi-threaded ASP solving with clasp. Theory and Practice of Logic Programming 12, 4–5, 525545.CrossRefGoogle Scholar
Gebser, M., Ostrowski, M. and Schaub, T. 2009. Constraint answer set solving. In Proc. of the 25th International Conference on Logic Programming (ICLP'09), Hill, P. and Warren, D., Eds. Lecture Notes in Computer Science, vol. 5649. Springer-Verlag, 235–249.Google Scholar
Gecode Team. 2006. Gecode: Generic constraint development environment. URL: http://www.gecode.org. [Accessed on 16/06/2017].Google Scholar
Gelfond, M. and Lifschitz, V. 1988. The stable model semantics for logic programming. In Proc. of the 5th International Conference and Symposium of Logic Programming (ICLP'88), Kowalski, R. and Bowen, K., Eds. MIT Press, 1070–1080.Google Scholar
Janhunen, T., Liu, G. and Niemel, I. 2011. Tight integration of non-ground answer set programming and satisfiability modulo theories. In Proc. of the 1st Workshop on Grounding and Transformation for Theories with Variables (GTTV'11), Cabalar, P., Mitchell, D., Pearce, D. and Ternovska, E., Eds, 1–13.Google Scholar
Lierler, Y. and Susman, B. 2016. SMT-based constraint answer set solver EZSMT (system description). Technical Communications of the 32nd International Conference on Logic Programming (ICLP'16), vol. 52. Open Access Series in Informatics (OASIcs), 1:1–1:15.Google Scholar
Lifschitz, V. 2008. What is answer set programming? In Proc. of the 23rd National Conference on Artificial Intelligence (AAAI'08), Fox, D. and Gomes, C., Eds. AAAI Press, 1594–1597.Google Scholar
Marques-Silva, J. and Sakallah, K. 1999. GRASP: A search algorithm for propositional satisfiability. IEEE Transactions on Computers 48, 5, 506521.CrossRefGoogle Scholar
Mellarkod, V. and Gelfond, M. 2008. Integrating answer set reasoning with constraint solving techniques. In Proc. of the 9th International Symposium on Functional and Logic Programming (FLOPS'08), Garrigue, J. and Hermenegildo, M., Eds. Lecture Notes in Computer Science, vol. 4989. Springer-Verlag, 15–31.Google Scholar
Mellarkod, V., Gelfond, M. and Zhang, Y. 2008. Integrating answer set programming and constraint logic programming. Annals of Mathematics and Artificial Intelligence 53, 1–4, 251287.CrossRefGoogle Scholar
Metodi, A., Codish, M. and Stuckey, P. 2013. Boolean equi-propagation for concise and efficient SAT encodings of combinatorial problems. Journal of Artificial Intelligence Research 46, 303341.CrossRefGoogle Scholar
Ohrimenko, O., Stuckey, P. and Codish, M. 2009. Propagation via lazy clause generation. Constraints 14, 3, 357391.CrossRefGoogle Scholar
Ostrowski, M. 2017. Modern Constraint Answer Set Solving. PhD Thesis, University of Potsdam.Google 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. Elsevier Science.Google Scholar
Roussel, O. and Lecoutre, C. 2009. XML representation of constraint networks: Format XCSP 2.1. CoRR abs/0902.2362.Google Scholar
Schulte, C. and Tack, G. 2005. Views and iterators for generic constraint implementations. In Proc. of the 11th International Conference on Principles and Practice of Constraint Programming (CP'05), van Beek, P., Ed. Lecture Notes in Computer Science, vol. 3709. Springer-Verlag, 118–132.Google Scholar
Simons, P., Niemel, I. and Soininen, T. 2002. Extending and implementing the stable model semantics. Artificial Intelligence 138, 1–2, 181234.CrossRefGoogle Scholar
Soh, T., Inoue, K., Tamura, N., Banbara, M. and Nabeshima, H. 2010. A SAT-based method for solving the two-dimensional strip packing problem. Fundamenta Informaticae 102, 3–4, 467487.CrossRefGoogle Scholar
Tamura, N., Banbara, M. and Soh, T. 2013. Compiling pseudo-boolean constraints to SAT with order encoding. Proc. of the 25th IEEE International Conference on Tools with Artificial Intelligence (ICTAI'13). IEEE Computer Society, 1020–1027.Google Scholar
Tamura, N., Taga, A., Kitagawa, S. and Banbara, M. 2009. Compiling finite linear CSP into SAT. Constraints 14, 2, 254272.CrossRefGoogle Scholar
Thibaut, F. and Stuckey, P. 2009. Lazy clause generation reengineered. In Proc. of the 15th International Conference on Principles and Practice of Constraint Programming (CP'09), I. Gent, Ed. Lecture Notes in Computer Science, vol. 5732. Springer-Verlag, 352–366.Google Scholar
Thiffault, C., Bacchus, F. and Walsh, T. 2004. Solving non-clausal formulas with DPLL search. In Proc. of the 10th International Conference on Principles and Practice of Constraint Programming (CP'04), Wallace, M., Ed. Lecture Notes in Computer Science, vol. 3258. Springer-Verlag, 663–678.Google Scholar
Walsh, T. 2000. SAT versus CSP. In Proc. of the 16th International Conference on Principles and Practice of Constraint Programming (CP'00), Dechter, R., Ed. Lecture Notes in Computer Science, vol. 1894. Springer-Verlag, 441–456.Google Scholar
Zhang, L., Madigan, C., Moskewicz, M. and Malik, S. 2001. Efficient conflict driven learning in a Boolean satisfiability solver. In Proc. of the International Conference on Computer-Aided Design (ICCAD'01). ACM Press, 279–285.Google Scholar