汪心怡,姚彥鑫,董未名
(1.北京信息科技大學(xué) 光電測試技術(shù)及儀器教育部重點實驗室;高端裝備智能感知與控制北京市國際科技合作基地,北京 100010; 2.中國科學(xué)院自動化研究所,北京 100080)
據(jù)統(tǒng)計,無線通信占整個信息和通信技術(shù)產(chǎn)業(yè)能源消耗的15%~20%。利用新型再生能源,如熱、振動、太陽能、聲學(xué)、風(fēng),甚至周圍的無線電能量來驅(qū)動無線網(wǎng)絡(luò)的研究興趣極大地提高,最終在無線網(wǎng)絡(luò)領(lǐng)域形成了可吸收能量(Energy Harvesting,EH)的概念[1]。其中太陽能吸收能量以其獲取方便,可以預(yù)測等優(yōu)勢,得到廣泛應(yīng)用[2]。以前工作大多集中于討論光伏發(fā)電系統(tǒng)輸出功率的短期預(yù)測,預(yù)測方法大致可分為物理法和統(tǒng)計法。物理法模型構(gòu)建復(fù)雜、參數(shù)選取復(fù)雜、運算量比較大,適合大規(guī)模發(fā)電站使用;統(tǒng)計法主要依據(jù)數(shù)學(xué)統(tǒng)計理論,模型建立簡單、計算量小,預(yù)測精度高,不過需要大量的歷史數(shù)據(jù),如自回歸滑動平均、馬爾科夫鏈預(yù)測、支持向量機預(yù)測、人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)預(yù)測模型[3]等。其中ANN以其高精度獲得廣泛應(yīng)用,網(wǎng)絡(luò)的形式可以有很多變化,如遞歸神經(jīng)網(wǎng)絡(luò)[4]、小波網(wǎng)絡(luò)等。
考慮光伏發(fā)電系統(tǒng)輸出功率受到外界氣象因素的影響呈現(xiàn)出一定的混沌特性[5],可以引入相空間重構(gòu)對數(shù)據(jù)進行處理[6]。文獻[7]中對樣本空間進行重構(gòu),確定最佳的延遲時間和嵌入維數(shù),使新的樣本能夠表征原始時間序列動態(tài)特性,在此基礎(chǔ)上運用BP進行短期預(yù)測。實驗結(jié)果表明,短期預(yù)測精度得到提高。文獻[8]中結(jié)合相空間重構(gòu)理論與動態(tài)遞歸神經(jīng)網(wǎng)絡(luò)提高了預(yù)測精度。文獻[9]中基于相空間重構(gòu)小波神經(jīng)網(wǎng)絡(luò)進行水電站發(fā)電量預(yù)測,并借助具有全局搜索能力的改進粒子群優(yōu)化算法對小波神經(jīng)網(wǎng)絡(luò)特征參數(shù)進行優(yōu)化,提高模型的精度和泛化能力。
將相空間重構(gòu)與遞歸小波神經(jīng)網(wǎng)絡(luò)結(jié)合的研究還沒有,而且研究對象也沒有針對較短時間間隔的太陽能吸收能量。本文將針對此問題開展研究。
混沌是指在確定系統(tǒng)中出現(xiàn)的具有一種貌似無規(guī)則的、類似隨機的現(xiàn)象,混沌不是簡單的無序,而是沒有明顯的周期和對稱?;煦缥邮菚r間序列相空間的子空間,它使得相軌跡有一定的規(guī)律可尋,從而保證了混沌系統(tǒng)的可預(yù)測性。Lyapunov指數(shù)是對時間序列混沌性進行確定檢驗的一種非常重要的方法,可以運用小數(shù)據(jù)量法計算得到,正的Lyapunov指數(shù)意味著混沌現(xiàn)象。
重構(gòu)相空間的兩種方法:導(dǎo)數(shù)重構(gòu)法和坐標(biāo)延遲重構(gòu)法。坐標(biāo)延遲重構(gòu)法中可以采用C-C法[10]聯(lián)合計算相空間重構(gòu)嵌入維數(shù)和時間延遲。C-C法具有容易操作、計算量小、抗噪性強、對小數(shù)據(jù)組可靠等特點??紤]混沌時間序列{x(n)|n=1,2,…,N},假設(shè)重構(gòu)嵌入維數(shù)為m,時間延遲為τ,對其進行相空間重構(gòu)后得到
X={Xi|i=1,2,…,N-(m-1)τ}
其中,Xi為重構(gòu)相空間中的相點[11],
Xi=[x(i),x(i+τ),,x(i+(m-1)τ)]
遞歸神經(jīng)網(wǎng)絡(luò)在逼近非平穩(wěn)信號時能更好適應(yīng)信號的動態(tài)特性,神經(jīng)網(wǎng)絡(luò)結(jié)合小波變換能夠充分利用小波的局部化性質(zhì)和神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)能力,將遞歸小波網(wǎng)絡(luò)和小波結(jié)合組成的網(wǎng)絡(luò)將具有較強的逼近和容錯能力、較快的收斂速度和較好的預(yù)測效果[12]。
在小波神經(jīng)網(wǎng)絡(luò)中,隱含層神經(jīng)元選擇不同的小波激勵函數(shù)對小波網(wǎng)絡(luò)的收斂會有不同的影響,同時對算法的復(fù)雜性有明顯的影響。根據(jù)光伏發(fā)電功率數(shù)據(jù)序列的特點,小波基函數(shù)選用Morlet小波作為隱層神經(jīng)元的激勵函數(shù)。Morlet母小波是余弦調(diào)制的高斯波,其時域和頻域的分辨率高,廣泛用于預(yù)測領(lǐng)域[13],其函數(shù)如圖1所示,表達式為
φ(x)=e-x2/2cos 1.75x
圖1 Morlet母小波函數(shù)圖
在Elman型遞歸神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,將小波函數(shù)作為隱含層的激勵函數(shù)構(gòu)成遞歸小波神經(jīng)網(wǎng)絡(luò)[14],如圖2所示。隱含層神經(jīng)元的作用函數(shù)為小波基函數(shù)。承接層神經(jīng)元的輸入是隱含層神經(jīng)元的輸出,承接層和輸入層的輸出同時輸入到隱含層。承接層神經(jīng)元也是一種記憶單元,儲存了隱含層神經(jīng)元上一步的輸出,使得網(wǎng)絡(luò)具有較好的動態(tài)性能。
圖2 遞歸小波神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型
本文考慮對光伏發(fā)電功率數(shù)據(jù)時間序列進行相空間重構(gòu)預(yù)處理,可提高預(yù)測精度和減少預(yù)測對天氣的依賴性,較為適合短時間間隔的太陽能能量吸收的預(yù)測。重構(gòu)后使用的數(shù)據(jù)及神經(jīng)網(wǎng)絡(luò)模型相對簡單,可以輕量級運行于通信節(jié)點。對光伏發(fā)電功率時間序列進行混沌特性分析,并對其進行相空間重構(gòu)。然后將重構(gòu)后數(shù)據(jù)輸入神經(jīng)網(wǎng)絡(luò)進行預(yù)測。
重構(gòu)光伏發(fā)電功率時間序列{x(t),t=1,2,…,1 099}的相空間,假設(shè)其嵌入維數(shù)為m、時間延遲為τ,得到重構(gòu)相空間中相點表示為
X(i)=[x(i),x(i+τ),…,
x(i+(m-1)τ)]
(1)
式中:i=1,2,…,N,N=1 099-(m-1)τ為光伏發(fā)電功率重構(gòu)相空間中的相點個數(shù)。因此,得到一個N×m的重構(gòu)相空間數(shù)據(jù)矩陣為:
(2)
則遞歸小波神經(jīng)網(wǎng)絡(luò)輸入層節(jié)點個數(shù)確定為m,輸出層節(jié)點個數(shù)為1。
網(wǎng)絡(luò)訓(xùn)練集的輸入為
X(j)=[x(j),x(j+τ),…,x(j+(m-1)τ)]
則對應(yīng)的網(wǎng)絡(luò)輸出為
Y(j)=x(j+1+(m-1)τ)
其中,j=1,2,…,N-1表示網(wǎng)絡(luò)輸入輸出訓(xùn)練數(shù)據(jù)對的標(biāo)號。
經(jīng)過對光伏發(fā)電功率進行小波分析,確定隱含層和承接層神經(jīng)元個數(shù)。Hi(t)為第i個隱藏層節(jié)點的輸出信號;hi(t)為隱含層神經(jīng)元i的輸入信號;φ(·)為小波基函數(shù);ai(t)為小波函數(shù)伸縮因子;bi(t)為小波函數(shù)平移因子;θi是輸入到隱藏層節(jié)點的常數(shù)偏置;α是從承接層輸入到隱藏層的折扣值;W1、W2、v分別為輸入層到隱藏層,隱藏層到輸出層、承接層到隱藏層的權(quán)值矩陣。其中元素的下標(biāo),分別表示對應(yīng)的關(guān)聯(lián)節(jié)點。定義:
(3)
Hi(t)可表示為
此神經(jīng)網(wǎng)絡(luò)的動態(tài)方程可表示為:
(4)
設(shè)神經(jīng)網(wǎng)絡(luò)訓(xùn)練時間步從1~N,則一個訓(xùn)練周期后的總誤差為
(5)
學(xué)習(xí)算法的最終目的是通過調(diào)節(jié)神經(jīng)元之間的連接權(quán)值,使得總誤差值逐漸變小,直至滿足預(yù)先設(shè)定的條件。具體的方法是采用動態(tài)梯度下降算法。
神經(jīng)網(wǎng)絡(luò)的輸入、輸出為1 d的光伏發(fā)電功率數(shù)據(jù),如果數(shù)據(jù)之間數(shù)量級差別比較大,神經(jīng)網(wǎng)絡(luò)的預(yù)測誤差會很大,并且在訓(xùn)練過程中神經(jīng)元容易飽和。因此,在訓(xùn)練神經(jīng)網(wǎng)絡(luò)之前需要對數(shù)據(jù)進行歸一化到[0,1]之間。
由于相空間重構(gòu)是預(yù)先進行操作,實際預(yù)測時輸入數(shù)據(jù)量少,而且遞歸小波神經(jīng)網(wǎng)絡(luò)本身的強動態(tài)適應(yīng)性和激勵函數(shù)的正則性將使得的預(yù)測方法的預(yù)測誤差小,收斂速度快,可實施性強。
吸收太陽能能量的預(yù)測時間間隔考慮應(yīng)用特點,一般預(yù)測間隔較短,遠小于光伏電站0.5 d、若干小時的預(yù)測間隔。更短,秒、毫秒量級的時間數(shù)據(jù)在公開資料較為難于獲取,需要實驗得到。采用Solar Radiation Monitoring Laboratory, University of Oregon網(wǎng)站上公布的Portland地區(qū)的2015年7月份的太陽能發(fā)電數(shù)據(jù)。數(shù)據(jù)中包括太陽輻射強度、環(huán)境溫度、平均風(fēng)速、風(fēng)向、光伏發(fā)電功率等。太陽能板傾斜角度為30°,方向朝南。數(shù)據(jù)選取時段為6:00~19:00,采樣間隔為5 min,則每種數(shù)據(jù)1 d的數(shù)據(jù)量大小為157。
數(shù)據(jù)7月1~7日光伏發(fā)電功率數(shù)據(jù)構(gòu)成時間序列{x(t),t=1,2,…,n},序列長度為n=1 099。根據(jù)C-C算法,確定此序列相空間重構(gòu)的最佳延遲時間為τ=4、嵌入維數(shù)m=5。用選取的嵌入維數(shù)和時間延遲對序列進行相空間重構(gòu),根據(jù)小數(shù)據(jù)量法得到最大Lyapunov指數(shù)為λ=0.020 9。由于λ>0,所以序列具有混沌特性。
選取2015年7月1~8日、7月14日、7月15日共10 d的光伏發(fā)電功率數(shù)據(jù)構(gòu)成時間序列,采樣時段為6:00~19:00。分別計算嵌入維維數(shù)、時間延遲、最大Lyapunov指數(shù)等,計算結(jié)果如表1所示。
表1 不同采樣間隔的時間序列相空間重構(gòu)參數(shù)對比
實驗場景1遞歸小波神經(jīng)網(wǎng)絡(luò)處理非相空間重構(gòu)數(shù)據(jù)。由于每天的數(shù)據(jù)為6:00~19:00時間段采集間隔5 min得到的157個數(shù)據(jù),遞歸小波神經(jīng)網(wǎng)絡(luò)的輸入層、輸出節(jié)點個數(shù)為157。隱含層和承接層神經(jīng)元的個數(shù)經(jīng)過計算和試湊得到M=18。根據(jù)確定的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)建立遞歸小波神經(jīng)網(wǎng)絡(luò)。
首先將選取的數(shù)據(jù)歸一化處理,然后將7月1日~7月7日的數(shù)據(jù)訓(xùn)練預(yù)測模型,訓(xùn)練用前1 d的光伏發(fā)電功率預(yù)測后1 d的。訓(xùn)練完成后,用7月7日預(yù)測7月8日的光伏發(fā)電功率。建立同樣結(jié)構(gòu)的Elman神經(jīng)網(wǎng)絡(luò),訓(xùn)練設(shè)置的參數(shù)與遞歸小波神經(jīng)網(wǎng)絡(luò)相同。
圖3 訓(xùn)練誤差對比
表2 不同方法的預(yù)測情況對比
網(wǎng)絡(luò)名稱訓(xùn)練次數(shù)訓(xùn)練誤差預(yù)測總體相對誤差遞歸小波神經(jīng)網(wǎng)絡(luò)5220.00098550.0495Elman神經(jīng)網(wǎng)絡(luò)7480.00098900.0575
圖4 預(yù)測值與實際值各點相對誤差曲線圖
由圖4可知,6:00~8:00和17:00~19:00這個兩個時間段單點相對誤差比較大,在其他時間段單點相對誤差比較小。結(jié)果比較理想。
以上直接對太陽能數(shù)據(jù)采用神經(jīng)網(wǎng)絡(luò)的缺點在于,網(wǎng)絡(luò)的輸入層和輸出層節(jié)點個數(shù)是按照輸入、輸出的數(shù)據(jù)量來選擇的。如果預(yù)測間隔較短,輸入的數(shù)據(jù)量很大,則會導(dǎo)致網(wǎng)絡(luò)結(jié)構(gòu)變得非常復(fù)雜,并且使得訓(xùn)練網(wǎng)絡(luò)過程中的計算量很大,不利于實際的應(yīng)用。
實驗場景2重構(gòu)與未重構(gòu)數(shù)據(jù)對不同天氣情況適應(yīng)度對比。對于全年隨機挑選的40 d數(shù)據(jù),按照太陽能輻射情況、天氣觀測值等,將天氣分為晴天,陰/雨/多云轉(zhuǎn)晴兩種情況,預(yù)測模型分別采用未重構(gòu)數(shù)據(jù)構(gòu)建的Elman預(yù)測模型,輸入為相空間重構(gòu)數(shù)據(jù)的m輸入1輸出Elman預(yù)測模型1,輸入為相空間重構(gòu)數(shù)據(jù)的m-1輸入1輸出Elman預(yù)測模型2,進行多次實驗后平均預(yù)測結(jié)果如表3所示。
表3 模型預(yù)測結(jié)果比較
可見,僅選取太陽能吸收能量作為輸入預(yù)測時,預(yù)測精度相對采用重構(gòu)數(shù)據(jù)的模型低,而且在天氣變化時預(yù)測誤差增加較大。因此直接用太陽能數(shù)據(jù)作神經(jīng)網(wǎng)絡(luò)的輸入,很多文獻都采取了先用灰色分類、SVM、SOM網(wǎng)絡(luò)將數(shù)據(jù)按照不同天氣類型先進行聚類,再依據(jù)不同天氣類型分別用神經(jīng)網(wǎng)絡(luò)進行預(yù)測的方案。
如表3所示,與未重構(gòu)時的Elman神經(jīng)網(wǎng)絡(luò)預(yù)測模型相比,重構(gòu)后的m輸入1模型與m-1輸入1輸出模型均能在非晴天實現(xiàn)可接受精度的預(yù)測,m輸入1輸出神經(jīng)網(wǎng)絡(luò)模型預(yù)測性能最好。可見本文模型應(yīng)用混沌理論進行預(yù)測,對實時天氣數(shù)據(jù)和相關(guān)因素的敏感度低很多,可在不對天氣情況分析的條件下用于對吸收能量進行短時預(yù)測。
實驗場景3遞歸小波神經(jīng)網(wǎng)絡(luò)處理相空間重構(gòu)數(shù)據(jù),不同時間間隔的處理結(jié)果。
用7月1~7日的光伏發(fā)電功率構(gòu)建神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù)集,對7月8日光伏發(fā)電功率進行預(yù)測。分別用采樣間隔為10、20、30 min的光伏發(fā)電功率數(shù)據(jù)訓(xùn)練神經(jīng)網(wǎng)絡(luò),對7月8日的光伏發(fā)電功率進行提前10、20、30 min預(yù)測。表4為了不同采樣間隔光伏發(fā)電功率預(yù)測情況。
表4 不同采樣間隔光伏發(fā)電功率預(yù)測情況
采用第2.3節(jié)介紹的訓(xùn)練算法對7月8日的光伏發(fā)電功率進行提前5 min預(yù)測,總體相對誤差為0.028 3。誤差小于5%的數(shù)據(jù)占76.43%以上,且大部分都在8:00~18:00時間段,相空間重構(gòu)和遞歸小波神經(jīng)網(wǎng)絡(luò)結(jié)合方法能夠較準(zhǔn)確地完成預(yù)測。
由于相空間重構(gòu)的計算可以預(yù)先計算,本節(jié)分別衡量相空間與遞歸小波網(wǎng)絡(luò)結(jié)合的計算量和非相空間重構(gòu)的數(shù)據(jù)與BP網(wǎng)絡(luò)結(jié)合預(yù)測的在線計算量。神經(jīng)網(wǎng)絡(luò)計算主要集中于非線性激勵函數(shù)和乘法計算的計算量。根據(jù)文獻[15]可知,通過處理,非線激勵函數(shù)計算量大約相當(dāng)于8次乘法的計算量。假設(shè)相空間與遞歸小波網(wǎng)絡(luò)的輸入、隱層、輸出層節(jié)點個數(shù)分別為P、Y、Q。非相空間重構(gòu)的數(shù)據(jù)與BP網(wǎng)絡(luò)結(jié)合的輸入、隱層、輸出層節(jié)點個數(shù)分別為P′、Y′、Q′。
神經(jīng)網(wǎng)絡(luò)非線性激勵函數(shù)核算:普通神經(jīng)網(wǎng)絡(luò)和遞歸網(wǎng)絡(luò),非線性激勵操作的計算量為O(Y+Q)。進行相重構(gòu)后,輸入、隱層、輸出層節(jié)點個數(shù)大大降低,不過迭代次數(shù)增加,為P′次。
乘法核算:普通神經(jīng)網(wǎng)絡(luò),乘法計算次數(shù)對于一次迭代為O((P′+Q′)Y′)。對于遞歸網(wǎng)絡(luò)一次迭代是O((P+Y+Q)Y),需要迭代Y次。那么折算為乘法計算量后,對比相空間重構(gòu)與遞歸小波網(wǎng)絡(luò)結(jié)合的計算量O(Y+Q)·P′×8+O((P+Y+Q)Y)·P′和O(Y+Q)×8+O((P+Y+Q)Y)。
表5為折算為乘法的等效計算量比較。
表5 相空間和Elman結(jié)合計算量與BP算法等效為乘法的計算量比較
當(dāng)預(yù)測間隔為5 min,非相空間重構(gòu)計算量大概是相空間重構(gòu)計算量基本一致。但是,注意,當(dāng)預(yù)測時間間隔進一步變短時,比如2.5、1.25 min,相空間與Elman結(jié)合方法的計算量比BP算法的計算量小。時間間隔越短,本文提出的方法的計算量較小的效果越明顯。當(dāng)預(yù)測間隔為1.25 min時,計算量降低25%以上。相空間與Elman結(jié)合預(yù)測模型相對簡單,預(yù)測精度高,而且不需要存儲大量的歷史數(shù)據(jù)和未來預(yù)測數(shù)據(jù),相對普通BP或者未進行相空間重構(gòu)數(shù)據(jù)進行預(yù)測是輕量級的。
這里沒有對小于5 min的數(shù)據(jù)做預(yù)測實驗的原因是網(wǎng)站上的測量數(shù)據(jù)時間間隔最小為5 min。不過實驗已經(jīng)說明了本文方法具有預(yù)測精度高、輕量級運行的優(yōu)越性。
綜合仿真結(jié)果可知,雖然相空間重構(gòu)后只用了少數(shù)天數(shù)的數(shù)據(jù),但是預(yù)測精度較高,且對天氣變化的敏感度相對較低。這是由于相空間重構(gòu)本身表現(xiàn)了混沌序列本身的內(nèi)在結(jié)構(gòu)特征,包含了不同天氣因素復(fù)雜非線性影響的關(guān)系。使用相空間重構(gòu)與遞歸小波網(wǎng)絡(luò)結(jié)合的方法后,預(yù)測精度更是得到了極大的提高,時間間隔較短時,預(yù)測計算量相對較低。本文提出的基于相空間重構(gòu)和遞歸小波神經(jīng)網(wǎng)絡(luò)結(jié)合預(yù)測具有可行性,在預(yù)測間隔變短時候,能夠以較低的代價更準(zhǔn)確的預(yù)測未來光伏發(fā)電系統(tǒng)的輸出功率。
本文研究了適用于與太陽能吸收節(jié)點的輕量級、短時間間隔的吸收太陽能能量預(yù)測方法。建立了相空間重構(gòu)與遞歸小波網(wǎng)絡(luò)結(jié)合的光伏發(fā)電系統(tǒng)輸出功率預(yù)測模型。驗證了相空間重構(gòu)表現(xiàn)了混沌序列本身的內(nèi)在結(jié)構(gòu)特征,包含了不同天氣因素復(fù)雜非線性影響的關(guān)系,可以更高效表達數(shù)據(jù)特征。使用小波遞歸網(wǎng)絡(luò)使系統(tǒng)的動態(tài)性提高,學(xué)習(xí)能力增強。因此新模型的收斂速度、預(yù)測精度等都得到了較大提高,而且預(yù)測計算量降低。本文提出的預(yù)測模型具有較好的天氣、環(huán)境等的適應(yīng)度,具有預(yù)測精度高,短時間間隔計算量低等優(yōu)良性能。吸收太陽能能量的預(yù)測需要對天氣相對不敏感,在短時間間隔可以輕量級運行在節(jié)點上的預(yù)測算法,因此本文的方法將有望在能量吸收節(jié)點的短時間間隔發(fā)電功率預(yù)測中獲得廣泛應(yīng)用。進一步可以研究如何為降低短時間間隔情況下的預(yù)測計算量而改進模型。