李成林 劉紹根 楊偉偉
摘要:從給水管網(wǎng)運行工況的在線模擬角度出發(fā),基于遺傳算法(GA)對建立的管網(wǎng)微觀水力模型進行了狀態(tài)估計,針對模型特點采用實數(shù)編碼的編碼方案,以及自適應的交叉和變異算子,并用算例對模型進行了驗證,結果表明:狀態(tài)估計是正確可行的,估計的精度較高,能滿足管網(wǎng)實時模擬的要求。
關鍵詞:管網(wǎng)微觀水力模型;遺傳算法(GA);實數(shù)編碼;狀態(tài)估計
中圖分類號:TU991.33
文獻標識碼:A文章編號:16749944(2017)8003203
1引言
給水管網(wǎng)狀態(tài)變量是管網(wǎng)運行工況的真實反映,是管網(wǎng)科學管理的依據(jù),是實現(xiàn)供水管網(wǎng)優(yōu)化調(diào)度的基礎,以精確可靠的管網(wǎng)微觀水力模型為前提條件,準確及時地獲取狀態(tài)變量信息對實現(xiàn)管網(wǎng)科學管理、調(diào)度決策具有重要意義[1]。
管網(wǎng)狀態(tài)估計過程實質(zhì)上是節(jié)點需水量的估計過程,通過估計的節(jié)點需水量經(jīng)平差計算獲得狀態(tài)解。節(jié)點需水量的估計需要用到迭代的思想,目前有兩種常用的方法:遺傳算法(GA)[2]和加權最小二乘法(WLS)[3]。遺傳算法是一種人工智能算法,每次迭代搜索目標解是隨機的,不需考慮對象的特定知識。遺傳算法編程實現(xiàn)簡單,其主要特點是直接對結構對象進行操作,不存在求導和函數(shù)連續(xù)性限定,具有更好的全局尋優(yōu)能力,采用概率的尋優(yōu)方法,能自動獲取和指導優(yōu)化的搜索空間,自適應地調(diào)整搜索方向而不需要確定的規(guī)則。WLS是一種基于梯度的算法,在每次迭代搜索目標解時都是從對象函數(shù)的梯度信息出發(fā)。WLS在每次迭代過程中需要進行繁雜的雅可比矩陣計算,而遺傳算法計算過程則相對簡單易行。
本文基于遺傳算法,采用實數(shù)編碼方案,以及自適應的交叉和變異算子,對給水管網(wǎng)進行了狀態(tài)估計[4]。
2狀態(tài)估計數(shù)學模型
給水管網(wǎng)的運行工況取決于兩類參數(shù)[5,6],一類是管段參數(shù):管長、管徑、摩阻
系數(shù)S;另一類是節(jié)點流量Q。描述管網(wǎng)運行工況的參數(shù)也有兩類,一類是節(jié)點水壓H,一類是管段流量q。S和Q稱為獨立變量,H和q稱為狀態(tài)變量。獨立變量決定了狀態(tài)變量,狀態(tài)變量是獨立變量的反映。若已知所有獨立變量,可唯一地求解狀態(tài)變量。兩類變量之間的關系可用連續(xù)方程和能量方程描述。
fj(H,S,Q)=0(j=1,2,…,JD-1)(1)
或者fj(q,Q)=0(j=1,2,…,JD-1) (2)
Fj(S,q)=0(j=1,2,…,Ls) (3)
式中JD為節(jié)點總數(shù);
Ls為環(huán)數(shù)。
在已知各水源供水量和各管段摩阻的情況下,實測部分節(jié)點水壓H0t(NH個)和管段流量q0i(Nq個),估計其余節(jié)點水壓H,以獲得管網(wǎng)不同時刻的水壓分布情況。分兩步來進行狀態(tài)估計,第一步估計各節(jié)點流量Q,使得通過(1)式計算出的測壓節(jié)點的水壓Hi和測流管段流量qi接近或者等于實測值H0i,q0i;第二步,當?shù)谝徊焦烙嬤_到一定精度時,利用估計的節(jié)點流量Q通過管網(wǎng)平差計算出各節(jié)點水壓H。
由JD-1個方程組成的方程組(1),聯(lián)立Nq個管段方程Hl-Hm=Siqn0i組成方程組(4)。
fj(H,S,Q)=0(j=1,2,…,JD-1)
Hl-Hm=Siqn0i(j=1,2,…,Nq)(4)
式中Hl,Hm為i管段起末節(jié)點水壓;
n為指數(shù); 其余符號意義同前。
設未知節(jié)點流量Q的個數(shù)為JD,要使方程組(4)有唯一解,必須使方程的個數(shù)等于未知數(shù)個數(shù),即NH+Nq=JD,實測參數(shù)個數(shù)等于被估計參數(shù)個數(shù)。當NH+Nq>JD時,(4)式為超定方程組,此時也是有唯一解的,但實際操作時很不經(jīng)濟。由于模型是存在一定的誤差的,因此,只需保證模型誤差在給定的誤差允許范圍內(nèi)即可。
3遺傳算法中目標函數(shù)的表達及求解
3.1目標函數(shù)及約束條件
已知量是各管段參數(shù)及管段連接關系、各水源供水量、部分實測節(jié)點水壓H0i(NH個)、部分實測管段流量Q0i(Nq個)。狀態(tài)估計的目標是估計參數(shù)與實測參數(shù)盡可能接近,固有如下式所示的目標函數(shù):
minF(Q)=∑NHi=1W1(i)H0i-HiH0i2+∑Nqi=1W2(i)q0i-qiq0i (5)
約束條件:
∑JDm=1Qm=Qd,Qm≥0(6)
式(6)中:W1(i)為節(jié)點水壓參數(shù)權重;
W2(i)為管段流量參數(shù)權重;
Qd為管網(wǎng)總用水量;
Qm為節(jié)點流量估計值;
其他符號意義同前。
參數(shù)權重W1(i)和W2(i)的選擇一般用來反映測量參數(shù)的準確度。實際取值時,水壓參數(shù)測量值的準確度較高,可取為1;而流量參數(shù)測量值為管段某一處的流量,而非管段的等效流量,其準確度較低,可取小于等于1的值。由于式中兩項的量綱不一致,故在分母位置除以對應的實測值以消除量綱影響。
根據(jù)遺傳算法本身的特點,約束條件選擇以懲罰函數(shù)的形式體現(xiàn)到目標函數(shù)中去,從而起到約束自變量的作用。罰函數(shù)為滿足下列條件的函數(shù)[7]:
P(x)=0,x∈X
>0,xX(7)
式(7)中:P(x)為罰函數(shù),X為問題的可行域。
設F為增加約束懲罰后的最小目標函數(shù),即:
minF=F(x)*(1+P(x))(8)
最后,以Fitness=1/F作為適應度函數(shù)參與遺傳算法的計算。
3.2目標函數(shù)求解
3.2.1編碼
遺傳算法優(yōu)化的對象是節(jié)點需水量,為連續(xù)變量,若使用傳統(tǒng)的二進制編碼,則需先離散化,以后文的算例為例,某一節(jié)點需水量為4.953 L/s,為使編碼達到指定的精度,則需設置8位為該節(jié)點需水量的二進制染色體,而使用實數(shù)編碼則只需一個浮點數(shù)即可表示一個個體的染色體,搜索空間得到很大優(yōu)化,大大提高了搜索效率。
3.2.2選擇、交叉和變異
以EPANET的計算引擎為平差工具[8],通過實數(shù)編碼得到的初始染色體設置節(jié)點需水量,平差得到實測節(jié)點的計算壓力和實測管段的計算流量,根據(jù)前文中的目標函數(shù)得到相應染色體的適應度值。這里采用精英策略選擇作為選擇算子,對父代染色體進行選擇得到子代染色體。
為防止遺傳算法陷入局部最優(yōu),以及加快收斂速度,采用自適應的交叉和變異算子使得遺傳參數(shù)能根據(jù)適應度的統(tǒng)計變化自適應變化。即對于適應度高的解,取較低的Pc和Pm,使該解進入下一代的機會增大;而對于適應度低的解,取較高的Pc和Pm,使該解被淘汰掉;當成熟前發(fā)生收斂時,加大Pc和Pm,加快新個體的產(chǎn)生。Pc和Pm自適應改變公式為:
Pc=kc(Fitmax-Fitc)Fitmax-FitavgFitc≥Fitavg
kcFitc≤Fitavg(9)
Pm=km(Fitmax-Fitm)Fitmax-FitavgFitm≥Fitavg
kmFitm≤Fitavg (10)
其中,km是小于1的常數(shù),F(xiàn)itc為交叉的個體中適應度大的,F(xiàn)itm為變異個體適應度,F(xiàn)itmax為種群里最大的適應度,F(xiàn)itavg為種群平均適應度,F(xiàn)itmax-Fitavg為種群收斂程度,越小表示種群越收斂,此時對應的Pc和Pm會增大,防止陷入局部最優(yōu)。
3.2.3算法流程圖
計算流程圖見圖1。
4算例分析及模型驗證
已知管網(wǎng)由一個水源,52個節(jié)點,74條管段組成,如圖2所示。
管段的管徑分別有DN50、 DN40、DN32、DN20、DN15。已知節(jié)點需水量、監(jiān)測點壓力數(shù)據(jù)和監(jiān)測管段流量數(shù)據(jù),根據(jù)部分實測節(jié)點壓力和部分實測管段流量(共6個)來估計節(jié)點需水量,從而得到管網(wǎng)狀態(tài)解,比較監(jiān)測節(jié)點壓力以及管段流量的實測值和估計值,若總體誤差較小,模型即得以驗證。計算結果見表1。節(jié)點需水量A-F對應于算例管網(wǎng)水力模型中水龍頭2-6以及粗管末端的節(jié)點需水量,節(jié)點壓力1-6和管段流量1-8為監(jiān)測對象。
根據(jù)表1可得,由GA尋優(yōu)得到的估計節(jié)點需水量和實測值誤差均在5%以內(nèi)時,監(jiān)測數(shù)據(jù)(節(jié)點壓力和管段流量)實測值和通過估計節(jié)點需水量平差計算的估計值均為較小誤差,只有管段6超過5%,為8%,其余均在5%以內(nèi),故認為通過上述估計節(jié)點需水量平差計算的各節(jié)點壓力估計值能滿足管網(wǎng)狀態(tài)模擬要求。
5結論與建議
在水源供水量、管段摩阻已知的情況下,利用遺傳算法對節(jié)點需水量進行估計計算,得到的管網(wǎng)狀態(tài)解精度較高,能滿足管網(wǎng)工況實時模擬的要求。
在用實數(shù)編碼方法進行決策變量的編碼時,由于已知節(jié)點需水量,故設置的編碼精度為對應節(jié)點需水量的1%,對于實際工程,節(jié)點流量大都根據(jù)節(jié)點服務范圍內(nèi)的用戶營收系統(tǒng)中的歷史用水量來推算,所反映的大體上是平均情況,可適當擴大編碼精度以增大搜索范圍。
算法中的估計求解是方程為正定的情況下進行的,對于實際工程往往是欠定方程,故需先將欠定問題轉(zhuǎn)化為正定或超定問題,然后再進行GA尋優(yōu)計算。一般可通過兩種方法來實現(xiàn),一是將先驗信息添加到模型中,增加方程個數(shù);二是對參數(shù)進行聚類,減少未知數(shù)的個數(shù)。
參考文獻:
[1]
陶建科,劉遂慶.建立給水管網(wǎng)微觀動態(tài)水力模型標準方法研究[J].給水排水,2000,26(5):4~8.
[2]孫柏.供水管網(wǎng)水力水質(zhì)模型及其校核研究[D].長沙:湖南大學,2012.
[3] Kang D.,Lansey K..Real-Time Demand Estimation and Confidence Limit Analysis for Water Distribution Systems[J].Journal Hydraulic Engineering,2009,135(10):825~837.
[4]孫祥蕾,張光焱,羅曉琳,等.一種引入強制變異的改進遺傳算法[J].中國科學院研究生院學報,2003,20(3):316~320.
[5]叢海兵,黃廷林.給水管網(wǎng)狀態(tài)估計的優(yōu)化方法[J].給水排水,2001,27(9): 34~38.
[6]叢海兵,黃廷林.給水管網(wǎng)的狀態(tài)模擬[J].西安建筑科技大學學報,2003,35(4): 343~346.
[7]俞亭超.城市供水系統(tǒng)優(yōu)化調(diào)度研究[D].杭州:浙江大學出版社,2004:48~53.
[8]Rossman L A.EPANET 2 users manual[M].Cincinnati:National Risk Management Research Laboratory office of Research and Development US Environmental Protection Agency,2000.
Abstract: Based on the genetic algorithm (GA), the state estimation of the established micro-hydraulic model of the pipe network was carried out from the point of view of on-line simulation of the operating conditions of the water supply network. Real number encoding is proposed according to the model features, an adaptive crossover and mutation operator. Moreover, the model is verified by an example. The results showed that the algorithm is correct and feasible. The accuracy of the estimation is high and it can meet the requirements of real-time simulation of pipe network.
Key words: pipe network microscopic hydraulic model; Genetic Algorithm (GA); real number coding; state estimation