文 | 周書鋒 方郁鋒
基于BP神經網絡和iSIGHT平臺的風電機組設計年發電量預測
文 | 周書鋒 方郁鋒
隨著中國風電產業多年的快速發展,風電技術人員已經積累了大量的設計、測試和運行數據。在大數據時代背景下,如何對這些數據進行分析和挖掘,總結內在規律,開發外延應用,對今后的風電技術發展有著重要意義。
人工神經網絡簡稱神經網絡,是一種非線性統計性數據建模工具,常用來對輸入和輸出間復雜的關系進行建模。神經網絡可以通過有監督的學習,觀察有限數量的包含輸入和預期輸出的訓練樣本,不斷調整網絡內部節點之間的閾值和權重,最終形成對未知樣本的預測能力。
本文選取與風電機組年發電量密切相關的機組參數,包括額定功率、風輪直徑、葉尖線速度、設計葉尖速比、最大風能利用系數、切出風速、空氣密度、年平均風速共8個變量作為網絡的輸入,結合相應的Bladed模型計算的年發電量作為網絡的輸出,形成網絡的訓練樣本,并使用iSIGHT平臺的優化算法,完成了風電機組設計年發電量預測模型。只要給出任意輸入參數,即使沒有任何相關的機組模型,也能夠預測該機型的設計年發電量,或者通過期望的設計年發電量來反推機組參數。
一、BP神經網絡和Matalab實現
BP神經網絡是一種按誤差逆傳播算法訓練的多層前饋神經網絡,是目前發展最成熟、應用最廣泛的神經網絡類型之一。該網絡的特點是能夠學習和存貯大量的輸入輸出模式映射關系,而無需事先描述這種映射關系的數學模型。通過反向傳播來不斷調整網絡的權值和閾值,使得網絡的誤差平方和最小,從而實現輸入和輸出的非線性映射。BP神經網絡模型拓撲結構一般包括輸入層、隱層和輸出層。如圖1所示。

圖1 BP神經網絡基本結構
隨著神經網絡技術的發展,出現大量相關的建模仿真軟件和仿真語言。本文所述的預測方法,使用MATLAB內置的神經網絡工具箱實現。主要工作內容為網絡輸入輸出參數的選擇、網絡結構特別是隱層數和隱層節點數的確定、網絡性能的評價等方面。
二、輸入和輸出參數
風電機組的發電量與諸多因素有關,除了風電機組本身的設計規格之外,還與實際安裝的風電場風能資源情況、機組故障率、控制策略等因素相關。由于本文的預測目標為設計年發電量,并考慮到訓練和預測數據生成的效率,僅使用了靜態功率曲線、標準瑞利分布計算的年發電量,應用到實際項目時,再附加上相應的折減系數。選擇的網絡輸入參數,更多地反映了風電機組關鍵指標和風電葉片氣動特性。
網絡的輸入參數,以及這些參數與發電量的關系簡述如下:
(一)額定功率Pr
額定功率是風電機組最基本的參數之一。額定功率的增大,可以提升單臺風電機組的年發電量。
(二)風輪直徑RotorD
風輪直徑同樣是風電機組最基本的參數之一。風輪直徑的增大,可以提升風電機組捕獲風能的能力,特別是在低風速地區,效果更加明顯。
(三)葉尖線速度Vtip
葉尖線速度在這里特指風電機組在額定轉速下的葉尖線速度。適當地提高葉尖線速度,也就是提高額定轉速,可以提升發電量。但由于葉尖噪音和葉片前緣風沙磨損的問題,葉尖線速度往往設定在75m/s-85m/s之間。
(四)葉尖速比TSR
葉尖速比在這里特指變速變槳風電機組在額定風速下,追蹤最優Cp時的設計葉尖速比。在一定范圍內,減小設計葉尖速比,會增大發電量,但同時會增大載荷和葉片成本。設計葉尖速比的確定,是綜合考慮后的結果。
(五)最大風能利用系數Cpmax
風能利用系數是指風電機組將風能轉化為電能的轉換效率,最大風能利用系數是考慮不同葉尖速比和槳距角之后的最大值。最大風能利用系數的增大,風電機組的發電量也會相應增大。
(六)切出風速Vout
一般來說,風電機組的切出風速一般在20m/s-25m/ s之間。大風輪直徑的風電機組,出于載荷的考慮,會將切出風速限制在較小的數值,這會造成一部分發電量的損失。但這些機組一般安裝在低風速地區,切出風速區間所占的比例并不是很大,反映到發電量的損失一般可以接受。
(七)空氣密度AirD
由于風能是空氣流動產生的動能,動能與運動物體的質量有關,故空氣密度也影響著發電量大小。較高的空氣密度,會帶來較大的發電量。
(八)年平均風速Vave
風速的變化,跟季節因素相關較大,所以年是較好的平均風速統計周期。年平均風速也可以用來反映風電機組整個壽命周期的平均風速。年平均風速較高時,會帶來較大的發電量。
這里描述的8個與設計年發電量相關的參數,前6個是風電機組的本身屬性,而后2個即空氣密度、年平均風速是外部環境條件。
三、樣本生成和歸一化處理
本文利用現有的37個風電機組Bladed模型,額定功率涵蓋1.5 MW-5.0MW,風輪直徑涵蓋88m-130m,計算了空氣密度0.85 kg/m3-1.225kg/m3,年平均風速5m/ s-10m/s的機組年發電量,共形成了15873個訓練樣本。
為了測試網絡的預測性能,特別是內插和外推性能,額外給出了7個機型的77個樣本數據作為預測樣本。這些樣本的額定功率和風輪直徑與訓練樣本有較大差異。
為了避免數據間數量級的差別影響結果,對訓練數據進行了歸一化處理,進行預測年發電量時,進行反歸一化。
四、網絡結構
網絡結構分為三層,上文提到的8個風電機組參數作為輸入層,年發電量作為唯一的輸出層,輸入層和輸出層之間包含一個隱層,隱層節點數在3至14之間為宜。本文采用湊試法來確定隱層節點數,主要研究了5個至12個隱層節點數的預測情況,分別從預測精度、單調性、過擬合三個方面來確定網絡結構。
五、預測精度
表1羅列了各個隱層節點數網絡的預測精度,預測結果已經轉化為與期望結果的百分比。
“預測平均值”是對77個預測結果的平均值,代表著預測的平均水平,越接近100%,代表預測越準確。“預測標準差”是對77個預測結果的標準差,代表著預測的穩定性。若標準差較大,則意味著有些樣本預測得很準確,另外有些樣本預測的偏差很大。由于Matlab隨機給出網絡的初始值,會造成最終網絡性能差異,表中數值為5000個網絡的平均值。
由表2可知,隨著隱層節點數的增加,預測平均值有著接近100%的趨勢,在隱層節點數7時-12時就逐漸穩定,預測標準差則逐漸下降,在隱層節點數11時處于較低點。從預測精度來看,隱層節點數11是較好的平衡點。
六、單調性
單調性是指最終網絡應能表現出輸入參數與輸出參數的單調關系。以額定功率為例,在其他輸入參數都保持恒定時,額定功率單調上升時,輸出的年發電量應呈現單調上升趨勢。表2列出了各個輸入參數與輸出參數應該呈現的單調關系。

表1 不同隱層節點數的預測精度
表2中的“↗”代表遞增,“↘”代表遞減。表中除了葉尖速比TSR應滿足“遞增-遞減”關系之外,其他參數都符合“遞增-遞增”的單調關系。最好的情況是,網絡能符合表2中所有的單調關系。但實際上訓練后的大多數網絡,是不能完全符合這些單調關系的。
圖2繪制了編號為“net_Hid8_num74_00001111_ sum4”網絡的單調性情況。編號名稱中 “Hid8”表示這個網絡有8個隱層節點,“num74”表生成的先后序列是第74個,“00001111_sum4”表示只有最大風能利用系數 Cpmax、切出風速 Vout、空氣密度 AirD、年平均風速Vave這后面共4個參數才滿足單調性關系。
由于Matlab隨機給出了網絡的初值,造成最終網絡的不同單調表現,故可通過大量生成網絡,加以分析和挑選。表3使用Matlab隨機生成網絡,每個隱層節點數的網絡分別生成5000個,統計每個網絡符合單調關系個數的總和,再按照隱層節點數分配到表中相應位置。
由表3可知,隨著隱層節點數的增加,符合8、7、6、5個等較多單調關系的網絡呈現遞減趨勢,符合單調預期的網絡數量越來越少。在隱層節點數為5個時,5000個隨機生成的網絡中,還有36個網絡全部滿足單調關系,但到了隱層節點數10時-12時,只剩0個-2個了。
需要注意的是,在表3中隱層節點數11時,滿足全部單調關系的網絡個數為0,并不說明這樣的網絡結構就無法生成全部滿足單調關系的網絡,而只是因為比例所占極小,5000個網絡的基數還遠遠不夠。

表2 輸入和輸出參數應符合的單調關系

圖2 網絡net_Hid8_num74_00001111_sum4單調性情況
七、過擬合
進一步研究發現,除了網絡的單調關系與隱層節點數有關,單調曲線的光滑程度與隱層節點數也有關系。
圖3給出了編號為“net_Hid5_num672_11111111_ sum8”網絡的單調表現,該網絡為5個隱層節點數,所有的參數均滿足表2的單調性關系,且曲線光滑均勻。
圖4給出了編號為“net_Hid12_num1491_11111111_ sum8”的單調表現,該網絡為12個隱層節點數,所有的參數也均滿足表2的單調性關系,但曲線不太光滑,有較多的拐點變化。這很可能是網絡在訓練中,過分追求與樣本的逼近程度,造成網絡的過擬合。過擬合也會影響網絡的泛化能力。
值得注意的是,本文并沒有從理論上推導,這些輸入參數與發電量的單調關系是否存在拐點。只是從過擬合的角度,期望最后的曲線應該是均勻變化的。
現將隱層節點數與網絡性能的基本關系總結如下:隱層節點數較少時,滿足單調關系的網絡較多,曲線較為光滑,但預測精度總體較差;隱層節點數較多時,滿足單調關系的網絡較少,曲線也不太光滑,容易過擬合,但預測精度總體較好。
要想從預測精度、單調性、過擬合三者達到最佳平衡,隱層節點數11是較好的選擇。但實際上在隱層節點數11時,5000個隨機生成的網絡,還找不到一個全部滿足單調關系的網絡,可見比例之小。即使找到了滿足單調關系的網絡,在較大的隱層節點數的前提下,期望單調曲線光滑,不出現凹凸變化,也是一件小概率事件。只使用大量隨機生成,并加以篩選的方法,很難得到理想性能的網絡。

表3 不同隱層節點數網絡的單調關系統計

圖3 網絡net_Hid5_num672_11111111_sum8單調性情況
八、iSIGHT平臺優化網絡初始權值和閾值
實踐證明,使用優化算法和BP神經網絡結合的方法,可以較好地獲得預期性能的網絡。iSIGHT平臺內置多種成熟的優化算法,提供多種滿足約束條件和目標函數的設計方案,并支持多種CAD和CAE商用軟件的接口,可以直接調用Matlab程序,是優化網絡性能的較好途徑。具體方法如下:
(一)確定iSIGHT輸入變量。該網絡結構為8個輸入參數、11個隱層節點數、1個輸出參數,包含99個權值、12個閾值共111個初始變量,作為iSIGHT的輸入變量。
(二)確定iSIGHT輸出變量。該網絡的評價指標分三個方面,預測精度方面有預測平均值、預測標準差、預測極差,單調性方面為單調關系個數,過擬合方面將統計單調曲線無拐點的個數。綜上iSIGHT共包含了5個輸出變量。
(三)確定iSIGHT的約束和目標。單調關系個數要求必須全部滿足,即單調關系個數限制為8。預測平均值目標為1,即希望預測平均值盡可能接近1。預測標準差和預測極差最小化,即希望預測的穩定性要非常好。無拐點數最大化,即希望單調曲線盡可能均勻變化。
(四)確定iSIGHT的優化算法。綜合考慮優化問題的多目標性、不連續性、非線性的特征,加上單次計算時間不是很長,故采用了AMGA優化算法,進行了5000次的迭代。圖5是優化完成后的網絡單調性情況。
由圖5可見,優化后的網絡曲線全部滿足了單調關系,且變化光滑均勻,基本無明顯的拐點變化。由表4可知該優化網絡的預測平均值為100.8%,預測標準差為0.0143,預測極差在9.7% 以內,可見最終的優化網絡,較好滿足了單調性、過擬合、預測精度三方面的要求。

圖4 網絡net_Hid12_num1491_11111111_sum8單調性情況
如上所述,最終網絡已經較好地完成了風電機組發電量的預測功能。但實際工作中,有時并不需要發電量的預測,而是去尋求什么樣的機型、什么樣的風能資源條件,能夠滿足某種發電量的心理預期。這便是現有預測的逆問題。為了解決這個問題,當然可以把樣本數據的輸入輸出做一下置換,再進行訓練、篩選、評價和優化。這無疑需要巨大和重復的工作量,而且在實際問題提出前,哪些參數為輸入,哪些參數為輸出,還非常不確定。為了解決這個問題,同樣可以用iSIGHT進行反推和優化。
以開發一款3.0MW機型為例,目標風電場空氣密度1.0kg/m3,年平均風速6.5m/s,在發電折減系數75%時,期望達到的全年可利用小時數為2200h,求最小的風輪直徑。假定最大風能利用系數0.48、葉尖速比10.5、切出風速20m/s、設計葉尖線速度80m/s,iSIGHT給出的風輪直徑為128.4m。
這其實是一個已知輸入輸出參數之間映射關系,以風輪直徑為目標解的問題,相當于解方程。實際上iSIGHT可以利用這個映射模型,設置更多的變量、約束和目標,得到更多更有價值的應用。

圖5 進行iSIGHT優化后的網絡單調性情況

表4 單一網絡與優化網絡預測精度對比
本文依照神經網絡的基本原理,以風電機組與發電量相關參數為輸入,建立BP神經網絡模型,并考慮了單調性、過擬合、預測精度三方面,使用iSIGHT平臺對現有的網絡進行了優化。結果表明,該方法對風電機組設計年發電量有較好的預測性能。為了進一步提高預測模型的實用性,使用iSIGHT平臺完成了各參數的反推和優化。
本文提供的方法在風電葉片開發、目標風電場的風電機組選型、風電機組新品預研等方面有著重要的參考和指導價值。
(作者單位:浙江運達風電股份有限公司)