Explanation and Diagnoses Thomas Thomas & Jansen Orfan.
-
Upload
vanesa-watling -
Category
Documents
-
view
225 -
download
1
Transcript of Explanation and Diagnoses Thomas Thomas & Jansen Orfan.
Previously...
Deduction P → Q P Therefore Q.
Induction Every P seen comes with a Q Qs sometimes occur without P. Maybe P → Q
And now...
Abduction P → Q Q Posit: P?
Example. If it rained, the grass is wet. The grass is wet. I bet it rained.
Diagnosis
Might have: DiseaseA ^ someQualifiers → SymptomsA
The following is unlikely: SymptomsA ^ someQualifiers → DiseaseA
We want an explanation for symtoms, we won't be able to know for certain a disease.
Explanation
So, what do we want in an explanation? A is sufficient to account for B.
KB U {A} |= B or KB |= (A → B) A is consistent with the KB A is as simple and parsimonious as possible A is in the the appropriate vocabulary
The abducibles
Prime Implicates
So how do we get an explanation out of a KB? A clauce c is a prime implicate of a KB iff
KB |= c For every proper subset c' of c, it is not the
case that KB |= c' We can use these implicates to form
explanations for facts.
Prime Implicates Continued
KB: [(p ^ q ^ r > g), (~p ^ q > g), (~q ^ r > g)] Convert to CNF...
[(~p v ~q v ~r v g), (p v ~q v g), (q v ~r v g)] Resolve to get
(p v ~q v g), and (~r v g) These are entailed by the KB but no subset of
them are entailed. So they are among our prime implicants.
Prime Implicants Continued.
So if we want an explanation for g. Find all the prime implicates containing g.
(p v ~q v g), (~r v g), (g v ~g) Remove the atom g.
(p v ~q), (~r), (~g) Negate the remaining clauses.
(~p ^ q), (r), (g)
Unfortunately
Exponentially many prime implicants. Worst case it's every possible combination of
terms. (a v b) (a v c) (a v d) (b v c) (b v d) (c v d) Could all be prime implicants.
So we can't realistically precompute them without knowing what we're trying to explain.
Drinks Example 1
KB
Vodka_Tonic → Vodka ^ Tonic Black_Russian → Vodka ^ Coffee_Liqueur White_Russian → Vodka ^ Coffee_Liqueur ^ Cream Whiskey_Sour → Whiskey ^ Lemon Irish_Coffee → Whiskey ^ Coffee Rum&Coke → Rum ^ Cola
I know I will be drinking a mixed drink tonight and my bar is currently stocked with Whiskey, Lemon, Coffee, and Rum. Given only these recopies, what might I be able to make?
Drinks Example 1
β= Whiskey V Lime V Lemon V Coffee
I will be drinking something
Start by finding the relevant prime implicants
~Irish_Coffee V (Whiskey ^ Coffee)
~Whiskey_Sour V (Whiskey ^ Lemon)
~Rum&Coke V (Rum ^ Cola)
{Whiskey V ~Whiskey}, {Rum V ~Rum} etc.
Remove anything that implies β
~Irish_Coffee
~Whiskey_Sour
~Rum&Coke V Cola
{~Whiskey}, {~Rum}, etc
Drinks Example 1
Negate
Irish_Coffee
Whiskey_Sour
Rum&Coke ^ ~Cola
Contradiction! (Rum&Coke → Cola) {Whiskey}, {Rum}, etc
Remove any explanation not conforming to the vocabulary H
Since I plan on drinking a mixed drink, H is all of the mixed drinks
Irish_Coffee
Whiskey_Sour
Drinks Example 2
KB Vodka_Tonic → Vodka ^ Tonic Black_Russian → Vodka ^ Coffee_Liqueur White_Russian → Vodka ^ Coffee_Liqueur ^
Cream Whiskey_Sour → Whiskey ^ Lemon Irish_Coffee → Whiskey ^ Coffee Rum&Coke → Rum ^ Cola
β= Vodka V Coffee_Liqueur V Cream V Coffee
Drinks Example 2
Start by finding the relevant prime implicants
Vodka_Tonic → Vodka ^ Tonic
Black_Russian → Vodka ^ Coffee_Liqueur
White_Russian → Vodka ^ Coffee_Liqueur ^ Cream
Irish_Coffee → Whiskey ^ Coffee
{Vodka V ~Vodka}, etc.
Remove anything that implies β
~Irish_Coffee V Whiskey
~Vodka_Tonic V Tonic
~Black_Russian
~White_Russian
~Irish_Coffee V Whiskey
{~Vodka}, etc.
Drinks Example 2
Negate
Irish_Coffee ^ ~Whiskey
Vodka_Tonic ^ ~Tonic
Black_Russian
White_Russian
Irish_Coffee ^ ~Whiskey
{Vodka}, etc.
Remove any explanation not consistent with KB or conforming to the vocabulary H
Black_Russian
White_Russian
Circuits in Logic
Components AndGate(a1), XorGate(b1), OrGate(o1) fullAdder(f)
Connectives In1(b1) = in1(f), in1(b2) = out(b1)
Normal behavior AndGate(x) ^ ~Abnormal(X) =>
out(x) == and(in1(x), in2(x))
Fault Model
Then we might have a model for abnormal behavior.
Short Circuit: [OrGate(x) v XorGate(x)] ^ Abnormal(x) =>
out(x) = in2(x)
Abductive Diagnosis
So we're given. The previous KB Some input settings
in1(f) = 1, in2(f) = 0, in3(f) = 1 Some output observations
out1(f) = 1, out2(f) = 0
We want an A such that KB U settings U {A} |= observations
Consistency-Based Diagnosis
As before, we're given... The KB, some input settings, and some output
observations This time we want a set of components D such
that the following two sets are consistent. {ab(c) | c is in D} U {~ab(c) | c is not in D}
What does this mean? KB U settings U observations
Differences
Abductive diagnosis requires a fault model Only finds those errors that are in the fault
model. Consistency based can use a fault model, but
doesn't require it. Checks every fault model that is consistent
with the given one. Abductive diagnosis gives a much stronger
claim. But how to calculate?
Calculation
x2 a1 a2 o1 entailed? consistent?1 1 1 1 no yes1 1 1 0 no yes1 1 0 1 no yes1 1 0 0 no yes1 0 1 1 yes yes1 0 1 0 no yes1 0 0 1 yes yes1 0 0 0 yes yes0 1 1 1 no yes
Calculation Continued.
All gates behaving abnormally is always consistent with the output but not helpful.
Remember that we're interested in minimal sets. By default, nothing is wrong.
So we would prefer just b2 being abnormal As given, we only have a fault model for short
circuits on 'or' and 'xor' gates. So we cannot entail anything about other faults or about other gates.
Possible Extensions
Variables and Quantifiers Could we return variables or predicates rather
than atoms? ie. All canaries rather than Tweety Bird.
Propabilities Could simpler be a part that is more likely to
fail than some other part? Could X make Y likely?
Extensions Continued
Negative Evidence So far we've insisted that explanations entail
the thing to be explained. Could we accept an explanation that does not
entail fever as long as it didn't entail ~fever. IE bird(x) explains flies(x)
Other Applications
Object Recognition Model ^ camera → image. Would like to recover model.
Hypothetical Reasoning What would I have to be told to believe that B
is true? What would I learn if I were told that A is true?
Exersise
Write sentences describing this circuit – its coomponents, connectivity, and normal behavior.
Write a sentence for a fauilt model saying that a faulty inverter has it's output the same as its input.
Assuming the fault model and that the output is 1 given inputs of 0 and 1, generate the three abductive explanations for this behavior.
Generate the three consistency based diagnoses for thie circuit under the same conditions.
Compare the abductive and consistency based diagnoses and explain informally why they are different.