羅 鵬,劉美俊,俞 輝,陳 霞,魏 憲
(1.廈門理工學(xué)院電氣工程與自動(dòng)化學(xué)院,福建廈門 361024;2.中國福建光電信息科學(xué)與技術(shù)創(chuàng)新實(shí)驗(yàn)室(閩都創(chuàng)新實(shí)驗(yàn)室),福建福州 350108;3.中國科學(xué)院福建物質(zhì)結(jié)構(gòu)研究所,福建福州 350002)
車載鋰電池作為純電動(dòng)汽車(BEV)最關(guān)鍵的動(dòng)力來源,決定了BEV 的整體性能、生產(chǎn)成本和收益。近年來,不斷報(bào)道的有關(guān)BEV 電池系統(tǒng)故障所造成的事故讓消費(fèi)者對(duì)BEV的安全感到擔(dān)憂。由于BEV 的鋰電池組性能衰退是不可逆的,對(duì)鋰電池性能衰退趨勢(shì)的預(yù)測(cè)工作可以幫助行車人員通過調(diào)整駕駛習(xí)慣延長電池組性能,并能有效地避免電池性能衰退造成的電池組故障,保障行車人員的生命和財(cái)產(chǎn)安全。
在早期,數(shù)據(jù)預(yù)測(cè)模型的構(gòu)建通常使用線性回歸、自回歸移動(dòng)平均模型等傳統(tǒng)回歸方法,但這類方法要求數(shù)據(jù)是穩(wěn)定的,且對(duì)于存在非線性關(guān)系的數(shù)據(jù)預(yù)測(cè)效果較差。90 年代,深度學(xué)習(xí)這類模仿人腦神經(jīng)的網(wǎng)絡(luò)框架被運(yùn)用到了各個(gè)領(lǐng)域,在預(yù)測(cè)和識(shí)別方面取得了不少成果[1],相比傳統(tǒng)方法,深度學(xué)習(xí)對(duì)于網(wǎng)絡(luò)參數(shù)擬合能力有很大的提升,且對(duì)象越復(fù)雜,優(yōu)勢(shì)越明顯。但單一的算法訓(xùn)練過程容易出現(xiàn)梯度消失、爆炸的情況,且容易受到數(shù)據(jù)噪聲的影響,此類情況會(huì)降低網(wǎng)絡(luò)的預(yù)測(cè)精度。本文針對(duì)單一算法易出現(xiàn)的問題,提出了一種基于注意力機(jī)制的灰色關(guān)聯(lián)分析法(GRA)-經(jīng)驗(yàn)?zāi)B(tài)分解(EMD)-雙向長短期記憶網(wǎng)絡(luò)(BILSTM)預(yù)測(cè)模型,并在開源和非開源數(shù)據(jù)集上驗(yàn)證了該模型的性能。
電池性能沒有具體的參數(shù),傳統(tǒng)的方法是用電池容量[2]或電池內(nèi)阻[3]表征電池性能,但電池容量無法在線獲取,是一種典型的實(shí)驗(yàn)室測(cè)量方法,電池內(nèi)阻通過傳感器采集,采樣精度受傳感器的限制,且采樣過程耗時(shí)耗力,因此這兩種參數(shù)不宜表征實(shí)車的電池性能。電池組性能的衰退受外界復(fù)雜環(huán)境和駕駛習(xí)慣的影響,所以對(duì)實(shí)際電動(dòng)汽車在行駛過程的參數(shù)變化進(jìn)行分析并選取合適的參數(shù)表征電池性能的工作非常重要。
BEV 電池組通過多個(gè)單體電池串并聯(lián)構(gòu)成,各單體電池出廠時(shí)內(nèi)部參數(shù)已出現(xiàn)細(xì)微差距,因此,充放電時(shí)間越長,各單體電池極值電壓差異越大,一致性也越差,從長里程下觀察電池包數(shù)據(jù),單體電池壓差是一項(xiàng)重要的參數(shù),且該參數(shù)容易在實(shí)際車輛中獲取。研究發(fā)現(xiàn)鋰電池壓差增大會(huì)加劇電池容量的衰減[4-5],而電池容量是表征電池壽命的參數(shù),因此,鋰電池單體電池壓差的變化與電池壽命具有強(qiáng)相關(guān)性,此外,壓差過大帶來的不一致性極大地影響了電池組的性能,具體表現(xiàn)為整車充不滿電、行駛里程縮短等情況。
通過對(duì)獲取的實(shí)車電池包數(shù)據(jù)分析,隨著運(yùn)行里程的增加,電池內(nèi)阻和電池組壓差逐漸增大,呈正相關(guān)關(guān)系。內(nèi)阻是電池健康狀態(tài)(SOH)的重要參數(shù),通過公式計(jì)算發(fā)現(xiàn)內(nèi)阻增大會(huì)導(dǎo)致SOH的降低,SOH越低,電池性能越低,因此,內(nèi)阻與電池性能呈反相關(guān),由壓差和內(nèi)阻的關(guān)系推出壓差與電池性能呈反相關(guān),壓差越大,電池性能越低。將單體電池壓差視為關(guān)鍵特征,用于表征鋰電池的性能,通過提前獲取鋰電池的終身運(yùn)行數(shù)據(jù),計(jì)算故障情況(電池容量小于80%)時(shí)的壓差并設(shè)定故障閾值,壓差的預(yù)測(cè)可在線幫助車主知曉車輛工況,提前給車主預(yù)警。綜上所述,預(yù)測(cè)未來壓差的增長趨勢(shì)等同于預(yù)測(cè)鋰電池性能衰退趨勢(shì)。
非開源數(shù)據(jù)采樣間隔短,變化幅度大,為了能夠準(zhǔn)確捕捉數(shù)據(jù)前后特征的序列信息,采用BILSTM 作為基本網(wǎng)絡(luò)框架[6],此外,該網(wǎng)絡(luò)還可以避免長序列在訓(xùn)練過程出現(xiàn)梯度消失或爆炸的情況,BILSTM 模型結(jié)構(gòu)如圖1 所示。
圖1 BILSTM基本結(jié)構(gòu)圖
BILSTM 的神經(jīng)元內(nèi)部與LSTM[7]相同,包含三個(gè)門控模塊,分別是遺忘門、記憶門和輸出門。X表示的是t時(shí)刻的輸入,C表示細(xì)胞狀態(tài),H表示隱層狀態(tài)。網(wǎng)絡(luò)的輸入包括經(jīng)過處理后得到的壓差分量和影響壓差變化的關(guān)聯(lián)特征,壓差分量依然保留了壓差的時(shí)序信息,且受前向關(guān)聯(lián)特征的影響。BILSTM 的神經(jīng)元可以通過遺忘門、記憶門對(duì)細(xì)胞狀態(tài)選擇性地遺忘和記憶新信息,將這些有用的信息保存下來并傳遞給后續(xù)的神經(jīng)元。信息的遺忘、記憶、輸出是由上個(gè)時(shí)刻H和當(dāng)前X通過神經(jīng)元的內(nèi)部權(quán)重計(jì)算得到的遺忘權(quán)重、記憶權(quán)重、輸出權(quán)重控制。通過LSTM 神經(jīng)元的三個(gè)門,能夠有效抓取隱藏在關(guān)聯(lián)特征與壓差分量中的特征信息和時(shí)序信息。相比LSTM,BILSTM 可以編碼從后到前的信息,提高獲取隱藏信息的能力。
輸入信息經(jīng)BILSTM 神經(jīng)元的處理后,得到的結(jié)果如式(1)~(2)所示,輸出y是將Ht進(jìn)行Softmax 處理。
式中:W0為輸出權(quán)重;Wi為記憶權(quán)重;Wf為遺忘權(quán)重。
本文在BILSTM 網(wǎng)絡(luò)框架中添加了注意力機(jī)制,根據(jù)結(jié)果與該點(diǎn)的誤差大小合理分配權(quán)值,以此取代神經(jīng)元隨機(jī)分配權(quán)值的方式。融合注意力機(jī)制的BILSTM 模型如圖2所示。
圖2 融合注意力機(jī)制的BILSTM結(jié)構(gòu)圖
注意力機(jī)制可以通過合理分配權(quán)重的方式,對(duì)BILSTM提取的時(shí)序特征給予足夠的關(guān)注,忽略不重要的信息。具體地,計(jì)算神經(jīng)元內(nèi)部隱含層hi'和前面的隨機(jī)初始化的四個(gè)隱含層hi的相似度ei,如式(3)所示,下一步,使用Softmax 函數(shù)計(jì)算出注意力權(quán)重,得到注意力權(quán)重W后,與神經(jīng)元的輸出加權(quán)整合,通過全連接層映射,得到預(yù)測(cè)值。Softmax 公式如式(4)所示。
開源/非開源數(shù)據(jù)中能反映車況信息的參數(shù)有總電流、總電壓、電荷狀態(tài)(SOC)、溫度等參數(shù),這些特征反映了汽車的外界環(huán)境和駕駛行為,但無法判斷它們與壓差是否存在關(guān)聯(lián),若關(guān)聯(lián)度較差被做為冗余特征輸入到網(wǎng)絡(luò)中,會(huì)降低模型的預(yù)測(cè)精度,因此,采用GRA 計(jì)算上述參數(shù)與壓差的關(guān)聯(lián)度,篩選出非冗余特征。表1 為關(guān)聯(lián)度分析表,選取關(guān)聯(lián)度大于0.6 的參數(shù),并視為與壓差關(guān)聯(lián)度較高的關(guān)聯(lián)特征。
表1 關(guān)聯(lián)度分析
式中:ρ為分辨系數(shù),取0.5。
盡管BILSTM 能夠捕捉壓差序列的非線性和時(shí)序性,但是對(duì)于這類變化頻率高的序列,非平穩(wěn)部分會(huì)導(dǎo)致預(yù)測(cè)精度下降,因此,本文采用EMD 將壓差序列分解成多個(gè)平穩(wěn)的、多尺度的分量[8],相比傅里葉變化和小波變化,EMD 具有更好的信噪比。壓差序列V(t)經(jīng)EMD 分解,得到多個(gè)固有模態(tài)函數(shù)(IMF)和殘余信號(hào)Res,如式(6)所示:
融合注意力機(jī)制的GRA-EMD-BILSTM 模型流程圖如圖3 所示。壓差序列經(jīng)過EMD 分解后得到多個(gè)分量,在構(gòu)造特征工程中,將這些分量作為目標(biāo)標(biāo)簽,結(jié)合與之相對(duì)應(yīng)的GRA 篩選后的關(guān)聯(lián)特征一同輸入到BILSTM 網(wǎng)絡(luò)中,在網(wǎng)絡(luò)的輸出部分引入注意力機(jī)制,經(jīng)全連接層擬合后得到每個(gè)分量的預(yù)測(cè)值,將各分量的預(yù)測(cè)值疊加即為最終預(yù)測(cè)結(jié)果。
圖3 模型流程圖
本文使用了開源/非開源數(shù)據(jù)集驗(yàn)證提出的算法的預(yù)測(cè)精度。開源數(shù)據(jù)為上海市新能源汽車公共數(shù)據(jù)采集與監(jiān)測(cè)研究中心提供的完整電池包數(shù)據(jù),因此數(shù)據(jù)預(yù)處理階段只需要進(jìn)行歸一化處理,消除各參數(shù)量綱之間的差異,歸一化如式(7)所示:
式中:x表示樣本數(shù)據(jù);xmax表示樣本數(shù)據(jù)的最大值;xmin表示樣本數(shù)據(jù)的最小值。
非開源數(shù)據(jù)源于某品牌投放至市場(chǎng)中的純電動(dòng)汽車電池管理系統(tǒng)采集的電池實(shí)時(shí)數(shù)據(jù)。實(shí)際數(shù)據(jù)的多個(gè)參數(shù)與駕駛行為有很大的關(guān)系,駕駛行為的變化會(huì)導(dǎo)致參數(shù)產(chǎn)生突變,因此,收集的實(shí)際數(shù)據(jù)相比開源數(shù)據(jù),變化頻率更高,幅度更大,這些非線性的變化更能考驗(yàn)網(wǎng)絡(luò)的特征提取和時(shí)序分析能力。
實(shí)際數(shù)據(jù)會(huì)因電池管理系統(tǒng)的異常導(dǎo)致上傳的電池?cái)?shù)據(jù)存在離散的空值,數(shù)據(jù)的不均衡會(huì)導(dǎo)致預(yù)測(cè)模型無法正常訓(xùn)練。由于采樣間隔為10 s,相鄰值差異較小,本文采用均值插補(bǔ)法,取空值上下值的平均值進(jìn)行空值插補(bǔ)。
本文實(shí)驗(yàn)環(huán)境:操作系統(tǒng)Linux;顯卡型號(hào)NVIDIA GEFORCE RTX2080Ti;深度學(xué)習(xí)框架Tensorflow2.91;編程語言Python3.7。
為了驗(yàn)證本文提出的方法的優(yōu)勢(shì),設(shè)置了5 組對(duì)比實(shí)驗(yàn),將提出的模型與GRA-EMD-BILSTM 模型、EMD-BILSTM模型、BILSTM 模型、LSTM 模型以及BP 模型做對(duì)比,評(píng)價(jià)模型的指標(biāo)采用均方根誤差(RMSE)、平均絕對(duì)誤差(MAE)和平均絕對(duì)百分誤差(MAPE),評(píng)價(jià)指標(biāo)如式(8)~(10)所示:
式中:yi表示壓差預(yù)測(cè)值;xi表示壓差實(shí)際值;N表示樣本的數(shù)量。
為了保證實(shí)驗(yàn)的公平性,各網(wǎng)絡(luò)的參數(shù)均統(tǒng)一:丟失層為0.5,傳遞的訓(xùn)練參數(shù)為126,訓(xùn)練次數(shù)為200,優(yōu)化器為適應(yīng)性矩估計(jì)(Adam),神經(jīng)元個(gè)數(shù)為16,并且在訓(xùn)練過程中,利用回調(diào)函數(shù)保存最好的模型,利用該模型進(jìn)行后續(xù)的預(yù)測(cè)工作。將數(shù)據(jù)集的前80%作為訓(xùn)練集,后20%作為測(cè)試集。
經(jīng)GRA 分析,得到的各特征序列與壓差序列的關(guān)聯(lián)度如表2 所示。
由表2 可知,開源數(shù)據(jù)中,除速度、總電流外,關(guān)聯(lián)度均小于0.6,屬于失調(diào)狀態(tài),因此將速度和總電流作為網(wǎng)絡(luò)的輸入;對(duì)于非開源數(shù)據(jù),將總電流、行駛里程、速度這三類關(guān)聯(lián)度大于0.6 的參數(shù)作為網(wǎng)絡(luò)的輸入。
對(duì)初始信號(hào)V(t)進(jìn)行EMD,分解結(jié)果如圖4 所示,從高頻到低頻,V(t)被分解成10 個(gè)IMF和一個(gè)Res,經(jīng)EMD 分解的多個(gè)分量,由上到下,IMF逐漸從非平穩(wěn)趨于平穩(wěn),且各IMF的變化較為一致。
利用不同模型預(yù)測(cè)壓差,各預(yù)測(cè)曲線和實(shí)際壓差可視化圖如圖5~6 所示,圖5 為開源數(shù)據(jù)集對(duì)比圖,圖6 為非開源數(shù)據(jù)集對(duì)比圖。由于數(shù)據(jù)較多,基于原始圖片,繪制了三個(gè)局部放大子模塊A、B、C。
圖5 開源數(shù)據(jù)預(yù)測(cè)結(jié)果
圖6 非開源數(shù)據(jù)預(yù)測(cè)結(jié)果
由圖5 可知,A 模塊震蕩較為劇烈,無法準(zhǔn)確判斷各模型的預(yù)測(cè)效果,B 模塊中可以明顯發(fā)現(xiàn),當(dāng)壓差處于上升趨勢(shì)時(shí),BP 神經(jīng)網(wǎng)絡(luò)與真實(shí)值偏離幅度非常大;C 模塊中當(dāng)震蕩幅度趨于平穩(wěn)時(shí),LSTM 網(wǎng)絡(luò)的預(yù)測(cè)值與真實(shí)值相比,向下偏離。由圖6 可知,A 模塊中,BILSTM 網(wǎng)絡(luò)的預(yù)測(cè)值相比實(shí)際值向上偏離;B 模塊中,除BILSTM 外,EMD-BILSTM 也略微向上偏離;C 模塊無法看出模型的差異。如上分析,BP 模型、BILSTM 模型和LSTM 模型,由于算法單一,無法準(zhǔn)確提取變化特征,預(yù)測(cè)效果較差。在網(wǎng)絡(luò)中添加EMD 后,預(yù)測(cè)效果提高,但在圖6(c) B 模塊中,預(yù)測(cè)值與實(shí)際值仍存在一定的偏離,這是因?yàn)轭A(yù)測(cè)模型受到冗余信息的影響,相比之下,本文提出的方法與GRA-EMD-BILSTM 模型在開源數(shù)據(jù)集和非開源數(shù)據(jù)集都能跟蹤壓差的變化趨勢(shì),可視化圖無法直觀判斷兩種模型的差異,需通過評(píng)價(jià)指標(biāo)才能判斷最優(yōu)算法。
通過模型評(píng)價(jià)指標(biāo)計(jì)算各模型的預(yù)測(cè)誤差,如表3 所示。由表3 可知,BP 神經(jīng)網(wǎng)絡(luò)、LSTM 神經(jīng)網(wǎng)絡(luò)的誤差較大,與圖反映的一致,相對(duì)于LSTM,BILSTM 誤差有所降低,證明本案例雙向提取特征的方法優(yōu)于單向提取特征,在BILSTM 中添加EMD 后,精度大幅度提升,說明EMD 可以通過分解關(guān)鍵特征,多分量預(yù)測(cè)的方法有效提高預(yù)測(cè)精度,通過GRA,去除冗余特征,預(yù)測(cè)精度也略微提升,最后在網(wǎng)絡(luò)的輸出階段添加注意力機(jī)制得到的誤差相比GRA-EMD-BILSTM 模型,誤差有所降低,RMSE、MAE和MAPE分別為1.423 2/0.971 9,0.920 6/0.628 0 和8.187 3/11.444 0。此外,本文還收集了各算法所消耗的時(shí)間,該時(shí)間包含預(yù)訓(xùn)練模型的建立時(shí)間。
表3 不同模型直接的誤差比較
綜上所述,相比其它算法,本文提出的方法在開源和非開源數(shù)據(jù)集上有著較高的預(yù)測(cè)精度,從消耗的時(shí)間上分析,此方法消耗的時(shí)間并不長,如果應(yīng)用于在線預(yù)測(cè),在通過GRA 離線分析電池終身數(shù)據(jù)以確定關(guān)聯(lián)參數(shù)的前提下,加上預(yù)訓(xùn)練模型的建立時(shí)間,僅需每五分鐘傳入數(shù)據(jù),即可在下個(gè)階段傳入數(shù)據(jù)之前,得到預(yù)測(cè)結(jié)果,因此,此方法可在線應(yīng)用于車輛工況預(yù)警。
本文考慮了單一算法的缺陷,融合了多個(gè)方法,建立了GRA-EMD-BILSTM 模型,并加入了注意力機(jī)制,進(jìn)一步提高模型的預(yù)測(cè)精度,此外,除開源數(shù)據(jù)外,還收集了變化頻率更高的實(shí)際電動(dòng)汽車的電池?cái)?shù)據(jù)驗(yàn)證本文提出模型的性能,最后通過實(shí)驗(yàn)表明,使用BILSTM,并在網(wǎng)絡(luò)中添加EMD、GRA和注意力機(jī)制,模型性能有不同程度的提高,因此,本文提出的基于注意力機(jī)制的GRA-EMD-BILSTM 模型具有更優(yōu)的性能。