遺傳算法(GA)是一類以Darwin自然進化論與Mendel遺傳變異理論為基礎(chǔ)的求解全局優(yōu)化問題的仿生型算法。把遺傳算法應(yīng)用于最大功率點跟蹤中,可以使逆變器克服外界環(huán)境的劇烈變化造成的干擾,迅速搜索到最大功率點。但是,由于遺傳算法搜索到最大功率點后,并不能穩(wěn)定地工作于最大功率點,所以在此使用擾動觀察法作為最大功率點附近的搜索算法。
1 太陽能電池模型
考慮到溫度和太陽輻射強度改變的影響,蘇建徽等提出了一種硅太陽電池工程用數(shù)學(xué)模型如下:
式中:I為太陽能電池的輸出電流;U為太陽能電池的輸出電壓;Isc為太陽能電池的短路電流;Uoc為太陽能電池的開路電壓;Im為太陽能電池輸出最大功率時的輸出電流;Um為太陽能電池輸出最大功率時的輸出電壓。
目前太陽能電池的制造商都會給出太陽能電池在標準狀況下(25℃@1 000 W/m2)的Isc,Uoc,Im,Um。在實際應(yīng)用中,應(yīng)該根據(jù)下式調(diào)整這些參數(shù):
通常a=0.002 5;b=0.5;c=0.002 88。蘇建徽等對大量太陽能電池進行實驗,結(jié)果證明這些補償方法的應(yīng)用可以保證模型與實際情況的誤差小于6%,因此這個模型可以應(yīng)用于太陽能電池的MPPT仿真。根據(jù)這個模型,太陽能電池的特性曲線如圖1所示。
2 Boost變換器模型
在此采用Boost變換器作為前級DC-DC變換器,其拓撲結(jié)構(gòu)如圖2所示。
楊海柱等通過對Boost變換器的狀態(tài)空間模型進行線性化處理后,得到式(2)所示的模型:
因此,太陽能電池的工作點可以通過調(diào)節(jié)占空比D來控制。實際上,光伏系統(tǒng)的最大功率點跟蹤就是通過調(diào)節(jié)DC-DC變換器的占空比D,使外電路阻抗和太陽能電池的阻抗匹配。[!--empirenews.page--]
3 遺傳算法
3.1 優(yōu)化變量選擇及編碼
通過前文分析,該系統(tǒng)的優(yōu)化變量確定為Boost變換器的占空比D。因為D只能在0和1之間變化,所以采用搜索空間限定法處理約束條件。這里采用格雷碼描述個體的基因。格雷碼的優(yōu)點是能使表現(xiàn)型相近的個體,其基因型(格雷碼)也相近,從而克服自然二進制碼所形成的“峭壁”。
假設(shè)格雷碼為gngn-1…g2g1,那么格雷碼的解碼操作可以根據(jù)如下過程進行:
(1)格雷碼gngn-1…g2g1轉(zhuǎn)換為自然二進制碼bnbn-1…b2b1:
(2)自然二進制碼bnbn-1…b2b1轉(zhuǎn)換為表現(xiàn)型x:
3.2 適應(yīng)度函數(shù)的定義
在此采用式(3)所示的適應(yīng)度函數(shù),并定義Cmax=2 500。
3.3 選擇操作
本文使用基于排序的適應(yīng)度分配算法,種群按目標進行排序,個體的適應(yīng)度僅取決于個體在種群中的位序,而不是實際的目標值。Blickle T的研究表明排序算法克服了按比例適應(yīng)度計算的尺度問題,以及選擇導(dǎo)致搜索帶迅速變窄而產(chǎn)生的過早收斂,從而具有更好的魯棒性。
這里將一個種群中的Nind個個體按適應(yīng)度函數(shù)值從小到大排序,并取分布概率為:
Pi=2i/[Nind(Nind+1)], i∈[1,x]
根據(jù)已經(jīng)計算出的個體概率,采用隨機遍歷抽樣的的方法進行選擇。該方法提供了零偏差和最小個體擴展,具有比輪盤賭算法更優(yōu)越的性能。假設(shè)Nselect為需要選擇的個體數(shù)目,按照等距離選擇個體,選擇指針的距離為1/Nselect,而第一個指針的位置由[0,1/Nselect]區(qū)間內(nèi)的均勻隨機數(shù)決定。
3.4 交叉操作
交叉操作是遺傳算法的重要步驟,它的目的在于產(chǎn)生新的基因組,同時也能有效地限制遺傳信息的丟失。Syswerda等提出了均勻交叉算子,并把它和單雙點交叉算子進行了函數(shù)優(yōu)化實驗對比,最后認為均勻交叉優(yōu)于單雙點交叉。
均勻交叉需要通過四步實現(xiàn):
(1)根據(jù)交叉概率Pc隨機生成交叉池;
(2)在交叉池中隨機選擇兩個個體配對;
(3)隨機產(chǎn)生一個與個體編碼串等長的屏蔽字W=wd…wi…w2w1。其中d是編碼串長度;
(4)若wi=1,則兩個父代個體的第i位交叉,否則不交叉。
3.5 變異操作
Deb等研究了交叉概率Pc和變異率Pm的相互作用對遺傳算法的影響,結(jié)果表明交叉概率Pc對遺傳算法性能的影響遠比變異率Pm小。因此選用適當?shù)淖儺惵蕵O其重要。在一般遺傳算法中,種群使用的是固定的全局變異率,而且為了降低變異算子對模式的破壞作用,變異率一般都很小(小于0.1)。然而種群中的不同個體對整體進化的作用是不同的,優(yōu)良個體之間的基因重組是群體進化的決定性力量,較差個體在種群中是一個不斷被淘汰的過程。因此,應(yīng)該對種群中的不同個體采用不同的變異率:一方面使種群中的優(yōu)良個體具有較小的變異率,從而能夠得到較好的保持,并通過交叉重組進行優(yōu)良模式的累積;另一方面,種群中較差的個體能夠通過較大的變異率增強種群的探索能力。
基于以上思想,在此采用如下變異率:
式中:Pmi表示第i個個體的變異率;Pmean表示具有群體的平均適應(yīng)度的個體所具有的變異率;Pmax表示具有群體的最大適應(yīng)度的個體所應(yīng)增加的變異率;Fit(i)表示第i個個體的適應(yīng)度。
3.6 精英個體保留策略
為了提高全局尋優(yōu)能力和收斂速度,本文采用保留精英個體的方法,即保留優(yōu)化過程中每一代適應(yīng)度值最高的個體,直接復(fù)制到下一代。
4 擾動觀察法與遺傳算法雙??刂?br />
4.1 擾動觀察法
從圖1可以看出光伏電池的輸出功率具有式(4)所示的特性:
擾動觀察法就是根據(jù)光伏電池的這一特性而提出來的。擾動觀察法具有簡單實用的優(yōu)點,但是它在控制過程中,擾動步長ΔD的值對最大功率點控制的影響較大:當ΔD較大時,輸出功率會在最大功率點附近具有較大的震蕩現(xiàn)象;當△D較小時,系統(tǒng)對最大功率點跟蹤較慢。
4.2 擾動觀察法與遺傳算法結(jié)合
遺傳算法使用概率搜索技術(shù),因此在惡劣環(huán)境中,它仍能準確搜索到最大功率點,但這也決定了它不可能使系統(tǒng)穩(wěn)定工作于最大功率點。為了解決這個問題,本文引入擾動觀察法與遺傳算法雙模控制。當最大功率點變化較小時,由小步長擾動觀察法追蹤最大功率點。[!--empirenews.page--]
4.3 遺傳算法重啟時種群初始化
當外界環(huán)境變化不大時,新環(huán)境下的最大功率點與舊環(huán)境相差不大。此時,舊環(huán)境的最大功率點可以作為精英個體保留下來,直接進入下一輪搜索。
4.4 算法流程圖
該算法的流程圖如圖3所示。
5 仿真結(jié)果
5.1 遺傳算法的進化過程
設(shè)定MAXGEN=50,Pc=0.9,Nind=20,染色體長度為16,Pmean=0.1,Pmax=0.2,T=25℃,S=800 W/m2,仿真結(jié)果如圖4所示。
由圖4可見,算法在第五代時就已經(jīng)搜索到最大功率點,并且搜索過程中每代種群始終保持較大的多樣性。
5.2 穩(wěn)定光強下的階躍響應(yīng)
設(shè)定MAXGEN=15,Cmax=2 500,△Pmax=40,△D=0.000 01,Pc=0.9,種群個體數(shù)Nind=20,染色體長度為16,Pmean=0.1,Pmax=0.2,T=25℃??疾樗惴▽鈴姀?00~800 W/m2的階躍響應(yīng),仿真結(jié)果見圖5。
由圖5可見,該算法具有良好的搜索速度和穩(wěn)定性。為了提高搜索速度還可以減小遺傳算法執(zhí)行時間,在接近最大功率點時由擾動觀察法來執(zhí)行搜索。
5.3 光強劇烈變化下的階躍響應(yīng)
在光強上疊加一個幅度為5 W/m2的隨機噪聲,參數(shù)設(shè)置與第5.2節(jié)相同,對算法進行仿真,仿真結(jié)果見圖6。
由圖6可見,該算法具有良好的抗干擾性能,在劇烈干擾下仍然可以準確搜索到最大功率點。
6 結(jié) 語
在此把遺傳算法和傳統(tǒng)的擾動觀察法相結(jié)合提出了一種新的MPPT算法,并在Matlab中進行了仿真。由仿真實驗可以看出,通過遺傳算法的應(yīng)用,該算法具有極好的抗干擾能力和良好的搜索速度,通過減小擾動觀察法的擾動步長,算法可以穩(wěn)定地工作在最大功率點。