長江大學(xué)電子信息學(xué)院 劉昊東 鄒必昌
為了解決短期負(fù)荷預(yù)測精度低、準(zhǔn)確性差等問題,采用一種使用鯨魚優(yōu)化算法(WOA)優(yōu)化長短期記憶網(wǎng)絡(luò)(LSTM)的短期負(fù)荷預(yù)測模型。針對模型的參數(shù)較難選擇的問題,利用WOA對LSTM模型參數(shù)尋優(yōu)。通過實(shí)例驗(yàn)證了預(yù)測模型的有效性,結(jié)果表明WOA-LSTM比LSTM模型具有更好的效果。
眾所周之,在電力系統(tǒng)中發(fā)電、輸電、用電是同時(shí)進(jìn)行的。由于目前的技術(shù)手段無法實(shí)現(xiàn)電能的大量儲存,發(fā)電前的負(fù)荷預(yù)測就顯得十分重要。同時(shí),負(fù)荷預(yù)測可以提高電網(wǎng)的經(jīng)濟(jì)效益,避免電能的大量浪費(fèi),保證電網(wǎng)的安全運(yùn)行。電力負(fù)荷預(yù)測一般可以在時(shí)間上分為長期、中期、短期負(fù)荷預(yù)測,其中短期負(fù)荷預(yù)測是指未來24h到168h每個(gè)時(shí)刻點(diǎn)的的負(fù)荷預(yù)測。精確的負(fù)荷預(yù)測可以提高電網(wǎng)運(yùn)行的可靠性、安全性、經(jīng)濟(jì)性。
近幾年國內(nèi)外學(xué)者提出很多預(yù)測方法,大致可分為傳統(tǒng)統(tǒng)計(jì)法和現(xiàn)代預(yù)測算法。傳統(tǒng)統(tǒng)計(jì)法主要包括:多元線性回歸、趨勢外推法、時(shí)間序列法等。隨著智能電網(wǎng)的發(fā)展,負(fù)荷數(shù)據(jù)越來越復(fù)雜,傳統(tǒng)統(tǒng)計(jì)法難以滿足更高的精度需求?,F(xiàn)代預(yù)測算法主要包括:支持向量機(jī)、BP神經(jīng)網(wǎng)絡(luò)、隨機(jī)森林等為代表的人工智能算法。深度學(xué)習(xí)作為一種新起的研究領(lǐng)域,也廣泛地運(yùn)用于短期負(fù)荷預(yù)測。文獻(xiàn)(王永志,劉博,李鈺.一種基于LSTM神經(jīng)網(wǎng)絡(luò)的電力負(fù)荷預(yù)測方法)提出了一種基于LSTM神經(jīng)網(wǎng)絡(luò)的的電力負(fù)荷預(yù)測方法。LSTM的模型參數(shù)往往需要人為設(shè)定,這將直接影響模型的擬合能力,訓(xùn)練速度,實(shí)際效果。為了提高長短期記憶網(wǎng)絡(luò)的精度,本文提出使用一種群體智能優(yōu)化算法來優(yōu)化長短期記憶網(wǎng)絡(luò)的參數(shù)。利用浙江某地的負(fù)荷數(shù)據(jù)進(jìn)行仿真,結(jié)果表明,該方法能夠優(yōu)化模型參數(shù),并有效地提高精度。
為了解決循環(huán)神經(jīng)網(wǎng)絡(luò)的梯度消失和梯度爆炸問題,Hochreiter和Schmidhuber(1997)提出一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)——長短期記憶網(wǎng)絡(luò)。與循環(huán)神經(jīng)網(wǎng)絡(luò)不同的是,長短期記憶網(wǎng)絡(luò)有輸入門、輸出門、遺忘門三個(gè)特殊結(jié)構(gòu),這使得它能記住長期信息。LSTM具有很強(qiáng)的泛化能力,適合處理非線性問題。長短期記憶網(wǎng)絡(luò)自誕生以來,就被大量運(yùn)用于時(shí)間序列預(yù)測中。其基本結(jié)構(gòu)圖如圖1所示。
鯨魚優(yōu)化算法(WOA)是一種元啟發(fā)式優(yōu)化算法,一種新的模擬座頭鯨狩獵行為的元啟發(fā)式優(yōu)化算法(鯨魚優(yōu)化算法,WOA)。目前的工作與其他群優(yōu)化算法相比的主要區(qū)別在于,采用隨機(jī)或最佳搜索代理來模擬捕獵行為,并使用螺旋來模擬座頭鯨的泡泡網(wǎng)攻擊機(jī)制,其包含搜索獵物、包圍獵物和捕食獵物三個(gè)階段。
圖1 LSTM基本結(jié)構(gòu)圖
鯨魚優(yōu)化算法具有較好的優(yōu)化能力,全局收斂能力,收斂速度快的特點(diǎn)。為了避免人為經(jīng)驗(yàn)差異影響LSTM模型的效果,本文提出使用鯨魚優(yōu)化算法對模型的迭代次數(shù)、學(xué)習(xí)率、第一隱藏層神經(jīng)元、第二隱藏層神經(jīng)元四個(gè)參數(shù)進(jìn)行尋優(yōu)。
鯨魚算法優(yōu)化LSTM過程:
Step 1:將數(shù)據(jù)中的負(fù)荷、溫度、濕度、日類型預(yù)處理,劃分訓(xùn)練集、測試集。
Step 2:初始化算法的維度、迭代次數(shù)、種群數(shù),并確定迭代次數(shù)、學(xué)習(xí)率、第一隱藏層神經(jīng)元個(gè)數(shù)、第二隱藏層神經(jīng)元個(gè)數(shù)的參數(shù)范圍。
Step 3:隨機(jī)生成10個(gè)種群,并用對應(yīng)的參數(shù)來設(shè)置長短期記憶網(wǎng)絡(luò)。
Step 4:將模型的預(yù)測值與實(shí)際值的均方差作為適應(yīng)度,計(jì)算每個(gè)種群對應(yīng)的適應(yīng)度,把其中最小適應(yīng)度作為此次最優(yōu)結(jié)果,并與全局最優(yōu)結(jié)果進(jìn)行比較,如效果更好,則替換。
Step 5:開始迭代,利用鯨魚算法更新種群對應(yīng)的四個(gè)參數(shù)。
Step 6:重復(fù)Step 4-5,直到最大迭代次數(shù)。
Step 7:輸出最優(yōu)結(jié)果對應(yīng)的迭代次數(shù)、學(xué)習(xí)率、第一隱藏層神經(jīng)元個(gè)數(shù)、第二隱藏層神經(jīng)元個(gè)數(shù)。
本次仿真選擇浙江某地區(qū)的電力負(fù)荷數(shù)據(jù),其包含每天的平均溫度、最高溫度、最低溫度、相對濕度、星期類型,以及每天24h的負(fù)荷數(shù)據(jù),一共97×29條數(shù)據(jù),基于python環(huán)境下,使用tensorflow框架編寫程序。
圖2 LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測效果
圖3 損失曲線
圖4 適應(yīng)度優(yōu)化過程
圖5 迭代次數(shù)優(yōu)化過程
圖6 學(xué)習(xí)率優(yōu)化過程
圖7 第一層神經(jīng)元優(yōu)化過程
圖8 第二層神經(jīng)元優(yōu)化過程
圖9 WOA-LSTM效果圖
長短期記憶網(wǎng)絡(luò)被用來解決長期依賴問題,具有記憶長期信息的能力。模型的輸入為第n-1天的氣候數(shù)據(jù)、星期類型、負(fù)荷數(shù)據(jù)、以及第二天的氣候數(shù)據(jù),一共29個(gè)特征作為輸入。模型的輸出為第n天的負(fù)荷數(shù)據(jù),為24h的整點(diǎn)負(fù)荷值,一共有24個(gè)特征。以此類推,建立模型。
本次實(shí)驗(yàn)采用四個(gè)指標(biāo)來評價(jià)預(yù)測模型的效果,分別為平均絕對百分比誤差(MAPE)、均方根誤差RMSE、平均絕對誤差MAE、R平方(R2)。
本文數(shù)據(jù)集為浙江地區(qū)某地2月13日到5月20日,每天的數(shù)據(jù)包含平均溫度、最高溫度、最低溫度、相對濕度、星期類型、與24個(gè)時(shí)刻的負(fù)荷,共29個(gè)特征,選擇89個(gè)樣本作為訓(xùn)練集,7個(gè)樣本做為測試集。仿真實(shí)驗(yàn)將LSTM模型、woa-LSTM模型分別做預(yù)測實(shí)驗(yàn),并將二者的結(jié)果對比。
4.3.1 LSTM神經(jīng)網(wǎng)絡(luò)
此模型參數(shù)設(shè)置:迭代次數(shù)為50、學(xué)習(xí)率為0.001、第一隱藏層神經(jīng)元為80、第二隱藏層神經(jīng)元為80、batch_size為16。測試集的MAPE:0.032、RMES:3.057、MAE:2.386、R2:0.92(見圖2、圖3)。
4.3.2 使用鯨魚算法優(yōu)化LSTM
如圖4-9所示,鯨魚算法分別對迭代次數(shù)、學(xué)習(xí)率、第一層神經(jīng)元、第二層神經(jīng)元在預(yù)先設(shè)定好的范圍內(nèi)尋找最優(yōu)組合。隨后,我們把優(yōu)化好的四個(gè)參數(shù)直接用來訓(xùn)練LSTM模型。其測試集的MAPE:0.028、RMES:2.860、MAE:2.120、R2:0.95。從結(jié)果中,我們不難看出,鯨魚算法確實(shí)能優(yōu)化LSTM模型,并有著不錯(cuò)的效果。
結(jié)論:為了解決復(fù)雜的短期電力負(fù)荷問題,本文提出使用鯨魚算法來優(yōu)化長短期記憶網(wǎng)絡(luò)的短期負(fù)荷預(yù)測方法。從仿真結(jié)果和過程分析中,可以看出:(1)鯨魚算法可以很好地優(yōu)化長短期記憶網(wǎng)絡(luò)的參數(shù)選擇問題。(2)此方法不僅可以應(yīng)用于負(fù)荷預(yù)測,也可以在其他領(lǐng)域應(yīng)用:發(fā)電功率預(yù)測、電價(jià)預(yù)測。