The present invention relates to a system and method for diagnosing a physical system generally belonging to model-based diagnosis.
Humans will continue to forge ahead exploring the mysteries of space. This exploration will progress from near Earth missions to deep space which necessitates increase in on-board autonomy for the spacecraft as per the following reasons: (1) for deep space exploration, the communication delays between the spacecraft and ground are prohibitively long; and (2) for a large number of small spacecraft (e.g. formation flying mission), it is costly to depend solely on ground for their control and maintenance. On-board autonomy can perform such task as planning, scheduling, fault diagnosis and autonomous self-reconfiguration. This will not only reduce costs of ground operations and hence the overall mission costs, but will also be an enabling technology for future missions that require some tasks to be performed autonomously and in real-time.
NASA is leading the way in developing autonomous space systems. They have developed the Remote Agent which is an AI system combining high-level planning and scheduling, intelligent execution and the Livingstone model-based autonomous system kernel. Remote Agent allows the spacecraft to be able to explore, command, diagnose and repair themselves. This technology has been tested on the New Millennium Deep Space One spacecraft launched on Oct. 24, 1998.
At the heart of Remote Agent is the Livingstone system which has the Mode Identification (MI) module to reason the states of the spacecraft. All the planning, scheduling and fault diagnosis tasks are based on the results of the MI module which also helps correctly re-configure the spacecraft. Experiments show that Livingstone uses about 100 KB of memory and takes seconds to execute in case of a propulsion system.
The theory behind Livingstone is based on General Diagnosis Engine (GDE), which aims to find all possible diagnoses. In theory, GDE aims at tracking all state trajectories (the diagnosis is exhaustive, given a symptom). On the other hand, Livingstone only tracks several most possible states using a conflict directed best first search. This means that not all of the possible states are tracked. Indeed, GDE is computationally too intensive for state identification in spacecraft subsystem diagnosis. Though in practical application, approximation techniques such as focused searches are adopted, the computational complexity underlying GDE still persists.
Referring to
Considering the example in
It needs to be pointed out that though GDE gives exhaustive diagnoses for this scenario, it does not mean it is complete. For example, if F=12 which is as the model predicts, GDE believes there is not symptom and therefore no diagnosis. However, following GDE's logic, {AB(M1), AB(A1)} should be a diagnosis, in which the faulty effects of M1 and A1 are cancelled out.
What makes Livingstone subject to improvement is that Livingstone only tracks several most possible diagnoses rather than all the diagnoses. Whereas GDE is good for other applications, GDE provides more than Livingstone really needs.
According to the present invention, there is provided a method for obtaining a most likely diagnosis in a physical system having n components, a set of inputs, and a set of outputs, the method comprising steps of:
a) identifying a set of outputs Gf of the physical system that are not as predicted;
b) associating sets of involved components Cf with the set of outputs Gf of the physical system that are not as predicted;
c) removing from the set of outputs Gf of the physical system that are not as predicted any output which is associated with one component in the sets of involved components Cf;
d) removing said one component from the sets of involved components Cf;
e) identifying said one component as a diagnosis;
f) associating each remaining component in the sets of involved components Cf with a value indicative of a number of remaining outputs Gf of the physical system that are not as predicted;
g) removing a component that is associated with a highest value in step f);
h) identifying the component removed in step g) as a diagnosis;
i) removing from the set of outputs Gf of the physical system that are not as predicted any output which is associated with the component identified in step h); and if there remains any set of outputs Gf of the physical system that are not as predicted then return to step f).
Preferably, step g) further includes the step of randomly removing one among two or more components that are associated with a same value in step f).
According to another aspect of the present invention, there is provided a system for obtaining a most likely diagnosis in a physical system having n components, a set of inputs, and a set of outputs, the system comprising:
a) first identifying means for identifying a set of outputs Gf of the physical system that are not as predicted;
b) first associating means for associating sets of involved components Cf with the set of outputs Gf of the physical system that are not as predicted;
c) first removal means for removing from the set of outputs Gf of the physical system that are not as predicted any output which is associated with one component in the sets of involved components Cf;
d) second removal means for removing said one component from the sets of involved components Cf;
e) second identifying means for identifying said one component as a diagnosis;
f) second associating means for associating each remaining component in the sets of involved components Cf with a value indicative of a number of remaining outputs Gf of the physical system that are not as predicted;
g) third removal means for removing a component that is associated with a highest value;
h) third identifying means for identifying the component removed as a diagnosis;
i) fourth removal means for removing from the set of outputs Gf of the physical system that are not as predicted any output which is associated with the component identified by the third identifying means.
According to a preferred object of the present invention, there is provided a state-tracking algorithm based on set operations which reduces the memory requirement and increases the execution speed as compared to Livingstone.
According to another preferred object of the present invention, there is provided a method for finding the most probable diagnosis based on set operations and for fault probing which could further narrow down the diagnosis.
A framework for system state identification is described below. The task is divided into two steps; the first step is the diagnosis stage which aims to find a set of all possible faulty components; the second step is the probing stage which aims to probe the most possible diagnoses among the set from the first step.
A. Diagnosis with Set Operations
According to the present invention, an inference engine is based on set operations. The theory behind this approach is supported by probability theory. A general approach is defined first and then a fine tuned consideration is discussed.
As defined herein, a supervised object is called a system. A system consists of components, inputs and outputs. The outputs are usually sensor data. Each output is defined as a function of inputs. The function can be continuous or discrete. The outputs are the results of the behaviors of some components of the system. The set of the involved components are called the Causal set (C-set) of an output. At the diagnosis stage, one does not need the detailed architectural model of components. In fact, Causal sets are simplified architectural models.
For example, referring back to
Assumption 1: Let Co={C1, C2, . . . , Cn} be the C-set of the output O, where Ci(i=1, 2, . . . , n) are components. One assumes: (∃XεCoAB(X))⇄AB(O) or equivalently OK(O)⇄(OK(X) for ∀XεCo), where AB(X) represents that component X is faulty, OK(X) represents that component X is healthy (i.e. not faulty); AB(O) represents that output O is not as predicted and hence a symptom, OK(O) represents that output O is as predicted.
Essentially, one assumes that components' faults cannot be cancelled out. If the output is as predicted, then every component in the C-set is healthy. The assumption implies that all components in a C-set are healthy except when the output is not as predicted.
The diagnosis algorithm according to the present invention involves only set operations. Let G0 be the set of all the outputs. Let C0 be the corresponding C-sets of G0 defined as
i.e. the union of all C-sets of outputs in G0. In general, C0 should be all the components of a system, otherwise, components not in Co cannot be supervised. Go is divided into two groups: Gg and Gf. Gg is the set of outputs that are as predicted. Gf is the set of outputs that are not as predicted. Let Cg be the corresponding C-sets of Gg and Cf be the corresponding C-sets of Gf. According to Assumption 1, all components Cg are good. Notice that Cg and Cf may intersect. Let Cd=Cf\Cg, then according to Assumption 1, Cd is the set of components that may be faulty. One calls Cd the candidate set of the diagnosis. It means any component in Cd can be faulty and components not in Cd are healthy. The candidate set is used to produce diagnoses but this diagnoses generation will be discussed after having given an example.
Referring back again to
1. Diagnosis With Highest Probability
For generating diagnosis, one needs to make more assumptions.
Assumption 2: The probability of a component being faulty is very small.
Next there is provided some principles for generating diagnoses. The first principle is:
Referring to
Let's compute the probability of a diagnosis. One assumes that every component has the same probability of being faulty. Let p be the prior probability that a component is faulty. Given that the output is not as predicted, the probability that k (1≦k≦n) components are faulty (i.e. a diagnosis of k components) is
Equation (1) is the Bayesian formula. P(AB(O)) is the normalizing constant and its value is irrelevant in the following computation. P(AB(O)|k) is the condition probability that the output is not as predicted given the k components are faulty. According to Assumption 1, P(AB(O)|k)=1. P(k) is the prior probability that k in n components are faulty. P(k)=pk(1−p)n−k. P(k|AB(O)) is proportional to P(k). For p<0.5, P(k1)>P(k2) for k1<k2. Let p=0.01, n=5, then P(1)=0.96059601×10−2 and P(2)=0.970299×10−4. P(k) is about 100 times larger than P(k+1) and insensitive to n. Similarly P(k|AB(O)) is about 100 times larger than P(k+1|AB(O)) and insensitive to n.
The next principle is:
Referring to in
If the C-set of an output contains a single component, then the component being faulty explains the symptom of the output. This is obvious based on Assumption 1. Based on these principles (or assumptions), an algorithm for finding the most likely diagnosis is developed as follows:
Step 1: Given the C-set Cf associated with the symptoms Gf, remove from Gf any symptom which has a 1-component C-set, together with this component from Cf. This component is included in the diagnosis.
Step 2: Each component in the remainder of Cf is associated with a number which indicates the number of symptoms it can explain.
Step 3: Remove the component that has the highest number and include it in the diagnosis. Any tie is broken randomly. Remove the symptoms that the component can explain. If any symptoms exist then go to step 2 else stop.
Let m be the number of symptoms and n the number of components in the candidate set. The first iteration takes O(mn). After each iteration, the number of components and the number of symptoms are reduced at least by one. Therefore, the worst complexity is O(min{m,n}mn). It is a polynomial algorithm.
It is important to note that this algorithm does not guarantee the generation of minimal diagnosis. Nevertheless, it is the guideline for probing that is discussed further below.
Referring to
2. Real Life Application
In a real life application, one expects the number of sensors to be (much) smaller than the number of components. If this is not the case, then there is redundancy in the sensor data in which case the redundant sensor data can be removed and therefore making the number of needed sensor data smaller or equal to the number of components. In general, one also expects the number of symptoms to be much smaller than the number of outputs. All these factors can reduce the computational time significantly.
Referring to
In this example, there could be any number of components between P1, P2, P3, P4, P5 and P6. However, for the diagnosis purpose, they are indistinguishable. In this case, they can be looked at as one single component.
With the reduced architecture, one can quickly identify the candidate set and the diagnoses. In the reduced architecture, the C-set of P1 is {A1}, the C-set of P2 is {A1 A2}, etc. Let's assume one observes OK(P1), OK(P2), OK(P3), AB(P4), AB(P5). For simplicity, one assumes sensors are fault free and AB(P4) means there is zero pressure and hence no flow detected rather than other abnormalities. Then one can easily find the candidate set to be {A4, A5, A7}. A4 must be faulty, since A4 is the only component in the candidate set that can explain AB(P4) (or in logic terminology, AB(A4) is consistent with AB(P4)).
Referring back to
B. Fault Probing
Diagnosis does not stop in finding a candidate set or the most possible diagnosis. Means are provided for trying to find the exact faulty component(s). Otherwise, the previous section is all that can be achieved. For example, in
Due to application constraints, it is assumed that one cannot make direct measurements inside a system. Sensor data are the only output data that can be measured. However, one can manipulate the inputs, change the behavior of some components and make inference from the relation between input changes and output changes. In spacecraft applications, fault probing can be achieved by issuing commands (i.e. input changes) and reconfiguring the system. In addition, in order to probe, one needs to rule out intermittent faults which may disappear or change their faulty behavior over time. In these cases, the faulty behavior does not need to be known a priori. Thus, the following assumptions are made:
Assumption 3: The number of sensors and their locations are fixed and known a priori. It is also not possible to make any direct probing of a component.
Assumption 4: A faulty component will remain faulty with the same faulty behavior during the probing time. The fault is persistent.
The general process of probing is to find the “defense witnesses” for suspected components or “witnesses for the prosecution” of abnormal components by manipulating inputs. This process is based on the structural and behavior model of the system. The probing process starts by choosing a strategy of changing inputs so that the new outputs can be used to help isolate the faulty component. There is provided two examples to explain the procedures.
Referring to
The next example is a simple circuit shown in
Guideline: When there are multiple actions for probing, those that make the behavior of the most suspected components unchanged should be chosen first.
For example in
The present approach belongs to model-based diagnosis. The algorithm according to the present invention depends on the knowledge of the structure and behavior model of a system. However, the method used for inferring diagnosis is different from the traditional approaches such as GDE or abductive approaches. Instead of purely using logic reasoning, one uses set operations for inference.
In summary, the FDI (fault diagnosis identification) procedure according to the present invention is divided into two steps: candidate set generation and probing. As seen, the computation complexity of candidate set generation is about linear with the number of component if the number of outputs (sensors) is a small constant. A method for finding the most likely diagnoses and a procedure for probing the diagnosis are proposed. The approach can find faults quickly and effectively. Though the diagnoses generated are not exhaustive and the inference is not complete, these are not to be considered as drawbacks, because no practical approach can achieve exhaustive diagnosis and complete inference.
Referring to
And as shown by numeral 118, if there remains any set of outputs Gf of the physical system that are not as predicted then return to step f), if not then stop. A system according to the preferred embodiment of the invention take the form of a tool that basically operates according to the above method.
Although preferred embodiments of the present invention have been described in detail herein and illustrated in the accompanying drawings, it is to be understood that the invention is not limited to these precise embodiments and that various changes and modifications may be effected therein without departing from the scope or spirit of the present invention.
Number | Date | Country | |
---|---|---|---|
60715164 | Sep 2005 | US |