摘要:電網調度部門在我國能源行業(yè)轉型升級中發(fā)揮著舉足輕重的作用。對于電廠運營而言,精確計量日耗煤量以及準確預測未來日耗煤量的變化趨勢,有助于電廠更有效地規(guī)劃煤炭供應與調度,確保電力生產的連續(xù)性和穩(wěn)定性。文章采用粒子群優(yōu)化的支持向量機(PSO-SVM)算法和相關向量機(RVM)算法,針對某能源集團下屬的3家電廠,進行了為期10 d的日耗煤量預測研究,并構建了基于這兩種算法的電廠耗煤短期預測模型。實驗結果表明,經過參數優(yōu)化后,采用RVM算法預測的3家電廠未來10天日耗煤量的平均相對誤差率為10.3%,相較于采用PSO-SVM方法所得的13.3%有了明顯的降低,表明RVM算法在預測精度更高。
關鍵詞:相關向量機;粒子群優(yōu)化;支持向量機;預測模型
中圖分類號:TP39;TK01.8" " " "文獻標識碼:A" " " 文章編號:1674-0688(2024)12-0059-05
0 引言
電廠作為能源生產的核心單位,其煤炭消耗量的預測至關重要。準確預測煤炭需求,有助于電廠合理規(guī)劃煤炭采購和使用策略,避免庫存過多或過少所帶來的經濟損失。隨著電力市場逐步放開和競爭加劇,準確的耗煤量預測也為電廠的市場運營和競爭策略提供了有力的支持。
電廠耗煤量數據是一組隨時間波動且含有較多噪聲的序列。在針對日耗煤量短期預測的研究中,Ding等[1]發(fā)現,基于LM(Levenberg-Marquardt algorithm)算法改進的BP(多層感知器)神經網絡(LM-BPNN)在擬合精度和收斂速度上優(yōu)于傳統(tǒng)的BP(反向傳播)神經網絡,但預測的耗煤基準值仍受到諸多不穩(wěn)定因素的影響。Eumorek等[2]則采用傳統(tǒng)機器學習技術和多層感知器神經網絡構建了預測模型,通過比較分析發(fā)現,在解決回歸問題中,MLP(多層感知器)神經網絡模型提供了更好的結果。石憲等[3]提出了一種創(chuàng)新的ABC優(yōu)化算法,該算法融合了蜜源更新方法和跟隨蜂群選擇引領蜂群的策略,并構建了名為IABC-EIman的神經網絡模型,用于預測電廠耗煤量,其預測精度較傳統(tǒng)神經網絡模型有了顯著提升。彭道剛等[4]結合了卷積神經網絡(CNN)在特征提取方面的優(yōu)勢和長短時記憶(LSTM)神經網絡的記憶預測功能,提出了CNN-LSTM神經網絡模型,該模型的預測精度相較于傳統(tǒng)模型有了顯著提升。
前人研究主要依賴機器學習算法的非線性映射能力,直接擬合時間序列數據之間的關系。本文則采用相關向量機(relevance vector machine,RVM)以及基于粒子群優(yōu)化(Partical Swarm Optimization,PSO)算法的支持向量機(Support Vector Machine,SVM)對電廠耗煤量數據進行短期預測,并結合某能源集團下屬3家電廠的真實歷史耗煤量數據進行實驗比較,旨在為電廠短期耗煤量預測提供一種可借鑒的新方法。
1 RVM算法原理
RVM是一種基于貝葉斯原理的概率模型,能夠學習并表征數據特征[5]。假設有[N]個輸入樣本為[xiNi=1],其目標值為[t=[t1,t2,…,tN]T],[x]與[t]滿足
[t=i=1NωiKx,xi+ε]," " " " " " " " "(1)
其中:[Kx,xi]為核函數;[ωi]為不同權重;[ε?W0,σ2],服從均值為0、方差為[σ2]的高斯分布。[tiNi=1]是獨立隨機變量,在[ω0]與[σ2]已知的情況下,[t]滿足
[pt|ω,σ2=2πσ2-N2exp-t-?ω2σ2]," " " (2)
其中:[ω=ω0,ω1,ω2,…,ωNT];[?]是核函數矩陣,表示為
[?=1Kx1,x1Kx1,x2…Kx1,xN1Kx2,x1Kx2,x2…Kx2,xN?????1KxN,x1KxN,x2…KxN,xN]。 (3)
由此可以得到目標值估計的條件概率為
[pt?|t=pt?|ω,σ2pω,σ2|tdωdσ2]," "(4)
其中,[t?]為真實值。求解前,先給[ω]加上先決條件
[pωi|αi=Nωi|0,α-1i]," " " " " " " " (5)
其中,[αi]為超參數變量,其值決定了某向量是否作為相關向量。
求解公式(4)得到
[pt?|t=pt?|ω,σ2pω,α,σ2|tdωdαdσ2], (6)
經過貝氏定理替換得到
[pt?|t=pt?|ω,α,σ2pω|t,α,σ2pα,σ2|tdωdαdσ2],
(7)
用超參數[αMP、σ2MP]替代求近似解:
[αMP,σ2MP=argmaxα,σ2pα,σ2|t]," " " "(8)
[pt?|t=pt?|ω,αMP,σ2MPpω|t,αMP,σ2MPdω]," (9)
最后求出超參數解,對其進行偏微分為零的計算,得到以下迭代公式:
[αnewi=γiμ2i]," " " " " " " " " " " " " "(10)
[σ2new=t-?μ2N-i=0Nγi]," " " " " " " " (11)
[γi=1-αiΣi,i]," " " " " " " " " " (12)
其中:[Σi,i]為協方差,[Σi,i=(σ2ΦTΦ+A)-1],[A]=diag(α0,α1,…,αN);[μi] 為第[i]個樣本的后驗均,[μi=σ2ΦTt]。
給定超參數的初始值之后,該模型會自動進行迭代更新。最后,有一部分[αi]會穩(wěn)定在某個有限值附近,這些穩(wěn)定的[αi]所對應的[xi]被稱為相關向量。
利用RVM進行短期耗煤量預測的流程如圖1所示。
2 PSO-SVM基本原理
2.1 PSO算法原理
PSO算法主要基于科學家Heppner提出的模型,其核心思想在于模擬鳥類和魚類等生物的群體行為,以有效解決各類優(yōu)化問題。在PSO算法框架下,每個粒子代表問題搜素空間中的一個未被確定的解,通過不斷地根據自身經驗和群體中其他粒子的信息調整自身的位置和速度,從而逐步接近問題的最優(yōu)解。這種模仿生物群體行為的優(yōu)化策略賦予了PSO算法實現便利、收斂速度快等優(yōu)勢。
PSO算法中,粒子不斷調整其位置與速度,以尋找更優(yōu)解。在D維搜索空間中,設有[N]個粒子,任一粒子[i]均代表一個D維向量,可以表示為
[Xi=xi1,xi2,xi3,…,xiD,i=1,2,3,…,N]。" " " (13)
第[i]個粒子的“飛行”速度[Vi]也是一個D維向量,可以表示為
[Vi=vi1,vi2,vi3,…,viD,i=1,2,3,…,N]。 (14)
至此,第[i]代找到的最優(yōu)位置即個體極值[Pbest],表示為
[Pi,best=pi1,pi2,pi3,…,piD,i=1,2,3,…,N]。" " (15)
至此,存在全局極值[gbest],表示為
[Pd,gbest=pg1,pg2,pg3,…,pgD]。" " " " " " " "(16)
第[t]代的粒子向第[t+1]代進化時,根據以下公式更新:
[vt+1id=ωvtid+c1r1ptid,best-xtid+c2r2ptd,gbest-xtid], (17)
[xt+1id=xtid+vt+1id]," " " " " " " " " (18)
其中:[xtid]是第[t]代粒子[i]位置矢量的第[d]維分量,[vtid]是第[t]代粒子[i]速度矢量的第[d]維分量,[ptid,best]是第[t]代粒子[i]個體極值矢量的第[d]維分量,[ptd,gbest]是第[t]代粒子[i]全局極值矢量的第[d]維分量,[r1]、[r2]是[0,1]中的隨機數。在公式(17)中,等式右側的第一項為慣性權重與粒子自身速度的乘積,代表粒子原有的移動方向;第二項表示粒子向某個體極值移動的趨勢;第三項則指示粒子向全局極值移動的方向。
2.2 SVM算法
SVM可以引入多種損失函數進行回歸預測,這種應用形式被稱為支持向量回歸(SVR)模型。Vapnik[6]提出了一種專為回歸任務設計的損失函數,即[ε]不敏感損失函數。該損失函數能容忍一定范圍內的誤差:當預測值與真實值之間的差距在[ε]范圍內時,損失函數值為零;否則,損失函數值為該差距的絕對值減去[ε],表示為
[Ly,f∧x,ω=y-f∧x,ωε=" " " " " " " 0,y-f∧x,ωlt;εy-f∧x,ω-ε,其他]," " " " " " " " " " " " "(19)
其中:L為損失函數;[y]是真實標簽;[f∧x,ω]是模型的預測值;[ε]是一個預先設定的參數,表示容忍的誤差范圍。
為進一步增強支持向量機的預測能力,引入松弛因子[ζi]與[ζ*],則
[yi-f∧x,ω≤ε+ζif∧x,ω-yi≤ε+ζ*(i=1,2,…n)], (20)
此時,支持向量機的優(yōu)化目標函數為
[L=12∥ω∥2+Ci=1n(ζi+ζ*)]," " (21)
其中:參數C被定義為大于0的懲罰參數,用于衡量偏差的嚴重程度;[ζi]與[ζ*]為松弛因子。當C值增大時,對偏差的懲罰力度也隨之增強,旨在確保模型能更有效地識別和糾正偏差,從而提升模型的準確性和可靠性。隨后,通過應用對偶原則,將其轉化為二次規(guī)劃問題,進而求解支持向量。
核函數使SVM在高維度數據空間中直接計算數據點之間的內積,無需通過復雜的映射函數,從而降低了在高維空間中計算內積的成本。高斯核函數表達式如下:
[Kxi,xj=exp-xi-xj22σ2]," " " " " (22)
其中:[Kxi,xj]表示原始空間中兩個數據點[xi]和[xj]之間的內積;[σ]是核函數參數。高斯核函數將數據映射至無限維特征空間,簡化了原始數據空間中線性分離問題的處理,既便于分類又提高了多變量分析的效率。
2.3 參數優(yōu)化
較低的懲罰參數C值可能會使模型更傾向于接受錯誤分類,從而簡化模型結構,但這種做法在某些情況下可能導致欠擬合。較大的C值則會使模型嚴格避免錯誤分類,可能增加過擬合的風險。當高斯核函數的參數[σ]較大時,模型可能變得過于簡單,無法適應數據復雜性;[σ]值較小時,模型可能變得過于復雜,從而引發(fā)過擬合。因此,需根據具體問題和數據集的特點選擇合適的[σ]值。鑒于現有的PSO算法能有效解決參數的優(yōu)化問題,本文采用PSO算法進一步尋求最佳的參數配置方案,SVM參數優(yōu)化流程見圖2。
SVM參數優(yōu)化的具體步驟如下:①初始化OPT-PSO算法參數,設置種群初始數目N為10,迭代次數為40,學習因子[c1=1.5]、[c2=1.7],并設定懲罰參數C和高斯核函數參數[σ]的搜索范圍為[0.1,100]。②劃分數據集。③采用隨機數或人為設定方法初始化OPT-PSO算法中粒子的位置矢量和速度矢量。④根據適應度公式計算每個粒子的適應度值[fitness(i)]。⑤將步驟④得到的[fitness(i)]與目前粒子的個體極值相比較,若[fitness(i)]小于當前個體極值,則更新個體極值為[fitness(i)],并記錄最佳位置。⑥將步驟④得到的[fitness(i)]與目前粒子的全局極值相比較,若[fitness(i)]小于當前全局極值,則更新全局極值為[fitness(i)],并記錄最佳位置。⑦判斷結束條件,若迭代次數達到最大值或適應度值低于誤差閾值,則中斷尋優(yōu)并記錄全局最佳適應度值;否則,返回步驟④繼續(xù)執(zhí)行。經過不斷迭代優(yōu)化粒子的位置和速度,最終獲得最佳的懲罰參數C和高斯核函數參數組合。
3 仿真實驗結果與討論
3.1 確定數據樣本
本文實驗數據源自某能源集團下屬3家電廠——A電廠、B電廠、C電廠4年的真實歷史數據,這些數據涵蓋了存煤量、日耗煤量及日進煤量。其中,日耗煤量的4年數據被選為本文的實驗數據。隨后,對所有數據進行異常值處理,剔除零值以及記錄錯誤導致的異常值,并采用滑動平均法消除數據的隨機誤差,其中滑動窗口的大小設定為9。以A電廠為例,經過上述滑動平均處理后的日耗煤量數據變化曲線圖見圖3。
如圖3所示,數據在1 000~7 000的范圍內波動。為確保數據特征的標準化,從而消除不同數據之間的量綱偏差,進一步提升模型在訓練過程中的穩(wěn)定性、效率以及魯棒性和泛化能力,需對數據集進行歸一化處理,這一處理過程可通過以下公式實現:
[Xnormalized=X-XminXmax-Xminfitness=1ni=1nyi-yiyi]。" (23)
歸一化處理可以提高模型的收斂速度,將所有的數據都規(guī)范到[0,1]的區(qū)間內。完成歸一化處理后,搭建時間序列分析中的自回歸模型(AR)。
3.2 評價指標
本文使用相對誤差率作為PSO-SVM算法的適應度函數和評價指標,可以根據以下公式計算適應度值和預測結果的相對誤差率:
[fitness=1ni=1nyi-yiyi]," " " " " " " "(24)
其中:[yi]是真實值,[yi]是對應的預測值。這個適應度函數計算了每個樣本相對誤差率的絕對值,然后對所有樣本求平均值。
3.3 仿真實驗
利用本文構建的PSO-SVM算法模型和RVM模型,對3家電廠的歷史耗煤量數據進行訓練,并滾動預測接下來360 d的日耗煤量,每次預測覆蓋未來10 d的數據。設定局部搜索能力參數[c1]為1.5,全局搜索能力參數[c2]為1.7,種群數量N為10,最大迭代次數為40,慣性權重系數[ω]為1.2,懲罰參數C與高斯核函數參數[σ]的取值范圍為[0.1,100]。以A電廠為例,PSO-SVM模型的預測結果見圖4,該模型預測的日耗煤量數據的相對誤差率為14.989%。
選用RVM的核函數為線性核函數,類型設定為RVR(相關向量回歸),構建得到RVM預測模型。該模型的預測結果見圖5,其相對誤差率為11.558%。
重復仿真實驗過程,得到A、B、C 3家電廠預測的相對誤差率結果(表1)。RVM模型的預測精度顯著高于PSO-SVM預測模型,具體表現為A電廠預測誤差率從14.989%降低至11.558%;B電廠從13.891%降低至11.172%;C電廠從13.944%降低至9.201%。
基于RVM算法的預測模型不僅顯著提升了預測精度,還極大地縮短了預測時間,從訓練模型到結果輸出僅需5秒??傮w而言,RVM預測模型展現了卓越的預測能力。后續(xù)實驗發(fā)現,RVM算法中不同電廠的數據輸入維度對預測結果有著顯著影響。因此,本文重新對A、B、C 3家電廠的數據進行建模,輸入數據維度從5依次遞增至30,以尋找最佳輸入維度,實現最小相對誤差率。改進前后的誤差率匯總表見表2。
調整輸入維度后,各電廠預測的相對誤差率平均下降至10.335%,但預測精度仍存在不小的差異,故不同電廠耗煤量預測需根據具體問題進行具體分析。
4 結語
經典SVM算法通常借助PSO算法進行參數尋優(yōu),以達到最佳水平。本文構建了一個基于PSO-SVM的電廠短期耗煤預測模型,通過實驗中發(fā)現,PSO-SVM算法存在參數尋優(yōu)過程冗長、時效性與精度不佳的問題。因此,本文提出采用RVM算法建立電廠短期耗煤量預測模型,該模型在時效性和精度上均優(yōu)于PSO-SVM模型。通過輸入維度的優(yōu)化,A、B、C 3家電廠的平均相對誤差率分別降至11.196%、10.980%、8.829%,均達到了較低的精度閾值,為準確預測電廠短期耗煤量提供了新途徑。
5 參考文獻
[1]DING S,CHANG X H.Application of improved BP neural networks based on LM algorithm in characteristic curve fitting of fiber-opticmicro-bend sensor[J].Advanced Materials Research,2014,2990(889-890):825-828.
[2]SUMOREK M,IDZKOWSKI.A Time series forecasting for energy production in Stand-Alone and tracking photovoltaic systems based on historical measurement data[J].Energies,2023,16(17):505-527.
[3]石憲,錢玉良,溫鑫,等.基于IABC-Elman神經網絡的電廠耗煤量短期預測[J].上海電力學院學報,2019,35(5):419-426.
[4]彭道剛,朱琪,車權,等.基于CNN-LSTM神經網絡的電網調度火電廠短期存煤預測[J].電力自動化設備,2021,41(6):127-136,141.
[5]邱思語,楊洪耕.稀疏貝葉斯回歸及其在諧波電流異常檢測中的應用[J].電力系統(tǒng)及其自動化學報,2017,29(5):104-107.
[6]VAPNIK V N.The nature of statistical learning theory(2nd Edition)[M].New York:Springer-Verlag,1999.
*國家自然科學基金“電站大數據分析及應用”(62173160)。
【作者簡介】郭樺,男,河南洛陽人,碩士,高級工程師,研究方向:儲運數字化與智能化技術的研究與應用;付則開,男,內蒙古鄂爾多斯人,碩士,工程師,研究方向:大型干散貨港口、航運綜合運輸技術與應用。
【引用本文】郭樺,付則開.基于RVM算法的電廠耗煤短期預測[J].企業(yè)科技與發(fā)展,2024(12):59-63.