1.21k likes | 1.37k Views
Logical representation of preference & nonmonotonic reasoning Jérôme Lang Institut de Recherche en Informatique de Toulouse CNRS - Université Paul Sabatier - Toulouse (France). About the meaning of preference The need for compact representations and the role of logic
E N D
Logical representation of preference & nonmonotonic reasoning Jérôme Lang Institut de Recherche en Informatique de Toulouse CNRS - Université Paul Sabatier - Toulouse (France) • About the meaning of preference • The need for compact representations and the role of logic • Some logical languages for compact preference • representation (a brief survey with examples) • Preference representation and NMR • Other issues
About the meaning of preference • The need for compact representations and the role of logic • Some logical languages for preference representation • Preference representation and NMR • Other issues
preference • has different meanings in different communities • in economics / decision theory: • preference = relative or absolute satisfaction • of an individual when facing • various situations
preference • has different meanings in different communities • in economics / decision theory: • preference = relative or absolute satisfaction • of an individual when facing • various situations • in KR / NMR • preference = [weak] [strict] order • with various meanings • A is more plausible / believed than B • preferential models, preferential entailment etc. • rule A has priority over rule B
« preference » • has different meanings in different communities • in economics / decision theory: • preference = relative or absolute satisfaction • of an individual when facing • various situations • in KR / NMR • preference = [weak] [strict] order • with various meanings • A is more plausible / believed than B • preferential models, preferential entailment etc. • rule A has priority over rule B relative (ordinal) uncertainty control
binarypreferences S = G G cardinal preferences u : S utility function ordinal preferences preorder on S fuzzy preferences R fuzzy relation on S R : S S [0,1] Preference structure: represents the preferences of an agent over a set S of possible alternatives
About the meaning of preference • The need for compact representations + the role of logic • Some logical languages for preference representation • Preference representation and NMR • Other issues
Complex domains: a state is defined by a tuple of values for a given set of variables Example : preferences on airplane tikcets option = (destination, price, dates, number-changes) preferentially interdependent variables Combinatorial explosion: prohibitive number of alternative 50 destinations, 10 price ranges, 10 departure dates and 10 return dates, 0/1/2 changes 150 000 alternatives Need for concise representations for preferences
Representation and elicitation of preferences agent (user, client…) INTERACTIVE ELICITATION concise form REPRESENTATION preference relation on S preferred alternatives
Why (propositional) logic? • prototypical compact & structured language • good starting point • expressive power • + closeness to human intuition • elicitation issues • efficient and well-studied algorithms • (+ tractable fragments etc.) • optimization issues (find optimal alternatives)
About the meaning of preference • The need for compact representations + the role of logic • A brief survey on propositional logical languages • for preference representation • Preference representation and NMR • Other issues
S = { | K } Some logical languages for preference representation 1a. “Basic” propositional representation K propositional formula set of possible alternatives 2 positions maximum to be filled 4 candidates A,B,C,D K = ( A B) ( A C) ( A D) ( B C) (B D) ( C D) K = [ 2 : A, B, C, D]
Some logical languages for preference representation 1a. “Basic” propositional representation K B = {1, …, n} set of goals K 1 … n such that « good » states K impossible states K (1 … n ) such that « bad » states
Some logical languages for preference representation 1a. “Basic” propositional representation K = [ 2 : A, B, C, D] G = { (A B), (B C), D } I would like to hire A or to hire B; if B is hired then I would prefer not to hire C; I would like not to hire D (A,B, C, D) hire A and B (A, B, C, D) hire A and C (A, B, C, D) hire A only ( A,B, C, D) hire B only « good » states
Some logical languages for preference representation 1b. “Basic” propositional representation + cardinality K B = {1, …, n} set of goals For all Mod(K), uB() = | {i, i } |
(A,B) (A, C) (A) (B) (A, D) (B, C) (B, D) (C) ( ) (C, D) (D) Some logical languages for preference representation 1b. “Basic” propositional representation + cardinality K = [ 2 : A, B, C, D] ; G = { (A B), (B C), D } u()=3 u()=2 u()=1
Some logical languages for preference representation 1c. “Basic” propositional representation + inclusion K B = {1, …, n} set of goals For all , ’ Mod(K) ’ if and only if { i , j } i } { j , ’
(A,B) (A, C) (A) (B) (C) ( ) (B, C) 12 23 13 (C, D) (D) Some logical languages for preference representation 1c. “Basic” propositional representation + inclusion K = [ 2 : A, B, C, D] ; G = { (A B), (B C), D } 2 3 1 123 (A, D) (B, D) 2
Some logical languages for preference representation 2. Propositional logic + weights K B = { (1, x1 ), …, (n , xn ) } I propositional formula xi > 0 reward xi * xi < 0 penalty Example: additive weights For all Mod(K), xi uB() = i 1 .. N i
Some logical languages for preference representation 2. Propositional logic + weights K B = { (1, x1 ), …, (n , xn ) } I propositional formula xi > 0 reward xi * xi < 0 penalty Example: additive weights For all Mod(K), other aggregation functions xi uB() = i 1 .. N i
Some logical languages for preference representation 2. Propositional logic + weights K B = { (1, x1 ), …, (n , xn ) } I propositional formula xi > 0 reward xi * xi < 0 penalty For all Mod(K), uB() = F ({xi | , i 1 .. N} ) i
i Some logical languages for preference representation 2. Propositional logic + weights K B = { (1, x1 ), …, (n , xn ) } I propositional formula xi > 0 reward xi * xi < 0 penalty For all Mod(K), uB() = F ( G ({xi |, i 1 .. N, xi > 0} ) , H ({xj |, i 1 .. N , xi < 0} ) ) j bipolarity
Some logical languages for preference representation 2. Propositional logic + (additive) weights K = [ 3 : A, B, C, D, E] ; G = { (B C, +5) ; (A C, +6) ; (A B, -3) ; (D E, -3) ; (D, +10) ; (E, +8) ; (A, +6) ; (B, +4) ; (C, +2) } only B and C can teach logic only A and C can teach databases A and B would be in the same group (to be avoided) idem for D and E D is the best candidate E is the second best etc.
Some logical languages for preference representation 2. Propositional logic + weights = (A, D, E,B, C) K = [ 3 : A, B, C, D, E] ; G = { (B C, +5) ; (A C, +6) ; (A B, -3) ; (D E, -3) ; (D, +10) ; (E, +8) ; (A, +6) ; (B, +4) ; (C, +2) } +6 -3 u() = +27 +10 +8 +6
Some logical languages for preference representation 2. Propositional logic + weights ’ = (C, D, E,A, D) K = [ 3 : A, B, C, D, E] ; G = { (B C, +5) ; (A C, +6) ; (A B, -3) ; (D E, -3) ; (D, +10) ; (E, +8) ; (A, +6) ; (B, +4) ; (C, +2) } +5 +6 u(’) = +31 +10 +8 +2
Some logical languages for preference representation 2. Propositional logic + weights u() K = [ 3 : A, B, C, D, E] ; G = { (B C, +5) ; (A C, +6) ; (A B, -3) ; (D E, -3) ; (D, +10) ; (E, +8) ; (A, +6) ; (B, +4) ; (C, +2) } 31 (C,D,E) (A,C,D) (A,B,D) (A,D,E) (B,C,D) (A,C,E) (B,D,E) (C,D) 29 28 27 24 23
increasing priority Some logical languages for preference representation 3a. Propositional logic + priorities K B1 … Bp B = B1, …, Bp stratification of B K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, (D E), (D E)} 1 2 3 4 B2 = {D,A} B3 = {E} B4 = {B, C} 5 6 7 8 9
3a. Propositional logic + priorities K = [ 3 : A, B, C, D, E] ; B1 = {B C, A C, (A B), (D E)} 1 2 3 4 B2 = {D,A} B3 = {E} B4 = {B, C} 5 6 7 8 9 « Best-out » ordering u () = min i, violates at least a formula of Bi ( = + if there is no such i)
3a. Propositional logic + priorities = (A, B, C,D, E) K = [ 3 : A, B, C, D, E] ; B1 = {B C, A C, (A B), (D E)} 1 2 3 4 u () = 1 B2 = {D, A} B3 = {E} B4 = {B, C} 5 6 7 8 9 « Best-out » ordering u () = min i, violates at least a formula of Bi
3a. Propositional logic + priorities = (A, C, D,B, E) K = [ 3 : A, B, C, D, E] ; B1 = {B C, A C, (A B), (D E)} 1 2 3 4 u () = 3 B2 = {D,A} B3 = {E} B4 = {B, C} 5 6 7 8 9 « Best-out » ordering u () = min i, violates at least a formula of Bi
3a. Propositional logic + priorities K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 « leximin » ordering [Benferhat et al. 93] w > w’ iff (w satisfies more formulas of B1 than w’) or (w and w’ satisfy the same number of formulas of B1, and w satisfies more formulas of B2 than w’) or (w et w’ satisfy the same number of formulas of B1 and of B2, and w satisfies more formulas of B3 than w’) etc.
3a. Propositional logic + priorities: leximin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 0 1 1 (A,C) 3 1 1 0 (A,D) 3 (B,C) 3 0 0 2 (C,D) 3 1 0 1
3a. Propositional logic + priorities: leximin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 0 1 1 (A,C) 3 1 1 0 (A,D) 3 (B,C) 3 0 0 2 (C,D) 3 1 0 1 (D,E) 1 1 1 0
3a. Propositional logic + priorities: leximin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 0 1 1 (A,C) 3 1 1 0 (A,D) 3 (B,C) 3 0 0 2 (C,D) 3 1 0 1 (D,E) 1 1 1 0
3a. Propositional logic + priorities: leximin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 0 1 1 (A,C) 3 1 1 0 (A,D) 3 (B,C) 3 0 0 2 (C,D) 3 1 0 1 (D,E) 1 1 1 0
Some logical languages for preference representation 3b. Propositional logic + ordered disjunction K [Brewka, Benferhat & Le Berre 02] Y= (j1 j2 …jp ) ideally j1; otherwise (sub-ideally) j2 otherwise j3 etc. B = Y1, …, Yp
Some logical languages for preference representation 3b. Propositional logic + ordered disjunction K Y= (j1 j2 …jp ) ideally j1; otherwise (sub-ideally) j2 otherwise j3 etc. For all Mod(K), j1 disu(, Y) = 0 if j1 … ji-1 ji = i if = p+1 if j1 … jn
For all , ’ Mod(K), >B ’ iff disu (, B) <leximin disu (’, B) Some logical languages for preference representation 3b. Propositional logic + ordered disjunction K B = Y1, …, Yp disu (, B) = disu (, Y1), …, disu (, Yp)
Some logical languages for preference representation 3b. Propositional logic + ordered disjunction K B = F1, …, Fp K = [ 2 : A, B, C, D, E] ; = (A,E) ’ = (A,B) F1 : (B C) (B C) 3 2 F2 : (A C) (A C) 2 2 F3 : (D E) 1 1 F4 : (A B) 1 2 F5 : D A E B C 2 2 F5 : (= 2 : A,B,C,D,E) (= 2 : A,B,C,D,E) 1 1
Some logical languages for preference representation 3b. Propositional logic + ordered disjunction K B = F1, …, Fp >B K = [ 2 : A, B, C, D, E] ; = (A,E) ’ = (A,B) F1 : (B C) (B C) 3 2 F2 : (A C) (A C) 2 2 F3 : (D E) 11 F4 : (A B) 1 2 F5 : D A E B C 2 2 F5 : (= 2 : A,B,C,D,E) (= 2 : A,B,C,D,E) 11
3. Propositional logic + priorities K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B, C} 5 6 7 8 9 « discrimin » ordering [Brewka 89] strict inclusion w > w’ iff { j B1, w satisfies j } { j B1, w’ satisfies j } or ( { j B1, w satisfies j } = { j B1, w’ satisfies j } and { j B2, w satisfies j } { j B2, w’ satisfies j }) etc.
3. Propositional logic + priorities : discrimin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 - 6- 9 (A,C) 123- (B,C) 123- - -- 89 (A,D) -234 5 -- 9 (C,D) 12-4 5 -- 9
3. Propositional logic + priorities: discrimin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 - 6- 9 (A,C) 123- (B,C) 123- - -- 89 (A,D) 2--4 5 -- 9 (C,D) 12-4 5 -- 9
3. Propositional logic + priorities: discrimin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 - 6- -9 (A,C) 123- (B,C) 123- - -- 89 (A,D) -234 5 6- -- (C,D) 12-4 5 -- -9
3. Propositional logic + priorities: discrimin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 incomparable - 6- -9 (A,C) 123- (B,C) 123- - -- 89 (A,D) -234 5 6- -- (C,D) 12-4 5 -- -9
3. Propositional logic + priorities: discrimin ordering K = [ 2 : A, B, C, D, E] ; B1 = {B C, A C, A B, D E} 1 2 3 4 B2 = {D} B3 = {A,E} B4 = {B,C} 5 6 7 8 9 B1 B2 B3 B4 leximin discrimin best-out no - 6- -9 (A,C) 123- yes yes (B,C) no no yes 123- - -- 89 (A,D) -234 5 6- -- yes yes yes yes no yes (C,D) 12-4 5 -- -9
Some logical languages for preference representation 4. Propositional logic + distances • K • B = 1, …, p • d: S S • d (, ’) = d (’, ) • d (, ’) = 0 iff = ’ • (example: d = Hamming distance) • d (, i ) = min {(, ’) | ’ satisfies K i } • d (, B) = F (d (, 1), d (, 2), …, d (, n) ) • ’ iff d (, B) d (’, B) distance-based merging
Some logical languages for preference representation 5. « ceteris paribus » preferences [von Wright 63; Hansson 66; Doyle & Wellman 91] g : j > y For any two states w, w’ such that - w satisfies g j y - w’satisfies g j y - w and w’coincide on « irrelevant » variables then >B ’ (+ transitive closure)
Some logical languages for preference representation 5. « ceteris paribus » preferences g : j > y For any two states w, w’ such that - w satisfies g j y - w’satisfies g j y - w and w’coincide on « irrelevant » variables then >B ’ (+ transitive closure) e.g. variables outside Var (g) Var (j) Var (y) (more sophisticated definitions are possible)
5. « ceteris paribus » preferences K = { (coffee tea) } B = {coffee: sugar > sugar ; tea: sugar > sugar ; T : coffee > tea > coffee tea ; T : croissant > croissant } (coffee, sugar, croissant) (coffee, sugar, croissant) (coffee, sugar, croissant) (coffee, sugar, croissant) (tea, sugar, croissant) (tea, sugar, croissant) (tea, sugar, croissant) (tea, sugar, croissant) (coffee, tea, , croissant) (coffee, tea, , croissant)