李東麟,朱建宏,王華廣,胡榮遠,葉佳威,王培紅
(1.貴州黔西中水發電有限公司,貴州 黔西 551500; 2.國核電力規劃設計研究院有限公司,北京 100095; 3.東南大學能源與環境學院,江蘇 南京 210096)
在全球能源低碳轉型的大背景下,我國作為世界上最大的能源生產國和能源消費國提出了“碳達峰”以及“碳中和”的雙碳目標,風能、太陽能等非化石能源的開發利用是實現該目標的重要手 段。但是風能、太陽能等非化石能源發電方式存在不穩定性,其發電量受外部環境影響較大,為維持電網安全穩定運行,需要火電機組承擔電網內調峰調頻。由于火電機組的能耗受負荷影響較大,在調峰的過程中,火電機組負荷大范圍變動對機組運行的安全性和經濟性會產生巨大影響。
火電機組負荷優化分配是指將外界總負荷分配至廠內并列運行的各機組,使廠內總煤耗量(目標函數)最小[1]。在外界負荷大幅度變化的過程中,負荷優化分配可以取得良好的節能降碳效果。針對負荷優化分配問題,許多算法都被用于其求解過程:基于傳統優化算法的等微增法[2-3]等、基于數學規劃的動態規劃法[4-6]等以及基于現代智能優化算法的遺傳算法[7-8]、粒子群算法[9-13]、進化算法[14]等。
相較于其他算法,動態規劃法在求解負荷優化分配過程中,采用優化計算與應用相分離的方式,離線構造全負荷區間內的機組負荷優化分配表,再將其應用于實時的負荷優化分配。其負荷優化分配表采用全區域枚舉法,當機組負荷步長選取過大時,會導致分配結果精度低,可能并非為對應負荷下的最優解;當機組負荷步長過小時,計算時間過長,計算效率低下。
人工蜂群算法是由土耳其學者Karaboga于2005年提出,其依據為蜂群的采蜜行為:在沒有統一指揮的情況下蜂群總能夠發現優質蜜源。與經典優化算法相比,人工蜂群算法簡單,對外部信息要求少,僅依靠適應度函數就可完成進化[15]。相較于遺傳算法、差分進化算法和粒子群算法,人工蜂群算法有較好的求解質量[16-18]。
因此,本文針對動態規劃算法在實際應用中存在的全區域枚舉導致計算精度與計算效率不兼容的問題,將人工蜂群算法應用于動態規劃的分配表構造,簡化計算過程,在保證求解精度的同時提高計算效率。通過將人工蜂群算法在全負荷區間內完成負荷優化分配計算,離線構造負荷優化分配優化順序表,實現全負荷區間內的負荷優化分配計算。優化計算得到的負荷優化分配順序表應用逆序分配,完成機組運行的實時在線優化。將改進后的方法應用于以最小煤耗量為優化目標的負荷優化分配模型,在滿足各約束條件情況下進行負荷分配,并以5臺機組為實例進行計算分析。
為追求經濟性,火電廠負荷優化分配通常以最小化供電成本為優化目標,考慮到煤耗量與負荷的關系近似于成本與負荷的關系,因此選取煤耗量作為負荷優化分配的目標函數。以最小煤耗量作為優化計算的目標函數,則計算關系式為:

式中:F為全廠總煤耗量,t/h;Fi為第i臺機組的煤耗量,t/h;N為機組臺數;fi(Pi)為第i臺機組的煤耗特性關系;Pi為第i臺機組的負荷,MW;ai、bi、ci均為第i臺機組的煤耗特性系數。
功率平衡約束為各機組負荷之和等于全廠總負荷:

式中:PD為總負荷,MW。
機組負荷上下限約束為各機組負荷大小應處于其負荷上下限區間內:

式中:Pmin,i為第i臺機組負荷下限,MW;Pmax,i為第i臺機組負荷上限,MW。
動態規劃法通過將優化計算過程與分配過程相分離,有效簡化了負荷優化分配的在線應用。設有N臺彼此獨立運行的單元機組,用x1,x2,…,xN分別表示各機組負荷,用f1,f2,…,fN分別表示各機組的煤耗量。在總負荷yN下,電廠并列運行機組間的負荷優化分配問題的數學模型為[19]:

在總負荷yN下,存在唯一的各機組負荷組合x1,x2,…,xN使煤耗量最小為FN*,即:

利用求和原理得到:

即:

由式(8)—式(10)可知,對于1個有N項變量的多變量函數,可將其轉化為N步遞推函數,通過對遞推函數優化就可得到最后多變量函數的優化解。
動態規劃在負荷優化分配問題的應用通常分為2個階段:第1階段為順序造表,即按i=1,2,…,N的順序根據第i階段總負荷yi的大小次序,求出對應的當前階段最優煤耗量Fi*(yi)和當前負荷下第i臺機組分配的負荷xi*,填入順序表中;第2階段是逆序分配,即根據給定的總負荷yN,由表格按j=N,N-1,…,1的逆序方向依次查找yN對應的所有xi*值,得到總負荷yN下最優煤耗量時的各機組負荷。
人工蜂群(ABC)算法包含蜜源、采蜜蜂和待工蜂3個組成要素。蜜源是蜜蜂采集的食物源,即各種可能的解,可以通過適應度來衡量蜜源的優劣;采蜜蜂是正在進行采蜜行為的蜜蜂,與其所采集的蜜源相對應,攜帶相關蜜源信息并以一定的概率與其他蜜蜂分享;待工蜂是尚未進行采蜜行為的蜜蜂,分為旁觀蜂和偵察蜂2種,偵察蜂負責搜索新蜜源,旁觀蜂則通過和采蜜蜂分享相關信息,尋找蜜源。
在算法初始化時,蜂群中采蜜蜂與旁觀蜂各占50%,而蜜源與采蜜蜂一一對應,數量一致。當采蜜蜂放棄其對應的蜜源時,采蜜蜂將轉換為偵察蜂搜索新蜜源。在算法循環計算的過程中采蜜蜂會在蜜源的鄰域進行搜索,并在返回蜂巢之后將相應蜜源的信息反饋給旁觀蜂,旁觀蜂在這些蜜源之中進行選擇后,在所選蜜源的鄰域內進行搜索。當采蜜蜂在設定的采集次數上限內未獲得更優的新蜜源對舊蜜源進行更新時,采蜜蜂將放棄對應蜜源轉換為偵察蜂。
在人工蜂群算法中,假定搜索空間為D維,蜜蜂種群數量為N,則采蜜蜂和旁觀蜂的數量一般為S=N/2;蜜源和采蜜蜂一一對應,其數量也為S,則優化計算過程如下。
初始蜜源生成公式為:

式中:xi,j為第i個蜜源或采蜜蜂的第j維坐標,i∈(1, 2,…,S),j∈(1, 2,…,D);xmax,j、xmin,j分別為第j維坐標的取值上、下限。
蜜源適應度計算公式為:
“感人心者,莫過于情。”情感是打開心靈之窗的鑰匙,是人心活動的外化形式,是對語言表達的重要補充。領導干部,特別是基層的領導干部,要真心把基層的員工當作親人,以情感人,善于洞察員工的情緒變化,在工作、生活交往中體現情感的價值;要友好地架設“感情線”,根據個人性格以及出現不同的情緒、情感,有針對性地采取措施,消除情感負面作用,善用情感交流,達到提高情感待遇的最終目的。

式中:fiti為第i個蜜源的適應度;fi為第i個蜜源的目標函數值。
為避免出現早熟現象,本文采用基于排序的選擇概率,蜜源選擇概率計算公式為:

式中:pi為第i個采蜜蜂對應蜜源被選擇的概率,i∈(1, 2,…,S);a(t)為自適應參數。

式中:t=1, 2,…,Cmax;Cmax為最大循環次數。
蜜源更新計算公式為:

式中:vi,j為第i個采蜜蜂在其對應蜜源附近搜索得到的新蜜源的第j維坐標,i∈(1, 2,…,S),j∈(1, 2,…,D);xk,j為隨機確定的第k個采蜜蜂的第j維坐標;φi,j為在[-1, 1]區間產生的隨機值。
為了提高人工蜂群算法的收斂速度,本文引入局部搜索算子對人工蜂群算法進行改進,通過對當前最優蜜源進行局部搜索得到優化結果。
改進后的人工蜂群算法主要步驟如下。
步驟2采蜜蜂在其對應的蜜源附近進行隨機搜索,若存在優于原蜜源的新蜜源,則用新蜜源進行替代,否則保留原蜜源且采集次數加1。
步驟3旁觀蜂按概率選擇蜜源,和采蜜蜂采用同樣方式更新蜜源。
步驟4將搜索后各蜜源函數值與f(Xbest)進行比較,若蜜源中存在結果優于f(Xbest)的蜜源,則將該蜜源的坐標值賦予Xbest并更新其函數值f(Xbest),否則依舊保留原來的值。
步驟5若計算循環次數達到設定的迭代間隔,則利用局部搜索算子進行局部搜索,更新最優解。
步驟6若存在蜜源的采集次數大于采集次數上限,對應采蜜蜂轉換為偵察蜂隨機搜索新蜜源,采集次數歸0,用新蜜源代替舊蜜源,返回步驟2。
循環結束后得到的Xbest即為目標函數的最優解,f(Xbest)為最優目標函數值,圖1為該算法流程。

圖1 改進人工蜂群算法流程 Fig.1 Flow chart of the improved artificial bee colony algorithm
將改進后的人工蜂群算法與動態規劃法相結合,利用人工蜂群算法進行離線造表,再將其應用于實時負荷優化分配,其流程如圖2所示。

圖2 改進人工蜂群算法造表流程 Fig.2 Flow chart of table making of the improved artificial bee colony algorithm
為驗證上述算法及其改進的有效性,將算法應用于某電廠的5臺發電機組(4臺300 MW機組和1臺660 MW機組)的負荷優化分配中,各機組的負荷上下限及煤耗特性系數見表1。

表1 機組負荷上下限及煤耗特性系數 Tab.1 The upper and lower limits of unit load and characteristic coefficient of coal consumption
分別采用動態規劃法、基于遺傳算法[20]、基于改進人工蜂群算法對上述5臺機組建立負荷優化表,總負荷步長設置為Δ=1 MW。改進人工蜂群算法參數設置為:蜜蜂種群數量N=50,則蜜源數量、采蜜蜂數量和旁觀蜂數量均為S=N/2=25,最大采集次數llimit=20,算法終止的最大循環次數Cmax=100,進入局部搜索的迭代間隔Cstep=2。遺傳算法的參數設置:種群規模為100個,交叉概率為0.5,變異概率為0.2,進化代數為500。
將改進人工蜂群算法與改進前比較,在總負荷為1 395 MW時,改進前后算法的收斂曲線對比如圖3所示。

圖3 改進前后人工蜂群算法收斂曲線對比 Fig.3 Comparison of convergence curves of the artificial bee colony algorithm before and after improvement
從圖3可以看出,改進后的人工蜂群算法具有更快的收斂速度,且改進后的算法計算結果優于改進前人工蜂群算法,因此在用于動態規劃順序造表時能夠更好地提升計算效率及優化結果準確性。
在構造順序表的過程中,取機組負荷步長Δ′ =0.01 MW,即負荷優化分配精度為0.01 MW時進行造表。傳統方法、遺傳算法、改進人工蜂群算法造表計算時間分別為229.39、149.59、92.04 s。由于傳統動態規劃法采用的是窮舉方式進行造表,在機組負荷步長小、精度高的情況下,需要窮舉計算的負荷分配方案多,計算效率低,傳統方法造表所需時間遠大于改進人工蜂群算法所需時間。而與遺傳算法造表方式相比,采用改進人工蜂群算法也減少了一定的時間。
此外,將基于改進人工蜂群算法和文獻[20]中的基于遺傳算法的造表結果與動態規劃法相比較,得到5臺機組的最佳負荷分配曲線,結果如圖4—圖6所示。

圖4 基于動態規劃法的機組最佳分配曲線 Fig.4 The optimal distribution curves of the unit based on dynamic programming

圖6 基于人工蜂群算法的機組最佳分配曲線 Fig.6 The optimal distribution curves of the units based on artificial bee colony algorithm
對比圖4與圖5、圖6可以看出,本文方法和文獻[20]中采用遺傳算法求解得到的各機組全負荷段的負荷優化分配結果與傳統方法基本一致。在總負荷為1 076 ~1 410 MW負荷段主要由5號機組承擔變負荷任務;在1 448 ~1 783 MW負荷段主要由1、2號機組承擔變負荷任務;其余負荷段主要由3、4號機組承擔變負荷任務。但是,遺傳算法作為一種智能算法,其求解結果可能是優化計算的一個可行解而非最優解,這就使得圖5中機組負荷出現波動。從圖6可以看出,本文方法能夠有效收斂于最優解,避免出現上述情況。

圖5 基于遺傳算法的機組最佳分配曲線 Fig.5 The optimal distribution curves of the unit based on genetic algorithm
選取電廠實際運行數據,在總負荷分別為1 005、1 312、1 627 MW時進行負荷分配,2種方法下負荷分配結果及電廠運行數據的對比見表2。由表2可以看出,將2種不同方式得到的優化分配表應用于負荷優化分配,在不同總負荷下得到的各機組負荷結果一致,煤耗量相等。與電廠運行數據相比,2種優化方法均取得了一定的節煤效果:在1 005 MW負荷下,煤耗量由原來的332.657 t/h下降到330.813 t/h,降低0.56%;在1 312 MW負荷下,由422.001 t/h下降到421.013 t/h,降低0.23%;在1 627 MW負荷下,由517.139 t/h下降到516.383 t/h,降低0.15%。

表2 不同總負荷時優化結果對比 Tab.2 The optimization results at different total loads
因此,本文利用改進人工蜂群算法進行負荷優化分配造表的方式能夠在減小計算時間的同時確保計算結果準確,有效減少煤耗量,提升機組運行的經濟性。
1)本文提出了基于改進人工蜂群算法的動態規劃算法。通過將改進人工蜂群算法應用于動態規劃造表過程,對全負荷區間的優化分配計算,再將計算結果應用于實時在線的廠級負荷優化分配。
2)相關算例結果表明,在一定的機組負荷步長下,本文方法在保證求解結果的準確性的同時可以減小造表所需時間。
3)在機組實際運行過程中,由于煤種、溫度等環境因素的變化往往會導致機組運行特性的變化,機組耗量特性需要實時更新。快速的全負荷區間優化計算可以與實時更新的機組耗量特性數據相結合,在機組耗量特性發生改變時快速完成優化分配表的同步更新。基于優化表能夠將優化結果快速應用于機組的負荷分配,確保機組負荷分配的實時性,避免復雜的優化計算耗費額外時間。