史立峰,馬 彬,2,3,郭 興,姜文龍
(1.北京信息科技大學(xué) 機(jī)電學(xué)院, 北京 100192; 2.新能源汽車北京實驗室, 北京 100192; 3.北京電動車輛協(xié)同創(chuàng)新中心, 北京 100192; 4.中國人民公安大學(xué) 交通管理學(xué)院, 北京 100038)
近年來,電動汽車因其節(jié)能環(huán)保的優(yōu)勢得到了快速發(fā)展,開發(fā)整車能量管理策略能夠顯著提高電動汽車能量利用效率。高精度車速預(yù)測是電動汽車能量管理控制策略的關(guān)鍵,是影響能量管理效果的重要因素[1]。因此,開發(fā)高精度車速預(yù)測方法對提高車輛能量管理效率具有重要意義。
目前,常用的車速預(yù)測方法可以區(qū)分為基于模型驅(qū)動的方法和基于數(shù)據(jù)驅(qū)動的方法[2]。其中,基于模型的車速預(yù)測方法依托于車輛與環(huán)境的相互關(guān)系建立模型,需要精確的地圖信息以及昂貴的采集設(shè)備[3]?;跀?shù)據(jù)的車速預(yù)測方法利用歷史車速數(shù)據(jù)或標(biāo)準(zhǔn)工況訓(xùn)練模型進(jìn)行預(yù)測[4],主要方法包括卡爾曼濾波法[5]、統(tǒng)計回歸法[6]和神經(jīng)網(wǎng)絡(luò)算法[7]等。其中,神經(jīng)網(wǎng)絡(luò)算法由于其強(qiáng)大的非線性映射能力、魯棒性和容錯率,成為當(dāng)前研究的熱點[8]。當(dāng)前,神經(jīng)網(wǎng)絡(luò)算法主要分為反饋型神經(jīng)網(wǎng)絡(luò)和前向型神經(jīng)網(wǎng)絡(luò)。在反饋型神經(jīng)網(wǎng)絡(luò)研究方面,解少博等[7]通過對比BP神經(jīng)網(wǎng)絡(luò)與線性回歸、多項式回歸預(yù)測方法,指出BP神經(jīng)網(wǎng)絡(luò)算法具有更高的預(yù)測精度;Ma等分別利用長短期記憶神經(jīng)網(wǎng)絡(luò)算法(LSTM-NN)和卷積神經(jīng)網(wǎng)絡(luò)算法(CNN)[9]實現(xiàn)了全路段交通速度預(yù)測。然而,反饋型神經(jīng)網(wǎng)絡(luò)需要通過大量具有代表性的樣本數(shù)據(jù)對模型進(jìn)行離線訓(xùn)練,在線的自適應(yīng)性具有一定的局限性。相比之下,前向型神經(jīng)網(wǎng)絡(luò)具有收斂速度快、所需樣本量少以及優(yōu)良的在線模型訓(xùn)練能力。其中,RBF-NN作為典型的前向型神經(jīng)網(wǎng)絡(luò),在車速預(yù)測方面表現(xiàn)出強(qiáng)大的優(yōu)越性,并且預(yù)測結(jié)果更符合車輛行駛特性[10]。但是RBF-NN的輸入層神經(jīng)元數(shù)目、基函數(shù)標(biāo)準(zhǔn)差等結(jié)構(gòu)參數(shù)是影響預(yù)測精度的關(guān)鍵參數(shù)[11-13],當(dāng)前依賴于經(jīng)驗的取值在全工況范圍內(nèi)難以獲得滿意的效果。因此,在線調(diào)節(jié)RBF-NN車速預(yù)測模型結(jié)構(gòu)參數(shù)對于實現(xiàn)更精確的車速預(yù)測具有重要意義。
當(dāng)前,赤池信息準(zhǔn)則(AIC)和貝葉斯準(zhǔn)則(BIC)能夠作為模型參數(shù)調(diào)整準(zhǔn)則,實現(xiàn)模型復(fù)雜度與預(yù)測準(zhǔn)確性的平衡。在小樣本情況下,通過AIC會選擇高階模型以提高預(yù)測精度;在多樣本情況下,采用BIC可以防止因高精度而造成的模型復(fù)雜度過高[14]。根據(jù)此性質(zhì),本文選擇AIC作為依據(jù)進(jìn)行RBF-NN在線參數(shù)調(diào)整,進(jìn)而提高車速預(yù)測精度。
基于上述分析,首先搭建車速采集系統(tǒng)進(jìn)行實際工況車速數(shù)據(jù)采集,利用滑動時間窗口方法對采集車速數(shù)據(jù)進(jìn)行樣本化處理,建立預(yù)測模型訓(xùn)練樣本庫;其次,分析輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差對固定結(jié)構(gòu)RBF-NN車速預(yù)測精度影響,進(jìn)而結(jié)合AIC對RBF-NN結(jié)構(gòu)參數(shù)進(jìn)行在線調(diào)整。最后,提出了基于參數(shù)在線調(diào)整ARBF-NN的車速在線預(yù)測方法,提高了車速預(yù)測精度。同時,基于自然駕駛數(shù)據(jù)和標(biāo)準(zhǔn)測試工況,在Matlab仿真環(huán)境下驗證了算法的有效性。
搭建圖1所示自然駕駛數(shù)據(jù)采集實驗系統(tǒng)對北京三環(huán)和四環(huán)城市道路的車速數(shù)據(jù)進(jìn)行收集。系統(tǒng)包括IMU(車輛動態(tài)參數(shù)測量)、GNSS(導(dǎo)航車速等)和工控機(jī)。以1 s作為采樣時間,收集的部分車速數(shù)據(jù)如圖2(a)所示。為確保算法驗證數(shù)據(jù)為包含低速、中速和高速的全工況城市道路車速數(shù)據(jù),對三環(huán)自然駕駛數(shù)據(jù)中部分?jǐn)?shù)據(jù)進(jìn)行處理,以原數(shù)據(jù)作為中速工況,將原數(shù)據(jù)縮小60%倍作為低速工況,放大1.6倍作為高速工況,構(gòu)建如圖2(b)所示全工況車速數(shù)據(jù),具體數(shù)據(jù)如表1所列。
圖1 實驗系統(tǒng)示意圖
圖2 實際車速軌跡
表1 不同工況車速信息
滑動時間窗口是在每時刻對窗口內(nèi)的所有數(shù)據(jù)進(jìn)行處理,常用于數(shù)據(jù)量隨時間增加而不斷增大且數(shù)據(jù)時效性隨時間衰減的應(yīng)用場景。因此,選取滑動時間窗口方法進(jìn)行歷史車速數(shù)據(jù)處理(如圖3所示)。
圖3 滑動時間窗口樣本構(gòu)造
隨著窗口的推移,產(chǎn)生h×1維輸入向量,添加至訓(xùn)練模型輸入矩陣之后;同理產(chǎn)生新的p×1維輸出向量添加在舊的訓(xùn)練模型輸出矩陣,測試模型始終是包含最新信息的h×1維輸入向量。
假設(shè)在預(yù)測初始階段沒有預(yù)先儲存車速數(shù)據(jù),隨著時間的推移逐漸形成歷史車速數(shù)據(jù)庫,用于RBF-NN的在線訓(xùn)練。時間長度為tn的歷史車速數(shù)據(jù)庫表示為:
V=(v(t1),v(t2),…,v(tn-1),v(tn))
(1)
式中:v(tn)表示第tn時刻的車速數(shù)據(jù)。
考慮歷史hs車速數(shù)據(jù)對未來ps車速進(jìn)行預(yù)測,則在ti時刻,訓(xùn)練模型的輸入樣本所屬時間序列段為:
th=[ti-p-h+2,ti-p-h+2,…,ti-p]
(2)
訓(xùn)練模型輸出樣本所屬時間序列段為
tp=[ti-p+1,ti-p+2,…,ti]
(3)
測試樣本所屬時間序列段為
(4)
經(jīng)過滑動時間窗口的推移,在ti時刻,訓(xùn)練模型的輸入樣本和輸出樣本分別為:
(5)
(6)
測試模型的輸入向量為:
Xtest=[v(ti-h+1),v(ti-h+2),…,v(ti)]T
(7)
RBF-NN算法是一種由輸入層、隱藏層和輸出層3層網(wǎng)絡(luò)結(jié)構(gòu)構(gòu)成的前向型神經(jīng)網(wǎng)絡(luò)算法[15]。選取徑向基函數(shù)作為模型的隱藏層,其網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示[16]。
圖4 RBF-NN網(wǎng)絡(luò)結(jié)構(gòu)
RBF-NN的輸出表達(dá)式為
(8)
式中:yk表示第k個輸出層神經(jīng)元的輸出,即第k秒的預(yù)測車速;M表示隱藏層神經(jīng)元數(shù);ωjk表示第j個隱藏層神經(jīng)元與第k個輸出層神經(jīng)元間的連接權(quán)值;φj表示第j個隱藏層神經(jīng)元的輸出,表達(dá)式為:
(9)
輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差,是影響RBF-NN預(yù)測精度的關(guān)鍵因素[17]。常用的計算基函數(shù)標(biāo)準(zhǔn)差的方式為
(10)
式中,dmax表示任意一對選定基函數(shù)中心的最大距離。
隱藏層與輸出層之間的連接權(quán)值通過隱藏層輸出矩陣與期望輸出矩陣計算得到,表達(dá)式為
W=G+D
(11)
式中:W為連接權(quán)值矩陣;G為隱藏層輸出矩陣;G+表示矩陣G的偽逆;D為期望輸出矩陣。
為說明預(yù)測的準(zhǔn)確性,采用均方根誤差(RMSE)作為評估指標(biāo)來反映單步預(yù)測偏差,使用平均均方根誤差(ARMSE)反映模型的整體預(yù)測性能。表達(dá)式為
(12)
(13)
在車速預(yù)測研究中,考慮歷史10 s的車速軌跡對未來5 s時域進(jìn)行預(yù)測應(yīng)用最為廣泛[18],因此,本文以5 s預(yù)測時域作為研究案例,即RBF-NN輸出層神經(jīng)元數(shù)目設(shè)置為5。為保證充分考慮歷史車速軌跡的影響,輸入層神經(jīng)元數(shù)目(order)范圍設(shè)置為3~13;此外,為保證基函數(shù)標(biāo)準(zhǔn)差(width)范圍合理性且包含常用方式計算數(shù)值在內(nèi),本文設(shè)置基函數(shù)標(biāo)準(zhǔn)差范圍為3~30。
輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差對預(yù)測精度的影響如圖5所示,對單步車速預(yù)測結(jié)果的影響如圖6所示。結(jié)果表明:輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差對預(yù)測結(jié)果有顯著影響。輸入層神經(jīng)元數(shù)目過多會導(dǎo)致過擬合現(xiàn)象,過少會導(dǎo)致訓(xùn)練樣本包含信息缺失。相同神經(jīng)元數(shù)目下,隨著基函數(shù)標(biāo)準(zhǔn)差的增大,ARMSE減小且趨于穩(wěn)定,持續(xù)增大基函數(shù)標(biāo)準(zhǔn)差可能會導(dǎo)致高斯徑向基函數(shù)過于平坦。
圖5 不同輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差車速預(yù)測結(jié)果
圖6 不同輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差單步車速預(yù)測結(jié)果
由圖6結(jié)果可知,固定的輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差難以保證在整個過程中每一單步預(yù)測有最小均方根誤差,無法實現(xiàn)整個過程的高精度預(yù)測。因此,需要合理選擇對RBF-NN預(yù)測精度影響顯著的輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差,提高模型在全工況下車速預(yù)測精度。
AIC作為衡量神經(jīng)網(wǎng)絡(luò)模型擬合優(yōu)良性的一種標(biāo)準(zhǔn),能夠衡量所估計模型的復(fù)雜程度和模型數(shù)據(jù)擬合能力。因此,運用AIC準(zhǔn)則來在線權(quán)衡RBF-NN模型的復(fù)雜度和車速預(yù)測結(jié)果的準(zhǔn)確性。研究表明,AIC越小則表明預(yù)測模型越簡單且預(yù)測結(jié)果越精確。因此,根據(jù)AIC結(jié)果進(jìn)行RBF-NN參數(shù)在線調(diào)整。AIC表達(dá)式為:
(14)
預(yù)測過程中,計算每一單步預(yù)測的AIC值后,以最小AIC準(zhǔn)則選取所對應(yīng)的輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差,確定ARBF-NN結(jié)構(gòu)參數(shù)。依據(jù)RBF-NN基本原理,本文設(shè)計了基于參數(shù)在線調(diào)整的ARBF-NN車速預(yù)測方法,預(yù)測方法整體流程如下所示。
Algorithm1基于參數(shù)在線調(diào)整的ARBF-NN 車速預(yù)測流程偽代碼
Input:x:車速序列;p:初始輸入層神經(jīng)元數(shù)目,范圍為[3,13];h:初始基函數(shù)標(biāo)準(zhǔn)差,范圍為[3,30];M:基函數(shù)中心數(shù)目,定義為18;ti:當(dāng)前時刻;tn: 車速序列長度;
Output:未來5 s 的預(yù)測車速;
1: setp=3,h=3,ti=h+p;
2: whileti<=tndo
3: forp=3;p<13;p++ do
4: forh=3;h<30;h++ do
5: fort=1;t 6:Samplein(:,t)=x(t:t+p-1) 7:Sampleout(:,t)=x(t+p:t+p+h-1) 8:SDKin(:,t)=x(t+p+h:t+2*p-1) 9:SDKout=x(t+2*p:t+2*p+h-1) 10:Sampletest=x(t-h+1:t) 11: end for 12: 利用k-均值聚類算法計算基函數(shù)中心c 13:Z=dist(Samplein,c); 14:G=exp(-Z/2*h2); (計算隱藏層輸出值) 15:W=pinv(G)*Sampleout; (計算隱藏層到輸出層連接權(quán)值) 16:SDKZ=dist(SDKin,c); (結(jié)構(gòu)確定模塊確定結(jié)構(gòu)參數(shù)) 17:SDKG=exp(-SDKZ/2*h2); 18:SDKout=W*SDKG; 19:err=SDKd-SDKout 20:ARMSE=sqrt(mean(err2))/ti-(h+p) 21:AIC=T*ARMSE+2*h 22:選擇min(AIC)對應(yīng)的h和p 23:ZZ=dist(Sampletest,c); 24:GG=exp(-ZZ/2*h2);(計算隱藏層輸出值) 25:out=W*GG; (計算未來5 s 預(yù)測車速) 26: end for 27: end for 28:ti=ti+1 29: end while 為了驗證ARBF-NN預(yù)測效果,選取BP和傳統(tǒng)RBF-NN進(jìn)行對比驗證。由于車輛行駛行為存在一定內(nèi)在規(guī)律,即在相同或者相似的歷史車速軌跡下,未來短期有相同甚至相似的車速變化[10]。為使用合理樣本對BP-NN車速預(yù)測模型進(jìn)行訓(xùn)練以保證模型可以對車輛行駛行為內(nèi)在規(guī)律進(jìn)行有效學(xué)習(xí),利用由2 710 s北京四環(huán)城市道路自然駕駛速度數(shù)據(jù)以及1 792 s WLTP、1 184 s NEDC和1 369 s UDDS測試工況組成的共7 055 s的車速數(shù)據(jù)對BP-NN車速預(yù)測模型進(jìn)行離線訓(xùn)練,輸出車速預(yù)測結(jié)果如圖7(a)所示;對于RBF-NN車速預(yù)測模型,以最小ARMSE對應(yīng)的結(jié)構(gòu)參數(shù)(輸入層神經(jīng)元數(shù)目為5,基函數(shù)標(biāo)準(zhǔn)差為18)進(jìn)行預(yù)測,預(yù)測結(jié)果如圖7(b)所示;ARBF-NN車速預(yù)測結(jié)果如圖7(c)所示。3種算法的車速預(yù)測結(jié)果如圖8所示。 圖7 BP-NN、RBF-NN和ARBF-NN車速預(yù)測結(jié)果 圖8 BP-NN、RBF-NN和ARBF-NN車速預(yù)測結(jié)果 由結(jié)果可知,與其他2種預(yù)測模型相比,ARBF-NN車速預(yù)測精度獲得明顯改善。RBF-NN車速預(yù)測結(jié)果RMSE穩(wěn)定在1 m/s以內(nèi),而ARBF-NN車速預(yù)測結(jié)果RMSE基本小于0.5 m/s,整體預(yù)測效果明顯優(yōu)于固定結(jié)構(gòu)的RBF-NN預(yù)測方法。此外,在1 400 s及1 600~1 800 s階段,車輛存在短時間內(nèi)頻繁加減速行為時,ARBF-NN預(yù)測精度效果提升明顯。這說明ARBF-NN通過在線調(diào)整參數(shù)能夠適應(yīng)工況變化,實現(xiàn)更高精度的車速預(yù)測。 BP-NN、RBF-NN以及ARBF-NN在各工況下車速預(yù)測性能如表2所列。3種方法的預(yù)測結(jié)果ARMSE分別為0.375 8、0.384 9和0.175 3 m/s。所提出的ARBF-NN預(yù)測方法,相比于BP-NN精度提高53.36%,相比于RBF-NN精度提高54.47%。因此,所提出的ARBF-NN能夠滿足多工況的需求。 表2 BP-NN、RBF-NN和ARBF-NN車速預(yù)測結(jié)果 ARBF-NN預(yù)測方法參數(shù)調(diào)整過程如圖9所示。結(jié)果表明,相比于RBF-NN車速預(yù)測方法,ARBF-NN車速預(yù)測方法從預(yù)測開始就有更小的AIC值,這表示ARBF-NN車速預(yù)測方法有更好的擬合效果,且在全過程中隨車速變化可以實現(xiàn)輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差的實時調(diào)節(jié),因而具有更高的預(yù)測精度。 圖9 AIC計算結(jié)果及ARBF-NN參數(shù)選擇結(jié)果 為了確保所提出車速預(yù)測方法的可靠性和穩(wěn)定性,在北京三環(huán)、北京四環(huán)真實速度數(shù)據(jù)以及WLTP、UDDS標(biāo)準(zhǔn)工況車速4種工況下進(jìn)一步證明ARBF-NN的高精度車速預(yù)測效果。5 s時域的預(yù)測結(jié)果分別如圖10中(a)~(d)所示。由結(jié)果可知,北京三環(huán)車速預(yù)測結(jié)果RMSE基本小于1 m/s,由于車速變化趨勢較平緩,預(yù)測效果優(yōu)于構(gòu)建的全工況車速;北京四環(huán)車速預(yù)測結(jié)果在200 ~400 s由于車速急劇變化,出現(xiàn)2次較大誤差,其他時間段能保持較高精度預(yù)測效果;WLTP和UDDS工況下,車速預(yù)測結(jié)果RMSE基本小于2 m/s,預(yù)測精度穩(wěn)定。表3列出了各車速數(shù)據(jù)下ARBF-NN預(yù)測結(jié)果ARMSE。結(jié)果表明,ARBF-NN對于多種車速數(shù)據(jù)下均有準(zhǔn)確的預(yù)測精度。 圖10 ARBF-NN車速預(yù)測模型在不同工況下預(yù)測結(jié)果 表3 ARBF-NN多種車速數(shù)據(jù)下預(yù)測結(jié)果 綜上所述,本文提出的基于AIC的在線結(jié)構(gòu)確定方法可以有效提高車速預(yù)測精度。 提出了一種基于參數(shù)在線調(diào)整的ARBF-NN車速預(yù)測方法,實現(xiàn)基于自身歷史車速數(shù)據(jù)的車速高精度在線預(yù)測。首先,搭建試驗系統(tǒng)進(jìn)行真實工況速度數(shù)據(jù)采集,利用滑動時間窗口方法將車速數(shù)據(jù)樣本化;在分析輸入層神經(jīng)元數(shù)目和基函數(shù)標(biāo)準(zhǔn)差對車速預(yù)測精度影響的基礎(chǔ)上,結(jié)合AIC準(zhǔn)則對結(jié)構(gòu)參數(shù)進(jìn)行在線調(diào)整。最后,提出參數(shù)在線調(diào)整的ARBF-NN車速在線預(yù)測方法,實現(xiàn)了基于自車歷史數(shù)據(jù)的車速高精度在線預(yù)測。4種工況的仿真結(jié)果表明,所提出的車速預(yù)測方法具有較高精度,相比于BP-NN精度提高53.36%,相比于RBF-NN精度提高54.47%,可為電動汽車車輛能量管理提供理論參考。 在未來的工作中,我們將探尋環(huán)境車輛與自車相對位置關(guān)系和相對速度關(guān)系與自車車速之間所存在的內(nèi)在規(guī)律,預(yù)測環(huán)境車輛影響下車速拐點出現(xiàn)的時刻,即未來短時自車加減速變化,并對預(yù)測車速進(jìn)行修正,以減小車速拐點處出現(xiàn)的較大預(yù)測誤差,進(jìn)一步提高車速預(yù)測精度。3 仿真分析
3.1 ARBF-NN車速預(yù)測模型結(jié)果對比
3.2 多工況下ARBF-NN預(yù)測效果分析
4 結(jié)論