孫玉玲
(喀左縣六官營子水利服務(wù)站,遼寧 朝陽 122318)
土石壩是一種廣泛使用的壩型,在世界所有壩型中,土石壩的數(shù)量最多。眾所周知,土石壩壩身不能過水,一旦壩身過水,土石壩將會類似于邊坡一樣,發(fā)生破壞,導(dǎo)致壩體失效。土石壩的兩個重要關(guān)注點是滲流和穩(wěn)定,壩體能否穩(wěn)定決定是否可以有效擋水,而壩體滲流對土石壩的穩(wěn)定具有重要影響,若測壓管水位線過高,則土石壩的局部穩(wěn)定性便無法保證[1]。所以,在土石壩的實際運行過程中,需要準確監(jiān)測和預(yù)測壩體滲流水位線。測壓管是一種有效的測量水頭的儀器,在水位測量中有著廣泛應(yīng)用。對于土石壩而言,影響其滲流水位線的因素有水庫上下游水位、天然降雨量及降雨歷時等。對于降雨來說,不僅當下時段的降雨對滲流有影響,而且先前時間內(nèi)的降雨也對滲流有影響。由于滲流的時間效應(yīng)較長,所以對土石壩滲流水位線進行預(yù)測就顯得比較重要。這就需要建立土石壩的滲流安全預(yù)測模型。在建立大壩安全預(yù)測模型時,常用的方法有統(tǒng)計模型、人工神經(jīng)網(wǎng)絡(luò)、支持向量機等,統(tǒng)計模型法中主要有多元線性回歸、逐步回歸、偏最小二乘回歸等,其中逐步回歸在回歸方法中應(yīng)用最多。楊杰、趙斌、吳云芳等[2-4]在研究大壩安全監(jiān)測中,使用了人工神經(jīng)網(wǎng)絡(luò)的方法,對滲流、應(yīng)力、變形等進行了分析,得到的預(yù)測結(jié)果和實際較為相符。岳建平[5]基于灰色動態(tài)神經(jīng)網(wǎng)絡(luò)建立了模型,用于預(yù)測壩體的其他指標,得到的結(jié)論較好。陳維江[6]在對回歸模型的回歸系數(shù)進行優(yōu)化的過程中,引入了遺傳算法,獲得了較好的優(yōu)化結(jié)果;蘇懷智[7]為了提高預(yù)測模型的精度,將遺傳算法和神經(jīng)網(wǎng)絡(luò)進行結(jié)合,但是模型的預(yù)測精度提高的幅度較小。張柯[8]在土石壩安全監(jiān)測模型與安全性態(tài)模糊評價研究中,基于支持向量機法對土石壩的滲流安全等級進行了評價;李瑞光[9]基于主成分分析-支持向量機建立了土石壩滲流監(jiān)測數(shù)據(jù)預(yù)測模型,得到的壩體監(jiān)測數(shù)據(jù)分析預(yù)測結(jié)果基本滿足要求。但是通過文獻研究發(fā)現(xiàn),人工神經(jīng)網(wǎng)絡(luò)應(yīng)用于土石壩安全監(jiān)測中,“過擬合”的現(xiàn)象較嚴重,導(dǎo)致在利用構(gòu)建的模型進行預(yù)測時降低了預(yù)測的精度[10]。采用支持向量機法建立預(yù)測模型,需要對核函數(shù)和有關(guān)參數(shù)進行較為準確的估計,方能保證預(yù)測結(jié)果的精度。
為了建立土石壩的安全預(yù)測模型,筆者以某土石壩的滲流監(jiān)測預(yù)測為分析對象,尋求構(gòu)建預(yù)測模型的方法。以支持向量機方法為基礎(chǔ),引入單純型粒子群優(yōu)化算法,利用該算法對支持向量機的參數(shù)進行優(yōu)化處理,對土石壩的測壓管水位預(yù)測進行研究,從而得到建立的模型。利用該模型,以其他實測基本資料預(yù)測滲流水位,并與實測的測壓管水位進行比較,判斷該方法的精度和有效性;同時,與其他幾種常見的預(yù)測模型進行對比,判斷各方法的精度優(yōu)劣。
目前在很多領(lǐng)域都應(yīng)用了支持向量機,依據(jù)支持向量機建立的模型,其學(xué)習(xí)性能和泛化能力的優(yōu)劣受支持向量機的核函數(shù)和有關(guān)參數(shù)選擇的影響[11]。核函數(shù)在支持向量機中非常重要,一些復(fù)雜的非線性問題可以通過合理的映射用高維空間中的線性問題予以表示,而對于這類線性問題的內(nèi)積運算,可以采用核函數(shù)來實現(xiàn)[12]。對同一個問題,可以采用多種不同的核函數(shù),但是需要尋找最優(yōu)的核函數(shù)。常用的核函數(shù)有線性核函數(shù)、多項式核函數(shù)、徑向基核函數(shù)、Sigmoid核函數(shù),其中應(yīng)用最多的是徑向基核函數(shù),也稱為高斯核函數(shù),其在任意分布樣本中都可以應(yīng)用,它的收斂域較大?;诖?,支持向量機選擇徑向基核函數(shù)。在徑向基核函數(shù)中,寬度參數(shù)σ、懲罰系數(shù)C、不敏感損失因子ε是3個重要的參數(shù),其影響支持向量機的學(xué)習(xí)性能和泛化能力。在選擇了徑向基核函數(shù)后,支持向量機模型中需要優(yōu)化的參數(shù)就是上述3個參數(shù)。
單純型法(SM)具有很好的局部搜索性,而粒子群優(yōu)化算法(PSO)具有很好的全局搜索性,將兩者結(jié)合起來,就構(gòu)成了單純型粒子群優(yōu)化算法(SMP?SO)[13]。在尋找最優(yōu)解的過程中,首先由粒子群優(yōu)化算法提供一個全局位置,然后由單純型法進行搜索,如果找到全局最優(yōu)解,則結(jié)束尋優(yōu)過程;若單純型法未找到最優(yōu)解,則在執(zhí)行設(shè)定次數(shù)的迭代之后,也會將最優(yōu)解的范圍縮小,然后將該范圍交給粒子群優(yōu)化算法,組成新的微粒群,再進一步執(zhí)行上述搜索步驟,直至獲得全局最優(yōu)解。
在支持向量機模型中,對徑向基函數(shù)的3個參數(shù)進行優(yōu)化時,引入單純型粒子群優(yōu)化算法,獲得參數(shù)的最優(yōu)解,以確保在樣本數(shù)據(jù)訓(xùn)練和預(yù)測過程中,采用支持向量機可以得到較好的效果,因此該方法可以稱為基于單純型粒子群優(yōu)化算法的支持向量機,簡寫為SMPSO-SVM。通過分析研究,提出了合理的流程,并結(jié)合算法內(nèi)容,在Matlab中編寫相應(yīng)程序,實現(xiàn)了該方法的操作。
某水庫位于遼寧省某河流上,主壩為均質(zhì)碾壓土壩,大壩頂高程112 m,最大壩高34.1 m。水庫總庫容1.8億m3,控制流域面積340 km2,含2座副壩,主要用于防洪和供水,兼顧發(fā)電,電站裝機容量0.64萬kW。水庫目前已經(jīng)運行近60 a,其間經(jīng)過幾次除險加固。
對該均質(zhì)土壩進行滲流監(jiān)測分析時,基于單純型粒子群優(yōu)化算法的支持向量機構(gòu)建預(yù)測模型,訓(xùn)練樣本選擇2017年3月—2018年4月的實際監(jiān)測數(shù)據(jù),主要監(jiān)測數(shù)據(jù)指標有測壓管水位、水庫水位、水庫下游水位、降雨量,圖1為水位的變化曲線。
圖1 水庫上下游水位和測壓管水位
土石壩測壓管水位的影響因子主要是降雨量和時長、水庫上游和下游水位。考慮這幾個因子,建立測壓管水位的抽象函數(shù)表達式:
式中:h為監(jiān)測當天采用測壓管監(jiān)測到的水位(m);H上和H下分別為監(jiān)測當天的水庫上、下游水位(m);Hi-j和Ri-j分別為監(jiān)測當天之前第i~j天水庫上游水位和降雨量的平均值;R0為監(jiān)測當天的降雨量(mm);θ為監(jiān)測開始之日到正常觀測的天數(shù)除以100(d)。
結(jié)合實際的監(jiān)測資料,確定式(1)的影響因子也就是確定SMPSO-SVM預(yù)測模型的輸入量,共包含 12個因子,分別為H上、H1-3、H4-8、H9-18、H19-38、H39-68、R0、R1-3、R4-8、R9-18、H下、θ。預(yù)測模型的輸出量就是壩體的測壓管水位。采用歸一化方法對影響因子和監(jiān)測值進行歸一化處理,歸一化公式如下:
式中:x'為參數(shù)歸一化處理之后的值;x為參數(shù)的實際值;xmin為參數(shù)的最小值;xmax為參數(shù)的最大值。
在支持向量機模型中,參數(shù)C、ε、σ是3個需要優(yōu)化的參數(shù)。在SMPSO中,設(shè)定的參數(shù)有微粒數(shù)和最大迭代次數(shù),兩者分別取為50和30,進而可以得到參數(shù)C1和C2值均為2,Vmax為0.001,w的初始值為0.95、最終值為0.2,減小的方式是線性減小。對SVM進行優(yōu)化之后,得到參數(shù)C、ε、σ的值分別為183.67、0.024 2、0.979。
訓(xùn)練過程中,所使用的數(shù)據(jù)是實際監(jiān)測的50個樣本,每個樣本中包含12個影響因子的取值,樣本數(shù)據(jù)詳見表1。采用預(yù)測模型進行訓(xùn)練,整個過程在Matlab中實現(xiàn),得到測壓管水位的訓(xùn)練結(jié)果,并與實際監(jiān)測結(jié)果對比,結(jié)果詳見表2。訓(xùn)練結(jié)果與實際監(jiān)測結(jié)果的對比曲線,如圖2所示。
表1 50個訓(xùn)練樣本m;mm;d
表2 測壓管水位監(jiān)測和訓(xùn)練結(jié)果
對比分析訓(xùn)練結(jié)果與實際監(jiān)測結(jié)果可以發(fā)現(xiàn),測壓管水位的絕對誤差均在0.5 m以內(nèi),誤差較小,滿足其他計算的要求。從圖2可以發(fā)現(xiàn),訓(xùn)練結(jié)果與監(jiān)測結(jié)果的曲線非常接近,變化趨勢一致,說明訓(xùn)練結(jié)果是有效的,基于單純型粒子群優(yōu)化算法的支持向量機建立的模型能夠滿足測壓管水位的訓(xùn)練結(jié)果要求。
圖2 訓(xùn)練結(jié)果與監(jiān)測結(jié)果對比曲線
為了對模型的預(yù)測效果進行評價,另外采用實際監(jiān)測的10個樣本作為預(yù)測樣本,采用建立的SMPSO-SVM方法進行預(yù)測,預(yù)測結(jié)果和實際監(jiān)測結(jié)果詳見表3。預(yù)測結(jié)果與實際監(jiān)測結(jié)果的對比曲線,如圖3所示。
表3 測壓管水位預(yù)測和監(jiān)測結(jié)果
圖3 預(yù)測結(jié)果與監(jiān)測結(jié)果對比曲線
從表3可以看出,預(yù)測結(jié)果和實際監(jiān)測結(jié)果的絕對誤差在0.5 m內(nèi),最大相對誤差為0.35%,絕對誤差和相對誤差均較小,若將水位預(yù)測結(jié)果應(yīng)用于其他計算,如壩體滲流穩(wěn)定分析等,該預(yù)測結(jié)果能夠滿足精度要求。從圖3可以看出,預(yù)測結(jié)果與監(jiān)測結(jié)果的曲線接近,兩者的變化趨勢一致,驗證了SMPSO-SVM方法用于預(yù)測壩體測壓管水位是滿足要求的。
為了進一步評價SMPSO-SVM方法的精度,選擇了遺傳回歸、多元線性回歸、最小二乘支持向量機、逐步回歸模型,用這4種模型同時進行訓(xùn)練和預(yù)測。在應(yīng)用這4個模型的過程中,影響因子的個數(shù)均為20個,以均方誤差評價對比這些模型的精度優(yōu)劣。表4給出了5個模型的訓(xùn)練和預(yù)測的均方誤差。
表4 幾種方法預(yù)測結(jié)果
從表4可以發(fā)現(xiàn),在訓(xùn)練過程中,均方誤差最大的方法是逐步回歸法,均方誤差最小的方法是SMP?SO-SVM方法,SMPSO-SVM方法的均方誤差顯著小于其他4種方法訓(xùn)練的均方誤差,這說明在訓(xùn)練過程中SMPSO-SVM方法的精度高于其他方法。在預(yù)測過程中,均方誤差最大的方法是逐步回歸法,均方誤差最小的方法依然是SMPSO-SVM方法,而且SMPSO-SVM方法的均方誤差顯著小于其他方法。根據(jù)前文,在SMPSO-SVM模型中,影響因子有12個,不包含非線性的影響因子;其余4個模型的影響因子為20個,包含一些非線性的影響因子,因此可以得出SMPSO-SVM方法是一種只考慮線性影響因子且精度較高的模型。
以某均質(zhì)土壩為研究對象,對其滲流的測壓管水位預(yù)測進行了研究,得到以下結(jié)論。
(1)以支持向量機為基礎(chǔ),采用單純型粒子群優(yōu)化算法優(yōu)化了徑向基函數(shù)的3個參數(shù),形成了基于單純型粒子群優(yōu)化算法的支持向量機模型,選擇的12個影響因子均為線性因子,能夠滿足訓(xùn)練和預(yù)測要求。
(2)用50個樣本訓(xùn)練該模型,訓(xùn)練結(jié)果與實際測壓管水位監(jiān)測結(jié)果相近。利用10個樣本數(shù)據(jù),采用SMPSO-SVM方法預(yù)測了測壓管水位,預(yù)測結(jié)果與實際監(jiān)測結(jié)果相近,精度滿足要求,該預(yù)測結(jié)果可以用于其他分析計算中。
(3)通過與其余4種預(yù)測方法進行對比,均方誤差的結(jié)果表明,SMPSO-SVM方法訓(xùn)練和預(yù)測結(jié)果的均方誤差均最小,這說明提出的SMPSO-SVM方法是一種只考慮線性影響因子且精度較高的模型。