2. 广东工业大学 应用数学学院,广东 广州 510520;
3. 东源县科技创新中心,广东 河源 517500
2. School of Applied Mathematics, Guangdong University of Technology, Guangzhou 510520, China;
3. Scienceand Technology Innovation Center of Dongyuan, Heyuan 517500, China
离散事件系统是一种在离散状态和事件上建模的系统。事件集被划分为可观事件集(如传感器的读数)和不可观事件集(如无法被观测到的信息),其中故障事件一般属于不可观事件。离散事件系统的故障预测是通过观测一系列可观事件序列来预测故障是否将会发生,以提前做出相应的预防措施,因此,研究离散事件系统的故障预测问题,可以增强系统的稳健性和抗风险的能力,具有重要的研究意义和应用价值。故障预测方法被广泛应用于计算机文件处理系统、暖通空调系统、电力系统、智能通讯系统等。
针对离散事件系统的故障诊断研究,已经有大量的相关文献提出了各种诊断算法,其中在1995年由Sampath等[1]提出的通过构造诊断器的故障诊断方法是最早提出的解决离散事件系统故障诊断问题的算法。近年来还有其他故障诊断方法,Chen Z和Lin F[2]提出的离散事件系统框架下的主动诊断方法,也探讨了其在电池系统中的实际应用。Reshmila S和Devanathan R[3]提出了一种新的基于观测器的离散事件系统框架,并将其应用到电力系统。在文献[4]中,笔者所在课题组提出了一种基于模糊离散事件系统的安全诊断算法,可以用于医疗诊断系统。
随着对故障诊断研究的不断深入,思考如何在故障未发生前对其进行提前预测,已成为离散事件系统研究中的另一个热点方向——故障预测。Cao X R[5]首次在离散事件系统框架下提出了可预测性的概念,并且给出了离散事件系统基于语言上可预测的充分条件。You D和Wang S[6]使用带标记的Petri网的方式验证系统的可预测性。Chase C[7]分析了一维离散事件系统的状态依赖关系,提出了一种有监督的一维系统的可预测性方法。Buss S R[8]在耦合自动机的预测问题上提出了一种二分法。Genc S[9]解决了基于语言的部分观测离散事件系统中的重要事件的预测问题。
然而,现实社会中随着互联网的发展,互联网上的信息量的越来越大,用户对于系统的需求及应用系统的功能越来越多,因此数据库的规模和应用系统的规模也变得越来越庞大,集中型的诊断预测方法将直接导致组合搜索的空间爆炸,使得其复杂度随着系统规模的扩大而升高,所以,近年来分布式系统的诊断和预测算法得到广泛重视。Qiu W[10]针对分布式离散事件系统提出了一种分布式状态估计协议,分布式观察者通过有界延迟信道共享状态估计信息,进一步降低了时间和空间复杂度;Pencolé Y[11]研究了基于分布式离散事件系统的诊断问题。Yin X[12]提出了两种分布式协议来研究分布式离散事件系统的预测问题。最近,笔者所在课题组在文献[13]中提出了一种基于分布式离散事件系统的离线故障预测算法,并给出了分布式离散事件系统可预测性的充分必要条件,在文献[14]中本课题组又针对分布式离散事件系统的可靠性预测问题进行了研究。
可以看出,上述文献的离散事件系统都是针对单个故障事件进行诊断和预测,但在实际应用中,有些故障可能不是单个故障事件,而是由一系列重要事件组成的事件序列造成的故障。例如数据库系统中,数据库的读写操作都是正常的事件,若程序员操作不当,可能造成数据的 “脏读”。对此,人们提出了模式故障诊断的概念。对于模式故障的诊断,Jéron T,Marchand H等[15]在2006年最先提出了一个监督模式故障模型,该模型被建模为一个自动机,并且它具有足够的通用性,能够捕捉系统过去发生的特定轨迹,许多文献中提出的多个故障、重复故障、重大事件的顺序、故障修复事件等都可以视为该模式故障的一种特殊情况。之后,Genc S[16]基于形式语言的上下文定义了两种不同类型的模式故障:S型模式故障和T型模式故障。基于离散事件系统的模式故障的诊断和预测问题越来越引人重视。在文献[17-18]中,笔者所在课题组对S型模式故障和T型模式故障分别研究了模糊离散事件系统的故障诊断问题和经典离散事件系统安全诊断问题。Dague[19]提出的一种基于分布式系统的模式故障诊断问题的通用性算法。Jéron T[20]提出了一种基于经典集中型离散事件系统的模式故障预测的方法。最近,Geng X N[21]研究了基于随机离散事件系统的模式故障诊断问题。
笔者注意到,关于分布式离散事件系统的模式故障预测问题的研究中依然未见报道,因此本文对分布式离散事件系统的模式故障预测开展研究,提出一个基于分布式离散事件系统的模式故障诊断预测方法。首先对分布式离散事件系统的模式故障可预测性进行形式化。通过构造一个模式故障识别器,从系统所有行为中识别出所发生的模式故障并标记。然后,在模式故障识别器的基础上构建了一个模式故障预测验证器,用于验证分布式系统的可预测性。之后,得出了一个判定分布式离散事件系统模式故障可预测性的充分必要条件,并提出了相应的模式故障预测算法,实现了对分布式离散事件系统的模式故障预测。最后,对模式故障预测验证器的构建和分布式离散事件系统的模式故障预测算法进行了复杂度分析,得到了该分布式模式故障预测算法的复杂度为多项式时间的结论。
本文接下来分成7节,第1节将介绍离散事件系统的一些基础知识,第2节将对分布式离散事件系统的模式故障预测进行形式化定义,第3节将构造一个用于模式故障预测的验证器,第4节将推导模式故障预测的充分必要条件,第5节将对模式故障预测算法的复杂性进行分析,第6节举例说明模式故障预测算法在三罐水位控制系统中的应用,第7节将总结本文所做的工作。
1 离散事件系统离散事件系统通常被建模为确定型有限状态自动机
离散事件系统中的连接运算:
设任意2个事件串
给定一个事件串
系统
| $ P(s\sigma )=\left\{\begin{aligned} & P(s)\sigma ,\;\;{\text{如果}}\sigma \in {\varSigma }_{\rm{o}}\\& P(s),\;\;{\text{其他}} \end{aligned} \right.$ |
对于路径
给定一个系统
| $\left[\kern-0.15em\left[ \mu \right]\kern-0.15em\right]\triangleq \left\{\begin{aligned} & {P}^{-1}(\mu )\cap L(G)\cap {\varSigma }^{*}.{\varSigma }_{\rm{o}}\;\;,{\text{如果}}\mu \ne \varepsilon \\& \varepsilon, \qquad\qquad\qquad\quad\;\;\;\;\;\;\;\;\;{\text{其他}} \end{aligned} \right.$ |
它表示所有与路径
定义1(模式故障) 一个系统的模式故障可以定义为自动机
| $\varOmega = ({Q_\varOmega },{\varSigma _\varOmega },{\delta _\varOmega },q_\varOmega ^0,{F_\varOmega }),$ |
其中
例1 在小汽车没有制动时,拉上手刹或打开车门都是属于正常事件,但在汽车正常行驶的过程中,再拉上手刹或打开车门都是被禁止的操作,这种由一系列正常事件按某种顺序发生的事件串,可以看作模式故障,这类故障建模为自动机,如图1所示。
|
图 1 汽车中的模式故障示例 Figure 1 Example of a pattern fault in an automobile |
设系统中
终止状态集
设分布式离散事件系统
定义2(同步) 设分布式系统中的2个自动机分别为
| ${G_1}|{|_{{\varSigma _s}}}{G_2} = ({Q_1} \times {Q_2},{\varSigma _1} \cup {\varSigma _2},{\delta _{1||2}},(q_1^0,q_2^0)),$ |
其中
| ${\delta _{1||2}}(({q_1},{q_2}),\sigma ) = \left\{ \begin{array}{l} ({q_1}',{q_2}')\;,\;\;\;\;\;\;{\text{当}}\sigma \in {\varSigma _S}{\text{时}}\\ ({q_1}',{q_2})\;,\;\;\;\;\;\;\;{\text{当}}\sigma \in {\varSigma _1}\backslash {\varSigma _S}{\text{时}}\\ ({q_1},{q_2}')\;,\;\;\;\;\;\;\;{\text{当}}\sigma \in {\varSigma _2}\backslash {\varSigma _S}{\text{时}} \end{array} \right.$ |
其中
定义3 设分布式系统中的2个子系统为
| ${G_1} \times {G_2} \triangleq ({Q_1} \times {Q_2},\varSigma ,{\delta _{1 \times 2}},(q_{{G_1}}^0,q_{G_2}^0)),$ |
其中
很明显地可以得到同步系统产生的语言为
定义4(延迟闭包) 给定一个自动机
由文献[22]可以得到延迟闭包所产生的语言与系统
定义5(模式故障可诊断性) 系统
直观上,如果系统
定义6[23](模式故障
| $ \begin{array}{l}\exists n\in {\rm{N}}^{\rm{+}},\;\forall s\in {L}_{{F}_{\varOmega }}\cap L\cap {\varSigma }^{*}.{\varSigma }_{\rm{o}},\\ \exists t\in (L\cap {\varSigma }^{*}.{\varSigma }_{\rm{o}})\cup \left\{\varepsilon \right\},\;t<s\;\wedge \;t\notin {L}_{{F}_{\varOmega }}\\ {\text{当且仅当}}\\ \forall u\in \left[\kern-0.15em\left[P(t)\right]\kern-0.15em\right],\;\forall v\in L/u,\;\left|\right|P(v)\left|\right|\;\geqslant \;n\;\Rightarrow \;u.v\in {L}_{{F}_{\varOmega }}\end{array}$ |
直观上,上面定义表示对于任何能被模式故障诊断的路径
上一节考虑的是集中型的模式故障预测,下面将给出分布式离散事件系统的模式故障可预测性形式化定义。
定义7(分布式模式故障
| $ \begin{array}{l}\exists n\in {\rm{N}}^{\rm{+}},\;\forall s\in {L}_{{F}_{\varOmega }}\cap L\cap {\varSigma }^{*}.{\varSigma }_{\rm{o}},\\ \exists t\in (L\cap {\varSigma }^{*}.{\varSigma }_{\rm{o}})\cup \left\{\varepsilon \right\},\;t<s\;\wedge \;t\notin {L}_{{F}_{\varOmega }}\\ {\text{当且仅当}}\\ \exists i\in {I}_{\rm{M}},\forall u\in \left[\kern-0.15em\left[{P}_{i}(t)\right]\kern-0.15em\right],\;\forall v\in L/u,\;\left|\right|{P}_{i}(v)\left|\right|\geqslant n\Rightarrow u.v\in {L}_{{F}_{\varOmega }}\end{array}$ |
直观上,该定义表示对于任何能被模式故障所诊断的,并以可观事件结尾的路径
图2为可预测性在语言层面的解释,对于任何可被模式故障诊断的轨迹
|
图 2 可预测性的直观图表示 Figure 2 A direct visual representation of predictability |
现在笔者将讨论模式故障
定义8(先导状态) 在
它的含义是:如果存在一个状态
定义9(前驱状态集) 设在模式故障预测验证器
定义10(可达部分) 设在模式故障预测验证器
| $A({V_G},\tau ) = ({Q_G}',{\varSigma _{\rm{o}}},{ \to _G},\tau )$ |
在本节笔者将说明如何构造模式故障预测验证器来验证分布式系统的模式故障可预测性,首先需要构造一个模式故障预测验证器,再进行判断,下面给出构造模式故障预测验证器的方法。
步骤1 构造模式故障识别器,即同步积为
步骤2 构造模式故障识别器
步骤3 根据定义3构造标记转移系统(Label Transfer System,简称LTS)
| $ \begin{array}{l} \varGamma = ({Q_\varGamma },{\varSigma _{\rm{o}}},{ \to _\varGamma },{\tau ^0})=U({G_\varOmega }) \times {U_1}({G_\varOmega }) \times {U_2}({G_\varOmega })=\\ ({Q_{{G_\varOmega }}} \times {Q_{{G_\varOmega }1}} \times {Q_{{G_\varOmega }2}},{\varSigma _{\rm{o}}},{ \to _\varGamma },(q_{{G_\varOmega }}^0,q_{{G_\varOmega }1}^0,q_{{G_\varOmega }2}^0)) \end{array} $ |
其中标记转移系统的初始状态为
| $ \begin{split} & (q,l;{q}_{1},{l}_{1};{q}_{2},{l}_{2}){\stackrel{\sigma }{\to }}\\&{\varGamma }\left\{\begin{array}{l}(q',l';{q}_{1},{l}_{1};{q}_{2}',{l}_{2}');\\ (q',l';{q}_{1},{l}_{1};{q}_{2}',{l}_{2}');\\ (q',l';{q}_{1}',{l}_{1}';{q}_{2}',{l}_{2}');\end{array}\begin{array}{c}{\text{当}}\sigma \in {\varSigma }_{\rm{o}}-{\varSigma }_{\rm{o,1}}{\text{时}}\;\\ {\text{当}}\sigma \in {\varSigma }_{\rm{o}}-{\varSigma }_{\rm{o,2}}{\text{时}}\;\\ {\text{当}}\sigma \in {\varSigma }_{\rm{o,1}}\cap {\varSigma }_{\rm{o,2}}{\text{时}}\end{array}\right. \end{split}$ |
步骤4 根据定义9计算并标记出先驱状态
步骤5 将以上步骤生成的标记转移系统
| $ {l}_{i}'=\left\{\begin{array}{ll} {\rm{F}},& {\text{如果}}{l}_{i}={F}_{\varOmega }\\ {\rm{N}},& {\text{其他}}\end{array}\right.$ |
其中{N,F}标签的含义是N-正常状态;F-已被模式故障诊断的状态。
经过以上5个步骤,可以构造出一个精简的模式故障预测的验证器
定义11(
定理1(模式故障可预测的充分必要条件) 若系统
证明 下面先用反证法证明必要性。设
对于任意模式故障,总有某个站点
设验证器
下面再用反证法证明充分性。设模式故障预测验证器的前驱状态集
设模式故障预测验证器存在一个先驱状态为
根据定理1,可以通过检验定理1中的条件是否满足来验证
算法1 (检验分布式离散事件系统的模式故障可预测算法)
步骤1 对于给定的系统
步骤2 构造模式故障识别器
步骤3 构造标记转移系统(LTS)
| $ \varGamma = ({Q_\varGamma },{\varSigma _{\rm{o}}},{ \to _\varGamma },{\tau ^0})=U({G_\varOmega }) \times {U_1}({G_\varOmega }) \times {U_2}({G_\varOmega }) $ |
步骤4 计算并标记出先驱状态
步骤5 将生成的标记转移系统
步骤6 检查模式故障预测验证器的前驱状态集
设
定理2
证明 根据验证器的构造过程,构造模式识别器
接下来,根据验证器
定义12 设
| $ \begin{array}{l} {V_\tau } = \{ \tau = (q,l;{q_1},{l_1}; \cdots ;{q_m},{l_m}) \in {Q_\varGamma }| \\ ({l_i} = N) \wedge (\exists s \in \varSigma _{\rm{o}}^*) \wedge ({\tau ^0}{\xrightarrow{s}_\varGamma }\tau )\} \\ {E}_{\tau }=\{({\tau }_{i},{\tau }_{j})\in {V}_{\tau }^{2}|\\ {\tau }_{i},{\tau }_{j}\in {Q}_{\varGamma },\exists \sigma \in {\varSigma }_{\rm{o}},{\text{满足}}{\tau }_{i}{\stackrel{\sigma }{\to }}_{\varGamma }{\tau }_{j}\} \end{array} $ |
引理1[12] 设
定理3 设
证明 由定义12可得
| $ \begin{array}{l} |{V_\tau }| \leqslant |Q| \times {(2|Q|)^m} = {n_1}{(2{n_1})^m}\\ |{E_\tau }| \leqslant |{V_\tau }| \times (m + 2)|{\varSigma _{\rm{o}}}| \leqslant {n_1}{(2{n_1})^m}(m + 2){n_2}。\end{array} $ |
由引理1可得判断定向图
定理4 设
证明 根据定理1可知,判定
由文献[20]可以得到集中式的离散事件系统模式故障可预测性的复杂度为
下面结合三罐水位控制系统(A Three-Tank Water Level Control System,TTW)来说明如何检测分布式系统的模式故障可预测性。
例2 如图3所示,在三罐水位控制系统(TTW)中,有1个储水池、3个储水罐(T1,T2,T3)、1个抽水泵和7个阀门(V0,V1,V2,V3,V4,V5,V6)。
|
图 3 三罐水位控制系统(TTW) Figure 3 The three tank water level control system |
首先,将储存池装满水,此时,打开抽水泵,记为PON,打开阀门V0,记为
首先,将该三罐水位控制系统建模成一个有限状态机,如图4所示。事件集为{Increase,Decrease,PON,POFF,
|
图 4 TTW的有限状态机 Figure 4 The finite-state machine of TTW |
|
图 5 TTW的模式故障 Figure 5 The patterns fault |
然后,根据算法1可以构建出三罐水位控制系统的不可观测闭包
|
图 6 TTW的不可观测闭包
|
|
图 7 站点1的不可观测闭包
|
|
图 8 站点2的不可观测闭包
|
其次,根据算法1可以构建出三罐水位控制系统的标记转移系统
|
图 9 标记转移系统
|
|
图 10 模式故障预测验证器
|
最后,根据图8可以看出模式故障预测验证器的前驱状态为
本文笔者对离散事件系统的模式故障预测进行了研究,将模式故障看作一个自动机,从而跟系统
| [1] |
SAMPATH M, SENGUPTA R, LAFORTUNE S, et al. Diagnosability of discrete-event systems[J].
IEEE Transactions on Automatic Control, 1995, 40(9): 1555-1575.
DOI: 10.1109/9.412626. |
| [2] |
CHEN Z, LIN F, WANG C, et al. Active diagnosability of discrete event systems and its application to battery fault diagnosis[J].
IEEE Transactions on Control Systems Technology, 2014, 22(5): 1892-1898.
DOI: 10.1109/TCST.2013.2291069. |
| [3] |
RESHMILA S, DEVANATHAN R. Diagnosis of power system failures using observer based discrete event system[C]// 2016 IEEE First International Conference on Control, Measurement and Instrumentation (CMI). Kolkata: IEEE, 2016: 131-135.
|
| [4] |
LIU F C. Safe diagnosability of fuzzy discrete-event systems and a polynomial-time verification[J].
IEEE Transactions on Fuzzy Systems, 2015, 23(5): 1534-1544.
DOI: 10.1109/TFUZZ.2014.2362767. |
| [5] |
CAO X R. The predictability of discrete event systems[J].
IEEE Transactions on Automatic Control, 1989, 34(11): 1168-1171.
DOI: 10.1109/9.40745. |
| [6] |
YOU D, WANG S G, SEATZU C. Verification of fault-predictability in labeled petri nets using predictor graphs[J].
IEEE Transactions on Automatic Control, 2019, 64(10): 4353-4360.
DOI: 10.1109/TAC.2019.2897272. |
| [7] |
CHASE C, RAMADGE P. Predictability of a class of supervised one-dimensional systems[C]// IEEE International Symposium on Intelligent Control. Philadelphia: IEEE, 1990: 670-675.
|
| [8] |
BUSS S R, PAPADIMITRIOU C H, TSITSIKLIS J N. On the predictability of coupled automata: an allegory about chaos[C]// Proceedings 31st Annual Symposium on Foundations of Computer Science, St. Louis: IEEE, 1990: 788-793.
|
| [9] |
GENC S, LAFORTUNE S. Predictability of event occurrences in partially-observed discrete-event systems[J].
Automatica, 2009, 45(2): 301-311.
DOI: 10.1016/j.automatica.2008.06.022. |
| [10] |
QIU W, KUMAR R. A protocol for distributed state estimation in discrete event systems[J].
IFAC Proceedings Volumes, 2007, 40(6): 217-222.
DOI: 10.3182/20070613-3-FR-4909.00039. |
| [11] |
PENCOLÉ Y. Diagnosability analysis of distributed discrete event systems[C]// 16th European Conference on Artificial Intelligence. Valencia: IOS Press, 2004: 43-47.
|
| [12] |
YIN X, LI Z. Decentralized fault prognosis of discrete event systems using state estimate based protocols[J].
IEEE Transactions on Cybernetics, 2019, 49(4): 1302-13.
DOI: 10.1109/TCYB.2018.2799961. |
| [13] |
LIU F C. Predictability of failure event occurrences in decentralized discrete-event systems and polynomial-time verification[J].
IEEE Transactions on Automation Science and Engineering, 2019, 16(4): 1-7.
DOI: 10.1109/TASE.2019.2938654. |
| [14] |
LIU F C. Reliable predictability of failure events for decentralized discrete-event systems[C]// 2018 37th Chinese Control Conference (CCC), Wuhan: [s.n.], 2018: 2048-2053.
|
| [15] |
JÉRON T, MARCHAND H, PINCHINAT S, et al. Supervision patterns in discrete event systems diagnosis[C]// 2006 8th International Workshop on Discrete Event Systems. Ann Arbor: IEEE, 2006: 262-268.
|
| [16] |
GENC S, LAFORTUNE S. Diagnosis of patterns in partially-observed discrete-event systems[C]// Proceedings of the 45th IEEE Conference on Decision and Control. San Diego: IEEE, 2006: 422-427.
|
| [17] |
石聪聪, 刘富春. 模糊离散事件系统基于模式的故障诊断[J].
广东工业大学学报, 2019, 36(1): 39-45.
SHI C C, LIU F C. A pattern-based failure diagnosis of fuzzy discrete-event systems[J]. Journal of Guangdong University of Technology, 2019, 36(1): 39-45. |
| [18] |
刘富春, 唐顺桥, 赵锐, 等. 离散事件系统基于模式的安全故障诊断[J].
控制理论与应用, 2020, 37(1): 162-168.
LIU F C, TANG S Q, ZHAO R, et al. Safe pattern-based diagnosability of discrete-event systems[J]. Control Theory & Applications, 2020, 37(1): 162-168. DOI: 10.7641/CTA.2019.80644. |
| [19] |
DAGUE, PHILIPPE, Y E, et al. An optimized algorithm of general distributed diagnosability analysis for modular structures[J].
IEEE Transactions on Automatic Control, 2017, 62(4): 1768-1780.
DOI: 10.1109/TAC.2016.2593626. |
| [20] |
JÉRON T, MARCHAND H, GENC S, et al. Predictability of sequence patterns in discrete event systems[J].
IFAC Proceedings Volumes, 2008, 41(2): 537-543.
DOI: 10.3182/20080706-5-KR-1001.00091. |
| [21] |
GENG X N, OUYANG D T, JIANG Z G. Pattern diagnosis for stochastic discrete event systems[J].
Engineering Applications of Artificial Intelligence, 2020, 87: 1-10.
|
| [22] |
CASSANDRAS C G, LAFORTUNE S. Introduction to discrete event systems[M]. New York: Springer, 2010: 53-133.
|
| [23] |
Genc S, Lafortune S. Predictability in discrete-event systems under partial observation[J].
IFAC Proceeding Volums, 2006, 39(13): 1461-1466.
DOI: 10.3182/20060829-4-CN-2909.00243. |
2021, Vol. 38

