陳昱吉,成貴學
(上海電力大學計算機科學技術(shù)學院,上海 201306)
短期負荷預測為未來數(shù)天或一天的生產(chǎn)計劃和機組安排提供重要的參考依據(jù),也是電力系統(tǒng)安全預警和市場交易的重要指標[1]。短期負荷預測的方法主要有神經(jīng)網(wǎng)絡、隨機森林和支持向量回歸等。神經(jīng)網(wǎng)絡[2-3]是常見的短期負荷預測方法,當樣本容量較少時,依賴大量歷史負荷數(shù)據(jù)訓練的神經(jīng)網(wǎng)絡模型已不是最優(yōu)解;文獻[4]采用隨機森林模型進行短期負荷預測,但易出現(xiàn)過擬合現(xiàn)象,降低模型的泛化能力;文獻[5]使用的支持向量回歸模型的目標函數(shù)是根據(jù)結(jié)構(gòu)風險最小化而建立的,從而降低了模型對數(shù)據(jù)規(guī)模的需求,可以有效地處理負荷數(shù)據(jù)。支持向量回歸模型是參數(shù)依賴型模型,模型參數(shù)的選取會直接影響模型的預測精度和泛化能力。群智能算法在參數(shù)優(yōu)化方面具有良好的并行處理能力,在支持向量機方面取得很多重要的成果[6]。文獻[7,8]在負荷預測方面分別利用GOA算法和IGA算法優(yōu)化選取SVR參數(shù)的方法,有效提升了短期負荷預測的精度。
為進一步提高短期負荷預測精度和降低算法的運行時間,文中提出一種基于改進郊狼優(yōu)化算法的支持向量回歸模型,通過對郊狼的成長方式進行改進并使用組外貪心選擇策略改進郊狼優(yōu)化算法的成長和適應度更新過程,提高了基本郊狼優(yōu)化算法的收斂速度和尋優(yōu)精度,可以得到更優(yōu)的SVR模型的懲罰參數(shù)C和核參數(shù)gamma,并用于建立ICOA-SVR模型,從而實現(xiàn)短期電力負荷預測。
郊狼優(yōu)化算法由Pierezan等人[9]等人于2018年提出,通過模擬北美郊狼出生、成長、死亡以及離群與加入新群組等活動來更新郊狼的社會適應能力并對郊狼個體進行優(yōu)勝劣汰,從而確定社會適應能力最佳郊狼的社會狀態(tài),即問題的最優(yōu)解。郊狼優(yōu)化算法先將整個種群隨機分成Np個組,每個組有Nc只郊狼。現(xiàn)以第p組的第c只郊狼為對象進行說明郊狼優(yōu)化算法的過程。
2.1.1 郊狼的成長
郊狼的成長是其社會狀態(tài)在組內(nèi)最優(yōu)郊狼的引導與組內(nèi)文化趨勢的共同作用下進行更新的過程。郊狼的成長可以表示為
(1)
(3)
(4)
式中Op表示對p組內(nèi)郊狼按照社會狀態(tài)從小到大順序的排序的中位數(shù)。
2.1.2 郊狼的出生和死亡
在每組郊狼成長之后,都伴隨著郊狼個體的出生和死亡。p組新生個體pup的社會狀態(tài)受到父母郊狼的遺傳作用和環(huán)境變異的共同影響。pup的第j維社會狀態(tài)計算公式為
(5)
式中soca和socb代表新生個體pup的父母郊狼的社會狀態(tài);Rj是第j維社會狀態(tài)變量范圍內(nèi)的隨機數(shù)。發(fā)散概率Ps和關(guān)聯(lián)概率Pa均為問題維度D的函數(shù),其表達式如下
Ps=1/D
(6)
Pa=(1-1/D)/2
(7)
郊狼死亡個體的確定是通過判斷新生郊狼pup是否是組內(nèi)社會適應能力最差的郊狼來決定。當組內(nèi)其它郊狼的社會適應能力比pup差時,組內(nèi)社會適應能力最差的郊狼死亡,否則pup死亡。
2.1.3 郊狼的離群和加入新群組
組中的每只郊狼都有一定概率離開這個群組并加入新群組,這種離開原群組并加入新群組的行為概率可以通過下式進行計算
Pe=0.005Nc2
(8)
郊狼從原組中離開以后不會單獨存在,而是加入一個新組,這種行為可以增加郊狼群體的組間交流,從而有利于提高算法的全局尋優(yōu)能力。
郊狼優(yōu)化算法是一種兼顧全局探索和局部開采平衡性的新型群智能算法,但在一些復雜問題上其尋優(yōu)精度、收斂性能會受限于自身模式的影響,其在穩(wěn)定性方面也存在一定不足。郊狼優(yōu)化算法的缺陷主要來自算法的以下三個方面:在郊狼成長過程中,郊狼成長缺乏高效的成長因子,從而導致郊狼成長過程緩慢;在整個算法過程中,成長因子的權(quán)重系數(shù)配置不合理,影響算法的搜索和收斂速度;在郊狼成長后,在較優(yōu)郊狼個體的選擇上使用組內(nèi)貪心選擇策略增加了算法的運行時間并影響其穩(wěn)定性。根據(jù)以上缺陷,針對郊狼個體的成長方式和郊狼成長后的選擇過程進行算法改進。
2.2.1 改進郊狼的成長方式
文獻[10]提出利用最優(yōu)郊狼引導和改進最差郊狼的成長方式,提高了全局尋優(yōu)能力和種群多樣性;文獻[11]在郊狼成長過程中引入反時限衰減權(quán)重,從而保證算法全局開發(fā)能力和局部開采能力的平衡。文中針對基本郊狼算法中郊狼成長因子牽引力不足以及成長因子之間的權(quán)重系數(shù)配置不合理等問題,在郊狼的成長過程中引入全局最優(yōu)郊狼因子、組間文化趨勢以及自適應權(quán)重來改變郊狼的成長速度和方向。
在基本郊狼優(yōu)化算法中,根據(jù)式(1)-(3)可知,郊狼個體的成長主要依賴組內(nèi)最優(yōu)郊狼和組內(nèi)文化趨勢的引導,從而導致算法易陷入局部最優(yōu)。為避免算法陷入局部最優(yōu)并提升全局搜索能力,在此基礎(chǔ)上引入全局最優(yōu)郊狼因子δ3來引導郊狼成長
(9)
為提升算法的穩(wěn)定性和保持算法全局探索和局部開采能力的平衡性,仿照組內(nèi)文化趨勢,引入組間文化趨勢。組內(nèi)文化趨勢是組內(nèi)郊狼社會狀態(tài)按從小到大順序排序的中位數(shù),可以避免郊狼成長受到某一個極端個體的影響。組間文化趨勢通過每個組當前最優(yōu)郊狼的社會狀態(tài)的中位數(shù)確定,其具體形式為
(10)
式中A表示各個組的組內(nèi)最優(yōu)郊狼按照社會狀態(tài)從小到大順序排序的中位數(shù)。
為增強郊狼優(yōu)化算法的前期尋優(yōu)能力和后期收斂速度,根據(jù)每種成長因子分別設置不同的權(quán)重。在算法前期,郊狼優(yōu)化算法以全局搜索為主,盡可能擴大搜索范圍,提高候選解的多樣性;而在算法后期,以局部開采為主,盡量縮小范圍,提升局部開采能力,加快算法的收斂速度。因此,在前期對反應全局尋優(yōu)能力的全局郊狼優(yōu)化算法賦予較大的權(quán)重,同時對反應局部開采能力的組內(nèi)文化趨勢和組內(nèi)最優(yōu)郊狼因子賦予較小的權(quán)重。組間文化趨勢在前期搜索過程可以增加種群多樣性,有利于算法搜索廣度的增加,進一步降低算法陷入局部最優(yōu)的可能性并增加算法的穩(wěn)定性;而在算法后期局部收斂過程中,組間文化趨勢反而會對局部收斂過程形成一定干擾,影響算法的收斂速度。因此,組間文化趨勢ex_cult的權(quán)重系數(shù)re可設為
(11)
式中t是當前迭代次數(shù);n是設定的迭代次數(shù)上限;nrand(0,1)表示在[0,1]范圍內(nèi)服從正態(tài)分布隨機數(shù)。結(jié)合上述分析,改進算法中第p組的第c只郊狼的成長公式可以表述為
+(1-t/n)×(r2×δ2+r3×δ3)+re×ex_cult
(12)
2.2.2 組外貪心策略
為保證郊狼優(yōu)化算法可以向最優(yōu)解的方向發(fā)展,需要在每輪迭代后將適應能力較好的個體選擇出來并參與下一輪成長,這種方法稱為靜態(tài)貪心選擇策略(組內(nèi)貪心選擇策略)?;窘祭莾?yōu)化算法中采用組內(nèi)貪心選擇策略進行優(yōu)勝劣汰,即在每個郊狼成長之后,計算其適應度值并與更新前的適應度值進行比較,若更新后的適應度值較高則對郊狼的社會狀態(tài)用新值替換舊值,并將更新后的社會狀態(tài)參與到組內(nèi)其它郊狼的成長過程中。改進算法采用組外貪心選擇策略替代組內(nèi)貪心選擇策略。組外貪心算法是在組內(nèi)所有郊狼都成長之后再與原先的社會適應能力進行比較,并根據(jù)貪心選擇策略來更新郊狼的社會狀態(tài)。組外貪心策略中的更優(yōu)郊狼的社會狀態(tài)不會進入到組內(nèi)其它郊狼的成長過程,提高了算法的穩(wěn)定性和提高了算法的速度。
2.2.3 改進算法的步驟
在基本郊狼優(yōu)化算法的基礎(chǔ)上,通過對郊狼成長方式進行改進并使用組外貪心策略替代組內(nèi)貪心策略,其步驟可以總結(jié)如下:
1) 初始化算法參數(shù)和郊狼的社會狀態(tài)并隨機分組;
2) 組內(nèi)郊狼根據(jù)(12)式進行成長,在組內(nèi)所有郊狼成長之后,通過組外貪心選擇策略進行優(yōu)勝劣汰選擇較優(yōu)郊狼;
3) 確定組內(nèi)最優(yōu)郊狼和全局最優(yōu)郊狼。計算新生郊狼的社會適應能力并確定死亡郊狼;
4) 組內(nèi)郊狼根據(jù)(8)式的概率離開原先群組并加入新群組,進行組間交流;
5) 現(xiàn)有的郊狼的年齡均增加一歲,判斷算法是否滿足收斂精度,若滿足,則輸出當前最優(yōu)郊狼對應的社會狀態(tài);否則,返回步驟2繼續(xù)循環(huán)。
支持向量回歸(support vector regression, SVR)是一種處理回歸預測問題的重要模型,通過映射函數(shù)使用升高維度的方式將非線性問題轉(zhuǎn)化為線性問題,并通過使用核函數(shù)簡化問題的求解運算。
支持向量回歸的目標是實現(xiàn)樣本點到最優(yōu)超平面的距離最小。設樣本集S和線性回歸函數(shù)f(x)如下
S={(xi,yi)},i=1,2,…,n
(13)
f(x)=wTφ(x)+b
(14)
式中xi和yi分別是樣本的輸入、輸出向量;n是樣本容量;w是權(quán)重系數(shù);b是偏差項;φ(x)是低維空間變換到高維空間的映射函數(shù)。
根據(jù)結(jié)構(gòu)風險最小化原則,其目標函數(shù)可以表述為
(15)
式中C為懲罰系數(shù);L是損失函數(shù),L(f(x),y)可以表述為
(16)
其中ε是不敏感損失因子,表示預測值f(x)與實際值y在一定范圍可忽略的最大誤差。引入拉格朗日乘子λi將(15)式對偶化得到
(17)
式中K(xi,xj)是核函數(shù),文中選用RBF核函數(shù)
(18)
根據(jù)KKT條件可以求出偏置項b,SVR的解可以表述為
(19)
SVR是參數(shù)依賴型模型,因此SVR參數(shù)的選取對模型預測效果有很大的影響。文中采用ICOA優(yōu)化算法來選取SVR的懲罰參數(shù)C和RBF核函數(shù)參數(shù)gamma的最優(yōu)值。
ICOA-SVR模型是以支持向量回歸為基礎(chǔ)的預測模型,其負荷預測流程如圖1所示。先將樣本數(shù)據(jù)歸一化后進行k折交叉驗證訓練并建立SVR模型,其模型參數(shù)C和gamma使用ICOA算法優(yōu)化選取,然后利用ICOA-SVR模型對負荷進行預測,最后對預測結(jié)果進行反歸一化并比較模型負荷預測能力。
圖1 ICOA-SVR模型框架
實驗所用的硬件運行環(huán)境為Intel(R) Core(TM) i5-8300H CPU @2.30GHz處理器和16GB RAM的電腦,軟件平臺基于Matlab和LIBSVM工具箱。
文中數(shù)據(jù)集來自第九屆電工杯數(shù)學建模競賽數(shù)據(jù),選用2011年11月2日至12月2日的每日整點負荷數(shù)據(jù)作為訓練集,結(jié)合其對應的氣象數(shù)據(jù)與星期類型,預測2011年12月3日整點負荷數(shù)據(jù)。參考文獻[12]并根據(jù)實際情況,文中使用k折交叉驗證方式訓練樣本,取k次訓練的均方誤差的平均值作為適應度函數(shù)
(20)
ICOA-SVR模型參數(shù)設置如下:懲罰參數(shù)C、核參數(shù)gamma的尋優(yōu)范圍分別為[0.1,100]和[0.01,10]。COA-SVR的參數(shù)設置相同,即組數(shù)Np=5,每組郊狼個數(shù)Nc=6,郊狼種群規(guī)模為30, 最大迭代次數(shù)100。
預測模型的評價指標選用均方根誤差RMSE和平均絕對誤差MAPE,其計算公式如下
(22)
式中N是測試集樣本的數(shù)量;y*和y分別是測試集負荷數(shù)據(jù)的預測值和真實值。
圖2給出了COA與ICOA算法在優(yōu)化SVR模型參數(shù)C和gamma的收斂曲線,通過對比收斂曲線可以看出COA算法在迭代次數(shù)達到100次時仍未完全收斂,而ICOA算法在迭代20多次時就已經(jīng)完全收斂,而且尋優(yōu)精度更高,符合改進預期。通過利用ICOA優(yōu)化得到的懲罰參數(shù)C=40.38和核參數(shù)gamma=2.403建立ICOA-SVR模型進行負荷預測,并與COA-SVR進行比較,其相對絕對誤差和預測結(jié)果如圖3和表1所示,COA-SVR的預測結(jié)果誤差較大,多個時間點的相對絕對誤差高于3%且穩(wěn)定性較差;而ICOA-SVR整體誤差較小且始終保持在3%以下,表明ICOA-SVR的預測精度整體上顯著高于COA-SVR模型。
圖2 COA與ICOA對SVR參數(shù)尋優(yōu)收斂曲線
圖3 預測結(jié)果的相對絕對誤差
表1 ICOA-SVR與COA-SVR的預測結(jié)果對比
為更加直觀地說明ICOA-SVR負荷預測效果和進一步比較ICOA-SVR模型與其它模型的預測結(jié)果,分別如圖4和表2所示。圖4給出了三種模型的預測結(jié)果,可以看出BP神經(jīng)網(wǎng)絡(BPNN)不僅在負荷預測趨勢上與真實值曲線出現(xiàn)多處相反的情況,而且預測值與真實負荷的差異最大;LSTM負荷預測曲線與真實值曲線差異較小,但在4-6h、10-11h等時間段出現(xiàn)與負荷真實值變化趨勢相反的問題;ICOA-SVR模型的預測曲線與真實負荷曲線變化趨勢一致且差異最小。表2給出上述四種預測模型的評價指標,BPNN在預測精度和運行時間方面均表現(xiàn)不佳,COA-SVR模型運行時間最長,ICOA-SVR不僅預測誤差最小而且所需時間最少,表明文中所提改進方法可以有效地降低基本郊狼優(yōu)化算法的運行時間和提高尋優(yōu)精度,驗證了ICOA-SVR對提高負荷預測精度和降低負荷預測時間的有效性。
圖4 預測結(jié)果比較
表2 預測模型的評價指標
為提高短期負荷預測的預測精度和速度,提出一種基于改進郊狼優(yōu)化算法的支持向量回歸預測方法。文中通過改進郊狼的成長方式和使用組外貪心選擇策略對基本COA算法進行改進,并用于SVR模型的參數(shù)選擇,利用選取的SVR參數(shù)建立ICOA-SVR模型用于負荷預測,經(jīng)算例分析表明,所提模型在負荷預測精度和時間上優(yōu)于BP神經(jīng)網(wǎng)絡、COA-SVR以及LSTM模型,證明ICOA-SVR是一種有效的短期負荷預測方法。