On Solving the Partial MAX-SAT Problem

Boolean Satisfiability (SAT) has seen many successful applications in various fields such as Electronic Design Automation and Artificial Intelligence. However, in some cases, it may be required/preferable to use variations of the general SAT problem. In this paper, we consider one important variation, the Partial MAX-SAT problem. Unlike SAT, Partial MAX-SAT has certain constraints (clauses) that are marked as relaxable and the rest are hard, i.e. non-relaxable. The objective is to find a variable assignment that satisfies all non-relaxable clauses together with the maximum number of relaxable ones. We have implemented two solvers for the Partial MAX-SAT problem using a contemporary SAT solver, zChaff. The first approach is a novel diagnosis based algorithm; it iteratively analyzes the UNSAT core of the current SAT instance and eliminates the core through a modification of the problem instance by adding relaxation variables. The second approach is encoding based; it constructs an efficient auxiliary counter that constrains the number of relaxed clauses and supports binary search or linear scan for the optimal solution. Both solvers are complete as they guarantee the optimality of the solution. We discuss the relative strengths and thus applicability of the two solvers for different solution scenarios. Further, we show how both techniques benefit from the persistent learning techniques of incremental SAT. Experiments using practical instances of this problem show significant improvements over the best known solvers.

[1]  David S. Johnson,et al.  Approximation algorithms for combinatorial problems , 1973, STOC.

[2]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[3]  M. Garey Johnson: computers and intractability: a guide to the theory of np- completeness (freeman , 1979 .

[4]  I. Koren Computer arithmetic algorithms , 2018 .

[5]  Bart Selman,et al.  A general stochastic approach to solving problems with hard and soft constraints , 1996, Satisfiability Problem: Theory and Applications.

[6]  Olivier Coudert,et al.  On solving covering problems , 1996, DAC '96.

[7]  Yahiko Kambayashi,et al.  Database Queries as Combinatorial Optimization Problems , 1996, CODAS.

[8]  Byungki Cha,et al.  Local Search Algorithms for Partial MAXSAT , 1997, AAAI/IAAI.

[9]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[10]  M. Moskewicz,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[11]  Ofer Shtrichman Pruning Techniques for the SAT-Based Bounded Model Checking Problem , 2001 .

[12]  Ofer Strichman,et al.  Pruning Techniques for the SAT-Based Bounded Model Checking Problem , 2001, CHARME.

[13]  Vasco M. Manquinho,et al.  Search pruning techniques in SAT-based branch-and-bound algorithmsfor the binate covering problem , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[14]  Sharad Malik,et al.  Validating SAT solvers using an independent resolution-based checker: practical implementations and other applications , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[15]  Lawrence Ryan Efficient algorithms for clause-learning SAT solvers , 2004 .

[16]  Randy H. Katz,et al.  Contemporary Logic Design , 2004 .

[17]  Matthias F. Stallmann,et al.  Optimization algorithms for the minimum-cost satisfiability problem , 2004 .

[18]  Josep Argelich,et al.  Solving Over-Constrained Problems with SAT Technology , 2005, SAT.

[19]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002, Discret. Appl. Math..