簡介: 供水管網(wǎng)優(yōu)化調(diào)度的一級優(yōu)化是一個(gè)非線性優(yōu)化問題,本文通過分析管網(wǎng)的水力關(guān)系,對管網(wǎng)水力關(guān)系進(jìn)行合理的線性化,使目標(biāo)函數(shù)和約束條件顯式化,將問題轉(zhuǎn)化為序列二次規(guī)劃問題。在求解二次規(guī)劃問題中,考慮到大部分節(jié)點(diǎn)水頭的約束是非作用約束,利用線性化結(jié)果,將非作用約束從約束集中剔除,同時(shí)將齒行法的思想和水力學(xué)上的基本概念相結(jié)合,提出了一種適合本問題的修正齒行法,將二次規(guī)劃結(jié)果拉回到原約束面,保證了解的可行性。最后還初步分析了優(yōu)化計(jì)算的計(jì)算量。數(shù)值試驗(yàn)表明本文的方法計(jì)算量小、效率高,結(jié)果可靠。
關(guān)鍵字:多水源管網(wǎng) 優(yōu)化 序列二次規(guī)劃 齒行法
(1.浙江大學(xué) 水工結(jié)構(gòu)與水環(huán)境研究所,浙江 杭州 310027;2.杭州市自來水總公司,浙江 杭州 310016)
1 問題的提出
城市供水管網(wǎng)是城市的生命線之一。這一復(fù)雜的網(wǎng)絡(luò)系統(tǒng),主要通過幾個(gè)供水泵站為城市血液提供能量,送至城市的各個(gè)角落。通過對供水泵站的優(yōu)化調(diào)度,可以降低企業(yè)的制水成本、使管網(wǎng)的供水壓力分布更合理,根據(jù)初步估計(jì),對于一個(gè)日供水量為10萬噸的自來水公司,如果供水揚(yáng)程降低1m,每年可以節(jié)電15萬kW·h;由于管道系統(tǒng)的滲漏與水頭有關(guān),降低供水水頭也可以在一定程度上減少管網(wǎng)的滲漏;供水水頭的降低還可以減少爆管的風(fēng)險(xiǎn),這對于管網(wǎng)的管理有更深刻的意義。因此管網(wǎng)合理調(diào)度研究一直是供水企業(yè)一個(gè)重要課題,同時(shí)也是一個(gè)難題。
供水管網(wǎng)運(yùn)行的合理調(diào)度可以用一個(gè)最優(yōu)化問題來描述,管網(wǎng)的水力方程組是一組非線性方程,各水源水泵的開啟狀態(tài)作為離散變量,因此這是一個(gè)混合變量的非線性最優(yōu)化問題。由于離散變量與連續(xù)變量的同時(shí)存在,求解極為不方便,最常用的方法是將該問題分作兩級進(jìn)行優(yōu)化:一級優(yōu)化是針對管網(wǎng)而言,目的在于求各水源的最佳供水量或最佳供水揚(yáng)程;二級優(yōu)化是在一級最優(yōu)化的基礎(chǔ)上,根據(jù)水源的具體情況,確定滿意的水泵開啟方案和水泵的調(diào)速比。采用以上方法可以在一定程度上降低求解的困難,但一級優(yōu)化也是一個(gè)非線性的優(yōu)化問題,求解起來相當(dāng)麻煩,目前國內(nèi)外最常用的方法是廣義簡約梯度法。廣義簡約梯度法雖屬較優(yōu)秀的約束非線性規(guī)劃算法,根據(jù)作者在以往其他優(yōu)化應(yīng)用方面的研究,其重分析次數(shù)相當(dāng)多。在本優(yōu)化問題中水力計(jì)算是計(jì)算量的主體部分,由數(shù)值試驗(yàn)的經(jīng)驗(yàn)知,在目前中等配置的微機(jī)上完成一個(gè)2000個(gè)左右節(jié)點(diǎn)的供水管網(wǎng),一次水力計(jì)算需要10s左右,如果采用廣義簡約梯度法,需要反復(fù)迭代計(jì)算,花費(fèi)的時(shí)間是相當(dāng)可觀的。由此可見采用廣義簡約梯度法實(shí)現(xiàn)管網(wǎng)的在線優(yōu)化調(diào)度存在較大難度。
本文針對一級優(yōu)化問題,采用序列二次規(guī)劃法進(jìn)行求解。M.J.D.Powell所給出的序列二次規(guī)劃法實(shí)質(zhì)上是運(yùn)用KuhnTucker最優(yōu)化條件所形成的非線性方程進(jìn)行迭代計(jì)算,而這一迭代過程恰好可以用求解一相應(yīng)的二次規(guī)劃問題替代,故原問題的求解過程轉(zhuǎn)化為求解一個(gè)二次規(guī)劃的序列。其中二次規(guī)劃問題的二次目標(biāo)函數(shù)是原問題Lagrange函數(shù)的二次展開式,包含了目標(biāo)與約束函數(shù)的二次信息。通常其二階導(dǎo)數(shù)矩陣由變尺度的思想通過先前迭代點(diǎn)的梯度信息逐步生成。序列二次規(guī)劃法綜合利用了KT條件、變尺度、線性及二次近似等有效手段,在理論上是一種比廣義簡約梯度法優(yōu)秀的算法[1],但是它的迭代序列通常從不可行域逐步逼近可行域,需要在極限情況下才能完全達(dá)到約束要求,這顯然不利于盡快獲得可行的較優(yōu)解,故約束條件的妥善處理非常重要,本文將結(jié)構(gòu)優(yōu)化中齒行法的思想和水力學(xué)的基本概念相結(jié)合,提出了一種新的算法,可以方便地將迭代中的非可行點(diǎn)拉回到約束界面上,獲得了較高的計(jì)算效率,有助于實(shí)現(xiàn)管網(wǎng)的在線優(yōu)化調(diào)度。
2 供水優(yōu)化調(diào)度一級優(yōu)化的數(shù)學(xué)模型
管網(wǎng)的運(yùn)行調(diào)度一般以經(jīng)濟(jì)性作為目標(biāo)函數(shù),與水源的供水量、供水水頭有關(guān),據(jù)此可以建立供水管網(wǎng)的目標(biāo)函數(shù):
min·FG(Qs,Hs) | (1) |
式中:FG為各水源的制水成本和供水的動(dòng)力費(fèi)用;Qs、Hs為各水源的供水量和供水水頭。
供水調(diào)度的主要約束條件有:管網(wǎng)的水力關(guān)系,各水源的水量和水壓的約束,管網(wǎng)中各節(jié)點(diǎn)的最小服務(wù)水頭。這些約束條件分別表示如下:
管網(wǎng)水力關(guān)系
F(Hs,HN,QN) =0 | (2) |
各水源的供水水頭約束
Hsmin≤Hs≤Hsmax | (3) |
各水源的供水量約束
Qsmin(Hs)≤Qs≤Qsmax(Hs) | (4) |
管網(wǎng)各節(jié)點(diǎn)服務(wù)水頭約束
(5) |
其中:Hsmax、Hsmin分為水源的最大、最小供水水頭;Qsmin(Hs)、Qsmax(Hs)分為水源的最大、最小供水能力,通常水源的供水量的能力與供水水頭有關(guān)。HN為管網(wǎng)中各節(jié)點(diǎn)的服務(wù)水頭;HNmax、HNmin分為管網(wǎng)中各節(jié)點(diǎn)的最大、最小服務(wù)水頭;QN為管網(wǎng)中各節(jié)點(diǎn)的節(jié)點(diǎn)流量。
3 模型的求解
模型求解主要有2個(gè)難點(diǎn):(1)約束條件太多,一個(gè)中等復(fù)雜的城市管網(wǎng)可能會(huì)有上千個(gè)約束;(2)目標(biāo)函數(shù)中各變量隱式相關(guān)——水源的供水水頭Hs和供水水量Qs隱式相關(guān)。如果能對以上兩個(gè)方面進(jìn)行適當(dāng)?shù)奶幚,可以大大的降低難度,提高求解效率。針對以上兩點(diǎn),本文從管網(wǎng)的水力條件出發(fā),提出了一套求解方法:
在一定負(fù)荷QN下,將管網(wǎng)的水力計(jì)算公式(2)在H0處作一階泰勒展開有:
(6) |
, 稱為敏度矩陣。如果用哈真-威廉公式表示管道的能量損失,用矩陣A、B可以分別表示為 , ,管網(wǎng)的水力學(xué)公式可以用式(7)表 達(dá)。A和B僅與管網(wǎng)中管道的水力坡度有關(guān)。當(dāng)任一水源的供水水頭發(fā)生變化,由于管網(wǎng)自身的調(diào)節(jié)作用,每根管道的水力坡度的變化幅度要比節(jié)點(diǎn)水頭變化小得多,A、B的變化都比較小。管網(wǎng)的水力計(jì)算公式(2)在H0附近可以線性近似為式(7),且方程有足夠的精度(算例的數(shù)值計(jì)算結(jié)果參見附錄)。
| (7) | |
在文獻(xiàn)[2]中已證明B是正定對稱矩陣,其逆矩陣存在。 |
| |
令 |
| |
則 | (8) |
矩陣C的分量ci,j反映了第j個(gè)水源對節(jié)點(diǎn)i的影響,矩陣C也稱為影響矩陣。如果管網(wǎng)中所有水源的供水水頭同步上升Δh,即ΔHN=[Δh1,Δh2,…,Δhs]T,相當(dāng)于管網(wǎng)的參考水位提高了Δh。由式(8)知管網(wǎng)中任一點(diǎn)的水頭上升的水位 ,因此其中矩陣C的行向量的各分量之和必等于1,各管段的水力坡度不變。如果各水源的供水水頭和節(jié)點(diǎn)流量已知,可求得管網(wǎng)中的各節(jié)點(diǎn)的水頭,同樣可以求出各水源的供水量。水源泵站供水的動(dòng)力能耗可以表示為Qs·Hs/γ(γ為水源效率),供水的動(dòng)力費(fèi)用與耗能成正比。水源供水量在H0附近可以線性近似為:Qs=LsHs。水源的制水0費(fèi)用(除動(dòng)力費(fèi)用)可以表示成RsLsHs(Rs表示各水源的單位制水成本),因此目標(biāo)函數(shù)在H0處可以近似用水源水頭的二次函數(shù)表示如下:
(9) |
各水源的供水量約束在H0處可以線性近似表示:
(10) |
由于在管網(wǎng)中往往只是一部分的最不利節(jié)點(diǎn)違反約束,只要最不利的節(jié)點(diǎn)滿足了服務(wù)水頭的要求,其他節(jié)點(diǎn)也滿足了要求,因此可以將最不利的一些節(jié)點(diǎn)與水源節(jié)點(diǎn)的水頭關(guān)系從式(9)中的影響矩陣C中抽取出來,表示成矩陣G,管網(wǎng)節(jié)點(diǎn)水頭的約束方程(5)可以簡化表示如下:
(11) |
其中Ω為最不利節(jié)點(diǎn)的集合。
通過上述方法,一級優(yōu)化模型在H0附近可以近似表示為線性約束的二次規(guī)劃問題:
(12a) | |
s.t . Hsmin≤Hs≤Hsmax | (12b) |
Qsmin(H0s) +KsminHs≤LsHs≤Qsmax(H0s) +KsmaxHs | (12c) |
(12d) |
在原優(yōu)化問題中,各水源的供水量、管網(wǎng)中節(jié)點(diǎn)的水頭是水源供水水頭的函數(shù),是隱式關(guān)系,求解起來非常不方便。通過把管網(wǎng)水力關(guān)系式(2)線性化,消去原目標(biāo)函數(shù)(1)中的變量——水源供水量Qs,可以把目標(biāo)函數(shù)表示僅含水源水頭變量的形式,將管網(wǎng)中各節(jié)點(diǎn)的水頭HN表示成水源的供水水頭Hs的線性函數(shù),只取其中最不利一部分作為每次優(yōu)化計(jì)算的約束條件,這樣大大地減少了約束條件。如果管網(wǎng)有上千個(gè)節(jié)點(diǎn),只要保證最不利的10%左右節(jié)點(diǎn)滿足服務(wù)水頭約束,就能基本上保證每次優(yōu)化計(jì)算結(jié)果不會(huì)離約束邊界太遠(yuǎn),同時(shí)優(yōu)化計(jì)算的計(jì)算量成倍的減少。
由于采用了線性近似的方法簡化約束條件和目標(biāo)函數(shù),采用二次規(guī)劃法(QP法)優(yōu)化之后會(huì)導(dǎo)致結(jié)果越過實(shí)際約束邊界,其中主要是最不利點(diǎn)不滿足管網(wǎng)最小服務(wù)水頭的要求。在結(jié)構(gòu)優(yōu)化設(shè)計(jì)中經(jīng)常采用齒行法進(jìn)行優(yōu)化迭代,其基本思想是在每次優(yōu)化迭代后,通過射線步(即將所有設(shè)計(jì)變量以同一倍數(shù)放大或縮小)將結(jié)果拉到最嚴(yán)格的約束邊界上。根據(jù)管網(wǎng)水力學(xué),所有的水源的供水水頭同時(shí)都提高或降低相同的水位,使管網(wǎng)的最不利點(diǎn)的水位恰好處于約束邊界上,不會(huì)改變各個(gè)水源的供水關(guān)系。利用這一特性,可以構(gòu)造一修正的射線步,能夠方便的將中間優(yōu)化迭代點(diǎn)拉回到約束界面上(見圖1)。由于在這一修正的射線步中,每個(gè)水源提高的水位相同,因此變化后的值與變化前的值與坐標(biāo)軸正好成45°。上述優(yōu)化方法的流程圖如圖2所示。
4 算 例
為了檢驗(yàn)上述模型的可行性和可靠性,本文采用Fortran語言編制了優(yōu)化計(jì)算程序,算例中管網(wǎng)基本形狀如圖3所示。管網(wǎng)有兩個(gè)水源,12個(gè)節(jié)點(diǎn),19根管道,管網(wǎng)節(jié)點(diǎn)的基本數(shù)據(jù)見表1。 |
|
如果是采用迭代法求解線性方程組,那么還需要額外求解S+1個(gè)線性方程組(S表示水源數(shù)),由于水源數(shù)一般比較少,約束線性化的計(jì)算量相比進(jìn)行一次水力計(jì)算來講要少得多。再有是二次規(guī)劃問題的求解,影響二次規(guī)劃問題的計(jì)算量主要是約束量,通過線性化之后,剔除了大部分非作用約束,即使對于上千個(gè)節(jié)點(diǎn)的管網(wǎng),也可以把約束量控制在100個(gè)左右。在本文算例的迭代計(jì)算過程中,服務(wù)水頭約束條件的最大的違反值是個(gè)別最不利點(diǎn)比最小服務(wù)水頭約束小0.45m,這一誤差能夠滿足實(shí)際應(yīng)用的要求。二次規(guī)劃問題采用Lemke算法,該算法是在單純形法基礎(chǔ)上加以適當(dāng)修改來求解二次規(guī)劃的K-T點(diǎn),其計(jì)算量與單純行法計(jì)算量相當(dāng),所以二次規(guī)劃計(jì)算中的計(jì)算量也比較小。綜合以上的分析,可以估計(jì)每次尋優(yōu)迭代的計(jì)算一般不會(huì)超過2~3次水力計(jì)算,比常用的廣義簡約梯度法計(jì)算量要小得多。本文中的算例特意在配置較低的計(jì)算機(jī)(PI-120)上進(jìn)行測試,在以上所有算例的計(jì)算時(shí)間均少于1s,由此可見本文方法的效率相當(dāng)高。
表2 優(yōu)化約束條件與優(yōu)化結(jié)果 | ||||||||
| 試驗(yàn)1 | 試驗(yàn)2 | 試驗(yàn)3 | 試驗(yàn)4 | ||||
水源1 | 水源2 | 水源1 | 水源2 | 水源1 | 水源2 | 水源1 | 水源2 | |
工作效率 | 0.7 | 0.7 | 0.6 | 0.7 | 0.6 | 0.7 | 0.6 | 0.7 |
目標(biāo)值 | 78.83 | 87.76 | 88.66 | 88.66 | ||||
注:試驗(yàn)1和試驗(yàn)2水源水頭初值采用附表1中的狀態(tài)1,試驗(yàn)1和試驗(yàn)2水源水頭初值采用附表1中的狀態(tài)2。 |
5 小 結(jié)
供水管網(wǎng)優(yōu)化調(diào)度的一級優(yōu)化問題是一個(gè)復(fù)雜的非線性優(yōu)化問題,針對求解過程中的難點(diǎn),本文通過分析管網(wǎng)的水力關(guān)系,對管網(wǎng)水力關(guān)系進(jìn)行了合理的線性化,使目標(biāo)函數(shù)和約束條件顯式化,將問題轉(zhuǎn)化為序列二次規(guī)劃問題。在求解二次規(guī)劃問題中,同時(shí)考慮到大部分節(jié)點(diǎn)水頭的約束是非作用約束,利用線性化結(jié)果,將非作用約束從約束集中剔除,大大地減少了求解的工作量,并借鑒結(jié)構(gòu)優(yōu)化中齒行法的思想,結(jié)合水力學(xué)上的一些基本概念,提出了適合于本文的修正齒行法,將二次規(guī)劃結(jié)果拉回到約束面,保證了解的可行性。最后本文還簡要分析了優(yōu)化迭代的計(jì)算量,數(shù)值試驗(yàn)表明采用本文的方法計(jì)算量小、效率高,結(jié)果可靠,為大規(guī)模管網(wǎng)的實(shí)時(shí)優(yōu)化調(diào)度提供了良好的基礎(chǔ)。
參 考 文 獻(xiàn):
[1] 汪樹玉,楊德銓,劉國華,張科鋒.優(yōu)化原理、優(yōu)化方法與工程應(yīng)用[M].杭州:浙江大學(xué)出版社,1991,10:375-381,221-228.
[2] 程偉平,包志仁.管網(wǎng)恒定流水力計(jì)算的最優(yōu)化方法[J].水利學(xué)報(bào),2000,7:86-90.
[3] 楊欽,嚴(yán)煦世.給水工程[M].北京:中國建筑工業(yè)出版社,1987.
附錄:
本文在進(jìn)行線性化推導(dǎo)過程中,認(rèn)為矩陣C和D在計(jì)算過程中變化比較小,本文在計(jì)算中選取了供水水頭差異較大的情況比較了矩陣C和向量E的值(見附表1),計(jì)算結(jié)果表明即使在2種供水狀態(tài)差異較大的情況下C和向量E的變化比較小。表中 ,與理論分析有一點(diǎn)差別,主要是由計(jì)算中截?cái)嗾`差引起。
同時(shí)本文還比較了計(jì)算了在不同的比例負(fù)荷作用下,(即各節(jié)點(diǎn)的流量同時(shí)乘以一個(gè)相同的比例系數(shù)),此時(shí)敏度矩陣C矩陣仍然保持基本不變,矩陣假設(shè)基本合理。向量E的各系數(shù)與比例系數(shù)的1852次方成正比,數(shù)字計(jì)算中間結(jié)果見附表2。
附表1 不同狀態(tài)下C、E矩陣的變化情況 | ||||||
| 狀態(tài)1 | 狀態(tài)2 | ||||
| Ci,1 | Ci,2 | Ei | Ci,1 | Ci,2 | Ei |
附表2 不同比例負(fù)荷狀態(tài)下C、E矩陣的變化情況 | ||||||||
| 狀態(tài)1 | 狀態(tài)2 | ||||||
| Ci,1 | Ci,2 | Ei | Ei/Ei0* | Ci,1 | Ci,2 | Ei | Ei/Ei0* |
注:其中E0i采用附表1中狀態(tài)1的計(jì)算值 | ||||||||
綜上所述,管網(wǎng)中各節(jié)點(diǎn)在比例負(fù)荷的情況下,管網(wǎng)中任一節(jié)點(diǎn)的水頭可以線性近似如下:其中:S為所有水源的集合,Ki為與管網(wǎng)總流量Q0相對應(yīng)的系數(shù),其中。
收稿日期:2002-01-04
作者簡介:劉國華(1963-),男,福建莆田人,教授,博導(dǎo),主要從事水工結(jié)構(gòu)優(yōu)化與系統(tǒng)分析方面的研究。