張宇涵,高海波,商蕾,林治國,陳亞杰
1.武漢理工大學 能源與動力工程學院,湖北 武漢 430063 2.中國船舶重工集團公司 第七一一研究所,上海 201101
電力推進船舶發(fā)展迅速,其電力推進負荷占比有時達到總裝機容量的70%以上,對于電站能量管理系統(tǒng)的要求也在不斷提升。發(fā)生惡劣海況時,機動航行或動力定位時整個電力系統(tǒng)負荷會產(chǎn)生較大的波動,準確的電力負荷預測能夠幫助調(diào)控發(fā)電機組合理供電,應對負荷大幅波動對電網(wǎng)造成的沖擊,根據(jù)預測結(jié)果還能夠優(yōu)化能量管理的策略,對船舶電網(wǎng)整體穩(wěn)定、高效運轉(zhuǎn)起關鍵作用[1?2]。船舶電力負荷預測可按照周期分為短、中、長3 種[3],其中短期電力負荷預測注重時效性,但由于時間很短,所以對預測模型的精度和速度要求很高。較于傳統(tǒng)的預測方法,人工神經(jīng)網(wǎng)絡能夠很好地處理電力負荷這類非線性的數(shù)據(jù),依靠其自身強大的學習能力和泛化能力成為了負荷預測的熱點[4],每種智能方法都有其特殊的優(yōu)勢、局限性和應用合理性[5]。本文分別使用BP、RBF、Elman 共3 種不同的網(wǎng)絡對惡劣海況進行短期電力負荷預測,探究不同神經(jīng)網(wǎng)絡各自的優(yōu)劣[6?7],找到適合完成電力負荷預測的方法。
BP 神經(jīng)網(wǎng)絡是20 世紀80 年代由Rumelhart和McClelland 提出的誤差反向傳播的多層前饋神經(jīng)網(wǎng)絡,是當前應用最廣泛的神經(jīng)網(wǎng)絡[8]。其網(wǎng)絡結(jié)構(gòu)如圖1 所示,一般情況下由輸入層、隱含層、輸出層3 層組成。輸入與輸出之間均有連接。
圖1 BP 神經(jīng)網(wǎng)絡結(jié)構(gòu)
BP 神經(jīng)網(wǎng)絡的處理主體分為正向的信息傳遞和反向的誤差傳播2 個部分。將數(shù)據(jù)輸入,通過隱含層計算后傳至輸出層,該過程為正向信息傳遞,當輸出和初設期望值不相符時,將其誤差進行反向傳播,根據(jù)梯度下降法的原理來降低誤差,網(wǎng)絡各層連接權值不斷更新,最終使誤差的均方值最小,該過程為誤差反向傳播。
RBF 神經(jīng)網(wǎng)絡是在20 世紀80 年代由J.Moody和C.Darken 提出的單隱層前饋神經(jīng)網(wǎng)絡[9]。整個網(wǎng)絡如圖2 所示,也是由3 層組成,將數(shù)據(jù)輸入,在隱含層中發(fā)生空間層到隱含層的轉(zhuǎn)換,同時在隱含層中還可以實現(xiàn)非線性的轉(zhuǎn)換,最終信息會以線性的形式傳遞到輸出層。
圖2 RBF 神經(jīng)網(wǎng)絡結(jié)構(gòu)
RBF 神經(jīng)網(wǎng)絡可以在隱含層將輸入的低維數(shù)據(jù)轉(zhuǎn)換成高維,使原本線性不可分的數(shù)據(jù)在高維空間內(nèi)變成線性可分數(shù)據(jù),網(wǎng)絡的整體結(jié)構(gòu)簡單,收斂速度理想,理論上能夠逼近任何非線性函數(shù),也是廣泛應用于回歸預測的算法之一[10]。
Elman 神經(jīng)網(wǎng)絡是20 世紀90 年代由J.L.Elman提出的一種動態(tài)遞歸神經(jīng)網(wǎng)絡[11],其結(jié)構(gòu)如圖3所示。和傳統(tǒng)的神經(jīng)網(wǎng)絡結(jié)構(gòu)相比,該網(wǎng)絡有一個特殊的層叫做承接層,它的功能是存儲隱含層單元在前一時刻的輸出值,并將其返回到網(wǎng)絡的輸入端,可以看作是一個延遲算子。通過隱含層與承接層這種連接方式能夠增強網(wǎng)絡處理動態(tài)信息的能力,進而能夠達到動態(tài)建模的目的[12]。
圖3 Elman 神經(jīng)網(wǎng)絡結(jié)構(gòu)
在進行負荷預測之前,數(shù)據(jù)的采集工作非常重要,若歷史數(shù)據(jù)量不足,會導致無法準確預測,若過量則會導致網(wǎng)絡訓練時間過長,最終無法收斂。采集某船在惡劣海況下進行動力定位時的電網(wǎng)負荷數(shù)據(jù),累計時長為25 min。圖4 所示為采集到的船舶電網(wǎng)負荷曲線圖。在MATLAB 中進行預測仿真,數(shù)據(jù)采集的周期設置為10 s,25 min內(nèi)共采集150 個數(shù)據(jù),將前120 個數(shù)據(jù)作為輸入,通過神經(jīng)網(wǎng)絡進行預測,輸出后30 個數(shù)據(jù)與采集的后30 個數(shù)據(jù)進行對比。
圖4 實際負荷曲線
若獲取的負荷數(shù)據(jù)前后差別過大超出可接受范圍,則視為數(shù)據(jù)異常,需要對初始數(shù)據(jù)進行異常處理工作,在此采用水平處理法。
式中:α(k)、β(k)為設置的閾值,k為采樣點,每隔10 s 進行一次采樣,一共采集150 個點,取值范圍為1~150;Y(k) 為 第k個點的負荷值,Y(k+1)為第k+1 個點的負荷值,若k=150 則Y(k+1)為第1 個點的負荷值,Y(k?1)是 第k?1 個點的負荷值,若k=1 則Y(k?1)表示第150 個點的電力負荷值。
對短期電力負荷進行預測,輸入采用一段連續(xù)時間的電力負荷歷史數(shù)據(jù)值作為單輸入,為避免神經(jīng)元飽和,需要對數(shù)據(jù)進行歸一化處理[13],在訓練完成后再反歸一化輸出真實值。
歸一化:
反歸一化:
式中:xmax、xmin為輸入負荷的最大值和最小值;xi、yi是進行歸一化前后的負荷值。
2.2.1 BP 神經(jīng)網(wǎng)絡模型構(gòu)建
完成了前期數(shù)據(jù)處理后,需要對神經(jīng)網(wǎng)絡的模型進行構(gòu)建,網(wǎng)絡創(chuàng)建采用newff 命令,考慮到進行短期電力負荷需要網(wǎng)絡能夠快速收斂,故隱含層只取1 層,BP 神經(jīng)網(wǎng)絡整體由3 層組成,在此輸入和輸出均只有負荷值,故兩層神經(jīng)元個數(shù)均為1,隱含層神經(jīng)元個數(shù)N通過經(jīng)驗公式和試湊法進行確定。經(jīng)驗公式為
式中:N為隱含層神經(jīng)元個數(shù),m為輸入層神經(jīng)元個數(shù),l為輸出層神經(jīng)元個數(shù),q為1~10 中的任意一個常數(shù)。
通過經(jīng)驗公式以及試湊法確立BP 神經(jīng)網(wǎng)絡隱含層神經(jīng)元的個數(shù)為5,誤差設定為1×10?3,其他數(shù)值均采用默認值。
2.2.2 RBF 神經(jīng)網(wǎng)絡模型構(gòu)建
RBF 神經(jīng)網(wǎng)絡整體結(jié)構(gòu)由3 層組成,隱含層中使用的徑向基函數(shù)是高斯函數(shù),故激活函數(shù)表達式為
輸入和輸出層依舊為1 個神經(jīng)元,在MATLAB中創(chuàng)建神經(jīng)網(wǎng)絡有2 種方式,分別為newrb 和newrbe。newrbe 創(chuàng)建神經(jīng)網(wǎng)絡時,隱含層神經(jīng)元個數(shù)自動等于輸入樣本數(shù)量,網(wǎng)絡整體創(chuàng)建速度極快,能夠一次性得到零誤差的徑向基網(wǎng)絡,只需通過調(diào)整分布常數(shù)spread 值來調(diào)整預測精度,分布常數(shù)太小能提高網(wǎng)絡訓練速度,但同時易出現(xiàn)過擬合狀態(tài)。最終確定的spread 值為1.4。
2.2.3 Elman 神經(jīng)網(wǎng)絡模型構(gòu)建
圖3 中Elman 網(wǎng)絡結(jié)構(gòu)圖的數(shù)學表達式[14]為
式中:f(x)為 隱含層神經(jīng)元的傳遞函數(shù),g(x)為輸出層神經(jīng)元的傳遞函數(shù),u(k?1)為 輸入值,h(k)為隱含層輸出值,y(k)為輸出值,k代表不同時刻,w1、w2、w3分別為輸入層到隱含層、隱含層到輸出層、承接層到隱含層的權值[15]。
網(wǎng)絡創(chuàng)建采用elman 命令,隱含層神經(jīng)元個數(shù)依舊根據(jù)式(1) 和試湊法確定,最終個數(shù)確定為5,輸入層和輸出層神經(jīng)元個數(shù)均為1,Elman的其他參數(shù)設置與BP 保持一致即可。
仿真訓練在網(wǎng)絡建立后開始。圖5 給出了BP、RBF 和Elman 共3 種不同神經(jīng)網(wǎng)絡各自的預測效果,從效果圖上看整體預測趨勢都是符合要求的,BP 預測效果略差,Elman 次之,RBF 效果最好,預測值幾乎能和真實值完全擬合。
圖5 3 種網(wǎng)絡預測效果
圖6 為預測相對誤差圖,圖中可見,BP 網(wǎng)絡和Elman 網(wǎng)絡可以明顯看出有多個預測誤差較大的點,其相對誤差均存在一定的波動,RBF 網(wǎng)絡誤差波動很小。
圖6 3 種網(wǎng)絡預測相對誤差
對于網(wǎng)絡預測的效果評價指標還有平均相對誤差(mean absolute percentage error,MAPE)值、均方根誤差(root mean squared error,RMSE)值 和決定系數(shù)(R2)。
平均相對誤差:
式中:n為預測樣本數(shù);pi為預測值;qi為真實值。
均方根誤差:
決定系數(shù):
表1 為3 種網(wǎng)絡評價指標數(shù)據(jù)匯總,誤差指標數(shù)值越小代表預測的結(jié)果越精確,決定系數(shù)越接近1,表明預測的結(jié)果越接近真實值,預測的準確度越高,船舶電網(wǎng)才能夠越有效地進行能量分配。從表1 中可明顯看出RBF 網(wǎng)絡的各項指標相較另外2 種網(wǎng)絡更好,且RBF 網(wǎng)絡的結(jié)構(gòu)簡單,相較于另外2 種網(wǎng)絡,RBF 網(wǎng)絡模型只需要確定spread 值就能完成模型構(gòu)建,且RBF 網(wǎng)絡具有全局逼近能力,解決了BP 網(wǎng)絡可能陷入的局部最優(yōu)問題,訓練速度快,能夠滿足短期電力負荷預測的時效性。因此RBF 神經(jīng)網(wǎng)絡更適合解決短期電力負荷預測問題。為增強結(jié)論的可靠性,我們將輸入和輸出的比例進行略微調(diào)整。表2 為輸入調(diào)整為130 組、輸出調(diào)整為20 組數(shù)據(jù)的各網(wǎng)絡評價指標,表3 為輸入調(diào)整為110 組、輸出調(diào)整為40 組的各網(wǎng)絡評價指標,從結(jié)果來看,RBF 網(wǎng)絡各項指標依然處于最優(yōu)的狀態(tài)。
表1 各網(wǎng)絡的評價指標
表2 輸入為130 組各網(wǎng)絡的評價指標
表3 輸入為110 組各網(wǎng)絡的評價指標
1)惡劣海況下,電力推進船舶進行動力定位或機動航行時,船舶電網(wǎng)的負荷具有很強的隨機性,很難找到精確的數(shù)學模型去進行描述。但人工神經(jīng)網(wǎng)絡擁有強大的自學習能力,通過對歷史數(shù)據(jù)的學習能夠很好地找到其中內(nèi)含的規(guī)律,因此借助人工神經(jīng)網(wǎng)絡能夠很好地解決短期電力負荷預測問題。
2)相較于BP 神經(jīng)網(wǎng)絡,Elman 獨特的承接層具有短期記憶的功能,能夠內(nèi)部反饋并存儲一部分過去時刻的信息,也十分適合船舶的實時電力負荷預測。
3)RBF 神經(jīng)網(wǎng)絡的各項評價指標都要優(yōu)于另外兩種網(wǎng)絡,網(wǎng)絡模型建立簡便、學習收斂速度快、誤差小,能夠有效地進行電力負荷預測,為能量管理策略進行合理的能量調(diào)度提供依據(jù),提高船舶電網(wǎng)的工作效率。