本發(fā)明涉及一種液壓泵故障診斷方法,具體涉及一種基于自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法。
背景技術(shù):
工程車輛的動(dòng)力傳遞和伺服控制很大程度上依賴于核心部件液壓泵,液壓泵一般處于惡劣的工作環(huán)境,其工作強(qiáng)度大,故障機(jī)理更是復(fù)雜多樣,采集到的故障數(shù)據(jù)容易受到干擾,而神經(jīng)網(wǎng)絡(luò)由于其出眾的自我學(xué)習(xí)能力以及解決復(fù)雜的非線性問題的能力,在液壓泵故障診斷方面有很強(qiáng)的優(yōu)勢(shì)。
當(dāng)前,基于神經(jīng)網(wǎng)絡(luò)的故障診斷研究主要集中于算法研究,由于對(duì)神經(jīng)網(wǎng)絡(luò)具體的內(nèi)部機(jī)制研究還不深入,因此,神經(jīng)網(wǎng)絡(luò)常常作為故障診斷模型的一部分被使用。
但是在BP神經(jīng)網(wǎng)絡(luò)算法基礎(chǔ)上進(jìn)行了液壓泵故障診斷存在以下缺陷,(1)由于BP算法的訓(xùn)練過程使用了梯度下降法,而它所要優(yōu)化的目標(biāo)函數(shù)又非常復(fù)雜,此時(shí),容易出現(xiàn)“鋸齒形現(xiàn)象”,嚴(yán)重影響了BP算法的學(xué)習(xí)速率。(2)BP算法為一種局部優(yōu)化方法,當(dāng)求解非線性函數(shù)的全局極值時(shí),算法容易陷入局部極值。(3)對(duì)于復(fù)雜的目標(biāo)函數(shù),BP神經(jīng)網(wǎng)絡(luò)會(huì)在神經(jīng)元輸出接近0或l的情況下,無法有效調(diào)節(jié)網(wǎng)絡(luò)權(quán)值,使訓(xùn)練過程停滯,基于以上缺陷,使得BP神經(jīng)網(wǎng)絡(luò)對(duì)液壓泵故障進(jìn)行診斷的準(zhǔn)確率不易得到保證。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:本發(fā)明針對(duì)上述現(xiàn)有技術(shù)存在的問題做出改進(jìn),即本發(fā)明公開了一種基于自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法。
技術(shù)方案:一種基于自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法,包括以下步驟:
(1)、初始化粒子群規(guī)模
(2)、計(jì)算網(wǎng)絡(luò)適應(yīng)度值,網(wǎng)絡(luò)適應(yīng)度值通過網(wǎng)絡(luò)輸出誤差E表征,其表達(dá)式為:
其中:
E表示網(wǎng)絡(luò)輸出誤差;
表示期望輸出;
表示實(shí)際輸出;
p表示輸入樣本個(gè)數(shù);
(3)、統(tǒng)計(jì)粒子pBest和粒子gBest后進(jìn)入步驟(4);
(4)、更新慣性權(quán)重w,更新粒子位置和速度,進(jìn)入步驟(5),其中,慣性權(quán)重w的更新公式為:
w=((maxw-minw)*(maxiter-nowiter)/maxinter)2+minw,
maxw、minw分別表示變化范圍上限和下限;
maxiter表示最大迭代次數(shù);
nowiter表示現(xiàn)在的迭代次數(shù);
粒子位置更新公式為:其中,
表示k次迭代時(shí)粒子位置,
表示k+1次迭代時(shí)粒子速度;
粒子速度公式為其中,
w為慣性權(quán)重,
表示k次迭代粒子速度,
c1、c2表示加速項(xiàng)權(quán)重因子,
pid是d緯粒子i的個(gè)體最好位置(pBest),
pgd是是d緯群體最好位置(gBest),
表示k次迭代時(shí)粒子位置;
(5)、計(jì)算適應(yīng)度函數(shù),若T時(shí)刻適應(yīng)度>T-1時(shí)刻適應(yīng)度,進(jìn)入步驟(7),反之進(jìn)入步驟(6),其中,適應(yīng)度函數(shù)的表達(dá)是為:
其中:
E表示網(wǎng)絡(luò)輸出誤差;
表示期望輸出;
表示實(shí)際輸出;
p表示輸入樣本個(gè)數(shù);
(6)、初始化慣性系數(shù)W=0,進(jìn)入步驟(7);
(7)、更新粒子的個(gè)體極值和群體極值后,進(jìn)入步驟(8);
(8)、隨機(jī)變異,進(jìn)入步驟(9);
(9)、若迭代次數(shù)大于閾值,輸出gBest,反之進(jìn)入步驟(4)。
進(jìn)一步地,步驟(1)包括:
(11)粒子群大小初始化為50;
(12)粒子群的最大速度為搜索區(qū)間的20%;
(13)粒子群的慣性權(quán)重的變化范圍為[0.4 0.9],c1=c2=2;
(14)粒子群的迭代次數(shù)為300次;
(15)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的輸入層為五層、輸出層為兩層、隱含層為兩層;
(16)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的目標(biāo)誤差為0.0001;
(17)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)學(xué)習(xí)參數(shù)為0.1,迭代次數(shù)為1000次;
(18)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的目標(biāo)函數(shù)為均方誤差函數(shù)。
有益效果:本發(fā)明公開的一種基于自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法具有以下有益效果:
1、可以處理液壓泵多故障情況下,使用自適應(yīng)BP神經(jīng)網(wǎng)絡(luò)時(shí),出現(xiàn)的PSO算法收斂速率下降的問題;
2、使用位置隨機(jī)變異,增加了自適應(yīng)PSO-BP網(wǎng)絡(luò)的收斂精度;
3、可以減少PSO網(wǎng)絡(luò)的無效迭代;
4、減少BP網(wǎng)絡(luò)容易陷入極小值的問題。
附圖說明
圖1為本發(fā)明公開的一種基于PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法的流程圖。
具體實(shí)施方式:
下面對(duì)本發(fā)明的具體實(shí)施方式詳細(xì)說明。
如圖1所示,一種基于自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的液壓泵故障診斷方法,包括以下步驟:
(1)、初始化粒子群規(guī)模
(2)、計(jì)算網(wǎng)絡(luò)適應(yīng)度值,網(wǎng)絡(luò)適應(yīng)度值通過網(wǎng)絡(luò)輸出誤差E表征,其表達(dá)式為:
其中:
E表示網(wǎng)絡(luò)輸出誤差;
表示期望輸出;
表示實(shí)際輸出;
p表示輸入樣本個(gè)數(shù);
(3)、統(tǒng)計(jì)粒子pBest和粒子gBest后進(jìn)入步驟(4);
(4)、更新慣性權(quán)重w,更新粒子位置和速度,進(jìn)入步驟(5),其中,慣性權(quán)重w的更新公式為:
w=((maxw-minw)*(maxiter-nowiter)/maxinter)2+minw,
maxw、minw分別表示變化范圍上限和下限;
maxiter表示最大迭代次數(shù);
nowiter表示現(xiàn)在的迭代次數(shù);
粒子位置更新公式為:其中,
表示k次迭代時(shí)粒子位置,
表示k+1次迭代時(shí)粒子速度;
粒子速度公式為其中,
w為慣性權(quán)重,
表示k次迭代粒子速度,
c1、c2表示加速項(xiàng)權(quán)重因子,
pid是d緯粒子i的個(gè)體最好位置(pBest),
pgd是是d緯群體最好位置(gBest),
表示k次迭代時(shí)粒子位置;
(5)、計(jì)算適應(yīng)度函數(shù),若T時(shí)刻適應(yīng)度>T-1時(shí)刻適應(yīng)度,進(jìn)入步驟(7),反之進(jìn)入步驟(6),其中,適應(yīng)度函數(shù)的表達(dá)是為:
其中:
E表示網(wǎng)絡(luò)輸出誤差;
表示期望輸出;
表示實(shí)際輸出;
p表示輸入樣本個(gè)數(shù);
(6)、初始化慣性系數(shù)W=0,進(jìn)入步驟(7);
(7)、更新粒子的個(gè)體極值和群體極值后,進(jìn)入步驟(8);
(8)、隨機(jī)變異(當(dāng)?shù)螖?shù)達(dá)到100次的倍數(shù)時(shí),使得位置公式中變?yōu)殡S機(jī)數(shù)發(fā)生位置上的突變),進(jìn)入步驟(9);
(9)、若迭代次數(shù)大于閾值,輸出gBest,反之進(jìn)入步驟(4)。
進(jìn)一步地,步驟(1)包括:
(11)粒子群大小初始化為50;
(12)粒子群的最大速度為搜索區(qū)間的20%;
(13)粒子群的慣性權(quán)重的變化范圍為[0.4 0.9],c1=c2=2;
(14)粒子群的迭代次數(shù)為300次;
(15)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的輸入層為五層、輸出層為兩層、隱含層為兩層;
(16)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的目標(biāo)誤差為0.0001;
(17)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)學(xué)習(xí)參數(shù)為0.1,迭代次數(shù)為1000次;
(18)自適應(yīng)PSO-BP神經(jīng)網(wǎng)絡(luò)的目標(biāo)函數(shù)為均方誤差函數(shù);
上面對(duì)本發(fā)明的實(shí)施方式做了詳細(xì)說明。但是本發(fā)明并不限于上述實(shí)施方式,在所屬技術(shù)領(lǐng)域普通技術(shù)人員所具備的知識(shí)范圍內(nèi),還可以在不脫離本發(fā)明宗旨的前提下做出各種變化。