In artificial intelligence and operations research, a Weighted Constraint Satisfaction Problem (WCSP), also known as Valued Constraint Satisfaction Problem (VCSP), is a generalization of a constraint satisfaction problem (CSP) where some of the constraints can be violated (according to a violation degree) and in which preferences among solutions can be expressed. This generalization makes it possible to represent more real-world problems, in particular those that are over-constrained (no solution can be found without violating at least one constraint), or those where we want to find a minimal-cost solution (according to a cost function) among multiple possible solutions.
A Weighted Constraint Network (WCN), aka Cost Function Network (CFN), is a triplet
\langleX,C,k\rangle
k>0
infty
Each soft constraint
cS\inC
l(S)
\langle0,...,k\rangle
l(S)
I\inl(S)
cS(I)=k
In WCSP, specific subclass of Valued CSP (VCSP),[1] costs are combined with the specific operator
⊕
\forall\alpha,\beta\in\langle0,...,k\rangle,\alpha ⊕ \beta=min(k,\alpha+\beta)
⊕
\ominus
If
0\le\beta\le\alpha<k
\alpha\ominus\beta=\alpha-\beta
0\le\beta<k
k\ominus\beta=k
Without any loss of generality, the existence of a nullary constraint
c\empty
cx
The total cost of a complete instantiation
I\inl(X)
cS
cS\inC
c\emptyset
Considering a WCN/CFN, the usual (NP-hard) task of WCSP is to find a complete instantiation with a minimal cost.Other tasks in the related field of graphical model can be defined.[2]
Node consistency (NC) and Arc consistency (AC), introduced for the Constraint Satisfaction Problem (CSP), have been studied later in the context of WCSP.Furthermore, several consistencies about the best form of arc consistency have been proposed: Full Directional Arc consistency (FDAC),[3] Existential Directional Arc consistency (EDAC),[4] Virtual Arc consistency (VAC)[5] and Optimal Soft Arc consistency (OSAC).[6]
Algorithms enforcing such properties are based on Equivalence Preserving Transformations (EPTs) that allow safe moves of costs among constraints. Three basic costs transfer operations are:
The goal of Equivalence Preserving Transformations is to concentrate costs on the nullary constraint
c\empty
c\empty
c\empty
An alternative to cost transfer algorithms is the algorithm PFC-MRDAC[7] which is a classical branch and bound algorithm that computes lower bound
lb
ub
lb\gequb
Another more recent approach is based on super-reparametrizations[8] which allows to relax the problem to compute tighter bounds.
Cost transfer algorithms have been shown to be particularly efficient to solve real-world problem when soft constraints are binary or ternary (maximal arity of constraints in the problem is equal to 2 or 3).For soft constraints of large arity, cost transfer becomes a serious issue because the risk of combinatorial explosion has to be controlled.
An algorithm, called GAC-WSTR,[9] has been proposed to enforce a weak version of the property Generalized Arc Consistency (GAC) on soft constraints defined extensionally by listing tuples and their costs.This algorithm combines two techniques, namely, Simple Tabular Reduction (STR)[10] and cost transfer. Values that are no longer consistent with respect to GAC are identified andminimum costs of values are computed. This is particularly useful for efficiently performing projection operations that are required to establish GAC.
Global cost functions with a dedicated semantic (e.g. SoftAllDifferent, SoftAmong) and polytime complexity have been also studied.[11]
Many real-world WCSP benchmarks are available on http://genoweb.toulouse.inra.fr/~degivry/evalgm[12] and https://forgemia.inra.fr/thomas.schiex/cost-function-library (older version at http://costfunction.org/en/benchmark). More MaxCSP benchmarks available on http://www.cril.univ-artois.fr/~lecoutre/#/benchmarks (deprecated site, see also http://xcsp.org/series).