王 橋,魏 孟,葉 敏,李嘉波,徐信芯
(長安大學(xué)工程機(jī)械學(xué)院公路養(yǎng)護(hù)裝備國家工程實(shí)驗(yàn)室,陜西 西安710064)
隨著全球化石能源的枯竭,新能源技術(shù)受到了越來越多的關(guān)注,電動(dòng)車輛被認(rèn)為是未來車輛的趨勢。鋰離子電池作為電動(dòng)車輛的核心“三電系統(tǒng)”之一,具有能量密度高、無記憶效應(yīng)、循環(huán)壽命長、自放電率低等優(yōu)點(diǎn)[1]。在現(xiàn)有的電動(dòng)車輛技術(shù)中,可靠的電池管理系統(tǒng)(battery management system,BMS)仍然是一個(gè)設(shè)計(jì)難題。SOC(state of charge)作為BMS的基本組成之一,反映了可用容量與標(biāo)準(zhǔn)容量的比率,是有效管理電池能量利用和防止電池過度充電的前提[2]。動(dòng)力電池內(nèi)部復(fù)雜的化學(xué)反應(yīng)導(dǎo)致其建模困難,同時(shí)由于車輛行駛過程中的緊急制動(dòng)、溫度突變以及外界干擾,使得電池的實(shí)際采集數(shù)據(jù)表現(xiàn)強(qiáng)耦合非線性特征,導(dǎo)致精確的SOC估計(jì)十分困難。因此,精確的SOC估計(jì)具有重要的意義。
目前,鋰離子電池SOC 估計(jì)方法主要分為4類:安時(shí)積分法、開路電壓法、物理模型法和數(shù)據(jù)驅(qū)動(dòng)法[3]。安時(shí)積分法是迄今為止SOC估計(jì)中使用最廣泛的方法,它簡單集成了電池運(yùn)行期間的充放電電流,其精度主要依賴于精確的電流測量,然而,在電流測量時(shí)存在由SOC 估計(jì)漂移產(chǎn)生的噪聲誤差,并會(huì)產(chǎn)生誤差累計(jì)效應(yīng)[3]。開路電壓法簡單、成本低、實(shí)時(shí)性好,但準(zhǔn)確測量開路電壓需要很長時(shí)間,因此一般在實(shí)驗(yàn)室條件下應(yīng)用[4]。物理模型法主要包括一系列卡爾曼濾波的衍生方法,卡爾曼濾波法是一種最優(yōu)化的數(shù)據(jù)處理算法,其衍生算法包括擴(kuò)展卡爾曼濾波、無跡卡爾曼濾波、自適應(yīng)卡爾曼濾波和粒子濾波等??柭鼮V波法的精度依賴于精確有效的電池模型,但精確的電池模型很難獲得[5-9]。數(shù)據(jù)驅(qū)動(dòng)法是基于機(jī)器學(xué)習(xí)策略的SOC 估計(jì)方法,包括神經(jīng)網(wǎng)絡(luò)法(NN)、深度學(xué)習(xí)法(DL)、支持向量機(jī)和模糊邏輯法。其中,神經(jīng)網(wǎng)絡(luò)法應(yīng)用最為廣泛,這種方法無需了解電池內(nèi)部結(jié)構(gòu),可以直接基于大量的訓(xùn)練數(shù)據(jù)對(duì)電池進(jìn)行建模[10]。目前,常見的機(jī)器學(xué)習(xí)法包括徑向基神經(jīng)網(wǎng)絡(luò)(RBFNN)和前饋神經(jīng)網(wǎng)絡(luò)(BPNN),由于結(jié)構(gòu)簡單,避免了復(fù)雜的等效電路模型而得到了廣泛的應(yīng)用,但前饋神經(jīng)網(wǎng)絡(luò)采用梯度下降的方法,存在訓(xùn)練速度慢,容易陷入局部極小點(diǎn),無法達(dá)到全局最小等缺點(diǎn),且這些方法的參數(shù)選擇通常采用試錯(cuò)法或二分法,效率低下,浪費(fèi)了大量的時(shí)間和人力[11-14]。隨著機(jī)器學(xué)習(xí)方法的進(jìn)一步發(fā)展,極限學(xué)習(xí)機(jī)(ELM)可以解決電池系統(tǒng)難建模、訓(xùn)練速度慢的問題,ELM在訓(xùn)練過程中隨機(jī)產(chǎn)生輸入層與隱含層間的連接權(quán)值及隱含層神經(jīng)元的閾值,與傳統(tǒng)的訓(xùn)練方法相比,具有訓(xùn)練速度快、泛化性能較好等特點(diǎn)[15]。但ELM需要確定最優(yōu)神經(jīng)元參數(shù)才能達(dá)到最優(yōu)估計(jì)效果[16]。因此,提出了一種基于灰狼算法(gray wolf optimizer,GWO)優(yōu)化極限學(xué)習(xí)機(jī)的SOC 估計(jì)方法,通過選擇合適的激活函數(shù)、訓(xùn)練算法和最優(yōu)化隱含層神經(jīng)元數(shù)量,實(shí)現(xiàn)了精確的SOC 估計(jì)。SOC 估計(jì)過程收斂速度快、估計(jì)精度高且魯棒性能好。
極限學(xué)習(xí)機(jī)適用于復(fù)雜非線性系統(tǒng)的輸出預(yù)測問題,具有學(xué)習(xí)速度快、泛化性能好、可擴(kuò)展性好、計(jì)算復(fù)雜度低等優(yōu)勢。極限學(xué)習(xí)機(jī)采用三層結(jié)構(gòu),由輸入層、隱含層和輸出層組成,運(yùn)行過程中隨機(jī)產(chǎn)生輸入層與隱含層之間的連接權(quán)值及隱含層神經(jīng)元的閾值。其結(jié)構(gòu)如圖1所示,運(yùn)行步驟如下。
圖1 單隱含層ELM模型結(jié)構(gòu)Fig.1 Single layer ELM model structure
首先,隨機(jī)分配參數(shù)。設(shè)隱含層與輸入層和輸出層的連接權(quán)值分別為ωi=[ωi1ωi2…ωin]T和βi=[βi1βi2…βin]T,設(shè)隱含層神經(jīng)元的閾值b=[b1,b2,…,bi]T。其中,i表示隱含層神經(jīng)元的數(shù)量。
設(shè)具有Q個(gè)樣本的訓(xùn)練集輸入矩陣X和Y分別為X=[Xi1Xi2… XiQ]T、Y=[Yi1Yi2… YiQ]T。設(shè)隱含層神經(jīng)元的激活函數(shù)為f(x),則根據(jù)ELM模型結(jié)構(gòu)圖可得,網(wǎng)絡(luò)的輸出T為T=[t1,t2,…,tQ]m×Q,其中
式中,ωj=[ωj1,ωj2,…,ωjm],xj=[x1j, x2j,…, xnj]T。式(1)可表示為
式中,T'為矩陣T 的轉(zhuǎn)置,H 為神經(jīng)網(wǎng)絡(luò)的隱含層輸出矩陣,具體形式如下
灰狼優(yōu)化算法是受大灰狼捕食策略的啟發(fā),于2014 年提出的一種元啟發(fā)式算法,主要模擬了搜索獵物、包圍獵物和攻擊獵物[17]。
灰狼算法根據(jù)實(shí)際中灰狼種群的社會(huì)等級(jí)制,將解分為四類,分別是:最優(yōu)解α,第二優(yōu)解β,第三優(yōu)解δ 和剩余其他解ω。在灰狼優(yōu)化算法中,通過α、β和δ來優(yōu)化,ω作為輔助參數(shù)。灰狼在捕食時(shí)會(huì)將獵物包圍,這種行為使用下式來表達(dá)
式中,t 表示當(dāng)前迭代次數(shù);A 和C 為系數(shù)向量;Xp(t)是獵物的位置向量;X是灰狼的位置向量。其中A和C的計(jì)算如下
式中,a 的各個(gè)分量在迭代過程中線性地從2減少到0,r1和r2為[0,1]之間的隨機(jī)向量?;依前鼑C物之后,會(huì)開始狩獵。根據(jù)當(dāng)前獲得的范圍,確定3個(gè)優(yōu)解,并迫使其他搜索代理根據(jù)最佳搜索代理的位置更新其位置。對(duì)此,提出以下公式
根據(jù)α、β 和δ 的位置,對(duì)代理位置進(jìn)行更新,如圖2所示。
圖2 灰狼算法中位置更新Fig.2 Location update diagram of gray wolf optimizer
為了對(duì)接近獵物進(jìn)行數(shù)學(xué)變換,需要不斷地降低a 的值,A 的波動(dòng)范圍也會(huì)隨之降低。當(dāng)A∈[-1,1]時(shí),搜索代理的下一個(gè)位置可以是當(dāng)前代理位置和獵物位置之間的任意位置。當(dāng)|A|>1時(shí),灰狼離開獵物,尋找更合適的獵物,C的取值范圍為[0,2],為獵物提供的隨機(jī)權(quán)重,利于算法探索和避免局部最優(yōu)?;依莾?yōu)化算法的流程圖如圖3所示。
首先從建立實(shí)驗(yàn)平臺(tái)開始,隨后收集數(shù)據(jù)。20 ℃時(shí),在EVT500-500 儀器測試系統(tǒng)、Fluke 數(shù)據(jù)記錄儀、恒溫箱、上位機(jī)及相關(guān)設(shè)備下進(jìn)行數(shù)據(jù)采集。在恒流恒壓充放電循環(huán)(constant current &constant voltage,CCCV)工況下,數(shù)據(jù)采集采用單個(gè)18650 鋰離子電池,在動(dòng)態(tài)應(yīng)力測試(dynamic stress test,DST)工況下采用12節(jié)18650鋰離子電池串聯(lián)組成的電池包,如圖4、圖5所示。
圖3 灰狼算法流程Fig.3 Flow chart of grey wolf algorithm
選取4500 組數(shù)據(jù)作為模型訓(xùn)練樣本,500 組用于模型測試。在模型訓(xùn)練之前,先對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行歸一化處理?;诨依撬惴ǖ臉O限學(xué)習(xí)機(jī)用于SOC的估計(jì)流程如6所示,主要分為3個(gè)階段。階段1進(jìn)行了原始數(shù)據(jù)的采集工作并對(duì)其進(jìn)行了歸一化處理;階段2 確定了優(yōu)化基準(zhǔn),并實(shí)現(xiàn)了優(yōu)化;第3階段通過不同工況的測試數(shù)據(jù)對(duì)模型進(jìn)行了驗(yàn)證,并通過與其他方法的對(duì)比證明了所提方法的優(yōu)越性。
為了評(píng)價(jià)優(yōu)化模型的估計(jì)性能,采用了均方根誤差(RMSE)、平均絕對(duì)誤差(MAE),其計(jì)算公式如下
圖4 CCCV工況下的數(shù)據(jù)采集Fig.4 Data collection under CCCV conditions
圖5 DST工況下的數(shù)據(jù)采集Fig.5 Data collection under DST conditions
圖6 基于灰狼算法優(yōu)化極限學(xué)習(xí)機(jī)用于SOC的估計(jì)流程Fig.6 Flowchart of extreme learning machine based on gray wolf algorithm used in SOC estimation
式中,Ie為SOC 估計(jì)值;Ia為SOC 實(shí)際值;n為測試次數(shù)。
利用灰狼算法,選擇30個(gè)種群規(guī)模,200次迭代來實(shí)現(xiàn)神經(jīng)元數(shù)量的優(yōu)化。如圖7所示,神經(jīng)元數(shù)量小于25 時(shí),誤差較大且波動(dòng)較大,神經(jīng)元數(shù)量大于50 之后,誤差曲線波動(dòng)平緩且誤差較小?;诨依撬惴▋?yōu)化極限學(xué)習(xí)機(jī)在SOC 估計(jì)中獲得了較好的結(jié)果,得到的RMSE誤差較小,證明了其優(yōu)越性。
圖7 CCCV與DST工況下的模型參數(shù)優(yōu)化曲線Fig.7 Model parameter optimization curves under CCCV and DST conditions
分別在CCCV 與DST 工況下,選取4500 組數(shù)據(jù)作為模型訓(xùn)練樣本,500組用于模型測試。基于灰狼算法的極限學(xué)習(xí)機(jī)對(duì)SOC 進(jìn)行估計(jì),估計(jì)曲線和誤差曲線如圖8、圖9所示。在CCCV工況下,RMSE 為1.49%,MAE 為1.06%,運(yùn)行時(shí)間為4.054 s;在DST 工況下,RMSE 為1.14%,MAE為0.79%,運(yùn)行時(shí)間為4.064 s,見表1。
通過與常用方法BPNN-PSO 與ELM 分別從RMSE、MAE 和運(yùn)行時(shí)間三個(gè)維度進(jìn)行比較分析,進(jìn)一步說明了所提方法的快速性與準(zhǔn)確性。由于采集的鋰離子實(shí)際數(shù)據(jù)存在非線性、不穩(wěn)定性和外界干擾,實(shí)際的SOC 曲線并不是一條直線,而是存在斜率不斷變化的一條曲線。當(dāng)曲線斜率發(fā)生較大變化時(shí),BPNN-PSO 與ELM 的SOC 估計(jì)誤差較大。與傳統(tǒng)的BPNN-PSO 和ELM 相比,ELMGWO 的估計(jì)精度高、魯棒性好且訓(xùn)練時(shí)間較短,具有較好的實(shí)用價(jià)值。結(jié)果如圖10~圖13所示。
圖8 CCCV工況下的SOC估計(jì)Fig.8 SOC estimation under CCCV condition
表1 ELM-GWO的誤差結(jié)果Table 1 Prediction performance of ELM-GWO
圖9 DST工況下的SOC估計(jì)Fig.9 SOC estimation under DST condition
圖10 CCCV工況下的SOC估計(jì)結(jié)果Fig.10 Result of SOC estimation under CCCV condition
圖11 CCCV工況下的SOC估計(jì)誤差Fig.11 Error of SOC estimation under CCCV condition
為了進(jìn)一步驗(yàn)證算法的有效性,分別對(duì)ELMGWO、BPNN-PSO和ELM進(jìn)行了比較。由表2可知,在CCCV 工況下,ELM-GWO、BPNN-PSO和ELM 的RMSE 分別為1.49%、2.41%與4.74%,MAE分別是1.06%、1.44%與3.69%,運(yùn)行時(shí)間分別為4.054 s、183.570 s 與0.584 s;在DST 工況下,ELM-GWO、BPNN-PSO 和ELM 的RMSE 分別 為1.14%、 2.48% 與2.14%, MAE 分 別 為0.79%、1.64%與1.36%,運(yùn)行時(shí)間分別為4.064 s、165.138 s 與0.141 s。所提方法在CCCV 工況下,運(yùn)行時(shí)間較BPNN-PSO減少179.524 s,RMSE較BPNN-PSO、ELM分別提高了0.92%、3.25%;在DST 工況下,運(yùn)行時(shí)間較BPNN-PSO 減少了161.074 s,RMSE 較BPNN-PSO、ELM 分別提高了1.34%、1%。
圖12 DST工況下的SOC估計(jì)結(jié)果Fig.12 Result of SOC estimation under DST condition
圖13 DST工況下的SOC估計(jì)誤差Fig.13 error of SOC estimation under DST condition
表2 各算法的估計(jì)性能對(duì)比Table.2 Comparison of estimated performance of each algorithm
本文提出了一種灰狼算法優(yōu)化的極限學(xué)習(xí)機(jī)模型用來提高SOC 估計(jì)性能的方法。利用灰狼算法對(duì)神經(jīng)網(wǎng)絡(luò)的輸入?yún)?shù)進(jìn)行了優(yōu)化,并選擇了合適的激活函數(shù),然后在不同工況下對(duì)所提方法進(jìn)行了測試驗(yàn)證,RMSE和MAE的最大誤差分別在1.5%和1.1%以下,且運(yùn)行時(shí)間在4 s 左右波動(dòng)。最后,將ELM-GWO 與BPNN-PSO 和ELM 的預(yù)測結(jié)果進(jìn)行了對(duì)比,可以看出所提方法精度高、魯棒性好且運(yùn)行時(shí)間較短。