黃永紅,沈洋洋,陳坤華,周杰,李冬
(1.江蘇大學(xué) 電氣信息工程學(xué)院, 江蘇 鎮(zhèn)江 212013; 2.國網(wǎng)蘇州供電公司, 江蘇 蘇州 215004)
鋰離子電池由于容量大、能量密度高、無記憶性的優(yōu)點,被廣泛應(yīng)用在電動工具、電動自行車、電動摩托車、電動汽車、軍事裝備、航空航天等多個領(lǐng)域。為了穩(wěn)定的發(fā)揮電池性能,提高電池使用壽命以及工作安全性,避免電池過度充電和深度放電,準(zhǔn)確的估測電池[1]的荷電狀態(tài)(SOC)具有非常重要的意義。為了實現(xiàn)SOC準(zhǔn)確在線預(yù)測,文獻[11]提出了一種機載蓄電池SOC估計方法,該方法基于放電試驗法對其荷電狀態(tài)進行估計。文獻[12]結(jié)合傳統(tǒng)安時積分法、開路電壓法及負(fù)載電壓法,綜合考慮充放電效率、溫度等因素的補償措施,提出一種新型SOC安時積分實時估算方法。文獻[13]通過電池恒流充放電特性實驗,得到錳酸鐵鋰電池開路電壓與對應(yīng)SOC的關(guān)系曲線及電池放電自恢復(fù)曲線。以上方法雖可以預(yù)測電池SOC,但都是根據(jù)電池的內(nèi)在物理屬性去預(yù)測,建立相應(yīng)的電池模型時包含一定的假設(shè)和經(jīng)驗成分,難以達到精確的估算。此外,還有些SOC預(yù)測方法如:卡爾曼濾波器[3-4]便于計算機編程,并能夠?qū)ΜF(xiàn)場采集的數(shù)據(jù)進行實時的更新和處理,但計算量大,周期長,對硬件性能要求高。神經(jīng)網(wǎng)絡(luò)法[5-6]非線性擬合能力強,但大量的樣本數(shù)據(jù)和綜合訓(xùn)練在很大程度上會影響到SOC預(yù)測的準(zhǔn)確度。
為此,提出一種PSO-LSSVM算法來實時預(yù)測鋰離子電池的SOC。其優(yōu)點是在一定的樣本數(shù)據(jù)下,使得鋰離子電池SOC估算誤差較小,并且不用考慮電池的內(nèi)部物理特性。因此,可以保證預(yù)測精度。利用 LSSVM 建立軟測量模型時,兩個主要因素直接影響著模型的準(zhǔn)確度,一是正則化參數(shù)λ,二是徑向基核寬度μ,故二者參數(shù)的優(yōu)化選擇十分重要。采用粒子群優(yōu)化算法(PSO)對這兩個參數(shù)進行優(yōu)選[7-8],該算法易于快速找出全局最優(yōu)解,具有方法簡單、效率高、易實現(xiàn)等優(yōu)點。以蓄電池工作電壓、電流為輸入量,電池SOC為輸出量建立軟測量模型[2],通過MATLAB仿真軟件進行模型訓(xùn)練并校正,試驗驗證了PSO-LSSVM 的精確性。
支持向量機[10]是根據(jù)結(jié)構(gòu)風(fēng)險最小化原則和統(tǒng)計學(xué)習(xí)理論所提出的。在訓(xùn)練樣本的過程中,SVM存在求解二次型優(yōu)化問題。LSSVM通過把不等式約束條件變成等式約束條件,將標(biāo)準(zhǔn)SVM 采用最小二乘線性系統(tǒng)誤差平方和作為損失函數(shù)情況下的一種特殊形式。
在一定數(shù)量的樣本集合下{ai,bi},i=1,2,……,N,樣本集合的空間維數(shù)為n,ai為樣本輸入向量,bi為樣本輸出向量。在LSSVM算法中引入非線性映射函數(shù)η(*),空間樣本被映射到函數(shù)η(ai)中,從而將低維空間的非線性函數(shù)逼近問題變?yōu)榫€性函數(shù)的逼近問題。在高維空間中LSSVM模型可以表示為:
y(a)=θTη(a)+c
(1)
式中θ為權(quán)矢量;c為偏差量。
為得到風(fēng)險最小化,需要尋找適當(dāng)?shù)摩?、c:
(2)
故該優(yōu)化為:
(3)
約束條件為:
yi=θTη(ai)+c+βi
(4)
式中βi代表松弛因子。
為了快速地找到該函數(shù)的最小值,運用拉朗日法對該問題優(yōu)化求解:
(5)
式中di代表拉格朗日因子。
根據(jù)KKT條件對式(5)進行處理,微分得出:
(6)
(7)
(8)
(9)
根據(jù)MERCER條件,定義核函數(shù)為:
η(ai,bj)=ηT(ai)η(bj)
(10)
故將優(yōu)化問題轉(zhuǎn)化為下面的線性方程組:
(11)
通過利用最小二乘法對該算法進行優(yōu)化求解,得出c、d的值,推斷出最小二乘支持向量機模型如下:
(12)
文中選取的基核的函數(shù)為:
(13)
式中μ表示基核寬度。
由上述分析可知,該預(yù)測模型的精確度受到λ和μ的影響。為了避免由于經(jīng)驗、隨機選擇造成的誤差,故使用PSO對該參數(shù)進行優(yōu)化。
粒子群算法是從隨機解角度考慮,最優(yōu)解是通過迭代尋找最優(yōu)解,其中適應(yīng)度用來衡量最優(yōu)解的質(zhì)量,其規(guī)則簡易,通過追隨當(dāng)前搜索到的最優(yōu)值來尋找全局最優(yōu)。每個粒子代表著一個解,該解空間包含位置矢量和速度矢量。對任意一點粒子i來說,位置向量ei=(ei1,ei2,……ein),速度向量vi=(vi1,vi2,……vin)。單個粒子經(jīng)歷過的最優(yōu)解的向量標(biāo)記為li=(li1,li2,……lin)。種群所有粒子經(jīng)歷的最優(yōu)解向量標(biāo)記為lq=(lq1,lq2,……lqn)。在該算法中通過以下公式進行迭代:
viu(h+1)=ωviu(h)+k1p1(liu(h)-eiu(h))+k2p2(lqu(h)-eiu(h))
(14)
eiu(h+1)=eiu(h)+viu(h+1)
(15)
其中ω為權(quán)重系數(shù),u=1,2,……,n,n為空間維數(shù);h為迭代次數(shù),i=1,2,……,s,s為種群樣本個數(shù),p1,p2為隨機數(shù)在0和1間。k1,k2是正常數(shù)。為了降低隨機性,學(xué)習(xí)因子c1=c2=2;viu∈[-vmax,vmax],vmax是粒子最大飛行速度,同時該數(shù)值決定了搜索的精度。若數(shù)值過大,則直接飛越最優(yōu)解;若數(shù)值過小,則只能進行局部尋優(yōu)。eiu∈[-emin,emax],eiu由實際的情況決定。粒子速度的取值通常取決于該粒子位置,一般情況下該數(shù)值為vmax=kemax。
粒子群算法中,為了平衡局部和全局搜索,要適當(dāng)?shù)倪M行參數(shù)ω的選擇。當(dāng)ω大時,全局大于局部搜索能力,當(dāng)ω小時,全局小于局部搜索能力。故在粒子群算法中,前期獲得全局收斂,后期不會陷入局部尋優(yōu)。權(quán)重參數(shù)ω應(yīng)該隨著h的變化從ωmax逐漸變?yōu)棣豰in,他們應(yīng)該滿足的關(guān)系式為:
(16)
式中H為最大迭代次數(shù)。
結(jié)合PSO算法,對LSSVM正則化參數(shù)λ和徑向基核寬度μ的選擇進行優(yōu)化,流程圖如圖1所示。
參數(shù)優(yōu)化具體步驟如下:
(1)對粒子群體各個參數(shù)進行初始化,包括c1、c2、H、ωmin、ωmax、ei、vi等。
(2)計算每個粒子的適應(yīng)度。適應(yīng)度公式為:
(17)
(3)通過計算適應(yīng)度和最優(yōu)適應(yīng)度相比較,更新適應(yīng)度,同時保存相應(yīng)的參數(shù)值。
圖1 LSSVM參數(shù)優(yōu)化流程
采用10組單體電壓為3.6 V鋰離子電池相串聯(lián),組成電壓、容量為36 V、10 Ah的電池組作為研究對象,利用型號為BTS6050C4的NBT電池測試系統(tǒng),在常溫條件下,充放電過程中每20 s采集一組電壓、電流以及容量,14 000 s內(nèi)總共收集到700組采樣數(shù)據(jù)。實驗獲取一個充放電循環(huán)五個工步數(shù)據(jù),工步類型依次為:靜置—恒流充電—恒壓充電—靜置—恒流放電—靜置。起始數(shù)據(jù)如表1所示。
表1 電池測試系統(tǒng)下各工步起始數(shù)據(jù)
在NBT電池測試系統(tǒng)下,獲得一個周期的充放電電壓、充放電電流及電池容量的真實值隨時間變化的數(shù)據(jù)曲線如圖2~圖4所示。
圖2 鋰離子電池充放電電壓曲線
圖3 鋰離子電池充放電電流曲線
圖4 鋰離子電池電池容量變化曲線
圖2、圖3中為該測試系統(tǒng)一個充放電循環(huán)五個工步下蓄電池充放電曲線,圖中看出在0 s~2 000 s時,蓄電池采用恒流充電,在時間2 000 s~5 000 s時,蓄電池采用恒壓充電,在5 000 s~8 000 s時,蓄電池采用恒流放電。在8 000 s~9 000 s時,蓄電池處于靜置狀態(tài)。在9 000 s~14 000 s,蓄電池處于恒流充電狀態(tài)。圖4是在0 s~14 000 s蓄電池電池容量隨著時間變化的曲線,其中在8 000 s~9 000 s時,蓄電池出現(xiàn)了略微的過充。
為了驗證PSO-LSSVM的優(yōu)越性,通過利用Matlab/Simulink仿真軟件進行仿真,以蓄電池工作電壓、電流為輸入量,電池SOC為輸出量建立預(yù)測模型。利用文中所述的 PSO-LSSVM 算法步驟進行模型參數(shù)優(yōu)化,得到最優(yōu)化的正則化參數(shù)λ=372 526.068 47,徑向基核寬度μ=81.644 13,權(quán)重系數(shù)ωmax=0.9,ωmin=0.3,最大迭代次數(shù)H=200,學(xué)習(xí)因子c1=c2=2。通過這些參數(shù)以及軟件仿真得出預(yù)測結(jié)果并與SVM、LSSVM兩種算法得出預(yù)測值進行了對比分析,如圖5、圖6所示。
圖5 SVM與PSO-LSSVM預(yù)測結(jié)果
圖6 LSSVM與PSO-LSSVM預(yù)測結(jié)果
從圖5、圖6分別可以看出,相比于SVM和LSSVM,在0 s~8 000 s之間PSO-LSSVM預(yù)測數(shù)據(jù)更接近真實值。在8 000 s~9 000 s之間,電池出現(xiàn)過充,PSO-LSSVM的預(yù)測精度和穩(wěn)定性優(yōu)于SVM和LSSVM。在9 000 s~14 000 s時,SVM和LSSVM波動較大,PSO-LSSVM穩(wěn)定性高。
為了直觀分析PSO-LSSVM模型預(yù)測的精確性,給出了PSO-LSSVM預(yù)測值和LSSVM、SVM 預(yù)測值的絕對誤差曲線,如圖7、圖8所示。
圖7 SVM與PSO-LSSVM絕對誤差曲線
圖8 LSSVM與PSO-LSSVM絕對誤差曲線
圖7、圖8中,在0 s~8 000 s和9 000 s~14 000 s時,PSO-LSSVM的絕對誤差最低,介于0~0.05之間。在8 000 s~9 000 s,電池發(fā)生過充電時,模型的預(yù)測偏差變大,但PSO-LSSVM預(yù)測值偏離真實值程度最小,由此可見該模型預(yù)測的精確性高。SVM預(yù)測值的相對誤差曲線如圖9、圖10所示。
由圖9、圖10的相對誤差曲線可看出,在0~8 000 s和9 000 s~14 000 s時,PSO-LSSVM相對誤差大多數(shù)介于0.05~0.12之間。在8 000 s~9 000 s時,當(dāng)電池
圖9 SVM與PSO-LSSVM相對誤差曲線
圖10 LSSVM與PSO-LSSVM相對誤差曲線
發(fā)生過充電時,所有模型的相對誤差偏大,但PSO-LSSVM整體相對誤差最小,進一步說明了PSO-LSSVM預(yù)測模型的精確度高。
表2是模型的部分性能比較。均方誤差反應(yīng)模型的整體性能,數(shù)值越低表明整體性能越好。決定系數(shù)范圍在[0,1]內(nèi),愈接近于1,表明模型的性能愈好。預(yù)測時間長短則表明模型的計算復(fù)雜度高低。
表2 模型的部分性能比較
從表2看出,PSO-LSSVM均方誤差最低,決定系數(shù)最高,預(yù)測時間最短,表明PSO-LSSVM模型的預(yù)測精度高,計算復(fù)雜度低。
(1)粒子群優(yōu)化最小二乘支持向量機軟測量算法(PSO-LSSVM)可用于鋰離子電池SOC預(yù)測,不用考慮鋰離子電池的內(nèi)部物理屬性;
(2)采用粒子群算法(PSO)對LSSVM兩個關(guān)鍵參數(shù)正則化參數(shù)λ和徑向基核寬度μ進行優(yōu)化,可以提高預(yù)測模型的穩(wěn)定性,減少迭代次數(shù)和運行時間;
(3)仿真和實驗結(jié)果表明PSO-LSSVM模型在線預(yù)測比LSSVM和SVM模型預(yù)測精確度高、穩(wěn)定性強、易實現(xiàn),且在正常和過充工作狀態(tài)下均可有效的進行蓄電池SOC在線預(yù)測。