饒宇飛, 劉 陽, 李玲玲, 方 舟, 曲立楠
(1. 國網(wǎng)河南省電力公司電力科學(xué)研究院, 河南 鄭州 450002; 2. 河北工業(yè)大學(xué) 電氣工程學(xué)院, 天津300130; 3.中國電力科學(xué)研究院(南京), 江蘇 南京 210000)
化石能源的過度開采和消耗造成了嚴(yán)重的環(huán)境污染。人們逐漸重視可再生能源(太陽能、風(fēng)能、地?zé)崮芎退艿龋┑拈_發(fā)和利用??稍偕茉吹膹V泛應(yīng)用有利于減少溫室氣體的排放, 降低化石能源的消耗[1],[2]。 光伏發(fā)電是一種重要的太陽能利用方式,隨著科學(xué)技術(shù)的不斷進(jìn)步,光伏發(fā)電技術(shù)得到了長足發(fā)展。 光伏發(fā)電量占我國總發(fā)電量的比重呈逐年升高的趨勢。 光伏發(fā)電對促進(jìn)我國經(jīng)濟(jì)的可持續(xù)發(fā)展有著重要意義[3]。
光伏發(fā)電系統(tǒng)輸出功率的預(yù)測是光伏發(fā)電領(lǐng)域的一項重要技術(shù), 國內(nèi)外專家對該技術(shù)進(jìn)行了大量的理論研究和數(shù)值模擬。 人工智能方法被廣泛地應(yīng)用于光伏預(yù)測領(lǐng)域,如BP 神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、極限學(xué)習(xí)機(jī)等預(yù)測模型。 文獻(xiàn)[4]建立了基于遮陽云動態(tài)特性的光伏發(fā)電超短期預(yù)測模型,該模型包括3 個預(yù)測階段:第一階段選擇遮陽云; 第二階段提取對光伏發(fā)電影響較大的目標(biāo)云的動態(tài)特性;最后,通過徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測, 分析結(jié)果表明:該預(yù)測方法在多云天氣下,可以對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行精確預(yù)測;RBF 神經(jīng)網(wǎng)絡(luò)具有較強(qiáng)的映射能力, 但在實際應(yīng)用中對樣本的依賴性很大。 文獻(xiàn)[5]提出了一種基于集成經(jīng)驗?zāi)J椒纸猓‥EMD)和變權(quán)組合預(yù)測的光伏發(fā)電系統(tǒng)輸出功率預(yù)測方法,該預(yù)測方法采用EEMD 將光伏電力數(shù)據(jù)分解為低頻、中頻和高頻數(shù)據(jù);然后,利用變權(quán)組合預(yù)測模型對這3 組序列的光伏發(fā)電系統(tǒng)輸出功率分別進(jìn)行預(yù)測;最后,將預(yù)測結(jié)果進(jìn)行疊加,得到最終的預(yù)測結(jié)果,該預(yù)測方法可以對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行準(zhǔn)確預(yù)測, 但該預(yù)測方法在一定程度上增加了計算成本。 文獻(xiàn)[6]提出了基于深卷積神經(jīng)網(wǎng)絡(luò)的光伏短期電力預(yù)測混合方法, 該預(yù)測方法可以減輕光伏并網(wǎng)系統(tǒng)中由太陽輻射不確定性帶來的影響, 卷積神經(jīng)網(wǎng)絡(luò)適用于處理高維數(shù)據(jù), 但卷積神經(jīng)網(wǎng)絡(luò)的池化層會導(dǎo)致有價值信息的丟失, 須要通過數(shù)據(jù)擴(kuò)增來解決這一問題。 文獻(xiàn)[7]基于密度峰值聚類算法并結(jié)合Elman 神經(jīng)網(wǎng)絡(luò), 對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測,分析結(jié)果表明,相比于BP 神經(jīng)網(wǎng)絡(luò),Elman神經(jīng)網(wǎng)絡(luò)具有良好的動態(tài)特性和較快的逼近速度。 文獻(xiàn)[8]采用BP 神經(jīng)網(wǎng)絡(luò)對3 種天氣下的光伏發(fā)電系統(tǒng)輸出功率分別進(jìn)行預(yù)測,為了提高BP神經(jīng)網(wǎng)絡(luò)的預(yù)測精度, 采用經(jīng)典PSO 算法對BP神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行尋優(yōu)。 為了提高數(shù)據(jù)缺失情況下, 光伏發(fā)電系統(tǒng)輸出功率的預(yù)測精度, 文獻(xiàn)[9]采用雙維度順序填補(bǔ)方法來補(bǔ)齊缺失的數(shù)據(jù),并采用廣義回歸神經(jīng)網(wǎng)絡(luò)對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測。
綜上可知, 上述光伏發(fā)電系統(tǒng)輸出功率預(yù)測方法均存在一定的缺陷, 如BP 神經(jīng)網(wǎng)絡(luò)易陷入局部最優(yōu),模態(tài)分解會增加模型的計算成本。為了解決這些問題,本文采用非線性映射能力強(qiáng)、泛化能力強(qiáng)、 學(xué)習(xí)速度快的極限學(xué)習(xí)機(jī)模型來預(yù)測光伏發(fā)電系統(tǒng)輸出功率。 本文首先分析了極限學(xué)習(xí)機(jī)(ELM)和鳥群優(yōu)化算法(BSA)的基本原理;然后,對BSA 算法進(jìn)行改進(jìn),提出了改進(jìn)鳥群優(yōu)化(IBSA) 算法, 并采用3 個標(biāo)準(zhǔn)測試函數(shù)對IBSA算法的收斂性能進(jìn)行測試;接著,將IBSA 算法的模擬結(jié)果與BSA 算法的模擬結(jié)果進(jìn)行比較;最后, 分析了多云天氣對光照強(qiáng)度的影響, 建立了BSA-ELM 模型、SVM 模型和IBSA-ELM 模型,并在兩種天氣下, 利用這3 種模型對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測。
極限學(xué)習(xí)機(jī)(ELM)是基于單隱含層前饋神經(jīng)網(wǎng)絡(luò)提出的, 具有泛化能力強(qiáng)和學(xué)習(xí)速度快等優(yōu)點。 ELM 由輸入層、輸出層和隱含層組成,其中,輸入層和輸出層的神經(jīng)元分別與隱含層的神經(jīng)元相連接。
隱含層與輸入層之間的連接權(quán)值ω 的表達(dá)式為[10]~[12]
隱含層與輸出層之間的連接權(quán)值η 的表達(dá)式為
隱含層閾值v 的表達(dá)式為
如果有P 個樣本集,該樣本集的輸入C 和輸出D 的表達(dá)式分別為
假設(shè)隱含層的激活函數(shù)為A(x),且單隱含層前饋神經(jīng)網(wǎng)絡(luò)的輸出B 的表達(dá)式為
則B 中某一元素bj的表達(dá)式為
式(7)可以表示為
式中:L為隱含層的輸出。
L 的表達(dá)式為
隱含層與輸出層之間的連接權(quán)值Sη的表達(dá)式為
對式(10)進(jìn)行求解,可得到如下的數(shù)值解。
式中:L+為L的廣義逆矩陣。
在ELM 的訓(xùn)練過程中,未對輸入層的權(quán)值和隱含層的閾值進(jìn)行調(diào)整,這樣會增加ELM 的隱含層節(jié)點數(shù),從而增加預(yù)測模型的計算量,降低預(yù)測模型預(yù)測結(jié)果的穩(wěn)定性。因此,本文采用改進(jìn)鳥群優(yōu)化算法對ELM 的輸入權(quán)值和隱含層閾值進(jìn)行優(yōu)化。
鳥群優(yōu)化(BSA)算法是通過模仿自然界中鳥的飛行行為和覓食行為建立的。 BSA 算法遵循以下規(guī)則[13]:①每只鳥可以選擇覓食行為或警戒行為;②每只鳥可以記錄群體中的最優(yōu)信息和個體最優(yōu)信息,且信息在群體中是共享的;③當(dāng)鳥選擇警戒行為時,鳥會向群體中心移動,并且在移動的過程中,存在競爭關(guān)系;④鳥群會周期性地遷徙到下一個地點;⑤當(dāng)鳥群遷徙到下一個地點時,選擇適應(yīng)度最佳的鳥作為生產(chǎn)者,將適應(yīng)度最差的鳥作為乞討者,剩下的鳥被隨機(jī)選擇成生產(chǎn)者或乞討者;⑥乞討者跟隨生產(chǎn)者進(jìn)行覓食。
BSA 算法第2 個規(guī)則的表達(dá)式為
當(dāng)鳥選擇警戒行為時,其位置的更新公式為
E1,E2的表達(dá)式分別為
式中:sumf 為鳥群的適應(yīng)度總和;ε 為無窮小量;e1,e2均為[0,2]內(nèi)的常數(shù);fi為第i 只鳥的適應(yīng)度值;fm為第m 只鳥的適應(yīng)度值。
生產(chǎn)者和乞討者的位置更新公式分別為
式中:GL 為乞討者的跟隨系數(shù),GL∈[0,2];randn為服從正太分布的隨機(jī)數(shù)。
利用傳統(tǒng)的BSA 算法處理維數(shù)較高的問題時,容易陷入局部最優(yōu)解。 本文對BSA 算法進(jìn)行改進(jìn),以提高BSA 算法的搜索能力。 在BSA 中,生產(chǎn)者的覓食能力是最強(qiáng)的,當(dāng)生產(chǎn)者陷入局部最優(yōu)時,將會導(dǎo)致整個算法陷入局部最優(yōu)解。 本文對生產(chǎn)者位置更新公式進(jìn)行改進(jìn),在生產(chǎn)者位置更新公式中引入學(xué)習(xí)系數(shù),從而提高生產(chǎn)者的搜索能力[16]。 在鳥群中乞討者的覓食能力是最差的,因此,在尋優(yōu)的過程中,乞討者很容易陷入局部最優(yōu)解。 在迭代后期,本文將變異算子引入到乞討者位置更新公式中[17],通過變異操作來提高乞討者跳出局部最優(yōu)解的能力。
改進(jìn)后的生產(chǎn)者位置更新公式為
式中:v(t)為生產(chǎn)者的學(xué)習(xí)系數(shù)。
v(t)的表達(dá)式為
式中:t 為當(dāng)前迭代次數(shù);tmax為最大迭代次數(shù);vmax為學(xué)習(xí)系數(shù)最大值;vmin為學(xué)習(xí)系數(shù)最小值。
生產(chǎn)者的學(xué)習(xí)系數(shù)v(t)呈正弦變化,在迭代前期該學(xué)習(xí)系數(shù)較大,從而加強(qiáng)了生產(chǎn)者的全局搜索能力;在迭代后期該學(xué)習(xí)系數(shù)較小,從而加強(qiáng)了生產(chǎn)者的局部搜索能力。 通過引入學(xué)習(xí)系數(shù),加強(qiáng)了算法的全局和局部搜索能力。
改進(jìn)后的跟隨者位置更新公式為
式中:β 為變異的控制程度;Cauchy(t)為服從柯西分布的一個隨機(jī)變量。
在BSA 算法中,將適應(yīng)度最好的個體作為生產(chǎn)者,將適應(yīng)度最差的個體作為乞討者,剩余個體隨機(jī)選擇為生產(chǎn)者或乞討者。 這樣的選擇機(jī)制會將適應(yīng)度相對較好的個體選擇為乞討者,將適應(yīng)度相對較差的個體選擇為生產(chǎn)者,從而降低了算法的收斂速度和收斂精度。 本文針對這一問題在BSA 算法的基礎(chǔ)上,提出了IBSA 算法。
IBSA 算法的計算步驟:首先,當(dāng)鳥遷徙到目的地后,對鳥群的適應(yīng)度進(jìn)行排序,并將前4 個個體設(shè)定為生產(chǎn)者,最后的3 個個體設(shè)定為乞討者,剩下的個體隨機(jī)選為生產(chǎn)者或乞討者。 這樣既保證適應(yīng)度較好的個體被選為生產(chǎn)者,又保證鳥群的多樣性。
改進(jìn)后的生產(chǎn)者和乞討者的位置更新公式分別為
利用IBSA-ELM 模型對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測的具體步驟: ①確定訓(xùn)練樣本和測試樣本的數(shù)量; ②將輸入的光伏發(fā)電系統(tǒng)輸出功率數(shù)據(jù)進(jìn)行歸一化處理; ③將鳥群算法的參數(shù)初始化,包括最大迭代次數(shù)M,種群數(shù)量N,遷徙頻率FQ 等;④將鳥群初始化,并計算適應(yīng)度,確定局部最優(yōu)個體和全局最優(yōu)個體; ⑤開始迭代,對ELM 模型的輸入層權(quán)值和隱含層閾值進(jìn)行尋優(yōu);⑥迭代終止,并得到ELM 模型的最優(yōu)參數(shù);⑦采用訓(xùn)練好的模型對光伏發(fā)電系統(tǒng)輸出功率進(jìn)行預(yù)測;⑧采用評價指標(biāo)對ELM 模型的預(yù)測結(jié)果進(jìn)行評估。
為了測試IBSA 算法的搜索能力, 本文采用測試函數(shù)對IBSA 算法的收斂性能進(jìn)行測試,并將測試結(jié)果與傳統(tǒng)BSA 算法進(jìn)行比較。 IBSA 算法和BSA 算法的基本參數(shù): 鳥群的遷徙頻率FQ為5;最大迭代次數(shù)M 為500;種群數(shù)量N 為20;學(xué)習(xí)系數(shù)e1,e2均為1.5。
本文采用3 個測試函數(shù)對BSA 算法和IBSA算法進(jìn)行測試,測試次數(shù)均為10 次,測試維數(shù)均為50。 這3 個測試函數(shù)的表達(dá)式分別為
式中:g1~g3均為測試函數(shù)的函數(shù)值;xi為測試函數(shù)的自變量。
g1~g3的 取 值 分 別 為[-100,100],[-10,10],[-5.12,5.12],這3 個測試函數(shù)的最優(yōu)值均為0[18]。本文利用上述3 個測試函數(shù)分別對BSA 算法和IBSA 算法進(jìn)行測試, 得到的測試結(jié)果如表1 所示。
表1 測試結(jié)果Table 1 Test results
由表1 可知, 利用函數(shù)g1進(jìn)行測試時,IBSA算法收斂到了全局的最優(yōu)解,但BSA 算法沒有收斂到全局的最優(yōu)值;利用函數(shù)g2進(jìn)行測試時,BSA算法和IBSA 算法均沒有收斂到全局的最優(yōu)值,但I(xiàn)BSA 的收斂精度較高; 利用函數(shù)g3進(jìn)行測試時,BSA 算法和IBSA 算法均收斂到了全局的最優(yōu)值。 綜合比較發(fā)現(xiàn),IBSA 算法的收斂精度高于BSA 算法。
在影響光伏發(fā)電系統(tǒng)輸出功率的因素中,光照強(qiáng)度的影響最大, 多云天氣又直接影響了光照強(qiáng)度。本文的實驗數(shù)據(jù)來自澳大利亞的DKA 太陽能中心(Desert Knowledge Australia Solar Center,DKASC)。DKASC 位于澳大利亞中部,是一個商業(yè)化太陽能技術(shù)示范基地。 本文選取2017 年8 月8日(晴朗天氣)和10 月7 日(多云天氣)9:00-16:00 的測量數(shù)據(jù)進(jìn)行分析。
圖1 為測試日, 光伏發(fā)電系統(tǒng)輸出功率和光照強(qiáng)度隨時間的變化情況。
由圖1 可知, 光照強(qiáng)度與光伏發(fā)電系統(tǒng)輸出功率存在很大的相關(guān)性, 光照強(qiáng)度和光伏發(fā)電系統(tǒng)輸出功率的變化趨勢基本一致, 均呈現(xiàn)出先增大后減小的變化趨勢。由圖1 還可看出:晴天天氣條件下, 光照強(qiáng)度曲線和光伏發(fā)電系統(tǒng)輸出功率曲線波動幅度較?。欢嘣铺鞖鈼l件下,光照強(qiáng)度曲線和光伏發(fā)電系統(tǒng)輸出功率曲線波動幅度均較大, 這說明天氣狀況對光伏發(fā)電系統(tǒng)輸出功率影響較大。
圖1 測試日,光伏發(fā)電系統(tǒng)輸出功率和光照強(qiáng)度隨時間的變化情況Fig.1 Changes of output power and radiation intensity of photovoltaic power generation system with time on test day
本文選用2017 年8 月8 日-12 日 (晴天天氣)和10 月3 日-7 日(多云天氣)9:00-16:00 的測量數(shù)據(jù)作為樣本數(shù)據(jù), 以分析不同模型模擬結(jié)果的準(zhǔn)確度。 其中,2017 年8 月8 日-11 日的測量數(shù)據(jù)和10 月3 日-6 日的測量數(shù)據(jù)作為預(yù)測模型的訓(xùn)練樣本,8 月12 日和10 月6 日的測量數(shù)據(jù)作為預(yù)測模型的測試樣本。
本文分別建立了BSA-ELM 模型、IBSA-ELM模型和SVM 模型,并利用這3 種模型對兩種天氣條件下的輸出功率進(jìn)行預(yù)測。將環(huán)境相對濕度、環(huán)境溫度和光照強(qiáng)度作為預(yù)測模型的輸入量, 將光伏發(fā)電系統(tǒng)輸出功率作為預(yù)測模型的輸出量。
本文采用均方根誤差 (RMSE) 和決定系數(shù)(R2)作為評價指標(biāo),對各模型的預(yù)測結(jié)果進(jìn)行評估[19]~[23]。
RMSE 的計算式為
R2 的計算式為
決定系數(shù)R2 越接近于1,說明模型輸入和輸出的擬合效果越好。
2017 年8 月12 日(晴天天氣)和10 月6 日(多云天氣),光伏發(fā)電系統(tǒng)輸出功率的實際值,以及利用BSA-ELM 模型、IBSA-ELM 模型和SVM模型得到的光伏發(fā)電系統(tǒng)輸出功率的模擬值隨時間的變化情況如圖2 所示。
圖2 測試日,光伏發(fā)電系統(tǒng)輸出功率實際值,以及利用不同模型得到的光伏發(fā)電系統(tǒng)輸出功率模擬值隨時間的變化情況Fig.2 Changes of the actual values of the output power of the photovoltaic power generation system and the simulated values of the output power of the photovoltaic power generation system obtained with different models over time on the test day
由圖2 可知, 晴天條件下, 利用SVM 模型、BSA-ELM 模型和IBSA-ELM 模型得到的光伏發(fā)電系統(tǒng)輸出功率模擬值均具有較高的擬合精度,這是由于晴天條件下, 光伏發(fā)電系統(tǒng)的輸出功率波動幅度較小。 多云條件下,9:00-10:00,SVM 模型和BSA-ELM 模型的擬合精度均較低,而IBSA-ELM 模型的擬合精度較高;10:00-16:00,SVM 模型、BSA-ELM 模型和IBSA-ELM 模型的擬合精度均較低。由圖2 還看出,晴天和多云條件下,與其他2 種模型的擬合精度相比,IBSA-ELM模型的擬合精度較高。
2017 年8 月12 日 和10 月6 日,BSA-ELM模型、IBSA-ELM 模型和SVM 模型模擬結(jié)果的相對誤差隨時間的變化情況如圖3 所示。
圖3 測試日,不同模型模擬結(jié)果的相對誤差隨時間的變化情況Fig.3 Changes in the relative errors of the simulation results of different models over time on the test day
由圖3 可知,晴天條件下,3 種模型模擬結(jié)果的相對誤差均在[-6%,6%]內(nèi)。 由圖3 還可看出,與晴天條件下各模型模擬結(jié)果的相對誤差相比,多云條件下,3 種模型模擬結(jié)果的相對誤差較大。此外,根據(jù)不同天氣條件下各模型模擬結(jié)果的相對誤差可知,IBSA-ELM 模型模擬結(jié)果的相對誤差小于其他兩種模型。
不同天氣條件下,SVM 模型、BSA-ELM 模型和IBSA-ELM 模型模擬結(jié)果的精度如表2 所示。表中:NRE為相對誤差在[5%,-5%]內(nèi)的個數(shù);PRE為相對誤差在[5%,-5%]內(nèi)的個數(shù)占相對誤差總個數(shù)的百分比。
表2 不同天氣條件下,3 種模型模擬結(jié)果的精度Table 2 The simulation results accuracy of the three models under different weather conditions
由表2 可知,晴天條件下,3 種模型預(yù)測結(jié)果的精度明顯優(yōu)于多云天氣。多云條件下,3 種模型模擬結(jié)果的RMSE 約為晴天條件下的3 倍,這說明多云天氣能夠增大3 種模型的預(yù)測誤差。此外,晴天條件下, 與SVM 模型和BSA-ELM 模型相比,IBSA-ELM 模型的RMSE 分別降低了3.42%,3.19%。多云條件下,與SVM 模型和BSA-ELM 模型相比,IBSA-ELM 模型的RMSE 分別降低了12.80%,1.24%,這表明IBSA-ELM 模型的預(yù)測誤差較低。
由表2 還可看出,晴天條件下,3 種模型模擬結(jié)果的R2 均在99%以上; 多云條件下,IBSAELM 模型的R2 為99.31%, 其他兩種模型的R2低于99%,這表明多云天氣使預(yù)測模型的擬合效果變差。 此外,不同天氣條件下,IBSA-ELM 模型的R2 大于BSA-ELM 和SVM 模型的R2,這說明IBSA-ELM 模型的擬合效果較好。 最后,晴天、多云條件下,IBSA-ELM 模型的相對誤差在[-5%,5%]內(nèi)的個數(shù)占相對誤差總個數(shù)的百分比分別為100%,41.17%, 并且均高于SVM 模型和BSAELM 模型,這表明IBSA-ELM 模型預(yù)測結(jié)果的穩(wěn)定性較高。
為了準(zhǔn)確地預(yù)測光伏發(fā)電系統(tǒng)的輸出功率,本文基于BSA 算法,提出了IBSA 算法,并在兩種天氣下,利用SVM 模型、BSA-ELM 模型和IBSAELM 模型對光伏發(fā)電系統(tǒng)的輸出功率進(jìn)行預(yù)測,得到如下結(jié)論。
①相比于BSA 算法,IBSA 算法的收斂精度更高,收斂速度更快。
②天氣因素對預(yù)測模型的預(yù)測效果影響較大。 多云條件下,SVM 模型、BSA-ELM 模型和IBSA-ELM 模型的RMSE 均約為晴天條件下的3倍。
③兩種天氣條件下, 相比于BSA-ELM 模型和SVM 模型,IBSA-ELM 模型的RMSE 較小,表明IBSA-ELM 模型的預(yù)測精度較高。 兩種天氣條件下,IBSA-ELM 模型的R2 均高于99%, 表明IBSA-ELM 模型的擬合效果較好。