遗传算法在故障诊断中的应用

2013-07-09 02:33赵建春叶丽娜张兵兵
兵器装备工程学报 2013年3期
关键词:权值遗传算法故障诊断

赵建春,叶丽娜,张兵兵

(陆军军官学院 a.研究生管理大队;b.装甲兵系,合肥 230013)

目前,非线性系统的故障诊断已成为当今故障诊断领域的热点和难点问题[1]。而神经网络由于具有良好的自学习、并行性、较强的容错能力以及一定的泛化能力,使其在故障隔离方面表现出较为优秀的性能,利用神经网络进行故障诊断已取得许多成果。但是,传统的BP 神经网络的过拟合与泛化性之间的矛盾不易调和,很多时候其学习训练收敛速度慢,易陷入局部极值。遗传算法[2-4](Genetic Algorithm,GA)具有很强的宏观搜索能力和良好的全局优化性能,将遗传算法与BP 网络相结合,训练时先用遗传算法对神经网络的权值进行寻找,将搜索范围缩小后,再利用BP 网络来进行精确求解,可以达到全局寻找和快速高效的目的,并且可以避免局部最小问题。该算法不仅具有全局搜索能力,而且提高了局部搜索能力,使网络整体性能得以改善。本文将基于遗传算法的神经网络用于建立故障诊断模型,在数据化的故障征兆和故障类型之间建立一种非线性映射,使其达到良好的拟合。

1 前向多层神经网络

BP 神经网络属于前馈型神经网络[5-7],它由输入层、输出层和隐含层组成,相邻层之间由节点连接,而同一层不需要节点连接。

本文采用级联BP 网络,其结构如图1 所示。BP 网络的结构:输入层的神经元个数为8 个,输出层的神经元个数为5个,隐含层神经元个数l =2 ×m +1 =17,m 为输入层的神经元个数,因此选取拓扑结构为8 -17 -5 的网络,网络模型的训练采用LM(Levenberg-Marquardt)反馈算法,通过不断调整神经元的权值和阈值以实现网络对样本输入输出数据的非线性映射。

图1 BP 网络结构

2 算法流程

GA 优化BP 神经网络主要有两种[8-9]:优化神经网络的初始权值和阈值;优化神经网络的结构。本文采用前者。主要思想是将权值和阈值表示成基因型(二进制编码串),随机产生一个种群为n 的群体,把每一个个体通过BP 神经网络训练得到其适应度值,通过适应度对每一代的n 个个体进行复制、交叉和变异,产生适应度更高的新一代种群,一代一代不断进步,最后可求得最优权值和阈值。算法流程图如图2所示。

图2 算法流程

遗传算法按以下步骤进行:

1)产生初始种群。采用10 位二进制编码方法,设定种群的规模为40,每个个体含243 个染色体:分别对应隐含层136 个权值w17×8、17 个阈值b17×1,输出层85 个权值v5×17、5个阈值b5×1;

2)将权值阈值解码,赋给BP 神经网络,计算误差E;

3)适应度函数选取为目标误差函数的倒数;

计算每一个个体评价函数,并将其排序,可按下式概率值选择网络个体:

式(1)中,fi为个体i 的适配值,可用误差平方和E 来衡量,fi=1/E(i)。

4)代沟0.95,交叉概率0.7,变异概率0.01,即从父代排序后的40 个个体中选取最优38 个个体,以0.7 的概率进行交叉,以0.01 的概率进行变异,再加上父代中最优的2 个个体,产生包含40 个个体的子代。

5)遗传代数gen 取40。如未达到遗传代数,则进入步骤(2),开始下一循环,同时记录每一代最小误差。

6)将最优个体解码得到最优权值和阈值。

3 故障诊断实验

本文采用文献[3]中的实验数据验证基于遗传算法改进的BP 神经网络(简称GA-BP)在故障诊断中的有效性。该设备常见的故障变量包括F1无故障;F2增压器效率下降;F3空冷气传热恶化;F4透平保护格栅阻塞;F5透平通流部分阻塞。共5 个变量作为网络的输出变量。

样本的确定输入向量包括排气总管温度Tr、扫气箱压力Ps、各缸平均燃烧最大爆发压力Pmax、增压器转速ntc、扫排气道压损系数mp、压气机出口温度Tc、扫气箱温度Ts,再加上的一个负荷参数共8 个变量作为网络输入变量。将9 类故障的训练、测试样本输入神经网络,由GA 优化40 代,最小误差err=0.008 455 1,得到的进化曲线如图3 所示。由优化后的神经网络输出诊断结果,并与单纯BP 算法比较,如表1所示。

图3 误差进化曲线

表1 基本BP 算法与GA-BP 算法的比较结果

由表1 和图4、图5,通过优化前后的比较可以看出:

1)单纯BP 算法的运行时间大于15 s,训练步数为58步,且常常不能收敛,结果很不稳定,正确率较低。

2)GA-BP 算法运行时间大致为5 s,训练步数为15 步,分类结果稳定,正确率很高,几乎为100%。

图4 随机权值阈值训练误差曲线

图5 优化权值阈值训练误差曲线

4 结束语

GA-BP 神经网络应用于故障诊断不仅能够克服BP 神经网络易陷入局部极值的缺点,在速度和准确率上也有较大的提高,对故障能够进行可靠的分类。通过Matlab 仿真平台验证了该算法应用于故障诊断的科学性和合理性,可以大大提高诊断的准确率和鲁棒性,具有较好的应用价值。

[1]周东华,叶银忠.现代故障诊断与容错控制[M].北京:清华大学出版社,2000.

[2]周明,孙树栋.遗传算法原理及应用[M].北京:国防工业出版社,2001.

[3]何险峰.遗传算法及其在化学化工中的应用[J].化学进展,1998,10(3):312-318.

[4]何飞,程志毅.改进的遗传算法在优化中的应用[J].湖北工学院学报,2003,18(2):8-10.

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

[6]袁曾任.人工神经元网络及其应用[M].北京:清华大学出版社,1999.

[7]徐丽娜.神经网络控制[M].哈尔滨:哈尔滨工业大学出版社,1999.

[8]王宏刚,钱峰.基于遗传算法的前向神经网络结构优化[J].控制工程,2007(4):387-390.

[9]刘红梅,王少萍.基于GRNN 网络和遗传算法的旋翼平衡调整[J]. 北京航空航天大学学报,2008,34(5):507-511.

猜你喜欢
权值遗传算法故障诊断
一种融合时间权值和用户行为序列的电影推荐模型
基于包络解调原理的低转速滚动轴承故障诊断
基于5G MR实现Massive MIMO权值智能寻优的技术方案研究
基于遗传算法的高精度事故重建与损伤分析
基于遗传算法的智能交通灯控制研究
数控机床电气系统的故障诊断与维修
强规划的最小期望权值求解算法∗
程序属性的检测与程序属性的分类
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于量子万有引力搜索的SVM自驾故障诊断