宋子博,葛曼玲,謝 沖,郭志彤
(1.河北工業(yè)大學(xué)省部共建電工裝備可靠性與智能化國(guó)家重點(diǎn)實(shí)驗(yàn)室,天津 300130;2.河北工業(yè)大學(xué)河北省電磁場(chǎng)與電器可靠性重點(diǎn)實(shí)驗(yàn)室,天津 300130)
光伏發(fā)電是一種新型的發(fā)電方式,該發(fā)電方式能夠有效利用太陽(yáng)能,并且具有操作簡(jiǎn)單、無(wú)噪聲、低污染、建設(shè)周期短、安全可靠等優(yōu)點(diǎn)[1-2]。對(duì)光伏發(fā)電系統(tǒng)的輸出功率進(jìn)行預(yù)測(cè)有助于電力系統(tǒng)調(diào)度部門(mén)統(tǒng)籌安排常規(guī)能源和光伏發(fā)電的協(xié)調(diào)配合,及時(shí)調(diào)整調(diào)度計(jì)劃,合理安排電網(wǎng)運(yùn)行方式,有效地降低光伏接入對(duì)電網(wǎng)調(diào)度的影響,從而提高電網(wǎng)運(yùn)行的安全性和穩(wěn)定性,同時(shí)減少電力系統(tǒng)的運(yùn)行成本,維持電網(wǎng)動(dòng)態(tài)環(huán)境經(jīng)濟(jì)調(diào)度[3-5]。
光伏系統(tǒng)輸出功率的預(yù)測(cè)方法一般分為物理方法和統(tǒng)計(jì)方法[6]。前者以建立電路模型預(yù)測(cè)發(fā)電功率為主;后者使用已有的光伏功率數(shù)據(jù),采用BP 神經(jīng)網(wǎng)絡(luò)[7]、支持向量機(jī)(SVM)[8]等合適的方法建立統(tǒng)計(jì)預(yù)測(cè)模型,針對(duì)SVM 等算法尋優(yōu)的問(wèn)題,通常采用優(yōu)化算法進(jìn)行解決。雞群優(yōu)化算法(CSO)是一種新型仿生學(xué)全局優(yōu)化算法[9-10],其模擬雞群中的等級(jí)制度進(jìn)行隨機(jī)優(yōu)化,具有收斂速度快、精度高、參數(shù)少等優(yōu)點(diǎn),但由于位置更新方式存在缺陷,容易陷入局部最優(yōu)[11-12]。
本文針對(duì)雞群算法中的不足,改進(jìn)母雞和小雞的位置更新方式,并基于改進(jìn)雞群算法優(yōu)化支持向量機(jī)構(gòu)建光伏發(fā)電系統(tǒng)輸出功率預(yù)測(cè)模型,分析影響光伏發(fā)電系統(tǒng)輸出功率的因素,將影響較大的因素作為模型輸入,通過(guò)與改進(jìn)前的算法和較為流行的粒子群算法進(jìn)行對(duì)比,證明了所提出模型的可行性和準(zhǔn)確性。
設(shè)整個(gè)雞群中共有N只雞,其中公雞的個(gè)數(shù)為Nr,母雞的個(gè)數(shù)為Nh,小雞的個(gè)數(shù)為Nc。不同種類的雞在尋找食物的過(guò)程中位置更新公式不同。公雞的位置更新公式如式(1):
式中:xij(t+1)表示在t+1 次覓食位置更新后,第i個(gè)公雞在第j維的位置;randn(0,δ2)表示均值為0,標(biāo)準(zhǔn)差為δ2的高斯分布。其中,δ2是由公雞的適應(yīng)度決定的,具體參照式(2):
式中:d∈[1,Nr]且d≠i;fi表示子群中公雞的適應(yīng)度;fd表示其他子群中任一只公雞的適應(yīng)度;θ為一個(gè)很小的常數(shù)。母雞的位置更新公式如式(3):
式中:Rand表示服從[0,1]均勻分布的一個(gè)隨機(jī)數(shù);xr1,j(t)表示母雞所在子群中公雞的位置;xr2,j(t)表示該子群中除小雞外的隨機(jī)一個(gè)個(gè)體的位置,且r1≠r2;K1表示子群第i只母雞對(duì)公雞的跟隨系數(shù);K2表示子群第i只母雞對(duì)子群中適應(yīng)度較強(qiáng)個(gè)體的跟隨系數(shù)。K1和K2具體數(shù)值參考式(4):
式中:fr1表示子群中公雞所在位置的適應(yīng)度;fr2表示該子群中除小雞外的隨機(jī)個(gè)體的適應(yīng)度。小雞的位置更新公式如式(5):
式中:FLi為[0,2]之間的均勻分布的平均數(shù),表示相應(yīng)子群中與小雞具有母子關(guān)系的母雞位置。
雞群算法中母雞和小雞位置更新靈活度不夠,且兩者之間不存在聯(lián)系,都是跟隨公雞進(jìn)行尋找食物,這樣容易陷入局部最優(yōu)。針對(duì)這些缺點(diǎn),更改了母雞和小雞的位置更新方式,并增加兩者之間的聯(lián)系,增強(qiáng)算法的尋優(yōu)能力。
為了使母雞具有繼承先前位置的能力,提高整個(gè)算法的收斂速度和精度,在母雞的位置更新公式中加入了動(dòng)態(tài)慣性權(quán)重ω,使母雞在自我學(xué)習(xí)時(shí)可以按照動(dòng)態(tài)慣性策略隨機(jī)進(jìn)行調(diào)整,最終實(shí)現(xiàn)靈活覓食。動(dòng)態(tài)慣性權(quán)重ω的更新公式為:
式中:t為當(dāng)前迭代次數(shù);M為最大迭代次數(shù);ωmax是慣性權(quán)重的最大值;ωmin是慣性權(quán)重的最小值。改進(jìn)的母雞位置更新公式如式(7)所示:
為了避免帶領(lǐng)小雞的母雞陷入局部最優(yōu),使得小雞也陷入局部最優(yōu),而使整個(gè)算法陷入局部最優(yōu),應(yīng)當(dāng)使小雞在覓食時(shí)主動(dòng)向全局最優(yōu)個(gè)體學(xué)習(xí),在小雞的位置更新公式中不但利用動(dòng)態(tài)慣性權(quán)重ω聯(lián)系母雞的位置,還引入自適應(yīng)學(xué)習(xí)因子P[式(8)]。改進(jìn)的小雞位置更新公式如式(9)所示。
SVM 廣泛應(yīng)用于回歸估計(jì)等場(chǎng)合中。懲罰參數(shù)c作為SVM 的一個(gè)重要參數(shù),用來(lái)控制錯(cuò)分樣本懲罰程度,防止出現(xiàn)過(guò)學(xué)習(xí)或者欠學(xué)習(xí)的問(wèn)題,在實(shí)際回歸問(wèn)題中,懲罰因子c越大,表明對(duì)數(shù)據(jù)的擬合程度越高,相反的泛化能力會(huì)降低;核函數(shù)參數(shù)g用來(lái)控制輸入數(shù)據(jù)在高維特征空間中的分布情況。
采用改進(jìn)雞群算法來(lái)實(shí)現(xiàn)對(duì)SVM 參數(shù)的選擇,算法把SVM 參數(shù)當(dāng)做待優(yōu)化的一組解,將最小二乘支持向量機(jī)模型預(yù)測(cè)值與真實(shí)值的方差作為三種算法適應(yīng)度函數(shù)。把得到的最優(yōu)參數(shù)c和g帶入到SVM 模型中進(jìn)行實(shí)際的回歸預(yù)測(cè)。對(duì)CSO 算法和ICSO 算法參數(shù)進(jìn)行設(shè)置,種群規(guī)模為50,公雞占比為20%,母雞占比為60%,帶小雞的母雞占比為30%,最大迭代次數(shù)為200。本文同時(shí)構(gòu)建了基于粒子群算法優(yōu)化支持向量機(jī)(PSO-SVM)和基于標(biāo)準(zhǔn)雞群算法優(yōu)化支持向量(CSO-SVM)的預(yù)測(cè)模型進(jìn)行對(duì)比預(yù)測(cè)。對(duì)PSO 算法中的參數(shù)進(jìn)行設(shè)置,c1=c2=1.5,種群規(guī)模為50,粒子飛行的最大速度和最小速度分別為50 和-50,粒子位置的最大值和最小值分別為500 和-500。
所用數(shù)據(jù)來(lái)自DKASC (The Desert Knowledge Australia Solar Centre)。選取預(yù)測(cè)地區(qū)2018 年3~5 月份的光伏發(fā)電系統(tǒng)輸出功率歷史數(shù)據(jù)和相關(guān)氣象因素歷史數(shù)據(jù)作為研究對(duì)象,這3 個(gè)月屬于當(dāng)?shù)氐那锛?,所選取的數(shù)據(jù)按照每隔半個(gè)小時(shí)采樣一次的頻率進(jìn)行采集,采集時(shí)間范圍為平穩(wěn)天氣時(shí)的8:00 至17:30,突變天氣時(shí)的8:00 至16:30,由于其余時(shí)間段的輸出功率值較低,因此不計(jì)入研究范圍內(nèi)。選取5 月16 日和5 月31 日作為待預(yù)測(cè)日期,預(yù)測(cè)間隔為半個(gè)小時(shí),這兩天的天氣類型分別為平穩(wěn)天氣和突變天氣,歷史日期根據(jù)待預(yù)測(cè)日所屬的天氣類型也被劃分成兩類。
為了更為直觀地表示光伏發(fā)電系統(tǒng)輸出功率與各因素的相關(guān)性,決定計(jì)算光伏發(fā)電系統(tǒng)輸出功率和各個(gè)因素之間的皮爾遜(Pearson)相關(guān)系數(shù),計(jì)算公式為:
根據(jù)2018 年3~5 月的數(shù)據(jù),只考慮光伏發(fā)電系統(tǒng)工作時(shí)間,通過(guò)計(jì)算得到輻射強(qiáng)度、溫度、相對(duì)濕度、風(fēng)速這幾個(gè)因素與光伏發(fā)電系統(tǒng)輸出功率的相關(guān)系數(shù),如表1 所示。
表1 各因素與光伏發(fā)電系統(tǒng)輸出功率的相關(guān)系數(shù)
根據(jù)所得結(jié)果,將太陽(yáng)輻射強(qiáng)度、大氣溫度和相對(duì)濕度這三個(gè)與光伏發(fā)電系統(tǒng)輸出功率具有較強(qiáng)相關(guān)性的因素確定為模型輸入。
在預(yù)測(cè)輸出功率的過(guò)程中,為了有效提高預(yù)測(cè)精度、降低預(yù)測(cè)過(guò)程的復(fù)雜度,對(duì)預(yù)測(cè)模型的訓(xùn)練樣本進(jìn)行合理選擇尤為重要。在分析了影響輸出功率因素的基礎(chǔ)上,選取與待預(yù)測(cè)日具有相同氣象因素的日期作為訓(xùn)練樣本。具體確定過(guò)程包括3 步。
(1)將待預(yù)測(cè)日期和歷史日期的太陽(yáng)光照強(qiáng)度、大氣溫度和相對(duì)濕度分別構(gòu)成兩組向量Xi=[Xi(1),Xi(2),Xi(3)],Yk=[Yk(1),Yk(2),Yk(3)],其中,Xi、Yk分別表示第i個(gè)待預(yù)測(cè)日和第k個(gè)歷史日期。
(2)計(jì)算待預(yù)測(cè)日和歷史日期之間各個(gè)氣象影響因素的關(guān)聯(lián)系數(shù),每個(gè)因素的關(guān)聯(lián)系數(shù)計(jì)算公式為:
式中:λ為常數(shù),一般取為0.5。
(3)將各個(gè)氣象影響因素的關(guān)聯(lián)系數(shù)相加,得到待預(yù)測(cè)日期和各個(gè)歷史日期的關(guān)聯(lián)度,如式(12)所示:
將最終得到的關(guān)聯(lián)度按照大小進(jìn)行排序,并在關(guān)聯(lián)度大于0.8 的值中選取關(guān)聯(lián)度最大的五個(gè)歷史日期作為最終預(yù)測(cè)模型所需要的訓(xùn)練樣本。表2 為在平穩(wěn)天氣和突變天氣下最終確定的訓(xùn)練樣本。
表2 不同天氣類型下的訓(xùn)練樣本
預(yù)測(cè)模型的每一個(gè)輸入變量單位不同,具有不同的數(shù)量級(jí)和量綱,為了消除數(shù)據(jù)間的差異對(duì)預(yù)測(cè)結(jié)果造成的影響,對(duì)各輸入變量數(shù)據(jù)進(jìn)行歸一化處理,使得數(shù)據(jù)都在[0,1]范圍內(nèi)。采用式(13)進(jìn)行歸一化:
式中:x表示當(dāng)前時(shí)刻輸出功率值;xmax、xmin分別表示輸出功率的最大值與最小值。
為了進(jìn)一步驗(yàn)證提出的預(yù)測(cè)模型的合理性,需要對(duì)預(yù)測(cè)模型所得到的預(yù)測(cè)結(jié)果進(jìn)行定量評(píng)估。采用平均絕對(duì)百分比誤差(MAPE)和均方誤差(MSE)作為評(píng)估指標(biāo),如式(14)~(15)所示:
式中:I為測(cè)試樣本集的樣本個(gè)數(shù);ai為測(cè)試樣本集中第i個(gè)樣本實(shí)際輸出功率值;pi為測(cè)試樣本集中第i個(gè)樣本的預(yù)測(cè)值。上述兩個(gè)評(píng)估指標(biāo)反映的是待預(yù)測(cè)日當(dāng)天預(yù)測(cè)結(jié)果的平均誤差情況,為了能夠?qū)λA(yù)測(cè)的每一個(gè)時(shí)刻的預(yù)測(cè)結(jié)果進(jìn)行準(zhǔn)確評(píng)價(jià),這里引入相對(duì)誤差(RE)的概念,如式(16)所示:
分別構(gòu)建基于粒子群算法優(yōu)化支持向量機(jī)、基于雞群算法優(yōu)化支持向量機(jī)、基于改進(jìn)雞群優(yōu)化支持向量機(jī)(ICSOSVM)的預(yù)測(cè)模型進(jìn)行對(duì)比預(yù)測(cè),各預(yù)測(cè)模型不同天氣類型下輸出功率預(yù)測(cè)結(jié)果如圖1~2所示,誤差評(píng)估結(jié)果如表3所示。
圖1 平穩(wěn)天氣時(shí)的輸出功率預(yù)測(cè)結(jié)果
表3 誤差評(píng)估結(jié)果表
由圖1 可知,光伏發(fā)電功率變化緩慢的情況下,ICSOSVM 模型預(yù)測(cè)的曲線在前半段(約8:00 至11:00)和后半段(約13:00 至17:00)比另外兩條曲線更加接近真實(shí)值的曲線,在11:00 至13:00 預(yù)測(cè)值比真實(shí)值低,只在17:30 時(shí)與CSO-SVM相同,出現(xiàn)一次誤差較大的情況,整體預(yù)測(cè)效果較好。由圖2可知,在突變天氣時(shí),光伏發(fā)電功率波動(dòng)劇烈的情況下,在大多數(shù)時(shí)刻,ICSO-SVM 模型比CSO-SVM 和PSO-SVM 兩種模型預(yù)測(cè)結(jié)果更加接近真實(shí)值,CSO-SVM 和PSO-SVM 兩種模型在一些時(shí)間點(diǎn)(8:00 至10:00)甚至出現(xiàn)了較大偏差,而ICSO-SVM 沒(méi)有出現(xiàn)這種情況。
圖2 突變天氣時(shí)的輸出功率預(yù)測(cè)結(jié)果
由表3 可知,在平穩(wěn)天氣和突變天氣時(shí),基于ICSO-SVM預(yù)測(cè)模型得到的光伏發(fā)電系統(tǒng)輸出功率預(yù)測(cè)結(jié)果的平均MAPE和MSE值分別為8.632%和0.041,比基于CSO-SVM 得到的預(yù)測(cè)結(jié)果的平均MAPE和MSE值分別降低了5.547%和0.080,比基于PSO-SVM 得到的預(yù)測(cè)結(jié)果的平均MAPE和MSE值分別降低了8.255%和0.202,ICSO-SVM 具有更高的預(yù)測(cè)精度。
對(duì)所預(yù)測(cè)的每個(gè)時(shí)刻的預(yù)測(cè)結(jié)果進(jìn)行評(píng)價(jià),圖3~4 為不同天氣類型下三種預(yù)測(cè)模型的相對(duì)誤差曲線,在平穩(wěn)天氣時(shí),CSO-SVM 和PSO-SVM 模型相對(duì)誤差曲線會(huì)出現(xiàn)忽高忽低的情況,而ICSO-SVM 模型相對(duì)誤差更平穩(wěn),幾乎一直處于誤差較低的水平,即使在突變天氣時(shí),ICSO-SVM 模型也沒(méi)有出現(xiàn)另外兩種模型在個(gè)別時(shí)間點(diǎn)誤差較大的情況,誤差曲線相對(duì)更加平穩(wěn)。
圖3 平穩(wěn)天氣時(shí)的相對(duì)誤差曲線
圖4 突變天氣時(shí)的相對(duì)誤差曲線
綜上所述,在相同數(shù)據(jù)復(fù)雜度上,ICSO-SVM 模型在平穩(wěn)天氣和突變天氣時(shí)預(yù)測(cè)結(jié)果的平均誤差均低于另外兩種模型;從預(yù)測(cè)的每一個(gè)時(shí)刻來(lái)看,ICSO-SVM 模型相對(duì)誤差也較低,即ICSO-SVM 模型具有更好的算法性能,并且與PSOSVM 模型相比更加優(yōu)異,能夠有效降低預(yù)測(cè)誤差。
本文構(gòu)建了一種基于改進(jìn)雞群算法優(yōu)化支持向量機(jī)的預(yù)測(cè)模型,在雞群算法中加入動(dòng)態(tài)慣性權(quán)重和自適應(yīng)學(xué)習(xí)因子,對(duì)光伏系統(tǒng)發(fā)電功率進(jìn)行了預(yù)測(cè)。光伏系統(tǒng)短期發(fā)電功率預(yù)測(cè)模型的輸入確定為對(duì)輸出功率影響較大的太陽(yáng)輻射強(qiáng)度、大氣溫度、相對(duì)濕度后,對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)處理,建立多種預(yù)測(cè)模型并且預(yù)測(cè)了平穩(wěn)天氣和突變天氣時(shí)的光伏發(fā)電系統(tǒng)輸出功率,根據(jù)預(yù)測(cè)結(jié)果得出了實(shí)際輸出功率和預(yù)測(cè)功率的曲線對(duì)比圖,并計(jì)算出均方誤差、百分比誤差和相對(duì)誤差。實(shí)例分析表明本文建立的預(yù)測(cè)模型在不同天氣類型下都能較好地預(yù)測(cè)光伏發(fā)電功率,且誤差曲線較為穩(wěn)定。