国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于貝葉斯正則化算法BP神經(jīng)網(wǎng)絡(luò)釩電池SOC預(yù)測

2016-05-14 01:22楊春生牛紅濤隋良紅李明興
現(xiàn)代電子技術(shù) 2016年8期
關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò)

楊春生 牛紅濤 隋良紅 李明興

摘 要: 電池荷電狀態(tài)(SOC)用于表征電池的剩余電量,是全釩液流電池的一個重要參數(shù)。在此介紹常用的釩電池SOC預(yù)測方法,并對比其優(yōu)缺點?;陔姵豐OC的非線性特征,提出采用BP神經(jīng)網(wǎng)絡(luò)預(yù)測釩電池的SOC,并采用L?M優(yōu)化算法以及貝葉斯正則化算法對網(wǎng)絡(luò)進行優(yōu)化。使用貝葉斯正則化改進的神經(jīng)網(wǎng)絡(luò)在對項目中全釩液流電池測試過程實時預(yù)測SOC。實驗結(jié)果表明,采用貝葉斯正則化算法改進的神經(jīng)網(wǎng)絡(luò)能夠提高SOC的實時預(yù)測精度,具有很好的實用前景。

關(guān)鍵詞: 釩電池; 荷電狀態(tài); BP神經(jīng)網(wǎng)絡(luò); 貝葉斯正則化算法

中圖分類號: TN915?34; TP301.6 文獻標識碼: A 文章編號: 1004?373X(2016)08?0158?04

Application of BP neural network improved by Bayesian regularization algorithm in VRB SOC prediction

YANG Chunsheng1, NIU Hongtao1, SUI Lianghong1, LI Mingxing2

(1. National Institute of Measurement and Testing Technology, Chengdu 610021, China;

2. School of Manufacturing Science and Engineering, Sichuan University, Chengdu 610064, China)

Abstract: The state of charge (SOC) is an important parameter of VRB to character the remaining capacity of the battery. In this paper, the common prediction methods of VRB SOC are introduced, and the advantages and disadvantages are compared. Based on the nonlinear characteristic of VRB SOC, the method of using BP neural network to predict VRB SOC is proposed. The BP neural network was optimized with Levenberg?Marquardt optimization algorithm and Bayesian regularization algorithm. The neural network improved with Bayesian regularization can predict SOC in real time in VRB testing process. The experimental results show that the neural network improved by Bayesian regularization algorithm can improve the real?time prediction accuracy of SOC, and has good application prospect.

Keywords: VRB; SOC; BP neural network; Bayesian regularization algorithm

0 引 言

隨著傳統(tǒng)化石能源的不斷消耗,能源供應(yīng)已越發(fā)緊張,燃燒化石能源帶來的環(huán)境問題已經(jīng)給國民經(jīng)濟發(fā)展帶來嚴重負擔并威脅國民健康。調(diào)整能源結(jié)構(gòu)已迫在眉睫,國家也制定了一系列的政策措施,推動新型可再生能源的發(fā)展。大規(guī)模儲能設(shè)備是風能等新型清潔能源存儲、輸送的關(guān)鍵設(shè)備,近年來一直是研究重點。全釩液流電池是一種根據(jù)釩離子價態(tài)改變進行能量交換的一種液流電池,有望在今后大規(guī)模儲能領(lǐng)域扮演重要角色。電池荷電狀態(tài)(SOC)是電池管理的一個重要參數(shù),表征電池放電的剩余電量。電池SOC在電池放電過程中受到電池端電壓、電流、電池內(nèi)阻以及電池溫度的影響[1]。在釩電池測試工作過程中,實時有效地監(jiān)控釩電池的SOC狀態(tài),對于提高釩電池的電化學性能和安全性能具有重要意義。

1 釩電池SOC常用預(yù)測方法

電池SOC不能夠直接測量,只能夠通過測量某時刻電池其他參數(shù)估計得到[2]。常用于預(yù)測電池SOC的方法包括:安時積分法、開路電壓法、內(nèi)阻法、卡爾曼濾波法和神經(jīng)網(wǎng)絡(luò)法。安時積分法通過對電流進行積分求得放掉的電量。電池初始時刻的電量減去電池放出的電量,即為電池剩余電量。這種估計方法只考慮了電流的影響,忽略了很多因素的影響,其缺陷是無法準確知道初始時刻的荷電狀態(tài)以及存在誤差積累問題[2?4]。開路電壓法是根據(jù)電池的SOC與電池開路電壓存在一定的聯(lián)系。通過測多個點進行曲線擬合,得到SOC與開路電壓的關(guān)系。這種方法算法簡單,但是開路電壓與工作電壓不同,兩者的差別受到電流引起的極化效應(yīng)影響,因此無法在電池工作時動態(tài)測量SOC[5]。內(nèi)阻法由于電池的內(nèi)阻非常小,而且在電池動態(tài)工作時候,很難測量[6],不易推廣??柭鼮V波法需要建立一個高精度的電池模型才能達到預(yù)測精度[6?7]。神經(jīng)網(wǎng)絡(luò)法具有非線性的基本特征,有很強的學習能力。根據(jù)Kolmogorov定理,一個三層前向網(wǎng)絡(luò)具有對任意精度連續(xù)函數(shù)的逼近能力[8]。因此,使用神經(jīng)網(wǎng)絡(luò)預(yù)測釩電池SOC具有明顯的優(yōu)勢。

2 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和原理分析

BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W(wǎng)絡(luò),廣泛應(yīng)用于非線性逼近[9]。如圖1所示,BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)包含輸入層、隱含層和輸出層三個層次。網(wǎng)絡(luò)在層與層之間是全連接的,每一層神經(jīng)元之間無連接。輸入層和輸出層的神經(jīng)元個數(shù)由具體要求確定。隱含層節(jié)點數(shù)對網(wǎng)絡(luò)性能影響較大,增加節(jié)點,可以提高網(wǎng)絡(luò)的性能,但訓練時間較長。目前仍然是根據(jù)經(jīng)驗確定隱含層節(jié)點數(shù),通常在5~15之間。

原理算法上,內(nèi)部信息處理集中在網(wǎng)絡(luò)隱含層。以隱含層的一個神經(jīng)元K1為例,它的輸入值包括輸入層神經(jīng)元的所有輸出值的加權(quán)和K1神經(jīng)元的閾值b1。輸入的權(quán)值[ω11,ω12,…,ωki]和b1是可調(diào)整的。神經(jīng)元將求得的加權(quán)和與閾值b1之和通過神經(jīng)元內(nèi)的傳輸函數(shù)得到K1神經(jīng)元的輸出結(jié)果。隱含層傳輸函數(shù)是一個非線性函數(shù),最常用的是logsig函數(shù)或tansig函數(shù),輸出層函數(shù)可以是線性函數(shù)purelin函數(shù)[10]。

標準的BP神經(jīng)網(wǎng)絡(luò)采用最速梯度下降法訓練網(wǎng)絡(luò)。訓練過程包括信號的正向傳遞和誤差的反向傳遞。信號通過各層的神經(jīng)元之間的傳遞,最終得到網(wǎng)絡(luò)的輸出值。訓練網(wǎng)絡(luò)時除了需要原始的輸入數(shù)據(jù)外,還需要一個目標輸出結(jié)果。每一次網(wǎng)絡(luò)的輸出與目標結(jié)果之差視為網(wǎng)絡(luò)的輸出誤差。通過以上信號正向傳遞的分析知道,網(wǎng)絡(luò)的輸出結(jié)果以及誤差實際上是關(guān)于各個權(quán)值的函數(shù)。網(wǎng)絡(luò)的第h次迭代的輸出性指標以輸出誤差能量表示:

[e(h)=12j=0Je2j(h)] (1)

式中:J表示輸出值個數(shù);ej表示第j個輸出與對應(yīng)目標輸出之差。當誤差值大于訓練設(shè)置的目標性能參數(shù)時,調(diào)整各神經(jīng)元的輸入權(quán)值,使得權(quán)值朝著最速梯度下降方向調(diào)整。這個過程是從后向前逐層調(diào)整,直到輸出誤差達到要求或者設(shè)定步數(shù)完成為止。這種算法的一大缺點在于網(wǎng)絡(luò)可能按照梯度下降收斂到某個局部極小值而非全局的最小值。

3 BP網(wǎng)絡(luò)改進算法和網(wǎng)絡(luò)建立

3.1 L?M優(yōu)化算法trainlm[11?12]

L?M(Levenberg?Marquardt)算法可以有效提高BP神經(jīng)網(wǎng)絡(luò)的收斂速度和降低預(yù)測誤差值。L?M算法按照式(2)對網(wǎng)絡(luò)權(quán)值進行迭代。

[ω(h+1)=ω(h)-[JTJ+μI]-1JTe] (2)

式中,[μ]是可以調(diào)整的非負數(shù),當誤差較小,則減小[μ]值,當誤差較大,則增加[μ]的值。由于避免計算Hessian矩陣,大大降低了計算量,因而比起最速梯度下降法,L?M的收斂速度很快,但是L?M算法對于內(nèi)存的占用更大。

3.2 貝葉斯正則化算法trainbr

Trainbr[13?16]算法是在神經(jīng)網(wǎng)絡(luò)訓練過程中,在常規(guī)均方差性能函數(shù)基礎(chǔ)上引入對性能函數(shù)的修正函數(shù)。

[f(ω)=αEω+βEd] (3)

式中:[f(ω)]為修正后的性能函數(shù);[Eω]為網(wǎng)絡(luò)所有權(quán)值的均方誤差;[Ed]為網(wǎng)絡(luò)輸出結(jié)果均方誤差;[α],[β]為正則化參數(shù)。網(wǎng)絡(luò)通過自適應(yīng)方法自動根據(jù)訓練結(jié)果調(diào)整[α],[β]值以調(diào)整網(wǎng)絡(luò)權(quán)值。由于[α],[β]參數(shù)按照常規(guī)方式很難確定,貝葉斯正則化算法思想就是將權(quán)值參數(shù)設(shè)為隨機變量,根據(jù)權(quán)值的概率密度確定最優(yōu)的權(quán)值函數(shù)。文獻[13?16]對該算法的具體過程步驟做了詳細介紹。采用trainbr可以有效改善擬合曲線的誤差。

3.3 BP神經(jīng)網(wǎng)絡(luò)建立

本文需要預(yù)測的是一組由5節(jié)單體釩電池串聯(lián)組成的釩電池組在實際放電過程中的實時SOC值。工作過程中對電池工作溫度進行控制,著重考慮溫度相同情況下電池端電壓和放電電流對SOC的影響,通過Matlab神經(jīng)網(wǎng)絡(luò)工具箱建立BP神經(jīng)網(wǎng)絡(luò)。輸入層神經(jīng)元為電池電壓V輸入和電流I輸入。輸出層只有一個神經(jīng)元,輸出SOC的預(yù)測結(jié)果。隱含層通過經(jīng)驗公式和實際訓練效果確定,當隱含層設(shè)為10個節(jié)點時比較合理。

在對網(wǎng)絡(luò)訓練之前,需要將訓練樣本數(shù)據(jù)進行歸一化預(yù)處理。數(shù)據(jù)的歸一化操作能夠使網(wǎng)絡(luò)避免由于輸入數(shù)據(jù)量級差異而導致的誤差,提高網(wǎng)絡(luò)的泛化能力。由于此處采用tansig函數(shù)作為傳輸函數(shù),將其輸出值限定在(-1,1)之間,所以需要將電壓值和電流值都歸一化到 (-1,1)內(nèi)[17]。數(shù)據(jù)歸一化處理計算公式如下:

[xi=2xi-xmin-xmaxxmax-xmin] (4)

式中:[xi]為歸一化后的數(shù)據(jù);[xi]為原始數(shù)據(jù);[xmin,xmax]為初始數(shù)據(jù)的最小值和最大值。釩電池在正常測試過程中,電池電壓在4.5~9 V之間,所以將最小值和最大值設(shè)為4.5和9。釩電池單次放電為恒流放電,因此整個過程中電流的最大值和最小值沒有差別。考慮電池在多種電流下的恒流放電,以擴展網(wǎng)絡(luò)預(yù)測的工況范圍,將電流的最大值設(shè)為9 A,最小值設(shè)為2 A。這個范圍包含了釩電池在40~120 mA/cm2的電流密度區(qū)間,涵蓋了項目要求的所有測試電流大小。輸入的目標值SOC以百分號為單位表示,因此它的最大值是100,最小值是0。

本BP網(wǎng)絡(luò)的訓練樣本由三種電流密度下的100組數(shù)據(jù)組成。一共為300個數(shù)據(jù),將電壓和電流歸一化后,組成一個2行300列的矩陣,作為輸入。同時建立三個BP神經(jīng)網(wǎng)絡(luò),設(shè)置輸入層和隱含層傳遞函數(shù)為tansig函數(shù);輸出層為purelin函數(shù),設(shè)定輸出誤差值0.001,學習率為0.05。三個網(wǎng)絡(luò)分別采用traingd,trainlm和trainbr算法訓練。

訓練的網(wǎng)絡(luò)對80 mA/cm2電流密度下的樣本模擬輸出SOC值反歸一化到0~100后與目標值的比較結(jié)果如圖2和圖3所示。顯然采用貝葉斯正則化算法的模型更好。

4 試驗結(jié)果與分析

將通過貝葉斯正則化算法訓練好的BP網(wǎng)絡(luò)保存于Matlab安裝目錄下,釩電池充放電監(jiān)控系統(tǒng)上位機軟件由LabVIEW編寫,LabVIEW通過調(diào)用Matlab腳本VI調(diào)用這個訓練好的神經(jīng)網(wǎng)絡(luò),對釩電池在多個不同電流密度下的放電實驗進行采樣,對每一個采樣時刻進行SOC值估計并動態(tài)顯示。

實驗中所測試的釩電池按照電流密度60 mA/cm2、80 mA/cm2和120 mA/cm2,對應(yīng)電流為4.42 A,5.89 A和8.81 A對電池進行放電測試。電池充放電監(jiān)控系統(tǒng)每一秒采集電池放電實時端電壓和電流值,通過軟件歸一化后作為網(wǎng)絡(luò)輸入。每一組實驗隨機抽取了20個預(yù)測點,預(yù)測結(jié)果與其真實值如圖4所示,其預(yù)測誤差值分布如圖5所示。

圖5中誤差分布集中分布在±0.5%,最大誤差值-1.5%。

從圖2和圖3幾種曲線的對比看出相比較于標準的最速梯度下降法和常用的L?M優(yōu)化算法,采用貝葉斯正則化算法訓練的網(wǎng)絡(luò)的逼近結(jié)果更能接近真實值。實際上對于L?M算法3%的訓練誤差,已經(jīng)可以認為是一個不錯的結(jié)果,本實驗只采用貝葉斯正則化算法而非L?M算法的原因就是,因為經(jīng)過trainlm算法訓練的網(wǎng)絡(luò)對訓練樣本實現(xiàn)了較好的擬合,而對于訓練樣本之外的新樣本表現(xiàn)的誤差會更大。實際應(yīng)用中樣本不可能將所有預(yù)測的結(jié)果都包含,否則就不需要再進行預(yù)測了。因此本試驗需要一個能夠具有很好的推廣作用的神經(jīng)網(wǎng)絡(luò),能夠通過網(wǎng)絡(luò)對小樣本所反映的規(guī)律準確的反應(yīng)。貝葉斯正則化算法訓練的神經(jīng)網(wǎng)絡(luò),具有對輸入噪聲不敏感的特點,因而訓練的誤差更小,具有更好的推廣能力。因此用貝葉斯正則化算法訓練好的網(wǎng)絡(luò)來實時預(yù)測電池放電過程中SOC狀態(tài)比較理想。

5 結(jié) 語

釩電池SOC值是表征釩電池放電過程中的剩余電量的一項重要參數(shù),無法直接測試,只能通過多個實時參數(shù)對其進行估計。

本文在控制放電溫度條件下,分析了常用三層BP神經(jīng)網(wǎng)絡(luò)對于SOC非線性曲線逼近的原理,在參考了L?M算法對BP網(wǎng)絡(luò)優(yōu)化的基礎(chǔ)上,提出運用貝葉斯正則化算法訓練改進BP網(wǎng)絡(luò)應(yīng)用于釩電池SOC的預(yù)測。對比通過訓練樣本的訓練結(jié)果,證明貝葉斯正則化算法的訓練結(jié)果更優(yōu)。運用該算法訓練的神經(jīng)網(wǎng)絡(luò)作為預(yù)測工具,對釩電池多個放電電流情況下實時SOC值進行實時動態(tài)預(yù)測。結(jié)果顯示,預(yù)測絕對誤差低于±2%,證明方法是準確可行的。

參考文獻

[1] 萬永凱.混合動力電動汽車鋰離子電池SOC估計方法研究[D].武漢:武漢理工大學,2013.

[2] 杜濤,李愛魁,馬軍,等.動力電池SOC預(yù)估方法研究進展[J].電源技術(shù),2015,39(4):844?845.

[3] 王熙俊,張勝寒,張秀麗,等.全釩液流電池SOC監(jiān)測方法綜述[J].華北電力技術(shù),2015(3):66?70.

[4] 林成濤,王軍平,陳全世.電動汽車SOC估計方法原理與應(yīng)用[J].電池,2004,34(5):376?378.

[5] 周曉鳳,趙又群.電動汽車動力電池SOC估算研究[J].機械科學與技術(shù),2014,33(2):263?266.

[6] 李國進,董第永,陳雙.磷酸鐵鋰電池的SOC預(yù)測[J].計算機仿真,2015,32(3):163?168.

[7] 李正國,孟凡琨.SVM和Kalman濾波大功率動力電池SOC預(yù)估方法的研究[J].中國測試,2013,39(5):92?95.

[8] SHI P, BU C G, ZHAO Y W. The ANN models for SOC/BRC estimation of Li?ion battery [C]// Proceedings of 2005 IEEE International Conference on Information Acquisition. [S.l.]: IEEE, 2005: 560?564.

[9] 周品.Matlab神經(jīng)網(wǎng)絡(luò)設(shè)計與應(yīng)用[M].北京:清華大學出版社,2013.

[10] 陳明,武冬,郅曉娜,等.Matlab神經(jīng)網(wǎng)絡(luò)原理與實例精講[M].北京:清華大學出版社,2013.

[11] 苑倩,劉金枝,楊鵬.基于BP神經(jīng)網(wǎng)絡(luò)的鋰電池SOC在線預(yù)測[J].河北工業(yè)大學學報,2014,43(5):15?20.

[12] 尹安東,張萬興,趙韓,等.基于神經(jīng)網(wǎng)絡(luò)的磷酸鐵鋰電池SOC預(yù)測研究[J].電子測量與儀器學報,2011,25(5):433?437.

[13] 楊海深,傅紅卓.基于貝葉斯正則化BP神經(jīng)網(wǎng)絡(luò)的股票指數(shù)預(yù)測[J].科學技術(shù)與工程,2009,9(12):3306?3310.

[14] 楊琴,謝淑云.BP神經(jīng)網(wǎng)絡(luò)在洞庭湖氨氮濃度預(yù)測中的應(yīng)用[J].水資源與水工程學報,2006,17(1):65?70.

[15] 田凱,孫永泰,高慧,等.貝葉斯算法BP神經(jīng)網(wǎng)絡(luò)缺陷量化研究[J].中國測試,2014,40(3):93?97.

[16] 宋雷,黃騰,方劍,等.基于貝葉斯正則化BP神經(jīng)網(wǎng)絡(luò)的GPS高程轉(zhuǎn)換[J].西南交通大學學報,2008,43(6):724?728.

[17] 蔡信,李波,汪宏華,等.基于神經(jīng)網(wǎng)絡(luò)模型的動力電池SOC估計研究[J].機電工程,2015,32(1):128?132.

猜你喜歡
BP神經(jīng)網(wǎng)絡(luò)
基于神經(jīng)網(wǎng)絡(luò)的北京市房價預(yù)測研究
一種基于OpenCV的車牌識別方法
基于遺傳算法—BP神經(jīng)網(wǎng)絡(luò)的乳腺腫瘤輔助診斷模型
一種基于改進BP神經(jīng)網(wǎng)絡(luò)預(yù)測T/R組件溫度的方法
基于BP神經(jīng)網(wǎng)絡(luò)的光通信系統(tǒng)故障診斷
提高BP神經(jīng)網(wǎng)絡(luò)學習速率的算法研究
就bp神經(jīng)網(wǎng)絡(luò)銀行選址模型的相關(guān)研究
基于DEA—GA—BP的建設(shè)工程評標方法研究
復(fù)雜背景下的手勢識別方法
BP神經(jīng)網(wǎng)絡(luò)在軟件質(zhì)量評價中的應(yīng)用研究 
阜宁县| 麟游县| 布尔津县| 资阳市| 松溪县| 巧家县| 建宁县| 玉门市| 赣州市| 尼玛县| 札达县| 左云县| 淅川县| 修武县| 邓州市| 扶绥县| 涪陵区| 南部县| 广水市| 桐城市| 唐山市| 镇安县| 改则县| 南漳县| 庆元县| 伊通| 锦屏县| 江都市| 聂荣县| 新沂市| 普安县| 沧源| 永修县| 华蓥市| 门头沟区| 囊谦县| 柘城县| 叙永县| 崇仁县| 荆州市| 岳阳县|