呂 輝, 陳國初
(上海電機學院 電氣學院,上海 201306)
對風電場風能資源進行評估是風電場建設前期的一項基礎性工作[1-2]。其中,對歷史測風數據資料進行概率分布研究是風能資源評估中的重點工作。目前,還沒有從成因和理論上給出某地風速概率分布的形式,但是,應用最多的方法是兩參數威布爾(Weibull)分布模型[3]。
對于兩參數Weibull分布模型,只要確定了形狀參數k和尺度參數c后,就可以計算體現風能資源特性最重要的4個特征指標,即年平均風速、年平均風能密度、年平均有效風能密度以及風能利用時間,故k和c的精度直接影響了特性指標的精度。通常,k和c參數確定的方法有最小二乘法[4]、矩估計法[5]、極大似然估計參數法[6]等;但是,這些方法有的簡單、易實現,卻精度差;有的精度高,卻難以實現。因此,迫切需要研究一種更為有效的計算方法。
本文針對雞群算法[7](Chicken Swarm Optimization, CSO)中,雞媽媽在陷入局部最優時,小雞也會陷入局部最優,且母雞和小雞缺少自我學習能力的問題,研究了一種改進的CSO算法,用于尋找k和c的最優值,以便能更精確地評估風能資源。最后,將改進的CSO算法應用于實際風電場的風能資源評估,并參照實測數據統計結果比較了利用改進的CSO算法與等能量密度法進行風能資源評估的精度。
CSO算法是由MENG等[8]于2014年提出的一種基于雞群搜索行為的隨機優化方法,它模擬了雞群等級制度和雞群行為。將整個雞群分為若干子群,每個子群都由1個公雞、若干母雞和小雞組成。不同的雞遵循不同的移動規律,在具體的等級制度下,不同的雞群之間存在競爭,因此,CSO算法是一種全局優化算法。
假設整個雞群中NR個公雞、NH個母雞、NC個小雞、NM個雞媽媽,個體位置xij(t)表示第i個體的j維在第t次迭代的值,則公雞對應的位置更新為[9]
xR_i,j(t+1)=xR_i,j(t)[(1+Randn(0,σ2)]
(1)

(2)
q∈[1,NR],q≠i
(3)
式中:Randn(0,σ2)為均值為0、標準差為σ2的一個高斯分布;ε為一個很小的常數;q為所有公雞中除去i外的任一個體;fR_i和fR_q分別為公雞i,q的適應度值。
母雞的位置更新為:
xH_i,j(t+1)=xH_i,j(t)+C1Rand·(xH_r1,j(t)-
xH_i,j(t))+C2Rand·(xr2,j(t)-
xH_i,j(t)),r1≠r2
(4)
C1=exp((fH_i-fH_r1)/(abs(fH_i)+ε))
(5)
C2=exp[(fr2-fH_i)]
(6)
式中:Rand為[0,1]中的隨機數;xH_r1,j(t)為該母雞所屬族群公雞的位置信息;xr2,j(t)為其他族群公雞的位置信息;C1和C2分別為母雞參考自身族群和其他族群搜索的權重;fH_i和fH_r1分別為母雞i和所屬族群公雞r1的適應度值;fr2為其他族群公雞r2的適應度值,r1≠r2。
由式(3)可見,母雞的位置更新由3部分構成:上一次迭代母雞所處的位置;與所屬族群公雞的位置關系;與其他族群公雞的位置關系。這模擬了自然界中母雞既跟隨自身族群搜索食物,又從其他族群偷取食物的機制。由式(5)和式(6)可知,C1>1>C2,故母雞的位置將更多地參考自身族群公雞所處位置。
小雞的位置更新為
xC_i,j(t+1)=xC_i,j(t)+F·
(xC_m,j(t)-xC_i,j(t))
(7)
式中:m為第i只小雞對應的母雞;F(F∈[0,2])為跟隨系數,表示小雞跟隨母雞尋找食物的緊密度。
1.2.1 增強小雞向公雞學習的能力 在CSO算法中,小雞只向雞媽媽學習,并沒有向自身所在群中的公雞學習,這就很容易導致當雞媽媽陷入局部最優時,小雞也因此陷入局部最優,從而導致整個雞群算法陷于局部最優,影響算法的精度。本文在小雞更新自己的位置時,不僅獲取雞媽媽的位置信息,還要獲得整個子群中公雞的位置。通過實驗仿真,在控制其他變量不變的情況下,改變學習因子C的值(C∈(0,1)),即每隔0.1改變一次,找出最為合適的C值。
1.2.2 增強母雞、小雞自我學習能力 在基本CSO算法中,母雞、小雞都沒有自我學習能力,這降低了算法的尋優能力,本文引進自我學習系數ω(與粒子群的慣性權值類似)。傳統的慣性權值的線性、非線性動態調整主要是在迭代初期,將慣性權值設為較大值,使其具有較強地探索能力,有利于全局搜索;而在迭代后期,將慣性權值設為較小值,使其進行更為精細的局部搜索,以便得到更精確的解。但這些方法的慣性權值調節方法太過單一,微粒均采用相同的慣性權值,忽略了微粒的獨特性,降低了種群的多樣性,遇到復雜函數(多峰、高維)時,很難跳出局部最優值。為此,本文使ω隨著各自的適應度值自適應調節。以極小值問題為例,自我學習系數設置如下[10-11]:
ω=

(8)
式中:ωmin和ωmax分別為最小、最大自我學習系數;fmean為平均適應度值;fmin為最小適應度值;fi為整個雞群每次迭代的適應度值。
因此,改進后的母雞位置更新為
xH_i,j(t+1)=ωxH_i,j(t)+C1Rand·
(xH_r1,j(t)-xH_i,j(t))+C2Rand·
(xr2,j(t)-xH_i,j(t))
(9)
改進后的小雞位置更新為
xC_i,j(t+1)=xC_i,j(t)+ωF·(xC_m,j(t)-
xC_i,j(t))+C(xr,j(t)-xC_i,j(t))
(10)
(1) 初始化雞群位置信息x,并定義相關參數NR,NH,NC,NM等;
(2) 計算雞群的適應度值fi,初始化個體當前最好位置pb和雞群全局最好位置gb,t=1;
(3) 若t%G=1或t=1(G為排序間隔長度),則對fi排序,建立雞群等級制度,將雞群分成數個子群,并確定母雞和小雞的對應關系;
(4) 利用式(1)、(9)和(10)分別更新公雞、母雞和小雞的位置,計算每個個體的適應度值;
(5) 更新雞群個體當前的最好位置和雞群全局的最好位置。
(6) 令t′=t+1,若滿足迭代停止條件,則停止迭代,輸出最優值;否則,轉到步驟(3)。
為了考察改進后CSO算法的性能,本文利用3個經典測試函數對其進行仿真實驗,并對結果加以分析。3個測試函數中,Schaffer和Rosenbrock函數為單模函數,用于考察算法的尋優精度和收斂速度;Griewank函數為多模函數,用于考察算法擺脫局部最優解和全局搜尋的能力。
(1) Schaffer函數
x1,x2∈[-10,10]
(2) Griewank函數
-600≤xi≤600
(3) Rosenbrock函數
x1,x2∈[-2.048,2.048]
上述3個測試函數的共同點是全局最小值為零,且很難找到全局最優值。Schaffer函數是二維函數,在(0,0)處取得最小值0;Griewank函數是非線性多模態函數,在(x1,x2,…,xn)=(0,0,…,0)處取得全局最小值0;Rosenbrock函數在二維情況下,在(1,1)可取得唯一全局最小值為零。
利用CSO算法和本文改進的CSO算法對測試函數進行仿真實驗,實驗所用軟件為Matlab R2014a,實驗參數設置如下:群體數量為100,最大迭代數為1 000,G=10,C=0.3,ωmax=1.5,ωmin=0.04;為得到客觀評價,結果均是在進行了100次獨立測試后取其均值后得到。表1所示為維數為2時,CSO算法和改進的CSO算法對測試函數的求解結果。由表可見,改進的CSO算法的尋優能力明顯好于CSO算法,這是由于改進的CSO算法中引進了C和ω;從搜索時間看,雖然改進的CSO算法比CSO算法稍微慢了一些,這是由于改進的CSO算法結構較CSO復雜,但從權衡看,改進的CSO算法用少量的時間換取了高精度,是可取并有意義的。
兩參數Weibull分布模型的分布函數為[12]

表1 維數為2時,CSO和改進的CSO算法對測試函數的求解結果

(11)
其概率密度函數為[13]
(12)
式中:v為實際測量風速;vl為第l個風速值;P(v≤vl)為實際測量風速小于第l個風速值的概率。
等能量密度法是WAsP軟件中用來進行風能資源評估的方法,在工程實際中被廣泛應用。此方法的中心思想是確保最大限度地表達風的能量部分。利用等能量密度法估計Weibull分布的2個參數需要滿足以下條件[14-15]:① 風能密度相等;② 大于平均風速的風頻概率相同。
根據實測風速數據統計出風速大于年平均風速的概率,記為X,則可得到
(13)
設k的初值為2,經過多次迭代計算,穩定后的解即為k的解。則可計算得到
(14)
式中:v測為實測的平均風速。
建立如下的風速Weibull分布模型參數的目標優化函數:
(15)
式中:E(k,c)為誤差平方和函數,當其為極小值時,對應的k,c即為所要計算的最優解(k,c);Pvl為實際第l個風速值vl(即vl=1 m/s)的統計概率;N為原始風速數據劃分的風速段數。
利用改進的CSO算法優化Weibull分布模型參數的流程如圖1所示。

圖1 優化的Weibull分布模型參數流程圖


表2 不同輪轂高度實際測量得到的風能資源特性指標值
利用等能量密度法和改進的CSO算法分別計算k,c,然后,利用計算得到的結果分別對實測風速數據進行風能資源評估,即計算風能資源的特性指標值,得到的結果如表3所示。


表3 2種方法計算得到的k,c及風能特性指標評估值
為評價改進的CSO算法對風能資源特性指標的評估精度,利用絕對誤差e和相對誤差R對評估結果進行評價,并與等能量密度法進行比較,其中:


表4 2種方法在不同輪轂高度的風能資源特性指標評價結果
考慮到風速分布服從兩參數Weibull分布函數,本文在CSO算法的基礎上,引入小雞的學習因子C和自我學習系數ω加以改進,并利用河南開封尉氏某風電場連續一年的的測風數據對改進的雞群算法進行驗證。結果表明,利用改進的CSO算法尋優得到的Weibull參數所計算出的風能特性指標誤差率普遍較好,由此可見,改進的CSO算法更適合應用于風電場的風能資源評估。
[1] 封宇, 何焱, 朱啟昊,等. 近海及海上風資源時空特性研究 [J]. 清華大學學報(自然科學版), 2016,56(5):522-529.
[2] 郁永靜, 何一, 劉志遠,等. 基于最大熵原理的風電場風頻分布研究 [J]. 水力發電, 2017,43(6):93-96,119.
[3] 陳國初,楊維,張延遲,等.風電場風速概率分布參數計算新方法[J].電力系統及其自動化學報,2011,23(01):46-51.
[4] 陳光,任志良,孫海柱.最小二乘曲線擬合及Matlab 實現 [J].兵工自動化,2005,24(3):107-108.
[5] BAUM C F,SCHAFFER M E,STILLMAN S. Enhanced routines for instrumental variables/generalized method of moments estimation and testing [J]. Boston College Working Papers in Economics, 2007,7(4):465-506.
[6] METZ C E, HERMAN B A, SHEN J H. Maxi-mum likelihood estimation of receiver operating characteristic (ROC) curves from continuously-distributed data [J]. Statistics in Medicine,2015,17(9):1033-1053.
[7] QU Chiwen, ZHAO Shi’an, FU Yanming,et al. Chicken Swarm Optimization Based on Elite Opposition-Based Learning [J]. Mathematical Problems in Engineering,2017,2017:1-20.
[8] Meng X, Liu Y, Gao X, et al. A new bio-inspired algorithm: Chicken swarm optimization[G]// Advances in Swarm Intelligence.[S.l.]: Springer International Publishing, 2014: 86-94.
[9] 孔飛, 吳定會. 一種改進的雞群算法 [J]. 江南大學學報(自然科學版), 2015, 14(6):681-688.
[10] 葉林, 楊丹萍, 趙永寧. 風電場風能資源評估的測量—關聯—預測方法綜述 [J]. 電力系統自動化, 2016,40(3):140-151.
[11] 楊維, 陳國初, 張延遲,等. 改進的微粒群算法及其在風電場建模中的應用 [J]. 計算機工程與應用, 2011, 47(1):223-227.
[12] LI Gong, SHI Jing. Application of Bayesian model averaging in modeling long-term wind speed distributions [J]. Renewable Energy, 2010, 35(6):1192-1202.
[13] CARTA J A, RAMíREZ P. Analysis of two-component mixture Weibull statistics for estimation of wind speed distributions [J]. Renewable Energy, 2007, 32(3):518-531.
[14] WANG Zhifeng, DONG Sheng, DONG Xiangke,et al. Assessment of wind energy and wave energy resources in Weifang sea area [J]. International Journal of Hydrogen Energy, 2016, 41(35):15805-15811.
[15] MAHMUDDIN F, IDRUS M, HAMZAH. Analysis of ocean wind energy density around sulawesi and maluku islands with scatterometer data [J]. Energy Procedia, 2015, 65:107-115.