一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

量子差分进化算法优化SVM的滚动轴承故障诊断方法与流程

2021-12-18 01:59:00 来源:中国专利 TAG:

量子差分进化算法优化svm的滚动轴承故障诊断方法
技术领域
1.本发明属于智能故障诊断技术领域,涉及量子差分进化算法优化支持向量机(svm)的滚动轴承故障诊断方法。


背景技术:

2.随着计算机性能的飞速发展,有越来越多的学者将机器学习中的各种算法应用在滚动轴承的故障诊断中。支持向量机作为机器学习中最为经典的算法之一,在故障诊断领域也有广泛的应用。支持向量机通过训练数据计算出超平面,再使用此超平面来划分数据的类别,从而实现故障诊断。超平面的设置不仅与训练数据相关,还与两个参数c和γ的取值相关,若这两个参数设置的不合适,将会极大的影响支持向量机的诊断精度。因此,使用优化算法对这两个参数进行自适应地调整有相当的必要性。但优化算法也有其局限性,如容易陷入局部最优、鲁棒性不高等问题。特别是在当今的大数据背景下,传统优化算法还需要面对一个不可回避的问题,即优化迭代时间过长,这将会极大的影响故障诊断的效率。


技术实现要素:

3.为解决现有技术中存在的问题,本发明提供一种量子差分进化算法优化支持向量机(svm)的滚动轴承故障诊断方法;
4.为达到上述目的,本发明采用的方案如下:
5.量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,将由振动传感器采集到的待故障诊断的滚动轴承的输入特征矩阵p输入到故障诊断模型中,得到一维列向量q;一维列向量q中的1代表内圈故障,2代表滚动体故障,3代表外圈6点钟方向故障,4代表外圈3点钟方向故障,5代表外圈12点钟方向故障,6代表正常;
6.故障诊断模型的构建过程为:将振动传感器采集的数据作为训练集对初始状态的支持向量机模型进行训练,通过不断的迭代寻找到精度最高的惩罚因子c和核函数参数γ的取值,得到所述故障诊断模型;
7.所述迭代的过程中,采用量子差分进化算法对支持向量机模型的惩罚因子c和核函数参数γ进行优化;所述量子差分进化算法是将差分进化算法与量子理论结合得到,具体为:首先,以量子比特的编码方式取代差分进化算法中的实数编码方式,每一个实数值使用m个量子比特来表示;然后,采用改进的量子旋转门来更新量子比特中的量子角度,取代现有的差分进化算法中的变异和交叉策略;
8.改进的量子旋转门更新后的量子角度与改进的量子旋转门的数学公式为:
[0009][0010]
其中,θ
*
代表改进的量子旋转门更新后的量子角度,θ代表改进的量子旋转门更新前的量子角度,δ代表改进的量子旋转门旋转的角度,rand(0,1)为随机生成的0到1范围内的随机数,g代表量子差分进化算法的最大迭代次数,g代表当前迭代次数。
[0011]
所述改进的量子旋转门的示意图如图2所示。
[0012]
量子比特不同于经典比特。经典比特只能为1或者0,而量子比特在被观测之前,处于叠加态之中。处于叠加态的量子比特既是1也是0,即n个量子比特等于2
n
个经典比特。利用量子比特的特性可以实现运算的加速,提高算法的效率。
[0013]
差分进化算法是基于种群的优化算法,种群的多样性极大的影响着差分进化算法的性能。理想的情况是:在差分进化算法迭代进化的前期,尽可能的拓展种群的多样性,在差分进化算法迭代进化的后期,尽可能的提高种群的收敛速度,量子差分进化算法同样也是如此。
[0014]
现有的量子旋转门旋转的方向只有一个,不能根据迭代进化的次数自适应的调整旋转的方向。而本发明提出的改进的量子旋转门,可以在差分进化算法迭代进化的前期,更容易控制量子角度往π/4的方向旋转,对量子比特进行观测之后,量子比特坍塌向|0>的概率与坍塌向|1>的概率会尽可能的均等,保证了种群在前期的多样性,从而增加了量子差分进化算法搜索到最优解的可能性。在差分进化算法迭代进化的后期,更容易控制量子角度往0度或π/2的方向旋转,对量子比特进行观测之后,量子比特坍塌向|0>的概率或坍塌向|1>的概率会提高,保证了种群在后期的收敛性。因此,量子差分进化算法比传统差分进化算法拥有更丰富的种群多样性和更快的收敛速度,从而取得更高的故障诊断精度。
[0015]
同时,由于量子具有并行性,在相同的迭代次数下,量子差分进化算法花费的时间比传统差分进化算法花费的时间要更短。因此,使用量子差分进化算法优化的支持向量机模型对滚动轴承进行故障诊断,能够取得更高的诊断精度和更快的诊断速度,从而提高模型故障诊断的可靠性以及工程实用性。
[0016]
作为优选的技术方案:
[0017]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,故障诊断模型的构建的具体步骤为:
[0018]
(1)使用振动传感器采集滚动轴承内圈故障数据、滚动轴承滚动体故障数据、滚动轴承外圈6点钟方向故障数据、滚动轴承外圈3点钟方向故障数据、滚动轴承外圈12点钟方向故障数据和滚动轴承正常状态运行数据;(采集的数据为振幅数据,振幅数据在数值上等于位移的大小,单位是厘米或毫米等长度单位,为标量)并划分训练集和测试集;
[0019]
(2)构建量子差分进化算法优化支持向量机模型的初始状态的故障诊断模型,初
始状态的故障诊断模型中,设置量子差分进化算法的初始种群内个体向量的个数为n,个体向量由支持向量机的两个参数,惩罚因子c和核函数参数γ组成,每一个c和γ都由m个量子比特所构成,量子比特中的量子角度为随机生成的(0,π/2)区间内的任意一个角度值;
[0020]
(3)并以训练集的数据对初始状态的故障诊断模型进行训练,以最大迭代次数g为终止条件进行迭代,通过不断的优化,寻找到精度最高的惩罚因子c和核函数参数γ的取值,得到所述故障诊断模型,记为:
[0021][0022]
是关于量子差分进化算法迭代进化g次之后得到的对于支持向量机而言最优的参数组合z
g
、输入特征矩阵为p和基于p
train
和q
train
建立的支持向量机滚动轴承故障诊断模型,其中,q为故障诊断模型的输出,p
train
为滚动轴承故障诊断模型的训练特征矩阵,p为待故障诊断的滚动轴承的输入特征矩阵,q
train
为滚动轴承故障诊断模型的训练一维列向量;z
g
为量子差分进化算法迭代g次之后得到的对于支持向量机模型来说最优的个体向量;
[0023][0024]
其中,w1为采集的滚动轴承内圈故障数据,w2为采集的滚动轴承滚动体故障数据,w3为采集的滚动轴承外圈6点钟方向故障数据,w4为采集的滚动轴承外圈3点钟方向故障数据,w5为采集的滚动轴承外圈12点钟方向故障数据,w6为采集的滚动轴承正常状态运行数据;
[0025][0026]
其中,s1为w1的标签向量,s2为w2的标签向量、s3为w3的标签向量、s4为w4的标签向量、s5为w5的标签向量、s6为w6的标签向量;s1、s2、s3、s4、s5、s6为:
[0027][0028]
其中,1为滚动轴承出现内圈故障的标签,2为滚动轴承出现滚动体故障的标签,3
为滚动轴承出现外圈6点钟方向故障的标签,4为滚动轴承出现外圈3点钟方向故障的标签,5为滚动轴承出现外圈12点钟方向故障的标签,6为滚动轴承正常运行的标签。
[0029]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,所述量子差分进化算法包括使用量子比特对种群进行编码、使用改进的量子旋转门更新量子角度以及对量子比特进行观测。
[0030]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,步骤(3)中,50≤g≤100。
[0031]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,步骤(3)中,所述优化的具体步骤为:
[0032]
(a)生成初始种群;支持向量机模型的惩罚因子c和核函数参数γ作为种群内的个体向量,且使用m个量子比特来表示c与γ的值;
[0033]
(b)使用量子比特对初始种群进行编码,编码方式为:
[0034][0035]
sin2θ
1,i,c
cos2θ
1,i,c
=1;
[0036]
sin2θ
m,i,c
cos2θ
m,i,c
=1;
[0037]
sin2θ
1,i,γ
cos2θ
1,i,γ
=1;
[0038]
sin2θ
m,i,γ
cos2θ
m,i,γ
=1;
[0039]
其中,z
i,g
为量子差分进化算法在第g代种群中的第i个个体向量;g代表当前迭代次数,g∈(1,g);i∈(1,n),n代表种群内个体向量的数目;
[0040]
c
i,g
为第g代种群中第i个个体向量中惩罚因子的值;
[0041]
γ
i,g
为第g代种群中第i个个体向量中核函数参数的值;
[0042]
sinθ
1,i,c
为第i个个体向量中惩罚因子c的第1个量子比特|0>上的概率幅值,cosθ
1,i,c
为第i个个体向量中惩罚因子c的第1个量子比特|1>上的概率幅值;
[0043]
sinθ
m,i,c
为第i个个体向量中惩罚因子c的第m个量子比特|0>上的概率幅值,cosθ
m,i,c
第i个个体向量中惩罚因子c的第m个量子比特|1>上的概率幅值;
[0044]
sinθ
1,i,γ
为第i个个体向量中核函数参数γ的第1个量子比特|0>上的概率幅值,cosθ
1,i,γ
为第i个个体向量中核函数参数γ的第1个量子比特|1>上的概率幅值;
[0045]
sinθ
m,i,γ
为第i个个体向量中核函数参数γ的第m个量子比特|0>上的概率幅值,cosθ
m,i,γ
为第i个个体向量中核函数参数γ的第m个量子比特|1>上的概率幅值;
[0046]
(c)使用改进的量子旋转门更新量子角度;
[0047]
(d)每一次迭代之后都对每个量子比特进行观测;所述对每个量子比特进行观测是指:若sin2θ>rand(0,1),则此量子比特坍塌为经典比特1;若sin2θ≤rand(0,1),则此量子比特坍塌为经典比特0;其中,sinθ代表量子比特|0>上的概率幅值;
[0048]
(e)将观测得到的经典二进制比特转化为十进制数并映射至一定的区间范围内,从而得到n组c和γ的取值。
[0049]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,步骤(e)中所述映射的公式如下:
[0050][0051]
其中,代表映射之后的十进制数;代表映射之前的十进制数。
[0052]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,所述精度最高的惩罚因子c和核函数参数γ的取值在进化迭代次数达到g次时,以测试集的数据从最后一代种群中的n组c和γ的取值中选出对支持向量机而言精度最高的个体向量,即为c和γ的最优值,记为:
[0053][0054]
其中,c为支持向量机中的惩罚因子,γ为支持向量机中的核函数参数,g为量子差分进化算法的最大迭代次数,c
g,best
、γ
g,best
分别为量子差分进化算法迭代g次之后,从第g代种群中选出的对于支持向量机来说精度最高的参数。
[0055]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,m=8。
[0056]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,n=30。
[0057]
如上所述的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,θ∈(0,π/2),δ=0.01π。
[0058]
本发明的原理是:
[0059]
本发明主要由两个算法组成,故障诊断的基础模型为支持向量机,优化算法为量子差分进化算法,并使用此量子差分进化算法优化支持向量机中的两个参数,分别是惩罚因子c和核函数参数γ。由于现有的传统差分进化算法在精度和时间等方面存在一定的局限性,从而影响整个故障诊断模型的性能。因此,本发明将量子理论与差分进化算法相结合,并提出一种改进的量子旋转门,再使用此量子旋转门来更新量子角度。本发明提出的改进的量子旋转门可以控制量子角度在差分进化算法迭代进化的前期更容易往π/4的方向旋转,保证量子差分进化算法在前期的种群多样性,也可以控制量子角度在差分进化算法迭代进化的后期更容易往0度或π/2的方向旋转,保证量子差分进化算法在后期的收敛速度。同时,此量子旋转门也可以根据算法的不同阶段自适应的调整旋转方向,从而有效的提高算法的鲁棒性。
[0060]
在每一次的迭代进化过程中,都使用此改进的量子旋转门更新种群内所有的量子角度,更新之后的量子角度作为下一代种群,再次使用此改进的量子旋转门更新量子角度,如此反复迭代。同时,在每一次迭代之后,都会对所有的量子比特进行一次观测。将观测之后得到的二进制数转化为十进制数,并映射至提前设置好的区间内,从而得到支持向量机中惩罚因子c和核函数参数γ的取值。最后,经过g次的迭代进化之后,得到最优的惩罚因子c和核函数参数γ的取值,从而完成量子差分进化算法优化支持向量机的滚动轴承故障诊断模型的训练。训练完成的模型便可以实现故障诊断的功能。
[0061]
有益效果
[0062]
(1)本发明提出一种量子差分进化算法优化支持向量机的滚动轴承故障诊断模型,相比现有的传统差分进化算法,量子差分进化算法在训练模型时花费的时间要更少,使得本发明提出的模型拥有更高的故障诊断效率;
[0063]
(2)本发明提出一种改进的量子旋转门来更新量子角度,从而在量子差分进化算法迭代进化的前期增加种群多样性,在量子差分进化算法迭代进化的后期提高收敛速度,最终使得本发明提出的故障诊断模型拥有更高的故障诊断精度。
附图说明
[0064]
图1为本发明量子差分进化算法的流程图;
[0065]
图2为改进的量子旋转门的示意图。
具体实施方式
[0066]
下面结合具体实施方式,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所附权利要求书所限定的范围。
[0067]
量子差分进化算法优化支持向量机的滚动轴承故障诊断方法,如图1所示,包括如下过程:
[0068]
构建故障诊断模型:
[0069]
(1)使用振动传感器采集滚动轴承内圈故障数据、滚动轴承滚动体故障数据、滚动轴承外圈6点钟方向故障数据、滚动轴承外圈3点钟方向故障数据、滚动轴承外圈12点钟方向故障数据和滚动轴承正常状态运行数据;并划分训练集和测试集;
[0070]
(2)构建量子差分进化算法优化支持向量机模型的初始状态的故障诊断模型;其中,所述量子差分进化算法是将差分进化算法与量子理论结合得到,具体为:首先,以量子比特的编码方式取代差分进化算法中的实数编码方式,每一个实数值使用m个量子比特来表示(m=8);然后,采用改进的量子旋转门来更新量子比特中的量子角度取代差分进化算法中的变异和交叉策略;其中,初始状态的故障诊断模型中,设置量子差分进化算法的初始种群内个体向量的个数为n,个体向量由支持向量机的两个参数,惩罚因子c和核函数参数γ组成,每一个c和γ都由m个量子比特所构成,量子比特中的量子角度为随机生成的(0,π/2)区间内的任意一个角度值;
[0071]
(3)以训练集的数据对初始状态的故障诊断模型进行训练,以最大迭代次数g(50≤g≤100)(一般取值为50)为终止条件进行迭代,通过不断的优化,得到n组c和γ的取值;其中,迭代的过程中,采用量子差分进化算法对支持向量机模型的惩罚因子c和核函数参数γ进行优化,优化的具体步骤为:
[0072]
(a)生成初始种群;支持向量机模型的惩罚因子c和核函数参数γ作为种群内的个体向量,且使用m个量子比特来表示c与γ的值;
[0073]
(b)使用量子比特对初始种群进行编码,编码方式为:
[0074][0075]
sin2θ
1,i,c
cos2θ
1,i,c
=1;
[0076]
sin2θ
m,i,c
cos2θ
m,i,c
=1;
[0077]
sin2θ
1,i,γ
cos2θ
1,i,γ
=1;
[0078]
sin2θ
m,i,γ
cos2θ
m,i,γ
=1;
[0079]
其中,z
i,g
为量子差分进化算法在第g代种群中的第i个个体向量;g代表当前迭代次数,g∈(1,g);i∈(1,n),n代表种群内个体向量的数目;
[0080]
c
i,g
为第g代种群中第i个个体向量中惩罚因子的值;
[0081]
γ
i,g
为第g代种群中第i个个体向量中核函数参数的值;
[0082]
sinθ
1,i,c
为第i个个体向量中惩罚因子c的第1个量子比特|0>上的概率幅值,cosθ
1,i,c
为第i个个体向量中惩罚因子c的第1个量子比特|1>上的概率幅值;
[0083]
sinθ
m,i,c
为第i个个体向量中惩罚因子c的第m个量子比特|0>上的概率幅值,cosθ
m,i,c
第i个个体向量中惩罚因子c的第m个量子比特|1>上的概率幅值;
[0084]
sinθ
1,i,γ
为第i个个体向量中核函数参数γ的第1个量子比特|0>上的概率幅值,cosθ
1,i,γ
为第i个个体向量中核函数参数γ的第1个量子比特|1>上的概率幅值;
[0085]
sinθ
m,i,γ
为第i个个体向量中核函数参数γ的第m个量子比特|0>上的概率幅值,cosθ
m,i,γ
为第i个个体向量中核函数参数γ的第m个量子比特|1>上的概率幅值;
[0086]
(c)使用改进的量子旋转门更新量子角度;
[0087]
改进的量子旋转门更新后的量子角度与改进的量子旋转门的数学公式为:
[0088][0089]
其中,θ
*
代表改进的量子旋转门更新后的量子角度,θ代表改进的量子旋转门更新前的量子角度,θ∈(0,π/2);δ代表改进的量子旋转门旋转的角度,δ=0.01π,rand(0,1)为随机生成的0到1范围内的随机数,g代表量子差分进化算法的最大迭代次数,g代表当前迭代次数。
[0090]
(d)每一次迭代之后都对每个量子比特进行观测;所述对每个量子比特进行观测是指:若sin2θ>rand(0,1),则此量子比特坍塌为经典比特1;若sin2θ≤rand(0,1),则此量子比特坍塌为经典比特0;其中,sinθ代表量子比特|0>上的概率幅值;
[0091]
(e)将观测得到的经典二进制比特转化为十进制数并映射至一定的区间范围内,从而得到n组c和γ的取值;所述映射的公式如下:
[0092][0093]
其中,代表映射之后的十进制数;代表映射之前的十进制数。
[0094]
(4)寻找到精度最高的惩罚因子c和核函数参数γ的取值:在进化迭代次数达到g次时,以测试集的数据从最后一代种群中的n组(n=30)c和γ的取值中选出对支持向量机而言精度最高的个体向量,即为c和γ的最优值,记为:
[0095][0096]
其中,c为支持向量机中的惩罚因子,γ为支持向量机中的核函数参数,g为量子差分进化算法的最大迭代次数,c
g,best
、γ
g,best
分别为量子差分进化算法迭代g次之后,从第g代种群中选出的对于支持向量机来说精度最高的参数;
[0097]
以c和γ的最优值得到所述故障诊断模型,记为:
[0098][0099]
其中,q为故障诊断模型的输出,p
train
为滚动轴承故障诊断模型的训练特征矩阵,p为待故障诊断的滚动轴承的输入特征矩阵,q
train
为滚动轴承故障诊断模型的训练一维列向量;z
g
为量子差分进化算法迭代g次之后得到的对于支持向量机模型来说最优的个体向量;
[0100][0101]
其中,w1为采集的滚动轴承内圈故障数据,w2为采集的滚动轴承滚动体故障数据,w3为采集的滚动轴承外圈6点钟方向故障数据,w4为采集的滚动轴承外圈3点钟方向故障数据,w5为采集的滚动轴承外圈12点钟方向故障数据,w6为采集的滚动轴承正常状态运行数据;
[0102][0103]
其中,s1为w1的标签向量,s2为w2的标签向量、s3为w3的标签向量、s4为w4的标签向量、s5为w5的标签向量、s6为w6的标签向量;s1、s2、s3、s4、s5、s6为:
[0104][0105]
其中,1为滚动轴承出现内圈故障的标签,2为滚动轴承出现滚动体故障的标签,3为滚动轴承出现外圈6点钟方向故障的标签,4为滚动轴承出现外圈3点钟方向故障的标签,5为滚动轴承出现外圈12点钟方向故障的标签,6为滚动轴承正常运行的标签。
[0106]
依此模型进行故障诊断:
[0107]
将由振动传感器采集到的待故障诊断的滚动轴承的输入特征矩阵p输入到故障诊断模型中,得到一维列向量q;q中出现1代表内圈故障,出现2代表滚动体故障,出现3代表外圈6点钟方向故障,出现4代表外圈3点钟方向故障,出现5代表外圈12点钟方向故障,出现6代表正常。
[0108]
以凯斯西储大学滚动轴承数据中心的数据集为例。凯斯西储大学滚动轴承试验平台由一个1.5kw的电动机、一个扭矩传感器、一个功率测试计和电子控制器所组成。待测的轴承有两个,其中一个轴承位于驱动端,型号为skf6025,采样频率为12khz和48khz;另一个轴承位于风扇端,型号为skf6023,采样频率为12khz。轴承的损伤是由电火花加工而来的单点损伤,损伤的直径有0.1778mm、0.3556mm等,损伤直径越大代表故障越严重。故障类型有三种,分别是轴承内圈、外圈和滚动体故障,其中外圈故障又分为6点钟方向、3点钟方向和12点钟方向的故障。本发明以12khz采样频率下驱动端轴承的运行数据为例,数据的描述如表1所示:
[0109]
表1
[0110]
故障类型标签内圈1滚动体2外圈(6:00)3外圈(3:00)4外圈(12:00)5正常6
[0111]
为了更好的表明本发明所提出的量子差分进化算法优化支持向量机的滚动轴承故障诊断方法的优越性,本发明设置两组对比方法,一种为现有的传统差分进化算法优化支持向量机的滚动轴承故障诊断方法,另外一种为未经优化的支持向量机的滚动轴承故障诊断方法。
[0112]
将凯斯西储大学滚动轴承数据集的百分之七十用作训练数据,即为p
train
,并根据表1制作出q
train
,剩余的百分之三十的数据作为测试数据。再使用上述量子差分进化算法优化的支持向量机模型(模型1)、现有的传统差分进化算法优化支持向量机模型(模型2)和未经优化的支持向量机模型(模型3)进行故障诊断,故障诊断的精度和花费的时间如表2所示:
[0113]
表2
[0114]
故障诊断模型故障诊断精度模型训练时间模型1100%5.65秒模型298.87%21.77秒模型397.19%0.09秒
[0115]
从表2中可知,本发明提出的故障诊断模型取得的精度是最高的,同时训练所花费的时间相比现有的传统差分进化算法优化支持向量机模型有显著的降低。未经优化的支持向量机模型时间虽然花费的很短,但故障诊断精度是最低的,工程实用性不高。
[0116]
为了进一步验证模型的鲁棒性,本发明再使用机器学习算法中的标准数据集uci dataset作为验证数据集进行验证。使用的uci dataset数据集的介绍如表3所示
[0117]
表3
[0118]
数据名称样本个数特征个数标签个数iris15043pima76882glass214136blood74842
[0119]
将iris、pima、glass和blood四个数据集分别使用上述三种模型进行分类,每一个数据集的百分之七十作为训练数据,百分之三十作为训练数据,分类精度和花费的时间如表4所示:
[0120]
表4
[0121][0122]
从表4中可以看出,本发明提出的量子差分进化算法优化支持向量机的模型在上述四个数据集中取得的精度都是最高的,同时训练模型所花费的时间也要少于现有的传统差分进化优化支持向量机的模型。从而可以得出本发明提出的量子差分进化算法优化支持向量机模型拥有较高的鲁棒性。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献