朱 坤,付 青
(中山大學物理學院,廣東廣州 510275)
光伏發(fā)電作為新能源的代表之一,在中國獲得了巨大的發(fā)展,越來越多的光伏電站接入到電網[1]。但是光伏功率與氣象因素高度相關,具有波動性、隨機性、不穩(wěn)定的特征,因此給電網的穩(wěn)定運行和調度帶來了新的挑戰(zhàn)。針對此問題,國內外學者通過研究光伏功率短期和超短期預測問題,提前做好電網規(guī)劃,提高電網運行的穩(wěn)定性。
預測模型方面,部分研究主要使用淺層神經網絡構建模型,進行光伏功率預測時會因為模型欠擬合而導致預測精度不足[2-5]。相較于淺層神經網絡在解決復雜問題時的劣勢,深度學習有著更好的學習能力和泛化能力[6],因此成為近兩年光伏功率預測領域的新星。文獻[7-9]采用深度學習完成光伏功率預測任務,但是由于原始序列的波動性,使得模型精度仍有不足。在數據預處理方面,文獻[10]使用經驗模態(tài)分解(empirical mode decomposition,EMD)對光伏功率序列進行分解,降低波動性后,分別使用LSTM 預測各分量再合并為最終結果,但未考慮EMD 分解可能存在模態(tài)混疊的問題進而影響預測精度。文獻[11]引入變分模態(tài)分解(variational mode decomposition,VMD)對光伏功率序列分解后使用LSTM 模型進行預測,但LSTM 的網絡層數以及網絡神經元個數依據主觀經驗進行調節(jié)無法確保模型精度[12]。另外在預測模型所需信息方面,以上研究均依賴氣象信息,針對單變量光伏功率預測的研究較少。
為了解決上述模型存在的問題,考慮到EEMD 和LSTM的優(yōu)勢[13],提高模型的適用范圍,本文將EEMD 和LSTM 結合并且引入Kmeans 算法對EEMD 分解后的光伏序列分量進行合并重構,提出EEMD-Kmeans 數據處理方法。Kmeans 聚類算法從空間上(歐氏距離)計算分量之間的相似度,相似的分量合并會降低分解后序列的數量和復雜度,從而降低模型運算時間,同時提高預測精度。然后采取ALO 算法替代傳統(tǒng)人工調參,對LSTM 的參數進行優(yōu)化,使預測網絡達到最佳狀態(tài)。通過實驗證明本文提出的EEMD-Kmeans-ALO-LSTM 單變量組合預測模型相較于其他模型(LSTM、BPNN、EEMD-LSTM等)具有更好的預測精度,并驗證了EEMD-Kmeans 數據處理方法能夠在一定程度上提高數據質量進而提高預測精度。
光伏功率數據本身具有較強的日周期性,但是由于受到天氣的影響大,具有較強的波動性、隨機性和不穩(wěn)定性。為了減少隨機波動對光伏功率預測精度的影響,本文首先采取EEMD 算法對光伏功率數據進行分解,得到不同時間尺度的數據分量,并采取Kmeans 聚類的方式將分量進行聚類合并,降低數據復雜度,提高模型訓練速度和預測精度。
EMD 是一種適用于非線性、非平穩(wěn)序列的信號分解方法,理論上可用于任何非平穩(wěn)的信號,可以將信號分解為不同時間尺度的本征模函數(intrinsic mode function,IMF)和殘余項(res),相比傳統(tǒng)分解方法,具有直接、直觀、后驗、自適應的特點。EMD 的分解結果形式如式(1)所示。
式中:ci(t)為IMF 分量;res為殘余項;p(t)為光伏功率原始序列。
實際應用中,由于光伏功率波動性大,存在噪聲干擾,因此在EMD 分解過程中可能出現(xiàn)模態(tài)混疊現(xiàn)象,不能獲得理想的光伏功率子序列,使預測的可靠性和適用性下降。而EEMD 在分解過程中添加了高斯白噪聲,解決了模態(tài)混疊問題,實現(xiàn)了信號在適當時間尺度的自動分布,也保證了分解方法依然具備先驗性。EEMD 的計算步驟如下:(1)在光伏功率信號中加入高斯白噪聲;(2)對上一步的光伏功率序列進行EMD 分解,分解得到n只IMF 分量ci(t)和殘余項res;(3)迭代進行前兩步,重復次數N,每次加入不同幅值大小白噪聲,對每次分解的IMF分量求和,并且以平均值作為最終的IMF分量。
Kmeans 思想簡單,對于確定的樣本集合,算法將樣本集合分為K個簇,讓簇中的樣本點盡可能接近,同時保證簇間距離盡可能大[14]。
設聚類的簇為Ci,ui為簇Ci的均值向量,即:
則最小化平方誤差E為:
本文中,輸入樣本集為分解后的12 個IMF 和殘余項(res),設定K為聚類簇數,經過多次實驗,K值為8 時預測效果最好。Kmeans 的計算流程如下:
(1)從13 個樣本序列中隨機選擇8 個樣本作為初始質心向量:{u1,u2,...u8}。
(2)分別計算每個點到8 個聚類中心的歐氏距離,進而將該點分到與聚類中心最近的簇。
(3)重新計算每個簇的均值,重復前兩步,直到均值不再變化,輸出聚類結果C={C1,C2,...C8}。
Kmeans 算法將形態(tài)相似的分量進行聚類,隨后將分類一致的分量進行相加合并,增強合并后分量的整體趨勢,減少了噪聲對整體趨勢的影響,降低序列的復雜度,進而提高預測精度,同時因為合并導致分量數量減少,能夠提高模型的訓練和預測速度。
ALO 算法是Seyedali Mirjalili 在2015 年提出的模仿自然界中蟻獅狩獵過程的啟發(fā)式算法[15]。該算法模擬了獵物(螞蟻)的隨機游走,蟻獅設置陷阱、捕食獵物以及重建陷阱等主要步驟。首先,獵物的隨機游走會使其陷入蟻獅設置的陷阱,該過程中獵物游走的超球面會不斷縮小,加快算法收斂。然后,蟻獅捕食獵物,將位置更新至獵物位置,重建陷阱,獲取更好的狩獵機會,尋求更優(yōu)解,因此算法具有優(yōu)秀的全局搜索能力。同時,結合精英蟻獅和輪盤賭策略使得ALO 算法具有更好的尋優(yōu)能力。ALO 算法具有使用簡單、尋優(yōu)精度高的優(yōu)點,在文中用于優(yōu)化LSTM 的超參數。
LSTM 神經網絡模型是一種改進的循環(huán)神經網絡(RNN),通過記憶細胞保存前一時刻的歷史信息,并且通過遺忘門有選擇地記憶或者忘記歷史信息,解決了RNN 存在的梯度爆炸和梯度消失的缺點,因此適用于長時間序列預測問題。LSTM 模型的計算節(jié)點有輸入門、輸出門、遺忘門和記憶細胞Cell。其中輸入、輸出、遺忘門是控制信息的關鍵,遺忘門是對需要記憶信息的篩選,Cell 則用來更新當前時刻狀態(tài)。輸入門的xt經過激活函數sigmoid 和tanh 后控制記憶單元中的保存向量,其中xt為光伏功率輸入向量。記憶單元遺忘部分由xt和上一時刻中間輸出ht-1決定。中間輸出ht由更新后的St和ot決定。計算方法如下:
式中:ft,it,gt,ot,St,ht分別為遺忘門、輸入門、輸入節(jié)點、輸出節(jié)點、輸出門、狀態(tài)單元狀態(tài)值;Wfx,Wfx,Wfh,Wix,Wih,Wgx,Wgh,Wox,Woh,bf,bi,bg,bo分別為對應門與輸入和中間輸出的權重矩陣(W)及對應門的偏置矩陣(b),最終輸出層的預測值yt=σ(Wyht+by)。
由于LSTM 沒有數學理論用以確定其最優(yōu)參數,而ALO算法具有優(yōu)秀的全局尋優(yōu)能力,因此本文采用ALO 算法優(yōu)化LSTM,確定其最佳網絡結構,提高LSTM 的預測性能。其具體步驟如下:
(1)輸入光伏功率數據,并且將其劃分為測試集和訓練集。
(2)分別初始化ALO 和LSTM 網絡參數,隨機生成LSTM網絡。
(3)通過LSTM 的損失函數計算ALO 的適應度。
(4)根據蟻獅的位置求得需要優(yōu)化的LSTM 參數最優(yōu)解。
(5)將上一步得到的最優(yōu)解代入LSTM 網絡進行預測,并輸出預測結果。
為了對具有非線性和強波動性的光伏功率序列進行精準預測,本文結合EEMD 與LSTM,使用Kmeans 算法對EEMD 分解后的序列進行聚類重構,提出EEMD-Kmeans 數據處理方法,同時引入ALO 算法優(yōu)化LSTM 的網絡參數,設計了基于EEMD-Kmeans-ALO-LSTM 的組合預測模型。其具體步驟如下:
(1)原始光伏序列處理:利用EEMD 方法對光伏歷史數據進行分解,得到一組IMF 和殘余項res。
(2)對步驟(1)中的IMF 分量和殘余分量使用Kmeans 聚類成8 類,即重構為8 個子序列。
(3)數據歸一化:將步驟2 中重構后的子序列分別歸一化處理。
(4)將步驟(3)得到的子序列分別使用訓練后的ALOLSTM 進行預測。
所有子序列預測完畢后,將數據反歸一化后疊加,最終得到預測結果。
本文將從單一預測模型、優(yōu)化預測模型(群智能算法優(yōu)化LSTM 模型)、組合預測模型(結合分解聚類)三階段分別驗證本文所提EEMD-Kmeans-ALO-LSTM 模型中組成成分,LSTM、ALO群智能算法、EEMD-Kmeans數據處理方法的優(yōu)越性。
本文數據集源于DC 國能日新第二屆光伏功率預測賽公開 數據集,采 用2017 年4 月1 日~2017 年8 月30 日 上午8 點到下午6 點之間的數據,采樣周期為15 min,數據總量為6 040組數據,其中4 832 組觀測值用于訓練,占比80%,1 028 條數據用于測試,占比20%。本文數據在整理后統(tǒng)一經過數據清洗,標準化處理,后者利于統(tǒng)一量綱,并提升預測模型的收斂速度和防止預測模型梯度爆炸。
為了嚴謹地評估模型的預測精度,本文共使用三項指標作為依據,包括:平均絕對誤差(mean absolute error,MAE)、均方根誤差(root mean-square error,RMSE)、平均絕對百分誤差(mean absolute percentage error,MAPE)。
本文使用EEMD 分解算法對光伏功率數據進行分解,將原始序列分解12 個IMF 與一個剩余項,由于迭代次數N取值為100 的整數倍時效果較好[16],因此分解過程中N=200。其結果如圖1 所示,其中IMF1、IMF2、IMF3 的波動頻率較高但幅值較低,大部分數值集中在0~1 之間,表征了光伏功率的高頻分量,res是剩余項,表征原數據的非線性低頻趨勢。由圖1 中可知,經EEMD 分解得到的每個分量能夠描述不同時間尺度的波動特征,各分量波動頻率均衡,不存在明顯的時間尺度差異,克服了EMD 的模態(tài)混疊現(xiàn)象,與原序列相比,除IMF1~IMF3 以外的子序列均更加穩(wěn)定,波動頻率更低,有利于后續(xù)的預測。之后使用Kmeans 算法對其進行類別劃分,分 為8 類,即:[IMF1],[IMF2,IMF7,IMF9],[res],[IMF11,IMF12],[IMF6,IMF10],[IMF4],[IMF3,IMF5],[IMF8]。同時,重構后分量數量由13 減少為8,提高了模型訓練及預測速度。為了證明分解和聚類對于預測精度具有一定的增益作用,本文的實證將討論模型LSTM、EEMD-LSTM、EEMDKmeans-LSTM 預測的效果。
圖1 EEMD 的分解結果
在本文中,單一模型LSTM、支持向量回歸(support vector regression,SVR)、BP神經網絡(back propagation neural network,BPNN)和極限學習機(extreme learning machine,ELM)均用來擬合原始光伏功率序列,其擬合結果精度如表1所示,ELM 的整體精度低于其他單一模型,SVR 的MAE 指標在當前數據下具有較好的表現(xiàn),其值為0.731 4,但是其他指標均未達到最優(yōu)效果。LSTM 的預測結果與其他模型相比具有較小的誤差,其MAPE 為39.366 2%,RMSE 為1.094 8,均達到最優(yōu)。同時,預測結果如圖2 所示(截取部分樣本點圖便于觀察),黑色為真實數據,紫色為LSTM 預測結果,可以看出,原始數據的波動性較大,在變化較集中且復雜的部分難以預測,但紫色曲線整體擬合較好。通過以上分析可得出,在對原始序列進行擬合時,LSTM 具有最優(yōu)的結果,因此后續(xù)工作以LSTM 為基礎預測模型。
表1 單一模型預測精度
圖2 單一模型預測結果
驗證了單一模型中LSTM 針對本問題具有最佳預測性能以后,本文對優(yōu)化LSTM模型進行驗證,該過程主要分為粒子群優(yōu)化算法(particle swarm optimization,PSO)、遺傳算法(genetic algorithm,GA)、ALO 三種優(yōu)化算法對LSTM 參數進行一定修正,預測結果詳情見表2和圖3。圖3 中ALO-LSTM 預測值(紫色)與實際值(黑色)擬合相對較好。相比較LSTM,PSO-LSTM的三項指標MAE、RMSE 和MAPE 提升度分別為3.486 6%、0.417 0%和8.358 7%,GA-LSTM 的三項指標提升度分別為3.529 9%、0.968 2%和5.437 9%,其MAE 和MAPE 指標均不如ALO-LSTM。而ALO-LSTM 與LSTM 相比,其MAE、RMSE和MAPE的提升度分別為5.237 8%、0.557 2%和10.774 6%。從結果可知,優(yōu)化LSTM 模型在一定程度上優(yōu)于單一模型,且ALO算法針對本問題對LSTM 的優(yōu)化效果最佳。
表2 優(yōu)化LSTM 模型預測精度
圖3 優(yōu)化LSTM 模型預測結果對比
通過實驗得到預測指標結果如表3 所示,相比于LSTM和優(yōu)化LSTM 模型,組合模型的精度明顯更高,其中EEMDLSTM 相對于ALO-LSTM 模型的三項指標MAE、RMSE 和MAPE 提升度分別為59.690 9%、57.297 6%和63.930 7%。因此,分解對于預測精度的提升效果更為明顯。本文通過計算序列純度,將聚類數目設置為8(此時聚類后子序列純度最高、預測精度最高),即原本的13 支分量聚類至8 只,此過程所構造模型為EEMD-Kmeans-LSTM(H1)。如表3 所示,H1 相對于EEMD-LSTM 模型,其三項指標MAE、RMSE 和MAPE 提升度分別為5.941 38%、2.322 27% 和15.684 5%;相對于LSTM,其MAE、RMSE 和MAPE 的提升度分別為64.075 8%、58.526 7%和72.864 7%。
表3 組合模型預測精度
經過上述實證分析可知,LSTM 在單一模型中預測精度最高,ALO 對于LSTM 具有更好的優(yōu)化效果,EEMD-Kmeans數據處理方法相對于EEMD 能進一步提高模型運算速度和精度。因此將三者進一步組合,提出EEMD-Kmeans-ALOLSTM(H2)組合預測模型,其指標和預測結果如表3 和圖4 所示(由于模型預測結果比較接近,因此采用誤差對比圖)。由圖4 可以看出,黃色曲線(EEMD-LSTM)離X軸最遠(樣本數1 000 到1 200 之間尤為明顯),而紅色曲線(H1)在誤差較小的部分擬合不如紫色曲線(H2),且大誤差值較多,而紫色曲線(H2)整體更加接近X軸。并且從表3 可以得出,相對于H1 模型,H2 的三項指標MAE、RMSE 和MAPE 的提升度分別為9.345 2%、9.310 2% 和15.152 8%。因此可以證明EEMDKmeans 數據處理方法和ALO-LSTM 模型的組合是有效的,本文提出的EEMD-Kmeans-ALO-LSTM 模型在當前數據集上具有最高的預測精度。
圖4 組合模型預測殘差對比
本文針對光伏功率預測精度低的問題,提出了一種基于EEMD-Kmeans-ALO-LSTM(H2)的單變量短期光伏功率預測模型,并采用DC 國能日新光伏功率預測競賽公開數據集進行實驗。實驗結果表明,相對于EEMD-LSTM,H1 和H2 模型的主要誤差指標MAPE 分別降低了15.7%和28.5%,證明了本文所提模型的有效性。通過實驗探究得出以下結論:
(1) 群智能算法能夠實現(xiàn)對LSTM 網絡參數的優(yōu)化從而達到更好的預測效果,而ALO 算法相對于PSO 算法、GA 算法,具有更好的優(yōu)化效果。
(2) 本文提出的EEMD-Kmeans 數據處理方法相對于EEMD 方法,能進一步提升數據質量并且降低分量數量,從而提高預測精度和預測速度。
(3)本文探究了單一模型和優(yōu)化模型,結合探究結果提出了H2 單變量組合預測模型,該模型具有較高的預測精度。
本文所提模型僅僅依賴光伏功率歷史數據,未對環(huán)境因素對光伏功率預測的影響做太多探究,因此后續(xù)研究中應考慮結合環(huán)境因素對該模型進行探究。