呂俊杰,王欣
(湖南工業大學電氣與信息工程學院,湖南 株洲 412007)
風力發電系統是個多變量、強耦合的非線性系統,對系統進行控制時,通常需要了解系統的線性化模型。但當系統運行工況發生變化時,傳統的線性化模型系統的控制效果會降低,不能滿足實際運行的需要。因此,建立精確的風力發電非線性模型,對風電機組的控制及優化具有重要意義[1]。
風力發電系統常用的建模方法主要有:機理建模和神經網絡辨識兩種方法[2-4]。但風電發電系統模型十分復雜,且具有很強的非線性,很難通過機理建模的方法建立精確的模型,無法保證模型精度,導致模型誤差較大,從而控制效果不夠理想。近年來,國內外許多研究學者對風力發電系統的非線性模型辨識進行了深入研究。文獻[5]采用多模型LPV方法對風力發電機進行辨識,在不同工作點辨識多個局部線性模型,但在切換工作點是會出現較大的偏差,不能精確地進行全局辨識。文獻[6]采用支持向量回歸(SVR)算法對變槳距風力機模型進行在線自適應辨識,采用增量學習算法,保證了在線辨識過程中的魯棒性,最終辨識結果具有很強的精度和擬合能力。文獻[7]采用動態模糊神經網絡(D-FNN)對變槳距系統進行辨識,可以根據樣本的改變調整模糊神經網絡的結構,但算法難度大大增加。文獻[8]采用RBF神經網絡對風電機組的轉矩環和槳距環分別進行辨識,但RBF神經網絡結構簡單,泛化能力不理想,無法很好的辨識風電機組模型。
本文將采用ELM神經網絡對風電機組變槳距系統進行辨識,ELM模型的輸入為槳距角和風速,輸出為發電機的功率。仿真結果表明,該方法對變槳距非線性動態系統辨識中具有比較高的辨識精度。
變槳距風力機一般分為四個子系統:空氣動力系統、傳動系統、變槳距執行系統和發電機系統。當風速高于額定風速時,發電機的輸出功率也隨之增大,通過調節槳葉槳距角來減少發電機的輸出功率并使之穩定在額定功率左右。
在湍流風力的作用下,風輪不可能捕獲通過風輪掃面內的全部風能,存在風能利用系數CP:

式中,Pout為風輪吸收的機械能;Pin為風輪掃面內的全部風能;ρ為空氣密度;A為風輪掃面面積;v為風輪有效風速。
CP表示風輪從風能中吸收功率的能力,是葉尖速比λ和槳距角β的非線性函數,由文獻[9]可知,風能利用系數CP可近似用以下非線性函數表示:

其中,葉尖速比λ為槳葉尖部的線速度與風速之比:

R為風輪半徑,ω風力機轉速。
式(2)是對槳葉進行理想化分析近似得出,實際上風輪槳葉上的空氣動力學分析十分復雜,且非線性程度更為嚴重。因此,對于變槳距控制來說,主要研究的系統辨識模型輸入為槳距角和風速,輸出為發電機輸出功率。
不同覆膜時期向日葵長勢和產量測定結果表明,非生育期覆膜成熟期長勢和產量明顯好于常規播前覆膜。上年秋季覆膜株高、莖粗、花盤直徑、產量分別較常規播前覆膜提高21.3%,26.3%,35.8%,58.1%;早春覆膜分別比常規播前覆膜株高、莖粗、花盤直徑、產量提高11.3%,10.5%,33.3%,38.2%(表3,表4)。
極限學習機(extreme learning machine, ELM)是由Huang等人在2004年提出的,是一種新型單隱層前饋神經網絡的學習方法。在ELM中,輸入層與隱含層之間的連接權值和隱層節點的閾值能夠隨機產生,通過最小二乘法得到網絡的輸出層權值,整個運行過程不需要調整參數,只需設定隱含層神經元個數。與傳統神經網絡相比,ELM 既能保證網絡有較好的建模準確程度,又具有學習速度快、泛化能力好、精度高等優點[10]。

圖1 極限學習機網絡結構Fig.1 ELM network structure

式中:L為隱含層節點數,G(x)為給定的激活函數,可以選擇為“Sigmoid”,“Sine”或者“RBF”等。為第i個隱層節點與輸出節點的權重向量,bi是第i個隱層節點的偏置;為第i個隱層節點的輸出權重向量,N為樣本數。
上式同樣可用矩陣表示為:

式中:H為ELM隱含層的輸出矩陣;β為輸出權重矩陣;T為期望輸出矩陣。

對于模型從隱層至輸出層階段可視為線性關系,輸出權重β可由最小二乘法解得:

式中,H+表示隱含層的輸出矩陣H的Moore-Penose廣義逆。由此可得,極限學習機算法的實現步驟為[11]:
(2)隨機生成隱層神經元參數(wi,bi);
(3)計算隱層輸出矩陣H;
(4)計算輸出權重β。
ELM在訓練過程中只需調整隱含層節點數和確定激活函數,無需調整輸入權值和偏置,就可獲得一個全局的最優解,極大地提高了網絡的學習速度和泛化能力。與傳統的神經網絡相比,極限學習機訓練速度快,具有全局尋優和良好的泛化能力,避免了傳統神經網絡需要人工進行參數設定、訓練容易陷入局部最小及過擬合的問題。
ELM神經網絡算法的流程圖如圖2所示:

圖2 ELM建模流程圖Fig.2 ELM modeling flow chart
本研究采用Matlab/Simulink仿真分析工具建立2 MW風力發電系統變槳距控制仿真模型,機組主要參數如表1所示。對其進行變槳距控制仿真產生的數據作為變槳距系統辨識的依據。變槳距風力機辨識系統模型的輸入為槳距角和風速,輸出為發電機的功率,即訓練樣本集為{β,v,Pg}。設定基本風速為15 m/s,湍流強度為12%,選取1000組采樣數據,采樣頻率為20 Hz,其中800組數據作為訓練集,剩下200組數據作為測試集。
不同單位和量綱會對神經網絡學習造成影響,會導致在訓練過程中,數據較大的特征對結果的影響更大,為了消除這種影響,保證更快的學習速率及網絡神經元的非線性作用,應采用歸一化的方法對ELM神經網絡的樣本數據進行處理。按照歸一化公式(7)將樣本數據歸一化到[0,1]區間[12,13]。

在ELM算法中,ELM神經網絡結構為3層,輸入層包括2個變量:槳距角和風速,輸出層為1個變量,即發電機輸出功率。激活函數采用Sigmoid函數,輸入權重Wi和隱層節點偏置bi隨機初始化,不需要迭代調整,僅需設置隱層節點個數。隱層節點數在一定范圍內選取,ELM模型能保持穩定的泛化性能,考慮到隱含層節點的選擇對模型的性能有直接的影響,隱層節點過多會增加模型結構復雜性,過少會達不到模型的最佳精度。使用訓練集和測試集的測試驗證的方法以尋求測試誤差最小來確定最優的節點數。

表1 2MW風力發電機組主要參數Table 1 Main parameters of 2MW Wind Turbine
圖3為ELM隱含層節點數對預測模型均方根誤差的影響,采用均方根誤差(RMSE)對預測效果進行評價,可以看出測試誤差和訓練誤差隨著隱層節點數的增加而減少。根據均方根誤差選取最佳隱層節點數,通過分析和對比驗證,可以看出當節點數達到30左右,ELM模型有較好的辨識精度,因此選取極限學習機模型的隱含層節點數為30。

圖3 隱層節點數影響Fig.3 Effect of nodes in hidden layer

圖4 ELM模型的輸入輸出數據Fig.4 Input and output data of ELM model
2 MW變槳距風力機輸入輸出訓練數據如圖4所示,(a)~(c)分別是風速、槳距角和發電機功率曲線,作為ELM模型的輸入輸出。

圖5 ELM模型辨識的發電機功率Fig.5 Generator power based on ELM

圖6 預測誤差Fig.6 Predicitive error model identification
圖5和圖6是用測試集的200組數據運用ELM模型對變槳距系統進行辨識后與實際數據進行對比。可以看出ELM預測模型能夠準確、合理地辨識變槳距系統,具有較高的辨識精度,說明ELM神經網絡具有很好的辨識效果。
本研究通過采用ELM神經網絡對風電機組變槳距系統進行辨識研究,極限學習機克服了傳統神經網絡存在的局部最優、訓練速度慢、學習率選擇敏感等問題。仿真結果表明,ELM神經網絡可以很好地擬合變槳距系統,且具有較高的辨識精度。后面研究中應考慮對ELM算法進行改進,實現對變槳距系統進行在線辨識。