(2)取Ni的整数部分int Ni为对应个体在下一代群体中的生存数目。这样共可确定出下一代群体中的个个体
(3)以为各个个体的新的适应度,再用基本的比例选择方法来随机确定下一代群体中还未确定的个个体。
1.5 交叉和变异算子
由前述介绍可知递阶遗传算法染色体的结构是固定的,所以与常规遗传算法的操作运算相比没有多大差异。因此,标准的交叉和变异算子同样分别适用于染色体中不同级别的染色体串,即对不同级别的染色体串,交叉和变异遗传算法中的交叉概率和变异概率是两个极为重要的控制参数,它们的选择是影响遗传算法行为和性能的关键所在。选取固定的交叉概率和变异概率易使遗传算法产生早熟收敛,陷入局部极值。
Srinivas等提出了自适应遗传算法(Adaptive GA,AGA):
式中:fmax表示种群个体的最大适应度;favg表示种群的平均适应度;f’表示参与交叉的两个个体中较大的适应度;f表示变异个体的适应度。
调整思想是,当群体适应度比较集中时,使交叉概率pc和变异概率pm增大;当群体适应度比较分散时,使pc和pm减小,同时,适应度值高于群体平均值的个体对应于较低的pc和pm,使该解得以保护从而进入下一代;低于群体平均值的个体,对应于较高的pc和pm,使该解被淘汰。因此,交叉、变异概率的自适应调整能够提供给某个解较佳的pc和pm组合。自适应递阶遗传算法在保持群体多样性的同时,保证算法的收敛性,提高算法的收敛速度。
2 三相桥式全控整流电路建模与仿真
研究分析表明,整流输出电压包含了电路的故障信息,是一个关键的测试点,通过适当的变换可以实现故障诊断。运用Matlab 7.1软件中的Simulink构建三相桥式全控整流主电路故障模型如图3所示。并对几种常见故障进行了仿真研究,其部分仿真结果如图4(a)~(e)所示,分别为正常工作时负载电压,单管VT5断路,两只管子同时断路故障包括同一支路不同桥臂(VT1和VT4)、不同支路不同桥臂(VT4和VT5)和不同支路同一桥臂(VT1和VT5)的断路故障仿真波形。
3 三相桥式全控整流电路的故障诊断
图5所示为三相桥式全控整流电路原理图。考虑到实际系统运行时出现故障的情况,同时为简化分析过程,假定整流电路晶闸管故障分为单管故障或两支管子同时故障共22种,要使神经网络能区分所有的故障,必须对这些故障类型进行编码,用六位编码表示,也就是神经网络的输出。每位编码对应一个晶闸管,所有晶闸管均正常时对应编码为000000。
以A相电压正向过零处为基准,对控制角从0~120°每隔7.5°依次对22种故障状态下的输出电压ud进行一个周期(20 ms)的数据采集,采集到的数据个数为50个,以此组成训练样本,共有22×17=374个样本。用同样的方法对控制角从6.5~113.5°每隔10.7°对ud进行采样,以获得测试样本。根据主成分分析特征提取的算法对训练和测试样本进行故障特征提取,获取的新样本从50维降为10维,大大减少了神经网络的计算量,改善了网络的复杂程度。
本文运用Matlab工具箱,采用自适应递阶遗传算法对神经网络进行了优化。得到了神经网络的最简结构(隐含层神经元个数m=14)和最优的权值、阈值。优化后的神经网络训练误差曲线如图6所示。
采用测试样本数据对所训练好的BP神经网络进行仿真验证,分别选用负载变化、输入电压变化得到的特征向量数据去验证已建立的BP神经网络,故障诊断正确率达到97.67%,并且故障诊断有误都发生在负载和输入电压同时变化时。
4 结论
本文将一种自适应递阶遗传算法应用于神经网络的优化,解决了以往神经网络结构、权值、阈值同时优化效率不高的难题。通过仿真实验,证明了算法的准确性和实用性,并将优化的神经网络用于三相桥式全控整流电路的故障诊断,得到了令人满意的结果。