任瑞琪
(西安鐵路職業技術學院 牽引動力學院,陜西 西安 710026)
近年來,風力發電大規模發展,帶來的問題也隨之出現,風力發電的隨機性和波動性給其集成帶來了一定的限制。解決這一問題的方法之一是對風電場的輸出功率進行預測,有利于提高電力系統的穩定性[1-2]。
近年來,許多學者將更先進的BP神經網絡[3]、支持向量機[4]、極限學習機[5]等方法引入傳統的基于統計與學習方法的風電功率預測中。對于傳統的基于梯度學習的迭代學習方法帶來的過度訓練、泛化性能差以及易陷入局部最優的問題,Huang等[6]提出了一種基于單隱層前饋神經網絡的快速特殊學習方法(Single-Hidden Layer Feedforward Neural Networks,SLFNS)、極限學習機(Extreme Learning Machine,ELM)。ELM隨機選取隱含層神經元的輸入權重與偏置并采用簡單的矩陣運算得出輸出權重。由于通過正則化最小二乘算法調節輸出矩陣,因而具有更迅速的訓練速度與更優異的泛化性能。王焱等[7]提出了一種基于Bootstrap和OS-ELM的超短期風電功率預測方法,黃庭等[8]提出了一種基于小波—極限學習機的短期風電功率預測方法。Huang等[9]給出了一種ELM結合核學習方法的新型核極限學習機算法。核極限學習機(Kernel Extreme Learning Machine,KELM)是將ELM的隱含層節點映射取代為核函數映射,從而避免了初始權值與偏置對其精度的影響,并在結合ELM與核方法之后表現出訓練簡便與泛化性能好的優點,廣泛應用于分類與回歸領域。
近年來,許多優化算法被應用于核極限學習機的參數與輸入結構的優化,用以尋找最優的參數與輸入結構,提高了學習精度與預測效果。楊錫運等[10]提出了一種基于粒子群優化的核極限學習機模型的風電功率區間預測方法,李軍等[11]在風電功率預測中應用遺傳算法(GA)、微分演化(DE)、模擬退火(SA)3種算法優化的KELM方法。Dan[12]提出了一種描述生物物種在地理學分配上的優化算法,即具有良好的魯棒性與尋優速度的生物地理學優化算法(Biogeography-Based Optimization Algorithm,BBO)。Kong等[13]用混沌映射改進提升了蜂群算法(Bee Colony Algorithm,BCA)的性能。針對BBO算法易陷入局部最優的問題,Saremi等[14]提出了基于混沌映射理論的BBO優化算法,在Ma[15]的基礎上,針對KELM的優點,基于余弦遷移模型,本文提出了一種改進的BBO優化核極限學習機的(BBO-KELM-2)預測方法,對核極限學習機的輸入結構,核參數γ與正則化系數η進行優化后應用于不同地區的風電功率預測中,并與采用線性遷移模型的原始BBO-KELM-1等方法在同等條件下進行比較,已驗證該方法在風電功率預測方面的有效性。
在BBO算法中,每一個優化問題的候選解的所有特征組成的向量即棲息地稱為適應度指數向量(Suitability Index Vector,SIV),每一個棲息地中的物種即候選解的特征稱為適宜度指數變量(Suitability Index Variables,SIVs),棲息地與居住者(物種)相當于遺傳算法中的染色體與基因。棲息地適應度指數(Habitat Suitability Index,HSI)是衡量一個棲息地的適宜度的指標,高HSI值表示該棲息地的種群數目多[16]。
線性遷移模型描述物種數目與遷移概率的關系,棲息地中物種數目的Ch與遷入概率λh和遷出概率μh的線性關系數學模型由式(1—2)給出。
(1)
(2)
其中,I和E分別是遷入率函數的最大值和遷出率函數的最大值。
突變概率可通過式(3)計算。棲息地的突變概率mh與其物種數量概率Ph成反比,即:
(3)
其中,Ph為棲息地中物種數量為Ch時所對應的概率,Pmax為Ph的最大值,M為用戶定義的突變率最大值。
Ma[16]通過對實例進行研究,結果選出的余弦遷移概率模型為更符合自然界生態系統中復雜規律的物種遷移模型。因此,本文在BBO算法中引入余弦遷移模型。余弦遷移模型對應的遷入率λk與遷出率μk分別為:
(4)
(5)
BBO算法在運行時,容易陷入局部極小,收斂速度也會降低,因此引入混沌映射理論,具體操作為在進化到第g代時,進化過程中確定各棲息地的初始遷入概率的隨機值可通過式(6)所示的正弦混沌映射得到值C(g)來代替[17]。
(6)
包括輸入層、隱含層與輸出層3個分層的ELM是一種特殊的單隱層前饋神經網絡。對于N組訓練樣本數據集(xj,tj)∈Rn×Rm,當ELM的隱含層節點數為L,并且激勵函數為?時:

(7)
其中,第i個隱含層節點和輸出層節點之間的權值向量為βi。ELM完全不同于傳統的迭代學習算法在于它在分析計算出輸出權值β的最小二乘解之前隨機選擇隱含層節點的輸入權值ω與偏置b,之后。降低訓練錯誤率并優化泛化能力是這些運算所能達到的目的。
根據ELM理論,將式(7)重新寫為緊湊的格式:
Hβ=T
(8)
對于一個訓練數據集,在給予激勵函數與隱含層節點數之后,以下3步為ELM的訓練過程。步驟1:隨機產生輸入權值ωi與偏置bi,1≤i≤N;步驟2:計算隱含層的輸出矩陣H;步驟3:計算輸出權值矩陣β=H+T;
其中,H+為隱含層輸出矩陣H的Moore-Penrose廣義逆。當HHT為非奇異時,H+=HT(HHT)-1。
為了消除“病態矩陣”的結果誤差,按照嶺回歸的思想,引入正則化系數η,則網絡輸出權值的最小二乘解為:
β=HT(HHT+ηI)-1T
(9)
因此,相應的ELM輸出函數為:
y(x)=h(x)β
(10)
在特征映射函數h(x)未知的情形下,在ELM中引入核函數,則可形成新的基于核的ELM(KELM)方法。
KELM方法中,需定義核矩陣QELM=HHT,其元素為:
QELM(i,j)=h(xi)·h(xj)=K(xi,xj)
(11)
那么借助式(5),網絡輸出可表示為:
(12)
式(12)中,本文選擇核函數K(xi,xj)的類型為徑向基核函數,即:
(13)
其中,γ為RBF核函數的核參數。
BBO-KELM方法主要優化網絡結構,Tikhonov正則化系數η與RBF核參數γ。在O-KELM方法實現過程中,網絡性能的好壞與適宜度評價函數成正比,即:
(14)
(15)
其中,ERMSE(y*,y)是均方根誤差,方法的預測輸出是y*(i),實際輸出是y(i)。
待優化的決策變量由實數變量與二進制變量組合而成,種群個體ah=[s1,…sn,γ,η],h=1,2,…m由核參數γ與正則化系數η兩個實數變量與網絡結構輸入的二級制變量構成,其中,模型的輸入維數為n,種群個體的數目由m表示,二進制變量sa∈{0,1},a=1,…,n決定模型的第j維輸入是應保留還是舍棄。

(16)
將真實值為二進制數的個體h的第l個決策變量變換為整數型變量,即:
xhl=round(ahl)
(17)
其中,函數round(.)是指將變量四舍五入到最近的整數。具體應用時,需要通過式(16)對核參數γ與正則化系數η進行轉化,這兩個參數的取值范圍γ∈[0,600],η∈[0,100]。二進制變量sa,a=1,…,n,則需要通過式(17)進行轉化。其次,需要將個體的決策變量轉化為真實值之后再計算個體的評價函數。
改進BBO-KELM算法的實現流程如圖1所示。

圖1 改進BBO-KELM算法實現流程
將提出的改進BBO-KELM算法即BBO-KELM-2算法應用于風電功率預測實驗中,并在同等條件下與采用線性遷移模型的原始BBO-KELM-1算法以及PSO-KELM算法、GA-KELM算法、DE-KELM算法、SA-KELM算法等進行比較。本文采用時間序列建模的方式進行風電功率預測,即:
y(t+D)=f(xt),?t=Δ…l
(19)
其中,D為預測步長,Δ表示嵌入維數,xt為歷史負荷值(yt-1,yt-2,…,yt-Δ)。
優化方法中,初始化選取核參數與正則化系數的取值范圍分別是γ∈[0,600]和η∈[0,100],預測性能評價指標主要采用3種,分別是平均絕對誤差(MAE),平均絕對百分比誤差(MAPE)和歸一化均方誤差(NMSE)。
(20)
(21)
(22)
其中,待預測時間序列各點的實際輸出為y(i),相應模型的預測輸出為y*(i),預測樣本點數為N,待預測時間序列的方差為σ2。
實驗選用加拿大Alberta省一個月內某風電場的采樣間隔為10 min的實測風電功率數據集,具體時間取原始數據的2010年12月5日—30日,對原始數據的連續3個樣本進行平均,得到采樣間隔為30 min的實驗數據集。訓練數據取該風電功率數據集的前1 000組,測試數據取剩下的200組,嵌入維數Δ=16。
實驗中,O-KELM方法的初始種群數為100,最大進化代數為250。GA中的交叉概率pc為0.4,變異概率pm為0.1。DE中的尺度因子λ位于區間[0.5,2]。SA的初始溫度為100,μ=0.95。BBO算法的Pmod=1,I和E均為1,突變概率mk=0.005,精英數量z為2。PSO算法中的慣性權重w=0.3,精英主義參數z為2,認知常數c1=1,群體相互作用參數c2=1,鄰里相互作用參數c3=1。在O-ELM方法中,設置隱含層節點數初始化的最大值為L=200。隱含層節點數目L、正則化系數η在不同O-ELM方法下的選擇情況以及核參數γ、正則化系數η在不同O-KELM方法下的優選結果如表1所示。不同方法的200組風電功率預測性能指標的結果對比如表2所示。

表1 O-KELM方法與O-ELM方法的參數選擇對比

表2 BBO-KELM方法與其他方法的性能指標對比
由表2可見,在同等條件下O-KELM方法的兩種性能指標MAPE和NMSE明顯優于O-ELM方法,且經過改進的BBO-KELM-2算法具有更好的預測結果。

圖2 BBO-KELM-2方法提前30 min風電功率預測的訓練誤差收斂曲線

圖3 O-KELM方法提前30 min風電功率預測的訓練誤差收斂曲線
BBO-KELM-2算法預測的200組風電功率與實際功率的結果對比如圖2所示,可以看出,BBO-KELM-2算法的預測性能較好,能較準確地預測實際風電功率。O-KELM 5種方法預測結果的訓練誤差收斂曲線如圖3所示,可見,所提出的BBO-KELM-2方法具有最小的訓練誤差與更快的收斂速度。