郝浩 張庭玉
摘? ?要:為了降低火電廠煤耗,針對(duì)廠內(nèi)機(jī)組負(fù)荷分配問題,本文提出模擬退火的粒子群算法進(jìn)行優(yōu)化。該方法采取異步變化的學(xué)習(xí)因子和模擬退火算法對(duì)標(biāo)準(zhǔn)粒子群算法進(jìn)行改進(jìn)。通過對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),改進(jìn)的算法能有效進(jìn)行負(fù)荷分配,具有較高的優(yōu)化效率和精度。
關(guān)鍵詞:改進(jìn)粒子群算法? 負(fù)荷優(yōu)化分配? 模擬退火? 異步變化學(xué)習(xí)因子
中圖分類號(hào):TP39? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1674-098X(2019)10(a)-0106-03
隨著電力市場(chǎng)改革的進(jìn)一步推進(jìn),發(fā)電企業(yè)之間的市場(chǎng)競(jìng)爭(zhēng)愈發(fā)激烈。降低煤耗對(duì)火電廠降低成本,增強(qiáng)市場(chǎng)競(jìng)爭(zhēng)力至關(guān)重要。負(fù)荷優(yōu)化分配的目的就是在滿足電力系統(tǒng)約束條件的基礎(chǔ)上,根據(jù)機(jī)組的煤耗特性,科學(xué)合理分配各機(jī)組負(fù)荷,使得機(jī)組總煤耗等目標(biāo)盡可能小[1]。因此,解決負(fù)荷分配問題對(duì)火電廠實(shí)現(xiàn)經(jīng)濟(jì)運(yùn)行,提高經(jīng)濟(jì)效益有著重要意義。
目前,解決這類約束優(yōu)化問題主要有傳統(tǒng)算法和智能優(yōu)化算法。傳統(tǒng)算法主要有等微增率,線性規(guī)劃[2],動(dòng)態(tài)規(guī)劃等。智能優(yōu)化算法主要有粒子群,遺傳算法等[3]。本文提出將模擬退火算法與異步學(xué)習(xí)因子粒子群算法進(jìn)行結(jié)合的方法。通過與其他算法的比較,本文算法能有效加快收斂速度,提高全局尋優(yōu)能力,優(yōu)化負(fù)荷分配,降低煤耗。
1? 關(guān)鍵技術(shù)
1.1 負(fù)荷分配數(shù)學(xué)模型
設(shè)某臺(tái)機(jī)組i的標(biāo)準(zhǔn)煤耗為Fi,此機(jī)組的輸出功率為pi,那么二次函數(shù)關(guān)系式fi(pi)為:式中:ai、bi、ci為此機(jī)組煤耗特性曲線系數(shù)。
本文以全廠總煤耗F最小為目標(biāo),設(shè)電廠有N臺(tái)機(jī)組投入運(yùn)行,那么負(fù)荷優(yōu)化分配的目標(biāo)函數(shù)為:電網(wǎng)下達(dá)至電廠的總負(fù)荷為D,每臺(tái)機(jī)組都有最大最小輸出功率pimax、pimin,那么約束條件如下:
1.2 粒子群算法
粒子群算法(Particle Swarm Optimization, PSO)的具體描述如下:設(shè)有D維空間,種群X由n個(gè)粒子組成,粒子i在空間中的位置為Xi,速度為Vi,計(jì)算出每個(gè)粒子位置Xi對(duì)應(yīng)的適應(yīng)度值,并比較適應(yīng)度值大小,找到當(dāng)前個(gè)體最優(yōu)解Pi。粒子從當(dāng)前最優(yōu)解所在位置尋找到符合目標(biāo)函數(shù)的位置,得到全局最優(yōu)解為Pg。在迭代過程中,粒子根據(jù)公式(4)、(5)更新Xi和Vi,如果尋找到的新解比當(dāng)前最優(yōu)解好,那么更新Pi,如果新解比當(dāng)前全局的最優(yōu)解要好,那么將其賦值給Pg。速度和位置更新的公式如下:式中,w為慣性權(quán)重;d=1,2,…,D;i=1,2, …,n;k表示當(dāng)前迭代次數(shù);為粒子的速度;c1和c2為加速度因子;r1和r2表示分布在[0,1]之間的隨機(jī)數(shù)。
1.3 改進(jìn)算法
1.3.1 異步學(xué)習(xí)因子
學(xué)習(xí)因子c1和c2決定了粒子更新速度時(shí)自身經(jīng)驗(yàn)和社會(huì)經(jīng)驗(yàn)所占的權(quán)重,本文采用異步變化的學(xué)習(xí)因子,使學(xué)習(xí)因子能夠隨著迭代次數(shù)不同發(fā)生變化,這樣在迭代初期,粒子自身經(jīng)驗(yàn)在計(jì)算粒子速度時(shí)所占的權(quán)重較大,在迭代后期,粒子社會(huì)經(jīng)驗(yàn)在計(jì)算粒子速度時(shí)所占的權(quán)重較大,最終增強(qiáng)了算法的全局搜索能力。本文異步變化學(xué)習(xí)因子的公式為:
1.3.2 本文算法
本文提出模擬退火的粒子群算法(Simulated Annealing Particle Swarm Optimization, SAPSO)。模擬退火算法模擬了物理固體退火的過程,采取Metropolis準(zhǔn)則,有一定概率接受劣質(zhì)解的特點(diǎn)。本文算法借鑒SA算法,每當(dāng)粒子群產(chǎn)生一個(gè)新解,先利用SA計(jì)算新解的突跳概率,之后進(jìn)行判斷是否接受。這樣不僅控制著整個(gè)迭代過程往最優(yōu)解的方向進(jìn)行,又能以一定概率跳出局部極值點(diǎn),從而達(dá)到優(yōu)化效果。算法步驟如下:
Step1 設(shè)置粒子群算法的參數(shù),在機(jī)組最大最小輸出功率范圍內(nèi)隨機(jī)生成初始種群,調(diào)用煤耗特性曲線計(jì)算適應(yīng)度,找到初始全局最優(yōu)解和最優(yōu)適應(yīng)度。
Step2 設(shè)置SA算法的初始溫度,為當(dāng)前全局最優(yōu)適應(yīng)度值。
Step3 根據(jù)公式(6)得到異步學(xué)習(xí)因子,根據(jù)公式(4)更新粒子的速度和位置,并計(jì)算適應(yīng)度值。
Step4 計(jì)算更新后的粒子新解的突跳概率,將其與[0,1]之間的隨機(jī)數(shù)進(jìn)行比較,判斷是否接受本次更新,如果大于隨機(jī)數(shù),就接受該新解,執(zhí)行下一步,否則重新更新粒子速度和位置。
Step5 比較新解與原粒子的適應(yīng)度,如果小于當(dāng)前個(gè)體最優(yōu)解,那么把更新后的粒子賦值給當(dāng)前位置,如果仍小于當(dāng)前全局最優(yōu)解,那么修改全局最優(yōu)解為更新后的粒子。
Step6 進(jìn)行退火操作,c為退火系數(shù),如果此時(shí)已經(jīng)達(dá)到收斂條件,那么結(jié)束本次迭代,否則進(jìn)入Step2進(jìn)入下一次迭代,繼續(xù)尋優(yōu)。
2? 機(jī)組負(fù)荷優(yōu)化分配模型的建立
電廠廠級(jí)負(fù)荷具體分配流程圖如下圖1所示。具體流程如下:
(1)獲取電廠每臺(tái)機(jī)組的歷史運(yùn)行數(shù)據(jù),進(jìn)行數(shù)據(jù)預(yù)處理,選擇穩(wěn)態(tài)數(shù)據(jù)。
(2)利用非線性最小二乘法分別擬合出每臺(tái)機(jī)組的輸出功率與實(shí)際機(jī)組煤耗之間的二次函數(shù)關(guān)系。
(3)獲取電廠的總負(fù)荷指令,該電廠機(jī)組數(shù)以及每臺(tái)機(jī)組的最大最小輸出功率。
(4)利用改進(jìn)粒子群算法進(jìn)行負(fù)荷優(yōu)化分配,得到各機(jī)組的分配結(jié)果,并輸出。
(5)判斷電廠是否接收到新的負(fù)荷指令,如果有新的負(fù)荷指令,跳至第(3)步,繼續(xù)優(yōu)化分配負(fù)荷,否則結(jié)束本次分配流程。
3? 實(shí)驗(yàn)與結(jié)果分析
本文以某火電廠SIS系統(tǒng)中的機(jī)組歷史運(yùn)行數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。該火電廠有2臺(tái)機(jī)組,歷史數(shù)據(jù)為2018年每天間隔4小時(shí)的數(shù)據(jù)。利用非線性最小二乘法擬合得到機(jī)組特性函數(shù)式系數(shù)和各機(jī)組的最大最小輸出功率見表1。本文將SAPSO與標(biāo)準(zhǔn)PSO,動(dòng)態(tài)慣性權(quán)重WPSO算法[3]的實(shí)驗(yàn)結(jié)果進(jìn)行比較。不同算法參數(shù)設(shè)置如表2所示。
3.1 優(yōu)化結(jié)果分析
將實(shí)際生產(chǎn)中的兩臺(tái)機(jī)組歷史同一時(shí)段的負(fù)荷值相加,得到該段時(shí)間內(nèi)電廠收到的總負(fù)荷指令。通過SAPSO算法,將所得到的總負(fù)荷進(jìn)行分配。該火電廠某天24h每間隔4h的6個(gè)負(fù)荷指令值進(jìn)行優(yōu)化分配的結(jié)果與實(shí)際運(yùn)行情況之間的對(duì)比如表3。
觀察表3的實(shí)際煤耗與SAPSO煤耗可以發(fā)現(xiàn),SAPSO結(jié)果都低于實(shí)際煤耗,當(dāng)總負(fù)荷為1608.68MW時(shí),SAPSO煤耗比實(shí)際煤耗降低了9.71g/kwh,當(dāng)總負(fù)荷為1602.73MW時(shí),SAPSO煤耗比實(shí)際煤耗降低了6.45g/kwh,說明SAPSO進(jìn)行負(fù)荷分配,一定程度地降低了煤耗。通過對(duì)比兩個(gè)分配方案,發(fā)現(xiàn)SAPSO負(fù)荷分配方案里機(jī)組1分到的負(fù)荷普遍比機(jī)組2多,而實(shí)際的分配接近于平均分配方法,說明SAPSO更能根據(jù)機(jī)組煤耗特性進(jìn)行分配,從而降低煤耗,為電廠調(diào)度提供參考。
3.2 不同算法迭代速度比較
圖3為迭代次數(shù)相同,負(fù)荷為1500MW時(shí),各粒子群算法的適應(yīng)度值變化曲線??梢钥闯?,不同負(fù)荷下,SAPSO表現(xiàn)都優(yōu)于PSO和WPSO。WPSO基本在迭代次數(shù)20以內(nèi)接近最優(yōu)解,SAPSO在迭代次數(shù)10次以內(nèi)已經(jīng)接近最優(yōu)解,SAPSO的收斂速度更快,算法尋優(yōu)能力明顯提高。
4? 結(jié)語
本文采用模擬退火改進(jìn)的粒子群算法進(jìn)行電廠機(jī)組負(fù)荷優(yōu)化分配。通過對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),改進(jìn)粒子群算法進(jìn)行負(fù)荷分配能有效降低煤耗,分配方案明顯優(yōu)于實(shí)際情況;在迭代次數(shù)相同,總負(fù)荷相同的情況下,改進(jìn)粒子群算法的收斂速度更快。綜上所述,本文算法具有較強(qiáng)的實(shí)用性和適用性。
參考文獻(xiàn)
[1] 金洪吉. 火電廠機(jī)組負(fù)荷優(yōu)化分配的混沌粒子群算法分析[J]. 電子器件,2017,40(1):212-216.
[2] 王惠杰, 范志愿,李鑫鑫.基于線性規(guī)劃法和等微增率法的電廠負(fù)荷優(yōu)化分配[J].電力科學(xué)與工程, 2016, 32(1):1-5,30.
[3] 亢國棟,孫偉,楊海群,等.基于改進(jìn)粒子群優(yōu)化算法的火電廠機(jī)組負(fù)荷分配[J].計(jì)算機(jī)測(cè)量與控制,2015, 23(2):593-596.