張 璐 芮 挺 朱會(huì)杰 周 游
(1.解放軍理工大學(xué)國(guó)防工程學(xué)院,江蘇 南京210007;2.江蘇經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院,江蘇 南京210007)
滾動(dòng)軸承是旋轉(zhuǎn)機(jī)械的關(guān)鍵部件,其直接影響整個(gè)機(jī)械系統(tǒng)的性能和效率,也是引起旋轉(zhuǎn)機(jī)械故障的主要原因之一[1]。據(jù)統(tǒng)計(jì),大約有30%的旋轉(zhuǎn)機(jī)械故障是由滾動(dòng)軸承故障引發(fā),因此研究滾動(dòng)軸承的故障診斷對(duì)于保證旋轉(zhuǎn)機(jī)械正常運(yùn)轉(zhuǎn)有重要意義。
隱馬爾可夫模型(Hidden Markov Model,HMM)是一種概率統(tǒng)計(jì)模型,在語(yǔ)音識(shí)別、狀態(tài)監(jiān)測(cè)、故障診斷、生物信號(hào)處理等信號(hào)處理和模式識(shí)別領(lǐng)域得到廣泛應(yīng)用[2]。HMM的應(yīng)用建立在訓(xùn)練的基礎(chǔ)上,然而經(jīng)典的Baum-Welch訓(xùn)練算法是一種基于最陡梯度下降的局部?jī)?yōu)化算法,該算法的缺點(diǎn)是對(duì)初始值的選取依賴(lài)大,且容易陷入局部最優(yōu)解。
因此本文針對(duì)HMM原有訓(xùn)練算法存在的問(wèn)題,提出一種基于極值擾動(dòng)和自適應(yīng)慣性權(quán)重的粒子群算法的模型訓(xùn)練算法,采用全局搜索策略?xún)?yōu)化模型參數(shù),提高模型在故障診斷中的準(zhǔn)確性。
隱馬爾可夫模型包含了雙內(nèi)嵌式的隨機(jī)過(guò)程:一個(gè)是馬爾可夫鏈,它負(fù)責(zé)描述隨機(jī)過(guò)程狀態(tài)的轉(zhuǎn)移;另一個(gè)是隱馬爾可夫鏈中狀態(tài)相關(guān)的觀測(cè)序列,它負(fù)責(zé)描述狀態(tài)和觀察值之間的統(tǒng)計(jì)對(duì)應(yīng)關(guān)系。在HMM中觀察到的事件與狀態(tài)并不是一一對(duì)應(yīng)的,而是通過(guò)一個(gè)隨機(jī)過(guò)程去感知狀態(tài)的存在及其特性。由于不能直接看到狀態(tài),因而稱(chēng)為隱馬爾可夫模型[3]。
粒子群算法(Particle Swarm Optimization,PSO)是一種基于迭代的群體優(yōu)化方法。所有粒子都具有相應(yīng)的速度V(t)和位置X(t),每個(gè)粒子根據(jù)它的位置都會(huì)產(chǎn)生一個(gè)適應(yīng)度值。將每個(gè)粒子視為問(wèn)題的一個(gè)可行解,通過(guò)一組隨機(jī)解對(duì)系統(tǒng)進(jìn)行初始化后,迭代搜尋得出最優(yōu)值[4]。在迭代過(guò)程中,每個(gè)粒子通過(guò)跟蹤兩個(gè)極值不斷調(diào)整運(yùn)動(dòng)速度和位置:一個(gè)極值是粒子本身目前找到的最優(yōu)解,即個(gè)體歷史最優(yōu)值pbest;另一個(gè)極值是整個(gè)種群目前找到的最優(yōu)解,稱(chēng)為全局最優(yōu)值gbest,從而實(shí)現(xiàn)在搜索空間的尋優(yōu)。其公式表示為:
式中,ω為慣性權(quán)重;c1、c2為學(xué)習(xí)因子;r1、r2為[0,1]區(qū)間內(nèi)均勻分布的偽隨機(jī)數(shù)。
本文提出擾動(dòng)策略的算法,使種群始終處于一種非平衡態(tài),促使粒子在精英學(xué)習(xí)機(jī)制的基礎(chǔ)上擴(kuò)大探測(cè)范圍,增加群體多樣性,從而提高算法的搜索能力。擾動(dòng)算子如下:
式中,rand為[0,1]區(qū)間內(nèi)的均勻分布。
采用擾動(dòng)策略改進(jìn)粒子群算法,主要是通過(guò)對(duì)種群最優(yōu)值添加持續(xù)的小范圍擾動(dòng)。每相隔十代,比較兩個(gè)全局最優(yōu)值,若差值小于一定閾值,說(shuō)明粒子群有陷入局部最優(yōu)、瀕臨停滯的可能性,給全局最優(yōu)值加上擾動(dòng),通過(guò)粒子群的學(xué)習(xí)機(jī)制,可將整體帶出局部最優(yōu)。比較兩代全局最優(yōu)值設(shè)定固定步長(zhǎng)的目的是減少運(yùn)算量,提高算法效率。表達(dá)式為:
慣性權(quán)重使粒子保持運(yùn)動(dòng)慣性,同時(shí)擴(kuò)展搜索空間。較大的慣性權(quán)重有利于全局探索,而較小的慣性權(quán)重有利于算法的局部開(kāi)發(fā),加速算法的收斂。在全局搜索算法中,希望前期有較高的搜索能力以得到合適粒子,而后期有較高的開(kāi)發(fā)能力,以加快收斂速度[5]。為平衡算法的全局搜索能力和收斂速度,本文采用基于高斯函數(shù)遞減慣性權(quán)重的調(diào)整策略,即:
式中,MaxDT為粒子群算法中的最大循環(huán)次數(shù);t為當(dāng)前迭代次數(shù);k為一個(gè)常數(shù)值,較小的k值會(huì)使ω(t)迅速減小,較大的k值會(huì)使ω(t)變化減慢。
當(dāng)選定k值后,ω(t)隨著迭代次數(shù)的增加而減小,加快了算法的收斂速度。在算法程序中設(shè)置一個(gè)小的固定值D作為精度值,在程序運(yùn)行過(guò)程中,當(dāng)ω-ωmin>D時(shí),按照式(5)更新慣性權(quán)重;反之,當(dāng)ω-ωmin≤D時(shí),ω=ωmin。
針對(duì)HMM訓(xùn)練算法存在的問(wèn)題,本文采用粒子群優(yōu)化算法訓(xùn)練HMM,具備了全局搜索、快速收斂的能力,能夠降低初始值的影響,提高模型的訓(xùn)練算法逼近函數(shù)極值的能力。
設(shè)狀態(tài)轉(zhuǎn)移矩陣A、觀察值輸出矩陣B、初始狀態(tài)分布矩陣π為粒子位移表達(dá)式X(t)=[π,A,B]。將粒子群算法最終獲得的全局最優(yōu)解作為HMM中的各個(gè)參數(shù)。由于各元素的取值范圍要在[0,1]之間以及各行元素要滿(mǎn)足和等于1的條件,所以首先分別對(duì)π、A、B進(jìn)行歸一化處理。進(jìn)而,HMM的參數(shù)訓(xùn)練過(guò)程就轉(zhuǎn)變?yōu)榍笕∵m應(yīng)度函數(shù)最大值的問(wèn)題。
在訓(xùn)練過(guò)程中,選取產(chǎn)生觀測(cè)序列O的概率P(O|λ)作為適應(yīng)度函數(shù),具體函數(shù)為f(λ)=P(O|λ)。考慮到HMM模型的概率值P(O|λ)相對(duì)較小,且只關(guān)心每次模型輸出概率值的相對(duì)大小,現(xiàn)將上述函數(shù)兩邊取對(duì)數(shù)作為本算法中的適應(yīng)度函數(shù)。
(1)給定初始化條件,設(shè)置學(xué)習(xí)因子、慣性權(quán)重、粒子群規(guī)模、最大速度、最大迭代次數(shù)等參數(shù),同時(shí)設(shè)定HMM的狀態(tài)數(shù)、觀測(cè)值數(shù)以及觀測(cè)序列;(2)對(duì)π、A、B矩陣歸一化,按照式(1)、(2)更新速度、位移;(3)按照式(5)更新慣性權(quán)重,計(jì)算適應(yīng)度函數(shù),更新個(gè)體最優(yōu)值、全局最優(yōu)值;(4)判斷是否加入擾動(dòng)算子,若達(dá)到終止條件,輸出最優(yōu)解和對(duì)應(yīng)適應(yīng)值,否則轉(zhuǎn)向(3)。
實(shí)驗(yàn)樣本來(lái)源于安裝在電機(jī)驅(qū)動(dòng)端的6205-2RS深溝球滾動(dòng)軸承的振動(dòng)加速度數(shù)據(jù)。具體實(shí)驗(yàn)設(shè)置如表1所示(每組樣本釆樣點(diǎn)為1 024個(gè))。
表1 實(shí)驗(yàn)數(shù)據(jù)的設(shè)置
在訓(xùn)練階段,采用本文提出的粒子群優(yōu)化算法訓(xùn)練左右型的HMM。將經(jīng)過(guò)三層小波包分解、特征提取、特征降維等信號(hào)處理后的多維觀測(cè)矩陣作為HMM的訓(xùn)練集。設(shè)定隱狀態(tài)的數(shù)目為4。每種故障狀態(tài)下選取30個(gè)樣本進(jìn)行訓(xùn)練。粒子群算法參數(shù)設(shè)置為:粒子群個(gè)體數(shù)目Num=100,c1=c2=1.496 2,ωmin=0.4,ωmax=0.9,最大迭代次數(shù)為500次。初始狀態(tài)分布矩陣π的初值為[1,0,0,0],A、B矩陣的初始值為歸一化的隨機(jī)值。
訓(xùn)練結(jié)束后,將得到內(nèi)圈故障、滾動(dòng)體故障、外圈故障和正常狀態(tài)對(duì)應(yīng)的4個(gè)模型,分別為HMM-1~HMM-4。圖1為訓(xùn)練后的4種故障類(lèi)型對(duì)應(yīng)HMM的對(duì)數(shù)似然率。
測(cè)試階段,對(duì)每種故障狀態(tài)下的各50個(gè)樣本振動(dòng)信號(hào)進(jìn)行同樣的信號(hào)處理和特征提取過(guò)程,然后分別輸入訓(xùn)練后的4組模型中,將獲得最大適應(yīng)度函數(shù)值P(O|λ)的模型識(shí)別為當(dāng)前的軸承狀態(tài)。表2為HMM診斷的具體統(tǒng)計(jì)結(jié)果。
由表2可以看出HMM具有較好的分類(lèi)性能,對(duì)4種軸承故障的識(shí)別率均在92%以上。HMM的訓(xùn)練和診斷實(shí)驗(yàn)結(jié)果表明HMM軸承故障診斷方法算法穩(wěn)定、訓(xùn)練速度快、分類(lèi)準(zhǔn)確率高,可以用于軸承的故障診斷工作。
圖1 4種故障類(lèi)型的HMM對(duì)數(shù)似然率
表2 故障診斷的實(shí)驗(yàn)結(jié)果
HMM是故障診斷、語(yǔ)音識(shí)別等領(lǐng)域一種有效的分類(lèi)方法,針對(duì)其訓(xùn)練中所采用的Baum-Welch算法對(duì)初始參數(shù)的選擇依賴(lài)大、全局尋優(yōu)能力不足的缺陷,本文提出了基于改進(jìn)粒子群算法的HMM訓(xùn)練算法,通過(guò)對(duì)全局最優(yōu)解加入擾動(dòng)、對(duì)慣性權(quán)重加入高斯函數(shù)的改進(jìn)方法,提高了模型的訓(xùn)練算法收斂于全局最優(yōu)的能力。滾動(dòng)軸承故障診斷實(shí)驗(yàn)表明本文提出的改進(jìn)訓(xùn)練算法的HMM對(duì)軸承故障具有良好的識(shí)別率,且4種故障類(lèi)型的診斷準(zhǔn)確率均高于92%,證明了該方法的有效性和實(shí)際應(yīng)用的可行性。
[1]李全.基于 HMM的軸承故障診斷方法[D].昆明理工大學(xué),2010
[2]王志堂,蔡淋波.隱馬爾可夫模型(HMM)及其應(yīng)用[J].湖南科技學(xué)院學(xué)報(bào),2009,30(4)
[3]謝松汕,許寶杰,吳國(guó)新,等.基于HMM/SVM的風(fēng)電設(shè)備故障趨勢(shì)預(yù)測(cè)方法研究[J].計(jì)算機(jī)測(cè)量與控制,2014(1)
[4]朱嘉瑜,高鷹.基于改進(jìn)粒子群算法的隱馬爾可夫模型訓(xùn)練[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(1)
[5]張迅,王平,邢建春,等.基于高斯函數(shù)遞減慣性權(quán)重的粒子群優(yōu)化算法[J].計(jì)算機(jī)應(yīng)用研究,2012,29(10)