Classical constraint problems (CSPs) are a very expressive and natural formalism to specify many kinds of real-life problems.
However, sometimes they are not very exible when trying to represent real-life scenarios where the knowledge is not completely
available nor crisp. For this reason, many extensions of the classical CSP framework have been proposed in the literature:
fuzzy, partial, probabilistic, hierarchical. More recently, all these extensions have been unified in a general framework
[
1], called SCSP, which uses a semiring to associate with each tuple of values for the variables of each constraint an appropriate
“degree of preference”, which can also be interpreted as a cost, or an award, or others
Sometimes, however, even SCSPs are not expressive enough, since one may know his/her preferences over some of the solutions
but have no idea on how to code this knowledge into the SCSP. That is, one has a global idea about the goodness of a solution, but does not know the contribution of each single constraint to such a measure. In [2] this situation is addressed by using learning techniques based on gradient descent: it is assumed that the level of preference
for some solutions (the examples) is known, and it is proposed to learn, from these examples, values to be associated with each constraint tuple, in a way
that is compatible with the examples
Here we make the technique proposed in [2] concrete: we identify its features, and we show the results of several experiments run by choosing various values of these
features.