View
216
Download
2
Category
Tags:
Preview:
Citation preview
A Preliminary Study on Reasoning About Causes
Pedro Cabalar
AI Lab., Dept. of Computer Science
University of Corunna, SPAIN.
2
Introduction
• Causality in Reasoning about Actions:– causal assertions (McCarthy 69). – Yale Shooting Problem:
causal minimizations (Lifschitz 87) (Haugh 87).– Ramification Problem:
(McCain&Turner 95) (Lin 95) (Thielscher 97) (Denecker et al. 98) (Schwind 99) (Shanahan 99) (Giunchiglia et al. 02).
• Causality = technical solution to ramif. problem butno real interest about causal information.
3
Introduction
• Example: we can use it to conclude 'dead' after 'shoot' but not to express that the shot was the cause for 'dead'.
• Facts like this not trivial: indirect effects, concurrence, etc. They should be derived from our causal rules.
• We present a mechanism to obtain the causes of each derived formula in terms of subsets of the performed actions.
5
A motivating example
sw(1) sw(2) light
• How did we reach this (successor) state?
• "Who was responsible" of turning off the light?
• Let us study some possible performed actions ...
7
A motivating example
sw(1) sw(2) light
• Trivial case: we had opened sw(1) while sw(2) closed ...
• Toggling sw(1) has caused light.
9
A motivating example
sw(1) light
• 2nd case: we closed sw(2) while sw(1) open ...
• The light persists off (no cause for light).
sw(2)
10
A motivating example
sw(1) light
• Interesting case: toggling both switches simultaneously.
sw(2)
11
A motivating example
sw(1) sw(2) light
• Interesting case: toggling both switches simultaneously.
• Toggling sw(1) has caused light (after all, sw(2) has been closed). Note that light remains off, but caused!
12
Another example
sw(1) sw(2) light
• Consider now this state. If we close both switches...
• both actions together cause light to be on.
13
Another example
sw(1) sw(2)light
• whereas, toggling both switches again...
• any of the actions alone is a cause for light off.
14
Summary• Any change of value is due to causation. However, the opposite
does not hold.
• An effect may be equally due to different causes, and each cause can be the concurrent combination of several actions.
• Our goal: obtain causal facts, avoiding:sw(1) causes light if sw(2) sw(1),sw(2) causes lightsw(2) causes light if sw(1)
• in favor of:sw(1) sw(2) causes light
16
Syntax
• Symbols S = A F – Actions A ={toggle(1), toggle(2)} – Fluents F ={sw(1),sw(2)}
• Compound actions 2A. Examples: {toggle(1)}, {toggle(2)}, {toggle(1), toggle(2)}, Ø
• Notation:a, b, ... = actions A, B, ... = compound actions f, g, ... = fluents , , ... = sets of compound actions p, q, ... = symbols
17
Syntax
• Formulas: L denotes the language formed with
, p, , , , A
A "compound action A has caused to hold"
• Usual derived operators , , , , plus:
C A N C
A 2A
18
Semantics
= standard truth valuation : S { t, f }
F = state A = performed (compound) action
= causal relevance relation 2A S Example: ( {toggle(1), toggle(2)}, light ) means:
{toggle(1), toggle(2)} has caused truth value (light).
can be seen as a set of functions A : S { t, f } so that
for instance, A(light) = t iff (A, light) .
Interpretation ,
19
Semantics
• Truth () for propositional connectives is standard
() will be a set of comp. actions pointing out:
A () iff A() = t
• The valuation w.r.t. I is defined as vI : L { t, f } 2A A
and follows the next rules...
Let I=,
20
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
"Short-circuit" behavior when false + persistent
21
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
Truth + persistent = "copy" the other conjunct
22
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
one conjunct false + caused explains whole conjunction, when the other conjunct is true
23
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
both false + caused: any of their causes isalso a cause for the conjunciton
24
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
both true + caused: (any) union of cause in with cause in is a cause for the conjunciton
25
Semantics
f t t f
f Ø f t t Ø
f Ø f Ø f Ø f Ø f Ø
f f Ø f ( ) f f
t f Ø f t ( ) t
t Ø f Ø f t t Ø
, Ø
vI () f Ø
Areas for and .
26
Semantics
vI (A ) t {A} if vI () = t and A
f {Ø} otherwise
We add a pair of restrictions:
(a) {{a}} if (a) = t
{Ø} otherwise1 - For any atomic action a,
2 - Axiom: A a for any comp. action A, and any a A.
27
Some properties• Disjunction table: change t by f and vice versa.• Relevance in tautologies:
p p cannot be just replaced by .• "Unfolding" properties:
A ( ) (A N ) (A N ) (1) A ( ) (A N ) (A N )
(A1 A2 ) (2)
A1A2 = A
N ( ) N N (3) N ( ) N N (4)
29
LP translation
• Dynamic action domains introduce new requirements:
– NMR for inertia default,
– directional behavior for causal rules.
• A simple solution: we follow (Gelfond&Lifschitz93) methodology:
– high level action language, plus
– translation into Logic Programming (answer sets).
30
Action Language
• Causal rules: causes if after classical formula, fluent literal, and fluent formulas.
• Intuitive meaning: once and proved true, check whether A holds for some A. If so, derive A.
• Abbreviation: g:= if after
• Translation into LP use properties (1)-(4) to "unfold" causal dependences (details in the paper).
causes g if after causes g if after
31
LP translation• Example: switches scenario
toggle(N) causes sw(N) after sw(N) toggle(N) causes sw(N) after sw(N)light := sw(1) sw(2)
• some generated program rules:c({t(1)},light) :- c({t1},sw(1)), n(sw(2)).c({t(2)},light) :- c({t2},sw(2)), n(sw(1)).c({t(1),t(2)},light) :- c({t1},sw(1)), c({t2},sw(2)).c({t(1)},-light) :- c({t1},-sw(1)), -n(-sw(2)).c({t(2)},-light) :- c({t2},-sw(2)), -n(-sw(1)).
• other axioms:c(Lit) :- c(A,Lit). g :- g', not c(-g). Lit :- c(Lit). -g :- -g', not c(g). n(Lit) :- Lit, not c(Lit).
33
Related work
• Transformation of causal expressions: Event Calculus (Shanahan 99), inductive causation (Denecker et al.98).
• Use of influence relations (which action may affect which fluent value):
– (Thielscher 97) constraints+influence = causal rules.
– (Castilho et al.99) use influence relations as primitive information (problem of elaboration tolerance).
• Use of a "caused" flag: caused predicate (Lin 95), occlusion (Sandewall 94), ...
34
Related work
• But the most related approach is Pertinence Logic, L2, (Otero97), which has been used as a starting point.
• Two valuation functions: truth {t, f} + pertinence {p, n}.Pertinence = flag caused/non-caused, regardless the actions responsible for that.
• When limiting to unique action, current approach degenerates into L2.
Exception: and become pertinent when any of their
operands are so, regardless their truth.
36
Conclusions
• Causal "introspection": derive the reasons for each effect.
• We could even go further, and use this in rule conditions: A dead causes jail(peter) if perfomed(peter, A)
• Allows characterizing causally different domains apparently equivalent w.r.t. truth-value transitions (see Pearl's circuit example (Pearl00) in the paper).
• A lot of topics for future work: causes minimization, nesting of causal operators, delayed effects, ...
Recommended