APP下载

基于GAPSO-SVM 的滚动轴承故障分类方法

2021-02-04

软件导刊 2021年1期
关键词:频域适应度全局

(浙江理工大学 信息学院,浙江 杭州 310018)

0 引言

现代社会机械设备构造复杂且生产环境多样,在自动化程度高的生产线上一旦机器发生故障,将给生产作业带来不同程度的损失。通用设备配有相当数量的滚动轴承。据统计,只有不到一成的轴承能够正常运行到预期寿命年限,大多数轴承在使用年限内出现故障后,其造成的机器生产损失远大于轴承自身价值。滚动轴承使用场景多样,因此及时准确诊断轴承状况可减少生产损失,相关研究具有十分重要的意义。

机器故障诊断技术主要分两个阶段:第一个阶段以传感器和信号技术为基础,以信号处理作为手段进行故障诊断;第二个阶段以机器学习算法为代表进行人工智能诊断[1]。对于滚动轴承故障诊断,主要利用以支持向量机(Support Vector Machine,SVM)为代表的人工智能领域算法。支持向量机是基于统计学的分类方法[2],通过使用不同方法寻找多维超平面实现多维非线性数据分类和预测任务,此外支持向量机因易操作、自学习和比较强的泛化能力等特点,在机械故障诊断方面的应用较多,也积累了丰富的研究成果[3-5]。支持向量机分类效果很大程度上取决于参数选择(如惩罚参数C 和核函数参数G)[6],故一些学者通过智能搜索算法寻优支持向量机参数。方清等[7]提出粒子群(Particle Swarm Optimization,PSO)改进支持向量机算法,进行数据分类和趋势预测,针对滚动轴承故障的分类实验取得了良好效果;胡勤等[8]通过遗传算法(Geneti⁃cAlgorithm,GA)改进支持向量机算法进行滚动轴承的故障诊断,较SVM 耗时短且精度高。但遗传算法在解决规模计算问题时容易陷入早熟和搜索效率低的问题,粒子群算法容易陷入局部最优、过早收敛从而无法寻到全局最优解[9-11]。

本文利用基于PSO 算法与遗传算法GA 的混合算法GAPSO 搜寻SVM 最优参数,利用改进算法对实验数据进行测试,并将测试结果分别与GA-SVM、PSO-SVM 进行比较。实验结果表明,GAPSO-SVM 算法可提高滚动轴承故障分类模型准确率,评价结果更优。

1 GAPSO-SVM 算法相关理论

1.1 SVM

SVM 是监督学习中最有影响力的方法之一。其基本模型是定义在空间上最大间隔的线性分类器,由于其遵循经验风险与置信风险之和最小化(即结构风险)原理,因此SVM 泛化能力强。SVM 学习策略是使间隔最大化,对于已知数据集:T={(x1,y1),(x2,y2),……(xn,yn)}其中,xi属于Rn,yi属于{+1,-1},i=1,2,…N,xi为第i个特征向量,yi为类标记。如若yi>0,则xi属于正类,若yi<0,则xi属于负类。可形式化为凸二次规划问题:

其中,ξ为松弛变量,w为超平面权系数向量,b是偏移量,C 是惩罚参数。引入拉格朗日乘子法,得到最优分类决策函数。

本文取径向基核函数为:

其中ai为拉格朗日乘子,K(x,xi)本文取径向基核函数,式(3)中g 为核函数参数。核函数参数g 的取值对样本划分精细程度有重要影响,g 越小,低维空间中选择的曲线越复杂,容易出现过拟合;反之分类结果粒度越粗从而欠拟合。惩罚因子C 的取值综合考虑了经验风险与结构风险,C 越大,经验风险越小,结构风险越大,容易出现过拟合;C 越小,经验风险越大结构风险越小。从而出现欠拟合。由此可见,惩罚因子C 与核函数参数g 的取值对支持向量机的结果精度有着至关重要的作用。

1.2 粒子群算法与遗传算法

粒子群算法源于模拟鸟群捕食行为的过程,对1 个粒子种群而言,所有粒子可根据群体中对环境适应度最佳的个体位置调整自己位置,每个个体在搜索最佳适应度值时均可看作一个D 维空间中没有体积的微粒,通过个体和同伴的飞行经验调整自身飞行速度。第i个微粒表示为xi=(xi1,xi2,…,xid),其经历的最好的适应值记录为Pd=(p1d,p2d,…,pnd),也称为pbest。群体所有经历过的最好位置索引用符号g表示,即Pg,也称为gbest。微粒i速度用Vi=(vi1,vi2,…,viD)表示。对每一代,它的第d+1 维(1≤d+1≤D)根据方程(4)、(5)进行变化。

其中,w为惯性权重(inertia weight),c1、c2为加速常数(acceleration constants),rand()和Rand()为两个在[0,1]范围变化里的随机值。

遗传算法是借鉴生物进化规律演化而来的随机搜索方法,无需导数或其它辅助信息,直接寻求最优适应度。遗传算法的选择、交叉、变异操作可按照概率化方法确定搜索空间和搜索方向,从而确定全局最优个体。

粒子群算法在搜索时容易陷入局部最优从而过早收敛,对处理多峰搜索任务时效果欠佳。遗传算法搜索能力较强,当设置交叉参数较大时可产生足够多的新个体从而增强全局搜索能力,因此本文提出利用遗传算法改进粒子群算法。GAPSO 算法根据待优化参数的个数生成对应维度的粒子并进行模型训练,在达到迭代次数时最佳适应度对应的粒子各维度参数即为寻优的最佳参数。算法流程包含8 个步骤:①确定目标函数。本文目标函数为SVM 的分类结果;②种群初始化。将C、G 初始化值作为粒子个体两个维度;③参数初始化。根据经验确定算法相关参数,包括粒子种群规模、每个维度上下界、迭代次数、交叉和变异概率;④适应度计算。本文以支持向量机的的交叉验证准确率作为适应度;⑤确定最优解。根据最佳适应度大小,分别确定粒子群群体最佳极值与个体极值及遗传算法全局极值并进行比较;最后得到GAPSO 全局极值,判断全局极值是否满足条件或已到达迭代次数,若是则输出全局最优解,否则继续更新迭代;⑥种群更新。更新遗传算法全局极值及粒子群算法全局和个体极值。根据改进的选择方法选择种群,对种群进行交叉和变异操作,产生新的粒子。新粒子更新位置和速度,并按概率进行变异操作;⑦输出全局最优解。得到全局最优的C、G;⑧将输出的结果作为支持向量机的初始参数。

从图1 中可以看出,相比PSO 算法,GAPSO 引入遗传算法思想中的变异和杂交思想,一定程度上拓宽了粒子搜索空间,使粒子能在更大搜索空间搜索。遗传算法改进的粒子群算法按给定的概率参数进行交叉和变异,在保持种群多样性的同时扩大了搜索范围、提高了搜索到最优值的几率,拥有更广泛的搜索能力。

Fig.1 GAPSO algorithm flow图1 GAPSO 算法流程

2 算法验证

为验证算法可行性和可靠性,本文从UCI 数据库中取Wine、Iris、Heart 3 个数据集进行GAPSO-SVM 算法验证与对比,算法平台采用MATLAB2017a 软件,实验环境为Windows10 操作系统,Intel 3.1Ghz 处理器,从Libsvm 软件库选择径向基核函数工具箱。其中Wine 数据集来自意大利葡萄酒含量数据,包含苹果酸、酚类、酮类和色调等13个维度特征,共3 个分类标签;Iris 则是3 种鸢尾花数据集,共150 组数据包含萼片和花瓣长宽四维特征;Heart 数据集主要从易导致心脏病的13 个特征维度区分有无心脏病。3 种数据集划分如表1 所示。

Table 1 Three kinds of data set sample division situation表1 3 种数据集样本划分

其中SVM 参数中惩罚因子C 取值范围[0.1,100],核函数参数g 取值范围为[0.01,1000],在GAPSO-SVM、GASVM 和PSO-SVM 算法中粒子群均为20 组,进化迭代次数为100 次。GAPSO-SVM 和PSO-SVM 学习因子C1和C2分别取1.5 和1.7,弹性系数为1,惯性权重取值[0.1,1.0],GAPSO-SVM 中变异概率pm 取0.05,交叉概率取pc=0.5。利用这3 种分类器对这3 种数据集进行分类。分类结果如表2 所示。

由表2 看出GAPSO-SVM 在较低迭代次数时达到全局最优,在Wine 中虽代次数花费较高,但准确率提高5.3%,在另外两个模型中,本文算法可快速找到全局最优,在相对错误率高的Heart 数据集中以85.56% 的准确率进行分类任务,由此可见,该算法在分类任务中可行可靠。

Table 2 Classification results of the three diagnostic models on the data set表2 3 种诊断模型对数据集的分类结果

3 实验部分

3.1 数据来源与预处理

本文研究数据来自浙江绍兴某轴承厂试验台采集信号,采集用传感器为PCB PIEZOTRONICS,型号48OB,其中采样频率为10 240Hz,采集卡为CBOOK2000 高精度数据采集器。尽可能控制不同故障的外部环境,因此外部因素忽略不计。滚动轴承按正常和不同故障类型分为5 类:正常、保持架故障、滚动体故障、内圈故障、外圈故障。不同故障振动数据样本见图2。

Fig.2 Time-domain waveforms under different faults of rolling bearings图2 滚动轴承不同故障下的时域波形

滚动轴承发生异常时通常会导致振动信号时频域特征参数发生变化[12-14]。本文首先对信号进行小波降噪,然后提取时频域特征,其中7 个时域特征为:有效值、峰峰值、峰值指标、波形指标、脉冲指标、裕度指标、峭度指标[15],如表3 所示。

振动频谱通常在不同运行状态下有很大差别,故通过频谱分析亦可判断滚动轴承故障类型。根据傅里叶技术理论,假设离散化后的振动信号时间序列为x(n),采样频率为fs,采样点数为N,频谱为s(k),k=1,2,…k,k 为谱线数。本文采用6 个频域指标,如表4 所示。

Table 3 Time domain feature samples表3 时域特征样本

Table 4 Frequency domain feature samples表4 频域特征样本

表4 中F1表示振动能量大小;F2反映信号频谱与信号频谱均值的偏离程度;F3反映信号频谱相对均值不对应程度;F4反映了信号在均值处峰值大小;F5反映了信号主频带位置的变化;F6反映了频谱集中或分散程度。将经过小波降噪的振动数据提取时频域后进行归一化到[0,1]之间并喂入SVM 进行训练。

3.2 实验结果分析

本实验特征集共分为时域、频域、时频域特征,各特征集取正常和4 种不同的故障状态数据,各24 组共120 组训练模型。其中设置GAPSOSVM 中参数搜索范围c(0.1,100),g(0.01,1 000),种群规模为20,迭代次数为100,杂交概率为0.5,变异概率取0.05,最佳适应度采用SVM 最大交叉验证正确率,其中GAPSO-SVM 对时频域特征集的适应度曲线如图3 所示。

由图3 可知GAPSO 为SVM 寻优的最佳参数cbest=38.07,gbest=0.18。其中最佳适应度在最初几代时陷入局部最优,但在接近迭代第42 次时跳出局部最优寻找到全局最优,准确率也达到98.75%。分类和预测数据取每种状态8 组数据共40 数据。测试结果如图4 所示。

Fig.3 GAPSO-SVM best fitness curve图3 GAPSO-SVM 最佳适应度曲线

Fig.4 GAPSOSVM test set prediction accuracy图4 GAPSOSVM 测试集预测精度

测试样本按每种故障和正常各取8 组,本文分别采用PSO-SVM、GA-SVM 对相同训练数据集和测试集进行效果对比。结果如表5 所示。时频域集对应的3 种算法适应度如图5 所示。

Table 5 Comparison of classifier efficiencywith different features表5 不同特征下的分类器效率对比

由表5 可看出GAPSO-SVM 明显优于GA-SVM 和PSO-SVM 分类器。在时域和频域单一特征集中,GAPSOSVM 分类精度达到96.26% 和95.00%,而在时频域特征集中,精度高达97.50%,在40 个样本中只有1 个样本分类预测错误。图5 中最佳适应度值的搜索曲线可以看出PSOSVM 在迭代不到10 次时即陷入局部最优,GA-SVM 在迭代接近40 次时,最优值产生变异,跳到适应度较小的值后又找到局部最优,而GAPSO-SVM 则在迭代次数不超过20次时找到全局最优。由此可见结合了遗传思想和粒子群思想的分类器在滚动轴承故障分类中效果较好。在实时工业作业中,故障预测精度提升可在工业生产中减少损失并提高生产效率,而本文分类算法能以较少迭代次数寻找到最优模型,具有可观的工业实际应用价值。

Fig.5 Fitness curves of three optimization algorithms图5 3 种优化算法的适应度曲线

4 结语

本文结合遗传算法和粒子群算法特点,提出GAPSOSVM 算法以实现全局搜索与局部搜索平衡。通过杂交变异部分粒子一定程度上提高了粒子群跳出局部最优的可能性,同时本文算法通过灵活控制杂交和变异概率、扩大粒子个数,可在复杂的分类任务中取得不错的效果。

GAPSO-SVM 利用SVM 自学习、易操作、泛化能力强等特点,在小样本、非线性问题上具有深度学习不可取代的优势,且没有过学习和欠学习的问题,应用场景广泛。

利用提取后的特征集进行分类时,时域或频域分类较时频域集精度较低,通常需结合多个特征集进行模型训练。本文通过时域、频域及时频域3 个数据集进行训练,得出时频域特征集表现最接近真实值。因此如何有效选用最具有代表的特征值进行分类任务是值得探讨的内容。

猜你喜欢

频域适应度全局
大型起重船在规则波中的频域响应分析
改进的自适应复制、交叉和突变遗传算法
Cahn-Hilliard-Brinkman系统的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
落子山东,意在全局
频域稀疏毫米波人体安检成像处理和快速成像稀疏阵列设计
基于空调导风板成型工艺的Kriging模型适应度研究
基于改进Radon-Wigner变换的目标和拖曳式诱饵频域分离
基于频域伸缩的改进DFT算法
新思路:牵一发动全局