Next Article in Journal
Application of Wavelet Transform to Urysohn-Type Equations
Next Article in Special Issue
A Set Covering Approach to Design Maximally Permissive Supervisors for Flexible Manufacturing Systems
Previous Article in Journal
Regularized Normalization Methods for Solving Linear and Nonlinear Eigenvalue Problems
Previous Article in Special Issue
Detectability in Discrete Event Systems Using Unbounded Petri Nets
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Polynomial-Time Verification of Decentralized Fault Pattern Diagnosability for Discrete-Event Systems

1
School of Electro-Mechanical Engineering, Xidian University, Xi’an 710071, China
2
Department of Industrial Engineering, College of Engineering, King Saud University, Riyadh 11421, Saudi Arabia
*
Author to whom correspondence should be addressed.
Mathematics 2023, 11(18), 3998; https://doi.org/10.3390/math11183998
Submission received: 21 July 2023 / Revised: 13 September 2023 / Accepted: 18 September 2023 / Published: 20 September 2023
(This article belongs to the Special Issue Systems Engineering, Control, and Automation, 2nd Edition)

Abstract

:
This paper considers the verification of decentralized fault pattern diagnosability for discrete event systems, where the pattern is modeled as a finite automaton whose accepted language is the objective to be diagnosed. We introduce a notion of codiagnosability to formalize the decentralized fault pattern diagnosability, which requires the pattern to be detected by one of the external local observers within a bounded delay. To this end, a structure, namely a verifier, is proposed to verify the codiagnosability of the system and the fault pattern. By studying an indeterminate cycle of the verifier, sufficient and necessary conditions are provided to test the codiagnosability. It is shown that the proposed method requires polynomial time at most. In addition, we present an approach to extend the proposed verifier structure so that it can be applied to centralized cases.

1. Introduction

A discrete-event system (DES) [1,2,3] is an event-driven system whose state space is a discrete set and transitions from one state to another are triggered by the occurrence of events. The state of such a system may have logical or symbolic values that change in response to the event. In the context of DESs [2], fault diagnosis involves determining whether or not a fault has occurred with certainty [4,5]. The problem of diagnosis has been extensively studied [6,7,8,9,10]. Its formal description is located in [7]. The purpose of diagnosability is to determine whether any predetermined failure can be diagnosed within a finite delay (steps) after its occurrence. Experience with monitoring dynamic systems shows that there is a large spectrum of faulty situations in practical systems [11], such as multiple faults, intermittent faults [12], and temporary faults [13] that are not consistent with single-event faults. In order to consider these complex situations, such as temporary and/or intermittent faults, fault pattern diagnosis simultaneously emerges as a promising research area, which provides a general way to solve the diagnosis problems by capturing the occurrences of particular strings in a system and gains extensive attention from both researchers and practitioners, leading to a bulk of documented results [14,15,16,17,18,19,20].
As known, Petri nets (PNs) and finite state automata are two major tools to treat various problems in DESs. Specifically, finite state automata have been investigated for that purpose. In [14], the authors provide the ground foundations for the fault pattern diagnosis that relies on the synchronous product of a system with the pattern and the computation of the determinization of the resulting structure. Then, in [15], the same authors improve the complexity of the approach proposed in [14] by successively using the unobservable closure and a pair verifier to replace the determinization. This also introduces fault patterns in the problem of prediction. The authors of [16] address the fault pattern diagnosis by means of state isolation. In contrast to the approach in [14], which builds a diagnoser with potentially exponential complexity, the method proposed in [16] performs state estimation in a recursive manner. This approach offers the advantage of lower complexity for fault pattern detection. In [17], the authors introduce different notions of diagnosability, namely S-type and T-type pattern diagnosability, depending on whether interweaving events are accepted in the pattern. Note that this work also focuses on S-type patterns (but the T-type patterns are viewed as a particular subclass of S-type patterns, as mentioned in [17]). Moreover, in comparison to existing works, the main contribution of this paper is not only on the centralized systems but also on the decentralized frameworks, which expands the use of fault patterns.
Some contributions also consider the fault pattern diagnosis issues in PNs. On the one hand, the authors in [21] work on the diagnosability analysis of PNs by transforming the diagnosis problem into model checking. Using a particular class of PNs, the diagnosis of fault patterns has been studied according to the matching operator in [22]. With a similar approach, the same authors extended their results to the diagnosability analysis in [23]. On the other hand, stochastic PNs, endowed with Markovian semantics, have been studied to extract weak diagnosability properties for fault patterns [24]. A few researchers also consider fault patterns from the time aspects [25,26].
For the purpose of diagnosability verification, a systematic structure, namely a diagnoser, is proposed in [7], which provides the necessary and sufficient conditions for diagnosability offline. It also can be used for online fault detection based on the observations of system behaviors. The state space of a diagnoser is in the worst case exponential with respect to the size of a system model. To overcome the potential state explosion problem, a so-called “twin machine” technique [9,10], is introduced to provide a worst-case polynomial test with respect to the number of states of a system for diagnosability, without constructing a diagnoser. A state-based method for DES diagnosability is proposed in [6], which provides an algorithm for computing a sequence of test commands to detect faults.
All aforementioned works are centralized fault diagnosis, in which a centralized diagnoser is responsible for the diagnosis in a system. However, many large-sized and complex systems are physically decentralized, where diagnosis information collected by decentralized local sites will be sent to a centralized site for analysis. In this case, a variable communication delay needs to be introduced, which makes the diagnosis technique more complicated. Although all diagnosis information can be collected centrally, due to the data delay, a centralized fault diagnosis method may not always be suitable for decentralized systems.
This work focuses on the decentralized diagnosis of the DESs with multiple local observers, each of which possesses its own sensor without involving any communication among diagnosers, so as to make up for the defects of the centralized diagnosis. The authors in [27] propose a coordinated decentralized architecture with a coordinator, which extends the notion of diagnosability from centralized systems [7] to decentralized cases. In [28], a failure is characterized as a violation of a specification represented by a language, and codiagnosability is studied in a specification language framework, which is later specialized to the failure event framework. In [29], a hierarchical paradigm is developed by incorporating the protocol in [28], which leads to a hierarchy of architectures and encompasses many existing structures for decentralized diagnosis. Considering global consistency conditions, the authors in [30] discuss the diagnosis problem of the distributed setting with fault pattern and define local pattern recognizers for that purpose.
This paper deals with the decentralized fault pattern diagnosability verification of DESs, where the fault patterns are modeled by finite automata. We develop a codiagnosability notion to formalize the decentralized pattern diagnosability of the system and provide an algorithm for its verification. We first compute a synchronous product structure, which encodes a system and a pattern. A failure diagnoser structure is constructed based on the synchronous product by considering the faulty behaviors of the system, and a non-failure diagnoser is calculated based on the normal behaviors. Then, we present a local non-failure diagnoser based on the local projection. In order to verify the codiagnosability of the system and the pattern, a verifier structure is derived by taking the product of failure diagnoser and local non-failure diagnoser. By studying the indeterminate cycles of the verifier, we establish necessary and sufficient verification conditions of codiagnosability. The successive steps of the proposed approach are visualized in Figure 1.
The first contribution of the paper focuses on the construction of failure and non-failure diagnosers, which track the normal and faulty behaviors of the system, separately. The second contribution is the computation of the local diagnoser with respect to the local projection. The third contribution is to extend the necessary and sufficient conditions stated for pattern diagnosability [14] to a decentralized setting. This is achieved by constructing a verifier structure, which is the product of the failure and local non-failure diagnosers. The proposed method is shown to be of polynomial complexity. We also present a method to extend the proposed verifier so that it can be applied to centralized cases.
The rest of the paper is organized as follows. Section 2 reviews finite state automata. Section 3 begins with the notions of fault patterns and then touches upon decentralized fault pattern diagnosis in DESs. Section 4 provides an algorithm for fault pattern codiagnosability with the local diagnosers. Section 5 analyses the complexity of the proposed method. Section 6 concludes this research.

2. Preliminaries

In this paper, we use N to denote the set of strictly positive integers. In what follows, we consider the model of finite automaton and its related notions.
Definition 1.
A deterministic finite automaton (DFA) is a four-tuple G = ( L , Σ , δ , l 0 ) , where L is the set of states, Σ is the set of events, l 0 is the initial state, and δ : L × Σ L is the partial transition function: l = δ ( l , σ ) means that there is a transition labeled with event σ Σ from state l to state l . Let Σ be the set of all finite strings defined over Σ, including the empty string λ. Transition function δ can be extended to L × Σ L in an usual way: given l L , w Σ , and σ Σ , δ ( l , λ ) = l and δ ( l , w σ ) = δ ( ( δ ( l , w ) ) , σ ) .
For a DFA G with partial observation, the events set Σ can be partitioned into two disjoint subsets Σ = Σ o Σ u o , where Σ o and Σ u o represent the set of observable events and the set of unobservable events, respectively. Given two strings w , w Σ , the concatenation of the two strings is a string w = w w Σ , where the string w is followed by w .
For a state l L , the set of active events at l is defined as Λ ( l ) = { σ Σ | l L : l = δ ( l , σ ) } . Given a string w Σ , its length is defined as the number of items in w , denoted by | w | . A string w Σ is said to be a prefix of w Σ if there exists w Σ , such that w = w w . The language generated by the DFA G is defined as L ( G ) = { s Σ | δ ( l 0 , s ) ! } , where δ ( l 0 , s ) ! means that “ δ ( l 0 , s ) is defined”. Given a string w L ( G ) , L ( G ) / w denotes the post-language of L ( G ) after w , defined as L ( G ) / w = { w Σ ww L ( G ) } . A run that begins with the initial state l 0 has the form:
ρ = l 0 σ 0 l 1 σ 1 l n σ n l n + 1 ,
where l i , l i + 1 L , σ i Σ , and l i + 1 = δ ( l i , σ i ) for i { 0 , 1 , , n } . In this case, we say that the run ρ is associated with the string w = σ 0 σ n Σ . A run is a cycle if l n + 1 = l 0 .
For a decentralized system G, we use Σ o i to denote the set of events observed by the local observer, simply called the local observable event set, and use Σ u o i to denote the set of local unobservable event set, where Σ u o i = Σ Σ o i , i = 1 , , m , m N , m is the number of the local sites. For a set of observable events Σ o of G, Σ o = i = 1 m Σ o i , i = 1 , , m . Without loss of generality, we assume that there is no cycle composed only of silent events in the system G. Note that in the decentralized architecture, different sites may have events in common, i.e., for all i , j { 1 , , m } and i j , the set of Σ o i Σ o j is not necessarily an empty set. Given a site i, i = 1 , , m , the local projection P i : Σ Σ o i is defined as follows: for w Σ and σ Σ ,
P i ( w σ ) = P i ( w ) σ if σ Σ o i P i ( w ) otherwise ,
and P i ( λ ) = λ . In other words, a local projection function P i tracks only its corresponding local observable events. For i = 1 , , m , a site i has its own set of observable events and does not communicate with each other. For a string w Σ o i , the inverse of the local projection P i 1 : 2 Σ o i 2 Σ is defined by P i 1 ( { w } ) = { w L ( G ) | P i ( w ) = w } . Let G 1 = ( L 1 , Σ 1 , δ 1 , l 0 1 ) and G 2 = ( L 2 , Σ 2 , δ 2 , l 0 2 ) . The parallel composition is defined as G 1 | | G 2 = P 1 1 ( G 1 ) × P 2 1 ( G 2 ) , where P i : ( Σ 1 Σ 2 ) Σ i , i = 1 , 2 .
Example 1.
Consider a DFA G 1 shown in Figure 2 with respect to the local projection P i , i = 1 , 2 , where L = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 } is the set of states, 0 is the initial state, Σ = { a , b , c , u , f 1 , f 2 } is the set of events, and Σ o = { a , b , c } is the set of observable events with Σ o 1 = { a , b } and Σ o 2 = { a , c } . The transition function is defined as δ ( 0 , a ) = 1, δ ( 1 , f 2 ) = 2, δ ( 2 , b ) = 7, δ ( 2 , c ) = 7, δ ( 7 , a ) = 7, δ ( 7 , c ) = 7, δ ( 2 , f 2 ) = 3, δ ( 3 , b ) = 4, δ ( 4 , c ) = 5, δ ( 5 , a ) = 6, and δ ( 6 , u ) = 6. The local projection P 1 of system G 1 is defined as P 1 ( a ) = a, P 1 ( b ) = b, P 1 ( c ) = P 1 ( f 1 ) = P 1 ( f 2 ) = P 1 ( u ) = λ, and P 2 is defined as P 2 ( a ) = a, P 2 ( c ) = c, and P 2 ( b ) = P 2 ( f 1 ) = P 2 ( f 2 ) = P 2 ( u ) = λ. A possible run generated by system G 1 from the initial state is
ρ : 0 a 1 f 1 2 f 2 3 b 4 c 5 a 6 ,
where the associated string of ρ is w = a f 1 f 2 b c a . The local projection P 1 of w with respect to Σ o 1 is P 1 ( w ) = a b a , and P 2 with respect to Σ o 2 is P 2 ( w ) = a c a .

3. Decentralized Fault Pattern Diagnosis of Automata

A fault pattern, simply called a pattern, is defined as a finite-state automaton whose accepted language is the objective to be diagnosed, which represents the occurrence of complex or composite faults.
Definition 2.
A (fault) pattern of a DFA G = ( L , Σ , δ , l 0 ) is Ω = ( S , Σ , δ Ω , s 0 , s Ω ) , where S is the set of states, Σ is the set of events, s 0 S is the initial state, s Ω S is the single final state, and δ Ω : S × Σ S is the transition function. The pattern Ω satisfies a complete condition, i.e., for all s S , Λ ( s ) = Σ and the final state s Ω is stable, i.e., for all σ Σ , δ Ω ( s Ω , σ ) = s Ω .
We use Σ F to denote the set of target events that lead to the occurrence of the pattern, where Σ F Σ u o . The language of pattern Ω , denoted by L ( Ω ) , satisfies L ( Ω ) = Σ due to its complete condition. We use L A ( Ω ) to denote the accepted language of Ω , defined as L A ( Ω ) = { w L ( Ω ) | δ Ω ( s 0 , w ) = s Ω } , and define the target language of DFA G as L A ( G ) = L ( G ) L A ( Ω ) .
Example 2.
An example of pattern Ω is shown in Figure 3 with the set of states S = { N 1 , N 2 , F } , the set of target events Σ F = { f 1 , f 2 } , the final state s Ω = F , and the initial state s 0 = N 1 . The accepted language of the pattern Ω is L A ( Ω ) = Σ f 1 Σ f 2 Σ .
In the following, we provide a formal definition, namely codiagnosability, with respect to the decentralized system and the pattern, detailed in Definition 3.
Definition 3.
Given a DFA G, a pattern Ω, and the local projection P i , i { 1 , , m } , G is codiagnosable with regard to Ω and P i if
( k N )   ( w L A ( G ) )   ( w L ( G ) / w ) ( | w | k ) ( i { 1 , , m } ) [ P i 1 ( P i ( w w ) ) L A ( G ) ] .
According to Definition 3, the system G is codiagnosable with respect to the local projection P i and the pattern Ω if and only if for any string ww accepted by the pattern Ω , there does not exist a string w , which is not accepted by Ω , such that P i ( ww ) = P i ( w ) . An algorithm of fault pattern codiagnosability test is proposed based on searching for the strings ww L A ( G ) and w L A ( G ) , such that, for i = 1 , , m , the two strings ww and w violate the codiagnosability condition of Definition 3.

4. Verification Algorithm

For the purpose of codiagnosability verification, we propose an algorithm and a theorem in this section. Definition 4 introduces a structure that will be used later, namely synchronous product, which encodes the system G and the pattern Ω .
Definition 4.
Given a DFA G = ( L , Σ , δ , l 0 ) , and a pattern Ω = ( S , Σ , δ Ω , s 0 , s Ω ) , a synchronous product G Ω of G with respect to Ω is a DFA G Ω = ( L G Ω , Σ , δ G Ω , l 0 G Ω , L F G Ω ) , where L G Ω L × S is the set of states, Σ is the set of events, l 0 G Ω = ( l 0 , s 0 ) is the initial state, L F G Ω = L × { s Ω } is the set of final states, and δ G Ω : ( L × S ) × Σ ( L × S ) is the transition function, defined as follows: for σ Σ , s , s S , l , l L , δ G Ω ( ( l , s ) , σ ) = ( l , s ) if δ ( l , σ ) = l and δ Ω ( s , σ ) = s .
Hereafter, we propose a structure, called a verifier, which is used to test the codiagnosability of the decentralized system and the fault pattern. The successive steps of the construction are provided in Algorithm 1. Without loss of generality, we assume that m = 2 , i.e., there are two local sites with their corresponding local projections and local observable event sets.
Algorithm 1: Construction of the verifier.
Input:
A pattern Ω and a DFA G = ( L , Σ , δ , l 0 ) with two local sites, where the set of the local observable events is Σ o i , i = 1 , 2 .
Output:
A verifier G v = ( L v , Σ , δ v , l 0 v ) .
 1.
Construct the synchronous product G Ω of G and Ω according to Definition 4.
 2.
Compute a failure diagnoser G f that models the faulty behaviors of the system:
1.
Construct the set of states of G f as L f = { ( l , s ) L G Ω | w Σ * : δ G Ω ( ( l ,
s ) , w ) L F G Ω } .
2.
The initial state is l 0 f = l 0 G Ω if l 0 G Ω L f , and undefined otherwise.
3.
For l f , l f L f , define the transition function δ f : L f × Σ L f of G f as δ f ( l f , σ ) = l f if there exists σ Σ , such that δ G Ω ( l f , σ ) = l f .
4.
Define the even set of G f as Σ f = { σ Σ | l f , l f L f : δ f ( l f , σ ) = l f } . Then, G f = ( L f , Σ f , δ f , l 0 f , l F f ) , where L F f is the set of final state and L F f = L F G Ω .
 3.
Compute a non-failure diagnoser G n that captures the normal behaviors of the system:
1.
Construct the states set of G n as L n = { ( l , s ) L G Ω | ( l , s ) L G Ω L F G Ω } .
2.
The initial state is l 0 n = ( l 0 , s 0 ) .
3.
For l n , l n L n , define the transition function δ n : L n × Σ L n of G n as
δ n ( l n , σ ) = l n if there exists σ Σ , such that δ G Ω ( l n , σ ) = l n .
4.
Define the set of events of G n by Σ n = { σ Σ | l n , l n L n : δ n ( l n , σ ) = l n } . Then, G n = ( L n , Σ n , δ n , l 0 n ) .
 4.
For i = 1 , 2 , define function R i : Σ n Σ R i as
R i ( σ ) = σ if σ Σ o i or σ Σ f , σ R i if σ Σ u o i Σ f .
Construct local non-failure diagnoser G n i = ( L n , Σ R i , δ n i , l 0 n ) , where δ n i : L n × Σ R i L n is the transition function defined as δ n i ( l n , R i ( σ ) ) = l n if there exists σ Σ , l n , l n L n , such that δ n ( l n , σ ) = l n .
 5.
Construct the verifier G v = ( L v , Σ R 1 Σ R 2 Σ , δ v , l 0 v ) = G n 1 | | G n 2 | | G f .
Note that for a state ( l n 1 , l n 2 , l f ) of L v , it includes three components: l n 1 , l n 2 , and l f , where l n 1 is a state of G n 1 , l n 2 is a state of G n 2 , and l f is a state of G f . The verifier G v is constructed by tracking the strings of the local non-failure diagnosers and the failure diagnoser that have the same observation with respect to the local projection P i , i = 1 , 2 . In other words, the transition relation δ v of G v tracks three sequences: one in the local non-failure diagnoser G n 1 , one in the local non-failure diagnoser G n 2 , and another in the failure diagnoser G f , which generate the same sequence of observed labels.
In Step 1 of Algorithm 1, we construct a synchronous product of a system G and a pattern Ω , which encodes the system and the pattern. Then, a failure diagnoser G f is computed to track the faulty behavior of the system, which is the co-accessible part of the synchronous product with respect to the faulty strings. By Step 3, we build a non-failure diagnoser structure G n that is the accessible part of the synchronous product by considering the normal behavior of the system. In Step 4, we establish a local non-failure diagnoser G n i based on the local projection. In this way, the event set Σ u o i Σ f can be renamed with respect to the local projection and the set of faulty events. Finally, by taking the product of the local non-failure diagnosers and the failure diagnoser, a verifier G v of the system G and pattern Ω can be set up, which is used to test the codiagnosability of the decentralized system.
Definition 5.
Given the verifier G v of a DFA G and a pattern Ω, for 0 < m n , m, n N , a cycle c l : l v m , σ m , l v m + 1 , , l v n , σ n , l v m of G v is said to be an indeterminate cycle if for state l v j = ( l n 1 j , l n 2 j , l f j ) L v , j = m , m + 1 , , n , l f j L F f , and there exists σ j , j { m , m + 1 , , n } , such that σ j Σ .
Theorem 1.
Let G be a DFA with the local projection P i , i = 1 , 2 , and a pattern Ω. G is not codiagnosable with respect to P i and Ω if and only if there exists an indeterminate cycle in G v .
Proof. 
(if) Suppose that there exists an indeterminate cycle c l : l v m , σ m , l v m + 1 , , l v n , σ n , l v m . Then, there exists a string s v t v generating a run l 0 v , σ 0 , , l v m , σ m , l v m + 1 , , l v n , σ n , l v m in G v , such that for j = m , m + 1 , , n , l f j L F f . Define
P R 1 : ( Σ R 1 Σ R 2 Σ ) Σ R 1 ,
P R 2 : ( Σ R 1 Σ R 2 Σ ) Σ R 2 ,
P Σ : ( Σ R 1 Σ R 2 Σ ) Σ .
By G v = G n 1 | | G n 2 | | G f , it concludes that L ( G v ) = P R 1 1 ( L ( G n 1 ) ) P R 2 1 ( L ( G n 2 ) ) P Σ 1 ( L ( G f ) ) , where L ( G v ) , L ( G n i ) , and L ( G f ) are the generated languages of G v , G n i , i = 1 , 2 , and G f , respectively. Consequently, there exists a string s t = P Σ ( s v t v ) in G f , such that s = P Σ ( s v ) L A ( G ) , t = P Σ ( t v ) , and s t L A ( G ) (see Step 2 of Algorithm 1).
Let s R 1 = P R 1 ( s v t v ) . There exists a string s 1 in G n , such that P Σ ( s R 1 ) = s 1 and P Σ ( s R 1 ) = P Σ ( P R 1 ( s v t v ) ) . With a slight abuse of notation, we have P 1 ( s 1 ) = P 1 ( s t ) . Similar to s R 1 , there exists a string s R 2 in G n 2 and s 2 in G n , such that s 2 = P Σ ( s R 2 ) . For the same reason, we have P 2 ( s 2 ) = P 2 ( s t ) , where s t L A ( G ) , and s 1 , s 2 L A ( G ) (see Step 3 of Algorithm 1). For the string s v t v with arbitrary length, the strings s 1 and s 2 can also be extended long enough. This implies that G is not codiagnosable with respect to pattern Ω and local projection P i .
(only if) Suppose that G is not codiagnosable with respect to Ω and P i . Then, there exists a string s L A ( G ) , t L A ( G ) / s , and strings s 1 , s 2 L A ( G ) , such that P 1 ( s 1 ) = P 1 ( s t ) , P 2 ( s 2 ) = P 2 ( s t ) .
According to Steps 3 and 4 of Algorithm 1, there exists a string s R 1 in G n 1 and a string s R 2 in G n 2 , such that s R 1 = R 1 ( s 1 ) and s R 2 = R 1 ( s 2 ) , where R can be extended from Σ to Σ as the usual way. Consider two prefixes s R 1 of s R 1 and s R 2 of s R 2 , such that P 1 ( P Σ ( s R 1 ) ) = P 1 ( s ) and P 2 ( P Σ ( s R 2 ) ) = P 2 ( s ) . Since s 1 , s 2 L A ( G ) , P Σ ( s R 1 ) , P Σ ( s R 2 ) L A ( G ) holds. As a result, there exist two runs in G n 1 and G n 2 , beginning from l 0 n and generated by s R 1 , s R 2 , respectively, with the forms
ρ s R 1 : l 0 n s R 1 l s R 1 , and ρ s R 2 : l 0 n s R 2 l s R 2 .
In addition, since s L A ( G ) , according to Step 2 of Algorithm 1, there exists a run in G f beginning from l 0 f generated by s with the form of ρ s : l 0 f s l s .
Similarly, three runs in G n 1 , G n 2 , G f can be generated by s R 1 , s R 2 , s t , respectively, with the form of
ρ s R 1 : l 0 n s R 1 l s R 1 , ρ s R 2 : l 0 n s R 2 l s R 2 , and ρ s t : l 0 f s t l s t
such that P 1 ( P Σ ( s R 1 ) ) = P 1 ( s t ) and P 2 ( P Σ ( s R 2 ) ) = P 1 ( s t ) . Then, there exists a run in G v of the form
ρ v : l 0 v l v m l v n
such that l v m = ( l s R 1 , l s R 2 , l s ) and l v m = ( l s R 1 , l s R 2 , l s t ) .
The strings s R 1 and s R 1 are extended from the string s t to be as large as possible. Then, there eventually exist two states l v i , l v j in ρ v , m i j n , such that l v i = l v j . For r = i , i + 1 , , j , the set of states { l v r } of G V form an indeterminate cycle. This contradicts the assumption and ends the proof. □
Theorem 1 provides an approach to verify codiagnosability by searching for the existence of indeterminate cycles. In the case of at least one indeterminate cycle, there are at least three strings s 1 , s 2 , and s 3 with arbitrary length in non-failure diagnosers G n 1 , G n 2 , and the failure diagnoser G f , respectively, where s 1 and s 3 have the same observation with respect to the projection P 1 , and s 2 and s 3 have the same observation with respect to the projection P 2 , violating the codiagnosability.
Example 3.
Consider a DFA G 1 shown in Figure 2 with the local observable event set Σ o i , i = 1 , 2 , and a pattern Ω shown in Figure 3. According to the first step of Algorithm 1, we construct the synchronous product G 1 Ω , as shown in Figure 4, which encodes the information of the system G 1 and the fault pattern Ω. The second step is to obtain the failure diagnoser G 1 f , which is the co-accessible part of G 1 Ω with respect to the set of the faulty states L F G 1 Ω , as shown in Figure 5a. It should be noted that all accepted behaviors of the failure diagnoser G 1 f are faulty behaviors. Continuing Algorithm 1, we compute a non-failure diagnoser G 1 n by taking the accessible part of G 1 Ω regarding the set of normal states L G 1 Ω L F G 1 Ω , as shown in Figure 5b. Note that all generated behaviors of the non-failure diagnoser G 1 n are normal behaviors. Based on Step 4, we can calculate the local non-failure diagnosers G 1 n 1 and G 1 n 2 , respectively, by renaming the unobservable event sets Σ u o 1 Σ f = { c } and Σ u o 2 Σ f = { b } based on function R i , as shown in Figure 5c,d. It shows that the sets of the events of the local non-failure diagnosers G 1 n 1 and G 1 n 2 are Σ R 1 = { a , b , f 1 , c R 1 } and Σ R 2 = { a , b R 2 , f 1 , c } , respectively. The final step of Algorithm 1 is the computation of the verifier G 1 v of G 1 and Ω, which is obtained by G 1 v = G 1 n 1 | | G 1 n 2 | | G f , as shown in Figure 6.
According to Theorem 1, one can know that the verification of the fault pattern codiagnosability is to search for the indeterminate cycles in G 1 v . The verifier of Figure 6 has several cycles (for example, the cycles 7 N 2 7 N 2 2 N 2 C R 1 7 N 2 7 N 2 2 N 2 , 7 N 2 7 N 2 6 F C R 1 7 N 2 7 N 2 6 F , and 7 N 2 7 N 2 6 F u 7 N 2 7 N 2 6 F ). Notice that only the cycle 7 N 2 7 N 2 6 F u 7 N 2 7 N 2 6 F is an indeterminate cycle (Definition 5). The existence of the indeterminate cycle 7 N 2 7 N 2 6 F u 7 N 2 7 N 2 6 F implies that the system G 1 is not codiagnosable with respect to the local projection P i , i = 1 , 2 , and the pattern Ω (Theorem 1).
Example 4.
Consider a DFA G 2 shown in Figure 7a with the local projection P i , i = 1 , 2 and a pattern Ω in Figure 3, where Σ = { a , b , c , f 1 , f 2 } is the set of events, Σ o 1 = { a , b } , and Σ o 2 = { a , c } . According to the first step of Algorithm 1, we can construct the synchronous product G 2 Ω , as shown in Figure 7b. Continuing Algorithm 1, the failure diagnoser G 2 f can be computed accordingly, as shown in Figure 8a. By Steps 3 and 4 of Algorithm 1, we can obtain the non-failure diagnosers and the local non-failure diagnosers successively. For the sake of simplicity, we keep the local non-failure diagnosers G 2 n 1 and G 1 n 2 , which will be used later, as shown in Figure 8b,c. Continuing Step 5 of Algorithm 1, we can calculate the verifier G 2 v with respect to the local projections, as shown in Figure 8d.
Observe that there exist three cycles in the verifier G 2 v , i.e., 5 N 2 2 N 2 4 F C R 1 5 N 2 2 N 2 4 F , 5 N 2 5 N 2 4 F C R 1 5 N 2 5 N 2 4 F , and 5 N 2 5 N 2 4 F C 5 N 2 5 N 2 4 F , and the cycle 5 N 2 5 N 2 4 F C 5 N 2 5 N 2 4 F is indeterminate (Definition 5). As a consequence, the system G 2 is not codiagnosable with respect to the local projection P i , i = 1 , 2 , and the pattern Ω (Theorem 1).
Example 5.
In order to compare the codiagnosability with the system G 2 , we consider a DFA G 3 , as shown in Figure 9a, and the pattern Ω in Figure 3. The local projection of G 3 is P i , i = 1 , 2 , where Σ = { a , b , c , d , f 1 , f 2 } is the set of events, Σ o 1 = { a , b , d } , and Σ o 2 = { a , c , d } . Following Algorithm 1, the resulting structure can be obtained step by step. For simplicity, we detail the verifier G 3 v , as shown in Figure 9b. Note that there is no indeterminate cycle (Definition 5). This implies that the system G 3 is codiagnosable with respect to the local projection and the pattern Ω (Theorem 1).
Note that the pattern diagnosability verification in the centralized case can be easily obtained by marking m = 1 of Algorithm 1, i.e., the number of the local site is 1. Therefore, the verifier automaton for the centralized case is given as G v c = G n 1 | | G f , and the necessary and sufficient condition for the non-diagnosability of G is the existence of an indeterminate cycle in G v c , such that at least one event in the cycle is an event of Σ .

5. Complexity Analysis

From Definitions 1 and 2, we know that the number of states of the system G is | L | , and the number of states of the pattern Ω is | S | . Assume that the number of the local sites is m.
The complexity of performing Step 1 of Algorithm 1, which constructs the synchronous product G Ω , is O ( | L | × | S | ) , and that of Step 2 of Algorithm 1, which constructs the failure diagnoser G f , is O ( | L | × | S | ) . The complexity of performing Step 3 of Algorithm 1, which computes the non-failure diagnoser G n by deleting all the final states of G Ω , is O ( | L | × | S { s Ω } | ) . The complexity of obtaining the local non-failure diagnoser G n i in Step 4 of Algorithm 1, i = 1 , , m , is O ( | L | × | S { s Ω } | ) . By Step 5, the complexity of verifier G v construction is O ( | L | m × | S { s Ω } | m × | L | × | S | ) .
Thus, the complexity of Algorithm 1 is O ( | L | m + 1 × | S { s Ω } | m × | S | ) , which is polynomial with respect to the number of the states of G and Ω , i.e., O ( ( | L | | S | ) m + 1 ) .

6. Conclusions

The objective of this work is the verification of pattern diagnosability for decentralized DESs. In particular, the fault patterns are modeled by finite automata, providing a general way to formalize different types of failures. This improves the method in [29,31], which only targets single fault scenarios. To this end, we introduce a codiagnosability notion to encapsulate decentralized fault pattern diagnosability, and present an algorithm to test this property. In detail, we first compute a synchronous product structure to encode the system and the pattern. A failure diagnoser and a non-failure diagnoser are calculated based on the synchronous product, where the two structures are obtained by considering the normal and faulty behaviors, respectively. Then, we present a local non-failure diagnoser based on the local projection of the system. A verifier for codiagnosability verification is derived by taking the product of the failure diagnoser with the local non-failure diagnoser. Consequently, the verifier structure can track the strings of the failure and local non-failure diagnosers that have the same observations. The proposed method boasts polynomial complexity, marking an improvement over methods in [17,21]. Moreover, the approach proposed in this paper can be used for decentralized systems as well as centralized systems, enhancing the method presented in [14,15] for centralized systems.
Our future work will consider decentralized diagnosis issues of timed fault patterns, which are characterized by a sequence of events that occur in a given order at specific values of time or within specific time intervals. In certain cases, the time value of the system is compulsory. For example, in some flexible manufacturing systems, the operation of the robot must be finished in a specified time. At this point, a time value needs to be assigned to each event of the system, and the diagnoser should be calculated based on not only the event but also the time value. Another limitation of the algorithm is that an external attack is not considered in the system. With this in mind, we will consider different types of attack forms in future work, including insertion, deletion, and replacement of observations. These observations refer to sequences of observable events observed by external observers as well as intruders (aliases of attackers). Such tampering with system-generated observations may mislead system operators to make inexact, conservative, or even incorrect state estimations that are critical for many problems in the context of DESs, such as supervisory control, opacity verification, enforcement, detectability analysis, and fault diagnosis. Certainly, these problems can be addressed under the framework of centralized and/or decentralized system architectures.

Author Contributions

Methodology, formal analysis, writing—original draft preparation, Y.L.; supervision, writing—review and editing, G.L.; funding acquisition and programming, A.M.E.-S. All authors have read and agreed to the published version of the manuscript.

Funding

This research is supported by the National Key R&D Project of China under grant 2018YFB1700104. The authors extend their appreciation to King Saud University, Saudi Arabia, for funding this work through Researchers Supporting Project number (RSP2023R133), King Saud University, Riyadh, Saudi Arabia.

Data Availability Statement

Enquiries about data availability should be directed to the authors.

Conflicts of Interest

The authors declare that they have no conflict of interest.

References

  1. Cassandras, C.G. The event-driven paradigm for control, communication and optimization. J. Control Decis. 2014, 1, 3–17. [Google Scholar] [CrossRef]
  2. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: New York, NY, USA, 2008. [Google Scholar]
  3. Schuppen, J.; Silva, M.; Seatzu, C. Control of discrete-event systems-Automata and Petri net perspectives. Lect. Notes Control Inf. Sci. 2012, 433, 319–340. [Google Scholar]
  4. Zaytoon, J.; Lafortune, S. Overview of fault diagnosis methods for discrete event systems. Annu. Rev. Control 2013, 37, 308–320. [Google Scholar] [CrossRef]
  5. Lafortune, S.; Lin, F.; Hadjicostis, C.N. On the history of diagnosability and opacity in discrete event systems. Annu. Rev. Control 2018, 45, 257–266. [Google Scholar] [CrossRef]
  6. Lin, F.; Markee, J.; Rado, B. Design and test of mixed signal circuits: A discrete-event approach. In Proceedings of the 32nd IEEE Conference on Decision and Control, San Antonio, TX, USA, 15–17 December 1993; pp. 217–222. [Google Scholar]
  7. Sampath, M.; Sengupta, R.; Lafortune, S.; Sinnamohideen, K.; Teneketzis, D. Diagnosability of discrete-event systems. IEEE Trans. Autom. Control 1995, 40, 1555–1575. [Google Scholar] [CrossRef]
  8. Liang, Y.; Lai, A.; El-Meligy, M.A.; Sharaf, M. Intermittent fault manifestability of discrete event systems. Soft Comput. 2023, 27, 6999–7009. [Google Scholar] [CrossRef]
  9. Jiang, S.; Huang, Z.; Chandra, V.; Kumar, R. A polynomial algorithm for testing diagnosability of discrete-event systems. IEEE Trans. Autom. Control 2001, 46, 1318–1321. [Google Scholar] [CrossRef]
  10. Yoo, T.S.; Lafortune, S. Polynomial-time verification of diagnosability of partially observed discrete-event systems. IEEE Trans. Autom. Control 2002, 47, 1491–1495. [Google Scholar]
  11. Zhou, D.; Zhao, Y.; Wang, Z.; He, X.; Gao, M. Review on diagnosis techniques for intermittent faults in dynamic systems. IEEE Trans. Ind. Electron. 2019, 67, 2337–2347. [Google Scholar] [CrossRef]
  12. Contant, O.; Lafortune, S.; Teneketzis, D. Diagnosis of intermittent faults. Discret. Event Dyn. Syst. 2004, 14, 171–202. [Google Scholar] [CrossRef]
  13. Biswas, S. Diagnosability of discrete event systems for temporary failures. Comput. Electr. Eng. 2012, 38, 1534–1549. [Google Scholar] [CrossRef]
  14. Jéron, T.; Marchand, H.; Pinchinat, S.; Cordier, M.O. Supervision patterns in discrete event systems diagnosis. In Proceedings of the 8th International Workshop on Discrete Event Systems, Ann Arbor, MI, USA, 10–12 July 2006; pp. 262–268. [Google Scholar]
  15. Jéron, T.; Marchand, H.; Genc, S.; Lafortune, S. Predictability of sequence patterns in discrete event systems. IFAC Proc. Vol. 2008, 41, 537–543. [Google Scholar] [CrossRef]
  16. Liang, Y.; Lefebvre, D.; Li, Z. Fault pattern diagnosis of discrete-event systems by means of logical verifiers. IFAC-PapersOnLine 2022, 55, 551–556. [Google Scholar] [CrossRef]
  17. Genc, S.; Lafortune, S. Diagnosis of patterns in partially-observed discrete-event systems. In Proceedings of the 45th IEEE Conference on Decision and Control, San Diego, CA, USA, 13–15 December 2006; pp. 422–427. [Google Scholar]
  18. Wang, Z.; Wang, J.; Wang, Y. An intelligent diagnosis scheme based on generative adversarial learning deep neural networks and its application to planetary gearbox fault pattern recognition. Neurocomputing 2018, 310, 213–222. [Google Scholar] [CrossRef]
  19. Watanabe, A.T.; Sebem, R.; Leal, A.B.; Hounsell, M.d.S. Fault prognosis of discrete event systems: An overview. Annu. Rev. Control 2021, 51, 100–110. [Google Scholar] [CrossRef]
  20. Boussif, A.; Ghazel, M.; Basilio, J.C. Intermittent fault diagnosability of discrete event systems: An overview of automaton-based approaches. Discret. Event Dyn. Syst. 2021, 31, 59–102. [Google Scholar] [CrossRef]
  21. Gougam, H.E.; Pencolé, Y.; Subias, A. Diagnosability analysis of patterns on bounded labeled prioritized Petri nets. Discret. Event Dyn. Syst. 2017, 27, 143–180. [Google Scholar] [CrossRef]
  22. Pencolé, Y.; Subias, A. Timed pattern diagnosis in timed workflows: A model checking approach. IFAC-PapersOnLine 2018, 51, 94–99. [Google Scholar] [CrossRef]
  23. Pencolé, Y.; Subias, A. Diagnosability of event patterns in safe labeled time Petri nets: A model-checking approach. IEEE Trans. Autom. Sci. Eng. 2021, 19, 1151–1162. [Google Scholar] [CrossRef]
  24. Lefebvre, D.; Hadjicostis, C.N. Diagnosability of fault patterns with labeled stochastic Petri nets. Inf. Sci. 2022, 593, 341–363. [Google Scholar] [CrossRef]
  25. Lefebvre, D.; Li, Z.; Liang, Y. Verifiers for the detection of timed patterns in discrete event systems. IFAC-PapersOnLine 2022, 55, 264–269. [Google Scholar] [CrossRef]
  26. Lefebvre, D.; Li, Z.; Liang, Y. Diagnosis of timed patterns for discrete event systems by means of state isolation. Automatica 2023, 153, 111045. [Google Scholar] [CrossRef]
  27. Debouk, R.; Lafortune, S.; Teneketzis, D. Coordinated decentralized protocols for failure diagnosis of discrete event systems. Discret. Event Dyn. Syst. 2000, 10, 33–86. [Google Scholar] [CrossRef]
  28. Qiu, W.; Kumar, R. Decentralized failure diagnosis of discrete event systems. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2006, 36, 384–395. [Google Scholar]
  29. Wang, Y.; Yoo, T.S.; Lafortune, S. Diagnosis of discrete event systems using decentralized architectures. Discret. Event Dyn. Syst. 2007, 17, 233–263. [Google Scholar] [CrossRef]
  30. Ye, L.; Daguet, P. A general algorithm for pattern diagnosability of distributed discrete event systems. In Proceedings of the 24th IEEE International Conference on Tools with Artificial Intelligence, Athens, Greece, 7–9 November 2012; pp. 130–137. [Google Scholar]
  31. Moreira, M.V.; Jesus, T.C.; Basilio, J.C. Polynomial time verification of decentralized diagnosability of discrete event systems. IEEE Trans. Autom. Control 2011, 56, 1679–1684. [Google Scholar] [CrossRef]
Figure 1. Methodology.
Figure 1. Methodology.
Mathematics 11 03998 g001
Figure 2. Deterministic finite automaton G 1 .
Figure 2. Deterministic finite automaton G 1 .
Mathematics 11 03998 g002
Figure 3. Pattern Ω .
Figure 3. Pattern Ω .
Mathematics 11 03998 g003
Figure 4. Synchronous product G 1 Ω of G 1 and Ω .
Figure 4. Synchronous product G 1 Ω of G 1 and Ω .
Mathematics 11 03998 g004
Figure 5. (a) Failure diagnoser G 1 f , (b) non-failure diagnoser G 1 n , (c) local non-failure diagnoser G 1 n 1 , and (d) local non-failure diagnoser G 1 n 2 .
Figure 5. (a) Failure diagnoser G 1 f , (b) non-failure diagnoser G 1 n , (c) local non-failure diagnoser G 1 n 1 , and (d) local non-failure diagnoser G 1 n 2 .
Mathematics 11 03998 g005
Figure 6. Verifier G 1 v of G 1 and Ω .
Figure 6. Verifier G 1 v of G 1 and Ω .
Mathematics 11 03998 g006
Figure 7. (a) Deterministic finite automaton G 2 and (b) synchronous product G 2 Ω .
Figure 7. (a) Deterministic finite automaton G 2 and (b) synchronous product G 2 Ω .
Mathematics 11 03998 g007
Figure 8. (a) Failure diagnoser G 2 f , (b) local non-failure diagnoser G 2 n 1 , (c) local non-failure diagnoser G 2 n 2 , and (d) verifier G 2 v .
Figure 8. (a) Failure diagnoser G 2 f , (b) local non-failure diagnoser G 2 n 1 , (c) local non-failure diagnoser G 2 n 2 , and (d) verifier G 2 v .
Mathematics 11 03998 g008
Figure 9. (a) Deterministic finite automaton G 3 and (b) verifier G 3 v .
Figure 9. (a) Deterministic finite automaton G 3 and (b) verifier G 3 v .
Mathematics 11 03998 g009
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liang, Y.; Liu, G.; El-Sherbeeny, A.M. Polynomial-Time Verification of Decentralized Fault Pattern Diagnosability for Discrete-Event Systems. Mathematics 2023, 11, 3998. https://doi.org/10.3390/math11183998

AMA Style

Liang Y, Liu G, El-Sherbeeny AM. Polynomial-Time Verification of Decentralized Fault Pattern Diagnosability for Discrete-Event Systems. Mathematics. 2023; 11(18):3998. https://doi.org/10.3390/math11183998

Chicago/Turabian Style

Liang, Ye, Gaiyun Liu, and Ahmed M. El-Sherbeeny. 2023. "Polynomial-Time Verification of Decentralized Fault Pattern Diagnosability for Discrete-Event Systems" Mathematics 11, no. 18: 3998. https://doi.org/10.3390/math11183998

APA Style

Liang, Y., Liu, G., & El-Sherbeeny, A. M. (2023). Polynomial-Time Verification of Decentralized Fault Pattern Diagnosability for Discrete-Event Systems. Mathematics, 11(18), 3998. https://doi.org/10.3390/math11183998

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop