王澤華,劉思晗,賈 煜
1.遼寧工程技術(shù)大學(xué)電氣與控制工程學(xué)院,遼寧 葫蘆島 125105
2.遼寧工程技術(shù)大學(xué)電子與信息工程學(xué)院,遼寧 葫蘆島 125105
近年來,由于風(fēng)力發(fā)電的快速增長及其在電力系統(tǒng)中的高滲透率,對發(fā)電功率進(jìn)行預(yù)測對維護(hù)整個(gè)電網(wǎng)的穩(wěn)定起著不可或缺的作用。而風(fēng)力發(fā)電具有復(fù)雜的動態(tài)特性,難以進(jìn)行建模和預(yù)測,因此,從風(fēng)電功率的時(shí)間序列出發(fā),利用人工智能技術(shù),能夠準(zhǔn)確預(yù)測風(fēng)力發(fā)電功率,使風(fēng)電場獲得良好的性能。
Chen et al.[1]提出了一種用于多臺風(fēng)力發(fā)電機(jī)組功率預(yù)測的深度學(xué)習(xí)方法,網(wǎng)絡(luò)為長短期記憶網(wǎng)絡(luò)(LSTM)和卷積神經(jīng)網(wǎng)絡(luò)(CNN)組成的聯(lián)合模型,利用LSTM捕獲歷史功率序列的時(shí)間依賴性,CNN提取數(shù)據(jù)之間的空間特征,從而實(shí)現(xiàn)多臺風(fēng)力機(jī)的功率預(yù)測。Niayifar et al.[2]研究了在不同時(shí)間尺度上預(yù)測風(fēng)電場功率的時(shí)間序列模型,支持向量機(jī)回歸算法可以準(zhǔn)確預(yù)測未來10 min至1 h的風(fēng)力和風(fēng)速,多層感知器算法則可以準(zhǔn)確地預(yù)測未來4 h內(nèi)每小時(shí)間隔下的功率。Ti et al.[3]在大量CFD模擬數(shù)據(jù)的驅(qū)動下,驗(yàn)證了基于反向傳播算法的人工神經(jīng)網(wǎng)絡(luò)(ANN)技術(shù)能夠準(zhǔn)確地預(yù)測風(fēng)力發(fā)電場的功率。Bigdeli et al.[4]研究了基于不同優(yōu)化方法訓(xùn)練的神經(jīng)網(wǎng)絡(luò)混合預(yù)測模型對加拿大阿爾伯塔省風(fēng)電時(shí)間序列的預(yù)測。Amjady et al.[5]采用改進(jìn)的混合神經(jīng)網(wǎng)絡(luò)和增強(qiáng)的粒子群優(yōu)化算法組合進(jìn)行風(fēng)電功率預(yù)測。Liu et al.[6]將小波變換支持向量機(jī)與統(tǒng)計(jì)特征分析相結(jié)合用于風(fēng)電短期預(yù)測。Khalid et al.[7]提出了一種利用數(shù)值天氣預(yù)報(bào)和多個(gè)觀測點(diǎn)的信息相結(jié)合來改進(jìn)給定風(fēng)力機(jī)短期風(fēng)力預(yù)報(bào)的方法。An et al.[8]提出了一種基于小波變換、混沌時(shí)間序列和GM(1,1)方法的風(fēng)電場功率預(yù)測模型。李遠(yuǎn)征[9]提出了一種基于分時(shí)門控循環(huán)單元(time division-gated recurrent unit,TD-GRU)網(wǎng)絡(luò)的超短期風(fēng)電功率預(yù)測方法,解決了GRU網(wǎng)絡(luò)模型在功率突變時(shí)刻預(yù)測結(jié)果不準(zhǔn)確的問題,適合于處理風(fēng)電功率這種時(shí)序性、波動性極強(qiáng)的非線性預(yù)測問題。李相俊 等[10]的研究表明:與傳統(tǒng)時(shí)序預(yù)測方法相比,基于長短期記憶神經(jīng)網(wǎng)絡(luò)的風(fēng)力發(fā)電功率預(yù)測結(jié)果在各項(xiàng)指標(biāo)中誤差更小。
利用智能算法對機(jī)器學(xué)習(xí)參數(shù)進(jìn)行尋優(yōu),進(jìn)而進(jìn)行預(yù)測試驗(yàn)是風(fēng)力發(fā)電功率預(yù)測的重要手段。然而,傳統(tǒng)智能算法存在著算法搜索能力變化過快、容易陷入局部最優(yōu)解等特點(diǎn),針對這一現(xiàn)象,本文采用了動態(tài)收斂因子對傳統(tǒng)灰狼算法進(jìn)行改進(jìn),對卷積神經(jīng)網(wǎng)絡(luò)的超參數(shù)進(jìn)行優(yōu)化,并結(jié)合內(nèi)蒙古某風(fēng)力發(fā)電廠2021年的數(shù)據(jù)進(jìn)行預(yù)測試驗(yàn),以驗(yàn)證模型的優(yōu)越性。
1.1.1 傳統(tǒng)灰狼算法
傳統(tǒng)灰狼算法(grey wolf optimizer,GWO)是通過模擬灰狼個(gè)體間的捕食、競爭和合作等自然現(xiàn)象來尋找優(yōu)化問題的最優(yōu)解。
GWO算法的實(shí)現(xiàn)步驟描述為:確定參數(shù)的取值范圍,在該區(qū)間范圍內(nèi)對狼群隨機(jī)初始化;計(jì)算所有狼的適應(yīng)度函數(shù)值,并對其進(jìn)行排名;根據(jù)計(jì)算得到的適應(yīng)度函數(shù)值排序,選擇α、β、δ狼;進(jìn)行狼的位置更新;更新參數(shù)a,A,C;判斷結(jié)果是否滿足適應(yīng)度函數(shù)需求,若不能,則返回到第2步重新處理;輸出當(dāng)前的α狼的位置,作為最優(yōu)解[11]。
1.1.2 動態(tài)收斂因子改進(jìn)
據(jù)上述描述,可發(fā)現(xiàn)GWO算法存在著全局搜索和局部最優(yōu)收斂速度之間的矛盾,在GWO中,收斂因子(a)呈線性下降趨勢,然而,任何優(yōu)秀的優(yōu)化算法的收斂過程都不可能是線性的,GWO也不例外。因此,選擇了一種指數(shù)型決策算法來控制收斂速度,其函數(shù)表達(dá)式為:
(1)
式中:t代表迭代次數(shù),max表示最大迭代數(shù)。
灰狼算法對收斂因子做出改進(jìn)前后的對比如圖1所示。通過對收斂系數(shù)的修正,改變了該方法的降維速率和降維方式。改進(jìn)后的收斂因子(a)的曲線呈現(xiàn)出上凸的形狀,并且在迭代的前半部分,其下降速度逐漸變慢,這說明了該算法可以更輕易地找到備選解,擁有更強(qiáng)的全局搜索能力;而在迭代的后半段,下降速度逐漸加快,這表明該算法具有更強(qiáng)的局部尋優(yōu)能力,可以提高算法的收斂性能。因此,這種收斂因子實(shí)現(xiàn)了全局搜索和局部最優(yōu)收斂速度的平衡,進(jìn)一步提高了算法的全局尋優(yōu)能力,更符合實(shí)際的收斂過程。本文將利用動態(tài)收斂因子改進(jìn)的灰狼算法稱為IGWO(improved grey wolf optimizer)算法。

圖1 收斂因子對比圖
卷積神經(jīng)網(wǎng)絡(luò)(CNN)基本結(jié)構(gòu)包括輸入層、卷積層、池化層、全連接層以及輸出層。通過局部連接、權(quán)值共享和池化操作3個(gè)核心思想來減少參數(shù),加快學(xué)習(xí)速率,減少算法復(fù)雜度。近年來,在風(fēng)力發(fā)電預(yù)測中取得了長足進(jìn)展。
1.2.1 卷積層
卷積層是CNN中最重要的部分,其輸入與輸出通過權(quán)值和偏置進(jìn)行連接。卷積層其輸入輸出對應(yīng)關(guān)系為:
(2)

1.2.2 池化層
池化層位于卷積層后方,主要包括最大池化和平均池化。平均池化為對鄰域內(nèi)特征點(diǎn)求取平均值,最大池化為對鄰域內(nèi)特征點(diǎn)求取最大值,如圖2所示。最大池化和平均池化函數(shù)可以表現(xiàn)為:

圖2 最大池和平均池圖
(3)

1.2.3 全連接層
全連接層處于卷積層和池化層后方,其作用為將卷積層和池化層的特征進(jìn)行綜合。全連接層每個(gè)神經(jīng)元與前一層所有神經(jīng)元進(jìn)行全連接。最后一層的全連接層連接所有的特征后,將輸出值發(fā)送給softmax層進(jìn)行分類。
CNN由于對復(fù)雜數(shù)據(jù)的處理能力與學(xué)習(xí)能力常常被應(yīng)用于風(fēng)力發(fā)電預(yù)測,但在面對具體實(shí)際問題選擇CNN網(wǎng)絡(luò)結(jié)構(gòu)時(shí),由于CNN網(wǎng)絡(luò)參數(shù)選擇組合眾多,若采用人工調(diào)參的方式,不一定能找到最合適的CNN網(wǎng)絡(luò)結(jié)構(gòu)。而IGWO全局搜索快,優(yōu)化性能強(qiáng),思想簡單,易于實(shí)現(xiàn)。因此本文針對風(fēng)力發(fā)電預(yù)測提出了IGWO優(yōu)化CNN網(wǎng)絡(luò)結(jié)構(gòu)的IGWO-CNN方法。其具體流程如圖3所示。

圖3 IGWO-CNN優(yōu)化流程
本文以內(nèi)蒙古某風(fēng)力發(fā)電廠2021年采集的數(shù)據(jù)為例,共計(jì)32 962組風(fēng)電數(shù)據(jù),包含了層高、風(fēng)速、風(fēng)向、濕度、溫度、氣壓、空氣密度等自變量數(shù)據(jù)以及風(fēng)機(jī)發(fā)電功率因變量數(shù)據(jù),本文通過十折交叉方法進(jìn)行測試集與測試集的劃分及訓(xùn)練,并采用平均絕對誤差、平均相對誤差、決定系數(shù)(R2)作為本文預(yù)測精度的評價(jià)指標(biāo),本文預(yù)測數(shù)據(jù)如表1所示。

表1 風(fēng)力發(fā)電廠實(shí)測數(shù)據(jù)
利用IGWO為本文CNN選擇參數(shù),共構(gòu)建了3個(gè)CNN模型,其中CNN代表人為隨機(jī)選擇的參數(shù),GWO-CNN 代表利用GWO選擇的參數(shù),IGWO-CNN代表利用IGWO選擇的參數(shù)。表2為3種方法的試驗(yàn)數(shù)據(jù)(C1、C2、C3、C4為卷積層每層卷積核數(shù)量,F1、F2、F3、F4為全連接層每層神經(jīng)元數(shù)),表3為3種方法下的預(yù)測誤差。

表2 不同模型CNN參數(shù)

表3 不同算法下的預(yù)測誤差
本文提出的IGWO-CNN在風(fēng)力發(fā)電功率預(yù)測中,3個(gè)預(yù)測精度評價(jià)指標(biāo)為別為0.216 2、0.009 9、0.999 5,均優(yōu)于GWO-CNN及傳統(tǒng)CNN算法。可見,本文IGWO-CNN預(yù)測模型相對于CNN及GWO-CNN模型在風(fēng)力發(fā)電預(yù)測中具有更高的預(yù)測精度。
為更加直觀地對預(yù)測效果進(jìn)行觀察,繪制3種算法的預(yù)測曲線(見圖4)。

圖4 不同算法預(yù)測效果圖
可以看出,利用IGWO-CNN對風(fēng)場發(fā)電功率進(jìn)行預(yù)測時(shí),真實(shí)值與預(yù)測值更為接近,預(yù)測誤差最小。由此可以得出,本文所構(gòu)建的IGWO-CNN在風(fēng)場發(fā)電功率中具有優(yōu)越性。
1)針對傳統(tǒng)灰狼算法全局搜索速度過快,從而導(dǎo)致容易陷入局部最優(yōu)解的問題,引入了動態(tài)收斂因子對灰狼算法進(jìn)行改進(jìn),通過改變收斂因子的降維速率和降維方式,使得改進(jìn)灰狼算法在迭代的前半部分具有更強(qiáng)的全局搜索能力,而在迭代的后半段,具有更強(qiáng)的局部尋優(yōu)能力,有效提高了算法的收斂性能。
2)利用改進(jìn)的灰狼算法對卷積神經(jīng)網(wǎng)絡(luò)的超參數(shù)(卷積層每層卷積核數(shù)量,及全連接層每層神經(jīng)元數(shù))進(jìn)行尋優(yōu),并與GWO-CNN及CNN預(yù)測模型進(jìn)行對比。結(jié)果表明,利用改進(jìn)的灰狼算法結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(IGWO-CNN)對風(fēng)力發(fā)電功率預(yù)測效果最佳。