基于麻雀搜索算法优化支持向量机的滚动轴承故障诊断

2021-05-14 11:49马晨佩李明辉巩强令杨白月
科学技术与工程 2021年10期
关键词:发现者适应度种群

马晨佩, 李明辉, 巩强令, 杨白月

(陕西科技大学机电工程学院, 西安 710021)

滚动轴承作为机械设备的重要组成部分,大多处于高速、高载等复杂工况下,也是最容易发生故障的零件之一。在实际生产中,滚动轴承的健康状态对机械设备的整体运行情况有较大的影响,因此,对滚动轴承的健康状态进行实时监测和故障诊断具有重要的意义[1]。近年来,随着人工智能的发展,人工神经网络(artificial neural network, ANN)[2]、聚类分析[3]和模糊理论等技术不断应用于故障诊断领域,并且取得了不错的效果。而实际生产中,故障样本的获取比较困难[4],因此限制了上述方法的使用。基于统计学习理论的支持向量机(support vector machine, SVM)方法能很好地解决小样本下的模式识别问题,在故障诊断领域也得到相当广泛的使用,但SVM的分类效果很大程度上依赖于参数的选择。针对SVM参数优化问题,一些学者引入群体智能算法进行SVM的参数优化[5-6]。Huang等[7]采用遗传算法(genetic algorithm, GA)优化SVM参数,有效地提高了SVM的分类性能,但由于遗传算法的操作较为复杂从而导致寻优速度较慢。陈晋音等[8]提出用粒子群算法(particle swarm optimization, PSO)优化SVM参数,虽收敛速度得到提升却很容易陷入局部最优解;刘路等[9]用人工蜂群(artificial bee colony,ABC)算法来优化SVM,这种方法可以很好地克服局部最优解,但却无法利用全局最优信息迭代更新。研究表明,遗传、粒子群等算法在SVM参数优化中具有一定优势,但同时存在寻优速度慢、易陷入局部最优等缺陷。

麻雀搜索算法(sparrow search algorithm,SSA)是一种新颖的群体优化算法,它是受麻雀种群的觅食和反捕食行为启发,通过19个标准测试函数验证SSA算法在搜索精度,收敛速度,稳定性和避免局部最优值方面均优于现有算法[10]。基于此,将SSA算法应用到SVM的参数选择中,以SVM训练集分类准确率最高为优化目标,选择最优的惩罚因子和核参数,建立SSA-SVM 诊断模型。

1 麻雀搜索算法

SSA算法是根据麻雀觅食并逃避捕食者的行为而提出的群智能优化算法,在麻雀觅食的过程中,分为发现者和追随者,发现者在种群中负责寻找食物并为整个麻雀种群提供觅食区域和方向,而追随者则是利用发现者来获取食物。为了获得食物,麻雀通常可以采用发现者和追随者这两种行为策略进行觅食。种群中的个体会监视群体中其他个体的行为,并且该种群中的攻击者会与高摄取量的同伴争夺食物资源,以提高自己的捕食率。此外,当麻雀种群意识到危险时会做出反捕食行为。

SSA算法的数学模型。在SSA中,具有较好适应度值的发现者在搜索过程中会优先获取食物。因为发现者负责为整个麻雀种群寻找食物并为所有追随者提供觅食的方向,因此,发现者可以获得比追随者更大的觅食搜索范围。

在每次迭代的过程中,发现者的位置更新描述为

(1)

追随者的位置更新描述为

(2)

式(2)中:XP为目前发现者所占据的最优位置;Xworst表示当前全局最差的位置;A为1×d的矩阵,其中每个元素随机赋值为1或-1,并且A+=AT(AAT)-1,其中A+为伪逆矩阵。当i>n/2时,这表明适应度值较低的第i个追随者没有获得食物,处于十分饥饿的状态,此时需要飞往其他地方觅食,以获得更多的能量。

当意识到危险时,麻雀种群会做出反捕食行为,其数学表达式为

(3)

式(3)中:Xbest为当前的全局最优位置;β为步长控制参数,服从均值为0,方差为1的正态分布的随机数;K是一个随机数,表示麻雀移动的方向同时也是步长控制参数,且K∈[-1,1];fi为当前麻雀个体的适应度值;fg和fw分别为当前全局最佳和最差的适应度值;ε为最小的常数,以避免分母出现零。为简单起见,当fi

2 基于麻雀搜索算法优化的SVM

2.1 支持向量机

支持向量机(support vector machine,SVM)是由Vapnik教授提出的一种基于统计学方法的机器学习方法[11]。SVM 是一种不同于神经网络的机器学习方法,尤其是对于小样本数据分类问题,SVM 有着出众的分类效果,SVM 的目的在于寻找一个最优超平面,使得不同数据最近分界面与超平面的距离最大,即解决如下问题。

(4)

式(4)中:ω为超平面法向量;xi为训练样本;yi为样本的类别;b为根据训练样本确定的阈值;C为惩罚参数;εi为线性不可分时引入的松弛变量;引入Lagrange乘子αi,则该问题的拉格朗日函数可写式(5),并对式(5)中ω和b求偏导为0。

(5)

因此得其对偶形式为

(6)

在非线性的情况下,引入核函数映射得

K(xi,xj)=[φ(xi),φ(xj)]

(7)

由以上推导可以得到决策函数为

(8)

式中:yj为对应期望输出;xj为输入向量;n为训练样本数;φ(·)为映射函数;K(xi,yi)为核函数,一般采用径向基核函数(RBF)作为核函数,其形式为

K(xi,xj)=exp(-g‖xi-xj‖2)

(9)

由式(4)~式(8)可得,SVM需要优化的参数为惩罚参数(C)和核参数(g);因此,采用较好的优化算法对参数进行寻优,可以提高SVM的性能,更好的应用于故障分类。

图1 SSA优化SVM流程图

2.2 麻雀搜索算法优化SVM故障诊断流程

图1为SSA优化SWM流程图,SSA算法优化相关参数步骤如下。

(1)首先确定故障诊断模型的输入、输出。提取故障特征作为诊断模型输入,确定目标输出值。建立训练、 测试样本集。

(2)初始化麻雀搜索算法相关参数,包括种群规模、最大迭代次数,SVM参数C、g。

(3)通过交叉验证,对训练样本进行分类,以交叉验证的准确率作为麻雀个体的适应度。保留最优的适应度值及位置信息。

(4)计算预警值,以预警值大小为依据,根据式(1)更新发现者的位置。

(5)根据式(2)更新追随者的位置。

(6)按照式(3)更新意识到危险的麻雀位置,处于种群外围的麻雀会向安全区域靠拢,处在种群中心的麻雀则随机行走以靠近别的麻雀。

(7)计算麻雀个体新位置的适应度值,将更新后的适应度值与原来的最优值进行比较,并更新全局最优信息。

(8)判断迭代次数是否满足终止条件,如不满足,则重复步骤(3),反之则停止,输出最优参数,将测试集样本输入到最优的SVM模型,输出诊断结果。

3 滚动轴承故障诊断实例分析

3.1 实验样本分析及特征提取

实验采用美国西储大学提供的滚动轴承的故障数据来验证SSA算法优化SVM轴承故障诊断模型的性能[12]。以深沟球轴承 SKF6205-2RS 驱动端数据作为实验数据,输入轴转速为1 797 r/min,电机载荷为0 HP,信号采样频率为12 kHz,分别采集轴承正常状态、内圈故障、滚动体故障、外圈故障4种状态振动信号。将采集到的原始振动信号进行小波基函数为“db11”的三层小波包分解重构,将第3层8个节点(E1~E8)的能量特征值作为特征向量输入诊断模型。每种轴承状态分别选取60组数据(共240个样本),其中45个作为训练样本,15个作为测试样本。滚动轴承四类信号的部分样本能量特征值如表1所示。

表1 小波包提取的部分故障能量特征向量

3.2 算法参数寻优收敛性比较

使用PSO-SVM[13]、GA-SVM[14]和SSA-SVM分别故障进行分类识别,设置最大迭代次数为200,3种方法的交叉验证准确率的寻优迭代曲线如图2所示。通过比较可知,用本文算法优化SVM,只经过3次迭代就达到交叉验证分类准确率最优值97.78%,GA方法的交叉验证分类准确率较低,而PSO方法容易陷入局部最优。说明SSA算法比目前成熟的PSO和GA算法能快速、准确找到最优的SVM参数。

图2 分类准确率寻优曲线

3.3 不同模型故障诊断效果对比

将3种方法最优的分类准确率对应的C和g作为SVM最优参数,用最优参数对SVM 进行训练,并采用训练好的 SVM 对测试样本进行测试,参数优化结果及3种方法测试结果如表2所示。对比可知,不同优化方法得到不同的参数组合,其中SSA-SVM的分类效果最好,测试准确率可得96.67%,相比于GA-SVM及PSO-SVM算法模型的准确率分别提高3.34%和1.67%;在时间上,SSA-SVM模型所需迭代时间需要37.06 s,相对较好迭代时间效果的PSO-SVM缩短了17.12 s,而GA-SVM的寻优速度相对较慢,且故障准确率较低。

分析说明本文算法在SVM的参数优化中相比于PSO及GA算法具有明显优势,可以更好地提高故障诊断的准确率。图3为3种诊断模型的实际测试集与预测测试集分类结果对比。

图3 SSPSO-SVM、GA-SVM及A-SVM诊断模型实际与预测分类

4 结论

(1)SVM方法对于实际生产过程中样本量少的机械故障诊断具有一定优势,但其性能受参数选择影响较大,针对SVM参数优化问题,引入新的优化算法SSA,提出了SSA-SVM方法。

(2)结合小波包能量特征提取,将提出的SSA-SVM方法应用于滚动轴承不同类型的故障诊断,结果表明SSA-SVM算法模型的故障诊断准确率可达96.67%,运行时间为37.06 s,相比较于GA-SVM及PSO-SVM算法模型,SSA-SVM算法模型在诊断性能及运行速度上都具有明显优势。同时,本文算法也为其他领域的故障诊断提供了一种新的研究方向。

猜你喜欢
发现者适应度种群
改进的自适应复制、交叉和突变遗传算法
山西省发现刺五加种群分布
“最大持续产量”原理分析
由种群增长率反向分析种群数量的变化
让学生做“发现者”
让学生在小学数学课堂中做一个“发现者”和“创造者”
启发式搜索算法进行乐曲编辑的基本原理分析
法治媒体如何讲好法治故事
基于人群搜索算法的上市公司的Z—Score模型财务预警研究
种群增长率与增长速率的区别