APP下载

基于改进AFSA优化BP神经网络的汽车故障诊断方法

2022-12-12胡文娟贾红涛

机械设计与制造工程 2022年11期
关键词:步长视野故障诊断

胡文娟,贾红涛

(商洛职业技术学院机电工程学院, 陕西 商洛 726000)

随着汽车故障类型的多样化,传统的人工故障诊断已不再适用,开始逐步往智能诊断领域发展。某汽车修理厂的数据显示,在半年内维修的376辆汽车中,发动机故障车辆为186辆,点火故障车辆为46辆,启动故障车辆为27辆,润滑系统故障车辆为28辆,冷却系统故障车辆为21辆,发动机异响车辆为42辆。通过以上数据可知,汽车发动机故障占比大,已成为汽车故障检测的难点。对此,学者们提出BP神经网络、深度学习等方法,如孔慧芳、赵明等[1-2]分别采用改进BP神经网络和卷积神经网络对汽车故障进行识别;邓素等[3]通过人工鱼群算法(artificial fish swarm algorithm,AFSA)对BP神经网络参数进行优化,实现车辆故障的诊断和定位。实验表明,该方法大大提高了故障诊断准确率。但实践发现,BP神经网络存在易陷入局部最优和过早收敛的问题,在一定程度上制约了汽车故障诊断的效率和准确率。因此,本文以电控发动机故障诊断为例,结合AFSA在全局搜索上的优点,对BP神经网络参数进行优化,并将参数优化后的BP神经网络用于汽车故障诊断,以验证AFSA优化BP神经网络算法的可行性和有效性。

1 基本方法

1.1 BP神经网络基本原理

BP神经网络的基本原理是通过梯度下降算法对网络权值和阈值进行调整,使实际输出与期望输出的误差最小或为零[4]。BP神经网络包括正向传播和反向传播,其中正向传播是输入层在输入样本后,经隐含层和输出层的传递函数输出结果和误差;反向传播则是将误差分配给每个神经元,然后各个神经元调整权值和阈值,使输入和输出的误差达到目标值。BP神经网络的传播原理如图1所示[5-7]。图中,x1,x2,…,xn为BP神经网络的输入样本,y1,…,ym为BP神经网络的预测结果,ωij和ωjk分别为输入层至隐含层和隐含层至输出层的连接权值。

图1 BP神经网络传播原理

1.2 AFSA原理及改进

1.2.1AFSA的原理

传统的BP神经网络存在两点局限:一是由于初始参数设置的随机性,使BP神经网络在训练过程中易陷入局部最优[8];二是学习速度慢。考虑到AFSA在全局搜索上的优点,提出用AFSA对BP神经网络的参数进行寻优。AFSA是李晓磊在2012年提出的,认为人工鱼的行为模式取决于自身状态和周边状态。如图2所示,人工鱼x在观察当前位置状态后,对视野范围内某点的状态进行观察,若视野内某点的位置状态优于当前位置状态,那么则向该点移动一步;反之则在视野范围内搜索其他点,直到尝试的次数达到最大[9-10]。人工鱼的行为模式可用图2示意。

图2 人工鱼行为模式

1.2.2AFSA改进

研究认为,AFSA的性能主要取决于视野Visual和步长step。前期以较大的视野和步长,后期以较小的视野和步长,可提高AFSA算法的收敛精度[11-12]。因此,结合AFSA的行为模式和研究经验,在传统的视野和步长计算公式中引入自适应参数,具体为:

visual′=visual·a/(iter_time·b)

(1)

step′=step·a′/(iter_time·b′)

(2)

式中:visual′为改进后的视野;step′为改进后的步长;a,b,a′,b′为自适应参数;iter_time为当前迭代次数[13]。

由式(1)和(2)可知,视野和步长在算法迭代的初期先增大,然后逐步减少。通过这种方法,前期可提高算法的全局搜索能力,后期可提高算法的收敛速度和精度[14-15]。

2 改进AFSA优化BP神经网络的汽车故障诊断

2.1 改进AFSA优化BP神经网络参数的流程

将改进后的AFSA引入BP神经网络的参数寻优中,具体的寻优步骤如图3所示。

图3 改进AFSA优化BP神经网络参数的流程图

2.2 改进AFSA优化BP神经网络的汽车故障诊断流程

将参数优化后的BP神经网络用于汽车发动机故障的诊断,具体流程如图4所示。

图4 改进AFSA优化BP神经网络的汽车故障诊断流程

3 仿真验证

3.1 BP 神经网络优化验证

3.1.1故障类型与数据来源

结合电控汽车发动机故障相关数据,选择11种具有代表性的发动机故障作为BP神经网络的特征输入。11种故障类型分别为:起动困难、失速、加速时回火、怠速不稳、喘气或加速无力、爆震、排气管放炮、进气压力或空气流量异常、节气门开度传感器读数异常、冷却液温度传感器读数异常、氧传感器读数异常。共采集105组样本特征数据,其中训练集样本数据为90组,测试数据为15组。设每组数据中输入的特征样本为Xi,对应故障位置或者故障原因为ti,i=1,2,3,…,11。

3.1.2参数设置与试验环境搭建

AFSA的参数为人工鱼种群数量为30,尝试次数为20,人工鱼视野为0.2,拥挤度因子为0.618,人工鱼移动步长为0.05,当前迭代次数为100。BP神经网络的参数最大训练次数为500,训练误差指标为0.001,初始学习速率为0.002,学习速率减少系数为0.2,学习速率增长系数为10,最小优化系数为0.002,输入层层数为11,隐含层层数为15,输出层层数为11。

硬件环境部署:操作系统为Windows10,仿真软件MATLAB_R2017a。

3.1.3故障编码

为方便计算和优化,对样本进行编码,考虑到故障类型,采用0和1二值化方式来进行编码。表1为测试样本中数据的二值化编码结果。

3.1.4BP网络优化结果

根据上述仿真环境,运用MATLAB_R2017a对由图5可知,优化后的BP网络经过13次迭代后,其训练误差趋向于1×10-4;未经优化的BP神经网络经过18次迭代才趋向于1×10-4。因此,从算法的迭代收敛速度看,经过参数优化后的BP的收敛速度明显要快。

表1 测试样本

算法进行编程,并将训练样本作为样本的输入,对改进BP神经网络进行优化,优化前后BP神经网络训练结果如图5所示。

图5 优化前后BP网络训练结果

3.2 改进AFSA优化BP神经网络的汽车故障诊断结果

通过MATLAB对BP神经网络编程,将测试样本输入到MATLAB中,得到表2所示的电控汽车发动机故障诊断测试的误差。

由表2可知,测试结果与实际输出结果的误差较小,且均控制在合理范围内。由此表明,寻优后的BP神经网络可准确确定故障位置。

表2 测试样本误差

4 结束语

本文通过改进AFSA对BP神经网络参数的优化,在提高BP神经网络迭代效率的同时,提高了汽车故障诊断的准确性。试验结果表明,优化后的BP神经网络迭代只需13次即可收敛,由此说明优化的有效性。通过仿真得到的结果与实际结果基本吻合,说明通过优化后的BP神经网络的诊断,能准确预测汽车的故障原因。由此验证了本文提出的改进AFSA优化BP神经网络诊断方法的可行性。

猜你喜欢

步长视野故障诊断
基于包络解调原理的低转速滚动轴承故障诊断
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
基于随机森林回归的智能手机用步长估计模型
居· 视野
基于Armijo搜索步长的几种共轭梯度法的分析对比
数控机床电气系统的故障诊断与维修
基于动态步长的无人机三维实时航迹规划
因果图定性分析法及其在故障诊断中的应用
视野
真相