# Algorithms for Solving Satisfiability Problems with Qualitative Preferences

• Enrico Giunchiglia
• Marco Maratea
Chapter
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7265)

## Abstract

In this work we present a complete picture of our work on computing optimal solutions in satisfiability problems with qualitative preferences. With this task in mind, we first review our work on computing optimal solutions by imposing an ordering on the way the search space is explored, e.g., on the splitting heuristic in case the dpll algorithm is used. The main feature of this approach is that it guarantees to compute all and only the optimal solutions, i.e., models which are not optimal are not even computed: For this result, it is essential that the splitting heuristic of the solver follows the partial order on the expressed preferences. However, for each optimal solution, a formula that prunes non-optimal solutions needs to be retained, thus this procedure does not work in polynomial space when computing all optimal solutions.

We then extend our previous work and show how it is possible to compute optimal solutions using a generate-and-test approach: Such a procedure is based on the idea to first compute a model and then check for its optimality. As a consequence, no ordering on the splitting heuristic is needed, but it may compute also non-optimal models. This approach does not need to retain formulas indefinitely, thus it does work in polynomial space.

We start from a simple setting in which a preference is a partial order on a set of literals. We then show how other forms of preferences, i.e., quantitative, qualitative on formulas and mixed qualitative/quantitative can be captured by our framework, and present alternatives for computing “complete” sets of optimal solutions. We finally comment on the implementation of the two procedures on top of state-of-the-art satisfiability solvers, and discuss related work.

## Keywords

Optimal Model Logic Program Logic Programming Polynomial Space Symbolic Model Check
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

## References

1. 1.
Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: Generic ILP versus specialized 0-1 ILP: an update. In: Pileggi, L.T., Kuehlmann, A. (eds.) Proc. of the 2002 IEEE/ACM International Conference on Computer-aided Design (ICCAD 2002), pp. 450–457. ACM (2002)Google Scholar
2. 2.
Amgoud, L., Cayrol, C., LeBerre, D.: Comparing arguments using preference ordering for argument-based reasoning. In: Proc. of the 8th International Conference on Tools with Artificial Intelligence (ICTAI 1996), pp. 400–403. IEEE Computer Society (1996)Google Scholar
3. 3.
Bienvenu, M., Lang, J., Wilson, N.: From preference logics to preference languages, and back. In: Lin, F., Sattler, U., Truszczynski, M. (eds.) Proc. of the 12th International Conference on Principles of Knowledge Representation and Reasoning (KR 2010). AAAI Press (2010)Google Scholar
4. 4.
Boutilier, C., Brafman, R.I., Domshlak, C., Hoos, H.H., Poole, D.: CP-nets: A tool for representing and reasoning with conditional ceteris paribus preference statements. Journal of Artificial Intelligence Research 21, 135–191 (2004)
5. 5.
Boutilier, C., Brafman, R.I., Domshlak, C., Hoos, H.H., Poole, D.: Preference-based constrained optimization with CP-nets. Computational Intelligence 20(2), 137–157 (2004)
6. 6.
Brewka, G.: Logic programming with ordered disjunction. In: Dechter, R., Sutton, R.S. (eds.) Proc. of the 18th National Conference on Artificial Intelligence (AAAI 2002), pp. 100–105. AAAI Press / The MIT Press (2002)Google Scholar
7. 7.
Brewka, G.: Complex preferences for answer set optimization. In: Dubois, D., Welty, C.A., Williams, M.-A. (eds.) Proc. of the 9th International Conference on Principles of Knowledge Representation and Reasoning (KR 2004), pp. 213–223. AAAI Press (2004)Google Scholar
8. 8.
Brewka, G., Eiter, T.: Preferred answer sets for extended logic programs. Artificial Intelligence 109(1-2), 297–356 (1999)
9. 9.
Brewka, G., Niemelä, I., Syrjänen, T.: Logic programs with ordered disjunction. Computational Intelligence 20(2), 335–357 (2004)
10. 10.
Brewka, G., Niemelä, I., Truszczynski, M.: Answer set optimization. In: Gottlob, G., Walsh, T. (eds.) Proc. of the 18th International Joint Conference on Artificial Intelligence (IJCAI 2003), pp. 867–872. Morgan Kaufmann (2003)Google Scholar
11. 11.
Buccafurri, F., Leone, N., Rullo, P.: Strong and Weak Constraints in Disjunctive Datalog. In: Fuhrbach, U., Dix, J., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 2–17. Springer, Heidelberg (1997)
12. 12.
Çakmak, D., Erdem, E., Erdoğan, H.: Computing Weighted Solutions in Answer Set Programming. In: Erdem, E., Lin, F., Schaub, T. (eds.) LPNMR 2009. LNCS, vol. 5753, pp. 416–422. Springer, Heidelberg (2009)
13. 13.
Castell, T., Cayrol, C., Cayrol, M., Le Berre, D.: Using the Davis and Putnam procedure for an efficient computation of preferred models. In: Wahlster, W. (ed.) Proc. of the 12th European Conference on Artificial Intelligence (ECAI 1996), pp. 350–354. John Wiley and Sons, Chichester (1996)Google Scholar
14. 14.
Coudert, O.: On solving covering problems. In: Pennino, T., Yoffa, E.J. (eds.) Proc. of the 33rd Conference on Design Automation (DAC 1996), pp. 197–202. ACM Press (1996)Google Scholar
15. 15.
Davis, M., Logemann, G., Loveland, D.W.: A machine program for theorem proving. Communication of ACM 5(7), 394–397 (1962)
16. 16.
Davis, M., Putnam, H.: A computing procedure for quantification theory. Journal of the ACM 7, 201–215 (1960)
17. 17.
Delgrande, J.P., Schaub, T.: Expressing preferences in default logic. Artificial Intelligence 123(1-2), 41–87 (2000)
18. 18.
Delgrande, J.P., Schaub, T., Tompits, H., Wang, K.: A classification and survey of preference handling approaches in nonmonotonic reasoning. Computational Intelligence 20(2), 308–334 (2004)
19. 19.
DiRosa, E., Giunchiglia, E., Maratea, M.: A new approach for solving satisfiability problems with qualitative preferences. In: Ghallab, M., Spyropoulos, C.D., Fakotakis, N., Avouris, N.M. (eds.) Proc. of the 18th European Conference on Artificial Intelligence (ECAI 2008). Frontiers in AI and Applications, vol. 178, pp. 510–514. IOS Press (2008)Google Scholar
20. 20.
DiRosa, E., Giunchiglia, E., Maratea, M.: Solving satisfiability problems with preferences. Constraints 15(4), 485–515 (2010)
21. 21.
DiRosa, E., Giunchiglia, E., O’Sullivan, B.: Optimal stopping methods for finding high quality solutions to satisfiability problems with preferences. In: Chu, W.C., Eric Wong, W., Palakal, M.J., Hung, C.-C. (eds.) Proc. of the 2011 ACM Symposium on Applied Computing (SAC 2011), pp. 901–906. ACM (2011)Google Scholar
22. 22.
Doyle, J., Junker, U.: Preferences. In: Tutotial at the 19th National Conference on Artificial Intelligence, AAAI 2004 (2004)Google Scholar
23. 23.
Eén, N., Biere, A.: Effective Preprocessing in SAT Through Variable and Clause Elimination. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 61–75. Springer, Heidelberg (2005)
24. 24.
Eén, N., Sörensson, N.: An Extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)
25. 25.
Eiter, T., Faber, W., Leone, N., Pfeifer, G.: Computing preferred answer sets by meta-interpretation in answer set programming. Theory and Practice of Logic Programming 3(4-5), 463–498 (2003)
26. 26.
Gavanelli, M.: Partially Ordered Constraint Optimization Problems. In: Walsh, T. (ed.) CP 2001. LNCS, vol. 2239, p. 763. Springer, Heidelberg (2001)
27. 27.
Gebser, M., Kaminski, R., Kaufmann, B., Schaub, T.: Multi-criteria optimization in answer set programming. In: Gallagherand, J.P., Gelfond, M. (eds.) Technical Communications of the 27th International Conference on Logic Programming (ICLP 2011). LIPIcs, vol. 11, pp. 1–10. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2011)Google Scholar
28. 28.
Gebser, M., Kaminski, R., Schaub, T.: Complex optimization in answer set programming. Theory and Practice of Logic Programming 11(4-5), 821–839 (2011)
29. 29.
Gebser, M., Kaufmann, B., Neumann, A., Schaub, T.: Conflict-driven answer set solving. In: Veloso, M.M. (ed.) Proc. of the 20th International Joint Conference on Artificial Intelligence (IJCAI 2007), pp. 386–391 (2007)Google Scholar
30. 30.
Gelfond, M., Lifschitz, V.: The stable model semantics for logic programming. In: Kowalski, R., Bowen, K. (eds.) Proc. of the 5th International Conference and Symposium on Logic Programming (ICLP/SLP 1988), pp. 1070–1080 (1988)Google Scholar
31. 31.
Gelfond, M., Lifschitz, V.: Classical negation in logic programs and disjunctive databases. New Generation Computing 9, 365–385 (1991)
32. 32.
Gent, I., Van Maaren, H., Walsh, T. (eds.): SAT 2000. Satisfiability Research in the Year 2000. IOS Press (2000)Google Scholar
33. 33.
Giunchiglia, E., Giunchiglia, F., Tacchella, A.: SAT-based decision procedures for classical modal logics. Journal of Automated Reasoning 28, 143–171 (2002), Reprinted in [32]
34. 34.
Giunchiglia, E., Maratea, M.: Solving optimization problems with DLL. In: Brewka, G., Coradeschi, S., Perini, A., Traverso, P. (eds.) Proc. of the 17th European Conference on Artificial Intelligence (ECAI 2006). Frontiers in Artificial Intelligence and Applications, vol. 141, pp. 377–381. IOS Press (2006)Google Scholar
35. 35.
Giunchiglia, E., Massarotto, A., Sebastiani, R.: Act, and the rest will follow: Exploiting determinism in planning as satisfiability. In: Mostow, J., Rich, C. (eds.) Proc. of the 15th National Conference on Artificial Intelligence (AAAI 1998), pp. 948–953. AAAI Press / The MIT Press (1998)Google Scholar
36. 36.
de Givry, S., Larrosa, J., Meseguer, P., Schiex, T.: Solving Max-SAT as Weighted CSP. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 363–376. Springer, Heidelberg (2003)
37. 37.
Jackson, P., Sheridan, D.: Clause Form Conversions for Boolean Circuits. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 183–198. Springer, Heidelberg (2005)
38. 38.
Järvisalo, M., Junttila, T., Niemelä, I.: Unrestricted vs restricted cut in a tableau method for Boolean circuits. Annals of Mathematics and Artificial Intelligence 44(4), 373–399 (2005)
39. 39.
Järvisalo, M., Junttila, T.A.: Limitations of restricted branching in clause learning. Constraints 14(3), 325–356 (2009)
40. 40.
Jin, H., Han, H., Somenzi, F.: Efficient Conflict Analysis for Finding All Satisfying Assignments of a Boolean Circuit. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 287–300. Springer, Heidelberg (2005)
41. 41.
Jin, H., Somenzi, F.: Prime clauses for fast enumeration of satisfying assignments to Boolean circuits. In: Joyner Jr., W.H., Martin, G., Kahng, A.B. (eds.) Proc. of the 42nd Design Automation Conference (DAC 2005), pp. 750–753. ACM (2005)Google Scholar
42. 42.
Kautz, H., Selman, B.: Planning as satisfiability. In: Neumann, B. (ed.) Proc. of the 10th European Conference on Artificial Intelligence (ECAI 1992), pp. 359–363. John Wiley and Sons (1992)Google Scholar
43. 43.
Leone, N., Pfeifer, G., Faber, W., Eiter, T., Gottlob, G., Perri, S., Scarcello, F.: The DLV system for knowledge representation and reasoning. ACM Transactions on Computational Logic 7(3), 499–562 (2006)
44. 44.
Manquinho, V., Marques-Silva, J., Planes, J.: Algorithms for Weighted Boolean Optimization. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 495–508. Springer, Heidelberg (2009)
45. 45.
Maratea, M., Ricca, F., Veltri, P.: DLVMC Enhanced Model Checking in DLV. In: Janhunen, T., Niemelä, I. (eds.) JELIA 2010. LNCS, vol. 6341, pp. 365–368. Springer, Heidelberg (2010)
46. 46.
McMillan, K.L.: Applying SAT Methods in Unbounded Symbolic Model Checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 250–264. Springer, Heidelberg (2002)
47. 47.
McMillan, K.L.: Symbolic Model Checking: an Approach to the State Explosion Problem. Kluwer Academic Publishers (1993)Google Scholar
48. 48.
Mitchell, D.G.: A SAT solver Primer. Bulletin of the EATCS 85, 112–132 (2005)
49. 49.
Van Nieuwenborgh, D., Vermeir, D.: Preferred answer sets for ordered logic programs. Theory and Practice of Logic Programming 6(1-2), 107–167 (2006)
50. 50.
Oikarinen, E., Järvisalo, M.: Max-ASP: Maximum Satisfiability of Answer Set Programs. In: Erdem, E., Lin, F., Schaub, T. (eds.) LPNMR 2009. LNCS, vol. 5753, pp. 236–249. Springer, Heidelberg (2009)
51. 51.
Plaisted, D.A., Greenbaum, S.: A structure-preserving clause form translation. Journal of Symbolic Computation 2, 293–304 (1986)
52. 52.
Prestwich, S.: Three implementation of branch-and-cut in CLP. In: Proc. of the 4th Compulog-Net Workshop on Parallelism and Implementation Technologies (1996)Google Scholar
53. 53.
Ramírez, M., Geffner, H.: Structural Relaxations by Variable Renaming and Their Compilation for Solving MinCostSAT. In: Bessiere, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 605–619. Springer, Heidelberg (2007)
54. 54.
Ravi, K., Somenzi, F.: Minimal Assignments for Bounded Model Checking. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 31–45. Springer, Heidelberg (2004)
55. 55.
Saad, E., Brewka, G.: Aggregates in Answer Set Optimization. In: Delgrande, J.P., Faber, W. (eds.) LPNMR 2011. LNCS, vol. 6645, pp. 211–216. Springer, Heidelberg (2011)
56. 56.
Siekmann, J., Wrightson, G. (eds.): Automation of Reasoning: Classical Papers in Computational Logic 1967–1970, vol. 1-2. Springer (1983)Google Scholar
57. 57.
Marques Silva, J.P., Lynce, I., Malik, S.: Conflict-driven clause learning SAT solvers. In: Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability. Frontiers in Artificial Intelligence and Applications, vol. 185, pp. 131–153. IOS Press (2009)Google Scholar
58. 58.
Simons, P., Niemelä, I., Timo, S.: Extending and implementing the stable model semantics. Artificial Intelligence 138(1–2), 181–234 (2002)
59. 59.
Tseitin, G.: On the complexity of proofs in propositional logics. Seminars in Mathematics 8 (1970) Reprinted in [56]Google Scholar
60. 60.
Wang, K., Zhou, L., Lin, F.: Alternating Fixpoint Theory for Logic Programs with Priority. In: Lloyd, J., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Palamidessi, C., Moniz Pereira, L., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS (LNAI), vol. 1861, pp. 164–178. Springer, Heidelberg (2000)
61. 61.
Warners, J.P.: A linear-time transformation of linear inequalities into conjunctive normal form. Information Processing Letters 68(2), 63–69 (1998)