Title: Diagnosis with Fault Modes
1Diagnosis with Fault Modes
- Philippe Dague and Yuhong Yan
- NRC-IIT
- Philippe.dague_at_lipn.univ-paris13.fr
- Yuhong.yan_at_nrc.gc.ca
2Diagnosis Using fault modes
- MBD approach provides a framework for diagnosing
(detecting and locating faults) a device from its
correct behavioural model only. - Big advantage w.r.t. techniques based on a priori
knowledge of all failure modes. - Nevertheless, knowledge of likely faulty modes
increases discrimination capacity and may allow
fault identification. - Idea extending the consistency-based diagnostic
framework by using fault modes, but without
requiring their exhaustivity. - Sherlock (de Kleer Williams) and GDE (Struss
Dressler) in 1989.
3Behavioural modes
- In addition to good behaviour G(c), we consider
known faulty behaviours Fi(c) and unknown mode
U(c), all distinct. - U(c) is used to model the non exhaustivity of the
Fis, keeping logical soundness. - Example of an inverter
- Inverter(C) ? AB(C) ? G(C)
- Inverter(C) ? AB(C) ? S0(C) ? S1(C) ? U(C)
- Inverter(C) ? G(C) ? S0(C)
- Inverter(C) ? S1(C) ? U(C)
- G(C) ? (In(C)0 ? Out(C)1) ? (In(C)1 ?
Out(C)0) - S0(C) ? Out(C)0
- S1(C) ? Out(C)1
4Definition of Diagnosis and Conflict
- Diagnosis is an assignment of behavioural mode to
each component, consistent with system
description and observations - SD?OBS?mi(c)c?COMPONENTS ? ?
- Diagnoses can still be computed from minimal
conflicts - A conflict is a set of component behavioural
modes, inconsistent with system description and
observations - SD?OBS?mi(ck) ?
- Minimal conflicts minimal for set inclusion
- Can be computed as nogoods by an ATMS
(assumptions components behavioural modes)
5Computation of Diagnoses
- An assignment ? of behavioural mode to each
component is a diagnosis iff it does not contain
any minimal conflict Ci. - That is, complement of ? in ?modes(c) c ?
COMPONENTS is a hitting set of the collection of
minimal conflicts Ci. - Example the 3-inverter
6The 3-inverter
A
B
C
X
Y
O
I
Space of Diagnoses U 4364
ATMS assumptions 34 12 G(A),S0(A),S1(A),
U(A), G(B), S0(B),
Comparison n components, diagnoses space U with
only good modes 2n with k faulty modes, 1 good
mode, 1 unknown mode (k2)n
7The 3-inverter ATMS label computation (1)
Observation I0
I0,
X1,G(A),S1(A)
X0,S0(A)
Y0,G(A), G(B),S1(A),G(B),S0(B)
Y1,S0(A),G(B),S1(B)
O1,G(A), G(B), G(C), S1(A),G(B), G(C),
S0(B), G(C), S1(C)
O0,S0(A),G(B),G(C),S1(B),G(C),S0(C)
8The 3-inverter ATMS label computation (2)
Observation I0, O0
I0,
X1,G(A),S1(A)
X0,S0(A), G(C),G(B)
Y0,G(A), G(B),S1(A),G(B),S0(B)
Y1,S0(A),G(B),S1(B), G(C)
O1,G(A), G(B), G(C), S1(A),G(B), G(C),
S0(B), G(C), S1(C)
O0,S0(A),G(B),G(C),S1(B),G(C),S0(C)
O0,
9The 3-inverter 4 minimal conflicts
- 4 minimal conflicts Ci G(A), G(B),
G(C),S1(A),G(B), G(C), S0(B), G(C), S1(C) - Diagnoses assign modes to the components,
?mi(A), mj(B), mk(C) - Diagnoses do not contain any of the 4 minimal
conflicts - ?Ci, (Ci ? ?) ? Ci ? (U\?)??
- ? (U\?) hits any Ci
- ? (U\?) is hitting set of conflicts
10The 3-inverterhitting sets
- The hitting sets of 4 minimal conflicts Ci
G(A), G(B), G(C),S1(A),G(B), G(C), S0(B),
G(C), S1(C) are - G(C),S1(C)
- G(B),S0(B),S1(C)
- G(A),S1(A),S0(B),S1(C)
11The 3-inverter diagnoses
From hitting set G(C),S1(C) mi(A),mj(B),S0(C)
or mi(A),mj(B),U(C)
From hitting set G(B),S0(B),S1(C) mi(A),S1(B),
G(C) or mi(A),U(B),G(C)
From hitting set G(A),S1(A),S0(B),S1(C) S0(A),
G(B),G(C) or U(A),G(B),G(C)
Total 42 diagnoses out of 64 in diagnoses space
12The 3-inverter compare with using only good mode
G() ? AB() U() ? AB()
For the diagnoses mi(A),mi(B),S0(C) ?
X mi(A),mi(B),U(C) ? G(A),G(B),U(C) ?
AB(A),AB(B),AB(C) ? C
G(A),U(B),U(C) ? AB(A),AB(B),AB(C) ? B,C
U(A),G(B),U(C) ? AB(A),AB(B),AB(C) ?
A,C
U(A),U(B),U(C) ? AB(A),AB(B),AB(C) ? A,B,C
mi(A),S1(B),G(C) ? X mi(A),U(B),G(C) ?
G(A),U(B),G(C) ? AB(A),AB(B),AB(C) ? B
U(A),U(B),G(C) ?
AB(A),AB(B),AB(C) ? A,B
S0(A),G(B),G(C) ? X U(A),G(B),G(C) ?
AB(A),AB(B),AB(C) ? A
minimal diagnoses are underlined
13The Probability of Diagnoses
- Diagnoses space is large even for a small problem
when the faulty modes are considered - The complete diagnoses are able to get but not
necessary for practical work - Only the most probable diagnoses are needed to be
found the leading diagnoses (a subset of all the
diagnoses)
14The criteria of the leading diagnoses
- All leading diagnoses have higher probability
than all non-leading diagnoses - Select no more than k1(5) leading diagnoses
- Probability gt Max(pi)/k2
- ?(pi)gtk3, k30.75, stop to select pi when the sum
is greater than k3
15Focus in ATMS
- Focuses are the leading diagnoses
- Only consider the environments ? one of the
focuses - Best first search to get the focus select the
most probable diagnoses
16Probabilities of Diagnoses
- Given prior probability p(mi(ck))
- The prior probability of a diagnosis ?i is
- p(?i) ?mj??i p(mi(ck))
- Update the posterior probability after a new
measurement - p(?ixivik) p(xivik?i)p(?i)/p(xivik)
- p(xivik?i) 0 if ?i ?Rik
- 1 if ?i ?Sik
- 1/m if ?i ?Ui
- p(xivik) p(Sik) p(Ui)/m
Rik Sik? Ui Sikxivik Ui xi? Others
x?vik
17The cost of measurements
- Shannon entropy
- H - ?pilogpi
- The expected entropy He(xi) after measure
quantity xi is - He(xi) - ?p(xivik)H(xivik)
- H(xivik)
- H(xivik) - ?pllogpl
- He(xi) H?p(xivik)logp(xivik)p(Ui)logm
- (xi) ?p(xivik)logp(xivik)p(Ui)logm1
18Simplified Idea
- Assume components fail independently with equal
very small probability ? - p(?i) ??i(1- ?)n-?i? ??i
- ?i the number of components in ?i
- After multiple probe E,
- p(?iE) ?q /(Nmfl)
- flnumber of times ?i failed to predict a
measurement outcome in the sequence diagnosis - qsize of ?i N normalization
- If ? ltlt1/mfl, we can keep only minimal
cardinality diagnoses and N ?q ?(1/mfl) - p(?iE) 1/mfl ?(1/mfl)
- It is independent from ?
19Cost of Measurements
- (xi) is to minimize ?p(Sik)p(Ui)/mlogp(Sik)
p(Ui)/mp(Ui)logm - (??p(xivik)logp(xivik)p(Ui)logm1)
- This function is independent of ? and depends
only of fl - Special case diagnoses (of minimal cardinality)
always predict outcomes gt p(Ui)0 and fl 0 gt - P(?iE) 1/minimal cardinality diagnoses
1/N - Minimize cost
- ?p(Sik)logp(Sik) ?(Cik/N)log(Cik/N)
- ?minimize ?(Cik)log(Cik)
- Where Cik number of diagnoses (in N)
predicts that xivik
20Example ploybox
- 2 single fault diagnoses M1 and A1
- M1?SD?OBSX4,Y6,Z6
- A1?SD?OBSX6,Y6,Z6
- (X) 1ln11ln10, the best!
- (Y) 2ln2 1.4
- (Z) 2ln2 1.4