趙光財 林名強 戴厚德 武驥 汪玉潔
電池管理系統(Battery management system,BMS)是電動汽車的重要組成部分,在電動汽車電池組的狀態監測、保護和電量均衡等方面起到舉足輕重的作用[1?2].電池健康狀態(State of health,SOH)作為電池系統的關鍵參數之一,其變化直接影響電池組的使用性能、可靠性及安全性.由于鋰離子電池具有能量密度高、穩定性好、使用壽命長等優點,已經被許多可再生能源系統用作能量存儲設備.但其復雜的內部電化學結構、不確定的外部工作環境等因素使得電池的衰退過程極為復雜,即使同一規格型號的電池其衰退過程也不盡相同,這導致鋰電池SOH的準確估計變得十分困難[3].因此,快速、精確地實現鋰電池SOH估計一直是一個重要的研究課題.
電池的SOH表示當前電池的最大可用容量占額定容量的百分比,用來度量電池的退化程度.鋰電池SOH隨著使用會慢慢減小,當SOH降低至額定容量的70%時,即認為鋰電池壽命終止.SOH的定義如下:

上式中:Ccurrent表示鋰電池當前最大可用容量;Cinitial表示鋰電池的額定容量,通常指出廠時的標稱容量[4].
目前已有許多專家學者采用多種不同方法對鋰電池的SOH進行估計.Galeotti等[5]采用電化學阻抗譜研究鋰聚合物(LiPO)電池的老化,通過擬合阻抗譜提取等效電路模型的參數再現電池放電曲線并引入電池歐姆電阻與可用容量的關系,借助證據理論評估電池的SOH.Chen 等[6]基于擴散電容與SOH的相關性,采用遺傳算法以實時采集的電流和電壓來估計包括擴散電容在內的電池模型參數進而估計鋰電池SOH.Mejdoubi等[7]提出混合估計電池荷電狀態(State of charge,SOC)和SOH的思路,使用自適應觀察器估計SOC的同時使用擴展卡爾曼濾波器(Extended Kalman flter,EKF)估計SOH,采用閉環估計策略同時結合李雅普諾夫原理保證穩定性.Liu等[8]將基于數據驅動的高斯過程回歸(Gaussian process regression,GPR)方法應用于SOH估計,采用改進的組合高斯過程泛函回歸(Gaussian process functional regression,GPFR)模型實現了較好的SOH預測.Moura 等[9]提出了一種的基于電化學模型的自適應偏微分方程觀測器來估計SOH的方法,其通過測量電壓和電流來估計該模型的參數.Ng 等[10]認為安時積分法對于具有高充電和高放電效率的鋰電池的SOC估計是有利的.他們提出了一種基于庫倫計數的方法來提高估計精度,并利用SOC來估計SOH.Lievre等[11]利用電池電阻來量化SOH退化情況,通過電池組響應的電壓和電流數據利用電池模型獲得電池電阻,進而估計電池的SOH.EKF被Plett[12]引入到電池組的SOH預測中,通過電池組建模和系統參數識別,繼而用EKF估計SOC,最終估算出SOH.值得一提的是,卡爾曼濾波及其衍生算法在電池SOC、SOH估計中應用十分廣泛.
上述方法在預測SOH方面取得了很大的成功,但在實際應用中也存在部分不足之處.基于電化學阻抗譜的SOH預測需要復雜設備測量電池阻抗譜,內阻法、化學模型法、安時積分法在預測精度上略顯不足,卡爾曼濾波法在當跟蹤目標長時間被遮擋時會導致目標跟蹤丟失.目前很多基于機器學習的方法被用于鋰電池SOH估計.Wu等[13?14]將重要性采樣、數據分組處理方法(Group method of data handling,GMDH)等應用于充放電數據采樣和鋰電池SOH估計,取得了良好的預測效果.Klass等[15]利用電池充放電過程中的電池電流、電壓和溫度等參數建立基于支持向量機的電池模型,并用其對電池剩余使用壽命和瞬時電阻的估計進行預測.循環神經網絡(Recurrent neural network,RNN)被Eddahech 等[16]引入到鋰電池SOH估計中,該方法基于等效電路方法的模型,使用RNN來預測電池性能的退化.Lin 等[17]使用概率神經網絡(Probabilistic neural network,PNN)估計鋰電池的SOH,將放電時瞬時電壓降以及開路電壓作為SOH估計最重要的參數,該方法能實現較高精度的SOH預測.以上方法均可實現較好的預測效果,但SOH估計本質是回歸問題,PNN更適合用在模式分類,用于SOH 估計需要大量訓練樣本.RNN能夠學習SOH隨循環次數衰退的長期依賴,但在短期預測精度上可進一步提高.
本文將馬爾科夫鏈引入鋰電池SOH 估計中并改進為KNN–馬爾科夫修正策略以提升對鋰電池SOH的預測效果,該修正策略可有效減小隨機擾動誤差,增強模型的短期預測能力.此外,采用的貝葉斯正則化神經網絡(Bayesian regularized neural network,BRNN)具有復雜度較低,同時具有良好的泛化性能.為結合兩者優勢,本文建立了貝葉斯正則化神經網絡結合KNN–馬爾科夫修正策略的組合模型實現鋰電池SOH的估計,有效提高了SOH估計的準確性與魯棒性.
本文結構如下,第1節介紹預測方法原理包括貝葉斯正則化網絡和馬爾科夫鏈.第2節介紹所做的工作包括預測模型的建立、特征提取以及KNN–馬爾科夫修正策略.第3節介紹實驗結果,驗證KNN–馬爾科夫策略的有效性及所提出預測模型的準確性.第4節是本文得出的結論.
該神經網絡為基于誤差反向傳播算法的多層前饋神經網絡,其網絡結構如圖1[18]所示,包括輸入層、隱藏層和輸出層三層[19].設神經網絡的訓練樣本D(xi,ti),i={1,2,···,n},n為訓練樣本數,W為網絡參數向量,M為網絡模型,f為Sigmoid激活函數,表達式為t為網絡訓練目標值,神經網絡的性能函數定義為均方差形式:

采用梯度下降法調整網絡權重ωhj=ωhj??ωhj,其中?ωhj=ωhj為第h層的第i個權值,η為網絡學習率.

圖1 多層前饋神經網絡結構示意圖Fig.1 Structure of multilayer feedforward neural network
為防止神經網絡訓練過程中出現網絡過擬合現象,采用正則化算法優化網絡結構,以提高其泛化能力[20].正則化方法對網絡性能函數加入正則項EW:

上式中ω為網絡權值,m為網絡參數總數,目標函數于是變為F(W)=βJW+αEW[21],即:

α和β為正則化系數,β側重于減小訓練誤差,α側重于減小權值規模,貝葉斯正則化算法在兩者之間尋求平衡,貝葉斯正則化神經網絡訓練的訓練過程即尋找最優化的參數使得該目標函數最小化.
假定數據集和初始網絡權值均服從高斯分布,由貝葉斯準則求解最大后驗概率,即極小化網絡訓練目標函數,得到使目標函數最小的WMP處的α和β[22]:

其中神經網絡的有效參數個數為γ=m?2αMP(tr(H?1)),m是神經網絡的參數數量,H是目標函數在WMP處的Hessian矩陣α?2EW+β?2JW.
首先確定神經網絡結構,由于采用正則化算法,隱藏層神經元數量可稍大于最優的隱藏層神經元數量,同時初始化超參數α和β,利用式(5)不斷估計參數α和β的新值;計算H矩陣及有效參數個數γ,γ為網絡中起減少誤差作用參數數量,如果γ接近于m時需適當增加隱藏層神經元個數.在總誤差迭代過程中,當總誤差沒有較大改變時,網絡訓練收斂.
馬爾科夫過程描述了一個具有若干個狀態的系統,其每個狀態都可以根據固定轉移概率傳遞給另一個狀態.馬爾科夫鏈可以看作是某些概率的狀態轉換過程,一個隨機過程過渡到未來過程的概率只取決于當前的狀態[23?24].一步轉移概率矩陣和m步轉移概率矩陣P1和Pm分別為:


基于鋰電池衰減過程復雜的非線性特征,本文采用了數據驅動的思路,對傳感器獲取的電池充電過程中的電壓數據進行特征提取,提取具有魯棒性及多樣性的8個特征用于SOH 估計,這些特征能準確估計電池SOH.為保證SOH估計具有較高的準確度,采用貝葉斯正則化神經網絡進行SOH 估計,該網絡能夠防止訓練過程的過擬合,具有良好的泛化能力,提高SOH估計準確度.同時從訓練數據中學習SOH估計誤差的統計特性并用于預測SOH 估計誤差,采用KNN算法對誤差值進行預處理,劃分狀態空間并計算狀態轉移矩陣,使用馬爾科夫鏈得到預測SOH的經驗估計誤差,并對神經網絡SOH預測值進行誤差修正得到最終SOH估計值.預測模型如圖2所示.
本文采用的實驗數據來自NASA 公開數據集[25]中的一組鋰電池(#5、#6、#7),該組電池在室溫25℃下循環進行充電、放電和阻抗測試.首先在恒流(Constant current,CC)模式下以1.5 A電流充電,直到電池電壓達到4.2 V.然后繼續保持恒壓充電(Constant voltage,CV)模式,直到電荷電流降至20 mA,充電過程中電壓、電流及SOC變化曲線如圖3(a)所示.本文使用電壓數據并結合SOC增量進行特征提取,基于不同SOH電池充電電壓隨時間變化具有的規律性(圖3(b))提取特征用作SOH估計.
首先對傳感器信息進行數據預處理,根據循環次數對數據進行分組并剔除無效值.然后利用統計方法提取該組電池恒流充電過程的電壓信號特征,主要包括電壓均值和電壓增量累積以及其dSOC/dV特性三個方面.
電壓的均值反映了電壓直流分量的大小,用來刻畫電壓幅值的大小.設電池管理系統采集到的離散電壓信號表示為,則電壓均值為[26]:

其次,電壓增量累積反映SOH變化時電壓的波動大小.設M為電壓信號的增量累積,則電壓增量累積公式為[26]:

再次,從電池衰退的物理容量降低的客觀實際出發,即相同電壓的所容納的電量在電池衰退過程中變化明顯,故dSOC/dV可作為電池退化特征.圖3(c)為不同充電循環次數下dSOC/dV曲線變化曲線[27],在SOH差異最明顯的Peak1、Peak2處各取兩個dSOC/dV值作為神經網絡輸入的電池退化特征.為綜合考慮特征多樣性及預測的準確性,采用如圖3(d)所示組合特征作為BRNN的訓練輸入.
神經網絡對鋰電池的SOH進行預測得到的非線性模型存在局部偏差過大,部分區域擬合效果不佳的缺點,因此本實驗采用了KNN–馬爾科夫方法對神經網絡模型預測的SOH進行必要的修正,從而整體上減小模型的預測誤差,提高模型的短期預測精度.
2.3.1 KNN誤差處理
假定估計誤差分布為一維高斯分布,由于隨機性或者數據誤差產生遠離其他樣本點的野點,不能準確反映誤差區間及分布的真實情況,如果直接從訓練數據中劃分馬爾科夫狀態將會對誤差區間估計造成偏差.對于這種情況,本文采用一個基于K近鄰思路來對數據進行預處理.該方法從誤差數據中心取一點開始計算,計算該點與k個近鄰點的距離的之和以及其相鄰點的k個近鄰的距離之和,KNN的距離計算公式為[28]:

圖2 預測模型流程圖Fig.2 Flowchart of the proposed prediction model

圖3 特征提取Fig.3 Feature extraction

其中,X、Y為兩個點,如果相鄰兩誤差點KNN距離之和的比值大于某一閾值則相應調整這兩個誤差點中遠離數據中心點的數據使得該點像數據中心靠攏使其滿足條件,其公式為:


2.3.2 馬爾科夫修正
基于KNN對誤差數據處理,采用馬爾科夫鏈對神經網絡預測結果進行誤差修正.根據訓練數據誤差分布劃分馬爾科夫鏈預測的狀態空間[29],本文將狀態轉換劃分為三個狀態區間,分別為S1[0,其中s為訓練數據的標準差,在劃分馬爾科夫鏈狀態空間前需用式(12)將數據歸一化到[0,1]之間.

對神經網絡的誤差序列進行預測修正.設殘差所處狀態為α(t),如當a<α(t)

其中,F為修正后的預測值;Fg值為貝葉斯正則化神經網絡的預測值;P0為1×3維初始狀態矩陣;Pm為3×3維m步狀態轉移矩陣;Q指3×1維狀態誤差矩陣.
我們通過使用KNN–馬爾科夫修正前后預測值對實測值的擬合程度對比對該修正策略進行實驗驗證,以檢驗該修正策略的有效性.
實驗中隨機選取164次充放電電壓電流特征數據的85%作為訓練數據,15%作為測試數據,SOH真實值作為網絡訓練目標.采用平均絕對誤差(Mean absolute error,MAE)和均方誤差(Mean square error,MSE)來評估算法SOH估計準確度,MAE反映總體預測誤差的大小,MSE用來反映預測值對于真實SOH的偏離程度,MAE和MSE 分別定義為:

劃分狀態空間前使用KNN算法對偏離誤差分布的孤立點進行調整,選取閾值λ=3,從數據中心點開始,向數據兩端分別進行調整,調整的結果是該假定的一維高斯分布的內部誤差數值發生不發生變化或微小變化,僅分布邊緣處的由于誤差或偶然性出現的過大或過小數據向數據中心調整,通過調整可以使學習到的誤差狀態空間更接近真實情況.
由上文狀態劃分公式計算得一個馬爾科夫狀態集,由數據計算得到S1[0,0.32375],S2[0.32375,0.46865],S3[0.46865,1],由公式x=xmin+· (xmax?xmin) 反歸一化得到相對誤差序列的三個狀態分別為S1[?3.236,?1.110],S2[?1.110,?0.114],S3[?0.114,?3.539].并按此劃分規則將各個預測誤差劃分為相應的馬爾科夫狀態,如表1所示.
根據狀態空間劃分,計算得到狀態轉移矩陣,并對BRNN 預測值進行修正.狀態轉移矩陣見式(15),BRNN預測值及馬爾科夫修正后誤差見表2.

表1 BRNN預測值相對誤差及狀態劃分Table 1 BRNN prediction error and state division

表2 BRNN預測誤差及馬爾科夫修正誤差Table 2 BRNN prediction and Markov correction error


圖4 馬爾科夫修正過程修正前后結果對比Fig.4 Comparative results of BRNN and Markov correction
由圖4的(a)、(c)、(e)可以看出,5#、6#、7#電池馬爾科夫修正后的更加接近實測值,局部放大圖顯示組合模型預測準確度好于修正前,驗證了馬爾科夫修正的有效性.圖4的(b)、(d)、(f)為5#、6#、7#電池修正前后的誤差對比,從中可以看出馬爾科夫修正后絕大部分誤差明顯減小,修正誤差效果明顯.
如表3所示,馬爾科夫修正方法在5、6、7 號的電池上驗證均提高了BRNN預測精度,其中5、6、7 號電池的MAE 分別降低了25.5%、17.3%、15.9%,MSE 分別降低了26.5%、22.5%、21.8%.實驗結果表明,本文提出的KNN–馬爾科夫修正方法能夠獲得更加精確和魯棒的估計結果.

表3 KNN–馬爾科夫修正結果Table 3 KNN-Markov correction results
為檢驗KNN–馬爾科夫修正策略與BRNN的組合預測模型(MC-BRNN)的準確度,與集中較為先進的預測方法進行對比,包括GMDH、PNN、RNN,采用的算法參數如下:
BRNN:隱藏層神經元數量為25個,學習率為0.1.
GMDH:最大隱藏層數為4,單層最大神經元個數為20.
PNN:包括輸入層、模式層、競爭層、輸出層,平滑系數為0.1.
RNN:單層LSTM-RNN結構,隱藏層神經元數量為70.
由表4可知,與GMDH、PNN、RNN相比,MC-BRNN能夠使得預測結果的MSE 和MAE平均分別降低約45.8%、70.3%、79.3%和33.3%、48.7%、53.1%.通過該實驗結果對比可以得出,組合模型用到的BRNN 能夠避免數據的過擬合現象,精度較高.
對各算法的訓練時間在CPU為i5-3210M(2.5 GHz),4 GB RAM的計算機上進行統計,得到各算法運行時間如表5所示.
從表5中可以看出,PNN訓練時間最短,GMDH和MC-BRNN 訓練時間差別不大,RNN的訓練時間較長.由于SOH變化緩慢,對算法的實時性要求不高,同時結合表3和表4可以看出,BRNN預測SOH的準確度較高,并可以通過設置較大迭代次數以增加訓練時間為代價來實現最佳的預測,提高估計的準確度.因此采用MC-BRNN在估計SOH方面具有更好的效果.
圖5的(a)、(c)、(e)的局部放大圖顯示MCBRNN與GMDH、PNN、RNN相比在SOH估計精度方面具有較為明顯的優勢,對真實值的擬合度更高.圖5的(b)、(d)、(f)曲線所示,5#、7#電池的MC-BRNN預測的最大預測誤差為3%左右,6#電池的最大預測誤差小于2.5%,誤差大部分集中分布在±1%的范圍內.綜合以上可知,MCBRNN組合預測模型相對于GMDH、PNN、RNN對鋰電池SOH的預測性能更好.

表4 各算法準確度對比Table 4 Comparison of accuracy of each algorithm

表5 各算法的時間復雜度對比(s)Table 5 Comparison of time complexity of each algorithm (s)


圖5 MC-BRNN、GMDH、PNN、RNN預測結果對比Fig.5 Comparative results of MC-BRNN,GMDH,PNN and RNN
本文建立了基于貝葉斯正則化神經網絡與KNN–馬爾科夫鏈的組合預測模型,該模型結合了貝葉斯正則化算法在能夠有效避免過擬合的優點與KNN–馬爾科夫修正方法在系統短時預測方面的優勢,對鋰電池SOH具有較好的預測效果.同時,該組合預測模型對鋰電池SOH 的平均預測誤差小于1%,能準確估計SOH.KNN–馬爾科夫鏈修正方法可顯著提高神經網絡的估計精度,該修正方法基于SOH退化的客觀規律性,可提高神經網絡15%~30%的估計精度,該方法也為其他SOH 估計方法提供了一種誤差修正思路.最后,本文將組合模型與GMDH、PNN、RNN進行了對比實驗,經實驗驗證,該組合模型的預測精度相比以上兩種方法分別提高了33.3%、57.2%和53.1%,同時具有良好的魯棒性.