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