李東麟,朱建宏,王華廣,胡榮遠,葉佳威,王培紅
(1.貴州黔西中水發(fā)電有限公司,貴州 黔西 551500; 2.國核電力規(guī)劃設(shè)計研究院有限公司,北京 100095; 3.東南大學(xué)能源與環(huán)境學(xué)院,江蘇 南京 210096)
在全球能源低碳轉(zhuǎn)型的大背景下,我國作為世界上最大的能源生產(chǎn)國和能源消費國提出了“碳達峰”以及“碳中和”的雙碳目標,風(fēng)能、太陽能等非化石能源的開發(fā)利用是實現(xiàn)該目標的重要手 段。但是風(fēng)能、太陽能等非化石能源發(fā)電方式存在不穩(wěn)定性,其發(fā)電量受外部環(huán)境影響較大,為維持電網(wǎng)安全穩(wěn)定運行,需要火電機組承擔(dān)電網(wǎng)內(nèi)調(diào)峰調(diào)頻。由于火電機組的能耗受負荷影響較大,在調(diào)峰的過程中,火電機組負荷大范圍變動對機組運行的安全性和經(jīng)濟性會產(chǎn)生巨大影響。
火電機組負荷優(yōu)化分配是指將外界總負荷分配至廠內(nèi)并列運行的各機組,使廠內(nèi)總煤耗量(目標函數(shù))最小[1]。在外界負荷大幅度變化的過程中,負荷優(yōu)化分配可以取得良好的節(jié)能降碳效果。針對負荷優(yōu)化分配問題,許多算法都被用于其求解過程:基于傳統(tǒng)優(yōu)化算法的等微增法[2-3]等、基于數(shù)學(xué)規(guī)劃的動態(tài)規(guī)劃法[4-6]等以及基于現(xiàn)代智能優(yōu)化算法的遺傳算法[7-8]、粒子群算法[9-13]、進化算法[14]等。
相較于其他算法,動態(tài)規(guī)劃法在求解負荷優(yōu)化分配過程中,采用優(yōu)化計算與應(yīng)用相分離的方式,離線構(gòu)造全負荷區(qū)間內(nèi)的機組負荷優(yōu)化分配表,再將其應(yīng)用于實時的負荷優(yōu)化分配。其負荷優(yōu)化分配表采用全區(qū)域枚舉法,當(dāng)機組負荷步長選取過大時,會導(dǎo)致分配結(jié)果精度低,可能并非為對應(yīng)負荷下的最優(yōu)解;當(dāng)機組負荷步長過小時,計算時間過長,計算效率低下。
人工蜂群算法是由土耳其學(xué)者Karaboga于2005年提出,其依據(jù)為蜂群的采蜜行為:在沒有統(tǒng)一指揮的情況下蜂群總能夠發(fā)現(xiàn)優(yōu)質(zhì)蜜源。與經(jīng)典優(yōu)化算法相比,人工蜂群算法簡單,對外部信息要求少,僅依靠適應(yīng)度函數(shù)就可完成進化[15]。相較于遺傳算法、差分進化算法和粒子群算法,人工蜂群算法有較好的求解質(zhì)量[16-18]。
因此,本文針對動態(tài)規(guī)劃算法在實際應(yīng)用中存在的全區(qū)域枚舉導(dǎo)致計算精度與計算效率不兼容的問題,將人工蜂群算法應(yīng)用于動態(tài)規(guī)劃的分配表構(gòu)造,簡化計算過程,在保證求解精度的同時提高計算效率。通過將人工蜂群算法在全負荷區(qū)間內(nèi)完成負荷優(yōu)化分配計算,離線構(gòu)造負荷優(yōu)化分配優(yōu)化順序表,實現(xiàn)全負荷區(qū)間內(nèi)的負荷優(yōu)化分配計算。優(yōu)化計算得到的負荷優(yōu)化分配順序表應(yīng)用逆序分配,完成機組運行的實時在線優(yōu)化。將改進后的方法應(yīng)用于以最小煤耗量為優(yōu)化目標的負荷優(yōu)化分配模型,在滿足各約束條件情況下進行負荷分配,并以5臺機組為實例進行計算分析。
為追求經(jīng)濟性,火電廠負荷優(yōu)化分配通常以最小化供電成本為優(yōu)化目標,考慮到煤耗量與負荷的關(guān)系近似于成本與負荷的關(guān)系,因此選取煤耗量作為負荷優(yōu)化分配的目標函數(shù)。以最小煤耗量作為優(yōu)化計算的目標函數(shù),則計算關(guān)系式為:
式中:F為全廠總煤耗量,t/h;Fi為第i臺機組的煤耗量,t/h;N為機組臺數(shù);fi(Pi)為第i臺機組的煤耗特性關(guān)系;Pi為第i臺機組的負荷,MW;ai、bi、ci均為第i臺機組的煤耗特性系數(shù)。
功率平衡約束為各機組負荷之和等于全廠總負荷:
式中:PD為總負荷,MW。
機組負荷上下限約束為各機組負荷大小應(yīng)處于其負荷上下限區(qū)間內(nèi):
式中:Pmin,i為第i臺機組負荷下限,MW;Pmax,i為第i臺機組負荷上限,MW。
動態(tài)規(guī)劃法通過將優(yōu)化計算過程與分配過程相分離,有效簡化了負荷優(yōu)化分配的在線應(yīng)用。設(shè)有N臺彼此獨立運行的單元機組,用x1,x2,…,xN分別表示各機組負荷,用f1,f2,…,fN分別表示各機組的煤耗量。在總負荷yN下,電廠并列運行機組間的負荷優(yōu)化分配問題的數(shù)學(xué)模型為[19]:
在總負荷yN下,存在唯一的各機組負荷組合x1,x2,…,xN使煤耗量最小為FN*,即:
利用求和原理得到:
即:
由式(8)—式(10)可知,對于1個有N項變量的多變量函數(shù),可將其轉(zhuǎn)化為N步遞推函數(shù),通過對遞推函數(shù)優(yōu)化就可得到最后多變量函數(shù)的優(yōu)化解。
動態(tài)規(guī)劃在負荷優(yōu)化分配問題的應(yīng)用通常分為2個階段:第1階段為順序造表,即按i=1,2,…,N的順序根據(jù)第i階段總負荷yi的大小次序,求出對應(yīng)的當(dāng)前階段最優(yōu)煤耗量Fi*(yi)和當(dāng)前負荷下第i臺機組分配的負荷xi*,填入順序表中;第2階段是逆序分配,即根據(jù)給定的總負荷yN,由表格按j=N,N-1,…,1的逆序方向依次查找yN對應(yīng)的所有xi*值,得到總負荷yN下最優(yōu)煤耗量時的各機組負荷。
人工蜂群(ABC)算法包含蜜源、采蜜蜂和待工蜂3個組成要素。蜜源是蜜蜂采集的食物源,即各種可能的解,可以通過適應(yīng)度來衡量蜜源的優(yōu)劣;采蜜蜂是正在進行采蜜行為的蜜蜂,與其所采集的蜜源相對應(yīng),攜帶相關(guān)蜜源信息并以一定的概率與其他蜜蜂分享;待工蜂是尚未進行采蜜行為的蜜蜂,分為旁觀蜂和偵察蜂2種,偵察蜂負責(zé)搜索新蜜源,旁觀蜂則通過和采蜜蜂分享相關(guān)信息,尋找蜜源。
在算法初始化時,蜂群中采蜜蜂與旁觀蜂各占50%,而蜜源與采蜜蜂一一對應(yīng),數(shù)量一致。當(dāng)采蜜蜂放棄其對應(yīng)的蜜源時,采蜜蜂將轉(zhuǎn)換為偵察蜂搜索新蜜源。在算法循環(huán)計算的過程中采蜜蜂會在蜜源的鄰域進行搜索,并在返回蜂巢之后將相應(yīng)蜜源的信息反饋給旁觀蜂,旁觀蜂在這些蜜源之中進行選擇后,在所選蜜源的鄰域內(nèi)進行搜索。當(dāng)采蜜蜂在設(shè)定的采集次數(shù)上限內(nèi)未獲得更優(yōu)的新蜜源對舊蜜源進行更新時,采蜜蜂將放棄對應(yīng)蜜源轉(zhuǎn)換為偵察蜂。
在人工蜂群算法中,假定搜索空間為D維,蜜蜂種群數(shù)量為N,則采蜜蜂和旁觀蜂的數(shù)量一般為S=N/2;蜜源和采蜜蜂一一對應(yīng),其數(shù)量也為S,則優(yōu)化計算過程如下。
初始蜜源生成公式為:
式中:xi,j為第i個蜜源或采蜜蜂的第j維坐標,i∈(1, 2,…,S),j∈(1, 2,…,D);xmax,j、xmin,j分別為第j維坐標的取值上、下限。
蜜源適應(yīng)度計算公式為:
“感人心者,莫過于情。”情感是打開心靈之窗的鑰匙,是人心活動的外化形式,是對語言表達的重要補充。領(lǐng)導(dǎo)干部,特別是基層的領(lǐng)導(dǎo)干部,要真心把基層的員工當(dāng)作親人,以情感人,善于洞察員工的情緒變化,在工作、生活交往中體現(xiàn)情感的價值;要友好地架設(shè)“感情線”,根據(jù)個人性格以及出現(xiàn)不同的情緒、情感,有針對性地采取措施,消除情感負面作用,善用情感交流,達到提高情感待遇的最終目的。
式中:fiti為第i個蜜源的適應(yīng)度;fi為第i個蜜源的目標函數(shù)值。
為避免出現(xiàn)早熟現(xiàn)象,本文采用基于排序的選擇概率,蜜源選擇概率計算公式為:
式中:pi為第i個采蜜蜂對應(yīng)蜜源被選擇的概率,i∈(1, 2,…,S);a(t)為自適應(yīng)參數(shù)。
式中:t=1, 2,…,Cmax;Cmax為最大循環(huán)次數(shù)。
蜜源更新計算公式為:
式中:vi,j為第i個采蜜蜂在其對應(yīng)蜜源附近搜索得到的新蜜源的第j維坐標,i∈(1, 2,…,S),j∈(1, 2,…,D);xk,j為隨機確定的第k個采蜜蜂的第j維坐標;φi,j為在[-1, 1]區(qū)間產(chǎn)生的隨機值。
為了提高人工蜂群算法的收斂速度,本文引入局部搜索算子對人工蜂群算法進行改進,通過對當(dāng)前最優(yōu)蜜源進行局部搜索得到優(yōu)化結(jié)果。
改進后的人工蜂群算法主要步驟如下。
步驟2采蜜蜂在其對應(yīng)的蜜源附近進行隨機搜索,若存在優(yōu)于原蜜源的新蜜源,則用新蜜源進行替代,否則保留原蜜源且采集次數(shù)加1。
步驟3旁觀蜂按概率選擇蜜源,和采蜜蜂采用同樣方式更新蜜源。
步驟4將搜索后各蜜源函數(shù)值與f(Xbest)進行比較,若蜜源中存在結(jié)果優(yōu)于f(Xbest)的蜜源,則將該蜜源的坐標值賦予Xbest并更新其函數(shù)值f(Xbest),否則依舊保留原來的值。
步驟5若計算循環(huán)次數(shù)達到設(shè)定的迭代間隔,則利用局部搜索算子進行局部搜索,更新最優(yōu)解。
步驟6若存在蜜源的采集次數(shù)大于采集次數(shù)上限,對應(yīng)采蜜蜂轉(zhuǎn)換為偵察蜂隨機搜索新蜜源,采集次數(shù)歸0,用新蜜源代替舊蜜源,返回步驟2。
循環(huán)結(jié)束后得到的Xbest即為目標函數(shù)的最優(yōu)解,f(Xbest)為最優(yōu)目標函數(shù)值,圖1為該算法流程。
圖1 改進人工蜂群算法流程 Fig.1 Flow chart of the improved artificial bee colony algorithm
將改進后的人工蜂群算法與動態(tài)規(guī)劃法相結(jié)合,利用人工蜂群算法進行離線造表,再將其應(yīng)用于實時負荷優(yōu)化分配,其流程如圖2所示。
圖2 改進人工蜂群算法造表流程 Fig.2 Flow chart of table making of the improved artificial bee colony algorithm
為驗證上述算法及其改進的有效性,將算法應(yīng)用于某電廠的5臺發(fā)電機組(4臺300 MW機組和1臺660 MW機組)的負荷優(yōu)化分配中,各機組的負荷上下限及煤耗特性系數(shù)見表1。
表1 機組負荷上下限及煤耗特性系數(shù) Tab.1 The upper and lower limits of unit load and characteristic coefficient of coal consumption
分別采用動態(tài)規(guī)劃法、基于遺傳算法[20]、基于改進人工蜂群算法對上述5臺機組建立負荷優(yōu)化表,總負荷步長設(shè)置為Δ=1 MW。改進人工蜂群算法參數(shù)設(shè)置為:蜜蜂種群數(shù)量N=50,則蜜源數(shù)量、采蜜蜂數(shù)量和旁觀蜂數(shù)量均為S=N/2=25,最大采集次數(shù)llimit=20,算法終止的最大循環(huán)次數(shù)Cmax=100,進入局部搜索的迭代間隔Cstep=2。遺傳算法的參數(shù)設(shè)置:種群規(guī)模為100個,交叉概率為0.5,變異概率為0.2,進化代數(shù)為500。
將改進人工蜂群算法與改進前比較,在總負荷為1 395 MW時,改進前后算法的收斂曲線對比如圖3所示。
圖3 改進前后人工蜂群算法收斂曲線對比 Fig.3 Comparison of convergence curves of the artificial bee colony algorithm before and after improvement
從圖3可以看出,改進后的人工蜂群算法具有更快的收斂速度,且改進后的算法計算結(jié)果優(yōu)于改進前人工蜂群算法,因此在用于動態(tài)規(guī)劃順序造表時能夠更好地提升計算效率及優(yōu)化結(jié)果準確性。
在構(gòu)造順序表的過程中,取機組負荷步長Δ′ =0.01 MW,即負荷優(yōu)化分配精度為0.01 MW時進行造表。傳統(tǒng)方法、遺傳算法、改進人工蜂群算法造表計算時間分別為229.39、149.59、92.04 s。由于傳統(tǒng)動態(tài)規(guī)劃法采用的是窮舉方式進行造表,在機組負荷步長小、精度高的情況下,需要窮舉計算的負荷分配方案多,計算效率低,傳統(tǒng)方法造表所需時間遠大于改進人工蜂群算法所需時間。而與遺傳算法造表方式相比,采用改進人工蜂群算法也減少了一定的時間。
此外,將基于改進人工蜂群算法和文獻[20]中的基于遺傳算法的造表結(jié)果與動態(tài)規(guī)劃法相比較,得到5臺機組的最佳負荷分配曲線,結(jié)果如圖4—圖6所示。
圖4 基于動態(tài)規(guī)劃法的機組最佳分配曲線 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]中采用遺傳算法求解得到的各機組全負荷段的負荷優(yōu)化分配結(jié)果與傳統(tǒng)方法基本一致。在總負荷為1 076 ~1 410 MW負荷段主要由5號機組承擔(dān)變負荷任務(wù);在1 448 ~1 783 MW負荷段主要由1、2號機組承擔(dān)變負荷任務(wù);其余負荷段主要由3、4號機組承擔(dān)變負荷任務(wù)。但是,遺傳算法作為一種智能算法,其求解結(jié)果可能是優(yōu)化計算的一個可行解而非最優(yōu)解,這就使得圖5中機組負荷出現(xiàn)波動。從圖6可以看出,本文方法能夠有效收斂于最優(yōu)解,避免出現(xiàn)上述情況。
圖5 基于遺傳算法的機組最佳分配曲線 Fig.5 The optimal distribution curves of the unit based on genetic algorithm
選取電廠實際運行數(shù)據(jù),在總負荷分別為1 005、1 312、1 627 MW時進行負荷分配,2種方法下負荷分配結(jié)果及電廠運行數(shù)據(jù)的對比見表2。由表2可以看出,將2種不同方式得到的優(yōu)化分配表應(yīng)用于負荷優(yōu)化分配,在不同總負荷下得到的各機組負荷結(jié)果一致,煤耗量相等。與電廠運行數(shù)據(jù)相比,2種優(yōu)化方法均取得了一定的節(jié)煤效果:在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 不同總負荷時優(yōu)化結(jié)果對比 Tab.2 The optimization results at different total loads
因此,本文利用改進人工蜂群算法進行負荷優(yōu)化分配造表的方式能夠在減小計算時間的同時確保計算結(jié)果準確,有效減少煤耗量,提升機組運行的經(jīng)濟性。
1)本文提出了基于改進人工蜂群算法的動態(tài)規(guī)劃算法。通過將改進人工蜂群算法應(yīng)用于動態(tài)規(guī)劃造表過程,對全負荷區(qū)間的優(yōu)化分配計算,再將計算結(jié)果應(yīng)用于實時在線的廠級負荷優(yōu)化分配。
2)相關(guān)算例結(jié)果表明,在一定的機組負荷步長下,本文方法在保證求解結(jié)果的準確性的同時可以減小造表所需時間。
3)在機組實際運行過程中,由于煤種、溫度等環(huán)境因素的變化往往會導(dǎo)致機組運行特性的變化,機組耗量特性需要實時更新??焖俚娜摵蓞^(qū)間優(yōu)化計算可以與實時更新的機組耗量特性數(shù)據(jù)相結(jié)合,在機組耗量特性發(fā)生改變時快速完成優(yōu)化分配表的同步更新?;趦?yōu)化表能夠?qū)?yōu)化結(jié)果快速應(yīng)用于機組的負荷分配,確保機組負荷分配的實時性,避免復(fù)雜的優(yōu)化計算耗費額外時間。