陳 穎,黃 凱,丁 恒,田海建
(1.省部共建電工裝備可靠性與智能化國家重點實驗室(河北工業(yè)大學),天津 300130;2.河北省電磁場與電器可靠性重點實驗室(河北工業(yè)大學),天津 300130)
化石能源供需矛盾日漸突出,環(huán)境污染日益嚴重,人們迫切尋找新能源以解決能源問題的困擾[1]。鋰離子電池能量密度大、功率高、污染性低,是一種發(fā)展前景廣闊的新能源電池,目前已廣泛應用于新能源交通、儲能等領域[2-4]。鋰離子電池荷電狀態(tài)SOC(state of charge)的精準預測對提高電池的利用效率、保障電池安全可靠運行具有指導意義[5-6]。目前SOC 常用定義公式為SOC=或SOC=或SOC=,其中:Cpre為電池當前剩余容量;Cmax為電池最大放出容量;CN為電池額定容量;i=1、2 分別對應電池最大充、放電容量。SOC 值不能直接測量,需要利用電壓、電流、溫度等物理量間接估計[7-8]。目前常用算法包括原理法、模型法及基于表征參數(shù)的方法。
原理法包括安時積分法、內阻法和開路電壓法等,不需構建模型[9-10],便于實現(xiàn),但安時積分法開環(huán)控制估計誤差大,內阻法受溫度和電池老化程度等影響極大,開路電壓法僅適用于離線狀態(tài)下的SOC估計,且開路電壓遲滯現(xiàn)象會增大SOC 估計誤差[11]。模型法估計精度高,常用的有卡爾曼濾波法和滑模觀測器法[12-15]。模型算法雖然在一定程度上提高了鋰離子電池SOC 估計精度,但電池模型的構建是一個復雜的過程,模型的高精確度往往會提高相應的建模復雜度。在電池的不同循環(huán)壽命下,電池容量或其余物理量會發(fā)生改變,尤其是鋰離子電池的開路電壓和SOC 的關系不明確,需重復做實驗測定電池的參數(shù),從而不斷修正模型,后續(xù)的SOC 估計難度、復雜度也會相應增加。
基于數(shù)據(jù)驅動的方法不需建模,估計精度高[16-18]。這類算法的典型代表是BP 神經網絡算法,但是僅利用單一的BP 神經網絡對SOC 估計,難以滿足高精度估計要求。造成誤差的原因是多方面的,如實驗過程誤差因素,通過嚴格把控外部干擾因素可以降低誤差,但是BP 神經網絡的初始權值及閾值對后續(xù)網絡的預測精度影響較大,通過算法優(yōu)化可提高后續(xù)預測精度。常用優(yōu)化BP 網絡的算法包括粒子群優(yōu)化算法PSO(particle swarm optimization)算法、遺傳算法GA(genetic algorithm)等[19]。Yin Xing 等[20]采用PSO 優(yōu)化BP 神經網絡來預測CO2熱泵的最佳排放壓力,與傳統(tǒng)模型相比,預測相對誤差由11.1%~44.9%的誤差范圍降低到1.6%。Zhu Chonghao 等[21]分別利用GA 及PSO 優(yōu)化BP 神經網絡預測地區(qū)滑坡風險,結果證明GA-BP 網絡的評估效果更佳。思維進化算法MEA(mind evolutionary algorithm)模擬生物進化的思想,提出的“趨同”及“異化”操作保證了算法的快速收斂和全局搜索性,可用于優(yōu)化BP 神經網絡的初始參數(shù),結合網絡稱為MEABP 神經網絡,可提高算法收斂速度,同時避免BP 網絡局部極值問題[22-24]。趨同操作直接影響算法性能,思維進化算法產生子種群的規(guī)模及范圍是定值,趨同效率較低。若在產生子種群及趨同過程加入子種群自適應調整策略,使子種群規(guī)模和搜索范圍隨個體優(yōu)劣程度動態(tài)變化,可提高種群的進化效率與算法準確度。
基于上述分析,本文提出子種群自適應調整策略改進思維進化算法,并利用改進算法優(yōu)化BP 神經網絡對鋰離子電池SOC 進行精準估計。首先介紹思維進化算法原理,提出基于思維進化算法的子種群自適應趨同策略,改進算法稱為子種群自適應思維進化算法SAMEA(subpopulation adaptive mind evolutionary algorithm),利用SAMEA 優(yōu)化BP 神經網絡初始權值及閾值,結合網絡稱為SAMEA-BP神經網絡。依據(jù)鋰離子電池充放電實驗數(shù)據(jù),利用不同網絡分別估計電池SOC,提出多個評價指標,分析不同網絡的預測性能。改變實驗工況測試神經網絡的工況魯棒性??紤]溫度影響,訓練多溫度下的網絡用于SOC 估計,結果表明所提出改進方法對SOC 估計的精度高,溫度和工況魯棒性好。
思維進化算法是孫承意等[25]在1998 年提出的一種新型進化算法。該算法提出“趨同”及“異化”操作,保證算法在全局范圍內搜索問題的最優(yōu)解[26]。思維進化算法系統(tǒng)框架如圖1 所示。
圖1 思維進化算法系統(tǒng)框架Fig.1 System framework of mind evolutionary algorithm
環(huán)境包含公告板及若干群體,其中公告板為子種群之間和個體之間提供交流,板上包含了各子種群及個體的序號、動作、得分信息。由個體得分篩選一定數(shù)量的優(yōu)勝個體和臨時個體,以其為中心形成優(yōu)勝及臨時子種群,根據(jù)子種群的趨同和異化操作尋找最優(yōu)解。思維進化算法實現(xiàn)步驟如下。
步驟1種群初始化。隨機在解空間內形成一個規(guī)模為N 的種群,以目標函數(shù)F(x)預測輸出的倒數(shù)作為得分函數(shù),對得分結果排序得到若干優(yōu)勝個體及臨時個體。設得分函數(shù)f 為
若求解函數(shù)最大值問題,首先將其轉換為求解最小值的函數(shù)作為目標函數(shù)。
步驟2以優(yōu)勝個體和臨時個體為中心,隨機在個體周圍以服從正態(tài)分布產生新個體,得到優(yōu)勝子種群和臨時子種群。
步驟3子種群趨同。以子種群內最優(yōu)個體為中心隨機按正態(tài)分布產生新個體并計算得分,依據(jù)得分結果選擇新的最優(yōu)個體,重復以上過程直至分數(shù)不再增長,認為種群達到成熟。記最優(yōu)個體得分為子種群得分。
步驟4子種群異化。子種群成熟后,若臨時子種群得分高于優(yōu)勝子種群,將兩個種群互換,始終使優(yōu)勝子種群的得分保持最高,種群內重新搜索形成新的臨時子種群。
步驟5重復步驟3 和4,直至種群得分不再增加,迭代結束,輸出最優(yōu)個體。
2.1.1 子種群規(guī)模自適應策略
傳統(tǒng)MEA 產生子種群的原則是以優(yōu)勝個體及臨時個體為中心,依據(jù)正態(tài)分布產生一定相同數(shù)量的個體,得到規(guī)模相同的優(yōu)勝子種群及臨時子種群。但是優(yōu)勝者生存概率大,相較于劣者可以產生更多接近最優(yōu)值的子代,所以在優(yōu)勝個體周圍散布較多個體,使優(yōu)勝種群規(guī)模更大,符合人類進化原理。以此為基本思想,某個體周圍散布個體數(shù)量與得分成正比,隨著不斷進化迭代,子代更多地在優(yōu)勝者之間產生,個體集中在優(yōu)勝者周圍,以此提高尋優(yōu)速率。
(1)計算種群內個體得分,按得分排序得到M個優(yōu)勝個體x0,x1,…,xM-1及T 個臨時個體xM,xM+1,…,xM+T-1;
(2)設個體xi分數(shù)為fi,以xi為中心,按正態(tài)分布在其周圍產生Ni個個體,其中Ni表達式為
式中:M、T 分別為優(yōu)勝子種群及臨時子種群的規(guī)模;N 為種群規(guī)模;ceil 為向上取整函數(shù)。Ni的下限設為5。
2.1.2 方差自適應調整策略
子種群在搜索空間內按照子種群規(guī)模自適應策略隨機產生Ni個個體,個體產生遵循正態(tài)分布,若方差過大則不利于精細搜索,若方差選擇過小則可能會損失最優(yōu)解。因此,在優(yōu)勝者周圍進行精細搜索,在臨時個體周圍進行廣泛搜索,既保證了搜索效率又保證了個體的多樣性。記種群中最優(yōu)個體得分為fmax,優(yōu)勝個體和臨時個體得分中位數(shù)記為fmid,臨時個體最低得分記為fmin,則有
則方差記為
利用fmid區(qū)分優(yōu)勝個體及臨時個體,當個體得分較高,減小方差,在優(yōu)勝者周邊小范圍搜索;個體得分較低,方差增大,在臨時個體周邊擴大范圍搜索。個體的產生始終遵循得分越高方差越小的原則。為了防止個別臨時個體分數(shù)過低,系數(shù)α 上限設置為1.5。
為了驗證所提出SAMEA 的可用性,利用以下3 個公測函數(shù)測試算法的性能:
標準MEA 與SAMEA 仿真結果對比見表2。由表2 可知,SAMEA 算法收斂到最優(yōu)值的次數(shù)多于MEA 算法,且平均誤差更小??蓪⒋烁倪M算法用于對BP 神經網絡初始權值及閾值的優(yōu)化。
表2 MEA 與SAMEA 仿真結果對比Tab.2 Comparison of simulation results between MEA and SAMEA
利用SAMEA 找到最優(yōu)個體,由映射關系對應BP 神經網絡的參數(shù),可以得到最優(yōu)的初始權值及閾值,記此網絡為SAMEA-BP 神經網絡,該網絡可以解決非線性復雜問題,鋰離子電池的SOC 與電池端電壓、電流具有一定的非線性關系,SAMEA-BP 神經網絡預測鋰離子電池SOC 流程如圖2 所示。
圖2 SAMEA-BP 神經網絡預測鋰離子電池SOC 流程Fig.2 Flow chart of SAMEA-BP neural network predicting SOC of lithium-ion battery
SAMEA-BP 神經網絡預測SOC 實現(xiàn)步驟如下。
(1)根據(jù)鋰離子電池實驗數(shù)據(jù)確定BP 神經網絡結構,由結構確定需要求解的參數(shù),解空間對應于編碼空間,其中編碼長度S 為
式中,S1、S2和S3分別為BP 神經網絡的輸入層、隱含層及輸出層節(jié)點數(shù)。選用3 層神經網絡,隱含層層數(shù)設為1。以電壓、電流為輸入,SOC 為輸出,則S1=2,S3=1,5 次實驗驗證S2=5 時網絡誤差較小,選擇隱含層節(jié)點數(shù)S2=5。
(2)定義初始種群大小、迭代次數(shù)等因子。
(3)以輸出均方誤差的倒數(shù)作為得分函數(shù),由得分結果得到優(yōu)勝個體及臨時個體,結合子種群自適應策略,形成規(guī)模不同的子種群,子種群內部自適應趨同,子種群間異化。其中得分函數(shù)f 為
式中:Tk為網絡實際輸出值;Ok為期望輸出值;Nt為訓練數(shù)據(jù)數(shù)目。
(4)經過不斷迭代后輸出最優(yōu)個體,個體編碼對應于BP 神經網絡權值及閾值,對最優(yōu)個體解碼即為BP 神經網絡的最優(yōu)初始權值及閾值。某次利用MEA 及SAMEA 優(yōu)化BP 神經網絡得到最優(yōu)的初始權值及閾值,見表3。
表3 MEA-BP 及SAMEA-BP 神經網絡初始權值及閾值Tab.3 Initial weights and thresholds of MEA-BP and SAMEA-BP neural networks
(5)鋰離子電池訓練集數(shù)據(jù)訓練網絡,驗證集數(shù)據(jù)完成對SOC 的仿真預測。
以均方誤差MSE(mean square error)、決定系數(shù)(coefficient of determination)R2、平均絕對誤差MAE(mean absolute error)和平均絕對誤差百分比MAPE(mean absolute percentage error)作為網絡的評價指標,計算式分別為
將以上4 種指標統(tǒng)一考慮,提出一種綜合評價指標CPI(comprehensive performance indicator),即
式中:Pi分別為5 次實驗下MSE、R2、MAE 及MAPE的平均值;αi為每個指標對應的系數(shù)。SOC 為百分數(shù),各指標數(shù)量級相差較大,為避免各指標受百分數(shù)形式的影響,對各指標數(shù)值作一定的縮放來保證CPI 綜合考慮每種指標的影響,設置系數(shù)αi為
根據(jù)式(11)、式(12)可知,綜合評價指標值越小,網絡預測效果越好。
3.3.1 DST 工況驗證結果及分析
所用實驗數(shù)據(jù)來自馬里蘭大學CALCE 中心的電池開源實驗數(shù)據(jù)集,利用Arbin BT2000 電池測試系統(tǒng)對鋰離子電池進行不同工況下的充放電實驗,以時間間隔1 s 采集數(shù)據(jù)信息。實驗所用電池為INR 18650-20R 鋰離子電池,電池額定電壓為3.6 V,額定容量為2 000 mA·h,充電截止電壓為4.2 V,放電截止電壓為2.5 V。
實驗采集數(shù)據(jù)包括電池的端電壓、電流及采樣時間等。首先測量電池的初始容量得到初始SOC,本次實驗電池的初始SOC 為80%。結合采樣時間及電流,利用安時積分法計算出當前SOC,即
式中:SOC(t)為t 時刻的SOC;SOC(t0)為初始值;Cn為電池額定容量;η 為庫倫效率,此處設為1;I(t)為t 時刻的電流,放電電流為正,充電電流為負。
鋰離子電池在動態(tài)應力測試DST(dynamic stress test)工況下進行充放電實驗,該工況由美國先進電池協(xié)會設計,用于模擬電動汽車的實際運行情況,是電池常用且具有代表性的實驗工況之一。圖3 為鋰離子電池在DST 工況下充放電電流、電壓曲線。
圖3 鋰離子電池在DST 工況下充放電電流、電壓曲線Fig.3 Charging and discharging current and voltage curves of lithium-ion battery under DST condition
對實驗數(shù)據(jù)隨機排序,選擇訓練數(shù)據(jù)1 000組,驗證數(shù)據(jù)300 組,BP、MEA-BP 及SAMEA-BP 神經網絡估計結果對比如圖4 所示??梢钥闯?,BP 神經網絡對SOC 的預測誤差大多保持在7%以內,在某些樣本點,誤差接近9%,誤差值過大。采用MEA、SAMEA 對BP 神經網絡優(yōu)化后,估計誤差分別降低至5%及3%以內,輸出SOC 與實際值更加接近。
圖4 BP、MEA-BP 及SAMEA-BP 神經網絡估計結果對比Fig.4 Comparison of estimation result among BP,MEA-BP and SAMEA-BP neural networks
BP、MEA-BP 及SAMEA-BP 神經網絡的性能比較見表4??芍肕EA 及SAMEA 改進后,網絡預測效果得到了有效提高,相對于MEA-BP 神經網絡來說,SAMEA-BP 神經網絡的MSE、MAE、MAPE都得到明顯降低,且決定系數(shù)R2接近1,同時,SAMEA-BP 神經網絡的CPI 更小,綜合各方面指標可知,本文提出的估計策略相對于傳統(tǒng)BP 神經網絡及MEA-BP 神經網絡的預測效果有了明顯的改進。
表4 BP、MEA-BP 及SAMEA-BP 神經網絡的性能比較Tab.4 Comparison of performance among BP,MEABP and SAMEA-BP neural networks
3.3.2 BJDST 工況驗證結果及分析
鋰離子電池的工況并不是單一的,工況魯棒性對于現(xiàn)實估計電池SOC 具有十分重要的意義,良好的魯棒性可以直接將訓練好的網絡用于變工況的SOC 估計,達到實時估計SOC 的目的。
為評估神經網絡估計SOC 的魯棒性,選擇北京動態(tài)應力測試BJDST(Beijing dynamic stress test)工況的實驗數(shù)據(jù),該工況反映了北京奧運會純電動公交車90 路實際運行特點,可用于本次的工況魯棒性驗證。實驗數(shù)據(jù)同樣來自馬里蘭大學CALCE中心的電池開源實驗數(shù)據(jù)集,利用DST 工況實驗數(shù)據(jù)訓練網絡,以BJDST 工況實驗數(shù)據(jù)驗證網絡。實驗所用鋰離子電池的初始SOC 均為80%。圖5及圖6 分別為BJDST 工況下電流、電壓曲線及網絡預測結果。
圖5 鋰離子電池在BJDST 工況下充放電電流、電壓曲線Fig.5 Curves of charging and discharging current and voltage of lithium-ion battery under BJDST condition
圖6 DST 工況訓練BJDST 工況驗證的結果Fig.6 Verification results under BJDST condition with training under DST condition
當驗證工況改變后,鋰離子電池SOC 估計誤差增大,SAMEA-BP 神經網絡在變工況條件下顯示出良好的估計效果,最大估計誤差不超過5%,在多種網絡中估計性能最佳。表5 為變工況下的SOC估計誤差。
表5 變工況下的SOC 估計誤差Tab.5 SOC estimation errors under variable working conditions
3.3.3 不同溫度下SOC 預測結果及分析
溫度是影響鋰離子電池SOC 估計的重要因素之一,電池工作溫度并非是一成不變的,電池充放電過程或所處環(huán)境都有可能會使電池處于變溫條件下,本節(jié)利用變化溫度下的實驗數(shù)據(jù)訓練網絡。電池在0、25、45 ℃下充放電,收集實驗所得數(shù)據(jù)訓練網絡,分別利用0、25、45 ℃下的數(shù)據(jù)驗證多溫度條件下訓練的網絡,圖7 所示為BJDST 工況所有溫度情況下的預測誤差最大值及平均絕對誤差值。
圖7 不同溫度下SOC 估計誤差值Fig.7 SOC estimation errors at different temperatures
在一定溫度范圍內,溫度越高,電池充放電效率越高,SOC 估計誤差降低,在何種溫度下,SAMEA-BP神經網絡估計的SOC 誤差最大值、平均絕對誤差值均最低。
3.3.4 不同電池的SOC 估計結果分析
選擇NASA 電池數(shù)據(jù)庫下載的數(shù)據(jù),每組4 個鋰離子電池(5,6,7,18 號)通過電池測試系統(tǒng)完成充放電循環(huán)實驗及電化學阻抗譜測試實驗。考慮到溫度變化較大,所以在各神經網絡輸入中加入溫度參數(shù)。以鋰離子電池端電壓、電流、電池表面溫度作為網絡輸入,安時積分法計算的SOC 作為網絡輸出,確定BP 神經網絡為3 層網絡結構,輸入層、隱含層和輸出層節(jié)點數(shù)分別為3、5、1。
以5、6、7 號電池數(shù)據(jù)作為訓練數(shù)據(jù),18 號電池數(shù)據(jù)作為驗證數(shù)據(jù),選擇訓練數(shù)據(jù)400 組,驗證數(shù)據(jù)100 組,不同神經網絡的SOC 估計結果如圖8所示,BP、MEA-BP 及SAMEA-BP 神經網絡的性能比較見表6。根據(jù)圖8 可以看出,利用同一類型多型號電池數(shù)據(jù)訓練網絡,另外型號電池數(shù)據(jù)驗證網絡,SAMEA-BP 神經網絡的SOC 估計誤差最小,低于4%。由表6 可知,MEA-BP 神經網絡較BP 神經網絡的指標值更優(yōu),SAMEA-BP 神經網絡的各項評價指標及綜合指標均為最優(yōu)。
圖8 BP、MEA-BP 及SAMEA-BP 神經網絡估計結果對比Fig.8 Comparison of estimation results among BP,MEA-BP and SAMEA-BP neural networks
表6 BP、MEA-BP 及SAMEA-BP 神經網絡的性能比較Tab.6 Comparison of performance among BP,MEABP and SAMEA-BP neural networks
本文提出子種群自適應趨同策略改進思維進化算法,提高了MEA 的尋優(yōu)精度,利用公測函數(shù)驗證了SAMEA 的實用性。將SAMEA 與BP 聯(lián)合使用,構建出SAMEA-BP 神經網絡,通過鋰離子電池在DST 工況下的充放電實驗數(shù)據(jù),分別利用BP、MEA-BP 和SAMEA-BP 神經網絡估計鋰離子電池SOC,得出結論:利用SAMEA 改進后的網絡各項誤差指標均有所下降,預測精度更高。利用BJDST 工況下的實驗數(shù)據(jù)驗證網絡,SAMEA-BP 神經網絡的SOC 估計誤差低于5%,工況魯棒性較強。利用變化溫度下的BJDST 工況實驗數(shù)據(jù)訓練網絡,分別在各溫度下驗證網絡性能,SAMEA-BP 神經網絡的估計誤差最小。利用同類型單體電池數(shù)據(jù)訓練網絡,其他單體電池數(shù)據(jù)驗證網絡,SAMEA-BP 神經網絡的SOC 估計效果最優(yōu)。
(1)提出SAMEA,利用公測函數(shù)驗證算法對MEA 具有改進效果。
(2)通過SAMEA 優(yōu)化BP 神經網絡,采用不同評價指標對BP、MEA-BP 及SAMEA-BP 神經網絡估計SOC 的結果對比分析。結果表明:MEA-BP 預測誤差低于5%,SAMEA-BP 預測誤差保持在3%以內,各方面指標均優(yōu)于BP 網絡,且SAMEA-BP 預測效果更好。
(3)改變驗證工況,SAMEA-BP 神經網絡工況魯棒性好,可用于變工況的SOC 估計。
(4)一組多溫度訓練下的SAMEA-BP 神經網絡即可用于各溫度下的SOC 估計,最大估計誤差不超過6%。
(5)SAMEA-BP 神經網絡對相同類型的單體電池具有通用性,可用于變電池的SOC 估計。
改進網絡在一定程度上提高了單體鋰離子電池SOC 預測精度,但工作尚有待深入研究的問題,后續(xù)將對電池組進行進一步的研究,驗證SAMEABP 神經網絡對電池組的SOC 估計精度。