朱健安,魏云冰,朱鵬杰,蔣成成,朱成名
(1.上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620;2.鄭州輕工業(yè)大學(xué) 建筑環(huán)境工程學(xué)院,河南 鄭州 450000)
近年來,隨著人民生活質(zhì)量不斷提高和宏觀經(jīng)濟(jì)的發(fā)展,人們對電能的需求也越來越大,很多地區(qū)的年度負(fù)荷都大幅增長。為了更好地保證電力供需平衡和電網(wǎng)的安全運(yùn)行,中長期負(fù)荷預(yù)測顯得尤為重要。中長期負(fù)荷預(yù)測方法研究可分為傳統(tǒng)的經(jīng)典預(yù)測算法和現(xiàn)代預(yù)測算法[1]。傳統(tǒng)的經(jīng)典預(yù)測算法以時間序列分析法為代表,例如回歸分析法、趨勢外推法、灰色預(yù)測法等。文獻(xiàn)[2]采用時間序列分析法對負(fù)荷進(jìn)行預(yù)測,取得了不錯的效果。雖然傳統(tǒng)的時間序列法運(yùn)算量小且運(yùn)算速度快,但其不具備自適應(yīng)學(xué)習(xí)能力,預(yù)測誤差也比較大。文獻(xiàn)[3~5]采用灰色模型進(jìn)行預(yù)測。傳統(tǒng)灰色模型對數(shù)據(jù)數(shù)量要求不高,但對數(shù)據(jù)質(zhì)量要求比較高,因此對遞增式數(shù)據(jù)預(yù)測的效果更好。近年來,隨著人工智能技術(shù)的興起,出現(xiàn)了以神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、小波分析為主的現(xiàn)代預(yù)測算法。文獻(xiàn)[6~9]采用神經(jīng)網(wǎng)絡(luò)提高了負(fù)荷預(yù)測的精度,但神經(jīng)網(wǎng)絡(luò)算法需要大量的數(shù)據(jù),也較容易陷入局部最優(yōu)。文獻(xiàn)[10~13]通過支持向量機(jī)算法對負(fù)荷進(jìn)行預(yù)測,取得了一定的效果,但該方法對于多分類問題仍有局限性。
本文提出了一種改進(jìn)粒子群優(yōu)化的灰色傅里葉殘差修正模型。首先對原始數(shù)據(jù)進(jìn)行三點平滑法的預(yù)處理,減弱數(shù)據(jù)中異常值對預(yù)測的影響?;疑P陀行Ы鉀Q了原始數(shù)據(jù)不足的問題。然后通過改進(jìn)粒子群算法對灰色模型中的參數(shù)適當(dāng)優(yōu)化提高預(yù)測精度。最后,通過傅里葉變換對殘差的修正進(jìn)一步提高了預(yù)測精度,并取得了理想的預(yù)測效果。
粒子群算法(Particle Swarm Optimization,PSO)是一種智能群體全局最優(yōu)化的算法。PSO算法來源于鳥類群體捕食行為的研究,于1995年被首次提出。群體里的每個個體實時交流共享發(fā)現(xiàn)食物的位置,即為問題的最優(yōu)解。其中任意一個個體就是問題的一個隨機(jī)解,本文稱其為一個“粒子”。不同問題具有不同的適應(yīng)值函數(shù)(目標(biāo)函數(shù)),每個粒子都有其自身的適應(yīng)值,且適應(yīng)值的大小由問題的適應(yīng)值函數(shù)決定。每一個粒子也都有其自身所在的位置和飛行速度以及飛行方向。每個粒子會按照一定的公式不斷更新自身的位置和速度(矢量),直至滿足最終的終止條件。每次迭代過程中,每一個粒子都有一個其自身經(jīng)過的最佳位置pbest和所有粒子經(jīng)過的最佳位置gbest。最終經(jīng)過比較找到位置最佳的那個粒子即為問題的全局最優(yōu)解。具體建模過程如下文所述。
PSO優(yōu)化算法中,首先初始化一群粒子的位置與速度。假設(shè)粒子群的初始群體大小為N,在S維空間中第i個粒子的速度和位置分別如式(1)和式(2)所示。
Di=[di1,di2,…,diS]
(1)
Vi=[vi1,vi2,…,viS]
(2)
通過粒子的適應(yīng)值大小判斷,來確定某一時刻每一個粒子所經(jīng)過的最佳位置pbest和所有粒子經(jīng)過的最佳位置gbest,分別表示為Oi(個體極值)和Og(全局極值),如式(3)和式(4)所示。
Oi=[oi1,oi2,…,oiS]
(3)
Og=[og1,og2,…,ogS]
(4)
設(shè)目標(biāo)函數(shù)為f(x),故粒子i的最佳位置為
(5)
全部粒子所經(jīng)過的全局最佳位置為
(6)
PSO算法每迭代一次,粒子的位置和速度都根據(jù)式(7)和式(8)更新一次,直到滿足終止條件為止。
Vij(t+1)=ω(t)Vij(t)+c1rand(·)(Oij-Dij(t))+
c2rand(·)(Ogj-Dij(t))
(7)
Dij(t+1)=Dij(t)+Vij(t+1),
i=1,2,…,N;j=1,2,…,S
(8)
式(7)和式(8)中的w為慣性因子;rand()為(0,1)之間的隨機(jī)數(shù);c1、c2為取值(0,2)之間的學(xué)習(xí)因子;Dij(t)為第i粒子第t次迭代的位置。
PSO算法由于其具有概念簡單、參數(shù)較少、易于實現(xiàn)的特點,在預(yù)測中被廣泛應(yīng)用。但PSO算法的收斂速度不佳且容易陷入局部最優(yōu)。為了解決這個問題,本文提出了改進(jìn)的PSO算法,即RWPSO。如式(9)和式(10)所示,改進(jìn)的PSO算法將慣性因子在一定范圍內(nèi)隨機(jī)取值,且去掉隨機(jī)參數(shù)rand(·)。RWPSO算法降低了粒子的收斂速度,保持了粒子活性和算法的多樣性。
Vij(t+1)=ω(t)Vij(t)+c1(Oij-Dij(t))+
c2(Ogj-Dij(t))
(9)
c1+c2>2(ω+1)
(10)
w(t)為慣性因子,是一定范圍內(nèi)的隨機(jī)值,具體如式(9)所示。這樣粒子速度既可以收斂又可以發(fā)散,保證了種群的多樣性。
年度負(fù)荷原始數(shù)據(jù)具有一定的離散性,在原始數(shù)據(jù)進(jìn)行灰色預(yù)測之前對數(shù)據(jù)進(jìn)行一定的平滑處理可以有效降低噪聲對原始數(shù)據(jù)的干擾,并增加原始數(shù)據(jù)的魯棒性[14-18]。本文采用三點平滑法對數(shù)據(jù)進(jìn)行預(yù)處理,其具體過程如下文所述。
設(shè)原始數(shù)據(jù)為X(0)=(x(0)(1),x(0)(2),…,
x(0)(n)),其中,x(0)(k)≥0,k=1,2,…,n。
(11)
其中,m=2,3,…,n-1。
兩端數(shù)據(jù)單獨處理為
(12)
(13)
原始數(shù)據(jù)經(jīng)過三點平滑法的處理,降低了隨機(jī)因素的影響。
灰色系統(tǒng)于1982年提出,該系統(tǒng)為部分信息已知、部分信息未知的系統(tǒng)?;疑到y(tǒng)通過已知信息建立微分方程模型,該微分模型統(tǒng)稱為灰色模型,其建模過程如下文所述。
設(shè)原始數(shù)據(jù)為X(0)=(x(0)(1),x(0)(2),…,
x(0)(n)),其中x(0)(k)≥0,k=1,2,…,n;X(0)一次累加序列形成X(1),X(1)=(x(1)(1),x(1)(2),… ,x(1)(n)),其中
(14)
其中,k=1,2,…,n。
對新序列X(1)建立微分方程
(15)
式中,a為發(fā)展系數(shù),反映x(1)和x(0)的發(fā)展態(tài)勢;u為內(nèi)生控制灰數(shù)(亦稱灰色作用量)。用最小二乘法確定參數(shù)a和u
[a,u]T=(BTB-1)BTY
(16)
其中,Y和B分別為
(17)
(18)
解微分方程得
(19)
其中,k=1,2,…,n。
對x^(0)(k+1)在經(jīng)過累減運(yùn)算,即
(20)
其中,k=1,2,…,n。
可得到原始負(fù)荷序列x(0)的預(yù)測值為
(21)
預(yù)測值與實際值的相對誤差為式(22)。
(22)
改進(jìn)粒子群算法通過優(yōu)化式(15)中發(fā)展系數(shù)a的最佳值來對灰色模型進(jìn)行改進(jìn),以提高預(yù)測的精度。在該算法中,每個粒子代表了模型中的發(fā)展系數(shù)a的一個候選解an。粒子根據(jù)種群信息和個體信息在搜索空間中更新自身飛行速度和位置。在數(shù)次迭代后,最終找到一個發(fā)展系數(shù)a的最佳值,其流程如圖1所示。
圖1 改進(jìn)粒子群優(yōu)化的灰色模型流程圖Figure 1.Flow chart of the grey model of RWPSO
具體步驟如下:
步驟1輸入原始負(fù)荷序列到灰色模型中,為預(yù)測做準(zhǔn)備;
步驟2初始化。隨機(jī)產(chǎn)生N個粒子,對粒子的初始位置及初始速度進(jìn)行設(shè)定;
Di=[ai,ui],i=1,2,…,N
(23)
Vi=[vi1,vi2],i=1,2,…,N
(24)
步驟3適應(yīng)值計算。利用不同的a求出不同的預(yù)測值,代入目標(biāo)函數(shù)式(25)中求出適應(yīng)值;
(25)
步驟4根據(jù)位置計算式式(7)和速度計算式式(9)對粒子的位置和速度不斷更新;
步驟5判斷是否滿足迭代的終止條件(是否大于最大迭代次數(shù)M)。若滿足則輸出最終的gbest和pbest,得到參數(shù)a的最佳值;否則返回步驟3;
步驟6將參數(shù)a的最佳值帶入灰色模型求出預(yù)測值。
在電力系統(tǒng)中長期負(fù)荷預(yù)測的過程中,原始負(fù)荷數(shù)據(jù)往往有一定的離散性,這時用優(yōu)化的灰色模型就會產(chǎn)生較大的誤差。為了解決這個問題,本文提出了用傅里葉殘差修正的方法對誤差進(jìn)行修正。
傅里葉殘差修正是通過傅里葉變換對灰色模型預(yù)測數(shù)據(jù)的誤差進(jìn)行修正。傅里葉級數(shù)是一種有規(guī)律的周期性變化函數(shù),具有消除隨機(jī)噪聲的作用。利用傅里葉變換對誤差進(jìn)行修正,可以有效削弱年度負(fù)荷原始數(shù)據(jù)中的噪聲,進(jìn)一步提高灰色模型在中長期負(fù)荷預(yù)測中的精度。具體修正過程如下:
(2)根據(jù)灰色模型的預(yù)測值和原始數(shù)據(jù)求出誤差序列ε(k)=[ε(1),ε(2),…,ε(n)] ;
(3)將誤差ε(k)用傅里葉變換表示為
(26)
(27)
(28)
k=2,3,…,n
(29)
式中,T=n-1;N=[(n-1)/2-1];c0、cn、bn(n=1,2,…,N)為常數(shù),又稱其為傅里葉系數(shù)。將其整理為矩陣形式
E≈PC
(30)
其中
(31)
式中,E=[ε(1),ε(2),…,ε(n)]T為誤差向量;C=[c0,c1,b1,…,cN,bN]T為傅里葉系數(shù)向量。由最小二乘法可得
C?(PTP)-1PTE
(32)
(4)經(jīng)過傅里葉修正的電力系統(tǒng)負(fù)荷預(yù)測為
(33)
改進(jìn)粒子群優(yōu)化的灰色傅里葉殘差修正電力負(fù)荷預(yù)測模型(FR-RWPSO-GM(1.1))的具體流程如圖2所示。
圖2 粒子群優(yōu)化的灰色-傅里葉殘差修正預(yù)測模型Figure 2.Gray-Fourier residual correction prediction model of PSO
該模型對中長期負(fù)荷預(yù)測的具體步驟如下:
步驟1初始化RWPSO算法中的參數(shù)(粒子數(shù)量、粒子的位置、速度和適應(yīng)值),并確定最大迭代次數(shù);
步驟2用三點平滑法對原始數(shù)據(jù)進(jìn)行預(yù)處理;
步驟3將預(yù)處理過后的數(shù)據(jù)輸入GM(1.1)進(jìn)行預(yù)測,并通過RWPSO算法求出最優(yōu)的發(fā)展系數(shù)a;
以浙江省某地區(qū)2001~2018年的年度負(fù)荷為例,將2001~2012年這12年的實際年度負(fù)荷作為基礎(chǔ)數(shù)據(jù)對2013~2018年的負(fù)荷數(shù)據(jù)進(jìn)行預(yù)測。原始負(fù)荷數(shù)據(jù)如表2所示。
表1 浙江某地區(qū)2001~2018年原始負(fù)荷數(shù)據(jù)Table 1. 2001~2018 raw load data in a certain area of Zhejiang
圖3 2001~2018年浙江某地區(qū)原始負(fù)荷Figure 3.The original load of a certain area in Zhejiang from 2001 to 2018
用三點平滑法對前12年原始負(fù)荷數(shù)據(jù)進(jìn)行預(yù)處理,得到的數(shù)據(jù)如表2所示。
表2 預(yù)處理后的負(fù)荷數(shù)據(jù)Table 2. Load data after preprocessing
由圖4可知,經(jīng)過三點平滑法處理后的數(shù)據(jù)更加接近于線性關(guān)系。
圖4 2001~2018年浙江某地區(qū)原始負(fù)荷及光滑處理后的數(shù)據(jù)Figure 4.The original load and smoothed data of a certain area in Zhejiang from 2001 to 2018
下面分別用灰色模型、數(shù)據(jù)平滑處理的灰色模型、數(shù)據(jù)平滑處理的粒子群優(yōu)化的灰色模型、數(shù)據(jù)平滑處理傅里葉誤差修正的粒子群優(yōu)化的灰色模型對2013~2018年6年的年度負(fù)荷數(shù)據(jù)進(jìn)行預(yù)測。在粒子群算法中取粒子數(shù)N=50,學(xué)習(xí)因子c1、c2取2,迭代次數(shù)M取200。預(yù)測結(jié)果如表3所示。
表3 2012~2018年浙江某地區(qū)年度負(fù)荷預(yù)測結(jié)果Table 3. Annual load forecast results of a certain area in Zhejiang from 2012 to 2018
圖5 2012~2018年浙江某地區(qū)年度負(fù)荷預(yù)測結(jié)果Figure 5.Annual load forecast results of a certain area in Zhejiang from 2012 to 2018
由表3可知,粒子群優(yōu)化的灰色傅里葉殘差修正的中長期負(fù)荷預(yù)測模型的預(yù)測值,比灰色模型、數(shù)據(jù)平滑處理的灰色模型、數(shù)據(jù)平滑處理的粒子群優(yōu)化的灰色模型更接近預(yù)測值,預(yù)測精度更高。
本文通過粒子群優(yōu)化灰色傅里葉殘差修正組合模型有效提高了中長期負(fù)荷預(yù)測的精度。原始數(shù)據(jù)經(jīng)過三點平滑法的預(yù)處理,削弱了異常值對預(yù)測的影響?;疑P屯ㄟ^粒子群算法進(jìn)行參數(shù)優(yōu)化,提高了灰色模型的預(yù)測精度,但預(yù)測精度仍不理想。采用傅里葉變換對誤差進(jìn)行修正,有效提高了預(yù)測精度。
該組合模型解決了文獻(xiàn)[2~5]中時間序列分析法、灰色模型預(yù)測精度不足的問題,改善了文獻(xiàn)[6]協(xié)方差穩(wěn)健模糊線性回歸分析法在處理縱向型數(shù)據(jù)時不夠理想的問題。對比于文獻(xiàn)[7~10]中的神經(jīng)網(wǎng)絡(luò)算法,粒子群優(yōu)化灰色傅里葉殘差修正組合模型不需要大量數(shù)據(jù)且不容易陷入局部最優(yōu)。本文采用該模型對浙江省某地區(qū)的年度負(fù)荷進(jìn)行預(yù)測,并與傳統(tǒng)的灰色模型以及優(yōu)化后的灰色模型進(jìn)行比較。預(yù)測結(jié)果表明,該模型對中長期負(fù)荷預(yù)測效果較為理想,具有一定的有效性和可行性。