There are preferences that cannot be expressed through the sum of weights-based approach. One example is conditional preferences statements on the values of vari- ables. These conditional preference dependence relationships are natural in many situations. Example 1 mentioned in Section 2.6.3 of Chapter 2 exhibits conditional preferences. Indeed, if the memory is equal to 1024MB, UBUNTU is preferred over XP. In case the memory is equal to 2048MB, XP is preferred over UBUNTU.
Comparative preference languages enable the framework to handle conditional preferences by expressing constraints on preferences. To our knowledge, this has not been used in IR or any other RSs before.
4.5.1
Models
In this approach, the user preferences are assumed to be modelled by a cp-tree pre- sented in Section 3.4.2.1 of Chapter 3, through which she decides which of the given configurations is better. The cp-tree, one example of which is depicted in Figure 4.4, allows the user to have a total pre-order over a set of possible configurations. Unlike a weights vector-based user model, a user who is represented by a cp-tree explicitly and naturally handles conditional preferences. This is highlighted in the definition of cp-tree. A cp-tree applied to the context of this framework has the following shape and properties. Every node is associated with γ variables at most. A local value ordering associated with variables in each node depends on the values taken by the parents of that node. The assumption that having a feature is at least as good as not having that feature is also implemented in every cp-tree that we consider in this chapter.
As every cp-tree implements a kind of generalized lexicographic order, any two configurations α and β are compared as follows: α and β are first compared on the value they have for the set of variables associated with the most important node. If one of them has better value than the other then we conclude that the former configuration is definitely preferred over the other one regarding the user’s model of preferences; the node is said to be decisive. If not then the two configurations are compared based on the next most important node which is determined regarding the value both configurations have for the set of variables associated with the previous node. This comparison continues through the following nodes in a lexicographic order until a decisive node is found; otherwise α and β are said to be equivalent. Let M (γ) be the set of cp-trees with γ being the maximum number of variables associated with a node. Figure 4.4 represents an example of a cp-tree with γ = 1. Each node in the cp-tree depicted in Figure 4.4 is labeled with a variable (or feature). The root is labeled by the most important variable, F2 in this example.
4.5. CP-tree Model Approach
Each node is also associated with a preference ordering of the values of the variable. This local ordering in the case of the nodes in the example is fi ≥ ¯fi, where fi
means Fi is included and ¯fi means that Fi is not included. This ordering captures
the requirement that including a feature is never worse than not including it. Two configurations α and β are first compared based on this most important variable. If they do not agree on this variable then the comparison is settled: in the example, if α contains feature F2 and β does not, then α is better than β. This
happens, for example, if α is f1f2f3 and β is f1f2f3. Otherwise, α and β agree on
the most important variable. The user may then have a next most important variable (labeling a child node); this can depend on the value assigned to the most important variable (signified by the value on the edge from parent to child). For this reason, this model allows conditional preferences. If there is no such next important variable, then α and β are considered equally preferable according to this cp-tree. Thus the cp-tree σ generates a total pre-order<σ on outcomes.
Note that each node in the cp-tree in Figure 4.4 is associated with a single vari- able. In fact, we can allow a more general representation, where at most γ variables are associated with a node, along with a total pre-order over the assignments to that set of at most γ variables. Figure 4.5.1 shows an example of a cp-tree with γ = 2. In Figure 4.5.1, for instance, the root node is associated with the pair of variables Y = {F2, F3} and the local ordering is then over assignments to Y , and is as follows,
f2f3 ≥ f2f¯3 ≥ ¯f2f3 ≥ ¯f2f¯3. The local ordering associated with a node associated
with feature Fi, must then be fi ≥ ¯fi, since including a feature is always at least as
good as not including it. CP-trees are described in more detail in Section 3.4.2.1 of Chapter 3.
F
2F
1F
3 1 1 f f 3 2 1f
f
f
f
1f
2f
3 3 2 1f
f
f
f
1f
2f
3 ≥f
1f
2f
3 ≥ ≥f
1f
2f
3 ≥ ≥f
1f
2f
3 ≡ 2 2 f f 2 f f2 3 3 f f F
1 1 1 f f F
3 3 3 f f f3f3F
3 3 2 1f
f
f
≡ 1f
f
1f
3Figure 4.4: A cp-tree σ with γ = 1, along with its associated ordering<σ on config-
F
2F
3F
1F
1 3 2f
f
≥f
2f
3≥ ≥ 3 2f
f
f
2f
3 1 1f
f
3 2f
f
1 1f
f
3 2f
f
3 2 1f
f
f
f
1f
2f
3 3 2 1f
f
f
f
1f
2f
3 ≥ ≥ ≥f
1f
2f
3 ≥ 3 2 1ff
f
≥f
1f
2f
3 ≡ ≡ 3 2 1f
f
f
Figure 4.5: A cp-tree σ with γ = 2, along with its associated ordering<σ on config-
urations
4.5.2
Constraint language
Comparative preference theories, which are presented in Section 3.3 in Chapter 3, are used in this instance to enable the advisor to handle conditional preferences while inducing constraints on user’s preferences. We are specifically using comparative preference theories which allow the system to handle preferences statements ϕ that have the form p ≥ q k T , where P , Q and T are subsets of the set of features V , and p is an assignment to P = Q (i.e., a function from P to {0, 1}), and q is an assignment to Q.
The statement ϕ expresses the preference of a partial configuration p over an- other partial configuration q with variables in T held constant. This statement also says that a model< satisfies p ≥ q k T if and only if α < β for all configurations α and β such that α extends p and β extends q with α(X) = β(X) for all X ∈ T .
As the constraint language in Section 4.4.2 does, this language allows to express α ≥ β (i.e., configuration α is preferred over configuration β). This is possible when P = Q = V and T = ∅.
Example Suppose that there are four binary features in V = {F1, F2, F3, F4}. and
when the user selects a configuration α = f1f¯2f3f4 among a set of three configu-
rations proposed by the system (i.e., α = f1f¯2f3f4, β = ¯f1f2f3f4, γ = f1f2f¯3f¯4),
the system infers the set Ψ of preference statements Ψ = {f1f¯2f3f4 ≥ ¯f1f2f3f4,
4.5. CP-tree Model Approach
combinations of features in α is better than both combinations of features in β and γ.
4.5.3
Dominance relation
Let α and β be two configurations. α dominates β (i.e., α <Φ β) if and only if all
possible users that agree with the set of constraints in Φ, prefer α over β. A possible user in this instance is represented by one cp-tree σ among the set M(γ) of cp-trees for γ = 1, 2, or 3. Therefore, α <Φ β holds if and only if every cp-tree σ in M(γ)
that satisfies all constraints in Φ orders α before β (α<σ β). In other words, α <Φ β
holds if every cp-tree σ in M(γ) that extends all constraints in Φ has α come before β or α and β are equivalent through σ (a cp-tree generates a total pre-order).
4.5.4
Dominance computation
The assumption stating that including a feature is always at least as good as not including it requires to include, in the set Φ, the statement fi ≥ fi k V \ {Fi} for
each feature Fi, for i = 1, . . . , n. This assumption is captured by the local ordering
in the case of the nodes in a cp-tree that represent a user model.
A dominance testing algorithm is presented in (Wilson 2009b). As shown in the previous section and described in Section 3.4.2 of Chapter 3, α <Φ β involves
reasoning with cp-trees and the total pre-orders they generate. In Theorem 1 of (Wilson 2009b), the dominance algorithm can check, in polynomial time, whether α <Φ β by verifying that all weak orders that satisfy Φ, agree with α ≥ β as well.
Example 1 continued. With the cp-tree semantics, when γ = 1, the pair of state- ments Φ (f1f¯2f3 ≥ ¯f1f2f3, and f1f2f¯3 ≥ ¯f1f2f3) implies the preference statement
f1f¯2f¯3 ≥ ¯f1f2f3, so we have f1f¯2f¯3 <cpΦ1 f¯1f2f3 (and indeed we have f1f¯2f¯3strictly
dominates ¯f1f2f3, i.e., f1f¯2f¯3 Φf¯1f2f3). The reason is that, for any 1-cp-tree σ sat-
isfying f1f¯2f3 ≥ ¯f1f2f3, the most important feature must be either F1 or F3. (If F2
were the most important feature, then we would not have f1f¯2f3 <σ f¯1f2f3, because
the local ordering is f2 ≥ ¯f2, since the presence of a feature is never worse than its
absence.) Similarly, if 1-cp-tree σ satisfies f1f2f¯3 ≥ ¯f1f2f3, then the most important
feature must be either F1 or F2. Hence for any 1-cp-tree σ satisfying Φ, F1 is the
most important feature. The root node then determines the preference ordering of the pair of configurations f1f¯2f¯3 and ¯f1f2f3: since the local ordering of this node
must be f1 ≥ ¯f1, we have f1f¯2f¯3 σ f¯1f2f3. Hence we have f1f¯2f¯3 <Φ f¯1f2f3. The
qualitative and lexicographic nature of the cp-tree semantics ensures this inference, in contrast with the numerical the sum of weights-based approach, which did not. 2
Example 2 continued. Recall that Ψ is the pair of statements f1f¯2f3f4 ≥ ¯f1f2f3f4
and f1f2f¯3f¯4 ≥ f1f¯2f3f¯4. In contrast with the sum of weights semantics, Ψ does not
imply f1f2f¯3f4 <Φ f¯1f2f3f4 with the cp-tree semantics. To show this we can con-
struct a 1-cp-tree σ with F4 as the most important (root node) variable, and where,
given f4, F3 is more important than F1 which is more important than F2, and given
¯
f4, F2 is more important than F3 which is more important than F1. σ then satisfies
Ψ, but not f1f2f¯3f4 ≥ ¯f1f2f3f4.
A key issue here is that cp-trees can represent conditional preferences: the pref- erences can be different given f4from those given ¯f4. In contrast, the sum of weights
semantics assumes preferential independence, so preferences are not conditional at
all, which is why the inference holds for the sum of weights semantics. 2
The pair of examples show that the two preference dominance techniques are incomparable: <Φ with the cp-tree semantics can sometimes include preferences
not included in<Φ with sum of weights semantics, and vice versa.