王 瑞,陳澤坤,逯 靜
(1.河南理工大學電氣工程與自動化學院, 河南 焦作 454000; 2.河南理工大學計算機科學與技術學院, 河南 焦作 454000)
近年來為緩解能源緊張,減少環境污染,新能源的開發和利用持續增加,其中風能是具有巨大利用價值的新型清潔環保能源,被廣泛應用于風力發電。未來的電力系統必然將為可持續的全球經濟增長提供更高滲透率的清潔能源,然而大量清潔能源的不斷接入給電力系統提出了前所未有的挑戰[1]。對風電場的功率進行短期預測,可以使電力調度部門能夠提前根據風電功率變化,及時調整調度計劃,保證電能質量,降低電力系統運行成本,這是減輕風電對電網造成不利影響、提高電網中風電裝機比例的一種有效途徑[2]。
目前,國內外對于風力發電功率的預測已有了深入研究,按照預測模型的不同,可分為物理方法、統計方法和學習方法。其中,物理方法需要對所在風電場進行建模[3],由于受氣象預報更新頻率的影響,該方法更適合中期風電功率預測。統計方法包括回歸分析法[4]、指數平滑法、時間序列法[5-6]和灰色預測法。這種預測模型計算簡單,但隨著預測時間的增加預測精度會快速下降,且不能很好地適應非線性影響因素。
學習方法包括人工神經網絡法[7-9]、決策樹[10-11]和支持向量機[12-14]等。其中,最小二乘支持向量機(least squares support vector machine,LSSVM)具有預測精度高、計算簡單等優點。但是在實際的風電功率預測中,單一的預測模型存在局限性,無法取得最佳的預測效果,因此目前多采用組合預測模型,如周松林[15]引入粒子群算法(particle swarm optimization,PSO)優化LSSVM參數尋優,可有效縮短搜索時間,但存在過早收斂的問題。趙鳳展等[16]采用蝙蝠算法(bat algorithm, BA)優化LSSVM模型,與PSO-LSSVM相比搜索過程具有更好的收斂性,但存在不能保持優化能力等問題。此外,組合預測模型中經常會用信號分解的方法,目的是將原始序列分解成一系列子模態以降低非平穩性,對分解的序列分別建立預測模型并重組來實現最終預測,如姜貴敏等[17]通過集成經驗模態分解(ensemble empirical mode decomposition,EEMD)將功率歷史數據分解為一系列相對平穩的子序列,解決了經驗模態分解(empirical mode decomposition,EMD)方法所產生的模態混疊現象。變分模態分解(variational mode decomposition,VMD)是一種非遞歸、變模式的分解方法,克服了EEMD遞歸求解的缺點,具有更好的諧波分離效果[18]。
本文在現有研究基礎上,提出了一種基于VMD和改進蝙蝠算法(improved bat algorithm,IBA)優化的LSSVM預測模型(VMD-IBA-LSSVM模型),并利用該模型對寧夏某風電場的發電功率進行預測,通過與其他幾種典型模型進行比較來驗證模型的有效性。
VMD是基于EMD提出的一種自適應、完全非遞歸的模態變分和信號處理的方法。與EMD相比,VMD對噪聲和采樣誤差具有更強的魯棒性。VMD的分解過程是變分問題的求解過程,可分為變分問題的構造和求解過程[19]。
步驟1對于每個模態函數,采用Hilbert變換計算相關的解析信號,以獲得單側頻譜。
步驟2通過混合一個調諧到各自中心頻率的指數項,將各個模態的頻譜調制到相應的基頻帶。
步驟3由解調信號的高斯平滑度,得到的約束變分問題:
(1)
式中:{uk}、{ωk}——子信號及其相應的中心頻率集合;k——子信號總數;t——采樣時刻;δ(t)——狄拉克分布;f(t)——一個序列。
步驟1將約束性變分問題重構為非約束性變分問題,增廣的拉格朗日表達式為
(2)
式中:λ(t)——拉格朗日乘法算子;α——二次懲罰因子。
步驟2通過交替更新uk,n+1、ωk,n+1和λn+1求解增廣后拉格朗日表達式中的“鞍點”。VMD更新過程如下:
(3)
(4)
(5)
步驟3對于給定判別精度e>0,若滿足式(6),則VMD收斂,停止更新。
(6)
LSSVM是一種新型支持向量機方法,LSSVM采用最小二乘線性系統作為損失函數,代替傳統的支持向量機采用的二次規劃方法。利用等式約束取代SVM中的不等式約束,將原問題轉化為一個解線性方程組的問題。LSSVM的優化問題[20]可以轉化為
(7)
式中:w——權向量;γ——正則化參數;ek——誤差變量;φ(xk)——xk在特征空間的映射;b——偏置。
式(7)可采用拉格朗日乘數法把原問題優化,同時根據KKT最優條件求解。本文選擇RBF函數作為LSSVM的核函數。此外,超參數(C,σ)的選取對模型的預測結果有顯著影響,本文采用IBA對LSSVM模型參數尋優,建立最優預測模型。
BA是一種仿生尋優算法,模擬自然界中微蝙蝠的回聲定位行為。BA將回聲定位理想化,將蝙蝠種群初始化為一組隨機解,然后通過調節蝙蝠發出的聲波頻率更新個體的脈沖速率和脈沖響度迭代搜尋最優解,且在最優解周圍通過隨機飛行產生局部新解,加強了局部搜索。
蝙蝠個體更新其聲波頻率、速度與位置,公式表述為
fi=fmin+(fmax-fmin)β
(8)
vi,t=vi,t-1+(xi,t-x*)fi
(9)
xi,t=xi,t-1+vi,t
(10)
式中:fmax、fmin——最大與最小頻率值;v——個體速度;x——個體位置;β——[0,1]之間的隨機數。
在局部尋優過程中,每只蝙蝠更新公式如下:
Xnew=Xold+εAt(ε∈[-1,1])
(11)
式中:Xold——當前最優解;ε——隨機數;At=〈Ai,t〉——全部個體在第t次迭代時的平均脈沖響度。
當蝙蝠發現目標逼近時,會更新發射脈沖的發射速率和響度:
Ai,t+1=αAi,t
(12)
ri,t-1=ri,0(1-e-γt)
(13)
式中:Ai——脈沖響度;α——脈沖音響衰減系數;ri——脈沖發射速率;γ——搜索頻度增強系數。
根據上述BA的優化原理可知,其參數更新方式相對固定,個體本身缺乏變異機制,致使存在后期收斂慢、收斂精度低以及容易陷入局部極小值等問題。為了克服BA的缺點,本文采用改進的慣性權重、自適應頻率與變異機制來改善尋優過程[21],形成IBA。
公式(9)中,速度更新時添加慣性權重以改進速度更新的方向,使得種群中個體可以有效地跳出局部最優點:
(14)
式中:g——慣性權重因子;fit——適應度函數;N——種群數量。
當蝙蝠i的適應度低于平均適應度時,該蝙蝠將賦予較低的權重,增強其尋優全局更優解的能力;而蝙蝠i的適應度高于平均適應度時,該蝙蝠將賦予較高的權重,增加其跳出局部最優解的機會,間接增大該蝙蝠尋優全局最優解的能力,主要模仿粒子群算法的慣性權重策略。
在BA中,存在一些蝙蝠已經處在最優解邊緣的,仍采用與平時一致的頻率來尋優,最終會影響其尋找最優解的機會,因此采用自適應頻率調整:
(15)
range=di,max-di,min
(16)
(17)
式中:di——第i個解到最優解距離;range——最大距離與最小距離的差值。
由此,速度更新公式變為
vij,t=vij,t-1+(xij,t-xj,*)fj
(18)
當蝙蝠都趨于收斂時,部分種群陷入了局部最優解,此時增加變異機制,跳出該局部最優解。本文采用的方法是產生一個隨機數,當這個隨機數大于變異概率的時候,對蝙蝠重新初始化。
為了進一步提高LSSVM模型的預測精度和速度,需要對模型的參數進行優化,優化步驟如下:
步驟1設定LSSVM模型中懲罰參數C、核參數σ的取值范圍。
步驟2種群基本參數化,設定種群數個體xi(i=1,2,…,N)、脈沖頻率最大值fmax和最小值fmin、脈沖響度Ai、脈沖發射率ri、空間維度d和最大迭代次數MI。
步驟3初始化種群中每只蝙蝠個體的位置xi和速度vi,其中蝙蝠i的位置代表著參數C和σ。
步驟4計算每只蝙蝠的適應度值,尋找當前時刻最優解。以蝙蝠位置對應的參數訓練LSSVM模型,然后選取訓練集進行訓練和測試,按照降序排列,找到當前最優解。
步驟5分別按照式(8)(9)和(18)更新種群中各個蝙蝠個體的脈沖發射率、所在位置和飛行速度,采用改進的慣性權重、自適應頻率與變異機制來改善尋優過程。
步驟6出現第一個隨機數rand1,當rand1>ri時,根據式(11)更新出局部最優解Xnew。