亓嘉惠, 茹鋒, 吳琨, 文常保
(長安大學 電子與控制工程學院,陜西 西安 710064)
隨著不可再生能源的大規(guī)模使用,造成的資源枯竭以及環(huán)境污染問題日益嚴峻,如何提高光伏系統的發(fā)電效率成為了研究的熱點[1]。因此,最大功率點跟蹤(maximum power point tracking, MPPT)控制技術的研究至關重要。理想條件下,光伏陣列的功率輸出特性僅呈現單一峰值。針對此現象,一些學者采用擾動觀察法和電導增量法等傳統方法[2]實現MPPT控制,在單峰值下取得了較優(yōu)的跟蹤效果。然而,在實際建設中光伏系統常因建筑物和云層遮擋等問題造成光伏組件出現局部遮蔭現象,從而導致光伏陣列的輸出特性曲線出現多極值[3]。此時,傳統方法將難以準確地跟蹤到系統的最大功率點,使得光伏系統的發(fā)電效率降低,損耗過大。為此,部分學者采用粒子群算法(particle swarm optimization, PSO)、灰狼算法(grey wolf optimization, GWO)[4-5]等群體智能優(yōu)化算法來實現MPPT控制。這些方法雖然在一定程度上可以提高最大功率點跟蹤的效率,但在跟蹤過程中仍然存在易陷入局部極值點、全局收斂精度較低和穩(wěn)定性較弱等問題。
針對上述問題,為進一步提高跟蹤精度和確保跟蹤穩(wěn)定性,本文提出一種基于多策略改進海鷗算法(multi-strategy seagull optimization algorithm, MSSOA)的MPPT控制方法, 并通過仿真驗證該方法在MPPT控制中的適用性及其在跟蹤精度和穩(wěn)定性方面的優(yōu)勢。
海鷗優(yōu)化算法(seagull optimization algorithm, SOA)[6]是一種新型群體智能優(yōu)化算法,主要模擬了自然界中海鷗遷徙過程中的攻擊(覓食)行為。
1) 遷徙行為
為了避免每個海鷗和周圍的海鷗發(fā)生碰撞,通過變量A來調整海鷗的位置。
Cs(t)=A×Ps(t)
(1)
式中:Cs(t)為不與其他海鷗發(fā)生碰撞的新位置;Ps(t)為海鷗當前的位置;A為海鷗的運動行為;t為當前迭代次數。A的大小由fc控制。
(2)
式中:MAXiteration為最大迭代次數;fc取值為2。隨后令所有海鷗向最佳海鷗所在的位置靠攏。
Ms(t)=B×[Pbest(t)-Ps(t)]
(3)
式中:Ms(t)為最佳海鷗所在的方向;Pbest(t)為最佳海鷗所在的位置;B為負責平衡算法全局和局部搜索的重要隨機參數,B=2A2×rand,rand為[0,1]范圍內的隨機數。海鷗向著最佳海鷗所在的位置進行移動,到達新的位置Ds(t)。
Ds(t)=|Cs(t)+Ms(t)|
(4)
2) 攻擊行為
當攻擊獵物時,海鷗在空中進行螺旋形狀運動。海鷗的攻擊位置由式(5)決定。
Ps(t)=Ds(t)xyz+Pbest(t)
(5)
式中:x=rcos(k);y=rsin(k);z=rk;r為螺旋半徑,r=uekv;k為隨機角度值,且取值在0到2 π之間;u和v為螺旋形狀的相關常數;e為自然對數的底數。
1.2.1 非線性收斂因子A
在原始海鷗算法中,A的線性收斂會導致參數B不能有效地平衡海鷗算法的全局與局域搜索性能。因此,為使得海鷗算法的全局探索和局部開發(fā)之間更加協調,構造了一種新型非線性遞減的收斂因子A,并引入符合β分布的隨機數對A進行局部擾動,以提高海鷗算法在尋優(yōu)后期的廣域搜索能力,使算法有效跳出局部最優(yōu)。改進的收斂因子A表達式如(6)所示。
(6)
式中:θ為收斂調整因子,根據多次試驗θ取0.1時效果最好;betarnd(0,1)為可以生成符合貝塔分布的隨機數。
圖1為收斂因子A改進前后的對比曲線。改進后的收斂因子A呈非線性遞減,使海鷗在迭代前期長時間以較大步伐進行位置更新,可快速向最優(yōu)海鷗位置靠攏,加強算法的全局尋優(yōu)性能。海鷗在迭代后期以變化幅度較小的步伐進行搜索,從而加強海鷗的局域開發(fā)能力,使算法的全局與局部尋優(yōu)性能之間得到有效平衡。
圖1 參數A改進前后對比曲線
1.2.2 自學習環(huán)節(jié)
通過對海鷗搜索過程中的位置更新模型進行分析后發(fā)現,原始海鷗算法在尋優(yōu)過程中位置的更新只受種群當前最優(yōu)解的引導,種群更新路徑單一,從而會使算法出現早熟收斂現象。受粒子群算法[7]中個體最優(yōu)值參與位置更新的啟發(fā),對海鷗算法引入“自學習環(huán)節(jié)”。在搜索過程中將“自學習環(huán)節(jié)”和“社會學習環(huán)節(jié)”相結合,從而提升海鷗種群個體的活躍性,使整個搜索過程中海鷗的更新位置由個體當前最優(yōu)解和種群當前最優(yōu)解共同指導,從而提高算法的搜索性能。
因此對原始海鷗算法中Ms(t)的更新公式進行改進。改進后每只海鷗的收斂方向為:
Ms(t)=B×[Pbest(t)-Ps(t)+Ppbest(t)-Ps(t)]
(7)
式中:Pbest(t)為更新過程中種群的最優(yōu)解;Ppbest(t)為每只海鷗個體的歷史最優(yōu)解。
1.2.3 反向學習策略
(8)
采用基于區(qū)間對稱的反向學習模型,即k=0.5。在海鷗進行動態(tài)反向學習之后,用貪婪算法評價反向學習后海鷗位置對應的適應度值,決定海鷗是否進行反向學習,如式(9)所示。
(9)
采用多策略改進海鷗算法實現MPPT控制分為兩步,首先由MSSOA算法搜索全局最優(yōu)解,然后根據算法的輸出進行跟蹤控制。在該算法中,將光伏電池參數和外界環(huán)境作為算法的輸入;取適應度函數為光伏陣列的輸出功率,將電壓的取值范圍作為完整解空間,搜索出的最大功率點對應的電壓作為算法的輸出,并通過外圍DC/DC電路來完成光伏陣列最大功率跟蹤的控制。
通過調用MSSOA算法來搜索全局最大功率點的流程如圖2所示。
圖2 MSSOA算法搜索全局最大功率點流程
圖3 光伏系統最大功率跟蹤原理圖
本文在MATLAB/Simulink中建立光伏系統最大功率跟蹤的仿真模型,對基于MSSOA算法的MPPT控制方法進行仿真試驗,并將采用粒子群算法和原始海鷗算法的MPPT方法做對比試驗。試驗原理如圖3所示。
光伏陣列由3個參數(如表1所示)的光伏電池串聯組成。仿真時間設置為1 s,模擬光照突變情況,即0~0.5 s時給光伏陣列均勻光照,三塊電池所受光照均為1 000 W/m2,從0.5 s起三塊電池光照分別突變?yōu)? 000 W/m2、800 W/m2、600 W/m2,此時光伏陣列處于非均勻光照條件下從而模擬局部陰影情況,電池溫度不變均為25 ℃。
表1 標準測試條件下
圖4 兩種光照情況下光伏 陣列的功率輸出特性
由圖4可知,均勻光照下光伏陣列最大輸出功率為798.068 7 W。局部遮蔭情況下光伏陣列最大輸出功率為518.688 2 W,并且有兩個局部極值點分別為445.491 2 W和266.022 9 W,仿真結果如圖5所示。
由圖5可以看出,在均勻光照情況下,三種算法最大功率跟蹤較為穩(wěn)定,但MSSOA算法精度最高。在光照由均勻突變?yōu)殛幱扒闆r時,粒子群算法與海鷗算法均不同程度地陷入了局部最優(yōu)值,造成了很大的功率損耗。而MSSOA算法精準地跟蹤到全局最大功率點,和其余兩種算法相比,該算法有明顯的改進效果,有效地提升了光伏電池的轉換效率。
為更加清晰且準確地觀察跟蹤穩(wěn)定性方面的改進效果,本文對三種算法在光照強度分別為1 000 W/m2、800 W/m2、600 W/m2時局部陰影情況下的跟蹤過程進行了20次試驗。個體數均設置為3,最大迭代次數為50。由圖6所示,PSO算法陷入了局部極值點,SOA算法求得的最大功率值有一定誤差,而MSSOA算法能夠快速準確地追蹤到全局最大功率點。
圖5 三種算法最大功率跟蹤仿真結果
圖6 三種算法跟蹤最大輸出功率對比圖
對20次試驗結果的平均值、標準差以及誤差進行了計算,結果如表2所示。通過分析可知,MSSOA算法性能最優(yōu),20次試驗均可跟蹤到理論最大輸出功率值,跟蹤性能非常穩(wěn)定;SOA算法的跟蹤結果有一定振蕩,偶爾出現陷入局部最大功率點的現象,存在0.72%的誤差;可見,基于多策略改進海鷗算法的MPPT控制方法可以有效擺脫局部最大功率點的干擾,且在跟蹤精度和穩(wěn)定性方面都有明顯的優(yōu)勢。
表2 試驗結果
本文提出了一種基于多策略改進海鷗算法的MPPT控制方法,有效地克服了傳統方法控制精度低和容易發(fā)生誤跟蹤的缺點,且無論是在均勻光照還是在光照突變?yōu)榫植筷幱暗那闆r下,都有更高的收斂精度和更強的穩(wěn)定性,使光伏電池的轉化效率得到提升。通過仿真試驗表明,該方法可適用于不同光照條件下的最大功率跟蹤,為新型算法的改進提供了重要思路,對群體智能算法在MPPT控制中的應用具有推廣意義。