Document not found! Please try again

Preference Revision via Declarative Debugging - Semantic Scholar

1 downloads 0 Views 906KB Size Report
Karin prefers thrillers to action movies. - Helena, on the other hand, prefers action movies to thrillers. - Finally, Elisa is like Helena and prefers action movies to ...
Preference Revision via Declarative Debugging Pierangelo Dell’Acqua Dept. of Science and Technology - ITN Linköping University, Sweden

Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal

December, 2005

EPIA’05, Covilhã, Portugal

Problem

Preference criteria are subject to be: • modified when new information is brought to the knowledge of an individual, or • aggregated when one needs to represent and reason about the simultaneous preferences of several individuals.

Example: suppose you invite three friends Karin, Helena and Elisa to go and see a movie. - Karin prefers thrillers to action movies. - Helena, on the other hand, prefers action movies to thrillers. - Finally, Elisa is like Helena and prefers action movies to thrillers. Which movie do you choose?

Often, the resulting preference criteria may not satisfy the required properties (e.g., a strict partial order) and must therefore be revised.

Applications The problem of combining preferences arises in several application domains. In computer science: •

database and information retrieval based on collaborative filtering, e.g. recommendation systems



internet search and meta-search systems



multi-media systems, e.g., adaptive radio

but also in: •

economics: utility theory



political science: work on voting or polling over the internet (electronic democracy)



social science: work on social choice behaviour

Proposed approaches Preference aggregation has been studied from several perspectives: • [J. Chomicki,03], [H. Andreka et al.,02] study the preservation of properties by different composition operators • [Grosof,93] proposes a new method for preference aggregation that generalizes the lexicographic combination method • [Rossi et al.,04] study the problem of fairness of preference aggregation systems • [Yager,01] and [Rossi et al.,04] investigates the problem of preference aggregation in the context of MASs

Our approach In contrast, we investigate how to reconcile (a posteriori) preference criteria once they are modified or aggregated. • We consider preference criteria expressible by logic programs, and investigate the problem of revising them via declarative debugging. • We employ an adapted version of the contradiction removal method defined for the class of normal logic programs plus integrity constraints proposed in [*]. [*] L. M. Pereira, C. Damásio, and J. J. Alferes, Debugging by Diagnosing Assumptions. In P. Fritzson (ed.), 1st Int. Ws. on Automatic Algorithmic Debugging, AADEBUG'93, LNCS 749, pp. 58-74. Preproceedings by Linköping Univ., 1993

Language L Let L be a first order language. A normal logic program P over

L is a set of rules and integrity constraints:

A ← L1 , . . . , Ln

(n ≥ 0)

⊥ ← L1 , . . . , Ln where A is an atom, every Li is a literal and ⊥ is an atom denoting contradiction. The meaning of P is given by Well-Founded Semantics. If a literal L belongs to the well-founded model of P, we write P ² L. P is contradictory if P ² ⊥

Preference relations

Given a set N, a preference relation  is any binary relation on N. a  b means that a is preferred to b. Every preference relation  induces an indifference relation ∼ . a and b are indifferent a ∼ b iff a ¨ b and b ¨ a .

Typical properties of  include: - irreflexivity: ∀ x. x ¨ x - asymmetry: ∀ x ∀ y. x  y ⇒ y ¨ x - transitivity: ∀ x ∀ y ∀ z. (x  y ∧ y  z) ⇒ x  z - negative transitivity: ∀ x ∀ y ∀ z. (x ¨ y ∧ y ¨ z) ⇒ x ¨ z - connectivity: ∀ x ∀ y. x  y ∨ y  x ∨ x = y The relation  is: - a strict partial order if it is irreflexive and transitive (hence asymmetric); - a weak order if it is a negatively transitive strict partial order; - a total order if it is a connected strict partial order.

Diagnoses Given a contradictory program P, to revise its contradiction (⊥) we modify P by adding and removing rules. In this framework, the diagnostic process reduces to finding such rules. Given a set C of predicate symbols of L, C induces a partition of P into two disjoint parts: P = Pc ∪ Ps Pc: changeable part,

Ps: stable part

Let D = 〈U, I〉 where U ∩ I = ∅, U ⊆ C and I ⊆ Pc. Then D is a diagnosis for P iff (P-I) ∪ U 2 ⊥. D = 〈U, I〉 is a minimal diagnosis if there exists no diagnosis D2 = 〈U2, I2〉 for P such that (U2 ∪ I2) ⊂ (U ∪ I).

Example: prioritized composition Given two preference relations Â1 and Â2, the prioritized composition  of Â1 and Â2 is defined as: x  y ≡ x Â1 y ∨ ( x ∼1 y ∧ x Â2 y ) x ∼1 y ≡ x ¨1 y ∧ y ¨1 x

Suppose that  is required to be strict partial order. Let:

a Â1 b

b Â2 c c Â2 a ← cond b Â2 a

Then, Â is not a strict partial order. aÂb

a

b

|

bÂc

c

cÂa

Suppose we want to revise only the preference relation Â2 . Three possible revisions : a

b

|

c

a

b

|

c

a

b

|

c

This situation can be formalized as: p2(b,c) p2(c,a) ← cond p2(b,a) Pc

Ps

⊥ ← p(x,x) ⊥ ← p(x,y), p(y,x) ⊥ ← p(x,y), p(y,z), not p(x,z) p(x,y) ← p1(x,y) p(x,y) ← ind1(x,y), p2(x,y) ind1(x,y) ← not p1(x,y), not p1(y,x) p1(a,b) cond

P is contradictory: MP = { . . . , p(a,b), p(b,c), p(c,a), ⊥} P admits three minimal diagnoses: D1 = 〈 {p2(a,c) }, {p2(c,a)←cond} 〉, D2 = 〈 { p2(c,b)}, {p2(b,c)} 〉 D3 = 〈{ }, {p2(b,c), p2(c,a)←cond} 〉

Computing minimal diagnoses To compute the minimal diagnoses of a contradictory program P, we employ a contradiction removal method ( see [*] ) • Based on the idea of revising (to false) some of the default atoms. • A default atom not A can be revised to false by simply adding A to P. • The default atoms not A that are allowed to change their truth value are exactly those for which there exists no rule in P defining A. Such literals are called revisables. • A set Z of revisables is a revision of P iff P ∪ Z 2 ⊥

Example Consider the program P = Pc ∪ Ps

Pc

a ← not b, not c a’ ← not d c←e

Ps

⊥ ← a, a’ ⊥←b ⊥ ← d, not f

with revisables { b, d, e, f }. P is contradictory since MP = { a, a’, ⊥} . The revisions of P are {e}, {d,f}, {e,f}, and {d,e,f}, where the first two are minimal.

Transformation Γ The transformation Γ maps programs over L into equivalent programs that are suitable for contradiction removal. The transformation Γ that maps P into a program P ‘ = Γ( P ) is obtained by applying to P the following two operations: • Add not incorrect (A ← Body) to the body of each rule A ← Body in Pc • Add the rule: p(x1, . . ., xn) ← uncovered( p(x1, . . ., xn) ) for each predicate p with arity n in C, where x1, . . ., xn are variables. Property: Let P be a program over L and L a literal. Then, P ² L iff Γ( P ) ² L

Example: prioritized composition (con’t) Γ( P ) p2(b,c) ← not incorrect(p2(b,c)) p2(c,a) ← cond, not incorrect(p2(c,a)←cond) p2(b,a) ← not incorrect(p2(b,a)) p2(x,y) ← uncovered(p2(x,y))

⊥ ← p(x,x) ⊥ ← p(x,y), p(y,x) ⊥ ← p(x,y), p(y,z), not p(x,z) p(x,y) ← p1(x,y) p(x,y) ← ind1(x,y), p2(x,y) ind1(x,y) ← not p1(x,y), not p1(y,x) p1(a,b) cond

Γ( P ) admits three minimal revisions wrt. the revisables of the form incorrect(.) and uncovered(.) : Z1 = { uncovered(p2(a,c)), incorrect(p2(c,a) ←cond) } Z2 = { uncovered(p2(c,b)), incorrect(p2(b,c)) } Z3 = { incorrect(p2(b,c)), incorrect(p2(c,a) ←cond) }

Property The following result relates the minimal diagnoses of P with the minimal revisions of Γ( P ) . Theorem: A pair D = 〈U, I〉 is a diagnosis for P iff Z = {uncovered(A): A ∈ U} ∪ { incorrect( A ← Body ): A ← Body ∈ I} is a revision of Γ( P ), where the revisables are all the literals of the form incorrect(.) and uncovered(.) . Furthermore, D is a minimal diagnosis iff Z is a minimal revision. To compute the minimal diagnosis of P we consider the transformed program

Γ( P ) and compute its minimal revisions. An algorithm for computing minimal revisions is given in [*].

Selecting minimal diagnosis

A preference revision problem typically has several minimal diagnoses. To select the best diagnoses, one can employ meta-preference information: -

temporal information

-

weights associated to preferences

-

specificity of diagnoses

-

minimality wrt. the number of changes

-

fairness, e.g., from the MAS perspective

Conclusions We have presented an approach to preference revision that is based on a declarative debugging technique. The proposed framework: - is flexible and general: it allows to express any preference criteria and methods for preference aggregation; - gives us an extra level of abstraction by permitting to select the best diagnosis for the problem at hand; - has a correct proof procedure.