梁 洁,蔡 琦,王晓龙
(海军工程大学 船舶与动力学院,湖北 武汉 430033)
核动力系统一旦发生重大事故将对装置、人员、环境等产生恶劣影响,同时由于核动力装置系统众多、结构复杂、故障模式繁多,对故障诊断提出了较高的要求。传统专家系统能有效模拟该领域专家实现对故障的诊断,但存在着知识获取困难、推理效率低等“瓶颈”问题。而人工神经网络具有知识获取快捷、并行推理速度快、学习能力强等优点,但在核动力装置故障诊断领域,神经网络对故障样本数据质量范围的高要求限制了其应用,且存在推理过程类似“黑箱”、解释机制难以实现等问题[1]。
由于核动力系统的复杂性和高可靠性,其故障是典型的小样本问题,实际工况采集的故障样本数据无法满足人工神经网络的训练要求,而模拟机产生的模拟数据又受到环境和工况的限制,无法准确完整描述各种情况下故障的不同状况。由此,采用通过样本训练的传统方式建立神经网络在核动力系统的故障诊断领域受到应用的限制;同时,传统的专家系统在该领域具有深厚的积累,用产生式规则表达故障诊断知识是目前该类系统中应用最普遍的方法。若能通过丰富的知识储备构造神经网络,在有效地避免了神经网络对样本数据的高要求的同时,将有效提高专家系统的知识获取和诊断推理能力。
本文以核动力系统专家系统所存储的产生式规则库为基础,构造人工神经网络,建立具有实例学习能力的神经网络推理机;同时,建立完整的专家系统知识获取、推理机制和解释机制,融合传统专家系统和神经网络的优势,构造核动力系统神经网络故障诊断专家系统。
传统的神经网络中,大多将每个神经元当作一个黑箱系统,通过神经元之间的权值来表示网络知识,可理解性差。近年来出现了一类新的网络学习算法,称为构造型的神经网络学习算法,即依据给定的全部样本知识,设计和构造整体网络(网络的结构和全部参数)。借鉴其构造思想,以专家系统中原有的产生式规则为依据,设计和构造整体网络作为专家系统的推理机。
图1 产生式规则(a)与感知器(b)
产生式规则表示法也叫规则表示法,是专家系统中最常用的一种表示方法[2]。它具有统一的IF-THEN结构,是最常用的知识表达方式,其规则形式如图1a所示,其中C1,C2,…,Cm为规则前件,表示规则需满足的m个条件,相互之间为“and”(并且)关系;R为规则后件,即满足相应的前提条件后产生的结论。对于多个前件之间或后件之间连接为“or”(或者)关系的规则,均可转换为若干并集。
感知器是一种具有单层计算单元的神经网络,其结构如图1b所示。其中:X=(x1,x2,…,xn)为n个输入;W=(ω1,ω2,…,ωn)为联接权值;y为输出;f为阈值函数,当输入的加权和大于或等于阈值时,感知器输出为1,否则为0。
感知器的输入与输出关系可描述如下:
ωixi-θ
(1)
(2)
由于核动力系统现有的故障诊断专家系统的知识库的诊断规则绝大多数为线性可分集,因此,对于线性不可分问题这里不进行讨论,将另外行文阐述。
1) 输入层构造。将与同类后件相关的前件全集合Call=(C1,C2,…,Cn)作为网络的输入,构造n个输入神经元。
对于不同后件的神经网络,若其前件属于同一个全集,则可采用并联的模式合并为1个统一的神经网络。不妨设R=(R1,R2,…,Rk)为k个后件的集合,而其分别训练出的感知器为G1,G2,…,Gk,则其合并网络如图2所示。
图2 不同后件合并后的神经网络
从专家系统获取知识和解决问题的能力来看,产生式系统建立在经验型知识之上,系统本身无法从领域基本原理与实例数据中理解知识,因此,知识的获取成为系统开发中的“瓶颈”问题。而神经网络本身具有强大的自学习能力,即能通过预先确定的算法学习样本数据调整网络权值来提高网络的辨识能力[4]。
已构造完成的神经网络在获得1批新的实例样本数据时,利用网络的自学习能力,亦能更新网络连接权值,从而表现出对新知识的理解和吸收能力。具体方法如下。
1) 将实例样本数据按产生式规则的前件内容离散、规范化,并剔除异常数据;生成对应的神经网络输入。
2) 将样本数据全部输入神经网络,根据神经网络推理结果将其分为两类:神经网络计算结果与实例样本一致;计算结果与实例样本不一致。
3) 将与网络结果不一致的实例样本集按其后件分类加入各感知器规则集。利用最大间隔法重新计算加入新样本后的集合的分类面。在使用最大间隔法时,由于更倾向于原知识库中规则的正确性,为规则和实例数据分别加权,规则的权值远大于实例数据(两者比值为100∶1时,可视为原规则由高维空间中100个实例数据总结得出)。
4) 将训练所得新的权值更新至各感知器神经元,网络连接结构不变。
在上述构造型神经网络基础上的知识获取,实质是基于神经网络的产生式规则抽取。对于传统的神经网络,知识均隐含于网络结构和权值中。由于本文的构造型神经网络每个感知器均代表1个后件的规则集合,感知器本身是一种知识表达,因此,其规则抽取较传统神经网络要简易和可理解得多。系统规则库中的规则由两部分组成:原规则库产生式规则;由神经网络抽取获得规则。对于某一个感知器神经元,其规则抽取方法如下。
2) 罗列。获取其所有输入的可能组合(即所有前件的可能组合),删除前件互斥和原规则库已有组合。
4) 存储。将所获得的新的产生式规则存入知识库。
神经网络的并行推理机制,使其效率远高于普通专家系统。一旦神经网络训练完毕,其诊断推理即完成1个从网络输入到输出的过程。
进行故障的实时推理诊断时,需进行输入数据的规范化,即首先将数据按网络输入要求即前件模式进行离散划分,即可输入网络,直接得出诊断结果。
神经网络故障诊断专家系统以参数自诊断方式,利用知识库中的实例和规则,采用神经网络的推理机制,进行故障诊断。神经网络故障诊断专家系统结构如图3所示。
知识库由规则库和实例库组成。规则库存储由专家知识形成的和由神经网络模块通过知识获取手段获得的新的产生式规则集。实例库存储所有事实案例。知识库与各模块交互通信,是专家系统的核心之一。知识库管理系统对知识库进行管理,完成人机接口和知识库的交互,可由领域专家用户等进行知识库的管理操作,同时完成知识表达格式的规范。
图3 神经网络故障诊断专家系统结构
神经网络模块承担了传统专家系统中知识获取和推理机两部分的工作。由于神经网络的运用,具有自动获取知识和并行推理的优势。该模块与知识库交互通信,完成由规则构建网络,由实例优化训练权值的功能,同时,又由知识获取手段丰富知识库中的规则。
数据库用于存放反应当前状态事实的数据。主要包括当前的故障诊断状态数据和神经网络模块的结构、权值等参数。
在解释模块中,故障诊断依然由产生式规则表达,规则前件视为诊断依据,后件为结论。解释模块将输入数据离散规范化为规则前件,将输入输出结果表达为if…then…结构的规则,同时与规则库中知识进行比对。
以蒸汽发生器U型管破裂(R1)、主蒸汽管道破裂(R2)、给水管道破裂(R3)3种典型故障为例,阐明核动力系统神经网络故障诊断专家系统的构建和应用。当每种故障发生时,特征向量可能的变化列于表1[5]。
1) 网络输入层
整理表1中3种典型故障的规则集,可得其前件全集(表2)。将17个前件对应生成17个输入神经元加入网络,形成输入层。
表3列出各故障规则对应的神经网络输入,输入值由式(2)确定。
2) 感知器权值训练
对3个不同后件R1、R2、R3分别构造3个感知器G1、G2、G3加入网络。
表1 故障类型与特征参量的对应关系
表2 故障前件全集
由于表1中知识库为各种故障发生时,特征可能的变化,即故障发生时,某些特征可能不表现或不明显,实际故障征兆为这些特征的组合,因此采用mofn的方法对知识库进行处理,当知识库中各故障前件条件达到一定程度的满足时,即认为故障发生。这里取50%的特征发生比例以说明诊断系统构建方法,具体比例应视情况而定。
以后件为R1的规则为例,在表3中可看到,其完整的特征集有7个值输入为1,按50%的比例取整,当满足条件的至少4个特征出现,且满足输入规范时,认为故障发生。表达式如下:
,2,3
(3)
表3 3种典型故障对应的感知器输入
表4 3种典型故障的构造型神经网络输入权值
3) 不同感知器合并
将已训练好的3个感知器神经网络G1、G2、G3并联接入同一个神经网络,共用输入层,实现输入层神经元到感知器的全连接,感知器各自输出结果,形成如图2形式的神经网络模块,诊断输出格式为Y=(y1,y2,y3);其中y1∈[0,1],y2∈[0,2],y3∈[0,3]。诊断结论不排除同时出现不止1种故障的情况。
以输入Xj=(1,0,1,0,0.5,0.5,0,0.5,1,0,0.5,0,1,0,0,1,0)为例说明解释机制和知识获取,将Xj(由实例数据经数据输入规范化后获得)输入神经网络模块,得出Yj=(0,2,0)。说明该输入所对应的实例属于第2类故障。搜索其输入参数值为1的项对应的前件,可知满足前件C1、C3、C9、C13、C16,转化为标准的产生式规则,其解释表达为:Because〈一回路平均温度下降,一回路压力下降,二回路蒸汽流量增加,蒸汽发生器水位升高,稳压器压力下降〉So〈主蒸汽管道破裂〉。
图4 感知器推理结果
同理,作为该实例的知识获取,搜索知识库若无该产生式规则的历史记录,则将其存入知识库,表达方式为if〈一回路平均温度下降,一回路压力下降,二回路蒸汽流量增加,蒸汽发生器水位升高,稳压器压力下降〉then〈主蒸汽管道破裂〉。
建立了一种新的核动力系统故障诊断专家系统,该专家系统融合了神经网络技术,充分发挥了产生式专家系统和神经网络各自的优势,弥补了不足。从实例测试可看出,该系统具有较高的故障识别能力,同时提高了专家系统的知识获取能力和并行推理能力。为核动力系统这类缺乏故障数据支持的高可靠性系统的人工神经网络的应用提供了一种尝试手段。
参考文献:
[1] IOANNIS H G, PRENTZAS J. Integrating (rules, neural, networks) and cases for know-ledge representation and reasoning in expert systems[J]. Expert Systems With Applications, 2004, 27 (1): 63-75.
[2] 张梅军. 机械状态检测与故障诊断[M]. 北京:国防工业出版社,2008.
[3] 刘兴堂,梁炳成,刘力,等. 复杂系统建模理论、方法与技术[M]. 北京:科学出版社,2010.
[4] 蔡猛,张大发,张宇声. 基于遗传算法的核动力设备实时故障诊断系统[J]. 核动力工程,2009,30(3):111-114.
CAI Meng, ZHANG Dafa, ZHANG Yusheng. Nuclear power plant real-time fault diagnosis system based on genetic algorithm[J]. Nuclear Power Engineering, 2009, 30(3): 111-114(in Chinese).
[5] 刘永阔,谢春丽,夏虹,等. 神经网络在核动力装置故障诊断系统中的应用[J]. 应用科技,2007,34(5):46-49.
LIU Yongkuo, XIE Chunli, XIA Hong, et al. An application of neural network to fault diagnosis of the nuclear power plant[J]. Applied Science and Technology, 2007, 34(5): 46-49(in Chinese).