
算法分析
基于免疫遗传算法的神经网络在智能故障诊断中的应用
赵丽丽
(辽宁工业大学电气工程学院辽宁锦州121000)
与
摘要:本文设计了一种基于免度遗传算法的多层前向神经网络,解决了BP算法在故障诊断中易陷入局部技小值的同题,既有神经网络的学习能力和鲁禧性,又具有免疫遗传算法强的全局随机投索能力。仿真结果表明,达种神经网络能较好地完成复杂生产过程的故障诊断
关键调:免疫遗传算法BP网络障诊断
中图分类号:TP301
文献标识码:A
文章编号:1007-9416(2012)10-0130-02
目前,智能故障诊断技术已成为十分活跃的研究方向之
BP神经网络因其优良的非线性逼近性能,且不需要分析对象的数学模型,很适合故障诊断的研究。但BP网络无法避免反向传播算法的不足,训练速度慢且易陷人局部收敛的问题。免疫遗传算法是遗传算法和生物免疫思想相结合:具有全局寻优与局部寻优的特点来修正BP网络前向传播中的权值和阅值,弥补了BP算法的不足。因而基于免疫遗传算法的神经网络可以有效地提高故障诊断的效率和准确性。
1、免疫遗传算法优化神经网络的工作原理
免疫遗传算法(1.2是基于生物免疫机制提出的一种改进的遗传算法,它是模拟和反映生物机体免疫系统的特点,并结合工程应用的实际而提出的一种仿生优化算法。该算法可以有选择、有目的地利用待求解问题中得一些特征信息来抑制优化过程中退化现象的出现。
1.1免疫遗传算法的实现
给出如下免疫遗传算法流程图:把待求解的问题对应为抗原,
开始五编码
产生初始抗体计算适应度函数值计算抗体浓度
支
浓度>T
人
产生记忆抗体抗体的抑制/促进
+
产生新一代抗体(经过交、变异、多样性保持)
文
辆足终止条件
Y 输出结果
+ 终止
图1免疫遗传算法的流程图
问题的解对应为抗体。免疫遗传算法首先接收一个抗原,然后随机产生一组初始抗体,接着计算每一代抗体的适应度,对抗体进行变异,再通过基于抗体浓度和亲和力的群体更新策略生成下一代抗体群,直到满足终止条件,算法结束,(如图1)
为了保持群体规模不变,如果特定变量中的抗体被加人到新一代抗体群中,则可以将新一代抗体群中适应度最小的抗体沟汰掉。但是在进化过程的后期,由于各抗体的品质已被大大改进了,相互之间适应度已经接近,为了维持抗体群的多样性,此时也可以考患淘汰掉一个浓度较大的抗体。
1.2基于免疫遗传算法的多层前向神经网络设计
按照免疫遗传算法流程图,设计多层前向神经网络。需要说明,在设计多层前向神经网络时,假设其输人(包括输人节点数及输人值)和输出(包括输出节点数和输出值)是已知的,激活函数也是预先确定的,要设计的主要是隐含层节点数和其相关权值及阔值。
1.2.1抗停基园编础
多层前向神经网络的学习过程是一个复杂的连续参数优化问题,采用了实数编码方法。每个抗体的基因编码方式如下所示:(如表1)
1.2.2裁体造应度品数的设计
设规模为用的抗体群,每个抗体是具有n个元素的一维向量,对应一种网络,作为网络结构的组合。分别计算出每个抗体的期望
号之(-)),对应于免疫通传算法
输出和实际输出的误差E,=
2岁
中的抗原。则抗体与抗原的适应度函数可设计为F(0),其对应于免
疫理论的亲和力概念;F()=
1+const
其中,const为大于o的常
+const
数。当抗体最佳时适应度函数的值为1。
1.2.3抗停浓度的定文
由于采用实数编码,抗体相似性可用抗体编码的Euclidean距离表示。在一个规模为",单位抗体基因长度为n的抗体群中,第i 个抗体v和第个抗体w之闻的Euclidean距离为:
D,6, )=
之(-w)其中,,w分别是表示抗体V,w的第位
上的基因。于是,第i个抗体的Euc1idean浓度定义为: c,():
a+ Eg(,J)
在实际中,虽然有些抗体本身差异很大,但目标函数值却相等
作者简介:赵丽(1981-)辽宁锦州人,辽宁工业大学,自动化教研室,讲师 30