基于规则与案例推理的汽轮发电机组故障诊断专家系统
2018-07-03剡昌锋王慧滨
张 强, 剡昌锋, 王慧滨, 栗 宇
(1. 兰州理工大学 机电工程学院,甘肃 兰州 730050; 2. 92822部队,福建 漳州 363000)
0 引言
汽轮发电机组是电力系统的关键设备,其运行的稳定性直接影响到整个电力系统的正常工作,但随着机组智能化程度的提高,机组会受到各种不确定性因素的影响,导致机组出现不同的故障类型,轻则造成停机,重则会发生灾难性事故[1]。故障诊断技术的实现是机组状态维修最重要的环节之一,其机械设备的改进、维修技术和管理水平的提高,故障诊断状态的评价等对设备的运行和维护起着重要的指导作用。
随着发电装备实现超临界的跨越,汽轮发电机组内部结构日趋复杂化、智能化与系统化,其机组设备故障诊断技术逐渐走出了凭借经验进行诊断的传统阶段,发展成集信号检测与处理技术、人工智能技术等多学科相结合的一个研究领域[2]。人工智能故障诊断方法主要有:基于模糊的故障诊断、基于人工神经网络的故障诊断[3]、基于数据挖掘的故障诊断、机器学习和专家系统等。专家系统作为智能故障诊断的一个重要分支,主要是利用相关领域专家的知识与经验通过模拟人类专家思维的方式对故障进行推理的一种诊断方法[4],其在解决大型复杂设备故障问题上具有一定的优势。
目前,工程实际中运用的专家系统主要包括基于规则推理(Rule-Based Reasoning,RBR)专家系统、基于案例推理(Case-Based Reasoning,CBR)专家系统、基于模型专家系统[5]、基于模糊推理专家系统和基于人工神经网络专家系统等。近年来,故障诊断专家系统在一些大型工业机械设备故障预测与诊断中发挥着重要的作用。徐红燕[6]把网络通讯、数据库和Java等多种技术融入到远程监测与故障诊断领域,研究了基于B/S模式的汽轮发电机组远程状态监测与故障诊断系统。M.Yang等[7]提出了基于模糊的规则推理和基于事例的推理方法的集成的汽轮机知识库系统,对推理结果具有较高的准确性。J. David等[8]设计并开发了基于状态识别的汽轮机故障诊断专家系统,能够根据实时状态监测识别故障。Dou. D等[9]研究了基于CLIPS和数据挖掘算法的旋转机械故障诊断专家系统。
当前智能故障诊断技术的一个研究热点就是集成的智能故障诊断技术,把多种适合该领域的故障诊断技术有效集成,可以发挥各自诊断方法自身的优点,对其不足之处进行弥补,从而提高故障诊断系统的高效性与准确性,对于电厂和电力系统减少重大事故具有重要意义。鉴于汽轮发电机组复杂内部结构故障特征的特点,采取单一的推理方式会降低专家系统的诊断能力,比如,RBR和CBR在汽轮发电机组故障诊断专家系统中有各自的优点和缺点,主要表现在:
(1) 在知识表示方面,基于RBR的专家系统知识获取与维护困难、自学习能力较差和规则之间的相似性等问题导致推理能力下降,而基于CBR的故障诊断方法对多案例信息获取容易、更新案例信息方便、具有自学习能力等优点。
(2) 在诊断推理方面,RBR诊断技术由于知识表示直观统一和易于理解与实现,在诊断推理过程中不需要系统模型、具有推理解释能力和推理效率较高等优点,弥补CBR诊断技术在推理过程过度依赖案例库、诊断速度慢、推理过程不易理解、对历史案例层次检索效率较低和系统性不足等问题。
RBR与CBR集成的故障诊断系统满足了汽轮发电机组故障诊断效率较低的问题,克服了各自诊断过程中的不足,充分利用规则推理和案例推理的优势。本文中,针对汽轮发电机组故障诊断问题,探讨智能故障诊断专家系统两者集成的理论结构和推理方式,设计与开发的集成故障诊断系统提高了诊断能力和准确性。
1 集成的故障诊断专家系统研究
汽轮发电机组智能故障诊断专家系统的工作原理就是获取多位该领域专家的经验与知识,利用合适的知识表示方式建立知识库,并采取有效的推理方法解决当前遇到的故障诊断问题[10]。建立RBR与CBR相结合的集成故障诊断专家系统,克服各自诊断过程中的不足,充分利用两者推理过程的优势并相互补充,提高故障诊断系统的诊断能力。
根据汽轮发电机组故障发生的类型和诊断推理方式,建立汽轮发电机组故障诊断专家系统集成的推理工作流程,图1系统采用RBR与CBR混合推理机制,根据输入的故障特征、特征权重与置信度,维修技术人员首先需要根据以往诊断经验选择RBR或CBR推理流程。当选择CBR推理时,根据描述的故障特征信息通过案例索引机制诊断出设备发生的故障类型,再由案例检索过程在该类源案例中检索最相似的案例,分析具体故障实例是否满足诊断要求,并对原案例进行修正和新案例学习;当选择RBR进行初步推理时,需要判断专家系统是否能够诊断出汽轮机发电机组故障的原因并给出维修策略。如果诊断出了故障原因,进行实例测试并对规则进行学习;如果没有诊断出具体的故障原因,转到CBR推理流程。
图1 集成推理工作流程图
2 汽轮发电机组故障诊断专家系统
2.1 规则推理模块的研究
汽轮发电机组智能故障诊断专家系统RBR模块的设计就是首先把该领域专家的知识与经验以一定知识表示的形式存储在知识库中,然后在合适的RBR推理方式下找出所匹配的规则,最后根据知识库内存储的事实和规则得出诊断结果[11]。规则推理对知识表示包括基于置信度的产生式规则、事实与自定义函数三大部分,通过产生式方法把领域专家对设备的诊断经验和知识转换成产生式规则(If…,Then…)的形式,根据汽轮发电机组的故障发生的机理、故障特征和专家系统推理机制的设计,知识存储结构采取框架+规则相结合的形式。其中CLIPS语言环境中,常伴频率的自定义模板特征描述为:
deftemplate harmonic -frequency “常伴频率”
(slot value)
(slot weight)
(slot CF)
模板由一个模板名和几个槽组成,事实是以框架表示的形式通过assert语言添加CLIPS环境中,利用deffunction语句与defrule语句向CLIPS环境中添加自定义函数与自定义规则。
知识表示方面,由于汽轮发电机组本身结构复杂性的特点,机组发生故障时特征表现复杂、多样和不确定,所以知识表示中规则前后件与规则本身也存在一定的不确定性[12]。汽轮发电机组的不同故障特征对诊断结果起到不同的作用,在采用基于置信度的不确定性推理方法中需要考虑特征权重的影响,表1为提出的基于置信度的故障规则表。
表1 汽轮发电机组轴弯曲故障规则表
一条完整的产生式规则表示为:
IFE1(w1) ANDE2(w2) AND…ANDEn(wn) THENγH
式中:E为规则前件,主要包括每条规则征兆属性值、每条特征的置信度阈值、故障特征的权重值wi;H为规则后件,主要包括规则知识的置信度CF(H,E)、该条规则的阈值γ。
图2为RBR系统框图,RBR模块在开发过程中,各部分之间的紧密联系构成系统的整体框架,系统推理效率的高低主要依据规则集的数量和推理方式的确定。
图2 RBR系统框图
知识工程师通过获得领域专家的知识与经验把故障信息总结成规则和函数的形式存储在知识库中[13],RBR诊断过程中,通过人机界面显示出诊断结果并把存储在数据库中的中间诊断结果通过解释器显示在人机交互界面上,完成RBR推理的工作流程。
表2是汽轮发电机组故障诊断中一组故障特征,在规则推理过程中首先需要判断故障特征的置信度是否大于产生式规则表内相应故障特征的置信度阈值,如果大于置信度阈值,则规则表中该条故障特征被激活,反之,规则表内该条故障特征不会被激活。根据故障规则表1与故障特征表2的对比可知,常伴频率将不会作为该条规则是否被激活的依据。
表2 汽轮发电机组故障特征表
对于规则前件而言,其故障特征总体的置信度为:
(1)
由公式(1)可以得到表2中故障特征的总体置信度值:
CF(E)=0.82×0.3+0.94×0.7+
0.9×0.4+0.92×0.52=1.742 4
已知证据E的可信度CF(E)和该条规则的置信度CF(H,E),可得结论H的可信度计算公式如下所示:
CF(H)=CF(H,E)×Max{0,CF(E)}
(2)
在RBR推理过程中,根据公式(1)所求得CF(E)和表1中规则置信度,由公式(2)可得:
CF(H)=0.59×Max(0,1.742 4)=
0.59×1.742 4=
1.028 016>0.92
由于CF(H)值大于规则表中规则设定阈值γ,则该条规则将会被激发。
2.2 基于熵值法的故障特征权值确定
汽轮发电机组故障特征具有随机性和无序性的特点,不同的特征属性对故障诊断结果具有差异性[14],案例检索过程中判断故障特征的权重值具有重要作用。熵值法对于特征的不确定性度量具有较好的效果,根据各个故障特征相对变化程度的大小判断其对整体故障特征的影响。确定特征权重时,主要根据故障特征信息量的大小来决定,特征信息量越大,其不确定性越小,特征权重就越小。汽轮发电机组在发生故障时所表现的故障特征是随机的,对故障发生所起的重要程度也是不相同的,故在确定各个特征权重之前要判断故障特征之间的变异程度。
在汽轮发电机组故障诊断专家系统中案例库有m个历史案例,每个案例具有n个故障特征,则历史案例的特征值矩阵可以表示为X=(xij)m×n,其中xij表示第i个案例的第j个特征的特征值。对于第j个特征,其特征值xij的差距越大,则该特征在整个特征参量库中所起的作用将会越大;如果某个故障特征的特征值相等,则该特征在整个特征范围内不起任何作用,其特征权重为零。
2.3 案例推理模块的研究
2.3.1 CBR推理流程
CBR是根据检索储存在案例库中与问题案例相似的历史案例来解决当前故障问题的一种推理方法[15]。根据汽轮发电机组故障信息和故障特性的描述,案例库CB可表示为CB=C1,C2,C3,…,Cm,汽轮发电机组故障诊断专家系统案例库中一个完整的案例Ci由四维信息表示为Ci=(Ii,Fi,Ri,Mi)。
其中,Ii为故障信息,包括案例编号、故障发生时间、设备类型和设备单位等;Fi=(fi1,fi2,…,fin)为案例Ci特征属性集,fin表示案例Ci的第n个特征,汽轮发电机组故障特征主要包括主导频率、常伴频率、轴心轨迹、进动与振动方向、振动变化情况和一些其他征兆信息等;Ri为故障诊断结果,包括故障原因和故障类别;Mi为维修策略,包括解决措施和诊断结果评价。
图3为汽轮发电机组故障诊断专家系统CBR工作流程图,主要包括案例检索、案例重用、案例修改和案例学习4个部分。通过对故障信息的分析并把故障特征输入专家系统诊断界面;利用案例搜索策略方法在案例库中找出与问题案例相似的案例并判断是否能够解决当前故障问题;假如能够解决故障问题,生成案例诊断报告并进行案例学习,如果不能够诊断出故障问题,对检索出的案例进行修正并验证诊断结果的可行性,然后通过案例学习部分把新案例存储在案例库中。
图3 CBR工作流程图
2.3.2 案例索引
为了解决因案例库庞大影响检索效率的问题,提出了把历史案例分类存储的方式。
定义1:对于样本空间U分成k个类U1,U2,…,Uk,其中Ua∩Ub=Ø,a≠b,且a,b=1,2,…,k,P(Ua)是类Ua在空间U所占的概率,故可知:
案例搜索策略在CBR中起到关键的作用,提出贝叶斯概率模型函数对问题案例进行索引,索引算法如下:
步骤1:根据公式(3),计算问题案例的每个特征在每个类中所占的比例:
(3)
步骤2:计算问题案例的所有特征在每个类中所占的比例如式(4)所示:
(4)
步骤3:根据步骤2所计算的结果,按照公式(5)判断问题案例所属的类:
SM=P(X|Ua)P(Ua)
(5)
其中,在a=1,2,...,k的情况下,选择最大的SM值,从而可以断定最大SM值所对应的j值就是问题案例所属的某一类。
2.3.3 案例检索
在CBR推理过程中,案例检索主要是计算问题案例与历史案例之间故障特征的相似度量,首先根据局部相似度(Local Similarity,LS)计算问题案例与历史案例之间各个特征之间的相似程度,然后根据各个故障特征的权重和相似度计算全局相似度(Global Similarity,GS)的大小,根据GS数值大小的排序计算出与问题案例最相似的历史案例,计算方法如式(6)所示。
(6)
式中:X与Y表示两个不同的案例;n表示案例特征项的数量;wj表示第j项特征的权重值。
机组故障特征的模糊不确定性导致诊断结果与维修决策也伴随着一定的不确定性,本文提出的模糊决策理论解决案例检索中特征不确定的问题。案例搜索策略是判断历史案例Xi与问题案例Y之间特征值的差异,采用改进的欧几里德(Euclid)贴近度的方法评价两个案例之间模糊数据集的相似程度。汽轮发电机组故障特征是离散的,设定案例库中历史案例集Ua={X1,X2,…,Xm},其中U为有限论域,公式(7)为相似度的计算方法。
GS(Xi,Y)=
(7)
由于不同的故障特征在CBR过程中对诊断结果所起的作用存在一定的差异性,为了使CBR得出的故障结果与维修策略具有一定的准确性,故对公式(6)考虑特征权重的情况,公式(7)修改后表示为:
GS(Xi,Y)=
(8)
式中:wj为案例的特征权重;Y为问题案例。
鉴于汽轮发电机组故障诊断过程设备运行中故障特征的实际情况和对诊断结果准确性的要求,公式(8)故障特征的特征值变量xij是模糊不确定的,故需要计算隶属度函数u(x)的数值来判断故障特征之间的差异性,根据u(x)计算问题案例与历史案例之间相似度的大小。
比如在汽轮发电机组故障诊断中要求轴承瓦温度高的隶属度时,采用S函数:
(9)
根据汽轮发电机组故障运行时对油液温度的具体要求,需要对α,β,γ值进行限定,设定参数α=10,β=60,γ=90,可得函数为:
(10)
通过公式(10)可得:当温度为50 ℃时,隶属于温度高的隶属度为0.5;当油温为80 ℃,通过上式可得隶属于温度高的隶属度为0.875;当温度为20 ℃,通过上式可得隶属于温度高的隶属度为 0.031 25。
当问题案例的油液温度为80 ℃,其中案例库中一个历史案例的油液温度为50 ℃时,计算特征油液温度隶属于温度高的局部相似度为:
LS(X,Y)=wj×LS(Xij,Yj)=
wj×(uXi(xij)-uY(yj))2=
0.26×(0.875-0.5)2=
0.26×0.140 625=
0.036 562 5
同样的计算方法应用于汽轮发电机组其他故障特征相似程度的计算,根据所有故障特征的局部相似度值,利用公式(8)计算全局相似度的大小并进行排序,选择相似度值较高的k个历史案例供诊断技术人员参考借鉴使用。
3 集成专家系统实例测试
该智能故障诊断专家系统的开发与设计主要是联合CLIPS专家系统开发工具、SQL数据库和C#编程语言3种软件来完成的。用CLIPS专家系统开发工具开发该系统的推理机模块,用C#软件设计系统的人机交互界面模块,用SQL数据库作为知识库和案例库存储该故障诊断领域专家的知识与经验。利用开发软件的相互接口技术可以实现ClipsNet组件在Visual C#中的调用CLIPS编程和SQL Server在Visual C#.NET环境的嵌入技术,开发软件的优势互补使得设计的故障诊断专家系统可以满足用户和操作人员的需求。
该专家系统具体的诊断流程主要分为两部分,图4、图5为RBR模块,包括规则诊断与规则学习。
图4 规则诊断
图5 规则学习
图6为CBR过程中经过案例检索诊断出的问题案例所属类型和维修策略。图7表示案例学习模块,主要作用就是为了把CBR修正之后的问题案例信息、故障特征信息、故障原因、维修策略和处理意见评价作为新案例存储在案例库中。其诊断流程为:
图6 案例诊断
步骤1:进入汽轮发电机组故障诊断专家系统主页面输入帐号与密码进入系统之后,根据分析所监测的故障信息并总结成故障特征的形式。图4主要输入汽轮发电机组故障特征相应的特征值、特征权重和置信度,在诊断结果栏里会出现具体的故障原因与解决策略。
图4表示的案例故障特征为:
((主导频率(值:“1X”)(权重:0.3)(置信度:0.82))
((常伴频率(值:“2X”)(权重:0.24)(置信度:0.8))
((轴心轨迹(值:“圆或椭圆正进动”)(权重:0.7)(置信度:0.94))
图7 案例学习
((相位特征(值:“较稳定”)(权重:0.4)(置信度:0.9))
((油液温度(值:“84”)(权重:0.52)(置信度:0.92))
其诊断结果为:
故障名:轴临时性弯曲
故障类型:转子自身
故障可信度:0.59
故障原因:预负荷过大导致轴系应力集中,频繁启停机致使转子热变形不均匀。
维修策略:校直轴,按机组规定升速与加载,保证转子动平衡。
步骤2:在规则推理过程得出诊断结果之后,把诊断结果和故障特征总结成产生式规则的形式,技术操作人员通过规则学习操作按钮把该规则存储在规则库中,图5规则学习丰富汽轮发电机组故障诊断专家系统的知识库,为之后的故障诊断提供丰富的数据集。
如果规则推理中没有得出合适的诊断结果,则需要转入案例推理部分。
图6所示案例诊断:如果在案例索引过程中根据输入的故障特征属性计算出故障类型为“转子不对中”,其他故障特征为“突发性振动主要是以半频分量0.5X(25 Hz)为主;突发性振动时,缓存在半频分量外,还存在1.5X、2X谐波分量”。诊断结果为“轴承实际安装标高与要求的扬度曲线偏差较大,机组运行中有些轴承轻载,造成轴承失稳”,处理意见为“调整轴承实际安装标高”。
步骤4:图7案例学习部分根据诊断结果将故障诊断的各种故障信息、参数、设备的型号、生产厂家等信息以一个完整的案例的形式存储下来,根据该案例所属的故障类型,进行分类存储,完成学习过程。
可见,该汽轮发电机组故障诊断专家系统可以满足汽轮发电机故障诊断的要求,系统的知识库通过产生式规则的形式表示领域专家的知识与经验,提出基于置信度的不确定性推理方法从规则库中推理出故障发生的原因和维修策略。当RBR过程不能给出最有效的解决方案时,CBR过程根据问题案例和历史案例故障特征的差异性,根据案例搜索策略得出故障发生的机理。融合CBR和RBR集成的推理方式增强了故障诊断系统的可靠性,提高了诊断效率。
4 结论
为解决汽轮发电机组故障诊断问题,提出的RBR与CBR集成的汽轮发电机组故障诊断专家系统,不仅克服了各自推理方式的局限性,在探讨具体的推理过程中能够充分利用历史故障信息。
通过实例验证,提出基于置信度的规则推理方法和案例搜索策略在对汽轮发电机组故障问题的处理方式上具有高效性与准确性,通过Visual Studio 2010的Windows窗体应用程序设计该专家系统界面具有易操作性。
参考文献:
[1]王慧滨. 基于规则和案例推理的汽轮发电组故障诊断专家系统[D]. 兰州:兰州理工大学, 2014.
[2]文天柱, 许爱强, 王怡苹. 基于可拓规则推理的故障诊断方法[J]. 北京航空航天大学学报, 2016, 42(3):506-513.
[3]任浩, 屈剑锋, 柴毅,等. 深度学习在故障诊断领域中的研究现状与挑战[J]. 控制与决策, 2017, 32(8):1345-1358.
[4]梁银林, 刘庆. 集成KPCA-SVM的汽轮发电机组故障诊断[J]. 电力科学与工程, 2017, 33(1):27-31.
[5]CERRADA M, PACHECO F, SANCHEZ R V, et al. SOA Based integrated software to develop fault diagnosis models using machine learning in rotating machinery[C]// Service-Oriented System Engineering. IEEE, 2017.
[6]司景萍, 马继昌, 牛家骅,等. 基于模糊神经网络的智能故障诊断专家系统[J]. 振动与冲击, 2017, 36(4):164-171.
[7]DENG X W, GAO Q S, ZHANG C, et al. Rule-based fault diagnosis expert system for wind turbine[J]. ITM Web of Conferences, 2017, 11:7005.
[8]SHAABAN S M, NABWEY H. A decision tree approach for steam turbine-generator fault diagnosis[J]. International Journal of Advanced Science and Technology, 2013, 51 :59-66.
[9]YU G. Fault feature extraction using independent component analysis with reference and its application on fault diagnosis of rotating machinery[J]. Neural Computing & Applications, 2015, 26(1):187-198.
[10]YAN C F,MA S M. Fault diagnostic expert system of rolling element bearing based on CLIPS[J]. Journal of Information & Computational Science, 2013, 10(10):3053-3062.
[11]YAN C F, WANG H B, ZHOU L L, et al. Fault diagnosis expert system of turbine generator sets based on rule reasoning and case reasoning[J]. Applied Mechanics & Materials, 2014, 513-517:4443-4448.
[12]LIU H C, YOU J X, YOU X Y, et al. Linguistic reasoning petri nets for knowledge representation and reasoning[J]. IEEE Transactions on Systems Man & Cybernetics Systems, 2016, 46(4):499-511.
[13]高瑜, 仝卫国. 基于关联规则的一次风机故障预警方法研究[J]. 电力科学与工程, 2016, 32(10):42-46.
[14]谭巨兴, 张清华, 王钦若,等. 旋转机械设备智能故障诊断方法的研究[J]. 工业控制计算机, 2016, 29(1):36-38.
[15]倪秋华, 朱晓东. 汽轮发电机组状态监测和故障诊断的发展与趋势[J]. 汽轮机技术, 2011, 53(3):220-222.