陳繼斌,李雯雯,孫彥璽,許 靜,張 單
(鄭州輕工業(yè)大學建筑環(huán)境工程學院,河南鄭州 451002)
鋰離子電池由于高能量密度、高功率密度等優(yōu)點,已逐漸成為主要電源之一。然而電池在反復充放電時會退化,需要電池管理系統(tǒng)監(jiān)控電池健康狀態(tài),防止電池過充電和過放電,以確保電池在安全范圍內運行。荷電狀態(tài)(State of Charge,SOC)是電池管理系統(tǒng)中的關鍵狀態(tài)之一,它反映了在一個充放電循環(huán)中電池的剩余電量。目前不能直接測量蓄電池的SOC,只能根據(jù)電流、電壓、內阻和其他可測量的變量來估計。SOC估計的方法有安時積分法、開路電壓法、卡爾曼濾波法和神經網絡法等。
安時積分法十分依賴電流傳感器的精度,誤差會隨著時間而不斷增大[1]。開路電壓法需要將電池靜置很長一段時間,所以無法適用于使用中的電池[2]??柭鼮V波法需要提前建立復雜的數(shù)學模型[3]。神經網絡法無需對電池內部結構進行分析,只需建立好深度學習模型,使用大量數(shù)據(jù)對其訓練即可獲得較為準確的SOC預測結果,目前應用頗為廣泛。
近年來,深度學習在預測和識別方面取得了不少成果,對于提升預測和識別的精度有著良好表現(xiàn)。深度學習方法也越來越多的應用到了SOC的預測中,如卷積神經網絡(Convolutional Neural Network,CNN)[4]、長短期記憶神經網絡(Long Short-Term Memory,LSTM)[5]和雙向長短期記憶神經網絡(Bi-directional Long Short-Term Memory,BiLSTM)[6]。面對復雜的預測問題,單一網絡結構的深度學習方法往往難以平衡訓練時間和精度。由于神經元節(jié)點具有獨特的循環(huán)結構,多層LSTM 網絡存在訓練時間過長的問題。同時,提取深層抽象特征的能力也略弱于卷積神經網絡。本文提出了一種基于卷積神經網絡與雙向長短期記憶神經網絡(CNNBiLSTM)的SOC預測方法,結合了兩種網絡的優(yōu)勢,對比實驗顯示,新方法的預測網絡精度有明顯提高。
CNN 是一種前饋神經網絡,其模型結構主要包括輸入層、卷積層、池化層、全連接層和輸出層[7],具體結構如圖1 所示。給定一個數(shù)據(jù)集D,它包含一個樣本和一個SOC標簽每 個 樣 本 由n個 用表示的特征組成。
圖1 卷積神經網絡結構
CNN 的輸入是樣本xi,xi∈Rn×d,其中n是特征數(shù),d是向量維數(shù)。卷積運算主要完成特征提取。輸入濾波器特征由一組濾波器提?。?/p>
式中:ω 是卷積核;g是卷積核的大??;xi:i+g-1是一個由i到i+g-1個特征組成的向量;b是一個偏置項。卷積層之后,特征矩陣為J,J={c1,c2,…,cn-g+1}。
對于池化層,對卷積層后得到的局部特征矩陣C進行下采樣,得到局部值的最優(yōu)解。這里使用MaxPooling 功能,如公式(2)所示:
因為BiLSTM 輸入必須是一個序列化的結構,池化會中斷序列結構J,所以需要添加一個完全連接的層,將池化層之后的Mi個向量連接到一個向量Q中。采用新的連續(xù)高階窗口Q作為BiLSTM 的輸入。
LSTM 是循環(huán)神經網絡(Recurrent Neural Network,RNN)的一個變體,它有一個記憶單元,記憶單元包括遺忘、記憶和輸出。遺忘門ft、記憶門it和輸出門ot是根據(jù)控制最后時刻的隱藏狀態(tài)ht-1和當前輸入xt來計算的,能夠保留重要信息,遺忘不重要信息,消除遞歸神經網絡的梯度爆炸或梯度消失問題。其結構如圖2 所示,計算公式如下:
圖2 LSTM模型的網絡結構
式中:Wf、Uf、Wi、Ui、Wc、Uc、Wo、Uo是權重矩陣;bf、bi、bc、bo是偏差向量;Ct和Ct-1是當前和最后一個記憶狀態(tài);tanh 和logistic都是激活函數(shù)。
BiLSTM 是前向LSTM 和后向LSTM 的組合。如果在時間t時正向LSTM 輸出的隱藏狀態(tài)記錄為a,反向LSTM 輸出的隱藏狀態(tài)為b,則BiLSTM 輸出的隱藏狀態(tài)為:
本文在研究現(xiàn)有神經網絡模型的基礎上,提出了一種基于CNN-BiLSTM 網絡的鋰電池SOC預測方法。其總體思路是首先將歸一化后的數(shù)據(jù)作為CNN 網絡的輸入,通過卷積網絡進行特征提取,然后引入BiLSTM 網絡進行特征的長期依賴性學習,再加入一個全連接層來預測SOC,通過設置dropout 參數(shù)來防止過度擬合。模型結構如圖3 所示。
圖3 CNN-BiLSTM網絡模型結構
為了驗證模型的有效性,本文采用的實驗數(shù)據(jù)集是來自馬里蘭大學CALCE 電池研究小組K2 鋰電池測試數(shù)據(jù)[8],在2.6 A 下對蓄電池進行恒流充電,充電至電壓為4.2 V,再恒壓放電至電流<0.08 A,休息2 min 并測量電阻,再休息1 min,以此得到電池的各項參數(shù)。數(shù)據(jù)集共有16 241 個采樣文件,包括訓練集和測試集兩部分。訓練集包含14 000 個樣本,測試集包含2 741 個樣本,選取電池的電壓、電流和內阻作為特征,每個樣本對應于該時間點電池的電壓、電流、內阻和SOC值。具體參數(shù)如圖4、圖5 所示。
圖4 部分數(shù)據(jù)電壓和電流
圖5 部分數(shù)據(jù)內阻和SOC值
首先對樣本數(shù)字字段進行數(shù)據(jù)標準化。數(shù)據(jù)標準化過程將消除指標之間的維度影響,解決數(shù)據(jù)指標之間的不可比較性,使指標保持在同一數(shù)量級,適合于綜合比較評價。將數(shù)據(jù)全部標準化到[0,1]的范圍內,經過特征縮放后,梯度下降過程更加簡單,收斂速度更快。數(shù)據(jù)標準化公式如下:
式中:xi是樣本在i時刻的監(jiān)測數(shù)據(jù),min(xi)和max(xi)分別是樣本所有時刻數(shù)據(jù)的最小值和最大值;Z是歸一化后的值。
基于CNN-BiLSTM 的鋰電池SOC預測過程如圖6 所示。在訓練階段,對原始的數(shù)據(jù)集數(shù)據(jù)進行預處理,然后將預處理后的訓練集樣本放入模型中進行訓練。CNN 用于提取預處理后訓練樣本的局部特征,BiLSTM 用于理解特征樣本對正向和反向的長期依賴性,以便進行深度學習。最后,利用測試集對訓練好的模型進行測試,得出預測誤差和結果。
圖6 鋰電池SOC預測框架圖
接下來設定實驗的評價指標來反映模型的性能,并對模型的結果進行評價。評價模型性能的指標有多種,本文使用的評估指標是均方根誤差(RMSE)和平均絕對誤差(MAE)。RMSE和MAE用于測量估計值和實際值之間的誤差,RMSE和MAE的值越小,偏差越小。RMSE和MAE公式如下:
式中:yi是真實SOC值;是預測SOC值。
將預處理后的數(shù)據(jù)輸入模型進行訓練。通過多次實驗,最終選取卷積神經網絡的卷積核個數(shù)為15,大小為[2,1],移動步長為[1,1],最大池化大小為[3,1]。激活函數(shù)選擇修正線性單元(Rectified Linear Unit,ReLU)函數(shù)。雙向長、短期記憶網絡的隱藏層數(shù)為3,節(jié)點數(shù)分別設為50、20 和100。初始學習率設為0.001,訓練輪數(shù)epoch 為20,Dropout 參數(shù)均設置為0.1。全連接層的激活函數(shù)為ReLU,設置模型的優(yōu)化器為適應性矩估計(Adaptive Moment Estimation,Adam)函數(shù)來更新模型的權重與偏置,損失函數(shù)使用均方誤差。
為了驗證該算法的優(yōu)越性,通過Matlab 軟件同時進行了四組對比實驗,分別采用GRU 模型、LSTM 模型、BiLSTM 模型和CNN-LSTM 模型進行訓練和預測。數(shù)據(jù)處理和訓練過程的參數(shù)設置與所提預測網絡類似,這里不再贅述。最后,各模型的預測誤差如表1 所示。從結果可以看出,相比于其他模型,本文提出的模型效果最好,預測誤差最小。
表1 不同模型預測算法的比較 %
圖7 顯示了不同模型前5 輪訓練在訓練集上的損失函數(shù)曲線,以便我們更直觀、清晰地了解本文所提出模型的預測情況。從曲線可以看出,相比于其他模型,CNN-BiLSTM 模型所需的訓練時間相對較短,模型損失函數(shù)收斂得非??欤⑶曳€(wěn)定在一個相當?shù)偷闹?,取得了很好的效果?/p>
圖7 不同模型的損失函數(shù)部分曲線
圖8 顯示了SOC循環(huán)過程中的預測結果。從圖8 中可以看出,GRU、LSTM、BiLSTM 由于不能提取高級特征,其預測值與實際SOC值相差較大。相比之下,CNN-LSTM 網絡和所提出的CNN-BiLSTM 網絡預測的SOC更加平滑和準確??傮w看來,所提出的CNN-BiLSTM 網絡和CNN-LSTM 網絡都產生了令人滿意的結果,其中CNN-BiLSTM 網絡更好一些。
圖8 不同模型SOC預測的比較
實驗結果基本符合預期,LSTM 的記憶門和遺忘門使得它在時間序列預測問題上有更好的表現(xiàn);GRU 作為LSTM 的一種變體,結構更加簡單,也可以解決時間依賴問題,效果略好于LSTM;BiLSTM 分別從正向和反向提取信息,取得了比LSTM 更好的預測效果;CNN-LSTM 結合了CNN 和LSTM 兩者的優(yōu)點,具有更快的訓練速度和更好的效果。最后,從圖中可以明顯看出,本文介紹的基于CNN-BiLSTM 的SOC預測網絡預測效果最好,能夠進一步提高預測精度。
本文提出了一種基于CNN-BiLSTM 網絡的鋰電池SOC預測方法。通過CNN 提取出鋰電池數(shù)據(jù)中的高級特征,然后利用BiLSTM 解決單個CNN 不能考慮前、后時間特征的問題,同時避免了簡單RNN 引起的梯度爆炸或梯度消失等問題。CNN-BiLSTM 模型的RMSE和MAE值分別為21.704 0 和18.746 4,進一步提高了精度。通過對比實驗結果證明,CNNBiLSTM 預測網絡模型相比于GRU、LSTM、BiLSTM 和CNNLSTM 具有更高的精確性和有效性。然而,CNN 網絡在聯(lián)合網絡中的深度還不夠。如何利用更深層次的CNN 網絡來提高預測精度將是下一步工作的目標。