Solving optimization problems with DLL
2006, Proceeding of the 2006 conference on ECAI …
Abstract
Propositional satisfiability (SAT) is a success story in Computer Science and Artificial Intelligence: SAT solvers are currently used to solve problems in many different application domains, including planning and formal verification. The main reason for this success is that modern SAT solvers can successfully deal with problems having millions of variables. All these solvers are based on the Davis-Logemann-Loveland procedure (DLL). DLL is a decision procedure: Given a formula ϕ, it returns whether ϕ is satisfiable or not. Further, DLL can be easily modified in order to return an assignment satisfying ϕ, assuming one exists. However, in many cases it is not enough to compute a satisfying assignment: Indeed, the returned assignment has also to be "optimal" in some sense, e.g., it has to minimize/maximize a given objective function. In this paper we show that DLL can be very easily adapted in order to solve optimization problems like MAX-SAT and MIN-ONE. In particular these problems are solved by simply imposing an ordering on a set of literals, to be followed while branching. Other popular problems, like DISTANCE-SAT and WEIGHTED-MAX-SAT, can be solved in a similar way. We implemented these ideas in ZCHAFF and the experimental analysis show that the resulting system is competitive with respect to other state-of-the-art systems.
References (18)
- F. A. Aloul, A. Ramani, I. L. Markov, and K. A. Sakallah, 'PBS: A backtrack search pseudo-Boolean solver', in Proc. SAT, (2002).
- Olivier Bailleux and Yacine Boufkhad, 'Efficient CNF encoding of Boolean cardinality constraints.', in Proc. CP, pp. 108-122, (2003).
- Olivier Bailleux and Pierre Marquis, 'Some Computational Aspects of DISTANCE-SAT', Journal of Automated Reasoning, to appear, (2006).
- P. Barth, 'A Davis-Putnam enumeration algorithm for linear pseudo- boolean optimization', Technical report, Max Plank Instutute for Com- puter Scince, (1995). technical Report MPI-I-95-2-2003.
- D. Le Berre and L. Simon, 'Fifty-five solvers in Vancouver: The SAT 2004 competition', in Proc. SAT (Selected Papers), pp. 321-344, (2004).
- A. Biere, A. Cimatti, E. Clarke, and Y. Zhu, 'Symbolic model checking without BDDs', in Proc. TACAS, (1999).
- Brian Borchers and Judith Furman, 'A two-phase exact algorithm for max-SAT and weighted max-SAT problems.', J. Comb. Optim., 2(4), 299-306, (1998).
- N. Creignou, S. Khanna, and M. Sudan, 'Complexity classifications of Boolean constraint satisfaction problems', SIAM, (2001).
- M. Davis, G. Logemann, and D. Loveland, 'A machine program for theorem proving', Journal of the ACM, 5(7), (1962).
- Niklas Eén and Niklas Sörensson, 'Translating pseudo-Boolean con- straints into SAT', Journal on Satisfiability, Boolean Modeling and Computation, (2006).
- Henry Kautz and Bart Selman, 'Planning as satisfiability', in Proc. ECAI, pp. 359-363, (1992).
- Vasco Miguel Manquinho and Olivier Roussel, 'The first evaluation of pseudo-Boolean solvers (PB05)', Journal on Satisfiability, Boolean Modeling and Computation, (2006).
- M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, and S. Malik, 'Chaff: Engineering an Efficient SAT Solver', in Proc. DAC, (2001).
- P. Meseguer S. D. Givry, J. Larrosa and T. Schieux, 'Solving Max-SAT as weighted CSP', pp. 363-376, (2003).
- Carsten Sinz, 'Towards an optimal cnf encoding of Boolean cardinality constraints.', in Proc. CP, pp. 827-831, (2005).
- John K. Slaney and Toby Walsh, 'Phase transition behavior: from deci- sion to optimization', in Proc. SAT, (2002).
- Joost P. Warners, 'A linear-time transformation of linear inequalities into conjunctive normal form.', Inf. Process. Lett., 68(2), 63-69, (1998).
- Z. Xing and W. Zhang, 'MaxSolver: An efficient exact algorithm for (weighted) maximum satisfiability', Artificial Intelligence, 164(1-2), 47-80, (2005).