computing minimum-cardinality diagnoses by model relaxation sajjad siddiqi national university of...
TRANSCRIPT
![Page 1: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/1.jpg)
Computing Minimum-cardinality Diagnoses by Model Relaxation
Sajjad Siddiqi
National University of Sciences and Technology (NUST)
Islamabad, Pakistan
![Page 2: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/2.jpg)
Consistency-based Diagnosis
CDA
YX
B
System model :
okX (A C)
okY (B C) D
Health variables: okX, okY
Observables: A, B, D
Nonobservable: C
Abnormal observation :
A B D
NOT AND
![Page 3: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/3.jpg)
Consistency-based Diagnosis
CDA
YX
B
Abnormal observation :
A B D
Find values of (okX, okY) consistent with :
(0, 0), (0, 1), (1, 0) OR
{okX=0, okY=0}, …
System model :
okX (A C)
okY (B C) D
![Page 4: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/4.jpg)
Consistency-based DiagnosisSystem model over
health variables (okX, okY, …)observablesnonobservables
Given observation , diagnosis is assignment to health variables consistent with
Consider minimum-cardinality diagnoses
Cardinality is the number of failing components in a diagnosis
![Page 5: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/5.jpg)
Decomposable Negation Normal Form (DNNF)
DAG of nested and/or
Conjuncts share no variable (decomposable)
or
and
or andX3
X1 X2
Min-cardinality as well as min-cardinality diagnoses can be computed efficiently using DNNF
![Page 6: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/6.jpg)
Compilation-based Approach
SystemModel
Compile DNNF
Query Evaluator
Bottleneck
![Page 7: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/7.jpg)
Previous Method: Hierarchical Diagnosis
Significantly reduces number of health variables – through Abstraction
Requires only 160 health variables for c1908; c1908 has 880 gates
Able to compile larger systems(Siddiqi and Huang, 2007)
![Page 8: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/8.jpg)
Previous Method: Hierarchical Diagnosis
Without Abstraction: Requires 6 health variables:
okU, okV, okE, okB, okJ, okA
![Page 9: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/9.jpg)
Previous Method: Hierarchical Diagnosis
Abstraction:{U,V,E,A}Treats self contained sub-systems (E) as single components (cones):
Requires 4 health variables:okU, okV, okE, okA
![Page 10: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/10.jpg)
Previous Method: Hierarchical Diagnosis
{E,A} is a an abstract min-cardinality diagnosis
{E}, {J}, {B} are min-cardinality diagnoses of cone E.
{J,A}, {B,A} are deduced as more min-cardinality diagnoses
Need to find abnormal observation for cone E
![Page 11: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/11.jpg)
Previous Method: Diagnosis of Cones
Reorder {E,A} as {A,E}(deeper gates first)
Propagate normal values in the circuit (input values in given observation)
Propagate faults in the order they appear in diag.
Sets the required abnormal obs for cone E
![Page 12: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/12.jpg)
Previous Method
Again Compilation becomes a bottleneck for very large systems – even after abstraction
![Page 13: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/13.jpg)
New MethodCombines abstraction, model relaxation (node splitting), and search to scale up
Compiles the abstraction of a relaxed model instead of the original
Applies two stage branch-and-bound search to compute minimum-cardinality diagnoses
![Page 14: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/14.jpg)
Node Splitting
Splits Y
Y1’ and Y2’ are clones of Y
(Choi et al., 2007)
![Page 15: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/15.jpg)
Node Splitting
Splits gate B
![Page 16: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/16.jpg)
Node SplittingSome components may come out of cones
The components in the abstraction of the split system form a superset of the set of components in the original abstraction
The abstract min-cardinality diagnoses (once computed correctly) of the split system form a superset of the set of abstract min-cardinality diagnoses of the original
![Page 17: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/17.jpg)
Search for minimum cardinality (First Stage)
∆ and ∆’ – models of original and split system
e – a given assignment to variables in ∆
e – the compatible assignment to corresponding clones in the split system
For example, if e = {B = b} then e = {B’ = b}
![Page 18: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/18.jpg)
Search for minimum cardinality
∆’ provides basis for computing lower bounds on minimum cardinality for B-n-B search
min_card(∆ | e) >= min_card(∆’ | ee)
if e contains a complete assignment to split variables then
min_card(∆ | e) == min_card(∆’ | ee)
![Page 19: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/19.jpg)
Search for minimum cardinality
B-n-B search in the space of assignments s to split variables S
At each node compute min_card(∆’ | ee ss)
At leaf nodes we get candidate minimum cardinalites
Elsewhere, we get lower bounds to prune search
![Page 20: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/20.jpg)
Search for minimum cardinality
A good Seed for search
In the given observation, if k components output values inconsistent with the normal values then k is the upper bound on the minimum cardinality.
![Page 21: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/21.jpg)
Search for minimum cardinalityVariable and value ordering
Nogood-based scoring heuristic similar to (Siddiqi and Huang, 2009):
Every value of a variable X is associated with a score S(X = x)
Score of X, S(X), is the average of the scores of its values
Vars and values with higher scores are preferred.
![Page 22: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/22.jpg)
Search for minimum cardinalityVariable and value ordering
During search if X is assigned a value x then
S(X = x) += new_bound – cur_bound
cur_bound = bound before the assignment
new_bound = bound after the assignment
Early Backtracking
![Page 23: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/23.jpg)
Search for diagnoses (Second Stage)
First Strategy
if e contains a complete assignment to split variables then
min_card_diags(∆|e) == min_card_diags(∆’|ee)
Search in the space of assignments to split variables; enumerate all min-card diagnoses at those leaf nodes where cardinality is minimum.
![Page 24: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/24.jpg)
Search for Diagnoses
Second Strategy
Search in the space of assignments to health-vars
Partial assignment to h-vars == partial diagnosis
Enumerate all valid min-cardinality diagnoses.
![Page 25: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/25.jpg)
Search for DiagnosesFirst Strategy
Can efficiently compute very large number of diagnoses at leaf nodes by evaluating the DNNF
Often resulted in very large search spaces even when the number of diagnoses was small
Second Strategy
Efficient only when the number of diagnoses was reasonably small
![Page 26: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/26.jpg)
Combined Approach; benefit from bothSystematic search in both spaces simultaneously:
Search starts in the space of assignments to health variables
At each search node, another search is performed in the space of assignments to split variables; IF REQUIRED.
![Page 27: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/27.jpg)
Combined ApproachSearch on health variables
Validate each partial diagnosis h at each node
If h is valid and card(h) < mincard, then continue search; else backtrack
h is valid iff:h is consistent with the model + observationh can be extended to a valid min-card
diagnosis HOW???
![Page 28: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/28.jpg)
Combined ApproachValidate partial diagnosis h:
B-n-B Search for complete assignment to split vars S such that for each partial assignment s
∆’|h ee ss is consistent ANDcard (h) + min_card(∆’|h ee ss) <=
mincard
If such a complete assignment s exists then h is valid; otherwise h is invalid
![Page 29: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/29.jpg)
Combined Approach
Diagnoses
At each node where h is valid compute min-card diagnoses as:
{h} x min_card_diags(∆’|h ee ss)
Union of all such diagnoses is the complete set of min-card diagnoses [redundancy is an issue]
![Page 30: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/30.jpg)
Combined Approach<h1, s1, D1>
<h2, s2, D2> <h3, s3, D3>
okX = false okX = true
h2 h1 h3 h1
min-card diagnoses = D1 D2 D3 (may overlap)
![Page 31: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/31.jpg)
Avoiding Redundancy - 1<h1, s1, D1>
<h2, s2, D2> <h3, s3, D3>
okX = false okX = true
h2 h1 h3 h1
If s1 == s2 thenD1 D2
Solution: At each node, keep passing `the assignment to split variables used’ to the children nodes, AND…
![Page 32: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/32.jpg)
Avoiding Redundancy - 1
At each node with partial diagnosis h:
Let sp = assignment to split vars used at the parent node
First check if h is valid under sp:YES: Don’t search, don’t enum
diagnosesNO: Search for a new assignment to
split vars and enum diagnoses only if found
![Page 33: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/33.jpg)
Avoiding Redundancy - 2
During search treat the all recorded diagnoses (so far) as nogoods
Watch literals scheme (as in Satisfiability):
As soon as all but one broken component in a recorded diagnosis have been assumed as broken, that remaining broken component is forced to be healthy
![Page 34: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/34.jpg)
Combined ApproachVariable and Value Ordering
Same selection heuristic as in the first stage; scores try to minimize search on split vars
Let search on split vars explored p nodes, when okX was assigned a value okx, then
S(okX=okx) += 1/p
If search is not performed at a nodep = ½ of the value used at the parent
![Page 35: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/35.jpg)
Combined Approach
Variable and Value Ordering
Initial scores:
S(okX = true) = 0S(okX = false) = failure probability of X
(Siddiqi & Huang 11)
Effectively orders components according to decreasing value of their failure probabilities
![Page 36: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/36.jpg)
Diagnosis of Cones
Same as in the previous method with some extra care:
All clones must be assigned the same value during value and fault propagation
When reordering components in abstract diagnosis, original depth values for components must be used despite changes due to splitting
![Page 37: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/37.jpg)
Experiments
Use ISCAS85 circuits
Observations (inputs/outputs) randomly generated
Multiple instances per circuit
![Page 38: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/38.jpg)
Experiments
New method solves most of the cases on every circuit (except c6288)
Previous method cannot solve any case beyond c2670
New method is either as fast as the previous, or 4 times faster, or 2 orders of magnitude faster.
![Page 39: Computing Minimum-cardinality Diagnoses by Model Relaxation Sajjad Siddiqi National University of Sciences and Technology (NUST) Islamabad, Pakistan](https://reader030.vdocuments.us/reader030/viewer/2022032516/56649c765503460f9492a074/html5/thumbnails/39.jpg)
Summary
New tool to compute minimum-cardinality diagnoses of a faulty system employing model relaxation, abstraction and search
Solves non-trivial diagnostic cases on large systems, not possible before
Significantly faster than the previous on cases solvable by both