李安燚 ,李曉軍 ,田家輝 ,王心蕊 ,崔童飛
(1.國網河北省電力有限公司電力科學研究院,河北 石家莊 050021;2.國網河北省電力有限公司經濟技術研究院,河北 石家莊 050021)
電力系統經濟調度(Economic Dispatch,ED)是電力系統運行與規劃中一類重要的優化問題,對電力系統的安全、經濟運行具有重要影響。在目前“碳達峰、碳中和”戰略背景下,通過經濟調度獲得的最優調度方案對于電力系統的節能減排具有重要意義。傳統經濟調度的發電成本函數是一個可微的二次方程,當計及閥點效應、爬坡約束、網絡損失、禁止區間等實際問題時,其目標函數將變得非凸、非線性,傳統求解方法將不再適用。如線性規劃法、二次規劃算法、動態規劃算法,初始值選擇對結果有很大影響,極易陷入局部最優。拉格朗日松弛算法應用于大規模電力系統計算時,可能會導致計算結果振蕩。
為克服傳統數學求解方法的局限性,國內外學者將目光投向了遺傳優化算法,如粒子群算法、差分進化算法、深度學習[1-2]等。以種群進化機制為理論基礎,這就導致其控制參數、交叉變異、選擇等過程對結果有較大影響。特別是經典差分進化算法,雖然具有控制參數少的優點,但最終計算結果的質量對控制參數的設置非常敏感。若設置種群個體較少,且生成新一代個體的適應值比原種群個體適應值差,就會導致個體難以更新,收斂不到極值點。因此,許多學者將多種智能算法進行結合改進,以提升全局優化能力。Niknam T提出了一種模糊自適應粒子群算法(A Fuzzy Adaptive PSO with Nelder-Mead,FAPSONM),通過引入Nelder-Mead算法,進行局部搜索,提高FAPSO算法性能[1]。Elsayed提出了改進隨機漂移粒子群算法(Improved Random Drift Particle Swarm Optimization,IRDPSO)[3],通過在速度更新方程中,增加交叉操作和貪婪選擇過程,將粒子的平均最佳位置替換為每個粒子個體最優位置,提升算法進化能力。AS Reddy提出了混合蛙跳差分進化算法(A Hybrid Shuffled Differential Evolution,SDE)[4],該算法結合了蛙跳算法和差分進化算法的優點,通過引入一種新的差分變異算子,從而有效求解大規模非凸經濟調度問題。上面所提及的這些算法,雖然對經典粒子群算法、差分進化算法的局限性進行了改進,但是改進后的算法用于求解計及閥點效應的經濟調度問題時,求解出的結果離散程度較大,魯棒性較差。
本文從差分進化算法入手,提出了一種參數動態調整策略,通過引入混沌初始化操作,實現計算全過程算法性能提升,改善差分進化算法易陷入局部最優、求解質量不高的問題。將改進后的算法應用于求解計及閥點效應的經濟調度問題,通過算例仿真,驗證所提出改進方法的可行性,并與其他方法進行對比分析,突顯改進算法優化效果。
本文研究的是火力為單一能源發電的靜態電力系統經濟調度問題,以系統內所有發電機組發電成本最低為目標,可用二次函數式(1)來表示總發電成本[5]
式中:N為電力系統中發電機總臺數;P i為發電機組i的有功出力,ɑi,b i,c i為發電機組的發電成本系數。
由于閥點效應,發電機組的運行成本特性曲線是非凸不連續的,為模擬這一現象,即在式(1)中加一項正弦函數絕對值,可得計及閥點效應的經濟調度問題目標函數[6]為
式中:e i,f i為發電機組閥點效應(VPE)系數;為發電機組i的有功出力下限。
經濟調度問題的約束條件包括等式約束和不等式約束,等式約束為功率平衡約束
式中:PD為電力系統中總負荷需求;PLOSS為電力系統中總網絡傳輸損失。
通過B系數法計算[6]表示為
式中:B ij、B0i、B00為網損系數;P j為機組j的有功出力。不等式約束包括發電機組有功出力上下限約束、發電機組禁止區間約束
由于在實際系統中,火電機組不能瞬時改變其輸出功率,考慮其爬坡約束為
式中:P i0為機組上一單位間隔的輸出功率;UR i、DR i分別為機組的爬坡上下限。
將式(5)和(7)進行整理合并得
本文采用根據每臺機組有功出力的占比來分攤多余有功出力,從而完成機組有功出力的修正,滿足不等式約束條件,修正過程流程示意如圖1所示。
圖1 機組有功出力修正過程流程示意
步驟1:檢查每臺機組有功出力P i是否滿足不等式約束條件式(8),按照式(9)進行修正
步驟2:將當前迭代次數所有機組有功出力之和與系統負荷需求做差得Δ。若|Δ|>0,則進行步驟3,否則,進行步驟4。
步驟3:通過式(10)對P i進行修正,以滿足等式約束條件。
步驟4:對修正后的P i進行檢查,若仍存在機組有功出力越限的情況,返回步驟1。
當考慮網絡傳輸損失時,等式約束將很難滿足,本文采用懲罰函數的方法處理等式約束[7],即在目標函數中加上懲罰項式中:σ為懲罰因子,在可行域內引導搜索進程,便于快速尋找到可行解,通常設置成一個很大的正值。
差分進化算法由R.Storn和K.V.Price于1995年首次提出[8-9],是一種基于種群差異的啟發式并行搜索算法。與其他遺傳算法不同的是,DE算法利用種群中個體的差分向量對個體進行擾動,完成個體變異。通過差分變異操作,可以有效利用群體分布特性,提高算法整體尋優能力,彌補其他遺傳算法在變異方式中存在的不足[10]。DE算法主要步驟包括種群初始化、變異、交叉以及選擇,如圖2所示。
圖2 差分進化算法主要步驟
對于所優化的問題
DE算法具體流程如下:
(1)初始化種群。按照式(14)隨機選取初始值
(2)變異操作。通過在種群中隨機選取2個不同個體,對其向量差進行縮放后,與待變異個體進行向量合成,完成突變
式中:x j1,x j2,x j3為從當前種群隨機挑選的3個不同個體;F為縮放因子,決定搜索的步長和速度,取值范圍為[0,1]。
(3)交叉操作。將基準向量與變異向量進行交叉操作,二項式交叉算子計算為
式中:randi為區間[0,1]內均勻分布的隨機數;i n為區間[1,n]內均勻分布隨機數;CR為交叉概率,決定著變異前后遺傳信息所占權重,取值范圍為[0,1]。
(4)選擇操作。DE 算法采用貪婪選擇機制,可以保證種群始終向著全局最優的方向進化
DE算法具有控制參數少、收斂速度快、求解非線性問題可靠性高等優點,已廣泛應用于求解各類問題。然而,DE 算法控制參數選擇壓力大,算法性能對控制參數的依賴性高,種群個體容易陷入早熟收斂、局部最優、搜索停滯等問題,在應用求解過程中具有一定的局限性。
標準DE 算法采用隨機初始化,為獲取分布更加均勻的初始種群,改進后DE 算法(Improved Differential Evolution)引入混沌操作,提升初始種群質量,提高搜索到全局最優解的幾率。所采用的一維混沌自映射表達式為
式中:x n為混沌變量,其混沌幅度為[-1,1],仿真計算中設置為區間[0,1]中的隨機值。完成數次混沌迭代后,初始化種群將遍歷整個解空間。混沌初始化過程如圖3所示。
圖3 混沌初始化種群步驟
在經典DE 算法中,縮放因子F和交叉概率CR為一恒定值,適當動態調整控制參數,可以加快DE算法的收斂速度,改善算法性能,降低陷入局部最優的風險。縮放因子F影響著算法搜索的步長和速度,交叉概率CR在變異過程中決定著差分向量的權重。在進化過程中若將縮放因子F設置為遞減變化,則有助于初期在解空間范圍內高效搜索,后期進行局部重點搜索;若將交叉概率CR設置為遞增變化,則可以保證種群初期多樣性,增強算法收斂性能。一般改進DE 算法,將2個控制參數設置為簡單的線性變化,記作IDE-1
式中:Fmax和Fmin分別為縮放因子F的最大值和最小值;tmax為所設置的最大迭代次數;t為當前迭代次數;CRmax和CRmin分別為交叉概率CR的最大值和最小值。由于線性變化形式過于單一,在尋優初期全局搜索能力強大,但中后期難以滿足局部搜索的要求,收斂精度不高,尋優速度較慢,難以適用于對求解精度要求較高的問題。基于此,本文提出了一種動態調整控制參數方案。方案IDE-2將控制參數由線性變化改進為指數形式的非線性變化為
將IDE-1和IDE-2控制參數的變化趨勢繪制在圖4和圖5中。
圖4 兩種方案縮放因子變化趨勢
圖5 三種方案交叉概率變化趨勢
由圖4可以看出,2種方案縮放因子均為下降趨勢,其中IDE-1為線性遞減,IDE-2為非線性遞減,且不能取到所設定的邊界值。在圖5中,三種方案交叉概率均為上升趨勢,IDE-1為簡單線性遞增,IDE-2為非線性遞增。兩種方案采用不同的函數模型,將在第4節中對此兩種方案分別進行經濟調度問題的算例仿真分析。
懲罰因子的選取對算法的收斂性能有著重要影響,因此,罰函數方法有著一定的局限性,如難以選擇合適的懲罰因子,在某些特定條件下表現不佳等。一般情況下,懲罰因子通常設置為一個很大的定值,以起到足夠的懲罰作用。本文結合算例規模,將懲罰因子σ按照式(23)進行動態調整
在本節將對IDE-1、IDE-2 2種方案分別在13機組、40機組算例中進行計及閥點效應經濟調度問題的仿真計算,并與改進前DE 算法進行對比分析。算例1為13機組標準系統,負荷需求為1 800 MW,考慮了閥點效應、網絡損失以及禁止區間約束。算例2 為40 機組標準系統的仿真。所用程序通過C++程序編寫,在Visual Studio 2012中進行測試,獨立運行計算20次,所用計算機配置為Intel(R)Core(TM)i7 CPU (2.80 GHz),8 GB RAM。
雖然DE 算法具有控制參數少的優點,但是這些控制參數對算法性能有較大的影響。通常參數的范圍設置需要結合實際問題,經過反復測試得出。DE算法的性能表現取決于3個控制參數,在上一節中,對影響DE算法性能的縮放因子F、交叉概率CR,進行了闡述與改進。種群規模的大小要結合系統規模進行設置,種群設置過小,容易陷入局部最優,種群設置過大,計算時間較長。經過多次仿真測試,具體參數設置見表1。
表1 算例參數設置
13機組算例采用文獻[11]中的標準發電成本參數,計及閥點效應影響,考慮網絡傳輸損失的影響,所采用的網損計算B 系數[12],系統負荷需求為1 800 MW。表2中將方法IDE-1和IDE-2所求的最優結果與其他方法進行對比。
表2 13機組系統計及網損計算結果對比 美元·h-1
由表2可以直觀看出,與其他方法相比,采用改進后的DE 算法得到的發電成本低于其他方法。對比IDE-1和IDE-2,采用非線性變化的動態參數調整策略,與單一線性變化相比,所得結果更加理想,且算法魯棒性得到提升。獨立運行20次計算結果分布箱型圖見圖6。
圖6 改進前后結果分布對比箱型圖(13機組算例)
圖6中對比了DE算法改進前后的20次獨立計算結果分布,改進前計算所得標準差為65.42美元/h,結果分布范圍較大,且平均發電成本較高。經過改進后,平均發電成本減少109.18美元/h,結果魯棒性得到明顯提升,標準差僅為1.93美元/h,說明算法改進有效。對比方法IDE-1與IDE-2,采用非線性動態參數調整策略可以得到更低的平均發電成本,且結果波動范圍較小。
在40機組系統進行仿真測試,所采用計算數據參考文獻[16]。在此算例中,系統負荷需求為10 500 MW,計及閥點效應的影響。在表3中,對采用不同方法所得計算結果進行對比。
表3 40機組系統計算結果對比 美元·h-1
在表3中將改進前后DE 算法與其他方法計算結果進行對比,可以明顯看出,在最小、平均、最大成本DE算法有明顯的優越性,且標準差更小。其中,方法DEPSO、ST-IRDPSO、CBA、CCDE、MCSA 雖然可以得到較為理想的結果,但標準差較大,魯棒性較差。方法HAAA 雖然標準差小,但所需迭代次數較多。20次獨立計算結果分布箱型圖見圖7。
圖7 改進前后結果分布對比箱型圖(40機組算例)
由圖7可以看出,對比改進前后DE 算法,在20次獨立計算中,DE 算法控制參數選取定值時,存在一個異常值,且其余解分布范圍較大。當控制參數采用簡單線性變化時,求解結果更為穩定。當引入混沌操作,將控制參數改為非線性變化時,結果魯棒性能更好,改進效果明顯。
本文將差分進化算法應用到求解計及閥點效應經濟調度問題的不同算例中,對其進行有效改進,深入挖掘DE算法潛力。首先,對經典差分進化算法進行研究,分析差分進化算法存在易于陷入局部最優、參數設置選取壓力大、對離散的優化問題處理不佳等局限性,并對控制參數作用進行重點分析。然后,對DE 算法進行改進,在初始化階段引入混沌操作,提升初始種群質量,提出了一種基于非線性控制參數動態調整方案。最后,將所提出的IDE算法應用于2個不同規模算例中進行仿真測試。仿真結果顯示,在考慮不同約束條件的算例中,與其他方法相比,所提出的改進算法能在求解到最優結果的同時,魯棒性也更為出色。