1.1. The problem
The Maximum Satisfiability problem (MaxSAT) is the optimization version of the Satisfiability problem (SAT). Given a
propositional formula in the conjunctive normal form (CNF), i.e., F =
i ∨jlij, the task in MaxSAT is to find an assignment to
the variables that maximizes the number of satisfied clauses. A significant generalization of MaxSAT is the Partial MaxSAT
(PMS) problem, in which clauses are divided into hard and soft clauses and the goal is to find an assignment that satisfies all
hard clauses and maximizes the number of satisfied soft clauses. PMS is particularly interesting from an algorithmic point
of view because the algorithms can exploit the distinction between hard and soft constraints. Such a structural feature has
a great impact on the performance of algorithms.
Combinatorial optimization problems containing hard and soft constraints are very common in real world situations.
PMS allows to encode such problems in a more natural and compact way than SAT and MaxSAT. PMS solvers has been
successfully used in many fields, including network routing [31], scheduling problems [50] and timetabling problems [15].
More recent applications of PMS include FPGA routing [19], the haplotype inference by pure parsimony (HIPP) problem
seeking to explain the genetic makeup of a population [20], as well as various planning problems, all of which are reviewed
in a PhD thesis [18]. Some application problems, such as the optimal protein alignment problem and the HIPP problem,
have been encoded into PMS and used in the MaxSAT evaluations [7].