廖子豪,于麗婭,李少波,周 鵬,2,張安思,李傳江
(1.貴州大學(xué) a.現(xiàn)代制造技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室;b.機(jī)械工程學(xué)院,貴陽 550025;2.清華大學(xué)機(jī)械工程學(xué)院,北京 100062)
鋰離子電池依靠內(nèi)部鋰離子的流動產(chǎn)生電流,具有功率密度大、工作溫度范圍寬、使用壽命長等優(yōu)點(diǎn)。雖然歷經(jīng)了多年的改良和優(yōu)化,鋰離子電池的長期使用仍然會造成其性能衰退,從而影響其使用壽命和使用安全性,甚至進(jìn)而造成嚴(yán)重的財產(chǎn)、人員等的損失[1-2],所以非常有必要對鋰離子電池的剩余使用壽命(remaining useful life,RUL)進(jìn)行預(yù)測,從而實(shí)現(xiàn)健康管理,以規(guī)避多種損傷電池壽命的操作并安全有效地對鋰離子電池進(jìn)行合理管理及使用[3]。
鋰離子電池內(nèi)部系統(tǒng)是一個隨時間變化的動態(tài)系統(tǒng),HU等[4]分析了電池壽命衰減的外部影響因素以及內(nèi)部物理、化學(xué)因素,并從基于模型、基于數(shù)據(jù)驅(qū)動、基于融合的三類算法對電池RUL發(fā)展現(xiàn)狀進(jìn)行了系統(tǒng)總結(jié)?;谀P偷碾姵豏UL預(yù)測方法是利用專業(yè)相關(guān)的知識和經(jīng)驗(yàn)建立電池壽命退化數(shù)學(xué)模型,例如電池內(nèi)部結(jié)構(gòu)的物理模型或是電化學(xué)方程,從電池內(nèi)部結(jié)構(gòu)出發(fā),深入探討其中的數(shù)學(xué)機(jī)理和退化規(guī)律,具有性能穩(wěn)定、預(yù)測精度高等優(yōu)點(diǎn),但缺點(diǎn)是其需要知道準(zhǔn)確的電化學(xué)、電池物理作用方程,且不適合于離線檢測[5-7]?;跀?shù)據(jù)的電池RUL預(yù)測方法通過采集電池壽命退化的相關(guān)失效數(shù)據(jù),利用算法挖掘數(shù)據(jù)隱含信息和數(shù)據(jù)之間的潛在聯(lián)系,在統(tǒng)計分析等技術(shù)的支持下建立電池壽命退化的逼近模型,再將模型外推從而實(shí)現(xiàn)電池RUL的預(yù)測?;谌诤系碾姵豏UL預(yù)測方法通過融合和集成模型與算法、算法與算法,充分發(fā)揮各種方法的優(yōu)點(diǎn)并揚(yáng)長辟短,更好的提取和使用數(shù)據(jù)中的信息與數(shù)據(jù)特征,以獲得更優(yōu)異的網(wǎng)絡(luò)模型魯棒性和預(yù)測精度[8-10],但基于融合的方法存在的高消耗、數(shù)據(jù)需求大等問題又限制了其應(yīng)用范圍和泛化能力。
數(shù)據(jù)驅(qū)動的預(yù)測算法最大的優(yōu)點(diǎn)就是不需要知道電池的準(zhǔn)確模型,只需要一定量的退化數(shù)據(jù)即可完成,因此,數(shù)據(jù)驅(qū)動的電池RUL預(yù)測方法更加流行,應(yīng)用也更加廣泛,慢慢成為了電池壽命預(yù)測的主流方法[11-13]。數(shù)據(jù)驅(qū)動的電池RUL預(yù)測方法主要有人工神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、支持向量回歸、粒子濾波等,其中人工神經(jīng)網(wǎng)絡(luò)旨在模擬人類腦部神經(jīng)系統(tǒng)運(yùn)作,因其強(qiáng)大的非線性處理能力、自適應(yīng)性和自學(xué)習(xí)能力等優(yōu)點(diǎn)在電池壽命預(yù)測問題中大放異彩[14],但是人工神經(jīng)網(wǎng)絡(luò)帶來的訓(xùn)練緩慢、資源消耗過大、泛化性較弱等問題也在使用過程中慢慢地顯現(xiàn)出來,成為了阻礙其在鋰離子電池壽命預(yù)測方向發(fā)展的難點(diǎn),好在增量學(xué)習(xí)的出現(xiàn)逐步解決了這些問題。
隨機(jī)配置網(wǎng)絡(luò)(stochastic configuration networks,SCN)是一種采用增量學(xué)習(xí)方式的神經(jīng)網(wǎng)絡(luò),具有網(wǎng)絡(luò)泛化性強(qiáng)、結(jié)構(gòu)簡單、實(shí)時性強(qiáng)、訓(xùn)練快速等優(yōu)點(diǎn)。因此,本文使用SCN進(jìn)行鋰離子電池的壽命預(yù)測實(shí)驗(yàn),旨在解決鋰離子電池壽命預(yù)測中存在的精度低、訓(xùn)練數(shù)據(jù)需求大等問題,并使用FNN、CNN、LSTM等多種神經(jīng)網(wǎng)絡(luò)與所提方法進(jìn)行對比驗(yàn)證,證明本文所提方法的可用性與優(yōu)越性,為隨機(jī)配置算法在電池壽命預(yù)測中的準(zhǔn)確應(yīng)用及推廣提供科學(xué)依據(jù),也為鋰離子電池在航空航天、電子設(shè)備、汽車等多個領(lǐng)域的安全應(yīng)用提供科學(xué)保障。
神經(jīng)網(wǎng)絡(luò)由于其對非線性映射良好的逼近能力和數(shù)據(jù)學(xué)習(xí)能力,被廣泛應(yīng)用于數(shù)據(jù)建模。但神經(jīng)網(wǎng)絡(luò)的構(gòu)建存在一個現(xiàn)實(shí)性問題,即無法事先確定合適的網(wǎng)絡(luò)架構(gòu)以使模型達(dá)到良好的學(xué)習(xí)效率和泛化性能,而且計算參數(shù)(輸入權(quán)重,偏差和輸出權(quán)重)的過程既費(fèi)時又費(fèi)力,很難用于大規(guī)模數(shù)據(jù)分析。針對這些問題,人們開始了對增量式神經(jīng)網(wǎng)絡(luò)的研究,從小規(guī)模的網(wǎng)絡(luò)開始,逐漸生成隱藏層節(jié)點(diǎn)和輸出權(quán)重,直到滿足預(yù)先設(shè)定的終止條件[15]。隨機(jī)學(xué)習(xí)算法不僅在網(wǎng)絡(luò)模型的建立上具有巨大的潛力,而且大大降低了網(wǎng)絡(luò)的計算成本[16-19]。還有一種增量學(xué)習(xí)式神經(jīng)網(wǎng)絡(luò)-隨機(jī)配置網(wǎng)絡(luò),不僅可以用于分類研究,還可以用于回歸預(yù)測[20-23]。
對于給定的目標(biāo)函數(shù)f:Rd→Rm,假設(shè)已建立一個擁有L-1個隱藏節(jié)點(diǎn)的單層前向反饋網(wǎng)絡(luò),如式(1)所示。
(1)
將誤差表示為式(2)。
eL-1=f-fL-1=[eL-1,1,…,eL-1,m]
(2)
若誤差eL-1未能達(dá)到預(yù)定誤差限,算法目的就是以增量學(xué)習(xí)的方法添加βL,gL(其中g(shù)L的權(quán)重為ωL,偏置為bL),更新fL=fL-1+βLgL,直到誤差eL-1達(dá)到給定誤差限。
(3)
如果生成的隨機(jī)基函數(shù)gL滿足式(4)。
(4)
且輸出權(quán)重由式(5)
(5)
式中,
(6)
從而推導(dǎo)得出一種具有強(qiáng)泛化性的逼近器。
不同于其他最大化目標(biāo)函數(shù)的方法,式(4)中的監(jiān)督機(jī)制通過計算最佳的權(quán)重ωL和偏置bL得到合適的新增節(jié)點(diǎn),從而進(jìn)一步達(dá)到滿足式(7)的數(shù)理?xiàng)l件。
(7)
顯然式(8)
βL=[βL,1,…,βL,m]T
(8)
通過
(9)
式(9)分析求值得到,并在網(wǎng)絡(luò)中保持固定不變以進(jìn)行進(jìn)一步節(jié)點(diǎn)的添加。但是,這種方法可能會導(dǎo)致構(gòu)造過程的收斂速度緩慢。因此,作者重新考慮了輸出權(quán)重的計算方案,即根據(jù)式(4)計算得到gj(j=1,2,…,L),通過最小化全局殘差來計算得到β1,β2,…,βL的值。
SCN涉及兩個關(guān)鍵參數(shù):隱藏節(jié)點(diǎn)的數(shù)量和隨機(jī)參數(shù)的范圍。節(jié)點(diǎn)的數(shù)量盡可能大量設(shè)置,第二個參數(shù)與隨機(jī)基函數(shù)的逼近能力有關(guān)。SCN的建立分為兩個步驟:①隱藏節(jié)點(diǎn)參數(shù)的配置:隨機(jī)分配輸入權(quán)重和偏差以滿足式(4)。然后生成一個新的隱藏節(jié)點(diǎn)并將其添加到當(dāng)前學(xué)習(xí)者模型中。②計算輸出權(quán)重:通過使用最小二乘法或其正則化版本來求解線性方程系統(tǒng)來降低輸出權(quán)重。
SCN采用Sigmoid函數(shù)作為隱藏節(jié)點(diǎn)激活函數(shù),其中參數(shù)Y={λ1:Δλ:λmax}對自適應(yīng)確定隨機(jī)參數(shù)w和b的范圍設(shè)置起著重要作用,雖然隨機(jī)性有利于新添加的隱藏節(jié)點(diǎn)的快速配置,但參數(shù)的搜索范圍可能對輸入數(shù)據(jù)有關(guān)。由式(4)可得,權(quán)重ωL和偏置bL的隨機(jī)分配應(yīng)該具有一定的約束性且與輸入數(shù)據(jù)相關(guān)。也就是說,隱藏參數(shù)的配置需要與給定的訓(xùn)練樣本相關(guān)聯(lián),而不是完全依賴于隨機(jī)權(quán)重和偏差的預(yù)設(shè)定,不應(yīng)嚴(yán)格固定。事實(shí)上,在添加新的隱藏節(jié)點(diǎn)的過程中,λ∈Y是變化的。除了期望的誤差容限e,也可以通過預(yù)先設(shè)置的最大隱藏節(jié)點(diǎn)個數(shù)Lmax來終止算法,以防止出現(xiàn)過擬合現(xiàn)象。
隨著節(jié)點(diǎn)的增加,當(dāng)殘留誤差變得足夠小時,w和b的隨機(jī)配置也會變得越來越困難。為了克服這個問題,SCN取r的時變值,這種情況下的r需要設(shè)置得非常接近1,以使式(10)趨近于0,從而盡可能地使得ξL≥0。
(10)
(11)
本文采用NASA電池數(shù)據(jù)集PCoE Datasets中的B0005、B0006、B0007三塊電池的數(shù)據(jù)作為SCN的輸入數(shù)據(jù)進(jìn)行交叉驗(yàn)證實(shí)驗(yàn),利用一塊電池的放電電壓數(shù)據(jù)序列和電池容量數(shù)據(jù)序列對SCN進(jìn)行訓(xùn)練,分別再利用其余兩塊電池的放電電壓數(shù)據(jù)對自身容量進(jìn)行預(yù)測,從而實(shí)現(xiàn)鋰離子電池的剩余有效壽命預(yù)測。PCoE數(shù)據(jù)集在不同溫度下對電池進(jìn)行充放電處理,記錄了電池的充放電電壓、電流、溫度、阻抗等數(shù)據(jù),是很好的數(shù)據(jù)驅(qū)動算法可用數(shù)據(jù)集[24],表1列出了NASA電池數(shù)據(jù)的具體信息。
表1 NASA電池數(shù)據(jù)
2.2.1 健康因子
本文選取電池放電電壓作為間接健康子,電池容量作為健康因子[26],利用電池放電電壓作為網(wǎng)絡(luò)輸入數(shù)據(jù),建立數(shù)據(jù)驅(qū)動的電池容量預(yù)測模型,進(jìn)而預(yù)測電池容量并對鋰離子電池的健康狀態(tài)進(jìn)行評估。并使用灰色關(guān)聯(lián)度分析(grey relation analysis,GRA)證明健康因子選取的可靠性?;疑P(guān)聯(lián)度分析用于計算系統(tǒng)中其他元素對某元素的影響程度。假設(shè)在一個灰色系統(tǒng)中有n個影響元素,有一個重要元素X,已知其他n-1個元素對X均有不同程度的影響力,可以使用多元素統(tǒng)計分析計算其他n-1個元素對X的影響程度強(qiáng)弱??衫孟率接嬎銉蓚€數(shù)據(jù)元素之間的GRA值,兩個元素的緊密程度越高,則得到的GRA值越高。
(12)
式中,ξi(k)為計算出的第k個影響元素序列的灰色關(guān)聯(lián)系數(shù);y(k)為參考元素序列即上文中提到的受關(guān)注元素序列X,在本文中為電池容量序列;xi(k)為比較元素序列即上文中提到的n-1個其他元素序列,在本文中為放電電壓序列;ρ為自定義的分辨系數(shù)(一般取0.6)。最后根據(jù)式(13)求出放電電壓序列的平均值,得到放電電壓對電池容量的灰色關(guān)聯(lián)度值。表2是電池B0005各放電數(shù)據(jù)對容量的灰色關(guān)聯(lián)度值。
表2 各放電數(shù)據(jù)對容量的灰色關(guān)聯(lián)度值
圖1是經(jīng)過預(yù)處理后的電池B0007的電壓vol與容量cap衰減對比圖像。根據(jù)放電電壓以及電池容量的衰減圖像可以更為直觀地觀察到兩個系統(tǒng)元素的關(guān)聯(lián)度。
圖1 電池電壓與容量衰減圖像對比
2.2.2 訓(xùn)練數(shù)據(jù)
(13)
考慮到鋰離子電池在充放電的開始和結(jié)束階段因?yàn)榛瘜W(xué)反應(yīng)造成的電壓不穩(wěn)定情況,相比較電池的168次循環(huán)數(shù)據(jù)我們?nèi)サ魯?shù)據(jù)的開始30次循環(huán)和結(jié)尾38次循環(huán),采用中間的100次循環(huán)數(shù)據(jù)對SCN進(jìn)行訓(xùn)練。以下是我們得到的網(wǎng)絡(luò)訓(xùn)練RMSE、訓(xùn)練集擬合圖像和測試集擬合圖像對比,其中網(wǎng)絡(luò)實(shí)驗(yàn)采用B0005電池作訓(xùn)練集B0007電池作測試集的組合。圖2和圖3分別是100次循環(huán)數(shù)據(jù)做訓(xùn)練集和168次循環(huán)數(shù)據(jù)做訓(xùn)練集的算法擬合圖像,圖4是100次循環(huán)數(shù)據(jù)做訓(xùn)練集和168次循環(huán)數(shù)據(jù)做訓(xùn)練集的算法擬合對比圖像。
圖2 100次循環(huán)數(shù)據(jù)做訓(xùn)練集的擬合圖像 圖3 168次循環(huán)數(shù)據(jù)做訓(xùn)練集的擬合圖像
圖4 100次與168次循環(huán)數(shù)據(jù)做訓(xùn)練集的網(wǎng)路測試擬合圖像對比
對比100次循環(huán)數(shù)據(jù)與168次循環(huán)數(shù)據(jù)分別做網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù)集的測試擬合圖像,以及表3中RMSE均值可以看出,去掉電壓數(shù)據(jù)的開始30次循環(huán)和結(jié)尾38次循環(huán)可以有效減少不穩(wěn)定電壓數(shù)據(jù)對網(wǎng)絡(luò)訓(xùn)練的影響,從而加強(qiáng)網(wǎng)絡(luò)訓(xùn)練效果,因此我們最終采用去除開始30次循環(huán)和結(jié)尾38次循環(huán)的電池放電電壓100次循環(huán)據(jù)作為SCN的訓(xùn)練輸入數(shù)據(jù)。
表3 網(wǎng)絡(luò)RMSE值
2.2.3 訓(xùn)練參數(shù)
在確定了訓(xùn)練集數(shù)據(jù)量后,接下來我們以電池B0005做訓(xùn)練集電池B0007做測試集,利用單一變量實(shí)驗(yàn)找出最佳的Lmax,即隱藏層最大節(jié)點(diǎn)個數(shù)。從表4中不難看出,隨著隱藏層最大節(jié)點(diǎn)數(shù)的增加,網(wǎng)絡(luò)訓(xùn)練效果得到增強(qiáng),在最大節(jié)點(diǎn)數(shù)Lmax為100時網(wǎng)絡(luò)訓(xùn)練RMSE為0.019 2,此時網(wǎng)絡(luò)擬合效果最好。文章也將節(jié)點(diǎn)數(shù)設(shè)置為200、500、1000分別做了對比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果是網(wǎng)絡(luò)訓(xùn)練均在Lmax≤100的情況下就會自動截止訓(xùn)練,說明隱藏層最大節(jié)點(diǎn)個數(shù)Lmax的值選定為100時網(wǎng)絡(luò)訓(xùn)練效果最佳。
表4 網(wǎng)絡(luò)Lmax個數(shù)與相應(yīng)的RMSE
在SCN中,r是一個重要的參數(shù)。r是一系列正標(biāo)量,用來隨機(jī)配置網(wǎng)絡(luò)權(quán)重ω和偏置b。我們從0.5開始設(shè)置r的大小直至10 000,同樣采用電池B0005做訓(xùn)練集電池B0007做測試集的組合進(jìn)行單一變量實(shí)驗(yàn),發(fā)現(xiàn)r設(shè)置過大同樣會出現(xiàn)訓(xùn)練集表現(xiàn)良好測試集表現(xiàn)差強(qiáng)人意的過擬合情況,如圖5所示。綜合多次實(shí)驗(yàn)結(jié)果考慮,最終將r設(shè)置為最大值200,最小值0.5。
圖5 r的單一變量對比實(shí)驗(yàn)
經(jīng)過多次對比實(shí)驗(yàn),最終SCN的參數(shù)設(shè)置如表5所示。
表5 SCN參數(shù)設(shè)置
圖6是SCN的電池壽命預(yù)測擬合圖像。其中深色曲線為B0007電池數(shù)據(jù)集壽命真實(shí)衰減值,淺色曲線為SCN網(wǎng)絡(luò)使用B0005數(shù)據(jù)集進(jìn)行訓(xùn)練后得到的預(yù)測值??梢悦黠@看出,SCN擬合曲線僅在網(wǎng)絡(luò)初期有些許波動,是因?yàn)榫W(wǎng)絡(luò)構(gòu)建開始時節(jié)點(diǎn)較少造成的,隨著網(wǎng)絡(luò)節(jié)點(diǎn)的增加,曲線擬合情況漸漸變得良好。
圖6 基于SCN的電池壽命預(yù)測擬合圖像
圖7是B0005、B0006、B0007的電池數(shù)據(jù)分別作為訓(xùn)練數(shù)據(jù)集的電池訓(xùn)練RMSE衰減圖像。
圖7 訓(xùn)練RMSE衰減圖像
圖8是三塊電池數(shù)據(jù)的訓(xùn)練擬合圖像,其中實(shí)線是電池的真實(shí)容量衰減圖像,虛線是模型預(yù)測的衰減圖像。
圖8 訓(xùn)練擬合圖像
文章取多種常用的電池RUL預(yù)測算法與基于SCN的電池RUL預(yù)測算法進(jìn)行對比實(shí)驗(yàn)以驗(yàn)證隨機(jī)配置網(wǎng)絡(luò)對于電池剩余壽命預(yù)測的可用性及有效性。兩種網(wǎng)絡(luò)結(jié)構(gòu)不同的前饋神經(jīng)網(wǎng)絡(luò)(FNN)、兩種網(wǎng)絡(luò)結(jié)構(gòu)不同的卷積神經(jīng)網(wǎng)絡(luò)(CNN)和一種長短時記憶網(wǎng)絡(luò)LSTM做出對比實(shí)驗(yàn);數(shù)據(jù)集使用B0005數(shù)據(jù)做訓(xùn)練集B0007數(shù)據(jù)做測試集的組合。其中FNN1第一個全連接層采用輸出維度10、正態(tài)分布初始化權(quán)重,激活層采用Leaky ReLU激活函數(shù),第二個全連接層采用輸出維度1、激活函數(shù)采用線性激活函數(shù),網(wǎng)絡(luò)優(yōu)化器選用Adam優(yōu)化器,不設(shè)置Dropout層;FNN2第一個全連接層采用輸出維度40、正態(tài)分布初始化權(quán)重,激活層采用Leaky ReLU激活函數(shù),第二個全連接層采用輸出維度1、激活函數(shù)采用線性激活函數(shù),網(wǎng)絡(luò)優(yōu)化器選用Adam優(yōu)化器,并在兩個全連接層之間設(shè)置Dropout層;CNN1采用小卷積核、Leaky ReLU激活函數(shù),CNN2采用大卷積核、Leaky ReLU激活函數(shù),并在第一層卷積與第二層卷積、第二層卷積與全連接層之間分別添加Dropout層。LSTM網(wǎng)絡(luò)同樣采用Leaky ReLU激活函數(shù)并添加Dropout層。
根據(jù)表6對比SCN算法和其他算法的RMSE均值可以看出,SCN的訓(xùn)練均方根誤差最小。測試集在SCN上的擬合最為優(yōu)秀。相比較其他人工神經(jīng)網(wǎng)絡(luò),SCN的訓(xùn)練RMSE值最小,其值為0.0192,分別是FNN1的43%、FNN2的41%、CNN1的42%、CNN2的34%。
表6 網(wǎng)絡(luò)RMSE值對比表
圖9是SCN與多種神經(jīng)網(wǎng)絡(luò)的對照實(shí)驗(yàn)擬合圖像,其中黑色加粗線條為真實(shí)值,紅色加粗線條為SCN擬合值??梢悦黠@看出,SCN的整體擬合情況優(yōu)于其他網(wǎng)絡(luò),在預(yù)測初期由于隱藏節(jié)點(diǎn)較少,網(wǎng)絡(luò)穩(wěn)定性其擬合效果略差于LSTM網(wǎng)絡(luò),與CNN1較相似;在50次循環(huán)后,SCN的擬合效果明顯優(yōu)于其余網(wǎng)絡(luò),幾乎與真實(shí)壽命衰減圖像重疊。由此可以得出結(jié)論,本文提出的基于隨機(jī)配置網(wǎng)絡(luò)的鋰離子電池壽命預(yù)測方法具有實(shí)用性,且準(zhǔn)確性優(yōu)于多種現(xiàn)有的神經(jīng)網(wǎng)絡(luò)方法。
圖9 SCN與多種人工神經(jīng)網(wǎng)絡(luò)的對照實(shí)驗(yàn)
本文提出了一種基于隨機(jī)配置網(wǎng)絡(luò)的鋰離子電池RUL預(yù)測方法。利用一種增量式隨機(jī)神經(jīng)網(wǎng)絡(luò)SCN對電池RUL進(jìn)行預(yù)測實(shí)驗(yàn),首先對SCN的訓(xùn)練集數(shù)據(jù)進(jìn)行確定,數(shù)據(jù)集采用NASA PCoE電池數(shù)據(jù)集,首先截取數(shù)據(jù)較穩(wěn)定的中間100次循環(huán)作為SCN的訓(xùn)練數(shù)據(jù),其次進(jìn)行對比實(shí)驗(yàn)對網(wǎng)絡(luò)參數(shù)值進(jìn)行逐次確定,最后使用兩種FNN網(wǎng)絡(luò)、兩種CNN網(wǎng)絡(luò)、一種LSTM網(wǎng)絡(luò)與SCN進(jìn)行對照實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明隨機(jī)配置網(wǎng)SCN在電池壽命預(yù)測的網(wǎng)絡(luò)訓(xùn)練與擬合中均具有更好的表現(xiàn),是一種穩(wěn)定、高效、實(shí)用的鋰離子電池RUL預(yù)測算法。