EP2238537A1 - System and method for automated distributed diagnostics for networks - Google Patents
System and method for automated distributed diagnostics for networksInfo
- Publication number
- EP2238537A1 EP2238537A1 EP09705520A EP09705520A EP2238537A1 EP 2238537 A1 EP2238537 A1 EP 2238537A1 EP 09705520 A EP09705520 A EP 09705520A EP 09705520 A EP09705520 A EP 09705520A EP 2238537 A1 EP2238537 A1 EP 2238537A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- domain
- symptoms
- faults
- fault
- optimal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0243—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
- G05B23/0245—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a qualitative model, e.g. rule based; if-then decisions
- G05B23/0248—Causal models, e.g. fault tree; digraphs; qualitative physics
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0275—Fault isolation and identification, e.g. classify fault; estimate cause or root of failure
- G05B23/0278—Qualitative, e.g. if-then rules; Fuzzy logic; Lookup tables; Symptomatic search; FMEA
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
Definitions
- the present invention relates to the diagnosis of faults in systems by means of inferences drawn from the symptoms produced by those faults. Specifically, the invention relates to distributed computations for fault-diagnosis carried out by partitioning the fault- to-symptom causality model of the system into computational domains and by coordinating the diagnoses obtained from the individual domains to produce a global diagnosis for the whole system.
- the subject matter of the present inventions pertains to the class of fault diagnosis methods known as 'model-based', to denote the fact that they take as their starting point an analytical representation of the underlying Fault Propagation Model that specifies the causal relations between faults and symptoms in the system under consideration.
- a 'bipartite graph' is a convenient representation of the relationship of the Fault Propagation Model.
- nodes one for each object that could fail (and thereby become a 'fault')
- another set of nodes one for each symptom or alarm that can appear in the system.
- An object-node / is connected to a symptom-node s by a link if failure of object / (i.e., fault f) causes symptom s to be observed (in the case of deterministic causation) or if there is a non-zero probability that fault / causes symptom s to be observed (in the case of probabilistic causation). It is assumed that the probability ⁇ f of the occurrence of each fault / is known and that the occurrences of the different faults are all independent events.
- the representation of a Fault Propagation Model by a bipartite graph is well-established in the literature.
- the fault-diagnosis problem can be stated as follows: given that a set S of symptoms has been observed, determine the most probable set or sets of faults F whose occurrence would account for the observed symptoms S. If all faults are equally probable, the 'most probable' hypothesis is one that contains the smallest number of faults. If faults have different probabilities of occurrence, then the probability of occurrence of a given set of faults is the product of the probabilities of faults in the set and the product of the complement of the probabilities of faults not in the set.
- the task is to determine which of the 2 :'r subsets of the N objects are consistent with all the observed symptoms, and which among them have the highest probability of occurrence. Since the number of possible candidates for solution rises exponentially in N, the procedure of searching for a solution is not scalable, though, in practice, the effort might be reduced by the prior knowledge or assumption that there can be no more than n ⁇ N simultaneous faults in the system (which limits the search to
- Patent No.5, 661,668, entitled “Apparatus and Method for Analyzing and Correlating Events in a System using a Causality Matrix", issued August 26, 1997 relies on associating a unique 'code' of symptoms with each of the fault-occurrences chosen for consideration in the system.
- the bipartite graph of the fault-to-symptom mapping is expressed by an MxN matrix F of l's and O's, where M is the number of possible symptoms and N is the number of (independent) objects (which, upon failure, become faults), and the element f ⁇ (in the deterministic case) is given by
- column j of F is a vector of alarms that is viewed as a "codeword" for faulty .
- the "codewords" for the different faults must be distinguishable one from another; otherwise, there would be faults that produce identical alarm vectors, which must, hence, be regarded as “equivalent”.
- the alarm vector instead of working with an entire column as a codeword, it is possible to work with a subset of the rows (symptoms) of F and still maintain the uniqueness of the codewords.
- the alarm vector either has all zeros or matches one of the codewords exactly.
- the present invention comprises: (1) a method for partitioning the fault diagnosis problem into 'computational domains' in which the computations can proceed in parallel, (2) a method for determining all the optimal local solutions to the sub-problem in each individual domain in which cross-domain symptoms are ignored, and (3) a method of (a) finding a combination of local solutions, one from each domain, that maximizes the number of cross-domain symptoms explained, such a solution constituting an optimal global solution to the diagnosis problem in case all the cross-domain symptoms have been explained, or (b) in the case where unexplained cross-domain symptoms remain in method 3(a), finding a global solution by supplementing the combination of local solutions chosen in method 3 (a) with additional faults to explain the residual cross-domain symptoms, determining also a bound on the deviation of the solution from optimality.
- each node of the relation graph corresponds to an object (potential fault), and two nodes are connected by a bi-directional 'relational link' if their corresponding objects, upon failure, produce a symptom in common.
- a symptom that has a unique fault as its possible cause will not be represented in the relation graph. Since the occurrence of such a symptom at once establishes the occurrence of the corresponding fault, the diagnosis for such symptoms is immediately obtained.
- the relation graph is partitioned into several 'computational domains', with roughly equal numbers of nodes in each domain, while minimizing the number of relational links that bridge separate domains (which correspond to 'cross-domain' symptoms).
- Each domain includes only a subset of the objects (which, upon failure, are termed faults) and the symptoms they produce upon failure.
- Graph partitioning is a well- studied problem of graph theory, for which are various fast algorithms even for graphs with thousands of nodes. See, for example, B. Hendrickson, R. Leland, "A Multilevel Algorithm for Partitioning Graphs", Supercomputing 95, Proceedings of the IEEE/ACM SC95 Conference, 1995.
- each relational link (which corresponds to one or more symptoms) is assigned a weight equal to the sum, taken over the symptoms represented by the relational link, of the reciprocal of the number of distinct object-pairs that produce each such symptom.
- This choice of weights is intended as an aid to achieving the objective of minimizing the number of cross-domain symptoms in the partition.
- the size of each domain (the number of objects assigned to it) is chosen to be the largest value for which computations for the local diagnosis in each domain can be carried out in a reasonable length of time by a centralized algorithm, i.e., one which works with knowledge of the portion of the fault propagation model pertaining to the faults and symptoms in the domain.
- the number of domains into which the problem needs to be partitioned thus depends on the largest problem size that can be handled in a single domain.
- the relation graph that is sought to be partitioned into loosely- coupled domains corresponds to the actual observed symptoms in each scenario of the occurrence of faults and symptoms. Owing to the randomness in occurrences of faults, one expects, on the whole, that such an adaptive partitioning of the realized graph, matching the partitioning to the observed symptoms, offers a higher probability of being able to find a partition that minimizes the presence of cross-domain symptoms.
- an innovative element of our approach is to create virtual 'computational domains' for each realization of the fault propagation model, grouping faults into these domains solely for the sake of computational efficiency, with no necessary connection to the geographical location of the elements that, upon failure, become faults.
- our approach to distributed computation is based on the idea of arranging for a suitable domain-partition that minimizes the overlap between domains, which increases the likelihood of finding a provably optimal global solution by the mere selection of a combination of optimal local solutions of the individual domains.
- each individual domain determines all its optimum local solutions, ignoring all of its cross-domain symptoms. If all faults have the same probability of occurrence, an optimal solution is a minimal set of faults that 'covers' (explains) all the observed local symptoms. This is a standard 'set covering' problem that can be solved by commercial integer programming solvers. This procedure is easily adapted to the case where faults have different probabilities of occurrence.
- an optimum overall solution consists of the collection of the optimum local diagnoses, one from each domain. Each such collection is an optimal solution.
- the overall global optimal solution is available once the local optimal solutions of all the domains are found.
- the innovation of the present invention consists of distributed computations implemented by means of partitioning the relation graph associated with the fault propagation model, determining all optimal local solutions, and finding a combination of local solutions, one from each domain, that provide a global solution that is either provably optimal or deviates from optimality at most by a known bound.
- Figure 1 is an example of a bipartite graph used to represent a fault propagation model, showing the correlation of potential faults to symptoms.
- Figure 2 shows the relation graph associated with the bipartite graph of Figure 1.
- Figure 3 shows a two-domain partition of the relation graph of Figure 2.
- Figure 4 is a flow chart of the diagnostic algorithm of the present invention.
- A, B, C, D, E, and F which are six possible symptoms produced by the various faults.
- the directed links in the bipartite graph display the causal relation between objects and symptoms. For example, if Object 1 fails, symptoms A and C are activated. Symptom D could be activated by the failure of either Object 2 or Object 5, or both.
- FIG 2 there is shown the transformation of a bipartite graph of Figure 1 into its associated relation graph.
- the objects 1, 2, 3, 4, 5 appear as nodes in the relation graph.
- Figure 1 shows, for example, that faults 1 and 2 both cause symptom A; hence, the corresponding nodes in the relation graph of Figure 2 are connected by a 'relational link'.
- symptom A in Figure 1 is also common to the object- pairs (1-3) and (2-3), these pairs are also connected by relational links.
- the relational link between nodes 2 and 3 represents both the symptoms A and B that are common to the object-pair (2-3).
- Each relational link (which might correspond to one or more symptoms) is weighted by the sum, taken over the symptoms represented by the relational link, of the reciprocal of the number of distinct object-pairs that produce each such symptom.
- This choice of weights is intended as an aid to achieving the objective of partitioning the relation graph into a specified number of computational domains in order to minimize the number of cross-domain relational links.
- These weights are shown next to the relational links in Figure 2.
- the relational link for the object-pair (1-2) corresponding to symptom A has a weight of (1/3) since the same symptom is also caused by two other object-pairs (1-3) and (2-3).
- the relational link for the object-pair (2- 3) corresponds to two symptoms A and B, of which A is caused by a total of three object- pairs (1-2), (1-3), and (2-3), while B is caused by the single object-pair (2-3).
- Figure 3 shows the partition of the relation graph of Figure 2 into two domains of approximately the same number of nodes per domain.
- symptoms A and D become 'cross-domain' symptoms (i.e., symptoms whose parent faults lie in different domains), while each of the other symptoms B,C,E, and F is a 'local' symptom
- Figure 4 is a flow chart of the diagnostic algorithm of the present invention.
- the diagnostic problem is represented by a bipartite graph, such as that shown in Figure 1.
- the bipartite-graph representation of the problem is transformed into its associated relation graph.
- An example of such transformation of a bipartite graph into its associated relation graph is shown in Figure 2.
- Each relational link is weighted by the sum, taken over the symptoms represented by the relational link, of the reciprocal of the number of distinct object-pairs that produce each such symptom.
- step 403 the relation graph is partitioned into the required number of domains, determined by the maximum number of nodees to be assigned to each domain.
- Figure 3 shows the optimal partition of the relation graph of Figure 2 into two domains.
- symptoms A and D become 'cross-domain' symptoms (i.e., symptoms whose parent objects lie in different domains)
- each of the other symptoms B,C,E, and F is a 'local' symptom (i.e., whose parent objects all lie within the same domain).
- L ⁇ t the sum of the number of faults in optimal local solutions from all the domains, one from each domain.
- L est 2, comprising one fault from Domain 1 and one fault from Domain 2.
- step 405 a combination of local solutions, one from each domain, that explains the largest number of cross-domain symptoms is found by solution of a 'maximum set cover' problem, hi Figure 3, there is precisely one combination of local solutions that explains both the cross-domain symptoms A and D: Fault 2 from Domain 1 and Fault 4 from Domain 2.
- step 406 if a combination of optimal local solutions, one from each domain, obtained in step 405 can explain all the cross-domain symptoms as well, each such combination is a provably optimal global solution, and the diagnostic problem is solved at step 407.
- ⁇ Fault 2, Fault 4 ⁇ is the unique global solution. That is, there are no residual cross-domain symptoms. Then the algorithm ends at step 410.
- step 408 If the maximum set cover problem leaves one or more residual cross-domain symptoms unexplained, the algorithm proceeds to step 408.
- step 405 If unexplained cross-domain symptoms remain after solving the maximum set cover problem at step 405, a minimum number of additional faults are selected to explain only the residual cross-domain symptoms.
- the final solution found in step 408 may or may not be optimal. However, what is known is how far the final solution could deviate, in the worst case scenario, from an optimal global solution.
- the deviation bound is found and the algorithm ends at step 410.
- the failure- probabilities of all the objects were assumed to be equal, which implies that an optimal solution is one that explains all the observed symptoms and contains the fewest number of faults.
- the case where the objects have different failure-probabilities is readily handled as follows.
- an optimal solution is one which has the smallest value of if.
- the probabilities p l can assume any value in the interval (0, 1), it is highly unlikely for two solutions to have exactly the same value of H, and thus highly unlikely that any domain will have more than a single optimal 'solution'.
- the failure-probabilities only take values from a limited set (such as values corresponding to 'low, 'medium', or 'high' failure-probability).
- Such a discrete set of values allows for multiple local solutions to exist in the domains, from which a combination can then be selected to maximize the number of cross-domain symptoms that are explained.
- System and method of the present disclosure may be implemented and run on a general-purpose computer or special-purpose computer system.
- the computer system may be any type of known or will be known systems and may typically include a processor, memory device, a storage device, input/output devices, internal buses, and/or a communications interface for communicating with other computer systems in conjunction with communication hardware and software, etc.
- the terms "computer system” and "computer network” as may be used in the present application may include a variety of combinations of fixed and/or portable computer hardware, software, peripherals, and storage devices.
- the computer system may include a plurality of individual components that are networked or otherwise linked to perform collaboratively, or may include one or more stand-alone components.
- the hardware and software components of the computer system of the present application may include and may be included within fixed and portable devices such as desktop, laptop, and/or server.
- a module may be a component of a device, software, program, or system that implements some "functionality", which can be embodied as software, hardware, firmware, electronic circuitry, or etc.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US6271808P | 2008-01-29 | 2008-01-29 | |
| PCT/US2009/032445 WO2009097435A1 (en) | 2008-01-29 | 2009-01-29 | System and method for automated distributed diagnostics for networks |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP2238537A1 true EP2238537A1 (en) | 2010-10-13 |
| EP2238537A4 EP2238537A4 (en) | 2012-10-17 |
Family
ID=40913230
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP09705520A Withdrawn EP2238537A4 (en) | 2008-01-29 | 2009-01-29 | System and method for automated distributed diagnostics for networks |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP2238537A4 (en) |
| CA (1) | CA2713736A1 (en) |
| WO (1) | WO2009097435A1 (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2973902B1 (en) * | 2011-04-06 | 2019-06-07 | Dassault Aviation | METHOD FOR ANALYZING TROUBLES PRESENTED ON A PLATFORM AND SYSTEM THEREFOR |
| EP2793095A1 (en) * | 2013-04-19 | 2014-10-22 | BAE Systems PLC | Diagnosing combinations of failures in a system |
| CA2909433A1 (en) | 2013-04-19 | 2014-10-23 | Bae Systems Plc | Diagnosing combinations of failures in a system |
| EP3017370A4 (en) * | 2013-07-05 | 2017-03-08 | Oceaneering International Inc. | Intelligent diagnostic system and method of use |
| US9122605B2 (en) * | 2013-09-23 | 2015-09-01 | Honeywell International Inc. | Methods for determining multiple simultaneous fault conditions |
| WO2015140841A1 (en) | 2014-03-20 | 2015-09-24 | 日本電気株式会社 | Anomaly-detecting information processing device and anomaly detection method |
| FR3044143B1 (en) | 2015-11-23 | 2018-09-14 | Thales | ELECTRONIC APPARATUS AND METHOD FOR ASSISTING AN AIRCRAFT DRIVER, COMPUTER PROGRAM |
| US10635521B2 (en) | 2017-12-15 | 2020-04-28 | International Business Machines Corporation | Conversational problem determination based on bipartite graph |
| JP7559676B2 (en) * | 2021-06-09 | 2024-10-02 | 株式会社デンソー | Fault diagnosis system |
| CN119496698A (en) * | 2023-08-18 | 2025-02-21 | 华为技术有限公司 | Fault location method and electronic equipment |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7171585B2 (en) * | 2003-11-26 | 2007-01-30 | International Business Machines Corporation | Diagnosing faults and errors from a data repository using directed graphs |
| DE102004024262A1 (en) * | 2004-05-15 | 2005-12-01 | Daimlerchrysler Ag | Knowledge-based diagnostic system for a complex technical system with two separate knowledge bases for processing technical system data and processing customer complaints |
| US7249003B2 (en) * | 2005-02-11 | 2007-07-24 | California Institute Of Technology | System for solving diagnosis and hitting set problems |
| US20070061110A1 (en) * | 2005-09-09 | 2007-03-15 | Canadian Space Agency | System and method for diagnosis based on set operations |
-
2009
- 2009-01-29 CA CA2713736A patent/CA2713736A1/en not_active Abandoned
- 2009-01-29 WO PCT/US2009/032445 patent/WO2009097435A1/en not_active Ceased
- 2009-01-29 EP EP09705520A patent/EP2238537A4/en not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| EP2238537A4 (en) | 2012-10-17 |
| WO2009097435A1 (en) | 2009-08-06 |
| CA2713736A1 (en) | 2009-08-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8280835B2 (en) | Method for automated distributed diagnostics for networks | |
| EP2238537A1 (en) | System and method for automated distributed diagnostics for networks | |
| US11269718B1 (en) | Root cause detection and corrective action diagnosis system | |
| Chen et al. | Draco: Byzantine-resilient distributed training via redundant gradients | |
| US10031806B2 (en) | Efficient repair of erasure coded data based on coefficient matrix decomposition | |
| Brodie et al. | Optimizing probe selection for fault localization | |
| Hou et al. | Rack-aware regenerating codes for data centers | |
| EP2041919B1 (en) | Fault location in telecommunications networks using bayesian networks | |
| Brodie et al. | Intelligent probing: A cost-effective approach to fault diagnosis in computer networks | |
| Zheng et al. | Diagnosability of star graphs under the comparison diagnosis model | |
| US20080222068A1 (en) | Inferring Candidates that are Potentially Responsible for User-Perceptible Network Problems | |
| US12413507B2 (en) | Satisfying demands in data communications networks | |
| US7685277B2 (en) | Automatically identifying an optimal set of attributes to facilitate generating best practices for configuring a networked system | |
| US20250132969A1 (en) | Systems and methods for performing root cause analysis | |
| Von Lengerke et al. | Identification codes: A topical review with design guidelines for practical systems | |
| CN117155769A (en) | Fault determination method and device, electronic equipment and storage medium | |
| GB2403383A (en) | Fault tolerant network, reliant on the determination of an automorphism of the network | |
| Ling et al. | Node-to-set disjoint paths in biswapped networks | |
| CN118520045A (en) | Order data synchronization method, system and equipment | |
| Zhong et al. | Uncoded storage coded transmission elastic computing with straggler tolerance in heterogeneous systems | |
| Ghafoor | Partitioning of even networks for improved diagnosability (multiprocessor systems) | |
| Tu et al. | Multiple fault diagnosis in graph-based systems | |
| Ghafoor et al. | Performance of fault-tolerant diagnostics in the hypercube systems | |
| Yang et al. | A Highly Scalable and Fault-Tolerant Network for Data Center Architecture | |
| Shum et al. | Existence of minimum-repair-bandwidth cooperative regenerating codes |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20100830 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK TR |
|
| AX | Request for extension of the european patent |
Extension state: AL BA RS |
|
| DAX | Request for extension of the european patent (deleted) | ||
| A4 | Supplementary search report drawn up and despatched |
Effective date: 20120917 |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 11/07 20060101AFI20120911BHEP |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
| 18W | Application withdrawn |
Effective date: 20150715 |