王偉江,閆 兵,徐昉暉,董大偉
(1.先進(jìn)驅(qū)動(dòng)節(jié)能技術(shù)教育部工程研究中心,四川 成都 610031;2.西南交通大學(xué)機(jī)械工程學(xué)院,四川 成都 610031)
磁流變阻尼器是一種以磁流變液為載體的智能振動(dòng)控制裝置,在外加磁場的作用下可以實(shí)現(xiàn)毫秒級的液體流變特性轉(zhuǎn)變,從而使其阻尼力在較寬范圍內(nèi)連續(xù)可控,為發(fā)動(dòng)機(jī)的有效寬頻隔振提供了重要手段[1]。以磁流變阻尼器作為執(zhí)行器的前提是建立準(zhǔn)確的阻尼器動(dòng)力學(xué)模型,但由于磁流變液在磁場作用下為非牛頓流體,導(dǎo)致阻尼器存在復(fù)雜的非線性磁滯特性。目前對其動(dòng)力學(xué)模型的研究主要分為參數(shù)化模型和非參數(shù)化模型兩類。
文獻(xiàn)[2]建立了Bingham模型,該模型簡單,參數(shù)少,但無法描述阻尼器在屈服前,其阻尼力與速度的關(guān)系;為此文獻(xiàn)[3]提出了修正Bounc-Wen模型,該模型能較好地反應(yīng)磁流變阻尼器的非線性特性,但其模型參數(shù)多達(dá)14個(gè),辨識困難;文獻(xiàn)[4]對試驗(yàn)數(shù)據(jù)進(jìn)行擬合,得到了磁流變阻尼器多項(xiàng)式模型;文獻(xiàn)[5]采用分?jǐn)?shù)微積分理論,建立了分?jǐn)?shù)階Zener模型,并探討了阻尼器在該模型下的粘彈性。參數(shù)化模型通常用來描述磁流變阻尼器的正向模型,很難通過公式推導(dǎo)得到其逆向模型,而逆向模型又是實(shí)現(xiàn)發(fā)動(dòng)機(jī)隔振半主動(dòng)控制中關(guān)鍵的一環(huán),因此采用神經(jīng)網(wǎng)絡(luò)的非參數(shù)化模型越來越受到重視。文獻(xiàn)[6]在磁流變阻尼器非參數(shù)化建模中采用自適應(yīng)神經(jīng)模糊系統(tǒng)理論,避免了參數(shù)化建模存在的大量參數(shù)辨識問題;文獻(xiàn)[7]以貝葉斯推理分析框架下的非線性自回歸神經(jīng)網(wǎng)絡(luò)技術(shù)建立了磁流變阻尼器的正向模型,該模型可以有效地預(yù)測磁流變阻尼器在周期和隨機(jī)激勵(lì)下的非線性動(dòng)態(tài)行為;文獻(xiàn)[8]通過對磁流變阻尼器雙曲正切滯回模型和BP神經(jīng)網(wǎng)絡(luò)模型的辨識精度比較,指出了神經(jīng)網(wǎng)絡(luò)建模的優(yōu)勢;文獻(xiàn)[9]指出BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值對網(wǎng)絡(luò)訓(xùn)練速度和精度的影響,并在磁流變阻尼器正、逆向建模中采用遺傳算法對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,提高了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效率和精度,但并未考慮遺傳算法存在的早熟和收斂速度慢等問題??梢钥闯觯谏窠?jīng)網(wǎng)絡(luò)的非參數(shù)化模型在磁流變阻尼器建模得到了廣泛的應(yīng)用,這一點(diǎn)在逆向模型中尤為明顯,但針對神經(jīng)網(wǎng)絡(luò)存在收斂速度慢和局部極小化問題的研究并不充分。
以磁流變阻尼器動(dòng)力學(xué)性能試驗(yàn)結(jié)果為基礎(chǔ),通過統(tǒng)計(jì)學(xué)方法確定了該阻尼器正向、逆向模型的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu);并提出一種結(jié)合適應(yīng)度線性變換、自適應(yīng)交叉和變異概率的改進(jìn)遺傳神經(jīng)網(wǎng)絡(luò)(IGA-BP)算法,建立了磁流變阻尼器非參數(shù)神經(jīng)網(wǎng)絡(luò)模型,有效地克服了傳統(tǒng)遺傳神經(jīng)網(wǎng)絡(luò)(GA-BP)早熟和收斂速度慢的問題,提高了模型的訓(xùn)練效率和辨識精度,為發(fā)動(dòng)機(jī)隔振半主動(dòng)控制奠定基礎(chǔ)。
在非線性系統(tǒng)建模中,為減小BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值隨機(jī)選取的影響,常用遺傳算法進(jìn)行優(yōu)化,但受傳統(tǒng)遺傳算法影響,GA-BP神經(jīng)網(wǎng)絡(luò)存在早熟和收斂速度慢的問題,為此文中從選擇、交叉、變異方面進(jìn)行改進(jìn),以提高模型的訓(xùn)練效率和辨識精度。
前饋型BP神經(jīng)網(wǎng)絡(luò)可以實(shí)現(xiàn)復(fù)雜非線性系統(tǒng)的建模,具有單隱含層的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖1所示。X1,X2,···Xn為神經(jīng)網(wǎng)絡(luò)的輸入;Y1,Y2,···Ym為神經(jīng)網(wǎng)絡(luò)的輸出;ɑj、bk分別為BP神經(jīng)網(wǎng)絡(luò)隱含層和輸出層神經(jīng)元的閾值;ωij、ωjk分別為輸入層和隱含層及隱含層和輸出層間的連接權(quán)值。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Structure of BP Neural Network
BP學(xué)習(xí)算法通過誤差反向傳播不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,具有自學(xué)習(xí)能力,包含了正向、反向傳播兩個(gè)階段。在正向傳播中,輸入信號從輸入層輸入,經(jīng)隱含層傳遞至輸出層,每一層的神經(jīng)元只能影響下一層神經(jīng)元狀態(tài);在反向傳播中,誤差信號沿原來通道返回,通過不斷修正權(quán)值和閾值使得誤差均方值最小。但因網(wǎng)絡(luò)的初始權(quán)值和閾值均為隨機(jī)值,在磁流變阻尼器模型辨識中易出現(xiàn)收斂速度慢,局部最優(yōu)問題,可采用遺傳算法進(jìn)行優(yōu)化。
遺傳算法是模擬生物遺傳和進(jìn)化過程而建立起來的一種全局尋優(yōu)算法,具有較強(qiáng)的魯棒性和全局搜索能力。其基本流程包含編碼、適應(yīng)度計(jì)算、選擇、交叉、變異。文中采用實(shí)數(shù)編碼方式,以預(yù)測值與實(shí)際值之間均方根誤差為適應(yīng)度,分別從選擇、交叉、變異環(huán)節(jié)對遺傳算法改進(jìn),克服其早熟和收斂速度慢的問題。
2.2.1 改進(jìn)選擇算子
遺傳算法有多種選擇算子,使用最廣泛的是比例選擇算子和最優(yōu)保存策略,其中,最優(yōu)保存策略是遺傳算法收斂性的一個(gè)重要保證條件,但易破壞種群多樣性,促使算法早熟,造成局部收斂[10]。
在最優(yōu)保存策略的基礎(chǔ)上,采用的線性比例變換法對個(gè)體適應(yīng)度進(jìn)行尺度變換,維持個(gè)體適應(yīng)度值間的合理差異,可在算法早期抑制某些超級染色體,克服早熟,在算法晚期加速競爭,提高收斂速度,如式(1)所示。
式中:f,f′—變換前后個(gè)體適應(yīng)度值;fmin,fɑvg,fmax—變換前種群中個(gè)體最小、平均和最大適應(yīng)度值;c—常數(shù),當(dāng)種群規(guī)模為(50~100)時(shí),c可?。?.2~2)。
若種群中某些個(gè)體適應(yīng)度遠(yuǎn)低于當(dāng)代種群平均值時(shí),有可能出現(xiàn)變換后適應(yīng)度為負(fù)的情況,為此考慮到變換后最小適應(yīng)度非負(fù)的條件,可進(jìn)行如下變換:
若不等式(4)滿足,則執(zhí)行式(2),否則執(zhí)行式(3)。
2.2.2 交叉算子和變異算子改進(jìn)
交叉概率pc和變異概率pm是影響遺傳算法收斂性的關(guān)鍵,基本遺傳算法中,pc和pm為固定值,針對不同優(yōu)化問題,需反復(fù)試驗(yàn)來確定,且很難找到最佳值。Srinvivas等提出了自適應(yīng)遺傳算法,其pc和pm隨個(gè)體的適應(yīng)度進(jìn)行線性調(diào)整,如式(5)、式(6)所示。
式中:f ″—進(jìn)行交叉的兩個(gè)個(gè)體中較大的適應(yīng)度值;f—變異個(gè)體的適應(yīng)度值;k1,k2,k3,k4—在(0,1)區(qū)間取值。
可以看出,在上述算法中個(gè)體適應(yīng)度值越大,對應(yīng)的交叉和變異概率越小,促使適應(yīng)度值小于平均適應(yīng)度的個(gè)體進(jìn)行交叉和變異,提高種群的多樣性;同時(shí)對于適應(yīng)度值高于平均適應(yīng)度的個(gè)體,減小其被破壞的概率,促進(jìn)算法收斂;但當(dāng)個(gè)體適應(yīng)度值等于最大適應(yīng)度值時(shí),其交叉和變異概率為零。這種算法適應(yīng)于進(jìn)化后期的種群,在進(jìn)化初期易使算法產(chǎn)生早熟。為此,文中采用文獻(xiàn)[11]提出的改進(jìn)算法,使種群中最大適應(yīng)度個(gè)體的交叉和變異概率不為零,如下:
式中:pcmax,pcmin,pmmax,pmmin—交叉和變異概率的取值上限和下限。
改進(jìn)GA-BP(IGA-BP)神經(jīng)網(wǎng)絡(luò)算法的基本流程,可分為BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)確定、改進(jìn)遺傳算法尋優(yōu)和BP神經(jīng)網(wǎng)絡(luò)預(yù)測三個(gè)部分,如圖2所示。其中,BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)確定部分根據(jù)磁流變阻尼器的動(dòng)力學(xué)特性確定網(wǎng)絡(luò)結(jié)構(gòu),進(jìn)而確定遺傳算法中個(gè)體長度;自適應(yīng)遺傳算法以BP神經(jīng)網(wǎng)絡(luò)辨識的均方根誤差為適應(yīng)度進(jìn)行全局尋優(yōu),找到最優(yōu)的權(quán)值和閾值;BP神經(jīng)網(wǎng)絡(luò)預(yù)測時(shí),以遺傳算法的尋優(yōu)結(jié)果為初始權(quán)值和閾值,通過訓(xùn)練得到最終的神經(jīng)網(wǎng)絡(luò)非參數(shù)化模型。
圖2 IGA-BP算法流程Fig.2 Flow of IGA-BP Algorithm
使用電液伺服材料試驗(yàn)機(jī)對磁流變阻尼器進(jìn)行動(dòng)力學(xué)性能測試,如圖3 所示。以試驗(yàn)機(jī)主動(dòng)夾頭驅(qū)動(dòng)磁流變阻尼器的活塞,使其相對于缸體以固定的頻率和振幅作簡諧運(yùn)動(dòng),同時(shí)由直流電源提供穩(wěn)定的電流輸入。試驗(yàn)簡諧激振幅值為1mm,激振力頻率為(1~47)Hz,間隔2Hz;輸入電流為(0~2)A,間隔0.5A;同時(shí)記錄磁流變阻尼器輸入電流,位移,速度,頻率及輸出阻尼力。
圖3 磁流變阻尼器動(dòng)力學(xué)試驗(yàn)平臺Fig.3 Magnetorheological Damper Dynamics Test Platform
不同電流時(shí),在1Hz正弦激勵(lì)下磁流變阻尼器位移—阻尼力和速度—阻尼力的滯回曲線,如圖4所示。由圖可見,在無輸入電流(0A)的情況下,阻尼力較小,主要由磁流變液的粘性及活塞與密封圈間的摩擦產(chǎn)生;隨著電流的增大,阻尼力逐漸增加并趨于飽和。當(dāng)活塞速度較小時(shí),阻尼力隨速度的增大而快速增加,當(dāng)速度增大到一定程度后,阻尼器表現(xiàn)出屈服現(xiàn)象,阻尼力增速減緩??梢姶帕髯冏枘崞骶哂泻軓?qiáng)的非線性磁滯特征。
圖4 不同電流下的滯回特性曲線(1mm,1Hz)Fig.4 Measured Hysteresis Loops Under Different Current Levels(1mm,1Hz)
正向模型是根據(jù)阻尼器的狀態(tài)對其當(dāng)前時(shí)刻輸出阻尼力的預(yù)測模型。根據(jù)文獻(xiàn)[9]可知,磁流變阻尼器性能與前一時(shí)刻的狀態(tài)有關(guān),故分別以阻尼器前一時(shí)刻的位移sk-1,速度vk-1,電流Ik-1,阻尼力fk-1和當(dāng)前時(shí)刻的位移sk,速度vk,電流Ik為輸入,當(dāng)前時(shí)刻的阻尼力fk為輸出。據(jù)此,可確定神經(jīng)網(wǎng)絡(luò)正向模型具有7個(gè)輸入神經(jīng)元,1個(gè)輸出神經(jīng)元,但隱含神經(jīng)元個(gè)數(shù)尚待確定,且對于不同問題最優(yōu)隱含神經(jīng)元個(gè)數(shù)不一定相同。為避免神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對正向模型辨識精度的影響,文中分別對含有(5~25)個(gè)隱含神經(jīng)元的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行200次測試,并進(jìn)行誤差統(tǒng)計(jì),如圖5所示??梢?,隨著隱含神經(jīng)元個(gè)數(shù)增達(dá),網(wǎng)絡(luò)具有更強(qiáng)的學(xué)習(xí)能力,均方根誤差整體呈減小趨勢,但網(wǎng)絡(luò)參數(shù)數(shù)目也隨之增加,增大了模型訓(xùn)練的計(jì)算量,且將可能導(dǎo)致過擬合現(xiàn)象。綜合考慮統(tǒng)計(jì)誤差和計(jì)算量,隱含神經(jīng)元個(gè)數(shù)選為18個(gè)。
圖5 不同隱含神經(jīng)元數(shù)目下的模型均方根誤差統(tǒng)計(jì)Fig.5 RMSE Analysis for Different Numbers of Hidden Neurons
基于上述研究,可確定磁流變阻尼器正向模型的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為7-18-1,共有144個(gè)權(quán)值,19個(gè)閾值。由此可確定遺傳算法中的個(gè)體長度,取遺傳算法種群規(guī)模為80,最大迭代次數(shù)為100,pcmax,pcmin,pmmax,pmmin分別取0.8,0.5,0.1,0.001,選取每個(gè)輸入電流下,磁流變阻尼器在11Hz、25Hz和39Hz的試驗(yàn)數(shù)據(jù)作為辨識精度的測試樣本,其余試驗(yàn)數(shù)據(jù)作為訓(xùn)練樣本,對BP、GABP和IGA-BP神經(jīng)網(wǎng)絡(luò)正向模型進(jìn)行訓(xùn)練。
GA-BP算法和IGA-BP算法的最佳適應(yīng)度和平均適應(yīng)度曲線,可以看出:改進(jìn)后的遺傳算法收斂速度更快,在第50代即可收斂,且精度更高,其最佳適應(yīng)度最小值為5.05,如圖6所示。激振力頻率11Hz時(shí),在各輸入電流下阻尼力的預(yù)測結(jié)果,由圖可知阻尼力預(yù)測值與測試值誤差很小,可見文中建立的正向模型能很好地描述磁流變阻尼器的正向動(dòng)力學(xué)特性,如圖7所示。不同電流時(shí)BP、GA-BP及IGA-BP神經(jīng)網(wǎng)絡(luò)正向模型的預(yù)測均方根誤差,可知相對于BP神經(jīng)網(wǎng)絡(luò),GA-BP和IGA-BP神經(jīng)網(wǎng)絡(luò)正向模型的辨識精度都有不同程度地提高,且后者的精度更高,如表1所示。
圖6 適應(yīng)度值進(jìn)化曲線Fig.6 Evolution Curve of Fitness Value
圖7 IGA-BP神經(jīng)網(wǎng)絡(luò)預(yù)測輸出阻尼力Fig.7 Output Damping Force Predicted by IGA-BP Neural Network
表1 神經(jīng)網(wǎng)絡(luò)不同電流時(shí)的預(yù)測均方根誤差(N)Tab.1 Prediction RMSE of NN with Different Currents(N)
逆向模型是根據(jù)阻尼器的狀態(tài)對其當(dāng)前時(shí)刻輸入電流的預(yù)測模型。以阻尼器前一時(shí)刻的位移sk-1,速度vk-1,電流Ik-1,阻尼力fk-1和當(dāng)前時(shí)刻的位移sk,速度vk,阻尼力fk為輸入,當(dāng)前時(shí)刻的電流Ik為輸出,建立包含7個(gè)輸入神經(jīng)元,1個(gè)輸出神經(jīng)元的神經(jīng)網(wǎng)絡(luò)逆向模型。為確定逆向模型的隱含神經(jīng)元數(shù)目,同樣分別對含有(5~25)個(gè)隱含神經(jīng)元的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行200次測試,并進(jìn)行誤差統(tǒng)計(jì),如圖8所示。可見,對于該阻尼器而言,可能因網(wǎng)絡(luò)過擬合的原因,逆向模型的統(tǒng)計(jì)預(yù)測誤差隨著隱含層神經(jīng)元數(shù)目的增加呈增大趨勢。這也說明盡管輸入、輸出神經(jīng)元個(gè)數(shù)相同,但對于求解目標(biāo)不同的神經(jīng)網(wǎng)絡(luò)正向、逆向模型,其最優(yōu)隱含神經(jīng)元數(shù)目并不一定相同。根據(jù)計(jì)算結(jié)果,選擇逆向模型的隱含神經(jīng)元數(shù)目為6個(gè)。
圖8 不同隱含神經(jīng)元數(shù)目下的模型均方根誤差統(tǒng)計(jì)Fig.8 RMSE Analysis for Different Numbers of Hidden Neurons
因此,可確定磁流變阻尼器逆向模型的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為7-6-1,共有48個(gè)權(quán)值,7個(gè)閾值,進(jìn)而可得遺傳算法中的個(gè)體長度。與正向模型訓(xùn)練過程相同,選擇各輸入電流下,11Hz、25Hz 和39Hz的試驗(yàn)數(shù)據(jù)作為辨識精度的測試樣本,其余試驗(yàn)數(shù)據(jù)作為訓(xùn)練樣本,對BP、GA-BP 和IGA-BP 神經(jīng)網(wǎng)絡(luò)逆向模型進(jìn)行訓(xùn)練。GA-BP算法和IGA-BP算法最佳適應(yīng)度和平均適應(yīng)度曲線,如圖9所示??梢姡涸谀嫦蚰P捅孀R中IGA-BP算法的收斂速度更快,在第18代左右即可收斂,且精度也有相應(yīng)小幅提升。IGABP神經(jīng)網(wǎng)絡(luò)逆向模型的預(yù)測電流與測試電流對比,如圖10所示。可見,該逆向模型的預(yù)測電流可以很好地跟隨測試電流,因此該模型是有效的,能夠表征磁流變阻尼器的逆向動(dòng)力學(xué)性能。BP、GA-BP及IGA-BP神經(jīng)網(wǎng)絡(luò)逆向模型的預(yù)測均方根誤差,可知三種逆向模型的均方根誤差都較小,其中IGA-BP神經(jīng)網(wǎng)絡(luò)模型的整體誤差最小,模型辨識精度最高,如表2所示。
表2 神經(jīng)網(wǎng)絡(luò)逆向模型預(yù)測均方根誤差(mA)Tab.2 Prediction RMSE of Inverse Model(mA)
圖9 適應(yīng)度值進(jìn)化曲線Fig.9 Evolution Curve of Fitness Value
圖10 IGA-BP神經(jīng)網(wǎng)絡(luò)預(yù)測電流Fig.10 Current Predicted by IGA-BP Neural Network
以磁流變阻尼器動(dòng)力學(xué)試驗(yàn)數(shù)據(jù)為基礎(chǔ),通過對神經(jīng)網(wǎng)絡(luò)非參數(shù)模型辨識建立了該阻尼器的正向、逆向模型。針對BP神經(jīng)網(wǎng)絡(luò)收斂速度慢和易局部極小化的問題,利用遺傳算法對其初始權(quán)值和閾值優(yōu)化,并對遺傳算法進(jìn)行改進(jìn),研究結(jié)果表明:
(1)隨機(jī)選取初始權(quán)值和閾值會(huì)限制BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和預(yù)測精度,利用遺傳算法進(jìn)行初始權(quán)值和閾值的優(yōu)化可以取得良好的效果。
(2)基于IGA-BP神經(jīng)網(wǎng)絡(luò)的非參數(shù)化模型能更準(zhǔn)確地反映磁流變阻尼器動(dòng)力學(xué)特性,且對于求解目標(biāo)不同的正向、逆向模型,其最優(yōu)隱含神經(jīng)元數(shù)目并不一定相同。
(3)提出的IGA-BP 神經(jīng)網(wǎng)絡(luò)算法可以有效克服GA-BP 神經(jīng)網(wǎng)絡(luò)早熟和收斂速度慢的問題,提高磁流變阻尼器正向、逆向模型的訓(xùn)練效率和辨識精度。