本文在介绍人工神经网络基本原理和反向传播(BP)算法理论的基础上,研究了BP算法在锅炉系统故障诊断方面的应用,给出了锅炉样本的一个实例训练过程及测试结果,最后通过误差分析,证实了这种方法在锅炉的故障诊断方面能够取得比较好的效果。
关键词:人工神经网络;BP算法;故障诊断;锅炉系统
1 引言
大型火电机组的锅炉系统参数多、系统复杂、设备大多处在高温、高压的工作环境,其故障的发生率高,且危害性极大。因此实时监测火电机组运行时系统的热力参数,并根据热力参数的异常变化对其进行故障诊断与预测,是火电机组运行中十分重要的问题。故障诊断FD(Fault Diagnosis)技术针对这一问题,在掌握锅炉运行流程后,对锅炉故障的发生,发展机理进行研究,尽早发现故障及其原因并能预报故障发展趋势。在诊断过程中,必须利用被诊断对象表现出来的各种有用信息,经过适当地处理和分析,做出正确的诊断结论。
2 基于神经网络的锅炉故障诊断基本原理
人工神经网络(Artificial Neural Network,简称ANN)是人们对人类大脑神经网络认识理解的基础上人工构造的能够实现某种功能的神经网络。它实际上是由大量简单元件相互连接而成的复杂网络,具有高度的非线性,能够进行复杂的逻辑操作和非线性关系实现的系统。图1为组成神经网络的神经元的一般模型。

人工神经元模型是神经网络的基本计算单元,是多个输入 和一个输出 的非线形单元, 具有阈值 , 是神经元活动的转移函数, 为每个输入的权重值。则神经元的数学模型为:

其中 是从上一层神经元传来的信号,为了表示方便和统一,上式中神经元净输入也简化写为:

其中

在故障诊断领域, 转移函数f(x)通常取Sigmoid函数:

Sigmoid 特性函数形状像字母S,通常称为S型函数,在故障诊断领域适用于可信度区域为[0,1]的情况,双曲正切特性函数适用于可信度区域为[ - 1, 1]的情况。
在众多的人工神经网络模型中,最常用的是BP(Back Propagation)模型,即利用误差反向传播算法求解的多层前向神经网络模型。BP网络已经在模式识别、图像识别、管理系统等方面都得到了广泛的应用。本文将利用神经网络中的BP模型对锅炉系统进行故障诊断。
典型的神经网络结构如图2所示:

首先需要进行知识的获取。由专家提供关于各种锅炉系统故障现象(征兆集)及相应的故障原因(故障集)实例作为学习样本。将数据分为两部分,一部分用于训练网络,另一部分用于测试。将训练网络的数据按一定顺序编码,分别赋给网络输入、输出节点,通过神经网络学习算法对样本进行学习,经过网络内部自适应算法不断修正权值,直到达到所要求的学习精度为止。此时在大量神经元之间联结权值上就分布着专家知识和经验。训练完毕后,再将测试网络的数据从初始状态出发,向前推理,将显示出的故障结果与实际的测试数据结果相比较,如果误差很小,说明网络的权值建立得正确;如果误差较大,说明网络的权值建立有误,需要重新进行网络的训练。神经网络描述为:
输出层:

隐含层:

这里取转移函数为:
其中 称为陡度因子,用于调节Sigmoid函数的形状。
3 BP网络学习算法
3.1 BP网络学习算法推导
BP算法的实质是求解误差函数的最小值问题,它采用非线性规划中的梯度下降法(Gradient Descent),按误差函数的负梯度方向修正权值。其主要思路是求出训练网络的指标函数误差E:
![]()

然后利用E计算出权值修正量,分别为:
其中:
n为学习率,
最后得到网络权值的修正关系为:

3.2 网络输入输出向量及参数的选取
以故障类型X=(x1,x2,x3,x4)作为输入,故障原因O=(o1,o2,…,o12)作为输出,以不同的故障原因导致的故障模式为训练样本进行学习,从而建立故障模式与故障原因之间的映射关系。x1,x2,x3,x4分别代表锅炉缺水,锅炉满水,汽水共腾,锅炉水冲击4种故障现象;o1, o2,…,o12 代表水位表失灵等12种故障原因。
3.3 网络结构及训练样本的选取
锅炉系统故障诊断的神经网络模型分为3层,分别为输入层、隐含层和输出层。
按照样本的模式对,确定输入层节点个数为4,对应于4个故障现象,输出层节点个数为12,对应于12个故障原因。输出节点值的大小反映了故障出现的可能性。具体如表1所示。

隐含层节点的个数可参照经验公式 选取:其中 为输出节点数, 为输入节点数, 为1至10的常数,在此,试探选取10个隐含层节点。于是,网络共26个节点。
3.4 网络的训练与检验

我们以给定故障现象作为网络的输入,要求网络通过调节所有的联结权系数和各神经元的阈值,使得在输出层神经元上得到理想的结果;然后再给出另一个现象,要求网络继续完成对这对模式的学习。当系统的平均误差E满足要求即可完成训练。根据程序框图及BP算法,运用Matlab语言编写程序进行样本训练。
训练样本的测试结果如下

4 误差分析

图4 训练次数与误差关系图

图5 隐含层节点个数与误差关系图

可以看出,BP网络的训练误差起初迅速下降,之后逐渐平稳;当隐含节点数低于3个时误差极大,之后迅速下降到一个很小的值后,缓慢变化,在经历一个“合适”的隐含节点数目后,又开始波动上升。这说明隐含层节点数过少则网络难以概括训练样本集体现的规律,过多则出现调节过度,降低了泛化能力。因此构造一个好的网络不但要利用好经验,还必须经历千百次的试验。
5 结论
综上可以看出,与传统的诊断方法不同,人工神经网络是一种效果非常好的智能信息处理方法,它是自学习和可以被训练的,具有许多优良的特性。把基于神经网络BP算法的故障诊断技术引入锅炉系统,能够在锅炉系统的监测及诊断中发挥较大的作用。如果对BP算法进行适当的改进,或者跟其他方法相结合,发挥各种方法的长处,可以获得更理想的结果






