李晟延,馬鴻雁,2,3,竇嘉銘,王 帥
(1.北京建筑大學(xué) 電氣與信息工程學(xué)院,北京 100044;2.建筑大數(shù)據(jù)智能處理方法研究北京市重點實驗室,北京 100044;3.智慧城市國家級虛擬仿真實驗教學(xué)中心,北京 100044)
鋰電池作為常用的環(huán)保儲能設(shè)備之一,對“3060”碳達(dá)峰、碳中和目標(biāo)的達(dá)成起著重要支撐作用。鋰電池荷電狀態(tài)是反應(yīng)電池性能的標(biāo)準(zhǔn)之一。鋰離子電池在使用過程中,準(zhǔn)確預(yù)測電池組荷電狀態(tài)(state of charge,SOC)能夠及時預(yù)防電池過充、過放等違規(guī)操作對電池壽命造成損害。目前,SOC預(yù)測領(lǐng)域較為常用的方法有:卡爾曼濾波法[1]、傳統(tǒng)估計法[2]和數(shù)據(jù)驅(qū)動法[3]。
基于卡爾曼濾波法是SOC離線預(yù)測研究中較多的方法之一。王文亮等[4]采用最小二乘法實現(xiàn)電池模型參數(shù)的在線估算,結(jié)合擴展卡爾曼算法對SOC進行估算,預(yù)測精度得到了提高。但該方法需要依靠精確的電池等效電路模型,預(yù)測對象大多為單體電池,對于鋰離子電池組的SOC研究較少。傳統(tǒng)估計法分為開路電壓法與安時積分法,其中安時積分法[5]受溫度環(huán)境與充放電流影響較大,文獻(xiàn)[6]指出開路電壓法需要電池長時間處于靜止?fàn)顟B(tài),通過實驗得到端電壓與SOC之間的關(guān)系,該方法無法進行SOC的實時估計且溫度變化會對預(yù)測方式產(chǎn)生影響。劉春輝等[7]設(shè)計了基于SOC的DC/DC 變換器主動均衡電池管理系統(tǒng),解決了動力電池組中各單體電池SOC值的不一致性問題,均衡效果較好。
數(shù)據(jù)驅(qū)動法可以略去電池內(nèi)部的機理反應(yīng),將電池作為“黑箱模型”省去了參數(shù)辨識的過程,利用神經(jīng)網(wǎng)絡(luò)建立起電池相關(guān)參數(shù)和荷電狀態(tài)之間的映射關(guān)系[8]。劉秋麗等[9]將粒子群算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)模型應(yīng)用在動力電池組荷電狀態(tài)的預(yù)測,驗證了粒子群算法優(yōu)化模型的快速性與穩(wěn)定性。孫小川[10]通過改進粒子群算法對BP 神經(jīng)網(wǎng)絡(luò)進行優(yōu)化,然后對網(wǎng)絡(luò)模型進行剪枝處理,對燃料電池組SOC進行預(yù)測,預(yù)測效果較好。但上述模型容易陷入局部最優(yōu),導(dǎo)致SOC預(yù)測精度較低。為解決這一問題,學(xué)者們提出將支持向量機[11-12]在小樣本和非線性預(yù)測問題上的優(yōu)勢應(yīng)用到鋰電池荷電狀態(tài)的預(yù)測中。
本文采用主成分分析對鋰電池組放電過程中的影響因素進行評估與篩選用于提高數(shù)據(jù)質(zhì)量,利用新型元啟發(fā)式算法中的禿鷹搜索算法(bald eagle search,BES)對最小二乘支持向量機(least squares support vector machine,LS-SVM)中參數(shù)尋優(yōu)環(huán)節(jié)進行優(yōu)化,構(gòu)成PBES-LS-SVM 網(wǎng)絡(luò)模型對鋰離子電池組的SOC進行研究,以獲得更加準(zhǔn)確的電池組SOC預(yù)測模型。
禿鷹搜索優(yōu)化算法是由馬來西亞學(xué)者Alsatter[13]在2020年提出的集群智能算法之一,自然界中,禿鷹的體型較大,這使得它們站在食物鏈的頂端[14]。禿鷹的狩獵階段分為三個階段:選擇空間、空間搜索獵物、俯沖[15]。禿鷹捕獵的三個階段數(shù)學(xué)模型如下:
階段1:選擇空間階段,盤旋的禿鷹,會基于鮭魚個體或種群的濃度來選擇空間。從原定位置朝選定的空間飛行。這一行為在數(shù)學(xué)上被定義為:
式中:α為控制位置變化的參數(shù),取值范圍在[1.5,2]之間;r為(0,1)范圍內(nèi)的隨機數(shù);Dbest為當(dāng)前禿鷹搜索確定的最佳搜索位置;Dmean為先前搜索結(jié)束后禿鷹的平均分布位置;Di為第i只禿鷹的位置。
階段2:空間搜索獵物階段,禿鷹通過在選定的螺旋空間內(nèi)向不同方向移動來尋找搜索獵物。此外,確定最佳獵物和俯沖的最佳位置。獵取獵物和俯沖的最佳位置被確定。這種行為在數(shù)學(xué)上被定義為:
式中:Di+1為第i只禿鷹下一次更新位置;x(i)與y(i)為極坐標(biāo)系下禿鷹的位置,取值范圍為(-1,1);θ(i)為螺旋方程的極角;α為一個常數(shù)參數(shù),取值范圍在[0,5]內(nèi);r(i)為螺旋方程中的極徑;R為另一個常數(shù)參數(shù),取值范圍為[0.5,2];rand為(0,1)之間隨機參數(shù)。
階段3:俯沖階段,禿鷹從搜索空間中的最優(yōu)位置快速俯沖飛向目標(biāo)獵物,禿鷹種群中其他個體也同時向最佳位置擺動俯沖攻擊獵物,定義為:
式中:t1和t2的取值范圍為[1,2]。俯沖階段至關(guān)重要,可以在設(shè)定的迭代次數(shù)中找到最優(yōu)的解決方案。
SVM 算法是一種以統(tǒng)計學(xué)理論為基礎(chǔ)的傳統(tǒng)機器學(xué)習(xí)方法,該方法可以在模型的復(fù)雜性與學(xué)習(xí)能力之間尋求最佳的折中,并獲得最好的推廣能力。而最小二乘支持向量機(LS-SVM)在傳統(tǒng)的SVM 上利用最小二乘線性系統(tǒng)作為損失函數(shù),將SVM 中優(yōu)化問題的不等式約束轉(zhuǎn)化為等式約束,以此對傳統(tǒng)SVM 進行優(yōu)化。而BES 算法則是用來優(yōu)化LSSVM 中的參數(shù)g與C的選擇,用于提高LS-SVM 中的性能與效率,更準(zhǔn)確地對數(shù)據(jù)進行計算。
在鋰電池組SOC估算問題的研究背景下,非線性映射為ψ(x),其主要目的是將其映射到一個高維空間中,以方便線性回歸運算的方法將低維的非線性轉(zhuǎn)換到高維空間中,并構(gòu)造最優(yōu)線性決策函數(shù):
式中:w為權(quán)向量;b為常數(shù)。利用SRM 準(zhǔn)則構(gòu)造下面的最小化目標(biāo)函數(shù)為[16]:
式中:y為調(diào)整參數(shù);ei為松弛變量。通過核函數(shù)K(xi,xk)的引入可以得到LS-SVM 模型為[17]:
本文中,PBES-LS-SVM 網(wǎng)絡(luò)模型訓(xùn)練集維度通過主成分分析法,將維度由原有的5 維降為3 維。高斯徑向基函數(shù)構(gòu)造的支持向量機訓(xùn)練參數(shù)相對較少,更容易確定參數(shù),所以在核函數(shù)的選擇上采用高斯徑向基函數(shù),即:
式中:z為高斯核寬度。
LS-SVM 中參數(shù)優(yōu)化對于模型預(yù)測的準(zhǔn)確性十分重要。因此本文選擇PCA 對鋰電池組放電過程中的影響因素進行評估與篩選用于提高數(shù)據(jù)質(zhì)量,并利用元啟發(fā)式算法BES 優(yōu)化參數(shù)g和C。其流程如圖1 所示。
圖1 PBES-LS-SVM流程圖
具體步驟如下:
(1)選取儲能電站電池組的離線數(shù)據(jù),提取數(shù)據(jù)編碼、電壓、電流、環(huán)境溫度等重要影響因素后,利用主成分分析對其進行研究。選取主要影響指標(biāo),再作為輸入數(shù)據(jù)參與模型的訓(xùn)練。
(2)對數(shù)據(jù)進行編碼處理,初始化禿鷹種群LS-SVM 中的重要參數(shù),懲罰系數(shù)C,核函數(shù)g等。
(3)計算禿鷹種群個體的位置,進行適應(yīng)度值的計算,搜索、選取最優(yōu)的空間。
(4)進入迭代循環(huán),運用BES 算法更新參數(shù)。
(5)達(dá)到設(shè)定迭代次數(shù)后,判斷目標(biāo)位置、目標(biāo)值是否達(dá)到最佳,選取懲罰系數(shù)C,核函數(shù)g。
(6)LS-SVM 運用選取的參數(shù),對鋰電池組荷電狀態(tài)進行預(yù)測。
該研究數(shù)據(jù)為某儲能公司現(xiàn)場采集的鋰離子電池組的數(shù)據(jù),電池組采用的為120 Ah 磷酸鐵鋰電芯,一個電池單元為2P16S,即2 個電芯并聯(lián)形成一個單體電池,再將16 個單體電池串聯(lián)構(gòu)成一個電池單元。每個電池單元的容量為240 Ah,額定電壓為51.2 V。最終的電池組則是由14 個串聯(lián)的電池單元,總計224 個單體電池組成,其額定電壓為716.8 V。
對電池組數(shù)據(jù)進行整理清洗后,將異常數(shù)據(jù)舍棄。選取的因素包括數(shù)據(jù)編碼、電壓、電流、溫度、環(huán)境溫度以及電池組SOC的值。在獲得的數(shù)據(jù)中,電池溫度、環(huán)境溫度在一定時間段內(nèi)變化范圍不大,樣本數(shù)據(jù)如表1 所示。
表1 電池組樣本數(shù)據(jù)
PCA 是一種常用的對數(shù)據(jù)預(yù)處理的方法,原理是運用線性代數(shù)對原始數(shù)據(jù)進行降維與因素篩選,該方法可以將多個變量轉(zhuǎn)換為少數(shù)幾個不相關(guān)的綜合變量,能夠較全面地反應(yīng)整個數(shù)據(jù)集。主成分分析的原理公式如式(14):
式中:pR為1 個行向量,表示第R個基;aM為1 個列向量,表示第M個原始數(shù)據(jù)。
從n個原始變量中取出M個新變量來代替原始數(shù)據(jù),其余的n-M變量對于原始信息的貢獻(xiàn)率較小可被代替。輸入變量越多,對SOC估算的精度越高,與此同時會造成整個模型的收斂性下降。
為減少后續(xù)預(yù)測模型的計算量,提高整個模型SOC估算的效率,通過PCA 針對表1 中電池組樣本數(shù)據(jù)變量進行綜合分析。其中,電壓、電流、數(shù)據(jù)編碼、溫度以及環(huán)境溫度為影響電池組SOC預(yù)測的指標(biāo)。針對表1 進行主成分分析的結(jié)果如表2 所示。
表2 主成分分析結(jié)果
主成分提取原則通常按累計貢獻(xiàn)率或是主成分特征值提取主成分。根據(jù)表2 結(jié)果進行選取,成分x1、x2、x3的特征值均大于1,滿足特征值大于1 可作為主成分的條件,且所選變量累計方差貢獻(xiàn)率大部分大于80%,所以成分x1、x2、x3滿足作為主成分的條件,能夠反映原始數(shù)據(jù)中存在的信息。謝思宇等[18]利用主成分分析對NASA Ames 研究中心的電池數(shù)據(jù)進行分析,得出電池溫度對SOC估計的影響呈正相關(guān)。但當(dāng)獲得的電池溫度與外部環(huán)境溫度變化范圍較小時,利用主成分分析得出的結(jié)論為:溫度與環(huán)境溫度對鋰電池組荷電狀態(tài)的影響不大。
因此,選取的成分為電壓、電流、數(shù)據(jù)編碼,以此作為輸入變量,在減小數(shù)據(jù)模型規(guī)模、維度的同時,消除變量間的相關(guān)性,盡可能地保留原始數(shù)據(jù)所含信息,增強禿鷹算法從現(xiàn)有數(shù)據(jù)中搜尋最優(yōu)解的能力。
禿鷹算法與遺傳算法都具有較強的全局搜索能力。關(guān)于遺傳算法的參數(shù)設(shè)定為進化代數(shù)為100,種群規(guī)模為20,代溝為0.9;禿鷹算法優(yōu)化參數(shù)設(shè)置為進化代數(shù)為100,種群數(shù)目為20,優(yōu)化個數(shù)為2。
通過主成分分析可以選取表1 中的電壓、電流、數(shù)據(jù)編碼作為輸入變量,電池組SOC作為輸出變量。針對上述選取的因素進行歸一化操作處理,該模型在預(yù)測得到數(shù)據(jù)之后,仍需要進行反歸一化處理。歸一化公式如下:
式中:yn為表1 中選定因素的原始數(shù)據(jù);ymin和ymax為選定因素所有數(shù)據(jù)中的最小值和最大值;Yn為選定因素歸一化操作處理后的數(shù)據(jù)。
進行歸一化處理后,可以避免預(yù)測模型在預(yù)測時因訓(xùn)練集與測試集量級差別過大,造成預(yù)測誤差較大的問題。禿鷹算法具備優(yōu)秀的搜索能力,BES 中的禿鷹將歸一化處理后的數(shù)據(jù)作為模型的參數(shù)取值并將經(jīng)過訓(xùn)練得到的誤差作為目標(biāo)函數(shù),進行迭代尋優(yōu),找到最優(yōu)個體的位置(即懲罰因子C與核函數(shù)g)作為最佳學(xué)習(xí)參數(shù)進行回代。LS-SVM 模型應(yīng)用回代得到的最佳學(xué)習(xí)參數(shù)針對電池組SOC進行預(yù)測。
為分析各模型的可行性與有效性,本文主要采用以下4個誤差評價標(biāo)準(zhǔn),即均方根誤差(root mean square error,RMSE)、平均絕對誤差(mean absolute error,MAE)、平均絕對百分比誤差(mean absolute percentage error,MAPE)、仿真運行時長(t)。公式如(16)~(18):
式中:n為預(yù)測樣本個數(shù);Yti表示第i時刻的實際SOC值;Yci表示第i時刻,模型預(yù)報得到的SOC預(yù)測值。各模型的仿真運行時長t,利用tic-toc 語句,進行自動計時。
為了驗證本文提出的PBES-LS-SVM 算法在鋰電池組SOC預(yù)測方面的有效性。選定鋰離子電池組完整的放電數(shù)據(jù)作為測試集,利用BES-SVM、PBES-LS-SVM 模型及SOC預(yù)測研究中常用的算法如GA-BP、GA-SVM 等模型進行獨立的SOC預(yù)測對比實驗。
圖2 為各模型的SOC預(yù)測結(jié)果與真實值的對比曲線。其中,圖2(a)為數(shù)據(jù)驅(qū)動以神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的預(yù)測結(jié)果,從圖中可以看出,GA-BP 與GA-WNN 預(yù)測偏差過大。GA-BP 模型剛開始對SOC進行估計時,該模型的預(yù)測值與真實值差距不是很大,擬合度較好,但隨著估算樣本的增加,預(yù)測值有明顯的波動情況,個別預(yù)測樣本的結(jié)果逐漸偏離了SOC曲線,誤差隨之增大。GA-WNN 模型以小波函數(shù)代替原有復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),與GA-BP 相比預(yù)測效果較好,但擬合效果仍然過差。
圖2 完整放電過程SOC預(yù)測結(jié)果
圖2(b)為數(shù)據(jù)驅(qū)動以支持向量機為基礎(chǔ)的預(yù)測結(jié)果。顯然,以支持向量機為基礎(chǔ)的三種預(yù)測模型,實際誤差優(yōu)于上述兩種模型,預(yù)測結(jié)果更加逼近真實曲線,說明以支持向量機為基礎(chǔ)的改進模型更適合用于鋰電池組SOC的預(yù)測研究中。
從圖2(b)中可以看出,PBES-LS-SVM 的SOC預(yù)測模型與真實值更接近,表現(xiàn)出良好的收斂效果和預(yù)測效果。絕對誤差是預(yù)測值與真實值存在的實際偏差,圖3 為SOC預(yù)測模型的絕對誤差對比。
圖3 SOC絕對誤差對比
從圖3 可以看出,BES-SVM 模型的絕對誤差處于[-0.060,0.060]區(qū)間范圍,GA-SVM 的絕對誤差處于[-0.070,0.070]區(qū)間范圍,GA-WNN 與GA-BP 模型預(yù)測出現(xiàn)了較大的誤差,擬合度較差。而PBES-LS-SVM 模型的絕對誤差均處于[-0.050,0.050]區(qū)間范圍,最大絕對誤差僅為0.047。這證明了PBESLS-SVM 模型預(yù)測鋰電池組放電狀態(tài)SOC的可行性。
此外,表3 為五種模型的實驗指標(biāo)數(shù)值對比。結(jié)果顯示,PBES-LS-SVM 算法在RMSE、MAE、MAPE和運行時間t四個評價標(biāo)準(zhǔn)下均優(yōu)于其他算法預(yù)測模型,預(yù)測性能優(yōu)越。
表3 模型誤差結(jié)果對比
在全放電過程的驗證基礎(chǔ)上,隨機采取部分?jǐn)?shù)據(jù)集共10 100 組,驗證PBES-LS-SVM 模型在局部放電過程中的預(yù)估性能。圖4 為各模型預(yù)測局部放電過程的結(jié)果。
圖4 局部放電過程SOC預(yù)測值對比
其中,圖4(a)為數(shù)據(jù)驅(qū)動GA-BP 和GA-WNN 模型的預(yù)測結(jié)果,由曲線可以看出,預(yù)測值大幅度偏離實際值,擬合效果較差。此外,在仿真過程中發(fā)現(xiàn),以神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的數(shù)據(jù)驅(qū)動模型隨著仿真次數(shù)增加,GA-BP 和GA-WNN 模型的仿真結(jié)果變化不大,模型陷入了局部最優(yōu)解。由圖4(b)可知,將PBES-LS-SVM 與BES-SVM 進行對比,利用最小二乘線性系統(tǒng)作為損失函數(shù)優(yōu)化支持向量機,可以提升預(yù)測的擬合度。對比GA-SVM 與BES-SVM 模型的預(yù)測結(jié)果,可以發(fā)現(xiàn):利用禿鷹算法優(yōu)化支持向量機的預(yù)測值與真實值的波動幅度更小。
圖5 為各模型100 組的絕對百分比誤差。由圖5 可知,以SVM 模型為基礎(chǔ)的絕對百分比誤差均在[-5×10-3,5×10-3]內(nèi)。其中,PBES-LS-SVM 模型的最大絕對百分比誤差為1.6×10-3。仿真表明,被主成分分析優(yōu)化數(shù)據(jù)集后的BES-LS-SVM 模型預(yù)測結(jié)果與實際值擬合程度較好。以鋰離子電池局部放電過程數(shù)據(jù)為基礎(chǔ)的模型性能對比,如表4 所示。
圖5 絕對百分比誤差曲線圖
表4 SOC 預(yù)測誤差對比
表4 記錄了PBES-LS-SVM、BES-SVM 等預(yù)測模型在面對隨機部分?jǐn)?shù)據(jù)時的預(yù)測誤差對比。由圖5 和表4 可知,PBES-LS-SVM 模型的RMSE和MAE值最小,分別達(dá)到0.81%和0.41%,說明該模型仍保持良好的擬合能力,預(yù)測性能較好。
為實現(xiàn)準(zhǔn)確、快速預(yù)測鋰離子電池組SOC,避免利用神經(jīng)網(wǎng)絡(luò)易陷入局部最優(yōu)的問題,本文提出一種基于主成分分析和禿鷹算法優(yōu)化LS-SVM 模型的鋰離子電池組荷電狀態(tài)預(yù)測模型。主要結(jié)論如下:
(1)利用主成分分析處理數(shù)據(jù)選取主成分系數(shù)較高的因素作為BES-LS-SVM 模型的訓(xùn)練集,可以減小變量間相互影響,提升數(shù)據(jù)質(zhì)量。
(2)采用禿鷹算法優(yōu)化LS-SVM 中的懲罰系數(shù)C和核函數(shù)g,增強了模型的全局搜索能力和計算能力,提升了SVM 模型的擬合能力。
(3)仿真結(jié)果顯示,以支持向量機為基礎(chǔ)的預(yù)測模型更適用于鋰離子電池組荷電狀態(tài)的預(yù)測。本文提出的PBES-LSSVM 模型誤差低,具有良好的追蹤性、快速性和泛化性,能夠滿足SOC精確估算的工程要求。