劉金江, 顏伏伍*, 杜常清
(1. 武漢理工大學(xué) 現(xiàn)代汽車(chē)零部件技術(shù)湖北省重點(diǎn)實(shí)驗(yàn)室, 湖北 武漢 430070 2. 汽車(chē)零部件技術(shù)湖北省協(xié)同創(chuàng)新中心, 湖北 武漢 430070)
三元鋰離子電池具有比功率高、電化學(xué)性能穩(wěn)定、一致性好和低溫性能好等優(yōu)點(diǎn),是最具發(fā)展前景的鋰離子動(dòng)力電池.三元鋰離子動(dòng)力電池的荷電狀態(tài)(SOC)估計(jì)算法得到了廣泛的研究.動(dòng)力電池SOC的估計(jì)對(duì)于電池管理系統(tǒng)(BMS)的有效運(yùn)行和人車(chē)交互起到至關(guān)重要的作用.高效精確的SOC估計(jì)可以提供給駕駛員準(zhǔn)確的電池剩余電量的信息,還可以衡量動(dòng)力電池系統(tǒng)的可靠性,同時(shí)為電池的充放電策略提供準(zhǔn)確的數(shù)據(jù)基礎(chǔ)[1].
然而電動(dòng)汽車(chē)動(dòng)力電池的SOC受到如充放電電壓、電流、溫度、放電深度和老化程度等諸多因素的影響,為其精確的估算帶來(lái)了挑戰(zhàn).總體而言,SOC估計(jì)方法主要分為:常規(guī)算法、濾波算法和數(shù)據(jù)學(xué)習(xí)算法等.
SOC估計(jì)的常規(guī)算法包括開(kāi)路電壓法和安時(shí)積分法等.開(kāi)路電壓法簡(jiǎn)單、易行,且精度較高,但開(kāi)路電壓需要在動(dòng)力電池達(dá)到平衡狀態(tài)下才能測(cè)得,而動(dòng)力電池需要較長(zhǎng)時(shí)間的靜置才能達(dá)到平衡狀態(tài)[2],因此不適用于動(dòng)力電池SOC的在線(xiàn)估計(jì).安時(shí)積分法較易實(shí)現(xiàn),且耗費(fèi)的計(jì)算資源很少,然而,該方法較難確定SOC的初始值,一旦SOC的初始值有誤差,將會(huì)導(dǎo)致接下來(lái)的SOC估計(jì)會(huì)有累計(jì)誤差[3],這會(huì)造成估計(jì)精度越來(lái)越差.
SOC估計(jì)的濾波算法包括卡爾曼濾波算法及其改進(jìn)算法[4-7],被廣泛應(yīng)用于電池的SOC估計(jì),具有良好的自我修正的能力,可以適應(yīng)電流的急劇變化,但其估算精度嚴(yán)重依賴(lài)于電池等效電路模型的準(zhǔn)確性,且運(yùn)算量較大[8].
SOC估計(jì)的數(shù)據(jù)學(xué)習(xí)算法中,神經(jīng)網(wǎng)絡(luò)法可以通過(guò)已測(cè)得電池的外部數(shù)據(jù)進(jìn)行SOC的估計(jì),然而,該算法需要存儲(chǔ)大量的數(shù)據(jù)用于訓(xùn)練模型,因此,需要耗費(fèi)大量的內(nèi)存資源,有可能導(dǎo)致系統(tǒng)運(yùn)行超載[9].支持向量機(jī)法具有較強(qiáng)的泛化能力,特別是對(duì)小樣本數(shù)據(jù)的函數(shù)估計(jì),但該方法存在需要估計(jì)正則化參數(shù)、核函數(shù)必須滿(mǎn)足Mercer條件、所需核函數(shù)數(shù)量隨訓(xùn)練集增大而顯著增加等不足[10].
基于數(shù)據(jù)驅(qū)動(dòng)的另一種學(xué)習(xí)算法,相關(guān)向量機(jī)(RVM),在貝葉斯框架下進(jìn)行訓(xùn)練,為每一個(gè)權(quán)重值引入一個(gè)先驗(yàn)超參數(shù),進(jìn)行權(quán)重的約束,以避免出現(xiàn)過(guò)擬合,先驗(yàn)參數(shù)可以由給定訓(xùn)練數(shù)據(jù)迭代估計(jì)而來(lái),在先驗(yàn)參數(shù)的結(jié)構(gòu)下基于主動(dòng)相關(guān)決策理論來(lái)移除不相關(guān)的點(diǎn),從而獲得稀疏化的模型[11].在樣本數(shù)據(jù)的迭代學(xué)習(xí)過(guò)程中,大部分參數(shù)的后驗(yàn)分布趨于零,與預(yù)測(cè)值無(wú)關(guān),那些非零參數(shù)對(duì)應(yīng)的點(diǎn)被稱(chēng)作相關(guān)向量,體現(xiàn)了數(shù)據(jù)中最核心的特征[12].同支持向量機(jī)相比,相關(guān)向量機(jī)最大的優(yōu)點(diǎn)就是極大地減少了核函數(shù)的計(jì)算量,并且克服了所選核函數(shù)必須滿(mǎn)足Mercer條件的缺點(diǎn).文獻(xiàn)[8,12-13]均提出了基于RVM對(duì)電池進(jìn)行SOC估計(jì)的方法,但是都沒(méi)有進(jìn)行大樣本數(shù)據(jù)的預(yù)測(cè),其中進(jìn)行SOC估計(jì)時(shí)采用訓(xùn)練樣本最大的是文獻(xiàn)[13],僅為180組,而實(shí)際上,BMS會(huì)對(duì)電池的各項(xiàng)數(shù)據(jù)進(jìn)行實(shí)時(shí)采集,數(shù)據(jù)量比較大,因此必須考慮大樣本情況下基于RVM對(duì)三元鋰離子電池SOC的估計(jì)情況.
本文基于相關(guān)向量機(jī)研究了3種改進(jìn)算法,即循環(huán)相關(guān)向量機(jī)、自回歸相關(guān)向量機(jī)和自回歸循環(huán)相關(guān)向量機(jī)對(duì)估算SOC的適用性的各自特點(diǎn),采用了3 600組數(shù)據(jù)作為訓(xùn)練樣本,同時(shí)采用另外3 600組數(shù)據(jù)作為預(yù)測(cè)樣本,從估算精度、擬合能力、泛化能力和運(yùn)行速度等幾方面系統(tǒng)的對(duì)比分析了這3種改進(jìn)算法與最小二乘支持向量機(jī)算法的優(yōu)劣.
相關(guān)向量機(jī),是由Tipping[14]提出的監(jiān)督式學(xué)習(xí)算法,是一種非線(xiàn)性概率模型,預(yù)測(cè)模型
(1)
其中,x代表輸入向量,K(x,xi)≡φi(x)代表核函數(shù),{wn}代表模型的權(quán)重.
tn=y(xn;w)+n,
(2)
其中,tn服從均值為y(xn;w),方差為σ2的高斯分布,即
p(tn|x)=N(tn|y(xn),σ2).
由于tn是獨(dú)立的,其似然函數(shù)可以寫(xiě)成
p(t|w,σ2)=(2πσ2)-N/2×
(3)
其中
t=(t1…tN)T,
w=(w0…wN),
Φ=[φ(x1),φ(x2),…,φ(xN)]T,
φ(xn)=
[1,K(xn,x1),K(xn,x2),…,K(xn,xN)]T.
如果將所有的訓(xùn)練數(shù)據(jù)均作為模型的參數(shù),那么在通過(guò)(3)式進(jìn)行權(quán)重w和噪聲方差σ2的最大似然估計(jì)時(shí)將會(huì)導(dǎo)致嚴(yán)重的過(guò)擬合問(wèn)題,為了避免此類(lèi)情況的發(fā)生,通常的解決辦法是對(duì)參數(shù)施加一些額外的限制約束,例如給似然函數(shù)或者誤差函數(shù)添加復(fù)雜度懲罰項(xiàng).在RVM算法中,采用先驗(yàn)概率分布來(lái)進(jìn)行權(quán)重w的約束,通常采用零均值高斯先驗(yàn)分布:
(4)
其中,α是含有N+1個(gè)超參數(shù)的向量,每一個(gè)先驗(yàn)超參數(shù)α都對(duì)應(yīng)著一個(gè)權(quán)重w,它起到調(diào)節(jié)作用.定義先驗(yàn)參數(shù)α為權(quán)重w的先驗(yàn)超參數(shù),為了說(shuō)明權(quán)重w的先驗(yàn)超參數(shù)α,需要為α定義一個(gè)先驗(yàn)分布,同時(shí),為了說(shuō)明噪聲方差,需要定義另一個(gè)先驗(yàn)分布,這2個(gè)超參數(shù)的先驗(yàn)分布一般采用伽馬分布.
(2π)-(N+1)/2|Σ|-1/2×
(5)
該后驗(yàn)概率的協(xié)方差和均值分別為
Σ=(σ-2ΦTΦ+A)-1,
(6)
μ=σ-2ΣΦTt,
(7)
其中,A=diag(α0,α1,…,αN).
由(6)和(7)式可知,為了求得權(quán)重的估計(jì)值就要計(jì)算出其后驗(yàn)概率分布的均值μ,而μ由協(xié)方差Σ給出,則必須先求出超參數(shù)α和β(令β=σ-2)的最佳取值,又知超參數(shù)的先驗(yàn)分布在對(duì)數(shù)尺度上具有一致性,因此,問(wèn)題實(shí)際轉(zhuǎn)化為最大化p(t|α,σ2),
L(α)=logp(t|α,σ2)=
(8)
其中協(xié)方差C=σ2I+ΦA(chǔ)-1ΦT.
則RVM的模型學(xué)習(xí)轉(zhuǎn)化為邊緣似然函數(shù)的對(duì)數(shù)(8)式對(duì)α、σ2的最大值的求解,即αMP和σ2MP.
通過(guò)邊緣似然函數(shù)的快速最大化方法[15],進(jìn)行循環(huán)迭代,當(dāng)超參數(shù)估計(jì)收斂,α、σ2均為最大值,即αMP和σ2MP時(shí),基于權(quán)重的后驗(yàn)分布對(duì)于新樣本數(shù)據(jù)x*進(jìn)行目標(biāo)值t*的預(yù)測(cè):
(9)
由于(9)式中等式右邊兩項(xiàng)均為高斯積分,則有
(10)
y*=μTφ(x*),
(11)
(12)
由此可知,對(duì)于數(shù)據(jù)x*的目標(biāo)值t*的預(yù)測(cè)均值即為y(x*;μ),其中,基函數(shù)權(quán)重的后驗(yàn)概率均值矩陣μ中,有很多項(xiàng)為零,這也是RVM稀疏性的保證.對(duì)于數(shù)據(jù)x*的目標(biāo)值t*的預(yù)測(cè)方差包含兩部分,一是噪聲估計(jì)中的方差,二是由于權(quán)重預(yù)測(cè)的不確定性造成的方差.
本文采用的三元鋰離子電池的額定容量16.4 Ah,放電截止電壓2.8 V,充電截止電壓4.35 V.通過(guò)電池測(cè)試設(shè)備在三元鋰離子電池充放電過(guò)程中,進(jìn)行包括充放電電壓、電流、容量和溫度以及時(shí)間等數(shù)據(jù)的采集.本文選擇三元鋰離子電池放電過(guò)程中的3 600組數(shù)據(jù)以供模型學(xué)習(xí)使用,選擇另外3 600組數(shù)據(jù)以供驗(yàn)證模型的估算精度.
由于輸入各變量和輸出變量的量綱不一致以及變化范圍差別較大,為了加快收斂速度,因此需要對(duì)采集的數(shù)據(jù)進(jìn)行歸一化處理,即將放電電壓、放電電流、溫度、時(shí)間以及放電容量等數(shù)據(jù)映射到[0,1]范圍內(nèi),則有
(13)
其中,Di為原始數(shù)據(jù),Dn為歸一化后數(shù)據(jù),Dmax為數(shù)據(jù)中最大值,Dmin為數(shù)據(jù)中最小值.
基于RVM算法的SOC估計(jì)的計(jì)算流程圖如圖1所示[12].
圖 1 基于RVM算法的SOC估計(jì)的計(jì)算流程圖
在RVM學(xué)習(xí)算法中,要選擇適當(dāng)?shù)暮撕瘮?shù),以將輸入空間映射到高維空間,常用的核函數(shù)有Sigmoid核函數(shù)、多項(xiàng)式核函數(shù)、線(xiàn)性核函數(shù)、徑向基核函數(shù)以及復(fù)合核函數(shù)等,其中徑向基核函數(shù)中的高斯核函數(shù)具有較強(qiáng)的非線(xiàn)性、可分性和局部性的優(yōu)點(diǎn)[12],本文選擇高斯核函數(shù)作為RVM學(xué)習(xí)算法中的核函數(shù):
,(14)
其中,xc為核函數(shù)中心,b為核函數(shù)的帶寬,控制函數(shù)的徑向作用范圍.
當(dāng)以三元鋰離子電池的放電電壓、放電電流和溫度作為輸入,SOC作為輸出,進(jìn)行基于RVM模型的學(xué)習(xí),其過(guò)程如圖2所示.
本文采用了一種改進(jìn)的RVM算法,即循環(huán)相關(guān)向量機(jī)(RC-RVM),與常規(guī)RVM不同之處在于,RC-RVM將前一時(shí)刻的輸出反饋到輸入,和輸入共同進(jìn)行輸出的預(yù)測(cè),即模型的學(xué)習(xí).基于RC-RVM的SOC估計(jì),以三元鋰離子電池的放電電壓、放電電流、溫度和前一時(shí)刻的SOC作為輸入,SOC作為輸出,進(jìn)行模型的學(xué)習(xí),其過(guò)程如圖3所示.采用該方法的優(yōu)勢(shì)在于,估計(jì)出的SOC值不會(huì)發(fā)生突變,是一種閉環(huán)形式的反饋機(jī)制,以此來(lái)提高SOC的估計(jì)精度.
圖 2 基于RVM的SOC估計(jì)示意圖
圖 3 基于RC-RVM的SOC估計(jì)示意圖
本文采用的另一種改進(jìn)的RVM算法,即自回歸相關(guān)向量機(jī)(AG-RVM),與常規(guī)RVM不同之處在于,AG-RVM將前一時(shí)刻的輸入和現(xiàn)時(shí)刻的輸入共同進(jìn)行輸出的預(yù)測(cè),即模型的學(xué)習(xí).基于AG-RVM的SOC估計(jì),以三元鋰離子電池前一時(shí)刻和現(xiàn)時(shí)刻的放電電壓、放電電流和溫度作為輸入,SOC作為輸出,進(jìn)行模型的學(xué)習(xí),其過(guò)程如圖4所示.
圖 4 基于AG-RVM的SOC估計(jì)示意圖
采用該方法的優(yōu)勢(shì)在于,同時(shí)考慮了之前時(shí)刻和現(xiàn)時(shí)刻的電池?cái)?shù)據(jù)對(duì)于SOC的影響,通過(guò)降低基礎(chǔ)數(shù)據(jù)的突變對(duì)于SOC估計(jì)的影響,來(lái)提高估計(jì)精度.
本文采用的最后一種改進(jìn)的RVM算法,即自回歸循環(huán)相關(guān)向量機(jī)(AG-RC-RVM),與常規(guī)RVM不同之處在于,AG-RC-RVM將前一時(shí)刻的輸入和現(xiàn)時(shí)刻的輸入以及前一時(shí)刻的輸出共同作為輸入,進(jìn)行輸出的預(yù)測(cè).基于AG-RC-RVM的SOC估計(jì),以三元鋰離子電池前一時(shí)刻和現(xiàn)時(shí)刻的放電電壓、放電電流、溫度以及前一時(shí)刻的SOC作為輸入,SOC作為輸出,進(jìn)行模型的學(xué)習(xí),其過(guò)程如圖5所示.
采用該方法的優(yōu)勢(shì)在于,可以綜合RC-RVM和AG-RVM的優(yōu)點(diǎn),從而進(jìn)一步提高估計(jì)精度.
圖 5 基于AG-RC-RVM的SOC估計(jì)示意圖
本文采用最大誤差(ME)和均方根誤差(RMSE)來(lái)評(píng)估RVM模型的擬合能力和泛化能力.ME和RMSE分別為
ME=maxi(|f(xi)-yi|),
(15)
(16)
取核函數(shù)的帶寬值b=0.25,分別通過(guò)常規(guī)RVM算法、RC-RVM算法、AG-RVM算法和AG-RC-RVM算法對(duì)3 600組訓(xùn)練數(shù)據(jù)進(jìn)行學(xué)習(xí)、建模,并對(duì)另外3 600組數(shù)據(jù)進(jìn)行預(yù)測(cè),將擬合ME、擬合RMSE、預(yù)測(cè)ME、預(yù)測(cè)RMSE、運(yùn)行時(shí)間、迭代次數(shù)、支持向量數(shù)列表如表1所示.
表 1 4種算法的各項(xiàng)性能指標(biāo)對(duì)比
由表1可知,RC-RVM算法、AG-RVM算法和AG-RC-RVM算法相比于常規(guī)RVM算法在預(yù)測(cè)精度方面均有較大提升,泛化能力增強(qiáng),而運(yùn)行時(shí)間則進(jìn)一步縮短,其中,AG-RC-RVM算法表現(xiàn)最佳.
在RVM學(xué)習(xí)算法中,由于高斯核函數(shù)的帶寬對(duì)學(xué)習(xí)模型的稀疏性、擬合與泛化能力具有較大影響,因此帶寬選擇的不同會(huì)導(dǎo)致學(xué)習(xí)模型的各項(xiàng)性能指標(biāo)千差萬(wàn)別,本文通過(guò)選擇不同的帶寬,分別基于常規(guī)RVM、RC-RVM、AG-RVM和AG-RC-RVM進(jìn)行了模型的學(xué)習(xí),以擬合ME、擬合RMSE、預(yù)測(cè)ME、預(yù)測(cè)RMSE、迭代次數(shù)、支持向量數(shù)、運(yùn)行時(shí)間為性能指標(biāo)進(jìn)行了試驗(yàn),結(jié)果如圖6所示.
通過(guò)分析圖6可知,隨著高斯核函數(shù)帶寬的從小到大,各種RVM所需支持向量數(shù)逐漸減少,即稀疏性越來(lái)越好;而擬合誤差逐漸增大,即擬合效果越來(lái)越差;估算誤差逐漸降低,到帶寬值為0.55左右后又呈現(xiàn)震蕩趨勢(shì),即泛化能力越來(lái)越好,到帶寬值為0.55左右后又呈現(xiàn)不確定狀態(tài).由分析可知,帶寬對(duì)各種RVM算法的影響較為復(fù)雜,并不是嚴(yán)格意義上的線(xiàn)性相關(guān),但是通過(guò)分析對(duì)比可以得出,AG-RC-RVM相較于另外3種RVM算法,在各項(xiàng)性能指標(biāo)方面均有較大提升,尤其在帶寬值為0.55時(shí),擬合誤差、估算誤差均在1%以?xún)?nèi),估算精度最高,而僅需9個(gè)支持向量,運(yùn)行時(shí)間僅需0.67 s(如圖7所示).
圖 7 核函數(shù)帶寬為0.55時(shí)基于AG-RC-RVM的SOC估計(jì)的各項(xiàng)性能指標(biāo)
綜上所述,可以得出核函數(shù)帶寬值為0.55時(shí)的基于AG-RC-RVM的SOC估計(jì)算法具有快速、高效、精度高和泛化能力強(qiáng)等特點(diǎn).文獻(xiàn)[16]提出了基于最小二乘支持向量機(jī)(Least Square Support Vector Machine, LS-SVM)的SOC估計(jì)算法,驗(yàn)證結(jié)果表明,該模型具有較高的預(yù)測(cè)精度,即便在有噪聲干擾的情況下也可以快速進(jìn)行SOC估計(jì).本文選擇LS-SVM與常規(guī)RVM以及本文提出的3種改進(jìn)RVM算法進(jìn)行各項(xiàng)性能指標(biāo)的對(duì)比試驗(yàn).5種算法的擬合曲線(xiàn)、預(yù)測(cè)曲線(xiàn)、擬合誤差曲線(xiàn)和預(yù)測(cè)誤差曲線(xiàn)如圖8所示.
圖 8 5種學(xué)習(xí)算法的各項(xiàng)性能指標(biāo)對(duì)比
5種算法的各項(xiàng)性能指標(biāo)如表2所示.
表2 5種算法的各項(xiàng)性能指標(biāo)
通過(guò)對(duì)比分析可知:
1) 在稀疏性方面,RC-RVM所需支持向量數(shù)最少,僅為9個(gè),因此稀疏性最好,而LS-RVM需要26個(gè)支持向量,為另外4種算法的3倍左右,稀疏性較差.
2) 在擬合能力方面,通過(guò)對(duì)擬合ME和擬合RMSE的分析可知,AG-RC-RVM和LS-SVM的擬合誤差均在1%以?xún)?nèi),擬合能力遠(yuǎn)超其他3種算法.
3) 在預(yù)測(cè)性能即泛化能力方面,通過(guò)對(duì)預(yù)測(cè)ME和預(yù)測(cè)RMSE的分析可知,AG-RC-RVM和LS-SVM的預(yù)測(cè)誤差均在1%以?xún)?nèi),泛化能力遠(yuǎn)超其他3種算法.
4) 在運(yùn)行速度方面,通過(guò)對(duì)比運(yùn)行時(shí)間可以發(fā)現(xiàn),LS-SVM所需要的運(yùn)行時(shí)間遠(yuǎn)遠(yuǎn)超過(guò)另外4種算法,運(yùn)行速度較慢,這是由于SVM隨著訓(xùn)練樣本的增加,會(huì)導(dǎo)致模型更加復(fù)雜,需要占用大量的計(jì)算資源和運(yùn)行時(shí)間所致.
綜上分析,可以得出,基于AG-RC-RVM算法的SOC估計(jì),是5種算法里綜合性能最佳的結(jié)論.
本文將RVM算法運(yùn)用到三元鋰離子電池的SOC估計(jì)之中,對(duì)比研究了改進(jìn)后的RVM算法,即RC-RVM、AG-RVM和AG-RC-RVM算法,再與當(dāng)前應(yīng)用比較廣泛的LS-SVM算法進(jìn)行比較后,綜合分析得出,AG-RC-RVM算法具有較好的稀疏性,通過(guò)數(shù)據(jù)學(xué)習(xí)所得模型較為簡(jiǎn)單,所占用計(jì)算資源較少,所需計(jì)算時(shí)間較短,而且擬合誤差和預(yù)測(cè)誤差均在1%以?xún)?nèi),具有非常好的擬合能力和泛化能力.從而得出,基于AG-RC-RVM算法的三元鋰離子電池的SOC估計(jì)方法,具有精度高、擬合與泛化能力強(qiáng)和運(yùn)行速度快等優(yōu)點(diǎn).