《电子技术应用》
您所在的位置:首页 > 测试测量 > 设计应用 > 一种新型的故障检测定位方法研究
一种新型的故障检测定位方法研究
来源:电子技术应用2012年第11期
毋建平
中国人民解放军93868部队,宁夏 银川750025
摘要: 针对大型复杂系统故障定位耗时长等问题,在分析故障树特征的基础上,改进了遗传算法,设计了基于故障树底事件的故障检测定位方法。该方法将顺序检测融入到改进的遗传算法检测当中,在工程应用领域体现了一定的优越性。仿真实验结果表明,该方法能够准确定位故障,有助于提高故障检测定位的效率。
中图分类号: TP306+.2
文献标识码: A
文章编号: 0258-7998(2012)11-0136-03
A Late-model method of fault test and localization
Wu Jianping
Chinese Army No. 93868, Yinchuan 750025, China
Abstract: Aiming at the problem of consuming long time in fault localization at the large and complex system, on the basis of the characteristics about the fault tree analysis, improve genetic algorithm, this paper design a fault test localization method which based on the bottom events of fault tree. The method introduces the sequence test into the improved GA test, and exhibits preferable superiority in the field of the engineering application. The result expresses that the method can locate the fault accurately and can help to improve the efficiency of fault test and localization.
Key words : test and localization; fault tree; GA; bottom event

    目前,保障部队的装备故障检测定位方法主要采用传统的检测方法,即对所有需要测试的部件一一进行检测对比,以确定故障的位置。但这种故障定位方法主要存在两个问题:(1)抓不住重点。传统的检测方法按预先设定的顺序进行检测,直到检测完所有的部件,缺乏灵活性。(2)故障检测定位时间长。检测中,没有对正常部件和故障部件加以区别,造成了在对正常部件检测过程中不必要的时间浪费。为了解决这两个问题,本文将故障树分析法FTA(Fault Tree Analysis)与遗传算法GA(Genetic

Arithmetic)引入故障的检测定位方法中。
    对于大型复杂系统,随着故障树的增大,最小割集的数量也将迅速增多。故障检测定位时,如何在较短的时间内得出正确的结论,提高故障检测效率,对部队装备保障的维修工作具有十分重大的意义。参考文献[1]中,由于BDD的规模随着故障树的底事件数目的增加呈指数增长,过程复杂、计算量大;参考文献[2]虽然避免了在检测过程中发生的重复性,但其检索时间较长;参考文献[3]在综合考虑搜索成本、故障概率及影响程度的基础上对最小割集的检测过程进行排序,取得了较好的成果,但所涉及到的矩阵转换等数学方法复杂、内在开销大、容易出错。
    本文综合考虑以上因素,采用均匀初始化的方法将整个故障树底事件均匀地分成几个等份,再运用遗传算法进行搜索并检测,如果发现某个底事件异常,则对包含该底事件的最小割集进行顺序检测,以期尽早定位故障。
1 故障树分析
    故障树分析是1961年美国的WATSON H A提出的,主要用于大型复杂系统可靠性、安全性分析和风险评价的一种方法。故障树是系统的不希望事件(顶事件)与引起它的各部件或子系统的故障事件(底事件)之间的逻辑关系图,实质上是实际系统的故障组合和传递的逻辑关系的正确描述[4]。故障树分析法以顶事件作为分析目标,搜索找出所有可能引起顶事件的直接原因(最小割集)。
    最小割集是导致顶事件发生的底事件最小组合,是故障树进行定性分析和定量分析的最主要的手段,也是进行其他分析的基础[5]。一个最小割集就是导致顶事件发生的主要途径,因此,任意一个最小割集就代表系统的一种故障。所以,对顶事件的故障定位过程就是逐一对其最小割集进行排查测试的过程。
   底事件是故障树的最小组成单元,对应着设备系统的一个部件单元,是部队装备测试保障工作的直接对象。图1所示为某型导弹的系统故障树模型,T为顶事件,Gi(i=1,2,3)为中间事件,Bj(j=1,2,…6)为底事件。

    基于故障树的故障检测就是对底事件逐一与其标准范围进行比对,超出正常范围即说明该底事件异常。但这并不一定会导致顶事件的发生,因为顶事件发生的直接原因是由某一个最小割集故障造成的。用sign(i)表示第i个底事件的检测状态,如果该底事件尚未检测用0表示,否则用1表示;fault_sum表示故障树底事件检测状态的和,如式(1)所示:
  
式中,event为故障树的底事件总数。本文的故障检测定位的思路是:通过改进的遗传算法使式(1)快速达到最大值的同时,尽早找出导致顶事件发生的最小割集。
2 遗传算法
    对于特定的问题,遗传算法从可能潜在解的一个种群开始,而一个种群由经过基因编码的、一定规模的个体组成[6]。每个个体实际上代表一个问题实体,也就是一个可行解。借助自然遗传学的遗传算子进行复制、交叉和变异,以适应度函数最优为准则,逐代进化产生代表新的解集的种群。由此反复进化迭代,直到满足终止条件[7]。
2.1 均匀初始化
    采用遗传算法搜索故障树底事件的目的是从全部的可能事件中尽快找出顶事件发生的原因。所以,从全部的底事件群体中均匀地挑出一些个体作为初始种群是一个可行而有效的方法,即均匀初始化。设步长为正整数ΔE,将所有底事件作为整个群体进行编码,从起始位置开始每隔ΔE个个体选择一个个体作为进化的初始种群。这样,可将整个群体分为若干相同大小的小群体,基于遗传算法的故障检测定位就在这些小群体上同时进行。
2.2 遗传算法的改进
2.2.1 需求分析

  故障搜索定位过程初期,要求从全局的大范围跳跃式搜索,迅速定位故障;搜索到后期,如果尚未定位故障,应当对剩余的底事件进行地毯式搜索,避免遗漏底事件。在进行遗传操作时,初期应注重保持种群的多样性,后期应注重种群的收敛性设计。所以,在操作过程中需动态地调整交叉概率Pc、变异概率Pm及选择概率Pe。

    图2中,随着种群迭代次数的增大,交叉、变异能力逐渐减弱,选择复制能力逐渐增强,使得在种群进化的前期,赋予了较大的交叉、变异能力。目的是增强种群的多样性,有利于克服局部极小,使算法能尽早地从全局范围内搜索定位故障;而在进化的后期,顺序搜索能力增强,同时有利于提高收敛性。这种自适应遗传操作,不仅在迭代前期有较强的全局捕捉搜索能力,而且在后期有较强的查漏补余能力,具有收敛性好、避免局部极小等特点,符合本设计的目的需求。
3 故障检测定位方法设计
    故障树的任意一个最小割集的发生,都会导致顶事件的发生,而最小割集由一个或多个底事件组成,虽然底事件的发生有着不同的概率,但实际表明有可能发生概率小的事件。所以,对故障树的所有底事件进行快速检查是一种科学的方法, 具体的故障检测定位流程如图3所示。

 

 

    其中,检测最小割集就是对该最小割集中的所有底事件进行检测。如果本最小割集中的所有底事件均异常,则判断该最小割集为异常。适应度函数选为已经检测完的底事件的数目。
    (1)初始化:将故障树的所有底事件按顺序紧密地排列在一起,并分配顺序号作为整个群体,从中等步长间隔均匀地选取出一部分个体作为初始种群。
    (2)选择:依式(4)概率复制选取父代个体的下一个个体的染色体,加入子代种群。
    (3)交叉:依式(2)概率对父代个体的部分基因进行交换,形成新个体,加入子代种群。
    (4)变异:依式(3)概率对父代个体的部分基因进行变异,产生新的个体,加入子代种群。为防止溢出,变异应控制在步长以内。
    遗传操作过程中,应保持整个种群的数目不变。另外,在对故障树的底事件进行检测时,对已检测的底事件进行标记,以防止在交叉或变异过程中的重复检测带来的时间损失;图3中,同一个底事件可能存在于不同的最小割集当中,如果某个底事件异常,就要检测所有包含该底事件的最小割集,具体方法请参考文献[2]。
4 仿真分析
    某型导弹子系统故障树的底事件为188个,最小割集为350个,限于篇幅原因,本文未给出故障树。故障检测定位算法中采用实数编码,即正整数i(i=1,2,3,…,188)表示该故障树的第i个底事件。均匀初始化时,取步长ΔE=21,即初始种群(i=1,22,43,64,85,106,127,148,169),
适应度函数选择见式(1)。如果底事件在标准范围之内如果为健康(用0表示),否则该底事件异常(用1表示)。出现故障底事件,将检测包含该底事件最小割集的其他底事件,以期尽早定位故障原因。
    为此,本文以该型导弹的子系统测试数据为依据,在Windows平台下进行Matlab仿真,初始化Pcbef=0.5, Pmbef=0.9,结果如图4、图5所示。

    图4中纵坐标1表示故障(异常),0表示正常。结果显示编号为288的最小割集为导致顶事件发生的原因,其所含的底事件编号为:4,24,26,31,158,185。而其他底事件发生的不正常现象并未导致顶事件的发生。仿真结果与实际相符。
    由图5得出,在种群进化到第3代的时候已经将导致顶事件发生的最小割集定位;当种群进化到第4代时,已经检测完所有的底事件,收敛速度较快。为了能更清楚地说明问题,本文进化代数选为10,正常情况下进化到第3代时就已经定位故障,检测过程至此结束。
    仿真结果表明,本文算法进化到第3代时只检测了18个故障树的底事件,即得出将故障定位为编号288的最小割集异常的结论,而传统的顺序检测方法需要检测185个底事件才可以定位故障。可见,本文的故障检测定位算法能够大大节约故障定位时间。
    本文在深入分析了故障树及故障检测特点的基础上,对遗传算法作了一定的改进,定义了新的自适应交叉、变异和选择概率公式, 并设计了用一种均匀初始化
的新型自适应遗传算法的故障定位方法。仿真实验表明,该方法能够提高故障定位的效率,尤其在大型复杂故障系统中体现得更为明显。
参考文献
[1] 刘萍,吴宜灿,李亚洲,等.一种基于ZBDD求解大型故障树的基本事件排序方法[J].核科学与工程,2007,27(3):282-288.
[2] 王久崇,樊晓光,万明,等.一种改进的故障树模糊诊断的方法及其应用[J].计算机工程与应用, 2012,48(14):226-230.
[3] 姚成玉,陈东宁.基于最小割集综合排序的液压系统故障定位方法[J].中国机械工程,2010,21(11):1357-1361.
[4] 刘东.基于故障树分析的航空装备故障诊断及系统开发研究[D].西安:空军工程大学,2009.
[5] 崔焕庆,周传爱.应用Petri网求解事故树最小割集的方法研究[J].计算机工程与设计,2011,32(2):580-583.
[6] 黄友锐.智能优化算法及其应用[M].北京:国防工业出版社,2008.
[7] HOLLAND J H. Adaption in nature and artificial system[M]. Ann Arbor:The University of Michigan Press,1975.

此内容为AET网站原创,未经授权禁止转载。