一种基于行为规则引导仿真的故障场景自动推理方法与流程

文档序号:17263964发布日期:2019-03-30 09:52阅读:246来源:国知局
一种基于行为规则引导仿真的故障场景自动推理方法与流程

本发明提供一种基于行为规则引导仿真的故障场景自动推理方法,属于产品可靠性建模 领域。



背景技术:

系统的复杂性增加了可靠性设计与分析的难度,也造成了可靠性预测不准确的问题。目 前主要的解决方法是将复杂系统划分为若干单元,通过摸清组成单元的故障规律,充分认识 组成单元之间、系统与单元之间的故障关系,来控制故障的发生、发展。

系统的故障场景一般需要通过层层推理得出,这就要求对系统进行建模,因此,要实现 系统故障场景的自动推理,就需要采用自动化的建模方法。所谓的故障场景自动推理是基于 某种人工建模方法,利用计算机程序代替其中的人为操作,将原先人为建模变成计算机建模, 从而实现向计算机输入一些研究对象的信息后,程序自动输出系统模型。

在可靠性建模领域提出的故障场景自动推理方法十分有限。运用概率模糊C均值聚类算 法结合动态事件树分析产生的故障场景,开启了自动推理故障场景的先河,但是该方法本身 不产生故障场景,只是将动态事件树或者蒙特卡罗仿真的场景进行聚类,由于动态事件树在 产生场景时存在分支爆炸问题,因此C均值聚类算法所能处理的系统规模十分有限;利用 SimPRA引导仿真方法可以自动生成系统风险场景,但是该方法在处理复杂系统时也容易出现 分支爆炸或精度不高的问题。此外两种方法均没有考虑故障之间的相关性。

通过对现有技术进行检索和查新,国内外尚没有学者从故障机理相关关系的角度,提出 一种基于行为规则引导仿真的故障场景自动推理方法。



技术实现要素:

本发明为了解决上述提到的现有技术的不足,提供一种基于行为规则引导仿真的故障场 景自动推理方法。

具体地,本发明提供一种基于行为规则引导仿真的故障场景自动推理方法,其包括以下 步骤:

S1:根据专家系统相关知识,建立故障行为规则,所述建立故障行为规则包括建立规则 库、建立事实库以及建立推理引擎;

S2:选择广度优先搜索遍历算法遍历故障机理和A*优化算法部件层的推理作为推理算法;

S3:通过步骤S2建立的推理算法自动推理系统的故障场景;

S4:利用蒙特卡罗的方法求解故障场景概率和。

优选地,步骤S1中根据专家系统相关知识,规则库的建立具体包括:

①建立故障机理层的规则库:依据各种机理的作用效果,匹配五种机理相关性,判别各 机理之间存在的相关关系,其中所述五种机理包括竞争机理、触发机理、促进机理、抑制机 理和累积机理;;

②建立部件层的规则库:部件层的规则包括单元之间的功能逻辑关系规则,逻辑关系规 则包括串联关系、并联关系以及旁联关系。

优选地,步骤S1中根据专家系统相关知识,事实库的建立具体包括:

a.故障机理层的事实库:

采用故障模式、机理与影响分析方法,分析得出各部件的故障机理信息以及外部可能会 发生的事件作为故障机理层的事实库;

b.部件层的事实库:

按照功能及逻辑关系分为多个子系统,先分析每个子系统内部的连接关系,再分析各个 子系统之间的连接关系,建立部件层的事实库。

优选地,步骤S1中根据专家系统相关知识,推理引擎的建立具体包括:

a.建立故障机理层推理引擎:

采用基于推理模型的正向推理机制,故障机理层采用时间顺序场景树作为推理引擎;

b.部件层的推理引擎:

部件层采用逆向推理机制作为推理引擎。

优选的,步骤三中自动推理故障场景包括故障机理层的遍历自动推理以及部件层A*优化 算法的推理。

优选地,故障机理层的遍历自动推理具体为通过广度优先搜索遍历算法,遍历系统可能 会出现的所有故障机理,通过推理引擎的和所建立规则库的引导,自动生成系统可能出现的 故障机理之间的可能的关联关系,并将其记录存储,

其中广度优先搜索算法具体为:从起始节点v开始,依次访问与起始节点v相邻的所有 未被访问节点v1,v2,…,vn,并将这些节点标记为已访问,而后再依次选择v1,v2,…,vn作为当前 节点,访问各节点相邻的所有未被访问节点,以此类推直到所有的节点均被标记为已访问。

优选地,所述A*优化算法通过部件层的规则库、事实库和推理引擎的引导,发现系统中 具有代表性的故障场景,从而完成模型的自动推理;

所述A*优化算法具体为:

当目标节点T为当前扩展节点时,将其移入CLOSED表中,此时求解成功,但算法继续, 通过CLOSED表中的父节点指针得出当前最优路径,并将其记录下来,然后将CLOSED表中的 节点T删除,此时如果OPEN表中还有元素,继续扩展其中概率值最高的节点,达到目标节点 T时,重复上述步骤直到达到场景条数要求或OPEN表为空,算法结束。

优选地,在所述A*优化算法中:

如果当前扩展节点为起始节点S的子节点,则清空CLOSED表,然后将起始节点S和当前 扩展节点添加到CLOSED表中;当每扩展一个节点时,将其移入CLOSED表后,访问一次推理 引擎,如果此时能够直接得出系统末态,则不再将当前扩展节点的子节点加到OPEN表中,而 是将目标节点T加入到OPEN表中,并将其父节点指针指向当前扩展节点;如果不能直接得出 系统末态,但当前扩展节点的子节点即为T,则认定系统末态为2,并将目标节点T加入到 OPEN表中;如果不能得出系统末态,且当前扩展节点的子节点不是T,则继续扩展该节点;

如果搜索到的场景是通过匹配推理引擎成功后提前达到目标节点T而得到的,则该场景 进入待定状态,同时提取上一条记录的场景,在不增加新的子节点的情况下,将该场景中的 节点换为同级其他节点,并访问推理引擎是否可以达到末态,将达到末态的场景提取出来, 设为待定场景,比较当前所有处于待定状态的场景,将概率最大者提取出来即为当前最优路 径。

优选的,步骤四中利用机理层推理得到的各部件状态概率数据,结合部件层推理引擎所 确定的系统状态与部件状态之间的关系,利用蒙特卡罗仿真方法得出系统处于各个状态的概 率随时间变化的曲线。

优选地,还包括步骤S5、通过对系统处于各个状态的概率随时间变化的曲线进行拟合对 推理结果进行验证,使推理结果的误差控制在5%以内。

与现有技术相比,本发明具有以下创新点:

1、本发明首次将竞争、触发、促进、抑制和累积五种故障机理相关关系融合到基于专家 系统相关知识建立的规则库、事实库和推理引擎中,将其转化为故障行为规则,作为系统自 动推理的基础;在系统进行故障场景自动推理的过程中,故障行为规则会引导系统优先产生 分析人员感兴趣的故障场景,进而在一定程度上解决了生成故障场景时的分枝爆炸问题。

2、本发明提出了一种基于行为规则引导仿真的故障场景自动推理方法。在算法上创新的 运用了广度优先搜索(BFS)的遍历算法和A*优化算法。在系统故障机理层运用广度优先搜 索(BFS)遍历算法,遍历系统的故障机理,找出系统中所有存在耦合关系的故障机理;针对 大型复杂系统,在部件层采用A*算法,优先产生分析人员感性的故障场景;最后利用蒙特卡 罗仿真的方法求解各个故障场景的概率,从而实现系统故障场景的自动推理。

附图说明

图1为本发明的故障行为规则库构造图;

图2为本发明的规则库、事实库和推理机制关系图;

图3为本发明的推理引擎路径信息与推理模型分支信息;

图4为本发明的一个实施例的系统示意图;

图5为本发明的故障机理层场景自动推理流程图;

图6为本发明的改进A*算法场景推理流程图;

图7为本发明的实施例中某电源模块可靠性框图;

图8为本发明的实施例中部件D1场景推理图;

图9为本发明的实施例中部件D1状态概率图;

图10a)为本发明的实施例中部件L的故障场景树;

图10b为本发明的实施例中部件V的故障场景树;

图10c)为本发明的实施例中部件R1,R2,C的故障场景树;

图10d为本发明的实施例中部件X的故障场景树;

图11a)为本发明的实施例中部件L的状态概率图;

图11b)为本发明的实施例中部件R1,R2的状态概率图;

图11c)为本发明的实施例中部件V的状态概率图;

图11d)为本发明的实施例中部件D2,D3d的状态概率图;

图11e)为本发明的实施例中部件C的状态概率图;

图11f)为本发明的实施例中部件X的状态概率图;

图12为本发明的实施例中故障场景网络有向图;

图13为本发明的实施例中场景条数与概率之和关系图;以及

图14为本发明的实施例中系统的状态概率图。

具体实施方式

以下将参考附图详细说明本发明的示例性实施例、特征和方面。附图中相同的附图标记 表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出, 不必按比例绘制附图。

本发明提供一种基于行为规则引导仿真的故障场景自动推理方法,具体步骤叙述如下:

S1:根据专家系统相关知识,建立故障行为规则;

S2:选择广度优先搜索遍历算法遍历故障机理和A*算法优化部件层的推理;

S3:通过建立的推理算法自动推理系统的故障场景;

S4:利用蒙特卡罗的方法求解故障场景概率和。

优选地,步骤S1中根据专家系统相关知识,建立故障行为规则具体分为三步。

a.规则库的建立:

本发明建立的规则库用于存储电子产品故障相关规则,也称为电子产品故障行为规则库。 规则的一般表达形式主要有三种:IF-THEN、WHEN-NEED和WHEN-CHANGE,本文仅采用第一种 形式,具体为:IF(条件1)AND(条件2)AND…THEN(结论1)AND(结论2)AND…。

其中,规则库的建立具体分为故障机理层和部件层。

①故障机理层的规则库:

故障机理层的规则主要来源于故障物理学,以及故障机理相关关系。依据各种机理的作 用效果,匹配五种机理相关性,判别各机理之间存在的相关关系。如果匹配到竞争关系,那 么分别采用“IF(机理),THEN(机理)AND(state=state+1)”的形式存储到规则库中。 满足其他关系的机理需要合并处理,在进行合并处理时应注意包含所有可能的情况,例如我 们发现“作用于同一焊点的热疲劳(TF)和振动疲劳(VF)存在损伤累加关系”,那么将存 在以下三条规则:

IF(VF)AND(TF),THEN(VFΔTF)AND(state=state+1)

IF(VF)AND(NO TF),THEN(VF)AND(state=state+1)

IF(TF)AND(NO VF),THEN(TF)AND(state=state+1)

一般情况下,不考虑三个及以上机理相互作用的情况。此外还需要增加一条规则,表示 如果没有任何机理发生,那么部件的状态不变:

IF(---),THEN(---)AND(state=state)

其中字符“---”表示没有机理发生的情况。

②部件层的规则库:

这里所说的部件层实际上指的是部件层和子系统层,由于所用的规则是一致的,因而合 并处理。部件层存储的规则主要是单元之间的功能逻辑关系规则,包括串联、并联、表决和 旁联关系等。我们为每一种逻辑关系都编写一段程序并存储在规则库中,程序输入为满足该 逻辑关系的各部件的状态,输出为这些部件组成的小系统的状态。部件层的规则用于判定满 足不同逻辑关系情况下的不同部件状态所对应的系统末态。故障行为规则库构造图如图1所 示。

b.事实库的建立:事实库的建立也分为故障机理层和部件层。

①故障机理层的事实库:

事实库的建立过程相当于系统分析过程。故障机理层事实库主要存放各个部件可能的故 障机理,这些信息可以从历史故障数据中获取,也可以依据专家经验得出。一个比较好的获 取途径是采用故障模式、机理与影响分析(FMMEA)方法,结合一些经验数据,分析得出各部 件的故障机理信息。此外,故障机理层事实库还需要包含一些外部可能发生的事件,这些事 件可能会对故障机理的发生产生一定的作用。

②部件层的事实库:

部件层事实库主要存放所研究系统中各部件的功能逻辑连接方式,相当于可靠性框图。 对于较大的系统,可按照功能及逻辑关系分为多个子系统,先分析每个子系统内部的连接关 系,再分析各个子系统之间的连接关系。部件层事实库的建立过程与系统可靠性框图的建立 过程一致,只是采用程序语言将其存储在数据库中。规则库、事实库和推理机制关系如图2 所示。

c.推理引擎的建立:推理引擎的建立依旧分为故障机理层和部件层。

①故障机理层推理引擎:

故障机理层的推理引擎实质是每个部件的推理引擎,它用来告诉程序,该部件内部的机 理经过怎样的发展即可得出部件状态。机理层推理引擎的建立过程采用的是正向推理机制, 这种推理机制需要依托于推理模型的建立方法,故障机理层采用时间顺序场景树,这里通过 一个简单的例子来说明该层次推理引擎的建立方法。

假设部件A的事实库中存在三种机理,分别是热疲劳(TF)、振动疲劳(VF)和电迁移 (EM),部件A存在3个状态,分别是正常状态“1”,退化状态“2”以及故障状态“3”, 那么部件A的失效过程将分为两个阶段:状态“1”到状态“2”,状态“2”到状态“3”, 因而需要经过两轮规则匹配。在进行规则匹配之前,需要在A的事实库中加入一个新的事实, 用符号“---”表示所有机理都没有发生的情况。在进行第一轮规则匹配时,输入事实库[‘---’, ‘TF’,‘VF’,‘EM’],匹配到以下三条规则:

IF(---)THEN(state=state)

IF(TF)AND(VF)THEN(TFΔVF)AND(state+=1)

IF(EM)THEN(EM)AND(state+=1)

路径“---”可以直接得出部件状态为“1”并不发生改变,记录该路径及其结果。提取 出状态发生改变的路径信息“TFΔVF”和“EM”,并加入到机理层事实库中,进入第二轮规则 匹配,第二轮匹配的依旧是这三条规则,分别将得出的三条路径添加到先前两条路径的后方, 并将生成的三种部件状态添加到部件层事实库中。各条路径的状态信息更新后,将这六条路 径记录下来,从而得到部件A的推理引擎,其中包含七条路径信息,每条信息都对应一种部 件状态,如图3所示。实际上,由于机理层的规则较为简单和直接,大部分情况下,机理层 的推理引擎覆盖了推理模型的所有分支信息,即推理引擎中的路径信息与推理模型中的分支 信息是一一对应的,如图3所示。

②部件层的推理引擎:

部件层的推理引擎实质是整个系统的推理引擎。与故障机理层不同的是,推理模型中部 件层的分支信息一般都是相当多的,推理引擎不可能覆盖所有的分支信息。为此,部件层采 用逆向推理机制来得出达到系统末态时所有前提条件的最小割集。此外,由于采用逆向推理 机制,部件层推理引擎的建立并不依赖于推理模型的建立方法。这里以图4所示的简单系统 为例,来说明部件层推理引擎的建立方法。

假设系统本身以及部件A~E均存在三种状态,分别是工作状态“1”,退化状态“2”以 及失效状态“3”。设定系统目标状态为“1”,首先通过事实库中记录的串联关系,匹配串 联规则得到前提路径信息为“ABC-1,D-1,E-1”,其中“D-1,E-1”可在事实库中查找到, 而“ABC-1”通过查找事实库得到并联关系,匹配并联规则得到三条前提路径“A-1”、“B-1” 和“C-1”,分别替换先前路径中的“ABC-1”得到3条新的路径信息,由于路径中所有的信 息都可在事实库中查找到,则匹配结束,得到系统状态为“1”的所有路径信息为:“A-1,D-1, E-1”、“B-1,D-1,E-1”和“C-1,D-1,E-1”。同理可得系统状态为“3”的所有路径信 息为:“A-3,B-3,C-3”、“D-3”和“E-3”。由于系统只存在三种状态,因此不需要再分 析系统状态为“2”的前提路径,所有不满足系统状态“1”和“3”前提路径的分支的系统末 态均为“2”。从而得到图4系统的推理引擎如下:

State_1=[[A-1,D-1,E-1],[B-1,D-1,E-1],[C-1,D-1,E-1]]

State_3=[[A-3,B-3,C-3],[D-3],[E-3]]

State_2=[others]

优选的步骤二中算法的选择分为遍历算法和A*优化算法两种。

遍历算法包括优先搜索(BFS)遍历算法遍历故障机理:

以三状态部件为例,机理层的场景包含两层分支。假设各机理之间仅存在竞争关系,那 么可以将添加字符“---”的事实库作为读入的机理列表,如图5所示。如果机理并非是相互 独立的,那么就将推理引擎首次匹配得到的结果作为读入的机理列表。

在进行推理前,需要设定一条搜索规则:如果父节点为“---”,那么认定其子节点只能 为“---”。这是由于“---”表示没有机理发生的情况,在这种情况下,部件状态不会发生 变化,如果子节点接其他元素如[---,M1],那么该分支与[M1]重复,因而设定该规则,避免 重复搜索。

在进行第一轮推理时,将列表中所有的元素读入到程序中,生成与列表元素个数相同的 分支数,这将作为树的第一层。此时,访问该部件的推理引擎,咨询是否有分支可以达到末 态,如果当前某分支所包含的节点与推理引擎中某一路径信息一致,那么该分支将直接达到 末态,末态信息由推理引擎提供。达到末态的分支将被提出来存入最终的场景列表中,未达 到末态的分支将产生一个新的分支点,并进入第二轮推理。第二轮推理过程与第一轮一致, 读入机理列表信息并添加到每一个新的分支点之后,生成新的分支,这将作为树的第二层。 其中,父节点为“---”的分支点处仅读入“---”。然后,通过访问推理引擎,得出分支末 态。三状态的部件仅有两层,如果依旧存在分支不能达到末态,则需要查看推理引擎,进行 修改或增添路径信息。机理层的场景层次等于状态数减1。故障机理层场景自动推理流程如 图5所示。

A*算法优化部件层的推理:

A*算法可以在一个树状图中搜索出一条最优路径,而场景智能推理要求得到若干条感兴 趣的场景信息,为此,需要对算法进行改进。本文改进方法的提出是受到这样一个事实的启 发:利用A*算法可以在一棵故障场景树中推理出最优分支,那么,得到这条分支之后,可将 其提取出来,在剩下的场景树中继续搜索最优分支,然后提取出来继续搜索,如此循环迭代 直到达到分析人员要求的场景条数为止,每次提取出的信息都是剩余场景树中的最优分支, 这样就可以得到多条而非一条最优路径。

出于上述这样一种考虑,A*算法的改进具体如下:

当目标节点T为当前扩展节点时,将其移入CLOSED表中,此时求解成功,但算法不结束。 通过CLOSED表中的父节点指针可得出当前最优路径,将其记录下来,然后将CLOSED表中的 节点T删除。此时如果OPEN表中还有元素,继续扩展其中概率值最高的节点,达到目标节点 T时,重复上述步骤直到达到场景条数要求或OPEN表为空,算法结束。

如果当前扩展节点为起始节点S的子节点,那就清空CLOSED表,然后将起始节点S和当 前扩展节点添加到CLOSED表中。

每扩展一个节点,并将其移入CLOSED表后,就访问一次推理引擎。如果此时可以直接得 出系统末态,那么不再将当前扩展节点的子节点加到OPEN表中,而是将目标节点T加入到 OPEN表中,并将其父节点指针指向当前扩展节点。如果不能得出系统末态,但当前扩展节点 的子节点即为T,则认定系统末态为“2”,并将目标节点T加入到OPEN表中。如果不能得 出系统末态,且当前扩展节点的子节点不是T,那就扩展该节点。

如果搜索到的场景是通过匹配推理引擎成功后提前达到目标节点T而得到的,那么该场 景进入待定状态。同时提取上一条记录的场景,在不增加新的子节点的情况下,将该场景中 的节点换为同级其他节点,并访问推理引擎是否可以达到末态。将达到末态的场景提取出来, 设为待定状态。比较当前所有处于待定状态的场景,将概率最大者提取出来即为当前最优路 径。

利用改进的A*算法进行场景推理的流程如图6所示。

优选的,步骤三中自动推理故障场景具体分为两部分。

a.故障机理层的遍历自动推理:

优选的,通过广度优先搜索(BFS)遍历算法,遍历系统可能出现的所有故障机理,通过 推理引擎的和所建立规则库的引导,自动生成系统可能出现的故障机理之间的可能的关联关 系,并将其记录存储。

b.部件层A*算法的优化推理:

优选的,由于系统十分复杂,在部件层和阶段层故障场景自动推理的过程中,可能会出 现分支爆炸等问题,从而使推理的过程耗费大量的人力物力财力,使问题的解决变得十分困 难。然而在实际过程中,几种具有代表性的故障场景模式就占所有故障场景模式的98%及以 上,所以模型的自动推理往往只需要将这些具有代表性的故障场景模式推演出来,模型的故 障场景模式自动推理就认为完成。

因此选用A*算法,并将算法进行优化,通过部件层的规则库、事实库和推理引擎的引导, 发现系统中具有代表性的故障场景。从而完成模型的自动推理。

优选的,步骤四中基于随机数生成的蒙特卡罗仿真可以更加高效地获得系统的状态概率 图。利用机理层推理得到的各部件状态概率数据,结合部件层推理引擎所确定的系统状态与 部件状态之间的关系,利用蒙特卡罗仿真方法得出系统处于各个状态的概率随时间变化的曲 线。

以下主要利用航空发动机的电源模块,通过故障行为规则引导仿真实现故障场景的自动 推理,从而证明本发明实际有效。

图7是某航空发动机控制系统电源模块的可靠性框图。该模块由9个部件组成,各部件 的详细信息如表3所示。滤波器L主要起滤波作用。电阻器R1和R2用于电路缓冲。晶闸管 V用于接收反馈信号控制电压。由D1、D2、D3和C组成的旁联结构用于将输入的高电压降低 为稳定的±15V直流电压并输出到插座X中。检测转换装置C在工作期内会发生失效,储备 单元D2和D3在储备期间也可能发生失效,但失效速率小于工作期,属于温储备。

假设该系统以及系统中的每一个部件都存在三种状态,分别是:工作状态(状态1)、 退化状态(状态2)和失效状态(状态3)。系统或部件能够完全正常完成其功能的状态称为 工作状态;能够完成其功能但存在效率低下、性能降低等情况的状态称为退化状态;不能完 成其功能的状态称为失效状态。在本案例中,部件内部至少存在一种故障机理,如果存在多 种故障机理,那么机理之间可以存在一定的相关关系。机理类型可以是退化型也可以是过应 力型,并且单独作用时,过应力型机理将直接导致部件失效,不存在中间状态。本案例中各 部件的故障机理及其分布如表1所示:其中TDDB是依赖于时间的介质击穿;NBTI为负偏置 温度不稳定性;EM是电迁移;VF是振动疲劳;TF是温度疲劳;Crack是由冲击触发引起的过 应力型故障机理;EC是电接触。

表1故障机理及其分布

本发明是一种基于行为规则引导仿真的故障场景自动推理方法,具体实施步骤如下:

步骤S1:故障机理层场景自动推理;

步骤二:部件层故障场景自动推理;

步骤三:利用模特卡罗的方法求解所有场景的概率。

优选的,步骤S1种具体包括四个部分:

a.规则库的建立:

首先需要建立规则库。机理层规则库主要存储各机理间具体的相关关系,即故障机理的 故障行为规则,规则库的建立不依赖于所研究的对象,这里只提出与本案例相关的规则,具 体如下:

IF(---),THEN(---)AND(state=state)

IF(TDDB)AND(NBTI),THEN(TDDBΔNBTI)AND(state=state+1)

IF(EM)AND(NO Creep),THEN(EM)AND(state=state+1)

IF(Creep)AND(EM),THEN(Creep,EM↑)AND(state=state+1)

IF(VF)AND(TF),THEN(VFΔTF)AND(state=state+1)

IF(VF)AND(NO TF),THEN(VF)AND(state=state+1)

IF(Shock)AND(Crack),THEN(Shock,Crack)AND(state=state.max)AND(break)

IF(EC),THEN(EC)AND(state=state+1)

其中,第四条规则表示如果部件内部同时存在“Creep”和“EM”两种故障机理,那么 Creep将加快EM的发生速率。第七条规则表示如果部件内部存在机理“Crack”,并且可能 发生外部事件“Shock”,那么Shock将触发Crack出现并直接导致部件进入失效状态,同时 跳出该规则的匹配循环。

b.事实库的建立:

机理层事实库主要存储部件内部故障机理和外部事件,因而需要针对每一个部件建立其 相应的事实库。各部件事实库如下:

L:[‘---’,‘TDDB’,‘NBTI’,‘EM’]

R1,R2,C:[‘---’,‘VF’,‘TF’]

V:[‘---’,‘Crack’,‘VF’,‘Shock’]

D1,D2,D3:[‘---’,‘TDDB’,‘NBTI’,‘EM’,‘Creep’]

X:[‘---’,‘EC’]

在每一个事实库中都添加了字符“---”用于表示没有机理发生的情况。此外,由于设定 Shock将于6500h时发生,因而在部件V的事实库中还添加了该外部事件“Shock”。

c.推理引擎的建立:

机理层推理引擎的建立采用的是正向推理机制,这里以部件D1为例进行说明。设定初始 状态为“1”,表示部件正常工作。输入其事实库[‘---’,‘TDDB’,‘NBTI’,‘EM’,‘Creep’], 进入第一轮规则匹配,依据各规则中“IF”的内容,匹配到以下三条规则:

IF(---),THEN(---)AND(state=state)

IF(TDDB)AND(NBTI),THEN(TDDBΔNBTI)AND(state=state+1)

IF(Creep)AND(EM),THEN(Creep,EM↑)AND(state=state+1)

记录各规则“THEN”的内容作为当前路径,并计算各路径的状态,如表2所示。目前还 没有路径可以跳出匹配循环,全部处于待定状态,进入第二轮匹配。依旧读入上述事实库, 匹配到上述规则,产生三条后续路径。在每一条待定路径后都接上后续路径,产生九条新路 径,如表5所示。三状态部件设定两轮匹配后结束循环。所产生的九条路径信息即为部件D1 的推理引擎。

表2每轮匹配后产生的路径

正向推理在记录第一轮匹配得到的结果(路径)的同时,会将其加入到事实库中,与原 先事实库中的元素一起进入第二轮匹配。

其他部件推理引擎的建立过程与D1类似,部件V的事实库在结束第一轮匹配后,路径 [Shock,Crack]将直接达到状态“3”并跳出循环,此时该路径处于确定状态,不再添加后续 路径。但是,事实库中元素并未变化,第二轮匹配到规则7时,[Shock,Crack]将作为后续 路径之一添加到其他待定路径之后。部件V的推理引擎如表3所示。

表3部件V的推理引擎

d.场景自动推理:

同样以部件D1为例,由于部件内部机理并非是相互独立的,因而需要对读入的机理列表 进行修改。将推理引擎首次匹配得到的结果综合起来作为读入的机理列表,即[[---],[TDDB ΔNBTI],[Creep,EM↑]]。

三状态部件需要经过两轮推理。在进行第一轮推理时,读入机理列表,产生3条新分支, 访问推理引擎发现没有分支可以达到末态,如图8所示。进入第二轮推理,读入机理列表。 当父节点为“---”时,依据先前设定的搜索规则,仅展开一条分支,子节点为“---”。其 余父节点均展开三条新分支。访问推理引擎所有分支均达到末态,提取各分支部件状态值形 成末态事件放在每条分支之后,如图8所示。从而得到部件D1的所有场景信息。

基于推理得到的场景树和表1中的数据,通过仿真方法得出部件D1处于各个状态的概率 随时间变化的曲线如图9所示。

利用类似的步骤可以得出其余部件的故障场景树(图10)及状态概率图(图11)。其中 部件D2和D3的故障场景树与D1相同,但状态概率图与D1不同。图10b)中,“S”表示Shock。 场景“Shock,Crack,V-3”表示Shock发生前部件处于工作状态,由Shock触发的Crack导 致部件V直接进入失效状态,被跳过的退化状态阶段用虚线表示。场景“VF,Shock,Crack, V-3”表示Shock发生前部件由于VF的作用处于退化状态,而后由于Shock触发的Crack导 致部件失效。状态概率图中,任意时刻各部件状态概率之和均为1。图11c)中,部件V在6500h 时受到Shock作用而导致失效状态的概率突变为1,其余状态概率变为0。

优选的,步骤二中具体包括四部分内容。

a.规则库的建立:

部件层规则库主要存储单元之间的功能逻辑关系规则,即部件的故障行为规则。这些规 则主要包括串联、并联、表决、旁联和桥联五种。本案例所涉及的三状态串联、并联、旁联 系统的一般规则如下:

串联规则:

所有部件状态为1,则系统状态为1;

至少一个部件状态为2,且没有部件状态为3,则系统状态为2;

至少一个部件状态为3,则系统状态为3。

并联规则:

至少一个部件状态为1,则系统状态为1;

至少一个部件状态为2,且没有部件状态为1,则系统状态为2;

所有部件状态为3,则系统状态为3。

旁联规则:

工作部件状态为1,则系统状态为1;

工作部件状态为2,则系统状态为2;

工作部件状态为3,且转换装置状态为1,且至少一个储备部件状态为1,则系统状态为 1;

工作部件状态为3,且转换装置状态为1,且至少一个储备部件状态为2,且没有储备部 件状态为1,则系统状态为2;

工作部件状态为3,且转换装置状态为2,且储备部件状态不全为3,则系统状态为2;

工作部件状态为3,且转换装置状态为3,则系统状态为3;

工作部件状态为3,且所有储备部件状态为3,则系统状态为3。

b.事实库的建立:

部件层事实库主要存储各部件的连接关系。我们将系统可靠性框图整合成事实库如表4 所示。

表4本案例部件层事实库

c.推理引擎的建立:

针对三状态系统,首先设定匹配目标为系统处于工作状态,即System-1,放入事实库中 将System的状态变为1。依据事实库3的连接关系,匹配串联规则a,依据其前提条件确定 部件状态组合为[L-1,R-1,V-1,DC-1,X-1],记录后放入事实库,发现R和DC为其他部件 组合的结果,进入第二轮匹配。针对R-1,依据事实库1的连接关系匹配并联规则a,得到部 件状态组合为[R1-1]、[R2-1],记录后放入事实库,发现没有元素是其他组合的结果。针对 DC-1,依据事实库2的连接关系匹配旁联规则a、c,得到部件状态组合为[D1-1]、[D1-3,C-1, D2-1]、[D1-3,C-1,D3-1],记录后放入事实库,发现没有元素是其他组合的结果。匹配结 束,将第二轮匹配后的结果整合到第一轮结果中,得出系统状态为“1”时各部件状态所有可 能的组合情况的最小割集如下:

State_1=[[L-1,R1-1,V-1,D1-1,X-1],

[L-1,R1-1,V-1,D1-3,C-1,D2-1,X-1],

[L-1,R1-1,V-1,D1-3,C-1,D3-1,X-1],

[L-1,R2-1,V-1,D1-1,X-1],

[L-1,R2-1,V-1,D1-3,C-1,D2-1,X-1],

[L-1,R2-1,V-1,D1-3,C-1,D3-1,X-1]]

采用类似的步骤也可以得出系统处于失效状态时,各部件状态所有可能的组合情况的最 小割集,如下所示:

State_3=[[L-3],[R1-3,R2-3],[V-3],[D1-3,C-3],[D1-3,D2-3,D3-3],[X-3]]

由于系统只可能存在三种状态,并且退化状态下部件状态组合情况过多,因而我们设定 不满足状态“1”和“3”的其他情况均为状态“2”,即State_2=[others]。将State_1、 State_2、State_3结合起来即为本案例系统的推理引擎。

d.场景自动推理:

改进的A*算法可以自动推理出系统处于某一确定时刻t时,出现概率最大的若干场景信 息。这里我们设定t=4000h

依据图9和图11所示的部件状态概率随时间变化的曲线,可以得出在t=4000h时,各部 件处于各状态的概率如表5所示。

表54000h时部件状态概率

按照失效状态概率递减排列各部件的顺序为:X,D1,V,L,R1,R2,C,D2,D3。这将 作为部件在t=4000h的输入顺序。

采用网络有向图的形式来表示系统的故障场景,如图12所示。起始节点S和目标节点T 的代价值均设定为1,其余节点代价值定为该节点出现的概率。图12还包含了推理引擎的访 问时机。

场景的推理过程完全由程序自主进行。改进的A*算法推理出2条概率最高场景的基本流 程如下:

初始状态:

OPEN=[S(1)];

CLOSED=[]。

扩展节点S并移入CLOSED表,子节点均为新节点,加入OPEN表(按照概率值从大到小 顺序,概率值相同时,后加入的放在前面,后续同理):

OPEN=[X-3(0.8456),X-1(0.0797),X-2(0.0747)];

CLOSED=[S(1)]。

扩展节点X-3并移入CLOSED表,访问推理引擎,已达到末态为“3”,将目标节点T加 入CLOSED表,设为待定状态:

OPEN=[X-1(0.0797),X-2(0.0747)];

CLOSED=[T(1),X-3(0.8456),S(1)]。

无确定场景,待定状态仅有一条场景,转为确定状态:

记录第一条路径:S→X-3→T

转换成故障场景:<X-3,Sys-3>,概率:0.8456

移出节点T,扩展节点X-1,由于X-1是起始节点S的子节点,因而清除CLOSED表中除 了节点S之外的其他节点,将X-1移入CLOSED表,访问推理引擎,未能达到末态,子节点均 为新节点,加入OPEN表:

OPEN=[D1-3(0.7809),D1-2(0.1705),X-2(0.0747),D1-1(0.0486)];

CLOSED=[X-1(0.0797),S(1)]。

扩展节点D1-3并移入CLOSED表,访问推理引擎,未能达到末态,子节点均为新节点, 加入OPEN表:

OPEN=[V-3(0.7166),V-1(0.2093),D1-2(0.1705),X-2(0.0747),V-2(0.0741), D1-1(0.0486)];

CLOSED=[D1-3(0.7809),X-1(0.0797),S(1)]。

扩展节点V-3并移入CLOSED表,访问推理引擎,已达到末态为“3”,将目标节点T加 入CLOSED表,设为待定状态:

OPEN=[V-1(0.2093),D1-2(0.1705),X-2(0.0747),V-2(0.0741),D1-1(0.0486)];

CLOSED=[T(1),V-3(0.7166),D1-3(0.7809),X-1(0.0797),S(1)]。

搜索前一确定场景的其余状态,包括:<X-1>、<X-2>,访问推理引擎均未达到末态,待 定状态仅有一条场景,转为确定状态:

记录第二条路径:S→X-1→D1-3→V-3→T;

转换成故障场景:<X-1,D1-3,V-3,Sys-3>;

概率:0.0797×0.7809×0.7166=0.0446;

继续上面的搜索循环可以得出更多的场景序列,并且概率逐次递减。表6给出了t=4000h 时,出现概率最大的15条场景。

表6 4000h时出现概率最大的15条场景

t=4000h时场景条数与场景概率之和的关系如图13所示。

优选的,步骤三利用蒙特卡罗的方法求解故障场景的概率。

基于随机数生成的蒙特卡罗仿真可以更加高效地获得系统的状态概率图。利用机理层推 理得到的各部件状态概率数据,结合部件层推理引擎所确定的系统状态与部件状态之间的关 系,利用蒙特卡罗仿真方法得出系统处于各个状态的概率随时间变化的曲线如图14所示。

图14还给出了利用场景推理方法得出的20个时刻下系统处于失效状态的概率(截止条 件均为概率之和99%以上)拟合而成的曲线,它和仿真结果的误差控制在4%以内。这表明利 用自动推理方法得到的场景和利用仿真方法得到的状态概率是吻合的。通过将两种方法结合 起来,在推理故障场景的同时利用仿真方法得出系统状态变化曲线,使得分析人员可以高效 地了解系统状态及其影响因素。

最后应说明的是:以上所述的各实施例仅用于说明本发明的技术方案,而非对其限制; 尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然 可以对前述实施例所记载的技术方案进行修改,或者对其中部分或全部技术特征进行等同替 换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1