基于改进麻雀搜索算法与支持向量机的光纤陀螺故障诊断
2021-07-23肖明清文斌成刘双喜仇晨阳
陈 鑫, 肖明清, 孙 曜, 文斌成, 刘双喜, 仇晨阳
(1.空军工程大学航空工程学院, 西安, 710038; 2.94701部队, 安徽安庆, 246003)
光纤陀螺因其可靠性高、寿命长、精度覆盖面宽和结构设计灵活等优点而被广泛运用于航空航天和军事装备领域[1]。作为导航系统的核心部件,其工作状态直接影响着整个导航系统的性能。在复杂的环境下,光纤陀螺不可能完全避免故障的产生,一旦发生故障,就可能导致巨大的损失。因此,研究光纤陀螺的故障状态监测诊断技术,对提高惯性导航设备的性能有着重要的意义[2]。
目前,针对光纤陀螺的故障诊断已有大量研究。文献[3]基于小波信息熵和反向神经网络提出一种光纤陀螺故障诊断方法,通过实验证明了该方法能够减少光纤陀螺信号噪声,有效识别故障状态;文献[4]运用粒子群算法优化径向基神经网络进行光纤陀螺故障诊断,有效提高了径向神经网络的故障识别能力,实现了对光纤陀螺故障的准确诊断;文献[5]利用卷积神经网络和深度前馈神经网络进行光纤陀螺故障诊断,同单纯的基于深度前馈神经网络的光纤陀螺故障诊断算法相比,具有更高的准确率和更强的泛化能力。但是神经网络存在样本需求量大、训练结果不稳定、易陷入局部最优等问题。
支持向量机(SVM)因其在解决非线性和高维数问题上的优势而被广泛应用于故障诊断领域,与神经网络相比,支持向量机的鲁棒性和泛化能力更强,需求样本更小,且更易趋于全局最优[6]。然而,利用交叉验证寻优的支持向量机对光纤陀螺进行故障诊断,分类准确率较低,容易造成故障误判。为提高支持向量机的分类性能,已有多种智能算法用于优化支持向量机故障诊断模型,如遗传算法(GA)[7]、粒子群算法(PSO)[8]、天牛须算法(BAS)[9]、灰狼优化算法(GWO)[10]等。麻雀搜索算法(SSA)是XUE J K 2020年提出的新型群智能算法,与灰狼优化算法、粒子群算法等算法相比,麻雀搜索算法在收敛速度、稳定性和求解精度上有更大的优势和竞争力[11]。但在接近全局最优解时,麻雀种群多样性减少,易出现“早熟”现象,而使算法陷入局部最优。
针对光纤陀螺信号故障特征难提取及支持向量机在光纤陀螺故障诊断中精度不足的问题,本文提出一种基于改进麻雀搜索算法(ISSA)优化支持向量机的光纤陀螺故障诊断方法。首先,对光纤陀螺正常信号和故障信号进行3层小波包分解以提取特征;其次,通过引入改进Logistic映射和自适应t分布策略,并加入边界探索和警戒解除机制改进麻雀搜索算法;最后,运用改进麻雀搜索算法进行支持向量参数寻优,建立优化的支持向量机模型进行光纤陀螺不同故障的识别和诊断。
1 理论基础
1.1 小波包分析
小波包分析能够为信号提供一种精细的分析方法,它将频带进行多层次划分,对多分辨分析没有细分的高频部分进一步分解,并能够根据被分析信号的特征,自适应的选择相应频带,使之与信号频谱相匹配,从而提高了时频分辨率[12]。
具体的小波包分解过程如图1所示(A表示低频,D表示高频)。
图1 3层小波包变换树
1.2 麻雀搜索算法
麻雀搜索算法是根据麻雀觅食并逃避捕食者的行为而提出的群智能优化算法。搜索过程可抽象为发现者-加入者-警戒者模型。发现者拥有更广阔的搜索范围,负责引导种群觅食,加入者跟随发现者觅食,警戒者负责侦查预警,一旦发现威胁,便放弃当前食物而移动到新的位置。
SSA中发现者、加入者和警戒者更新位置的数学模型依次如下:
(1)
式中:t表示当前迭代次数;imax表示最大迭代次数;Xi表示麻雀当前的位置信息;α∈(0,1]是一个随机数;R2∈[0,1]表示预警值;S∈[0.5,1]表示安全值;Q是服从正态分布的随机数;L表示一个一行多维的全一矩阵。
(2)
式中:Xb是目前发现者的最优位置;Xw则表示全局最差位置;A表示一个一行多维矩阵,其中每个元素随机赋值为1或-1,并且A+=AT(AAT)-1。
(3)
式中:XB是当前全局最优位置;β为步长参数,是服从均值为0,方差为1的正态分布随机数;u∈[-1,1]是一个随机数;fi代表当前麻雀的适应度值;fB和fw分别是当前全局最佳和最差适应度值;σ是一个避免分母为0的极小常数。
算法流程见图2。
图2 麻雀搜索算法流程图
1.3 改进麻雀搜索算法
针对SSA在求解工程优化问题时,容易陷入“早熟”而导致收敛精度低,且易陷入局部收敛的特点,提出一种改进麻雀搜索算法。针对算法初值对算法影响大的问题,利用改进Logistic映射进行种群初始化,增加初始种群的均匀性;引入边界探索机制和警戒解除机制,增强算法的边界寻优能力,减少算法的运算时间;针对算法末期易陷入停滞问题,使用自适应t分布增强麻雀种群的多样性,提高算法的寻优能力。
1.3.1 改进Logistic映射
混沌现象具有非周期、有界但不收敛以及对初始条件极为敏感等特征[13],被很多学者应用于优化搜索问题,不仅能有效保持种群的多样性,而且有利于避免算法陷入局部最优,改善全局搜索能力[14]。
Logistic映射是目前应用最广泛的一类混沌映射系统,具有随机性、遍历性的特点,能够有效保持种群的多样性,改善算法的搜索能力,其定义为:
xi+1=axi(1-xi)
(4)
式中:初始值x0∈(0,1),a∈(0,4],当a∈(3.569 99,…,4]时,系统处于混沌状态,当a=4时,Logistic映射处于满映射状态。Logistic映射分岔图如图3。
图3 Logistic映射分岔图
满映射状态混沌映射的定义域与值域相同,映射生成的序列具有更强的遍历性,因此,扩大满映射的参数范围能够产生性能更好的初始值。Logistic只有当a=4才能达到满映射状态,这就导致了在很大的参数范围内,数据可能相对集中,不利于算法初值随机性的要求。针对这一问题,引入一种二次多项式混沌映射,具体定义如下:
(5)
改进后的映射分岔图见图4。由图4可以看出,改进后的Logistic混沌映射在a∈(1.53,2]范围内,能够很大程度达到满映射状态。
图4 改进Logistic映射分岔图
1.3.2 边界探索和警戒解除机制
在SSA中,由于麻雀行为的随机性,麻雀个体很容易越过边界,导致算法进入边界计算,而缺少了对边界区域的探索,可能导致算法陷入局部最优。SSA的边界计算公式为:
(6)
式中:ub表示边界的上限值;lb表示边界的下线值。
针对这个问题,引入一个随机算子,以增强算法的边界搜索能力,从而提高算法的寻优能力,具体公式为:
(7)
式中:m是根据边界大小定义的倍数因子;q∈(0,1]是一个随机数。
警戒者的存在能够增强算法的全局搜索能力,但其在迭代过程中数量保持不变,会导致算法后期收敛速度变慢[15]。因此,在算法运算过程中自适应的改变警戒者的数量,既有利于算法初期的全局搜索,又有利于算法后期的数值收敛,故引入警戒解除机制,使警戒者的数量进行自适应的降低,但为防止种群被破坏,应始终保持数量比例为p的警戒者进行侦查预警,具体数学模型为:
(8)
式中:SD为警戒者比例。
1.3.3 自适应t分布策略
t分布又称学生分布,含有参数自由度n,当t(n→∞)→N(0,1),当t(n=1)=C(0,1),其中N(0,1)为高斯分布,C(0,1)为柯西分布,即标准的高斯分布和柯西分布是t分布的2个边界特例[16],3种函数分布图见图5。
图5 3类分布曲线图
t分布能够充分利用当前种群信息,以迭代次数t作为自由度参数,前期t较小类似柯西变异具有较强的全局搜索能力,后期t较大类似高斯变异具有较强的局部搜索能力,从而提高算法的寻优能力,具体数学模型如下:
Xnew=Xi+Xit(i)
(9)
式(9)在Xi的基础上增加了t分布型随机干扰项,充分利用当前种群的信息干扰,因此,自适应t分布能使麻雀种群跳出局部极值点的束缚,收敛于全局极值点,同时也提高了收敛速度。定义t分布变异概率v,当满足α ISSA具体流程图见图6。 图6 ISSA流程图 支持向量机于1995年由Cortes和Vapnik正式发表[17]。它最初是针对二分类问题设计的,该模型的求解需要使用凸优化的方法。 图7为SVM分类示意图。图中H是分类面,H1和H2为平行于H的面。 图7 SVM分类示意图 基于改进麻雀搜索算法优化支持向量机故障诊断模型见图8,模型分为信号输出、数据提取和优化诊断3个部分,具体实现过程如下。 图8 ISSA-SVM原理图 1)建立光纤陀螺信号模型,进行仿真设计。对光纤陀螺的正常状态和故障信号进行小波包分解,并提取子带能量作为特征向量,划分SVM的训练集和测试集。 2)预先设置好改进麻雀搜索算法的参数,将SVM的惩罚参数c和核参数g的取值范围作为麻雀的活动范围,利用改进Logistic混沌映射生成麻雀初始种群。 3)利用改进麻雀搜索算法进行参数寻优,以SVM故障诊断准确率为适应度函数进行迭代计算,将得到的最优参数组合(c,g)导入到SVM模型中,进行光纤陀螺的故障识别和故障诊断。 对于光纤陀螺漂移模型,可以描述为: ε(t)=ε0+Asin (2πft+θ0)+σn(t)+ω(t) (10) 式中:ε(t)为光纤陀螺总漂移;ε0为光纤陀螺的常值漂移;A为周期分量的幅值;σn(t)为强度为σ的白噪声;ω(t)为有色噪声。 有色噪声ω(t)产生方式为: (11) 光纤陀螺的故障信号一般包括以下几类: 1)偏置故障 (12) 式中:k为偏置常值。 2)完全阻塞故障 (13) 3)漂移故障 (14) 式中:L为漂移速率。 4)周期干扰故障 (15) 式中:square为方波信号。 5)乘性故障 (16) 式中:k为比例系数。 对光纤陀螺的正常信号和故障信号进行3层小波包分解,小波函数采用db4,该函数在满足基本要求的同时能够达到较好的分解效果。图9为光纤陀螺正常信号和故障信号经小波包分解和归一化处理后的能量分布直方图。 图9 光纤陀螺各状态能量直方图 部分能量特征数据如表1所示。 表1 部分能量特征向量 SVM核函数的作用是对特征进行从低维到高维的转换,实验使用径向基作为核函数,具有较高的灵活性。遵循公平原则,设定各算法的最大迭代次数为100,种群规模设置为100。设定SVM的交叉验证系数为5,惩罚系数和核函数参数的寻优范围为(0,100]。实验的6种故障诊断模型参数设置见表2。 表2 模型参数取值 用标签{0,1,2,3,4,5}依次表示光纤陀螺的正常状态、偏置故障、周期干扰故障、漂移故障、完全阻塞故障和乘性故障。每种状态分别取35、30和25个样本为训练集,15、20和25个样本为测试集,设置3组实验。 为进一步说明SVM的优势,分别以SVM、反向神经网络(BPNN)和径向基神经网络(RBFNN)为分类器,进行对比实验,训练集为210个样本,测试集为90个样本,具体的诊断准确率见图10。 图10 3种分类器诊断结果 从图10可知,相比于BPNN和RBFNN,SVM能够更精确的识别光纤陀螺的状态,其故障诊断准确率达到了90%,远高于BPNN和RBFNN,诊断效果更好。而BPNN和RBFNN由于缺少样本进行训练,出现了欠学习情况。所以,在小样本条件下,SVM的分类精度更高,能够有效实现光纤陀螺故障诊断。 为验证本文所提算法的优越性,选择ISSA-SVM、SSA-SVM、GWO-SVM、BAS-SVM、PSO-SVM和GA-SVM故障诊断模型进行对比实验。图11为3组实验的模型预测收敛曲线对比。 图11 模型预测收敛曲线 3组实验诊断结果对比直方图见图12。 图12 诊断结果对比 SVM模型的平均诊断准确率和平均收敛迭代次数见表3。 表3 平均诊断准确率和平均迭代次数 由图11可知,ISSA模型拥有更快的收敛速度。在第1组实验中,ISSA模型达到收敛的迭代次数为8次,较SSA模型、GWO模型、PSO模型、GA模型和BAS模型分别加快了15次、16次、50次、69次和25次。在第2组实验中,ISSA模型达到收敛的迭代次数为4次,较SSA模型、GWO模型、PSO模型、GA模型和BAS模型分别加快了30次、19次、14次、32次和53次。在第3组实验中,ISSA模型达到收敛的迭代次数为9次,较SSA模型、GWO模型、PSO模型、GA模型和BAS模型分别加快了19次、26次、30次、78次和26次。ISSA模型与其他模型相比,能够迅速达到收敛,寻优效率更高。 从图12可知,ISSA模型拥有更高的诊断精度。在第1组实验中,ISSA-SVM相较于SSA-SVM、GWO-SVM、PSO-SVM、GA-SVM和BAS-SVM,ISSA-SVM的诊断准确率分别提升了约1.1%、1.1%、3.3%、3.3%和5.6%。在第2组实验中,ISSA-SVM相较于SSA-SVM、GWO-SVM、PSO-SVM、GA-SVM和BAS-SVM,ISSA-SVM的诊断准确率分别提升了约3.3%、3.3%、5%、5.8%和6.7%。在第3组实验中,ISSA-SVM相较于SSA-SVM、GWO-SVM、PSO-SVM、GA-SVM和BAS-SVM,ISSA-SVM的诊断准确率分别提升了约3.4%、3.4%、4%、4%和6%。实验结果表明,ISSA有效提升了麻雀搜索算法的全局寻优能力,从而提高了SVM的诊断准确率。 1)采用小波包分解可以提取故障信号的全部特征,对故障诊断信息提取更加全面,不会遗漏高频信号。 2)将Logistic映射和自适应t分布引入麻雀搜索算法中,并提出边界探索和警戒解除机制,结合而成的ISSA具有更强的寻优能力和更快的收敛速度。 3)本文所提出的ISSA-SVM模型,相较于SSA-SVM模型,诊断准确率提升了约2.6%,相较于GWO-SVM模型,诊断准确率提升了约2.6%,相较于PSO-SVM模型,诊断准确率提升了近4.1%,相较于GA-SVM模型,诊断准确率提升了近4.4%。,相较于BAS-SVM模型,其准确率提升了近6.1%。ISSA-SVM模型为光纤陀螺故障诊断提供了一种新思路,能够有效诊断出光纤陀螺的故障类型。1.4 支持向量机
2 ISSA-SVM故障诊断模型
2.1 光纤陀螺信号输出
2.2 参数设置
3 结果与分析
4 结论