李超 尤林賢 胡書庭
太浦閘在太湖流域防洪、水資源配置、水生態(tài)和水環(huán)境中發(fā)揮著重要作用,是國家水網(wǎng)重大工程中的重要“結(jié)”。2016年底,金澤水庫投運以來,太浦閘供水、水資源保障任務(wù)和效益顯著增加,太浦閘需要保持常年開啟狀態(tài)向下游地區(qū)供排水,且該常態(tài)為局部開啟、控制下泄流量(不是敞泄),這意味著需要精確執(zhí)行調(diào)度指令。為了提高控制運行質(zhì)量,提高閘門操作運行精準(zhǔn)度,需開展太浦閘水位流量關(guān)系研究,以指導(dǎo)工程控制運行。
太湖流域管理局蘇州管理局結(jié)合太浦閘工程實際和工程實測數(shù)據(jù),采用經(jīng)驗系數(shù)法建立了太浦閘閘孔出流和堰流計算公式,并建立ΔZ—e—Q關(guān)系曲線,同時采用現(xiàn)場率定法對太浦閘實測數(shù)據(jù)進行流量系數(shù)率定,上述傳統(tǒng)水力學(xué)模型的方法并沒有找到太浦閘水位流量的明確關(guān)系。近年來,人工神經(jīng)網(wǎng)絡(luò)模型在水利工程調(diào)度運行中得到了廣泛應(yīng)用,通過從樣本數(shù)據(jù)中挖掘規(guī)律重構(gòu)模型,即可在給定輸入時得到最接近期望的輸出。而BP神經(jīng)網(wǎng)絡(luò)則具有更強的非線性映射能力和柔性網(wǎng)絡(luò)架構(gòu),能更有效地實現(xiàn)函數(shù)逼近、模型識別分類、數(shù)據(jù)壓縮和時間序列預(yù)測。
本文利用BP神經(jīng)網(wǎng)絡(luò)算法在處理回歸問題方面的優(yōu)勢以及模型的簡單易操作性,提出基于BP神經(jīng)網(wǎng)絡(luò)算法來進行水位流量關(guān)系計算的方法,利用歷史數(shù)據(jù)進行模型的訓(xùn)練,并檢驗該模型的精度,驗證該方法的可靠性,從而為太浦閘水位流量關(guān)系的計算提供一種簡單高效的方法。
太浦閘位于蘇州市吳江區(qū)七都鎮(zhèn)境內(nèi)的太浦河進口處,西距東太湖約2 km,是太湖東部骨干泄洪及環(huán)太湖大堤重要口門控制建筑物,在太湖流域防洪和向下游地區(qū)供水中發(fā)揮著重要作用,是水利部太湖流域管理局直管工程之一,由太湖流域管理局蘇州管理局負責(zé)運行管理。太浦閘于1958年11月動工興建,1959年10月竣工驗收。2000年11月,太湖局組織對太浦閘進行了安全鑒定,確定為三類閘。2012年9月至2014年7月,經(jīng)水利部批準(zhǔn),太浦閘采用原址拆除重建方案進行了除險加固。太浦閘主要建筑物等級為1級。閘孔共10孔,單孔凈寬12 m,總凈寬120 m;其中南側(cè)邊孔為套閘,閘室長70 m。閘底板設(shè)計高程-1.5 m(鎮(zhèn)江吳淞高程),設(shè)計流量985 m3/s,校核流量1 220 m3/s。近期按閘底板堰頂高程0 m實施,設(shè)計流量784 m3/s,校核流量931 m3/s。
太浦閘水位流量關(guān)系分析屬于函數(shù)逼近(非線性回歸分析),且屬于典型的預(yù)測類問題,在解決該類問題中BP神經(jīng)網(wǎng)絡(luò)運用較廣泛,故選用此算法尋求太浦閘水位流量關(guān)系。
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò),即反向傳遞神經(jīng)網(wǎng)絡(luò)算法,是應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)。BP神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于多個研究領(lǐng)域領(lǐng),如環(huán)境、生物、醫(yī)學(xué)、氣象、天文、地理等領(lǐng)域,由輸入層、隱含層和輸出層三部分組成,如圖1所示。圖1中圓圈各代表一個神經(jīng)元模型,每個神經(jīng)元模型都可以進行輸入,計算和輸出操作。相鄰層之間的各神經(jīng)元相互連接,連接線代表信號的傳遞路徑,每條線上包含一個權(quán)重系數(shù),算法訓(xùn)練的目標(biāo)就是找到一套使計算結(jié)果最接近期望值的權(quán)重系數(shù)。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,就是讓損失函數(shù)最小化,損失函數(shù)也稱為偏差函數(shù),將n個樣本的計算值和實際值的偏差平方累加,然后求平均值,具體見式(1)。
式中Dj——計算值;
yj——實際值。
求式(1)的最小值點,這個最小值點就是預(yù)測結(jié)果偏差最小的點,意味著擬合出來的函數(shù)與實際最接近,這個點對應(yīng)的自變量的值就是最優(yōu)權(quán)值w和偏置b。本文選用使用動量的隨機梯度下降法計算損失函數(shù)的最小值點,具體見式(2)。
式中η——步長;
α——動量因子。
沿著梯度方向,以一定的步長和動量因子不斷迭代更新權(quán)重w和偏置b,直到找到損失函數(shù)Loss的最小值點,或者達到設(shè)定的最小值,訓(xùn)練結(jié)束,模型即可用于驗證試用。
太浦閘BP神經(jīng)網(wǎng)絡(luò)的模型構(gòu)建及訓(xùn)練過程包括數(shù)據(jù)收集、模型參數(shù)初始化、數(shù)據(jù)歸一化處理、神經(jīng)元節(jié)點處置(數(shù)據(jù)求和)、激活函數(shù)處理、隱藏層各節(jié)點神經(jīng)元輸出結(jié)果再次轉(zhuǎn)化求和、激活函數(shù)處理、數(shù)據(jù)輸出,誤差對比、通過梯度反向傳播、神經(jīng)元節(jié)點參數(shù)優(yōu)化。
模型訓(xùn)練是根據(jù)太浦閘工程初步設(shè)計資料確定的水位流量關(guān)系,結(jié)合歷年實測流量資料及實測大斷面資料,對水位流量關(guān)系進行分析。建模初期,輸入節(jié)點只考慮了太浦閘上下游水位、開度、流量等指標(biāo),發(fā)現(xiàn)很多數(shù)據(jù)上下游水位差為0時,依然有過閘流量存在,導(dǎo)致數(shù)據(jù)與理論不符,后續(xù)通過多次數(shù)據(jù)對比分析,增加了水位差、潮位、風(fēng)速等輸入節(jié)點。結(jié)合資料收集情況,最終以2017—2019年太浦閘閘門開度、太浦河入口水位、太浦閘下游水位、平望水位、金澤水位、流量、太浦河口風(fēng)力這7個因素作為輸入節(jié)點。
本研究構(gòu)建2層隱含層BP神經(jīng)網(wǎng)絡(luò)模型來解決一般函數(shù)的回歸問題。隱含層的神經(jīng)元個數(shù)沒有明確的選擇方法,本文參照以下經(jīng)驗公式,將兩個隱含層神經(jīng)元個數(shù)都設(shè)置為8。
式中n——隱含層的神經(jīng)元個數(shù);
a——輸入層神經(jīng)元個數(shù);
b——輸出層神經(jīng)元個數(shù);
c——[1,10]之間的常數(shù)。
(1)輸入數(shù)據(jù)中包含水位和流量數(shù)據(jù),兩者單位不一樣,范圍差距較大,導(dǎo)致范圍小的數(shù)據(jù)作用偏?。唬?)目標(biāo)數(shù)據(jù)的范圍必須和模型輸出層激活函數(shù)的值域相對應(yīng)才便于分析模擬結(jié)果。因此本文選擇將數(shù)據(jù)歸一化到[0,1]區(qū)間。
太浦閘BP神經(jīng)網(wǎng)絡(luò)使用Sigmoid激活函數(shù)擬合曲線,具體見式(4)。
首先將7個因素的加權(quán)計算值通過激活函數(shù)映射到[0,1]之間的某個數(shù)值,然后用這個數(shù)值乘以太浦閘流量上限,將計算結(jié)果轉(zhuǎn)換為預(yù)測流量,確保預(yù)測出來的流量在[0,流量上限]之間。
太浦閘BP神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)訓(xùn)練流程如圖2所示。
圖2 太浦閘BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程
通過樣本訓(xùn)練構(gòu)建閘門開度與過閘流量關(guān)系曲線,如圖3所示。選取2020年太湖流域大洪水期間的20組8時報汛數(shù)據(jù)作為測試集,模擬結(jié)果對比分析見表1。由表1可以看出:測試集中流量數(shù)據(jù)的模擬值與真實值的相對誤差較小,無明顯偏離現(xiàn)象,一致性較好。訓(xùn)練集中的最大絕對誤差為7 m3/s,檢驗集中的最大絕對誤差為8 m3/s,在模擬結(jié)果中,絕對在±5 m3/s之內(nèi)的占比70.0%。模擬值和真實值的可決系數(shù)接近1,相關(guān)性非常顯著。因此,BP神經(jīng)網(wǎng)絡(luò)模擬取得了較好的模擬結(jié)果。
表1 太浦閘8時報汛流量模擬結(jié)果統(tǒng)計表
圖3 閘門開度與過閘流量關(guān)系曲線
太浦閘調(diào)度指令執(zhí)行流程如圖4所示,基于BP神經(jīng)網(wǎng)絡(luò)的工程運行智能監(jiān)控能夠根據(jù)調(diào)度指令,實現(xiàn)工程運行智能監(jiān)控與智慧化調(diào)整,提升閘門調(diào)整反復(fù)報告效率。根據(jù)調(diào)令調(diào)度指標(biāo),當(dāng)實測流量與調(diào)令流量連續(xù)5次偏差超過20%或出現(xiàn)上下游水位差為負數(shù)時,通過短信提示值班人員及時對閘門進行調(diào)整,實現(xiàn)流量偏移智能告警。
圖4 太浦閘調(diào)度指令執(zhí)行流程
應(yīng)用BP神經(jīng)網(wǎng)絡(luò)模型建立的多維動態(tài)關(guān)系曲線,其指導(dǎo)實際情況下閘門控制的效果非常顯著,能夠及時、精確達到調(diào)令要求。中間過程的控制也比較準(zhǔn)確,實測流量與預(yù)測流量過程線基本吻合,具體如圖5所示。遇到套閘過船、泵站試運行、天氣變化等特殊情況時,還能夠準(zhǔn)確反映出短歷時的流量波動?,F(xiàn)場運行人員只需關(guān)注安全條件和簽收新調(diào)令,調(diào)令執(zhí)行、流量監(jiān)控、閘門調(diào)整建議、調(diào)整結(jié)果反饋等其他流程全部由計算機自動實現(xiàn),可以有效減輕運行人員壓力。
圖5 實測流量與神經(jīng)網(wǎng)絡(luò)預(yù)測流量對比圖
系統(tǒng)建成投入使用以來,在流域防洪、供水等工程控制運用中發(fā)揮了重要作用,顯著提高了科學(xué)化、精細化水平。特別是在2020年太湖流域洪水期間,通過該系統(tǒng)的應(yīng)用,太浦閘平均流量控制精度均達到《太湖局直管工程控制運用方案》要求,即不超過±10%,效果顯著。具體數(shù)據(jù)見表2。
表2 2020年太湖流域洪水期間應(yīng)用統(tǒng)計
本研究構(gòu)建了一套BP神經(jīng)網(wǎng)絡(luò)模型,利用太浦閘的水位流量數(shù)據(jù)進行訓(xùn)練,取得了較好的模擬結(jié)果。相較于傳統(tǒng)的水力學(xué)方法有很大優(yōu)勢,不必處理大量數(shù)據(jù)以及分段試算。訓(xùn)練完成后輸入水位或流量值即可直接得出閘門開度結(jié)果,同時能夠反向預(yù)測流量,操作簡單,計算速度快,可以作為平原感潮河網(wǎng)地區(qū)水閘計算水位流量關(guān)系的一種簡單高效的方法。
目前算法模型仍存在部分不足,數(shù)據(jù)體量不夠大,大數(shù)據(jù)訓(xùn)練樣本數(shù)據(jù)不足;需研究潮位一日兩高兩低的特性,納入影響因素,作為輸入項來訓(xùn)練,提升樣本生成適應(yīng)非平穩(wěn)和變化環(huán)境的能力;進一步增加隱藏層數(shù)量,提升處理長時間序列水文數(shù)據(jù)能力。