王红征
(西安导航技术研究所,西安 710068)
基于故障树和蒙特卡罗仿真的系统可靠性分析
王红征
(西安导航技术研究所,西安 710068)
分析传统可靠性分析方法存在的缺陷,以故障树结构函数为基础,建立系统可靠性仿真模型,再利用蒙特卡罗方法建立仿真求解流程,从而得到系统在规定任务时间内的可靠性指标。此方法简单易行,计算结果精度高,对系统的可靠性分析有重要意义。
故障树,蒙特卡罗仿真,可靠性分析
传统可靠性分析方法已不能完全解决系统可靠性的有关问题,其方法不仅难以定量地求解随机故障及其修复对系统可靠性的影响,不能准确分析和求解复杂系统的可靠性指标,使理论计算与工程实际存在较大偏差[1]。而且计算量巨大,也无法刻画系统在规定任务时间内的可靠性特性。
因此,本文提出基于故障树和蒙特卡罗仿真的系统可靠性分析方法,利用故障树完成系统可靠性建模,根据故障树的逻辑关系对系统是否发生故障进行准确判断,并考虑系统的可维修性,基于蒙特卡罗仿真求解系统的可靠性指标,使仿真准确度进一步提高,提供一种复杂可维修系统可靠性分析的方法。
故障树由底事件、中间事件、顶事件和逻辑门组成,每个事件有两种状态,可用1和0表示[2-3]。在引入时间变量的情况下,故障树中的底事件可表示为:
故障树中常用的逻辑门有“与门”和“或门”,它们的逻辑关系和状态转移如图1所示。
其中,xi(t)为故障树第i个底事件xi的状态变量,n为底事件个数。
对于故障树的第i个底事件,根据其故障分布函数为Fi(t),进行随机抽样,其第j次故障抽样时间tij为:
式中:zij为第i个底事件第j次抽样的随机数。
同理,假设维修分布函数为mi(t),其第j次维修抽样时间mij为:
对于复杂可修系统,如果发生了故障,但在任务规定的时间内能够修复,就不影响任务的成功;否则,如果不能在规定的任务时间内修复,就会导致任务失败。当系统发生故障后,假设各底事件的修复是并行的,则系统修复时间TM为各故障事件修复时间的最大值,即
传统故障树分析方法主要是基于二元决策图和Markov模型的模块化算法,但Markov用于分析复杂系统问题时状态划分困难、模型求解复杂。Monte Carlo仿真技术以大数定理为理论依据,以模拟抽样来反映系统可靠性行为,通过计算系统抽样样本的统计特征获得系统的可靠性参数,它对问题的维数不敏感,具有很强的适应性和解决问题的能力,而且Monte Carlo仿真分析对底事件的失效分布没有限制[5-7]。
在进行可靠性仿真时,用故障树表示系统故障的逻辑关系图,故障树的顶事件即为系统的失效事件。在求系统故障时间时,采用求最小割集故障时间的方法,而不是常规的通扫故障树的方法[8]。根据最小割集的定义,最小割集中所有底事件之间的逻辑关系为“与门”,因此,当每个最小割集中故障时间最大的底事件故障时,系统即故障;由于最小割集之间的逻辑关系为“或门”,所以再找到所有最小割集故障时间中的最小时间,即为系统的故障时间。最小割集故障时间与底事件之间的函数关系如下:
式中,Tgi是故障树中第i个最小割集的故障时间,Tgij是故障树第i个最小割集中第j个底事件的故障时间;l是最小割集中底事件的个数。
在基于故障树建立的可靠性仿真模型的基础上,利用Monte Carlo仿真方法进行复杂可修系统的可靠性分析,具体仿真步骤如下:
Step1:确定所有底事件的故障概率分布函数和维修概率分布函数、系统的所有最小割集、总仿真次数M及任务时间Tm等,令初始仿真次数S=0。
Step2:当前仿真次数S=S+1,如果仿真次数S>M,仿真就结束;否则,仿真继续进行。
Step3:每次仿真进行之前,首先依次对每个底事件进行故障时间和维修时间抽样,n个底事件的故障时间抽样值为t1j,t2j,…,tnj。再利用式(8)获得每个最小割集的故障时间Tgi。
Step4:每次仿真运行时,对所有最小割集的故障时间Tgi按由小到大排序,用TFi表示,从而获得系统的故障时间顺序表{TF1,TF2,…,TFl,…,TFm},系统故障时间记作Tkj(第j次仿真过程中的第k次故障的时间,k=k+1,初始k=0)。因此,系统最早故障时间T1j=TF1,记当前模拟时间T=T1j。
Step5:根据当前模拟时间与任务时间判断本次仿真是否结束,如果T>Tm,则任务成功,MSj=1(MSj为确定第j次仿真时任务成功事件的参数),进入下次仿真,转至Step2;否则记录故障次数Rj=Rj+1(Rj表示第j次仿真过程中的故障次数,初始Rj=0),并由式(6)获得各故障底事件的修复时间,根据式(7)产生系统维修时间TMkj(TMkj表示第j次仿真过程中的第k次故障维修的时间),如果T+TMkj>Tm,则任务失败,MSj=0,进入下次仿真,转至Step2。否则仿真继续进行,模拟时间推进至T=T+TMkj,根据系统故障时间顺序表得到系统下次故障时间Tkj,模拟时间推进至T=T+Tkj,转至Step5。依次进行下去。
Step6:根据仿真过程中所记录的数据,计算给定任务时间内的可靠性参数,如下:
以图2所示某导航子系统的故障树为例,根据本文提出的方法,利用Matlab进行可靠性仿真。故障树中各个底事件的故障分布及可靠性参数见表1。当选取任务时间Tm=300 h时,通过常规的解析法,计算出系统的可靠度R=0.964 1。
为了达到一定的精度,必须有足够的仿真次数,本次仿真次数M=10 000时,仿真结果趋于稳定。因此,出于时间上的考虑,以进行10 000次蒙特卡罗仿真得到的结果作为最终结果如表2所示。
由仿真结果可知,用任务成功概率作为可靠度的估计值,当仿真次数为10000时,误差仅为0.0077%,说明与常规的解析法相比较,只要选取适当的值,该仿真方法的结果即可以满足一定的误差要求,而且该方法更能够反映出系统在规定任务时间内的可靠性特性,如平均故障间隔时间和平均修复时间等。
本文对传统可靠性分析与仿真方法进行了探讨,通过对故障树模型和蒙特卡罗方法的研究,建立了可靠性仿真模型和仿真流程,可以精确和客观地对系统的可靠性进行分析,为系统可靠性设计提供有力的支持。
[1]郭 波,武小悦,张秀斌,等.系统可靠性分析[M].长沙:国防科技大学出版社,2002.
[2]Beresh R K.Basic Fault Tree Analysis for use in Protection Reliability[J].Power Systems Conference,2007(3):1-7.
[3]贾玉双,史宪铭.基于故障树模型的系统可靠性分析与仿真[J].湘潭大学自然科学学报,2001,23(4):101-105.
[4]许荣,车建国,杨作宾,等.故障树分析法及其在系统可靠性分析中的应用[J].指挥控制与仿真,2010,32(1):112-115.
[5]Zhai G F,Chen Y H,Ren W B.Random Vibration Analysis of Switching Apparatus Based on Monte Carlo Method[J]. Journal of Zhejiang University SCIENCE,2007,8(3): 422-425.
[6]董艳秋,田劲博.蒙特卡洛法结构可靠性分析[J].黑龙江工程学院学报:自然科学版,2010(24):27-29.
[7]肖刚,李天柁.系统可靠性分析中的蒙特卡罗方法[M].北京:科学出版社,2003.
[8]刘国印,林少芬.基于故障树的船舶起货机液压系统可靠性仿真分析[J].船海工程,2008,37(2):70-73.
System Reliability Analysis Based on Fault Tree and Monte Carlo Simulation
WANG Hong-zheng
(Xi’an Research Institute of Navigation Technology,Xi’an 710068,China)
To overcome the defect of traditional reliability analysis methods,simulation model of the system reliability based on fault tree analysis is build.And with Monte Carlo simulation method the simulation flow is emphatically introduced to give the system reliability index within the mission time. This method is simple,proved well,and important for system reliability analysis.
fault tree,monte carlo simulation,reliability analysis
N945.13
A
1002-0640(2015)10-0137-03
2014-09-05
2014-10-07
王红征(1987- ),女,河南周口人,硕士。研究方向:产品质量与可靠性。