趙巧靜,邊敦新,陳 羽,王訓棟,崔 帥
(山東理工大學電氣與電子工程學院,山東淄博 255000)
近年來,各個國家積極開發(fā)新的可再生能源,預計到2023 年,可再生能源的使用將占據(jù)1/3,其中應用最廣的是太陽能發(fā)電[1]。在現(xiàn)實應用中,由于自然天氣等原因,部分光伏模塊會被云或其他建筑物等遮擋,使得最大功率呈多峰現(xiàn)象[2],從而降低光伏組件的效率。
在局部陰影條件下,使用傳統(tǒng)的粒子群優(yōu)化(particle swarm optimization,PSO)算法,很大程度上會使最大功率跟蹤(maximum power point tracking,MPPT)陷入局部最優(yōu),達不到全局最大功率點[3]。文獻[4]采用PSO 算法與擾動觀察(perturbation and observation,P&O) 法相結(jié)合,保證了系統(tǒng)的跟蹤速率,但振蕩幅度較大。文獻[5]提出了粒子群算法,該算法能夠精確搜索到最大功率點,但容易早熟收斂,且對于參數(shù)的要求比較高。文獻[6]采用改進粒子群優(yōu)化算法實現(xiàn)多峰值最大功率點跟蹤,但適應值函數(shù)須在特定遮蔭條件下才能實現(xiàn),所以缺乏應用性。
麻雀搜索算法(sparrow search algorithm,SSA)是一種新型的群體智能優(yōu)化算法[7],在非線性優(yōu)化和動力傳達機構(gòu)等方面取得了良好的成就。該算法具有收斂速度快、易于實現(xiàn)等優(yōu)點,但易陷入局部最優(yōu)解。
針對以上現(xiàn)象,提出了一種改進麻雀搜索算法(improved sparrow search algorithm,ISSA),對原始麻雀搜索算法中的生產(chǎn)者和追隨者的位置進行了改進。從仿真實驗中可以看出,相比于PSO、SSA 算法,本文所提ISSA 算法能夠快速跳出局部最優(yōu),達到最大功率點,具有較高的收斂精度和收斂速度。
在光伏發(fā)電系統(tǒng)中,光伏電池組件是由多個串并聯(lián)的光伏電池組成的[2]。光伏電池等效模型如圖1 所示。
由圖1 可得光伏電池的輸出表達式為:
圖1 光伏電池等效模型
式中:Iph為光生電流;I0為反向飽和電流;Rs、Rsh分別為串并聯(lián)電阻;q為電子的單位電荷;A為p-n 結(jié)的理想因子;θ為單元陣列的溫度;k為玻爾茲曼因子;V為光伏電池輸出電壓。
當光伏電池處于最大功率點處時,V=Vm,I=Im,在開路狀態(tài)時I=0,V=Voc??傻迷跇藴瘦椪諒姸群蜆藴释饨鐪囟葪l件下的輸出電流,但在一般情況下并不能直接使用,修改后的特性曲線公式為:
式 中:Isc為 短 路 電 流;S為 光 照 強 度;Sr=1 000 W/m2;a=0.002 5/℃;θa為環(huán)境溫度;θr=25 ℃。
式中:Im為光伏電池處于最大功率點處時的電流。
式中:Voc為開路電壓;c=0.002 8/℃;e=2.718 3;b=0.5。
式中:Vm為光伏電池處于最大功率點處時的電壓。
在光照不均勻的情況下,光伏陣列的輸出特性是非線性的,會呈現(xiàn)多峰值現(xiàn)象[8]?,F(xiàn)將三個光伏電池進行串聯(lián)研究,設光伏電池的溫度均為標準外界溫度25 ℃。在模式1 下,光照強度為S1=1 000 W/m2、S2=800 W/m2、S3=600 W/m2;在模式2下,光照強度為S1=800 W/m2、S2=600 W/m2、S3=400 W/m2。在兩種模式下的P-V特性曲線如圖2 所示。
圖2 光伏列陣在局部陰影下的特性曲線
在麻雀覓食的過程中,可將麻雀分為發(fā)現(xiàn)者和追隨者,同時在種群中還存在捕食者[7]。發(fā)現(xiàn)者在群體中的職責是搜尋食物找到充足的食物資源和為種群提供覓食的區(qū)域、方向;追隨者通過追隨發(fā)現(xiàn)者獲得食物[7]。
麻雀搜索算法在全局搜索中具有多種優(yōu)點:搜索精度高、收斂速度快、穩(wěn)定性好等。在麻雀搜索算法中,適應度值好的發(fā)現(xiàn)者在尋找食物的過程中會優(yōu)先得到食物,同時為其他的追隨者提供覓食的方向。所以,生產(chǎn)者的搜尋范圍會大于追隨者的搜尋范圍[7]。生產(chǎn)者的位置更新公式為:
式中:j為當前的迭代次數(shù);m為第幾個麻雀;n=1,2,3,...,d,其中d為待優(yōu)化問題變量的維數(shù);imax為最大迭代次數(shù);Xm,n為第m個麻雀在第n維的位置信息;b為在0~1之間的一個隨機數(shù);R2(R2∈[0,1])為預警值;M(M∈[0.5,1])表示安全值;Q為一個隨機數(shù)服從正態(tài)分布;L為1 行d列的矩陣,矩陣內(nèi)的元素全都為1。當R2S時,該麻雀會向當前位置的附近移動,移動步伐符合正態(tài)分布。
追隨者的位置更新公式為:
式中:Xw為在當前維度空間中種群的最差位置;XP為目前發(fā)現(xiàn)者所占據(jù)的最優(yōu)位置;A為一個1 行d列的矩陣,矩陣內(nèi)的元素為1 或者-1;AT表示矩陣A的轉(zhuǎn)置。當m>N/2,表示第m個適度值低的追隨者所獲得的食物很少,為得到更多的食物必須到別的區(qū)域覓食,其飛往的位置符合標準正態(tài)分布隨機數(shù)。當m 反捕食者的位置更新公式: 式中:β為標準正態(tài)分布的一個隨機數(shù);Xbest為當前的全局最優(yōu)位置;K為在區(qū)間[-1,1]內(nèi)的隨機數(shù);δ為一個常數(shù)其數(shù)值非常小,目的是防止分母為零沒有意義;fm為當前個體的適應度值;fg為目前全局最佳適應度值。當fm>fg時,個體會向最佳位置方向移動;當fm=fg時,個體會移動到該位置附近。 麻雀搜索算法在全局搜索中,生產(chǎn)者的預警值在小于安全值時,由指數(shù)函數(shù)y=exp(-x)的基本圖像可知X越小取1 的概率越高,隨著X的增大其值收斂于零。因此麻雀搜索算法在求原點附近的最優(yōu)解問題時,其收斂性非??欤h快于其他算法。但是當求解問題的最優(yōu)解距原點較遠時,其性能會有所下降,容易陷入局部最優(yōu)。其次,追隨者在m 反捕食者的位置簡化公式: 粒子的位置X表示光伏陣列的參考電壓,目標函數(shù)f表示光伏陣列的輸出功率,具體流程如圖3 所示。 圖3 ISSA算法流程 步驟如下: (1)對麻雀搜索算法的參數(shù)進行初始化,設置種群總數(shù)、最大迭代次數(shù)、變量維數(shù)、生產(chǎn)者和追隨者的數(shù)量、隨機生成個體的初始位置; (2)將種群按一定比例劃分為生產(chǎn)者和追隨者,個體隨機選擇自己的身份; (3)采集電壓和電流,根據(jù)目標函數(shù)確定每一個個體的適應度值,保存目前最佳位置和最差位置; (4)根據(jù)式(10)~(12)分別更新生產(chǎn)者、追隨者、反捕食者的位置; (5)計算當前最佳目標函數(shù)值fmax,更新最優(yōu)值和個體最佳位置,若f>fbest,則Xbest=X,fbest=f; (6)結(jié)束算法,輸出目標函數(shù)的最優(yōu)解。 為了驗證所提改進麻雀搜索算法的優(yōu)越性,分別采用PSO、SSA 和ISSA 算法在MATLAB/Simulink 中建立光伏系統(tǒng)MPPT 仿真模型。仿真模型主要包括四大塊:光伏組件、最大功率跟蹤模塊、Boost 模塊、PWM 模塊。通過最大功率跟蹤模塊得到最大功率點處電壓,與C1兩側(cè)電壓作差,再經(jīng)過PWM模塊得到IGBT 的導通信號,使輸出電壓保持在全局最大功率點電壓處,從而得到最大輸出功率。仿真參數(shù)為:溫度θ=25 ℃,直流母線電容C2=100 μF,濾波電容C1=50 μF,電感L=10 mH。PSO 算法參數(shù)為:n=50,最大迭代次數(shù)為1 000,慣性因子w=0.7,學習因子c1=c2=1。 采用光伏系統(tǒng)MPPT 仿真模型,在模式1 中,分別采用粒子群優(yōu)化算法、麻雀搜索算法和改進麻雀搜索算法進行仿真,仿真結(jié)果分別如圖4 所示。 圖4 靜態(tài)光照條件下功率追蹤曲線 從圖4 靜態(tài)光照條件下功率追蹤曲線可以看出PSO 算法在0.051 s 左右時功率趨于穩(wěn)定,穩(wěn)定在320.52 W 附近,與理論值323 W 相差2.48 W,追蹤精度為99.2%。穩(wěn)定后輸出功率振蕩較大,振蕩幅度約為±3 W,在很大程度上降低了發(fā)電效率;SSA 算法在0.025 s 時功率趨于穩(wěn)定,達到全局最大功率約為321.94 W,與理論值相差1.06 W,追蹤精度為99.67%,振蕩幅度較小約為±1 W;ISSA 算法在0.023 s 時追蹤到最大功率,約為322.10 W,能量損耗最小,與理想值323.00 W 相差0.90 W,追蹤精度可達99.7%。 由于算法在進行迭代尋優(yōu)過程中具有隨機性,這里將PSO、SSA 和ISSA 算法分別進行30 次實驗[8]。三種算法的功率分布如圖5 所示,并在表1 中記錄三種算法的理想值、平均功率和平均時間。 表1 三種算法的性能比較 圖5 功率分布 從圖5 功率分布圖可以看出,在30 組實驗測試中PSO 算法有14 次陷入局部最優(yōu);SSA 算法有9 次陷入局部最優(yōu);而ISSA 算法均能找到最大功率點。可以看出,PSO 和SSA 算法的全局搜索能力相對較弱,容易陷入局部最優(yōu);ISSA 算法的全局搜索能力較強,能夠及時跳出局部最優(yōu)解。從表1 三種算法的性能比較可以得到,改進麻雀搜索算法無論在追蹤精度方面還是收斂速度方面都優(yōu)于粒子群優(yōu)化算法和麻雀搜索算法,證明了改進麻雀搜索算法的優(yōu)越性。 為了驗證ISSA 算法在動態(tài)光照條件下的追蹤效果,在0.15 s 時將光照強度由模式1 突變?yōu)槟J?,分別對PSO、SSA和ISSA 算法進行仿真實驗,實驗結(jié)果如圖6 所示。 圖6 動態(tài)光照條件下功率追蹤曲線 從圖6 中可以看出,三種算法在0.15 s 光照突變后都能達到最大功率點附近。PSO 和SSA 算法在達到最大功率時,震蕩幅度較大,收斂速度較慢;ISSA 算法達到穩(wěn)定后,振蕩幅度較小,且具有較高的收斂精度和收斂速度。 采用兩種測試函數(shù)來對粒子群優(yōu)化算法、麻雀搜索算法和改進麻雀搜索算法進行比較,如圖7 和8 所示。同取最大迭代次數(shù)為1 000,維度d=2,n=100,c1=c2=2,慣性因子w=0.9。在進行迭代尋優(yōu)測試時,為得到數(shù)據(jù)的準確性,分別對粒子群優(yōu)化算法、麻雀搜索算法和改進麻雀搜索算法進行了30 組實驗,記錄三種算法在達到穩(wěn)定時所需的時間。 圖7 所示迭代尋優(yōu)效果選取的測試函數(shù)是最優(yōu)解收斂于原點的。從圖中可以看出SSA 算法和ISSA 算法都能達到理論最優(yōu)值,而PSO 算法陷入了局部最優(yōu)。PSO 算法在達到穩(wěn)定時所用時間為2.370 s,SSA 算法所用時間為1.675 s,ISSA算法所用時間為1.344 s,ISSA 算法相比PSO 算法用時縮短了43.29%,相比于SSA 算法縮短了19.76%。 圖7 迭代尋優(yōu)效果圖 圖8 中迭代尋優(yōu)效果選取的測試函數(shù)是最優(yōu)解遠離原點的。從圖中可以看出,在進行迭代尋優(yōu)測試時,ISSA 得到的最優(yōu)值為-10 021.5,SSA 得到的最優(yōu)值為-8 817.3,PSO 得到的最優(yōu)值為-7 014.5。在進行30 組實驗后,發(fā)現(xiàn)改進麻雀搜索算法無論在收斂時間方面還是收斂精度方面都優(yōu)于其他兩種算法。 圖8 迭代尋優(yōu)效果圖 提出了一種改進麻雀搜索算法,根據(jù)算法性能測試表明,該算法具有較高的收斂速度和收斂精度。將其應用在光伏系統(tǒng)最大功率跟蹤模塊,在MATLAB/Simulink 建立仿真模型,并與PSO 和SSA 算法進行仿真對比。根據(jù)實驗結(jié)果可知,改進麻雀搜索算法能夠快速準確地找到最大功率點,減小輸出功率曲線的振蕩幅度,提高光伏發(fā)電系統(tǒng)的輸出效率。2.2 改進型麻雀搜索算法
3 仿真分析
3.1 靜態(tài)仿真分析
3.2 動態(tài)仿真分析
4 算法性能測試
5 結(jié)論