Representation and Reasoning with Probabilistic TCP-nets

TCP-nets are graphical tools for modeling user’s preference and relative importance statements. We propose the Probabilistic TCP-net (PTCP-net) model that can aggregate a set of TCP-nets, in a compact form, sharing the same set of variables and their domains but having different preference and relative importance statements. In particular, the PTCPnet is able to aggregate the choices of multiple users such as, in recommender systems. The PTCP-net can also be seen as an extension of the TCP-net with uncertainty on preference and relative importance statements. We adopt the Bayesian Network as the reasoning tool for PTCP-nets especially when answering the following two queries (1) finding the most probable TCP-net and (2) finding the most probable optimal outcome. We also show that the PTCP-net is applicable in collaborative filtering type recommender systems.


Introduction
Reasoning with preferences using graphical models has attracted great interest in many real world applications, e.g., recommender systems (Jin et al., 2002) and product configuration (Brafman and Domshlak, 2002).A comprehensive review of graphical models for preference representation can be found in (Amor et al., 2016;Pigozzi et al., 2016).A Conditional Preference Network (CP-net) (Boutilier et al., 2004) is a graphical model that uses the notion of conditional preferential independence for representing and reasoning about qualitative preference statements in a compact and intuitive manner.A directed graph is used to encode preferential dependencies.For each variable in a CP-net, there is a Conditional Preference Table (CPT) listing the preference order over the variable domain, for each combination of the parent assignment set.A Tradeoff-enhanced CP-net (TCP-net) (Brafman et al., 2006) is an extension of the CP-net that accounts for user's qualitative and conditional relative importance statements by using the notion of conditional relative importance.For each conditional importance relation in a TCP-net, there is a Conditional Importance Table (CIT) listing the conditional relative importance relations between pairs of variables.
Aggregating users' preferences (Rossi et al., 2004;Yager, 2001) is often a necessary task for real world scenarios.For example, we consider a simple recommender system (Adomavicius and Tuzhilin, 2005;Breese et al., 1998) for a library.There are m books that are to be recommended to customers.Each book has two attributes, namely, Genre={Fiction, Nonfiction} and Media={Paper copy, Electronic copy}.There are n customers where each has preferences over the domain of each attribute, e.g., Fiction is preferred to Nonfiction.Each customer might also give more importance to Genre than to Media.
Let us assume that there are n 1 customers with the following preferences: (1) Fiction is preferred to Nonfiction (denoted as Fiction Nonfiction), (2) Paper copy is preferred to Electronic copy, and (3) Genre is more important than Media (denoted as Genre £ Media).The TCP-net representation of these statements is given in Figure 1 (i).Note that 'Genre is more important than Media' is depicted using a dashed directed arc.Now, consider a second group of n 2 customers having the same preferences as the first group but without any relative importance over the attributes.The TCP-net of this second group is depicted in Figure 1 (ii).Similarly, there is actually a total of 12 possible groups of customers with 12 different sets of unconditional preference and relative importance statements.12 distinct TCP-nets are indeed needed to model all the customers' preference and relative importance statements.Our goal in this paper is to develop a model that can represent and explore a probability distribution over the set of possible TCP-nets.
To reach the above goal, we aggregate this set of TCP-nets with a single model extending TCP-nets with a probability for each preference or relative importance statement.We call this aggregated model the Probabilistic TCP-net (PTCP-net).The PTCP-net for the library recommender system is illustrated in Figure 1 (iii).Note that Genre Media denotes that 'Neither Genre is more important than Media nor Media is more important than Genre'.The probability of each statement is computed based on all customers.For example, if n f out of n customers prefer Fiction to Nonfiction, then Pr(Fiction is preferred to Nonfiction)=n f /n, which is denoted as p 1 .Similarly, if to n g customers, Genre is more important than Figure 1.Graphical representation of our library recommender system.Media, then Pr(Genre is more important than Media)=n g /n, which is denoted as p 3 .We assume that the statements are mutually independent from one another.More generally, our PTCP-net extends the TCP-net with a probability distribution over preference orders, relative importance relations, existence of preferential dependencies and existence of relative importance relations.Instead of representing the choices of a single user, the PTCP-net is able to aggregate the choices of several users, each encoded in a possible TCP-net, in a compact manner.Moreover, the PTCP-net can also represent a single user's preference and relative importance statements with uncertainty.In this case, the probability comes from the elicitation process, e.g., a user provides 0.8 as the probability of 'Fiction is preferred to Nonfiction'.This is particularly important since, during the elicitation process in real world problems, preferences often come with noise (Liu et al., 2013).Note that all the possible TCP-nets encoded in a PTCP-net are not necessarily satisfiable due to the possible presence of cycles in the graph.We identify a particular sub class of PTCP-nets (that we call conditionally acyclic PTCP-nets) in which all TCP-nets are satisfiable.The focus of this paper is on this sub class.
After a PTCP-net is built, two queries need to be answered: (1) finding the most probable TCP-net and (2) finding the most probable optimal outcome.In a multi-agents case (such as recommender systems (Adomavicius and Tuzhilin, 2005;Burke et al., 2011;Konstan et al., 1997;Resnick et al., 1994)), the most probable TCP-net most likely represents the preference and relative importance statements of an unknown user.Thus, it facilitates the recommendation of items to the unknown user.On the other hand, the most probable optimal outcome most likely corresponds to an unknown item.Thus, this unknown item is recommended to each user such that the user's preference and relative importance statements are modeled using the TCP-net in which the optimal outcome is most probable.For finding the most probable TCP-net, we define the General-net (G-net) of a given PTCP-net.The G-net is literally a Bayesian Network (BN) (Pearl, 1988).To find the most probable optimal outcome, we define the Transformed-net (Trans-net) and the Optimal-net (Opt-net) graphical models.The Opt-net is also a BN.We show that the problem of finding the most probable TCP-net and the most probable optimal outcome is equivalent to finding the assignment with the maximal probability from the G-net and the Opt-net correspondingly.However, for practical use, we propose an algorithm, namely FindMPOO, that returns the most probable optimal outcome.Finally, we present an application of our PTCP-net model in recommender systems (Adomavicius and Tuzhilin, 2005;Burke et al., 2011;Konstan et al., 1997;Resnick et al., 1994;Breese et al., 1998;Jin et al., 2002).Recommender systems consist of a set of items that are subject to be recommended to a set of users based on estimated rating.In a Collaborative Filtering (CF) recommender system, the rating of an item to a user is estimated based on the ratings on the same item from similar users.CF has a number of limitations (Adomavicius and Tuzhilin, 2005;Burke et al., 2011).Firstly, when there are new items or new users, recommendation cannot be made without relying on some additional knowledge sources (Adomavicius and Tuzhilin, 2005;Burke et al., 2011).Secondly, users with similar interests can have very different rating patterns, i.e., some users tend to assign a higher rating to all items than other users.This results in low accuracy.On the other hand, it is very natural in real world problems that, an item consists of many features (e.g., a book consists of its Genre, Media, Language, Volume, etc.), and users express conditional preferences over the features (e.g., if the book has Small Volume, the user prefers an Electronic copy to a Print copy)1 .There is no approach in literature that utilizes users' conditional preferences on the item attributes.
We propose an intuitive model of recommender system that we call Collaborative Filtering with Conditional Preferences (CFCP).CFCP is a collaborative filtering type recommender system in which users' preference and relative importance statements are aggregated using a PTCP-net.We argue that CFCP will overcome two prominent issues of recommender systems: tackling new users and tackling new items.When there is a new user and the user's preference and relative important statements are unknown, the user is assumed to have the preference and relative importance statements that are encoded in the most probable TCP-net.Based on this, the CFCP estimates the rating of every item to the user, and recommends the items with highest rating.When there is a new unknown item in the system, this latter is recommended to every user such that the TCP-net that encodes the user's preference and relative importance statements has the most probable optimal outcome.
The PTCP-net can be considered as an extension of the Probabilistic CP-net (PCP-net) (Cornelio et al., 2013;Bigot et al., 2013;El Fidha et al., 2017) with relative importance relations.In a PCP-net, for each variable, there is a Probabilistic CPT (PCPT) that gives a probability distribution over the set of all preference orders for each assignment of the parent set.Bigot et al. (Bigot et al., 2013) introduce the PCP-net, but in their definition, preferential dependencies are considered deterministic.Cornelio et al. (Cornelio et al., 2013) give a general definition and show that BN is useful for the reasoning tasks in PCP-net.We follow their methodology of using BN for reasoning, but in the case of PTCP-net.Cornelio et al. (Cornelio et al., 2015) evaluated the PCP-net model in a multi-agent context.However, relative importance statements were not considered.Rossi et al. (2004) proposed an extension of CP-net, called mCP-net, to represent qualitative and conditional preference of multiple agents.mCP-net is composed of many partial CP-nets, one for every agent.In this case, one agent's preferences may depend on the preferences of other agents.However, if many agents have a shared preference order, it occurs once in the mCP-net.So, a mCP-net does not give the strength of a preference order.Our PTCP-net overcomes it by adding probability on every preference order.On the other hand, PTCP-net also deals with relative importance statements, while mCP-net does not.
The rest of the paper is organized as follow.In Section 2, we describe the necessary background.The PTCP-net model is defined in Section 3 and the reasoning tasks with PTCP-nets are described in Section 4. In Section 5, we report the application of the PTCP-net in recommender systems.We finally conclude and outline some future research in Section 6.

Background
We start by defining preference and relative importance.Then, we discuss CP-nets and TCP-nets.We also briefly discuss BNs given that they are important tools for reasoning with PTCP-nets.

Preference and Relative Importance
In this subsection, we give the definitions with respect to a single user, i.e., in a deterministic case.A preference relation is defined as a preference order (also known as strict partial order).A preference order is a binary relation over outcomes, which is anti-reflexive, anti-symmetric and transitive.Given two outcomes o and o , we write o o to denote that o is strictly preferred to o .The types of outcomes, we are concerned with, consist of possible assignments to some set of variables.Let us consider the set Since the number of possible outcomes is exponential in the number of variables, direct assessment of the preference order is usually not practical.In this regard, the notions of preferential independence and conditional preferential independence play a key role to represent the preference order compactly.
Definition 1. (Boutilier et al., 2004) Let x 1 , x 2 ∈ D(X) for some X ⊆ V, and y 1 , y 2 ∈ D(Y), where Y = V − X. X is preferentially independent of Y iff, for all x 1 , x 2 , y 1 , y 2 , we have that x 1 y 1 x 2 y 1 iff x 1 y 2 x 2 y 2 .Definition 2. (Boutilier et al., 2004) Let X, Y and Z be a partition of V and let z ∈ D(Z).X is conditionally preferentially independent of Y given z iff, for all x 1 , x 2 , y 1 , y 2 , we have that x 1 y 1 z x 2 y 1 z iff x 1 y 2 z x 2 y 2 z.X is conditionally preferentially independent of Y given Z, iff X is conditionally preferentially independent of Y given every assignment z ∈ D(Z).
We now define the notion of relative importance of variables.The ordering of outcomes induced by this notion is relatively stronger than that of the preferential independence (Brafman et al., 2006). cis.ccsenet.org Computer and Information Science Vol. 11, No. 4;2018Definition 3. (Brafman et al., 2006) Let a pair of variables X and Y be mutually preferentially independent given W = V − {X, Y}.We say that X is more important than Y, denoted as X £ Y, iff for every assignment w ∈ D(W) and for every x i , x j ∈ D(X), y a , y b ∈ D(Y), such that x i x j given w, we have that: x i y a w x j y b w.
Definition 4. (Brafman et al., 2006) Let X and Y be a pair of variables from V, and let Z ⊆ W − {X, Y}.We say that X is more important than Y given z ∈ D(Z) iff, for every assignment w on W = V − ({X, Y} ∪ Z) we have: x i y a zw x j y b zw whenever x i x j given zw .We denote this relation by X £ z Y. Finally, if for some z ∈ D(Z) we have either X £ z Y or Y £ z X, then we say that the relative importance of X and Y is conditioned on Z, and write RI(X, Y|Z).Z is called selector set of (X, Y) and is denoted as S (X, Y).

CP-nets and TCP-nets
A CP-net (Boutilier et al., 2004) is a graphical model for representing and reasoning about conditional preferences in a compact, intuitive and structural manner.This model allows users to express their preferences in a qualitative way, which is more natural and convenient for users compared to quantitative descriptions.This graphical model exploits the notions of preferential independence and conditional preferential independence in structuring a user's preferences under the ceteris paribus ("all else being equal") assumption.CP-nets are the first graphical model based on the notions of purely qualitative preferential independence captured by the ceteris paribus assumption, and bear a superficial similarity to BNs (Pearl, 1988).In a CP-net, preferential dependencies over the set V of variables are represented using directed arcs.An arc # » (X i , X j ) for X i , X j ∈ V indicates that the preference orders over D(X j ) depend on the actual value of X i .For each variable X ∈ V, there is a Conditional Preference Table (CPT).CPT (X) gives the preference orders over D(X) for each u ∈ D(Pa(X)), where Pa(X) is the set of X's parents.
The semantics of a CP-net is defined in terms of the preference orders that are consistent with the preferences imposed by the CPTs.A preference order on the outcomes of a CP-net N satisfies the CPT of a variable X, iff orders every two outcomes that differ only on the value of X consistently with the preference order on D(X) for each u ∈ D(Pa(X)).satisfies N iff satisfies each CPT of N. If o 1 and o 2 are two outcomes of N, we say that N entails o 1 o 2 , written as in every preference order that satisfies N.
A TCP-net (Brafman et al., 2006) is an extension of the CP-net in order to compactly represent both preference and relative importance relations over a set V of variables.The TCP-net exploits the notion of conditional relative importance in structuring user's relative importance relations.In a TCP-net, the directed arcs that are used to represent preferential dependencies are called cp-arcs.In addition, an unconditional relative importance relation between two preferentially independent variables is represented using a directed arc, namely i-arc.An i-arc # » (X i , X j ) in a TCP-net indicates that X i £X j holds.A conditional relative importance relation is represented using an undirected arc, namely ci-arc.A ci-arc (X i , X j ) in a TCP-net indicates that RI(X i , X j |S (X i , X j )) holds.There is a Conditional Importance Table (CIT) corresponding to each ci-arc (X i , X j ).CIT (X i , X j ) gives the relative importance relations over X i and X j for each z ∈ D(S (X i , X j )).
The semantics of a TCP-net is defined in terms of the set of preference orders consistent with the set of restrictions imposed by the preference and relative importance relations captured by the TCP-net.A TCP-net is said to be satisfied by a preference order if, (i) for each X ∈ V, satisfies CPT (X), (ii) for each i-arc # » (X i , X j ), satisfies the assertion that X is more important than Y if given every two complete assignments that differ on the value of X and Y only, prefers the assignment which provides X with a better value, and (iii) for each ci-arc (X i , X j ) given selector set Z, satisfies the assertion that X is more important than Y given some assignment z to variable set Z if given every two complete assignments that differ on the value X and Y only, in which Z is assigned z, prefers the assignment which provides X with a better value.A TCP-net is satisfiable if there is at least a preference order over the outcomes that satisfies the TCP-net.
Every TCP-net is not necessarily satisfiable.A large class of TCP-nets are conditionally acyclic.Conditionally acyclic TCP-nets are guaranteed to be satisfiable (Brafman et al., 2006).To define conditionally acyclic TCP-nets, Brafman et al. (Brafman et al., 2006) defined dependency graphs and w-directed graphs.The dependency graph is an extension of the graph associated with a TCP-net in which for every ci-arc (X i , X j ), two directed arcs # » (Z, X i ) and # » (Z, X j ) are added for every Z ∈ S (X i , X j ).The w-directed graph given an assignment w to all selector variables of a TCP-net, is defined using the dependency graph such that, every ci-arc (X i , X j ) in the dependency graph is replaced with # » (X i , X j ) if X i £ X j holds given w, or with # » (X j , X i ) if X j £ X i holds given w.If all w-directed graphs with respect to a TCP-net are acyclic, the TCP-net is conditionally acyclic.Example 1. (Evening Dress (Boutilier et al., 2004;Brafman et al., 2006)).Figure 2 (i) presents a CP-net that consists of three variables J, P, and S , standing for the jacket, pants, and shirt, respectively.A user prefers black to white as a color for both the jacket and the pants, while the preference for the shirt color (red or white) is conditioned on the color combination of jacket and pants: If they are of the same color, a white shirt will make the dress too colorless, therefore, red shirt is preferable.Otherwise, if the jacket and the pants are of different colors, a red shirt will probably make the evening dress too flashy, therefore, a white shirt is preferable.The solid lines in Figure 2 (iii) show the preference relation induced directly by the information captured by this CP-net.The top and the bottom elements are the worst and the best outcomes, respectively, and the arrows are directed from less preferred to more preferred outcomes.
Figure 2 (ii) depicts a TCP-net that extends this CP-net by adding an i-arc from J to P, i.e., having black jacket is (unconditionally) more important than having black pants.This induces additional relations among outcomes, captured by the dashed lines in Figure 2 (iii).

BNs
BNs (Pearl, 1988) are probabilistic graphical models that have been used to model large and complex problem domains, which are subject to reasoning under uncertainty.A BN utilizes the notion of probabilistic conditional independence and the chain rule to compactly represent a joint probability distribution.
Each vertex in the DAG of a BN represents a random variable.A random variable denotes an attribute, feature, or hypothesis about which we may be uncertain.Each random variable has a set of mutually exclusive and collectively exhaustive possible values.That is, exactly one of the possible values is or will be the actual value, and we are uncertain about which one it is.
There are three standard inference tasks in BNs.(1) Belief updating is to find the probability table of a variable or a set of variables given evidence.(2) Most probable explanation (MPE) is to find the most probable assignment for all the variables given evidence.(3) Maximum a-posteriori hypothesis (MAP) is to find the most probable assignment for a subset of variables given evidence.

Probabilistic TCP-net Model
In a context of multiple users, the preferences on the values of a variable vary from user to user.For example, for the Evening Dress in Example 1, a black jacket is preferable to a white jacket for a user, while for another user, a white jacket is preferable to a black jacket.We use probabilities to aggregate the varying preferences of all users on the same set of variables.On the other hand, preferential dependencies also vary.For a user, the preferences on shirt colors depend on the pants colors, as in Example 1.For another user, the preferences on the pants colors depend on the shirt colors, e.g., if the shirt color is white, the user prefers a black pants to a white pants.Even more, for another user, the preferences on shirt colors depend on the pants colors and the preferences on pants colors depend on the shirt colors, i.e., a cycle exists2 .In general, we consider that the preferential dependencies between two variables may exist in one way, in both ways, or may not exist at all.To represent the probable existence of a dependency, we add a probability on the cp-arcs of the corresponding TCP-net.The Probabilistic CPT (PCPT) for each variable is defined, accordingly, based on the existence of the cp-arcs.
The relative importance relation over two variables X and Y can vary from user to user, again, in a context of multiple users.For example, for l out of n users in a recommender system, X is more important than Y.For the remaining users, Y is more important than X.Then, the probability of X £ Y, denoted as Pr(X £ Y), is l/n.To aggregate the varying importance relations of all users, we define the Probabilistic CIT (PCIT).A PCIT of unconditional relative importance relations (i.e., selector set is null) over two variables X and Y gives the probability distribution over the relative importance relations between X and Y.A PCIT of conditional relative importance relations RI(X, Y|Z) gives a probability distribution over the relative importance relations between X and Y for every z ∈ D(Z).If there is no importance relation between two variables X and Y, we denote it as X Y.
2. pcp is a set of directed pcp-arcs α N (where pcp stands for probabilistic conditional preference).A pcp-arc # » (X i , X j ) belongs to N iff the preferences over the values of X j probably depend on the actual value of X i .
4. pcpt associates a PCPT (probabilistic CPT) with every node X ∈ V.The PCPT (X) gives a probability distribution over the set of all preference orders on D(X) for each u ∈ D(Y : Y ⊆ Pa(X)) (including a null value to account for the possible non-existence of the pcp-arcs).
5. pci is a set of pci-arcs (where pci stands for probabilistic conditional importance).A pci-arc (X i , X j ) belongs to N iff we probably have RI(X i , X j |Z) for some Z ⊆ V − {X i , X j }.Z is called the selector set of (X i , X j ) and is denoted by S (X i , X j ).A pci-arc is unconditional if Z is null, otherwise it is conditional.We use β N to denote the set of unconditional pci-arcs and γ N for conditional pci-arcs.
6. pciet associates a PCIET (pci-arc existence table) with every pci-arc (X i , X j ).PCIET (X i , X j ) represents the probability of existence for (X i , X j ), denoted as Pr(X i , X j ).
7. pcit associates a PCIT (probabilistic CIT) with every pci-arc (X i , X j ).PCIT (X i , X j ) gives a probability distribution over the relative importance relations on X i and X j for each z ∈ D(S (X i , X j )).The probability of X i £ X j given z ∈ D(S (X i , X j )) is denoted as Pr(X i £ X j |z).
The PTCP-net is a generalized formulation of the PCP-net.When pci, pciet and pcit are empty, the PTCP-net corresponds to a PCP-net.Note that, Brafman et al. (Brafman et al., 2006) defined a directed i-arc to denote an unconditional relative importance relation between two variables.An i-arc # » (X i , X j ) belongs to a TCP-net iff X i £X j .In a deterministic TCP-net, a directed arc is suitable to denote an unconditional relative importance relation, because if X i £ X j holds, then X j £ X i does not hold.However, in a PTCP-net, we use undirected pci-arc to denote the probable existence of unconditional relative importance relations.In a PTCP-net, an undirected arc is suitable to indicate a probability distribution on unconditional relative importance relations, because for some users X i £ X j holds, and for some other users X j £ X i holds.For example, a directed arc is appropriate to represent A £ B in case of a TCP-net, whereas an undirected arc is appropriate to represent A £ B with probability 0.6 and B £ A with probability 0.4 for a PTCP-net.A pci-arc is a dashed undirected arc, e.g., (A, B).PCIT (A, B) indicates that the relative importance relations over A and B depend on the actual value of D. So, (A, B) is a conditional pci-arc and its selector is D. The PCIET (A, B) and PCIT (A, B) are given in Figure 3 (iv) and (v) correspondingly.
Our intention is not to represent preference and relative importance relations using a PTCP-net.Rather, the PTCP-net represents a probability distribution over a set of TCP-nets.Each TCP-net in the set, is called a compatible TCP-net with respect to the PTCP-net.
Definition 7. (Compatible TCP-net) A TCP-net N is said to be compatible with respect to a PTCP-net N, if the following conditions are satisfied.
1. N has the same variables and domains as N.
2. The set of cp-arcs α N in N is a subset of, or equal to, the set of pcp-arcs α N in N.
3. For each X ∈ V, a PCPT (X) in N has a corresponding CPT (X) in N. Given the cp-arcs in N, a CPT (X) is formed from N by selecting a preference order over D(X) for each u ∈ D(Pa(X)) in N.

4.
The set of i-arcs β N in N is a subset of, or equal to, the set of unconditional pci-arcs β N in N.For an i-arc between X i and X j in N, a relative importance relation, either 5.The set of ci-arcs γ N in N is a subset of, or equal to, the set of conditional pci-arcs γ N in N.For each ci-arc (X i , X j ) in N, there is a CIT (X i , X j ) in N that is derived from the corresponding PCIT (X i , X j ) of N. A CIT (X i , X j ) is formed by selecting a relative importance relation, either X i £ X j or X j £ X i , over X i and X j for each z ∈ D(S (X, Y)).Let u X denotes a preference order over D(X) for X ∈ V and u ∈ D(Pa(X)) in N. £ u (X,Y) denotes a relative importance relation over X and Y for (X, Y) ∈ β N and u ∈ D(S (X, Y)) in N.
Definition 8. (Probability of compatible TCP-net) If a TCP-net N is compatible with a PTCP-net N, the probability of N with respect to N is defined as: Example 4. The probability of the compatible TCP-net in Figure 4 is computed as: Pr Theorem 1.If N is a PTCP-net and N is the set of all compatible TCP-nets, Pr N (N) gives a probability distribution over N ∈ N.
Proof.Let N 1 ⊂ N, where for each N ∈ N 1 , we have α N = α N , β N = β N and γ N = γ N (i.e., the structure of each N ∈ N 1 is the same).X 1 denotes all preference orders over D(X 1 ) for X 1 ∈ V in N. £ (X 1 ,Y 1 ) denotes all relative importance relations over X 1 and Y 1 for (X 1 , Y 1 ) ∈ β N γ N .We can write: Definition 10. (Extended graph of a PTCP-net) An extended graph N * of a PTCP-net N can be obtained from its selector extended graph N S as follows: Example 6.To find an extended graph of the PTCP-net in Figure 5, we consider its selector extended graph in Figure 6 (i).For the pci-arc (A, B) in Figure 6 (i), we consider that # » (A, B) is added in the extended graph and also (A, B) is deleted.The extended graph is shown in Figure 6 (ii).Similarly, two other possible extended graphs are shown in Figure 6 (iii)-(iv).
Definition 11. (Conditionally acyclic PTCP-net) If all extended graphs of a PTCP-net N are acyclic, the PTCP-net is called conditionally acyclic.
Example 7. The PTCP-net in Figure 5 is conditionally acyclic since its three extended graphs in Figure 6 (ii)-(iv) are acyclic.
Lemma 1.Every conditionally acyclic PTCP-net V, pcp, pcpet, pcpt, pci, pciet, pcit contains at least one variable X ∈ V, such that for every Y ∈ V − {X}, there is no pcp-arc # » (Y, X) and there is no conditional pci-arc (X, Y).Proof.This proof is a consequence of the proof of Lemma 3 in (Brafman et al., 2006), given the selector extended graph of a PTCP-net corresponds to the dependency graph of a TCP-net.
Theorem 2. Every compatible TCP-net with respect to a conditionally acyclic PTCP-net is also conditionally acyclic.
Proof.Let N be a compatible TCP-net of a conditionally acyclic PTCP-net N. N * be the set of the all extended graphs of N. By definition, the cp-arcs in N are subset of, or equal to, the pcp-arcs in N. It implies that all cp-arcs in N are also directed arcs in every N * ∈ N * .
The i-arcs in N are subset of, or equal to, the unconditional pci-arcs in N. The ci-arcs in N are subset of, or equal to, the conditional pci-arcs in N. From N, we can find its dependency graph (Brafman et al., 2006) that contains the all nodes and edges of N, and additionally, for every ci-arc (X i , X j ) and every X k ∈ S (X i , X j ) in N, the dependency graph contains a pair of directed arcs # » (X k , X i ) and # » (X k , X j ) if these arcs are not already in N. We get by definition of the extended graph that, there is at least one N * ∈ N * such that the all directed arcs in the dependency graph are subset of, or equal to, the directed arcs in N * .Now, we consider that S (N) be the union of all selector sets of N. Given an assignment w to all nodes in S (N), we can find the w-directed graph (Brafman et al., 2006) of the dependency graph that consists of all the nodes and directed edges of the dependency graph, and in addition it has a directed arc # » (X i , X j ) if such an arc is not already in the dependency graph, and (X i , X j ) is a ci-arc of N and the CIT for (X i , X j ) specifies that X i £ X j given w.We find that, for every w-directed graph, there is at least one N * ∈ N * such that the all directed arcs in the w-directed graph are subset of, or equal to, the directed arcs in N * .Since every N * ∈ N * is acyclic, every w-directed graph is also acyclic.By the definition of conditionally acyclic TCP-net (Brafman et al., 2006), N is conditionally acyclic.
We now have that every compatible TCP-net of a conditionally acyclic PTCP-net is satisfiable.Brafman et al. (Brafman et al., 2006) mentioned that a large class of TCP-nets are conditionally acyclic.In this regard, we argue that, to aggregate multiple users' preferences, a conditional acyclic PTCP-net is likely to occur.In the rest of the paper, we consider only the PTCP-nets which are conditionally acyclic.

Reasoning with PTCP-nets
Given a PTCP-net, we need to answer two basic queries: (1) finding the most probable compatible TCP-net and (2) finding the most probable optimal outcome.These two queries have significance in tackling new users and new items in collaborative filtering type recommender systems, which are well-known issues of recommender systems (Adomavicius and Tuzhilin, 2005;Burke et al., 2011;Konstan et al., 1997;Resnick et al., 1994).The most probable TCP-net most likely represents the preference and relative importance statements of an unknown user.Thus, it facilitates the recommendation of items to an unknown user as we explain in Section 5. On the other hand, the most probable optimal outcome most likely corresponds to an unknown item.Thus, this unknown item is recommended to each user such that the user's preference and relative importance statements are modeled using the TCP-net in which the optimal outcome is most probable.In the following subsections, we will address each of these two queries.

The Most Probable Compatible TCP-net
Cornelio et al. (Cornelio et al., 2013) introduced the concept of General Network (G-net) in the case of a PCP-net.In this paper, we define the G-net for a PTCP-net.The G-net is a representational structure that helps us understand the probability distribution on all compatible TCP-nets of a given PTCP-net.
Definition 12. (G-net) A G-net G N of a conditionally acyclic PTCP-net N is a BN, where the variables and their Conditional Probability Tables (PTs) are defined as follows.
1.Each independent variable (i.e., having no incoming pcp-arc) X ∈ V in N is also an independent variable X in G N .D(X) in G N is the set of all preference orders over D(X) in N. In G N , PT (X) is given by the PCPT (X) in N.
3. For each dependent variable X in N, there are as many dependent variables in G N as for each ) is given by the set of all preference orders over D(X) in N and a dummy value d.X u depends on the pcp-variables where the corresponding pcp-arcs in N are directed to X.Note that, for u, there is a corresponding set of existent pcp-arcs in N.This set corresponds to an assignment of Pa(X u ) in G N .For that assignment of Pa(X u ), the PT (X u ) is given by the PCPT (X) for u from N with the probability of the dummy value d setting to 0. For the other assignments of Pa(X u ), the PT (X u ) is given by setting the probability of the dummy value d to 1.
4. Each pci-arc (X i , X j ) in N is an independent variable X i X j in G N with domain {0, 1} where Pr(0) = 1 − Pr(X i , X j ) and Pr(1) = Pr(X i , X j ).We call it a pci-variable.
5. For each PCIT (X i , X j ) in N, there are as many dependent variables in G N as for each z ∈ D(S (X i , X j )), excluding null.
) is given by the set of all relative importance relations over X i and X j in N. I X i X j /z depends on the pci-variable X i X j .PT (I X i X j /z ) is given by the PCIT (X i , X j ) for z from N.
Example 8.A G-net G N , corresponding to the PTCP-net N in Figure 5, is shown in Figure 7.The independent variables are A, B and D. Their PTs are given by the corresponding PCPTs.The pcp-variables are AC and BC.Their PTs are given by the corresponding PCPETs.For the dependent variable C in N, there are 9 dependent variables in Intuitively, each assignment in G N corresponds to a compatible TCP-net.The probability of the compatible TCP-net can be given by the joint probability of the corresponding assignment in G N .Therefore, given a conditionally acyclic PTCPnet N, the problem of finding the most probable compatible TCP-net is mapped into the problem of finding the assignment with the maximal joint probability in G N .Since the problem is to find the MPE in a BN, it is NP-hard (Kwisthout, 2011).

The most probable optimal outcome
Every conditionally acyclic TCP-net has one and only one optimal outcome (Brafman et al., 2006).While a conditionally acyclic PTCP-net represents a probability distribution over a set of conditionally acyclic TCP-nets, we use this distribution to compute the probability of an outcome to be optimal with respect to the PTCP-net.
Definition 13. (Probability of optimality) Given a conditionally acyclic PTCP-net N and the set of its compatible TCPnets N, the probability of an outcome o to be optimal with respect to N, is defined as: Pr(o) = N∈N, o is optimal in N Pr N (N).
In case of a PCP-net, the most probable optimal outcome is not necessarily the optimal outcome of the most probable compatible CP-net (Cornelio et al., 2013).This is indeed true for a PTCP-net too.
Example 9. Consider a PTCP-net with a single variable A and its domain {a 1 , a 2 , a 3 }.PCPT (A) is given by a 1 a 2 a 3 , a 1 a 3 a 2 and a 2 a 1 a 3 with their corresponding probabilities 0.3, 0.3 and 0.4.It is easy to see that the PTCP-net represents the probability distribution of 3 TCP-nets.The TCP-net with the order a 2 a 1 a 3 is most probable.In this TCP-net, the optimal outcome is a 2 .Therefore, the probability of a 2 to be optimal with respect to the PTCP-net is 0.4.On the other hand, in the other 2 TCP-nets, the optimal outcome is a 1 .Therefore, the probability of a 1 to be optimal with respect to the PTCP-net is 0.3 + 0.3 = 0.6.Vol. 11,No. 4; 2018  Lemma 3. The probability of an outcome o to be optimal with respect to a conditionally acyclic PTCP-net N is the same as the probability of the outcome to be optimal with respect to the corresponding Trans-net N T .
Proof.Let N and N T be the set of N's and N T 's compatible TCP-nets correspondingly.Let o be optimal for every N ∈ N 1 , where N 1 ⊆ N. Let α be a pcp-arc.Let N 1 = N 1α ∪ N 1¬α , where cp-arc α exists in every N ∈ N 1α and cp-arc α does not exist for every N ∈ N 1¬α .It means that each N ∈ N 1α has a corresponding N ∈ N 1¬α , where they differ only on the existence of α.Let N α and N ¬α be such correspondence, where α exists in N α and does not exist in N ¬α .
On the other hand, N α is also a compatible TCP-net of N T .There is no compatible TCP-net of N T such that the cp-arc α does not exist, since α has probability 1 in N T .By Definition 14, we have: Therefore, Pr(o) is same with respect to N and N T .
The above lemma ensures that the most probable optimal outcome in the Trans-net will give the most probable optimal outcome in the PTCP-net.
Definition 15. (Opt-net) The Opt-net O N T of a given Trans-net N T is a BN with the following.Each variable X in N T is also a variable X in O N T .D(X) in O N T are the values of X from N T that rank first in at least one preference order with non-zero probability.All the pcp-arcs in N T also exist in O N T , which define the probabilistic dependencies over the variables in O N T .PT (X) in O N T is computed as: for each x ∈ D(X) and u ∈ D(Pa(X)), Pr(x|u) = x ranks first in u X Pr( u X ).
The purpose of an Opt-net is to represent the probability of each outcome that is optimal in at least one TCP-net.The Opt-net, corresponding to the Trans-net of Figure 8, is shown in Figure 9.The variables are A, B, C and D. The PT of each variable is determined from the corresponding PCPT.
Lemma 4.An outcome o is optimal in at least one compatible TCP-net N of a conditionally acyclic PTCP-net N on V, if and only if o is an assignment with respect to the corresponding Opt-net O N T .
Proof.(⇒) Let o = x 1 x 2 • • • x n be the optimal outcome of N. o is obtained using the forward sweep procedure (Boutilier et al., 2004;Brafman et al., 2006), that ensures that, for every X i ∈ V, X i = x i in o ranks first for the preference order over D(X i ) of N given instantiation of Pa(X i ).By Definition 15, the variable X i also exists in O N T where {x x n be an assignment of O N T .We get that every x i ∈ o ranks first in a preference order over D(X i ) of N T with a non-zero probability, where x i ∈ D(X i ).By taking this preference order for every x i ∈ o from N T , we can find a compatible TCP-net of N T in which o is optimal.
Note that, for a given PTCP-net N and its Opt-net O N T , there is a one-to-one correspondence between the assignments of O N T and the outcomes that are optimal in at least one compatible TCP-net.The probability of an outcome to be optimal in N is the joint probability of the corresponding assignment in O N T .Thus the most probable optimal outcome in N can be found by finding the assignment with the highest joint probability in O N T .We now provide the time complexity of FindMPOO.
Lemma 5. Given a Trans-net N T with n number of variables.If m is the number of values of a variable, FindMPOO requires O(m n n) in worst case, while it is O(n) in best case.
Proof.In worst case, number of possible outcomes is m n .Every outcome requires n − 1 multiplications to find the probability to be optimal.To find the most probable outcome, m n −1 comparisons are needed.So, we get m n (n−1)+m n −1, which is O(m n n).
On the other hand, in best case, every variable can contain only a single preference order over its domain given the parent set.In this case, there will be one outcome.To compute its probability, we need n−1 multiplications, which is in O(n).

Application in Recommender Systems
In this section, we aim to extend Collaborative Filtering (CF) recommender system with users' qualitative and conditional preferences on the item attributes.We argue an intuitive model, CF with Conditional Preferences (CFCP), which will possibly overcome the inherent limitations of CF.However, an experimental validation is left for a future research.CFCP is a basic CF extended to two knowledge sources: the items have a finite set of attributes and the users express conditional preferences over the attributes.The PTCP-net is used to aggregate the users' preferences.Given the CFCP model, we need to perform two tasks: (1) how to estimate the rating of an item to a user and (2) how to tackle new user and new item.
In a conventional CF, to estimate the rating of an item to a user, the ratings of the similar users on the same item are is used for the purpose of aggregation.We show that a PTCP-net represents a probability distribution over a set of TCP-nets, where each has the same set of variables and their domains but differ in preference and relative importance statements.Second, a single user might have uncertain preference and relative importance statements, which a PTCP-net can represent.
Two types of queries have been evaluated: finding the most probable compatible TCP-net and finding the most probable optimal outcome.In a context of multiple users, the most probable TCP-net represents the preference and relative importance statements that an unknown user most likely expresses.The most probable optimal outcome is most likely the outcome to be recommended to an unknown user.
We propose an extension of the collaborative filtering type recommender system in which a PTCP-net is used to aggregate users' preferences.We intuitively argue that this model will overcome the underlying issues of recommender system, however experimental validation is left for a future research.
In the near future, we are planning to work on dominance query, i.e., finding the probability that an outcome is preferred to another outcome.Note that this will be done after we explore the dominance testing with respect to TCP-nets (Brafman et al., 2006).Moreover, we plan to extend the PTCP-net model with hard constraints using the Constraint Satisfaction Problem framework (Dechter, 2003) as was done for TCP-nets (Zhang et al., 2015).This is particularly important given that, in a system of multiple unknown users, each user can have a di_erent set of constraints.

Example 2 .
A PTCP-net with four binary variables A, B, C and D, and their corresponding domains {a 1 , a 2 }, {b 1 , b 2 }, {c 1 , c 2 } and {d 1 , d 2 } is presented in Figure 3. Three pcp-arcs # C) are denoted as solid directed arcs.Their probabilities of existence are listed in Figure 3 (ii).The arc # » (A, C) indicates that the preferences on the values of C probably depend on the actual value of A and this probability is 0.4.The PCPTs corresponding to the each variable are shown in Figure 3 (iii).The variable B has no parents.So, PCPT (B) gives the probability distribution over b 1 b 2 and b 2 b 1 .It is similar for the variable D. A has a parent that is C.

Figure 4 .
Figure 4.A TCP-net that is compatible with the PTCP-net of Figure 3.

Example 3 .
A compatible TCP-net of the PTCP-net in Figure 3 is shown in Figure 4.The TCP-net has the same variables and domains as the PTCP-net.The pcp-arc # » (B, C) exists in the TCP-net as a cp-arc, while # » (A, C) and # » (C, A) do not exist (Figure 4 (i)).The CPTs of the variables are in Figure 4 (ii).For the variables A, B and D, the preference orders a 1 a 2 , b 1 b 2 and d 1 d 2 are selected correspondingly.The preference order of the dependent variable C depends on the actual value of B. The preference orders c 1 c 2 and c 2 c 1 are selected for B = b 1 and B = b 2 correspondingly.The conditional pci-arc (A, B) in the PTCP-net becomes a ci-arc in the TCP-net.The selector is D. When D = d 1 , A £ B is chosen.When D = d 2 , B £ A is chosen.The CIT (A, B) is in Figure 4 (iii).

Figure 5 .
Figure 5.A modified PTCP-net of the PTCP-net in Figure 3.

Figure 6 .
Figure 6.(i) The selector extended graph and (ii)-(iv) the extended graphs of the PTCP-net in Figure 5.
2 and C null .Each of these dependent variables has domain of c 1 c 2 , c 2 c 1 and d.Each of these dependent variables depends on the pcp-variables AC and BC.PT (C a 1 b 1 ) is determined from Figure 5 (iii).Given a 1 b 1 for PCPT (C), the existent pcp-arcs are # » (A, C) and # » (B, C).When AC = 1 and BC = 1, PT (C a 1 b 1 ) is given by PCPT (C) for a 1 b 1 .For other combinations of AC and BC, we have: Pr(c 1 c 2 |AC, BC) = 0, Pr(c 2 c 1 |AC, BC) = 0 and Pr(d|AC, BC) = 1.The PTs of the other variables are similarly obtained.The only one pci-arc (A, B) in Figure 5 becomes a pci-variable AB.The PT (AB) is given by the corresponding PCIET.For the PCIT (A, B) in Figure 5 (v), the dependent variables in Figure 7 are I AB/d 1 and I AB/d 2 .Their domains are A £ B, B £ A and A B. Both of the variables depend on AB.PT (I AB/d 1 ) is given by PCIT (A, B) for d 1 from Figure 5 (v).When AB = 1, we have: Pr(A £ B|AB) = 0.7, Pr(B £ A|AB) = 0.3 and Pr(A B|AB) = 0.When AB = 0, we have: Pr(A £ B|AB) = 0, Pr(B £ A|AB) = 0 and Pr(A B|AB) = 1.PT (I AB/d 2 ) is similarly determined.

Figure 7 :
Figure 7: The G-net of the PTCP-net in Figure 5.

Figure 9 .
Figure 9.The Opt-net corresponding to the Trans-net in Figure 8.

Firstly, let us
consider steps 4(a)-4(d) for d 1 .In steps 4(a)-(b), o and Pr(o) are updated as d 1 and 0.3 correspondingly.In step 4(c), a sub Trans-net N T 1 is constructed by removing D from the original Trans-net and restricting PCIT (A, B) to D = d 1 .This sub Trans-net N T 1 is shown in Figure10(ii).In step 4(d), V is not null and FindMPOO is again called with the parameters N T 1 , {A, B, C} and (d 1 , 0.3) (let's say it is call 2).(d 1 , 0.3) is shown with an outgoing edge from D in Figure10(i).For this call 2, in step 2, we have two options to choose A or B. A is chosen that is depicted, in Figure10(i), by the outgoing edge from D directing to A. In step 3, V is set to {B, C}.In PCPT (A), a 1 ranks first in a 1 a 2 and a 2 ranks first in a 2 a 1 .So steps 4(a)-4(d) will repeat for a 1 and a 2 individually.Let us consider steps 4(a)-4(d) for a 1 .In steps 4(a)-(b), o and Pr(o) are updated as a 1 d 1 and 0.24 correspondingly.In step 4(c), a sub Trans-net N T 2 is constructed by removing A and unconditional pci-arc (A, B), and restricting PCPT (C) to A = a 1 .This sub Trans-net N T 2 is shown in Figure10(iii).In step 4(d), V is not null and FindMPOO is again called with the parameters N T 2 , {B, C} and (a 1 d 1 , 0.24) (call 3).(a 1 d 1 , 0.24) is shown with an outgoing edge from A in Figure10 (i).For this call 3, in step 2, B is chosen that is depicted, in Figure10(i), by the outgoing edge from A directing to B. In step 3, V is set to {C}.In PCPT (B), b 1 ranks first in b 1 b 2 and b 2 ranks first in b 2 b 1 .So steps 4(a)-4(d) will repeat for b 1 and b 2 individually.Consider steps 4(a)-4(d) for b 1 .In steps 4(a)-(b), o and Pr(o) are updated as a 1 b 1 d 1 and 0.168 correspondingly.In step 4(c), a sub Trans-net N T 3 is constructed by removing B and restricting PCPT (C) to B = b 1 .This sub Trans-net N T 3 is shown in Figure 10 (iv).In step 4(d), V is not null and FindMPOO is again called with the parameters N T 3 , {C} and (a 1 b 1 d 1 , 0.168) (call 4).(a 1 b 1 d 1 , 0.168) is shown with an outgoing edge from B in Figure 10 (i).For this call 4, in step 2, C is chosen that is depicted, in Figure 10 (i), by the outgoing edge from B directing to C. In step 3, V is set to null.In PCPT (C), c 1 ranks first in c 1 c 2 and c 2 ranks first in c 2 c 1 .So steps 4(a)-4(d) will repeat for c 1 and c 2 individually.Let us consider steps 4(a)-4(d) for c 1 .In steps 4(a)-(b), o and Pr(o) are updated as a 1 b 1 c 1 d 1 and 0.095 correspondingly.In step 4(c), the sub Trans-net N T 4 after removing C is null.In step 4(d), V is null that indicates that an outcome with its probability to be optimal is found.FindMPOO is called with the parameters N T 4 , null and(a 1 b 1 c 1 d 1 , 0.095) (call 5).The return of call 5 (that is (a 1 b 1 c 1 d 1 , 0.095)) is stored in (o , Pr(o )).It is depicted in Figure10(i) with an outgoing arc from C to null.Since Pr(o ) > Pr(MPOO), a 1 b 1 c 1 d 1 and 0.095 are stored in MPOO and Pr(MPOO) correspondingly.The "bold" (a 1 b 1 c 1 d 1 , 0.095) in Figure10(i) indicates that this outcome is the most probable optimal outcome so far with the algorithm.Now in call 4, consider the next iteration of steps 4(a)-4(b) for c 2 .Similarly, this iteration will give us the outcome a 1 b 1 c 2 d 1 with its probability to be optimal 0.073.The probability of a 1 b 1 c 2 d 1 is not greater than the probability of a 1 b 1 c 1 d 1 .It indicates that a 1 b 1 c 1 d 1 is still the most probable optimal outcome so far and (a 1 b 1 c 2 d 1 , 0.072) is not made "bold" in Figure10(i).The Figure10(i) for complete execution of the algorithm shows that a 1 b 1 c 1 d 2 is the most probable optimal outcome with its probability 0.221.