龐紅偉 王斌 朱士江
摘要建立適宜的水位流量關(guān)系是水文資料整編工作的核心內(nèi)容,但基于最小二乘法與殘差平方和最小原則的傳統(tǒng)水位流量關(guān)系曲線推求方法存在精度不高、難以兼顧絕對誤差和相對誤差等問題。為此,引入源于動物群體遷移行為的自由搜索(Free Search,F(xiàn)S)算法,以殘差平方和、絕對殘差絕對值和、相對殘差絕對值和作為擬合準則,將FS單個動物每步探查行走時的位置向量作為一組參數(shù)值,利用FS算法的動物群體遷移行為直接擬合水位流量關(guān)系,從而推求最優(yōu)的水位流量關(guān)系曲線。實例研究結(jié)果表明,利用FS率定水位流量關(guān)系曲線參數(shù)十分簡便,尋優(yōu)一次即可得到滿意結(jié)果,且與目標規(guī)劃法和遺傳算法相比,擬合精度總體有所提升。
關(guān)鍵詞水位流量關(guān)系曲線;自由搜索;參數(shù)估計;最小二乘法;優(yōu)化準則
中圖分類號P337-3文獻標識碼
A文章編號0517-6611(2017)26-0179-03
Estimating Water Leveldischarge Curve by Free Search
PANG Hongwei1,WANG Bin2*,ZHU Shijiang3(1.Kaifeng Yellow River Management Office,Kaifeng,Henan 475000;2.College of Water Conservancy and Civil Engineering,Northeast Agricultural University,Harbin,Heilongjiang 150030;3.College of Hydraulic and Environmental Engineering,Three Gorges University,Yichang,Hubei 443002)
Abstract To establish the relationship between water level and discharge is an important job of hydrological data reorganization,but it is a low precision method of parameters calibration in water leveldischarge curve using least square method and minimum residual sum of square,and it is difficult to give consideration to the problems such as absolute error and relative error.In this paper,F(xiàn)ree Search (FS),which derived from the animal group migration behavior,was used as a method for estimating water leveldischarge curves.The position vector of each exploratory step for the individual animal was ascertained as an initial water leveldischarge curve by FS.The simulation results showed that the satisfactory results could be achieved by FS for optimizing the water leveldischarge curves,and runoff simulation exhibits relatively high precision water leveldischarge compared with the goal programming method and genetic algorithm.
Key wordsWater leveldischarge curve; Free Search; Parameters estimation; Least square method; Optimization criteria
在天然河流測驗斷面長期開展流量測定工作比較困難。由于水位與流量關(guān)系密切,且水位隨時間的變化過程易于觀測,因而一般不需要連續(xù)觀測流量過程,而是通過一定次數(shù)的實測水位與流量的對應(yīng)資料建立水位與流量的關(guān)系曲線,再依據(jù)水位流量關(guān)系曲線,把水位變化過程轉(zhuǎn)換為相應(yīng)的流量變化過程,并計算出各種流量的特征值[1]。在水文站開展的流量資料整編內(nèi)容雖多,但其中的核心工作就是建立水位流量關(guān)系,水位流量關(guān)系曲線法也因而成為流量資料整編中最常用、最基本的方法[2-3]。傳統(tǒng)的水位流量關(guān)系曲線擬合方法基于最小二乘法,雖然能夠得到最小的殘差平方和,但求得的水位流量關(guān)系曲線不一定就是最優(yōu)的擬合曲線,在擬合實測值時存在精度低等問題[4]。當采用絕對殘差和、相對殘差和的絕對值作為評價擬合準則,并采用目標規(guī)劃法、遺傳算法(Genetic Algorithm,GA)等方法率定水位流量關(guān)系曲線參數(shù)能在一定程度上解決這些問題[4-5]。然而,目標規(guī)劃法和遺傳算法涉及的數(shù)學計算過程或源代碼編程過程較繁雜,不易被一般的工程技術(shù)人員掌握;遺傳算法還可能出現(xiàn)“早熟”現(xiàn)象,不一定總能獲得全局最優(yōu)解[6-7]。筆者將自由搜索(Free Search,F(xiàn)S)算法[8]引入到水文流量關(guān)系曲線參數(shù)率定中,以期提供一種不過多依賴專業(yè)經(jīng)驗,但效率和精度均較高的水文流量關(guān)系曲線推求方法。
1水位流量關(guān)系曲線及其擬合準則
通常水位與流量之間呈非線性關(guān)系,當采用冪函數(shù)描述二者之間的關(guān)系時,其數(shù)學模型為[4]
Q=a1Hα2 (1)
式(1)中,Q為流量(m3/s);H為水位(m);a1、a2為待定的模型參數(shù)。在求解參數(shù)a1、a2時,傳統(tǒng)方法是先將式(1)的冪函數(shù)兩邊分別取對數(shù)轉(zhuǎn)化為線性關(guān)系,再基于最小二乘法求出其線性關(guān)系的參數(shù),最后經(jīng)過逆變換求得原函數(shù)關(guān)系中的參數(shù)。這種基于最小二乘法的線性間接擬合方法,遵循式(2)所示的殘差平方和最小準則,計算工作簡便,手工即可完成,也可以借助Excel等辦公軟件識別參數(shù),所以至今仍被廣大水文工作者使用。
minf=pp=1(Qp-α1Ha2p)2 (2)
然而,當由最小二乘法確定式(1)參數(shù)時,雖然能夠保證轉(zhuǎn)換后的線性關(guān)系殘差平方和最小,但并不能保證未經(jīng)變換的原始非線性關(guān)系的殘差平方和最??;另外,最小二乘法遵循的殘差平方和最小準則突出了極端值的影響,當實測數(shù)據(jù)中存在極端值時,基于最小二乘法的擬合結(jié)果會發(fā)生嚴重偏差;此外,最小二乘法采用的是絕對殘差,雖然考慮了絕對殘差的大小,但忽視了相對殘差(相對誤差),而在很多情況下,相對誤差也是反映模型擬合精度的重要指標[4]。因此,不能簡單地認為基于最小二乘法擬合的水位流量關(guān)系曲線就是最優(yōu)的擬合曲線,采用殘差平方和作為擬合的準則還有待改進。
針對這些問題,黃才安[4]提出式(3)和式(4)的絕對殘差絕對值和準則以及相對殘差絕對值和準則,并采用目標規(guī)劃方法求解了參數(shù)a1、a2,直接擬合了水位流量關(guān)系,結(jié)果表明所提出的方法擬合精度明顯優(yōu)于傳統(tǒng)方法。
minf=pp=1|Qp-α1Ha2p| (3)
minf=pp=1|1-α1Ha2p/Qp| (4)
由于上述準則中的優(yōu)化函數(shù)為復雜的非線性形式,還包含了絕對值運算,傳統(tǒng)的最小二乘法已不再適用,采用非線性優(yōu)化方法處理起來也比較繁瑣,而且往往得不到全局最優(yōu)解。FS是一種源于動物群體(animals)遷移行為的優(yōu)化算法[8],動物群體憑借多次的離散運動通過搜索空間。在搜索過程中,動物個體(animal)采取探查行走的方式,目的是為了發(fā)現(xiàn)一個自己偏好的位置,亦即發(fā)現(xiàn)了實際優(yōu)化問題目標函數(shù)的一個潛在解,在搜索行為結(jié)束時群體找到的最優(yōu)位置即為目標函數(shù)的最優(yōu)解[6-8]。因此,該研究采用FS算法擬合水位流量關(guān)系,從而率定水位流量關(guān)系曲線的參數(shù)a1、a2。
2FS在水位流量關(guān)系曲線參數(shù)率定中的應(yīng)用
采用FS率定水位流量關(guān)系曲線參數(shù)時,設(shè)動物群體數(shù)量為m,則動物個體每步探查行走的位置向量對應(yīng)參數(shù)的一組潛在解。第j個動物通過T步探查行走得到的位置矩陣可表示為
Aj=a1ja2jaTj=
a11ja12j
a21ja22j
aT1jaT2j (5)
式(5)中,T為探查步伐數(shù),t=1,2,…,T;Aj為第j個動物T步探查得到的位置矩陣,j=1,2,…,m;Atj為第j個動物第t步探查時的位置向量;atij為第j個動物第t步探查時的第i維位置分量(即水位流量關(guān)系曲線的第i個參數(shù)),i=1,2,…,n,該研究中n=2。
采用隨機化的初始策略,則:
a0ij=aimin+(aimax-aimin)rand(0,1) (6)
式(6)中,a0ij為第i維位置變量的初始值,即水位流量關(guān)系曲線第i個參數(shù)的初始值;aimin、aimax為第i維搜索空間的邊界,即水位流量關(guān)系曲線第i個參數(shù)值變化區(qū)間;rand(0,1) 為介于[0,1]的隨機數(shù)。
通過探查行走,更新動物個體位置:
atij=a0ij-Δatij+2Δatijrand(0,1) (7)
式(7)中,Δatij=Rij(aimax-aimin)rand(0,1),Rij為搜索鄰域半徑。
在探查行走過程中,動物個體的行為可以表示為
fij=f(atij),fj=max(fij) (8)
式(8)中,ftj為第j個動物第t步探查所得的目標函數(shù)值;fj為第j個動物t步探查過程中的最優(yōu)值;信息素Ij更新為
Ij=fj/max(fi) (9)
敏感性Sj更新為
Sj=Smin+ΔSj (10)
ΔSj=(Smax-Smin)rand(0,1) (11)
式(10)(11)中,Smax為最大敏感性;Smin為最小敏感性。
Imax=Smax,Imin=Smin(12)
最后,選擇和決策下一次探查行走的開始位置:
a′0ij=aij(Il≥Sj,l=1,2,…,m) (13)
式(13)中,Il為第l個動物散發(fā)的信息素。算法判斷是否滿足設(shè)定的終止條件,如果滿足說明已經(jīng)搜索到可以接受的最優(yōu)解,不滿足則繼續(xù)探查搜索。可見,F(xiàn)S算法概念清晰,需要設(shè)置的參數(shù)較少,迭代計算過程簡單,算法容易編程實現(xiàn)。
3實例應(yīng)用
為與以往研究成果對比,仍采用文獻[4]的某水文站13組水位流量觀測數(shù)據(jù)(表1),在3種擬合準則下,采用Matlab語言編制了FS程序,設(shè)定FS動物個數(shù)m=20,探查步數(shù)T=5,迭代2 000次,率定參數(shù)后的水位流量冪函數(shù)關(guān)系分別為Q=5.787 1H1.704 3、Q= 4.304 2H1.827 4、Q=4.262 8H1.831 0,每種準則下的計算流量、絕對誤差及相對誤差見表1,不同準則下所得的特征值見表2。由于各文獻的計算結(jié)果保留位數(shù)不同且差別較小,為便于比較分析,根據(jù)文獻[4]和文獻[5]提供的模型參數(shù),重新計算了其殘差平方和、平均絕對誤差與平均相對誤差,并保留到小數(shù)點后3位,一并列入表2中。
從表2可以看出,該研究的計算結(jié)果與文獻[4]、文獻[5]一致,與傳統(tǒng)的基于最小二乘法和殘差平方和最小為準則的方法相比,當以絕對殘差絕對值和、相對殘差絕對值和為擬合準則時,推求的水位流量關(guān)系曲線對流量實測值的擬合精度均有所提升,平均絕對誤差與平均相對誤差有所減?。煌瑫r也能看出,當以三準則之一率定水位流量關(guān)系曲線時,殘差平方和、平均絕對誤差、平均相對誤差三者的增減變化并不完全同步,進一步說明傳統(tǒng)的水位流量關(guān)系曲線推求方法存在缺陷。此外,對比該研究與文獻[4]、文獻[5]的研究結(jié)果還能看出,當以殘差平方和、絕對殘差絕對值和為擬合準則時,采用FS率定參數(shù)的水位流量關(guān)系曲線擬合精度優(yōu)于目標規(guī)劃法和遺傳算法,所得殘差平方和、平均絕對誤差均為最??;當以相對殘差絕對值和為擬合準則時,采用FS率定參數(shù)的水位流量關(guān)系曲線擬合精度和遺傳算法相當,但優(yōu)于目標規(guī)劃法。
4結(jié)論
針對傳統(tǒng)推求水位流量關(guān)系曲線方法存在精度不高、難以兼顧絕對誤差和相對誤差等問題,引入FS算法,以殘差平方和、絕對殘差絕對值和、相對殘差絕對值和作為擬合準則,利用FS算法率定參數(shù)從而推求最優(yōu)的水位流量關(guān)系曲線,所得目標函數(shù)的殘差平方和、絕對殘差絕對值和、相對殘差絕對值和均小于傳統(tǒng)方法,可以提高水位流量關(guān)系曲線的擬合精度。與目標規(guī)劃法和遺傳算法相比,計算過程和程序?qū)崿F(xiàn)過程簡單,不需要復雜的數(shù)學知識,也不過分依賴專業(yè)經(jīng)驗,且計算精度總體有所提升,為推求水位流量關(guān)系曲線的提供了一種新途徑。
參考文獻
[1]
魏永霞,王麗學.工程水文學[M].北京:中國水利水電出版社,2005.
[2] 雒文生,宋星原.工程水文及水利計算[M].2版.北京:中國水利水電出版社,2010.
[3] 丁濤,祝麗萍.水位流量關(guān)系曲線的率定及泥沙整編方法分析[J].能源與節(jié)能,2016 (4):12-13.
[4] 黃才安.水位流量關(guān)系回歸的優(yōu)化研究[J].水利水電技術(shù),1995(10):2-5.
[5] 楊曉華,陸桂華,酈建強.自適應(yīng)加速遺傳算法及其在水位流量關(guān)系擬合中的應(yīng)用[J].水文,2002,22(2):14-18.
[6] 王斌,張展羽,張國華,等.一種新的優(yōu)化灌溉制度算法:自由搜索[J].水科學進展,2008,19(5):736-741.
[7] 王斌,張展羽,張國華,等.基于自由搜索的灌區(qū)優(yōu)化配水模型研究[J].水利學報,2008,39(11):1239-1243.
[8] PENEV K,LITTLEFAIR G.Free Searcha comparative analysis [J].Information sciences,2005,172(1):173-193.
45卷26期龐紅偉等利用Free Search算法推求水位流量關(guān)系曲線