Hostname: page-component-cd9895bd7-dzt6s Total loading time: 0 Render date: 2024-12-26T16:32:08.218Z Has data issue: false hasContentIssue false

Solution Enumeration by Optimality in Answer Set Programming

Published online by Cambridge University Press:  10 September 2021

JUKKA PAJUNEN
Affiliation:
Department of Computer Science, Aalto University, P.O. Box 15400, FI-00076 Aalto, Finland (e-mail: jukka.m.pajunen@gmail.com)
TOMI JANHUNEN
Affiliation:
Computing Sciences, Tampere University, FI-33014 Tampere, Finland and Department of Computer Science, Aalto University, P.O. Box 15400, FI-00076 Aalto, Finland (e-mails: tomi.janhunen@tuni.fi, tomi.janhunen@aalto.fi)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

Given a combinatorial search problem, it may be highly useful to enumerate its (all) solutions besides just finding one solution, or showing that none exists. The same can be stated about optimal solutions if an objective function is provided. This work goes beyond the bare enumeration of optimal solutions and addresses the computational task of solution enumeration by optimality (SEO). This task is studied in the context of answer set programming (ASP) where (optimal) solutions of a problem are captured with the answer sets of a logic program encoding the problem. Existing answer set solvers already support the enumeration of all (optimal) answer sets. However, in this work, we generalize the enumeration of optimal answer sets beyond strictly optimal ones, giving rise to the idea of answer set enumeration in the order of optimality (ASEO). This approach is applicable up to the best k answer sets or in an unlimited setting, which amounts to a process of sorting answer sets based on the objective function. As the main contribution of this work, we present the first general algorithms for the aforementioned tasks of answer set enumeration. Moreover, we illustrate the potential use cases of ASEO. First, we study how efficiently access to the next-best solutions can be achieved in a number of optimization problems that have been formalized and solved in ASP. Second, we show that ASEO provides us with an effective sampling technique for Bayesian networks.

Type
Original Article
Creative Commons
Creative Common License - CCCreative Common License - BY
This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted re-use, distribution, and reproduction in any medium, provided the original work is properly cited.
Copyright
© The Author(s), 2021. Published by Cambridge University Press

References

Alviano, M., Faber, W. and Gebser, M. 2015. Rewriting recursive aggregates in answer set programming: Back to monotonicity. Theory and Practice of Logic Programming 15, 4–5, 559573.10.1017/S1471068415000228CrossRefGoogle Scholar
Bacchus, F., Berg, J., Järvisalo, M. and Martins, R. 2020. MaxSAT evaluation. https://maxsat-evaluations.github.io/2020/topk.html Google Scholar
Beaver, H. and Niemelä, I. 1999. Finding MAPs for belief networks using rule-based constraint programming. In Arpakannus 1/99, Special Issue on Networks 1999. Finnish Artificial Intelligence Society.Google Scholar
Biere, A., Heule, M., van Maaren, H. and Walsh, T. 2009. Handbook of Satisfiability. Frontiers in Artificial Intelligence and Applications, vol. 185. IOS Press.Google Scholar
Bomanson, J., Gebser, M. and Janhunen, T. 2014. Improving the normalization of weight rules in answer set programs. In Proceedings of JELIA 2014. Springer, 166–180.Google Scholar
Brewka, G., Eiter, T. and Truszczyński, M. 2011. Answer set programming at a glance. Communications of the ACM 54, 12, 92103.10.1145/2043174.2043195CrossRefGoogle Scholar
Brewka, G., Niemelä, I. and Truszczyński, M. 2003. Answer set optimization. In Proceedings of IJCAI 2003. Vol. 3. Morgan Kaufmann, 867–872.Google Scholar
Calimeri, F., Faber, W., Gebser, M., Ianni, G., Kaminski, R., Krennwallner, T., Leone, N., Maratea, M., Ricca, F. and Schaub, T. 2020. Asp-core-2 input language format. Theory and Practice of Logic Programming 20, 2, 294309.10.1017/S1471068419000450CrossRefGoogle Scholar
Calimeri, F., Gebser, M., Maratea, M. and Ricca, F. 2016. Design and results of the fifth answer set programming competition. Artificial Intelligence 231, 151181.10.1016/j.artint.2015.09.008CrossRefGoogle Scholar
Chavira, M. and Darwiche, A. 2008. On probabilistic inference by weighted model counting. Artificial Intelligence 172, 6–7, 772799.10.1016/j.artint.2007.11.002CrossRefGoogle Scholar
Eiter, T. and Gottlob, G. 1995. On the computational cost of disjunctive logic programming: Propositional case. Annals of Mathematics and Artificial Intelligence 15, 3–4, 289323.10.1007/BF01536399CrossRefGoogle Scholar
Ermon, S., Gomes, C. P., Sabharwal, A. and Selman, B. 2013. Taming the curse of dimensionality: Discrete integration by hashing and optimization. In Proceedings of ICML 2013. JMLR.org, 334–342.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T. and Thiele, S. 2008. A User’s Guide to Gringo, Clasp, Clingo, and iClingo.Google Scholar
Gebser, M., Kaufmann, B., Neumann, A. and Schaub, T. 2007a. Conflict-driven answer set enumeration. In Proceedings of LPNMR 2007. Springer, 136–148.Google Scholar
Gebser, M., Kaufmann, B., Neumann, A. and Schaub, T. 2007b. Conflict-driven answer set solving. In Proceedings of IJCAI 2007. IJCAI.org, 386–392.Google Scholar
Gebser, M., Kaufmann, B. and Schaub, T. 2009. Solution enumeration for projected Boolean search problems. In Proceedings of CPAIOR 2009. Springer, 71–86.Google Scholar
Geiger, D., Verma, T. and Pearl, J. 1989. d-separation: From theorems to algorithms. In Proceedings of UAI 1989. North-Holland, 139–148.Google Scholar
Gonzales, C., Torti, L. and Wuillemin, P.-H. 2017. aGrUM: A graphical universal model framework. In Proceedings of IEA/AIE. Springer, 171–177.Google Scholar
Karp, R. M. 1972. Reducibility among combinatorial problems. In Complexity of Computer Computations. Springer, 85–103.Google Scholar
Korte, B. and Vygen, J. 2006. Combinatorial Optimization. Springer.Google Scholar
Lawler, E. 1972. A procedure for computing the k best solutions to discrete optimization problems and its application to the shortest path problem. Management Science 18, 7, 401405.10.1287/mnsc.18.7.401CrossRefGoogle Scholar
Madsen, A. and Jensen, F. 1999. LAZY propagation: A junction tree inference algorithm based on lazy evaluation. Artificial Intelligence 113, 1–2, 203245.10.1016/S0004-3702(99)00062-4CrossRefGoogle Scholar
Marek, V. and Truszczyński, M. 1991. Autoepistemic logic. Journal of ACM 38, 3, 588619.Google Scholar
Murty, K. 1968. An algorithm for ranking all the assignments in increasing order of cost. Operations Research 16, 682687.10.1287/opre.16.3.682CrossRefGoogle Scholar
Pajunen, J. 2020. Optimization strategies in answer set programming, enumerating answer sets by optimality. M.S. thesis, Aalto University, School of Science. http://urn.fi/URN:NBN:fi:aalto-202006213974Google Scholar
Papadimitriou, C. H. 1994. Computational Complexity. Addison-Wesley.Google Scholar
Rossi, F., van Beek, P. and Walsh, T. 2006. Handbook of Constraint Programming. Foundations of Artificial Intelligence, vol. 2. Elsevier.Google Scholar
Simons, P., Niemelä, I. and Soininen, T. 2002. Extending and implementing the stable model semantics. Artificial Intelligence 138, 1–2, 181234.10.1016/S0004-3702(02)00187-XCrossRefGoogle Scholar
Supplementary material: File

Pajunen and Janhunen supplementary material

Pajunen and Janhunen supplementary material

Download Pajunen and Janhunen supplementary material(File)
File 8.8 MB