Title: Fundamentals of ModelBased Diagnosis
1Fundamentals of Model-Based Diagnosis
- Johan de Kleer
- James Kurien
Safe Process 6/11/2003
2Basic Underlying Assumptions
- Physical system
- comprised of components
- desired function
- design achieves function
- system is correct instance of design
- All malfunctions caused by faulty component(s)
- Behavioral information
- only indirect evidence
3Model-Based DX Tasks
- Detect faulty system behavior
- Identify the faulty system components
- Identify additional system evidence
- more observations (troubleshooting)
- change inputs
- Repair the system
- Reconfigure the system
- FMEA construction
- Repair manual production
- Write embedded controller software
4Observations
Replace R6
Diagnoses Repairs Actions
Design structural description
Diagnostic Reasoner
Domain Knowledge Component Models
5Rule-based DX
- Predefined set of possible faults
- Predefined set of possible symptoms
- Predefined relations among them
- Does not generalize
- Is not robust
If gram stain of the organism is gram negative,
and the morphology of the organism is rod, and
the aerobicity of the organism is anaerobic, then
there is evidence (.7) that the identify of the
organism is Bacteriodes Mycin.
6Achievements of Model-Based DX
7Speed up due to new algorithms
Slowdowns due to additional inferences
Performance
SingleFaults Multiple Faults Fault Modes
Probing Dynamics Control Hybrid Systems
Coverage
8A Simple Expository Example
9A Simple Expository Example
10A Simple Expository Example
X
6
F
M1
A1
Y
M2
G
A2
Z
M3
11A Simple Expository Example
X
6
F
M1
A1
6
Y
M2
G
A2
Z
M3
12A Simple Expository Example
X
6
F
F
M1
A1
12
6
Y
M2
G
A2
Z
M3
13A Simple Expository Example
X
6
F
F
M1
A1
12
6
Y
M2
G
A2
Z
M3
6
14A Simple Expository Example
X
6
F
F
M1
A1
12
6
Y
M2
G
A2
12
Z
M3
6
15A Simple Expository Example
X
6
10
F
F
M1
A1
12
6
Y
M2
12
G
A2
12
Z
M3
6
16Observations
Design structural description
Diagnostic Reasoner
Diagnoses
A
Compositional NFIS
Domain Knowledge Component Models
17Constraint Suspension
X
6
10
F
F
M1
12
6
Y
M2
12
G
A2
12
Z
M3
6
18Constraint Suspension
X
6
10
F
F
M1
A1
6
Y
M2
12
G
A2
12
Z
M3
6
Remove constraints for A1 eliminates the
discrepency, so A1 is a diagnosis.
19Constraint Suspension
X
6
10
F
F
M1
A1
6
Y
M2
12
G
A2
12
Z
M3
6
Remove constraints for A1 eliminates the
discrepency, so A1 is a diagnosis.
20Constraint Suspension
X
6
10
F
F
M1
A1
12
6
Y
M2
12
G
A2
12
Z
M3
6
Removing constraint for M2 does not eliminate
the discrepency, so M2 is a diagnosis.
21Constraint Suspension
- Very inefficient
- Scales badly to multiple faults
- Informal
22Formal Definition of System
23Use of Abnormal Predicate
24Syntax of Diagnoses
25Definition of Diagnosis
26(No Transcript)
27(No Transcript)
28Conflicts
29From Conflicts to Diagnoses
30A Simple Expository Example
X
6
F
M1
A1
Y
M2
G
A2
Z
M3
31A Simple Expository Example
X
6
F
M1
A1
6
Y
M2
G
A2
Z
M3
32A Simple Expository Example
X
6
F
F
M1
A1
12
6
Y
M2
G
A2
Z
M3
33Derivation of First Minimal Conflict
X
6
10
X
6
X
F
F
F
F
M1
M1
A1
12
A1
6
6
Y
M2
M2
12
G
A2
12
Z
M3
6
34Derivation of Second Minimal Conflict
X
6
10
X
6
X
F
F
F
F
M1
M1
A1
12
A1
6
6
Y
Y
M2
M2
12
G
G
A2
A2
Z
Z
M3
M3
6
6
35(No Transcript)
36Conflict Directed Search
- Let M be the set of minimal diagnoses, initially
containing . - If no more conflicts, the answer is M.
- For every new conflict C
- For every diagnosis D in M
- If D identifies one component in C as faulted, do
nothing. - Else remove D from M and add to M all D which
have some component of C faulted. - Remove duplicates from M
- Go to 2.
37Analytical Redundancy Relations
38Same Diagnoses as Analytical Redundancy
- Assuming
- All ARRs for all observable variables
- Analytic constraints
- Full signature matrix for all multiple faults
- Any deviation indicates a fault
- No fault cancellation
39Model-Based Diagnosis
- Computes at run-time
- Minimal conflicts and minimal diagnoses usually
avoid exponential time and space. - Every system can have a different model.
40Probabilities
- Assuming components fail independently (p is
faulted probability) prior probability of a
diagnosis is - Bayes Rule
41Sequential Diagnosis
- Next observation
- Observations are measurements
42Evaluating
43Fault M2 low by 2, A2 high by 2
X
6
10
F
F
M1
4
Y
M2
12
G
A2
Z
M3
6
- p0.01
- m16
- Initially p()0.951
44Measure F10
X
6
10
F
F
M1
4
Y
M2
12
G
A2
Z
M3
6
- Minimal diagnoses A1 M1 M2
- P0.323
45Measure G12
X
6
10
F
F
M1
4
Y
M2
12
G
A2
Z
M3
6
- P(M1)0.478
- P(A1)0.478
- P(A2,M2).0048
46Measure X6
X
6
10
F
F
M1
4
Y
M2
12
G
A2
Z
M3
6
- p(A1)0.942
- p(A2,M2)0.0095
- A1 is unfaulted
- The double fault is unlikely
47Gathering Additional Evidence
- (Assume all measurements are of equal cost)
- Optimal Choose that measurement which, on
average, yields lowest total diagnosis cost.
Measurements
Outcomes
Measurements
Outcomes
Measurements
Diagnoses
48Myopic Strategies
- Optimal probing strategies are computationally
unusable - Myopic strategies are often close to optimal
- Use one-step lookahead, and use entropy of the
diagnosis distribution. - The entropy of a distribution S is
49Expected Entropy
- Define to be the entropy of the
diagnosis distribution after measuring - Can be computed simply by hypothesizing that
- Pick which minimizes
50(No Transcript)
51(No Transcript)
52(No Transcript)
53(No Transcript)
54Fault Modes
55Modeling Continuous Quantities
- Use techniques from Qualitative Reasoning
- Interval Arithmetic
- Order of Magnitude Reasoning
- Segment each continuous quantity with landmarks
into distinct regions - positive, negative, zero
- high, low
- nominal, too high, too low
56Modeling a Xerographic Copier
57(No Transcript)
58Faster Algorithms
- Minimal conflicts
- Minimal diagnoses
- Myopic probing strategy
BAD NEWS May be exponential number of
conflicts May be exponential number of
diagnoses Not enough to diagnose systems of
10,000s components in any case
59Compute Diagnoses First!
60Intuitions Underlying Fast Algorithm
- Discover diagnoses with highest prior first
- Only draw inferences which apply to those
diagnoses - If conflict free, compute the posterior
probability - Continue until sure that the next diagnosis
discovered will have posterior probability less
than the ones obtained so far. - Stop when have the guaranteed n highest posterior
probability diagnoses
61cliff criteria met
Best-first search based on prior, avoiding
conflicts
leading diagnosis
CONFLICT
leading diagnosis
leading diagnosis
62Supervisory Control
- Given
- The commands sent to the system
- The discrete and continuous observations received
in response - A model of the system
System Health Management Process
Model
State Estimate
Commands
Observations
- Determine the most likely states of the system to
enable - Sensor Validation
- Automatic Reconfiguration/Redundancy Management
- Rapid Repair
63Three New Ideas
- System evolution over time
- Reconfiguration
- Embedded system
64Valve Driver Example
Valve Driver
command
Flowv1
Valve1
Pump
Flowv2
Valve2
- Valve driver sends command to valves
- Pump pressurizes the valves
- Flow measured at each valve
- Valve driver may hang, valves may stick shut
65State Machine Models
Valve2
- Valve driver sends command to valves
- Pump pressurizes the valves
- Flow measured at each valve
- Valve driver may hang, valves may stick shut
66Encoding Device Behavior
Valve Driver Model
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
Prior Probabilities
Value P(FailureValue) None a
Hang 1-a
67Encoding Device Behavior
VDU
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
Turn on Electronics
0
1
68Encoding Device Behavior
VDU
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
on
off
none
on
null
Turn on Electronics
0
1
69Encoding Device Behavior
VDU
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
on
off
none
open
on
null
open
Turn on Electronics
0
1
70Encoding Device Behavior
VDU
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
on
off
none
open
on
null
open
Turn on Electronics
0
1
71Encoding Device Behavior
VDU
cmdInon FailureNone
Off
On
cmdInopen -gt cmdOutopen cmdInclose -gt
cmdOutclose
cmdOut Null
cmdInoff FailureNone
FailureHang
Hung
FailureHang
cmdOut NULL
Time t
Time t1
on
hung
off
off
VDU
VDU Failure
hang
none
cmdIn
open
on
open
on
null
open
cmdOut
Turn on Electronics
Turn on Electronics
0
1
0
1
72Trajectory Representation
VDU
VDU. Failure
cmdin
cmdout
v1
V1 Failure
V1 Flow
V2
V2 Failure
V2 Flow
4
3
0
1
2
Turn on Electronics
Command valves
Start pump
73Trajectory Representation
on
off
on
on
VDU
none
none
VDU Failure
none
cmdin
null
on
open
null
cmdout
null
open
closed
open
closed
v1
closed
V1 Failure
V1 Flow
zero
zero
high
zero
open
closed
v2
closed
closed
V2 Failure
V2 Flow
high
zero
zero
zero
3
0
1
2
Turn on Electronics
Command valves
Start pump
74The Problem with Trajectories
Spacecraft Propulsion System Model
75Trajectory Representation
on
off
on
on
VDU
none
none
VDU Failure
none
cmdin
null
on
open
null
cmdout
null
open
closed
open
closed
v1
closed
V1 Failure
V1 Flow
zero
zero
high
zero
open
closed
v2
closed
closed
V2 Failure
V2 Flow
high
zero
zero
zero
4
3
0
1
2
Turn on Electronics
Command valves
Observe no flow
Start pump
76Generating Conflicts
on
off
on
VDU
VDU Failure
cmdin
null
on
null
cmdout
null
closed
open
closed
v1
V1 Failure
V1 Flow
zero
zero
high
open
closed
v2
closed
V2 Failure
V2 Flow
high
zero
zero
3
0
1
2
77Supervisory Control
Done
- Given
- The commands sent to the system
- The discrete and continuous observations received
in response - A model of the system
System Health Management Process
Model
State Estimate
Commands
Observations
- Determine the most likely states of the system to
enable - Sensor Validation
- Automatic Reconfiguration/Redundancy Management
- Rapid Repair
78Choosing Actions
Thrusting
4
3
1
Time
2
79Choosing Actions
Thrusting
4
3
1
Time
2
80Choosing Actions
Tanks Pressurized
Valves Open
Electronics on
Initial State
Thrusting
4
3
0
1
Time
2
Turn on Electronics
Command valves
Ignite Engines
Start pump
81Choosing Actions
Tanks Pressurized
Valves Open
Electronics on
Initial State
Thrusting
No thrust
Electronics failed
Valves Closed
4
3
0
1
Time
2
Turn on Electronics
Command valves
Ignite Engines
Start pump
82Choosing Actions
Tanks Pressurized
Valves Open
Electronics on
Initial State
Thrusting
No thrust
Electronics failed
Valves Closed
No thrust, engine ignited with pure fuel (assume
this causes damage)
O2 Valve Sticks
4
3
0
1
Time
2
Turn on Electronics
Command valves
Ignite Engines
Start pump
83Conflict-based Repair
BlackBox (Kautz Selman, IJCAI 99)
BlackBox is a fast planner for generating
plans from a known initial state
Graphplan/SAT translator
Domain Action Model
SAT Solver
Plan
84Faults in Hybrid Systems Motor Example
Motor does not energize
Fault hypotheses (discrete faults) x (continuous
faults) x (autonomous transition faults)
Motor fault
Motor off
Ramp up
Motor on
Steady state
Motor off
Ramp down
85Hybrid Estimation
- Given continuous and discrete observations,
determine - Sequence of modes the system passed through
(discrete faults) - Value of continuous parameters (continuous
faults) - Time of mode changes (autonomous transition
faults)
- Challenge Exponential Number of Hypotheses
- Each mode introduces a new set of continuous
behaviors - Observations dependent upon entire sequence and
timing of modes - Challenge Generally Cannot Factor Hypothesis
Space - Failures in autonomous transitions effect when
each mode was in force - Changes in continuous parameters may change
transition timing
86Particle Filtering for Hybrid Systems
- Challenges
- Hybrid, nonlinear dynamics
- High-resolution diagnosis
- Exponential in number of time steps
- Main ideas
- Focus on a subset of possible modes that cover
most of the probability space - Hybrid observer using particle filters with
automated model switching
87Current Research Topics in DX
88Challenges for Model-Based DX
- Noise in observable quantities
- Metric rather than discrete time
- Autonomous transitions
- Continuous degradation
- Modeling of continuous systems (NFIS)
- Thick models
- Prognostics
- Learning
89Challenges for Model-Based DX
- Noise in observable quantities
- Metric rather than discrete time
- Autonomous transitions
- Continuous degradation
- Modeling of continuous systems (NFIS)
- Thick models
- Prognostics
- Learning
SafeProcess Community can help here