优化的BP神经网络在电子设备故障诊断中的应用

时间:2022-10-06 09:09:23

优化的BP神经网络在电子设备故障诊断中的应用

摘 要:给出BP神经网络故障诊断模型,研究了共轭梯度法对BP算法进行优化设计。针对电子设备的一些实测数据,利用优化的神经网络对其进行了故障诊断,给出实验的仿真结果,并进行详细的分析,最后得出设备的诊断结果。通过实验证明,基于共轭梯度法的BP神经网络优化算法应用于电子设备故障诊断,其诊断率较高,有很强的实用性。

关键词:BP神经网络;优化设计;共轭梯度法;故障诊断

中图分类号:TP306 文献标识码:A

文章编号:1004-373X(2010)03-147-03

Application of Optimized BP Neural Network in Fault Diagnosis Against Avionics

WANG Qiuyan,JU Jianbo,JIN Xin

(Naval Aeronautical Astronautical University,Yantai,264001,China)

Abstract:BP fault diagnosis model is given out,the conjugate gradient is studied and carried on the optimum design to BP algorithm.According to the surveyed data which are directed against one avionics,the optimized neural network is applied in the fault diagnosis against the avionics,the simulation of experiment and the result of fault diagnosis are given out.It proves that when BP based on the conjugate gradient is applied in fault diagnosis,its diagnosis efficiency is higher,and this method has strong practical value.

Keywords:BP neural network;optimum design;conjugate gradient;fault diagnosis

随着现代科学技术的发展,设备的集成度越来越高,越来越复杂,故障诊断技术的出现为提高系统的可靠性和安全性开辟了一条新的途径。近些年来,由于计算机技术、信号处理、人工智能、模式识别技术的发展,促进了故障诊断技术的不断发展,大型复杂电子设备的出现,使得人们更迫切地希望能提高整体可靠性与维修性,这就给故障诊断提出了更高的要求。因此,对故障诊断技术的研究[1]有着重要的理论及现实意义。

1 BP神经网络故障诊断模型

一个神经网络用于故障诊断时,主要包括三层[2]:输入层,即从设备对象接收各种故障信息和现象;中间层,是把从输入层得到的故障信息,经内部的学习和处理,转化为针对性的解决办法;输出层,是针对输入的故障形式,经过调整权值后得到的故障处理方法。对于一个新的输入状态信息,训练好的网络将由输出层给出故障识别结果。BP神经网络故障诊断模型如图1所示。

2 BP神经网络的优化――共轭梯度法

虽然神经网络模型已成功应用于模式识别、函数逼近、时间序列预测等领域,但是由于BP学习算法仅改变网络的连接值和阈值,不改变网络的拓扑结构,因此BP网络在处理具体问题时还存在收敛速度慢,易陷入局部极小值等缺点[3]。为了解决BP网络训练的缺点,人们提出了多种有益的改进方法[4]。

图1 BP神经网络故障诊断模型

本文研究了共轭梯度法对BP神经网络进行优化设计,基本思想如下:

传统的前向多层网络的BP学习算法实质上是无约束的最速下降法,改进的BP算法是对最速下降法作了一些约束;而共轭梯度法则是介于最速下降法和牛顿法之间的一种方法,它仅需要利用一阶导数信息,不仅克服了BP学习算法收敛慢的缺点,又避免了存储和计算牛顿法所需要的二阶导数信息。共轭梯度法的计算步骤和最速下降梯度法差别不大,主要差别在于搜索方向不同,即每一步的方向不是梯度的负方向,而是一种共轭的方向。由原来的负梯度方向加上一个修正项得到共轭方向,也就是使得最速下降法具有共轭性,从而提高算法的有效性和可靠性。共轭梯度法应用于神经网络中的目的是求误差函数E(W)的最小值。算法主要是利用共扼梯度方向来修正权值W,使WУ娜范ǜ为快速,计算过程如下:

(1) 初始化权值W1,令k=1;

(2) 计算网络的负梯度矢量:

设p1=r1=-E′(W1),式中E′(W1)是根据BP算法求出的负梯度。

(3) 计算步长ak:

ak = pTkrkpTkEn(Wk)pk

式中:En(W1)为误差函数对权值矢量WУ亩次导数。

(4) 调整权值:

Wk+1=Wk+akpk

rk=-E′(Wk+1)

(5) 如果k除以样本数N的余数为零时,pk+1=rk+1,Х裨蚣扑阈碌乃阉鞣较:

pk+1=rk+12-rTk+1rk(pTkrk)+rk+1

(6) 如果梯度方向rk>ε,则置k=k+1,否则停止,Wk+1为所求权值矢量。

3 诊断实例

现以一电子设备为诊断对象[5],验证优化的BP神经网络算法。样本数据从测试口测试获得,一共6个测试点,10个板卡故障。诊断步骤如下:

(1) 故障特征提取[6]

表1为实验测得的故障样本数据;表2为归一化后的数据,其激活函数[7]采用S型函数f=1/(1+e-ax);П3为神经网络的目标输出模式,1表示有故障,0表示正常。

(2) BP网络的训练

取输入节点N1=6,输出节点N3=11,隐层节点采用N2=N1N3+α,α取1~10,本实验中α取7(根据训练误差曲线调整而得),N2=15。学习率│=0.2,训练误差E

表1 故障样本数据

V1 /VV2 /VV3 /VV4 /Vf1 /Hzf2 /Hz故障形式

10.25314.13510.62411.311205989MA-1

0.53614.7820.3250.259213996MA-2

5.1268.39513.69814.6872091 010MB-1

0.5684.8659.65814.5682151 008MB-2

14.32511.4590.2655.3682201 012MC-1

13.68412.0840.6574.865208990MC-2

13.95613.6529.65711.5272101 003MD

9.57612.65112.3570.8262111 013ME

5.3674.79512.6570.264221994MF

14.96510.5324.9769.853253856MG

5.01314.96510.0214.9862101 000正常

表2 自身数据归一化

V1 /VV2 /VV3 /VV4 /Vf1 /Hzf2 /Hz故障形式

0.141 80.177 00.101 80.282 40.145 80.070 1MA-1

0.476 50.167 00.483 30.313 20.208 00.025 5MA-2

0.289 00.286 50.056 90.310 60.062 50.137 0MB-1

0.475 10.370 80.121 30.328 30.062 50.210 0MB-2

0.074 80.223 50.486 40.326 70.166 70.076 4MC-1

0.083 00.211 90.466 40.297 60.083 30.237 0MC-2

0.079 40.184 80.121 40.314 60.041 70.019 1MD

0.156 90.201 80.073 60.285 40.120 00.082 8ME

0.280 40.372 60.069 50.302 00.187 50.038 2MF

0.067 40.241 40.264 90.349 60.854 20.917 2MG

0.293 10.164 30.113 60.280 30.001 70.002 8正常

a=-0.175 6a=-0.108 7a=-0.205 1a=-0.063a=0.006 4a=0.0023

(3) BP网识别结果分析

① 用样本自身数据输入训练好的神经网络中,其识别结果见表4。与故障模式对比分析可知,自身数据检测正确率为100%。可见,该网络达到了训练的要求。

② 任取4组测试数据见表5,观察其识别结果。表6为归一化后的测试数据,表7为识别结果。与故障模式对比可知,第一组数据对应的故障是MA-1;第二组数据对应的故障是MB-2;第三组数据对应的故障是MD;第四组数据对应的故障是MG。由此可见,本网络不仅能识别样本本身的故障,而且能准确诊断样本以外的数据故障。

图2 BP网络训练误差曲线

表3 神经网络的目标输出模式

MA-110000000000

MA-201000000000

MB-100100000000

MB-200010000000

MC-100001000000

MC-200000100000

MD00000010000

ME00000001000

MF00000000100

MG00000000010

正常00000000000

表4 自身数据识别结果

0.983 10.000 00.000 00.000 00.000 30.000 00.000 00.000 00.000 00.000 00.000 0

0.000 00.999 00.000 00.000 40.000 10.003 30.000 00.000 00.000 00.000 30.007 0

0.001 20.000 00.995 70.184 50.000 00.000 00.000 00.009 20.000 40.000 00.037 3

0.001 50.001 40.002 90.889 90.000 00.000 00.000 00.000 00.000 00.000 00.000 3

0.000 40.014 80.000 00.000 00.995 90.000 10.000 40.000 00.000 00.000 00.000 0

0.000 00.001 70.000 20.000 20.000 00.940 10.000 10.000 20.000 70.004 60.000 4

0.000 10.000 00.000 00.000 00.004 60.000 00.961 80.007 80.000 00.000 00.000 0

0.034 60.000 00.040 50.000 00.000 00.000 00.062 80.995 90.002 00.000 00.000 0

0.018 70.003 90.172 30.715 80.002 30.012 80.002 90.023 10.886 20.169 00.009 7

0.000 00.000 00.000 00.000 10.000 00.000 00.000 00.000 00.004 10.996 80.000 0

0.001 50.000 30.000 20.000 00.001 10.000 40.004 50.002 00.000 10.000 50.000 8

表5 测试数据

V1 /VV2 /VV3 /VV4 /Vf1 /Hzf2 /Hz

9.58313.69510.52311.256209993

0.5344.6799.53914.2792161 010

13.98513.6549.73611.4792151 006

14.56910.4794.8739.532294817

表6 测试数据归一化

0.146 70.179 80.103 60.292 00.143 60.069 5

0.476 60.375 50.123 90.334 00.065 80.210 9

0.079 00.184 80.119 50.314 00.042 60.018 7

0.062 90.242 50.269 00.354 20.849 70.943 1

a=-0.175 6a=-0.108 7a=-0.205 1a=-0.063a=0.006 4a=0.002 3

表7 测试数据识别结果

0.994 80.000 00.000 00.000 10.000 10.000 00.002 60.000 50.003 80.000 00.000 2

0.000 90.000 90.013 00.999 60.000 00.000 00.001 50.000 00.000 10.000 00.000 9

0.412 40.000 00.001 50.000 00.001 00.000 00.999 50.003 10.000 00.000 00.000 2

0.000 00.000 00.003 00.000 00.001 70.000 00.196 90.000 00.000 40.979 50.000 3

4 结 语

本次实验中的BP神经网络采用共轭梯度法进行优化设计,由实验数据可知,该网络能够准确诊断数据的故障状态,可见,该方法能够成功应用于设备的故障诊断中。故障诊断是一门实用性很强的技术,因此只有在实际应用中才能体现它的价值,目前在理论研究方面虽有不少进展,但真正在工程实践中成功应用的实例还较少,因此如何将先进的故障诊断理论与方法应用到实际中,还有待更深入的研究。

参考文献

[1]闻新,周露.神经网络故障诊断技术的可实现性[J].导弹与航天运载技术,2000,13(2):17-22.

[2]朱大奇.电子设备故障诊断原理与实践[M].北京:电子工业出版社,2004.

[3]高雪鹏,丛爽.BP网络改进算法的性能对比研究[J].控制与决策,2001,16(2):167-171.

[4]高洪深,陶有德.BP神经网络模型的改进[J].系统工程理论与实践,1996(1):37-40.

[5]张义忠.基于神经网络电子装备故障诊断的仿真研究[J].计算机仿真,2000,17(4):39-42.

[6]王承.基于神经网络的模拟电路故障诊断方法研究[D].成都:电子科技大学,2005.

[7]韩力群.人工神经网络的理论、设计及应用[M].北京:化学工业出版社,2002.

[8]张德丰.Matlab神经网络应用设计[M].北京:机械工业出版社,2009.

[9]高隽.人工神经网络原理及仿真实例[M].北京:机械工业出版社,2007.

[10]金聪颖,李进.神经网络在电路诊断中的应用[J].测试技术学报,2002,16(3):230-235.

[11]陈励华.智能故障诊断技术的应用与研究[D].西安:西北工业大学,2005.

上一篇:USS协议变频器Web控制方法的研究与实现 下一篇:一种红外单目标跟踪与防盗报警系统设计