劉凱文,劉聰聰,李珺凱,王桂麗,張持健
(安徽師范大學(xué) 物理與電子信息學(xué)院,安徽 蕪湖 241000)
鋰電池作為一種高性能儲(chǔ)能器件被應(yīng)用在各類場(chǎng)合,SOH是評(píng)定鋰電池性能的重要指標(biāo),精確預(yù)測(cè)鋰電池健康狀態(tài)對(duì)電池的合理利用具有重要的指導(dǎo)意義。對(duì)鋰電池健康狀態(tài)的預(yù)測(cè)包括基于經(jīng)驗(yàn)和基于性能的方法,基于經(jīng)驗(yàn)預(yù)測(cè)的方法包括循環(huán)周期和安時(shí)壽命法,基于性能預(yù)測(cè)的方法包括基于模型法[1]、基于數(shù)據(jù)驅(qū)動(dòng)法[2]以及基于融合的方法[3]。由于鋰電池性能衰減時(shí)參數(shù)變化的高度非線性,鋰電池健康狀態(tài)采用線性預(yù)測(cè)精度較低。鋰電池健康狀態(tài)非線性預(yù)測(cè)方法包括PF算法、SVR算法和BP算法等,非線性預(yù)測(cè)模型相比線性預(yù)測(cè)模型精度更高。本實(shí)驗(yàn)以某品牌批次18650磷酸鐵鋰電池為研究對(duì)象[4],探究鋰電池性健康狀態(tài)與電池外部參數(shù)變化之間的聯(lián)系。實(shí)驗(yàn)分別采用ELM算法、BP算法、SVR算法以及RBF算法構(gòu)造電池SOH的預(yù)測(cè)模型并與GA-ELM算法模型進(jìn)行對(duì)比,結(jié)果表明GA-ELM算法預(yù)測(cè)能力優(yōu)于其他算法模型。
ELM是一種新型單隱含層前饋神經(jīng)網(wǎng)絡(luò)算法[5-6]。ELM包含3層結(jié)構(gòu):輸入層、隱含層和輸出層。輸入層有n個(gè)神經(jīng)元,代表n個(gè)輸入變量;隱含層有l(wèi)個(gè)神經(jīng)元;輸出層有m個(gè)神經(jīng)元,對(duì)應(yīng)m個(gè)輸出變量;輸入層與隱含層的連接權(quán)值ω為:
式中,ωij表示輸入層第i個(gè)神經(jīng)元與隱含層第j個(gè)神經(jīng)元間的連接權(quán)值。
隱含層與輸出層之間的連接權(quán)值β為:
式中,βjk表示隱含層第j個(gè)神經(jīng)元與輸出層第k個(gè)神經(jīng)元的連接權(quán)值。
式中,bl表示隱含層第l個(gè)神經(jīng)元的閾值,隱含層的激活函數(shù)g(x)可選擇連續(xù)非線性函數(shù)作為輸出映射函數(shù),ELM網(wǎng)絡(luò)的輸出T為:
T=[t1t2…tQ]m×Q;
式中,ωi=[ωi1ωi2…ωin],xj=[x1jx2j…xnj]T,上式可表示成Hβ=T′,其中T′是輸出矩陣T的轉(zhuǎn)置矩陣,H是隱含層的輸出矩陣。
ELM算法步驟包括:
① 確定隱含層神經(jīng)元個(gè)數(shù),隨機(jī)生成輸入層到隱含層的權(quán)值ω及隱含層的閾值b;
② 選擇隱含層激活函數(shù)g(x)為一個(gè)無(wú)限可微的函數(shù);
③ 計(jì)算隱含層輸出矩陣H,解得輸出層權(quán)值β=H+T'。
遺傳算法(Genetic Algorithm,GA)是一種進(jìn)化算法,算法將求解問(wèn)題參數(shù)進(jìn)行編碼作為待訓(xùn)練個(gè)體,訓(xùn)練個(gè)體通過(guò)選擇、交叉、變異操作并計(jì)算適應(yīng)度值,選出適應(yīng)度最高值作為最優(yōu)個(gè)體,最優(yōu)個(gè)體通過(guò)解碼操作獲得待解參數(shù)的最優(yōu)值[8]。遺傳算法適用于解決傳統(tǒng)搜索算法難以解決的非線性優(yōu)化問(wèn)題。遺傳算法提供了求解非線性規(guī)劃的通用框架,算法將具體問(wèn)題參數(shù)通過(guò)編碼成染色體進(jìn)行優(yōu)化,不受函數(shù)約束條件的限制,求解搜索的過(guò)程是全局且并行的,降低了傳統(tǒng)優(yōu)化算法(如梯度下降法)易陷入局部極小點(diǎn)的風(fēng)險(xiǎn)。
利用GA進(jìn)行ELM參數(shù)尋優(yōu)的步驟包括:
① 確定網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),根據(jù)數(shù)據(jù)規(guī)模選擇合適的隱含層單元數(shù),選擇合適的隱含層激活函數(shù)g(x);
② 對(duì)ELM隱含層權(quán)值和閾值編碼得到參數(shù)的初始化種群,將解碼后的參數(shù)帶入ELM網(wǎng)絡(luò),訓(xùn)練并驗(yàn)證模型預(yù)測(cè)精度,誤差值Mse=E(Tsim-Ttest)2,Tsim為測(cè)試集的預(yù)測(cè)值,Tsim為測(cè)試集實(shí)際值;
③ 將染色體的精英個(gè)體進(jìn)行交叉、變異、重組等操作,求出子代個(gè)體的適應(yīng)度值,通過(guò)排序函數(shù)選出其中適應(yīng)度最優(yōu)個(gè)體。當(dāng)循環(huán)達(dá)到循環(huán)最大值或測(cè)試誤差低于設(shè)置閾值時(shí),GA-ELM算法停止,算法的流程如圖1所示。
圖1 GA-ELM算法流程圖
2.2.1 放電直流內(nèi)阻
鋰電池放電次數(shù)的增加,由于電池內(nèi)部電解液活性降低以及電極材料老化導(dǎo)致電池導(dǎo)電能力下降,結(jié)果表現(xiàn)在電池參數(shù)上即電池內(nèi)阻的增大。
2.2.2 放電中值電壓
放電中值電壓是指電池放電過(guò)程中,電荷量降至初始值一半時(shí)電池的端電壓,隨著電池放電循環(huán)次數(shù)的增加,電池對(duì)鋰離子荷載能力變差,電池的中值電壓下降。
2.2.3 放電容量衰減率
放電容量衰減率是指本次放電循環(huán)放出電荷量與前次放電循環(huán)放出電荷量的比值,隨著放電循環(huán)次數(shù)增加,電池容量整體呈現(xiàn)下降的趨勢(shì),放電容量衰減率即容量衰減的快慢側(cè)面反映了電池的健康狀態(tài)。
分別測(cè)量鋰電池放電循環(huán)的中值電壓、放電直流內(nèi)阻以及放電衰減率,計(jì)算并記錄此時(shí)鋰電池SOH值。將實(shí)驗(yàn)循環(huán)次數(shù)、中值電壓、直流內(nèi)阻及放電衰減率作為預(yù)測(cè)模型的輸入,鋰電池SOH值作為預(yù)測(cè)模型的輸出,實(shí)驗(yàn)所得數(shù)據(jù)如表1所示。
表1 電池衰減實(shí)驗(yàn)數(shù)據(jù)
循環(huán)次數(shù)中值電壓/V直流內(nèi)阻/Ω放電衰減率/%鋰電池SOH13.4820.0621001.00023.4660.069970.97233.4630.069960.96443.4610.071960.96053.4600.072950.95663.4740.065980.98173.4770.063980.98683.4730.067970.97993.4620.068950.956103.4590.070950.950…953.4510.069970.834963.4400.068950.816973.4260.075930.799983.4200.080920.791993.4370.073940.8051003.4430.070950.812
為了驗(yàn)證改進(jìn)ELM算法的有效性,設(shè)ELM隱含層單元數(shù)為3,隱含層激活函數(shù)g(x)選擇非線性Sigmoid函數(shù)。遺傳算法個(gè)體數(shù)設(shè)為20,最大遺傳代數(shù)為100,染色體編碼為10位二進(jìn)制數(shù),輸入權(quán)值和隱含層閾值范圍為-0.5~+0.5之間,代溝為0.05,交叉概率為0.5,染色體變異概率為0.01,觀察并記錄算法的仿真結(jié)果。
如圖2所示,從測(cè)試集均方誤差Mse和決定系數(shù)R2看出GA-ELM算法預(yù)測(cè)集精度優(yōu)于ELM算法,GA-ELM模型40代后預(yù)測(cè)誤差趨于穩(wěn)定。實(shí)驗(yàn)對(duì)同一數(shù)據(jù)集進(jìn)行多次仿真,以驗(yàn)證實(shí)驗(yàn)結(jié)果的可靠性,圖3是重復(fù)試驗(yàn)的結(jié)果,通過(guò)對(duì)比圖2和圖3可看出ELM算法的不穩(wěn)定,這是由ELM輸入權(quán)值和隱含層閾值選擇的隨機(jī)性造成的,引入遺傳算法有效增強(qiáng)了ELM算法的穩(wěn)定性。
圖2 GA-ELM和ELM算法對(duì)比
圖3 GA-ELM和ELM算法仿真
為了比較BP算法與ELM算法在預(yù)測(cè)性能上的差距,BP算法采用與ELM算法相同的網(wǎng)絡(luò)結(jié)構(gòu)。BP網(wǎng)絡(luò)隱含層傳遞函數(shù)同樣選擇Sigmoid函數(shù),輸出層傳遞函數(shù)選擇線性的Purelin函數(shù),BP算法采用梯度下降法優(yōu)化,反向迭代次數(shù)選擇100次。BP算法仿真結(jié)果如圖4所示。
圖4 BP算法仿真
實(shí)驗(yàn)結(jié)果顯示BP算法的均方誤差等于0.015 318,決定系數(shù)為0.935 8,算法運(yùn)行周期為4.668 s。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)相同的條件下,BP算法測(cè)試集預(yù)測(cè)精度和算法周期均劣于ELM算法。
RBF算法和SVR算法模型的結(jié)構(gòu)和ELM有一定區(qū)別,RBF算法精度受徑向基函數(shù)擴(kuò)散速度spread值影響較大,模型spread=2時(shí)預(yù)測(cè)精度較理想。SVR算法需要根據(jù)數(shù)據(jù)規(guī)模及求解問(wèn)題類型設(shè)置相關(guān)參數(shù),這里SVR的核函數(shù)設(shè)為RBF,核函數(shù)gamma值通過(guò)交叉驗(yàn)證法[10](CV)求得gamma=2.8,RBF算法和SVR算法仿真結(jié)果如圖5和圖6所示。
圖5 RBF算法仿真
圖6 SVR算法仿真
表2統(tǒng)計(jì)了上述各算法的均方誤差值Mse、算法決定系數(shù)R2及算法運(yùn)行時(shí)間Runtime。由表2可以看出GA-ELM算法相比ELM算法、BP算法、RBF算法及SVR算法的均方誤差值最小以及預(yù)測(cè)擬合程度最高,但GA-ELM算法運(yùn)行時(shí)間最長(zhǎng)。
表2 算法預(yù)測(cè)結(jié)果統(tǒng)計(jì)
算法MseR2運(yùn)行時(shí)間/sGA-ELMELMBPRBFSVR3.156×10-51.043×10-31.531×10-21.147×10-31.311×10-20.9940.8150.9350.9030.95625.4231.1484.6682.4566.854
綜上分析,BP算法易陷入局部極小點(diǎn)且算法迭代周期長(zhǎng),RBF網(wǎng)絡(luò)輸入層到隱含層的映射的非線性及隱含層到輸出層的映射的線性結(jié)構(gòu),使得RBF網(wǎng)絡(luò)權(quán)值可由線性方程解出,但模型預(yù)測(cè)精度受spread值影響較大,算法參數(shù)選擇較復(fù)雜。SVR算法預(yù)測(cè)精度受模型隱含層單元數(shù)和選取的激活函數(shù)影響較大。ELM算法參數(shù)選取相對(duì)簡(jiǎn)單,實(shí)驗(yàn)表明GA-ELM算法解決回歸問(wèn)題的能力優(yōu)于ELM和BP算法,GA-ELM模型復(fù)雜度低于RBF算法和SVR算法。
本文分析了GA-ELM算法相比傳統(tǒng)算法的優(yōu)勢(shì),GA-ELM算法預(yù)測(cè)精度及穩(wěn)定性相比ELM算法均有提升,實(shí)驗(yàn)結(jié)果也證實(shí)了融合算法在實(shí)際應(yīng)用中的可行性。遺傳算法被廣泛應(yīng)用在機(jī)器學(xué)習(xí)和信號(hào)處理等領(lǐng)域,遺傳算法的特點(diǎn)適合對(duì)大規(guī)模、非線性問(wèn)題優(yōu)化。GA-ELM算法相比粒子濾波算法[11]及GA-SVR算法對(duì)鋰電池健康狀態(tài)[12]的預(yù)測(cè)精度更高。GA-ELM算法的不足在于算法運(yùn)行周期較長(zhǎng),這是由于遺傳算法搜索效率低導(dǎo)致的,如何減小GA-ELM算法的運(yùn)行周期有待進(jìn)一步研究。