姜鵬輝,齊慧君,李同春,2
(1.河海大學水利水電學院,江蘇 南京 210024;2.水安全與水科學協(xié)同創(chuàng)新平臺,江蘇 南京 210024)
大壩安全控制的主要目的是通過保持其功能性和結構性完整來保證大壩的功能,變形觀測是大壩安全控制不可缺少的組成部分[1]。對大壩的健康狀況進行分析和評價,可以利用大壩監(jiān)測數(shù)據建立合理的大壩安全監(jiān)測模型。目前,大壩位移預測模型采用較多的有BP神經網絡建模方法、灰色建模方法、支持向量機模型[2-4]等。核極限學習機具有較強的非線性映射能力,適用于混凝土拱壩的隨機荷載和強非線性變形問題的分析模型。大壩監(jiān)測資料中可能存在一些異常測值,這些異常測值對大壩結構性態(tài)評價產生較大影響,進而阻礙大壩的正常運行,必須進行判斷和處理。張海龍等[5]通過小波變換提取監(jiān)測數(shù)據的趨勢項,然后采用孤立森林算法對扣除趨勢項的剩余量進行異常值識別。鑒于此,本文提出孤立森林-核極限學習機(IF-KELM)回歸的混凝土拱壩位移預測模型。該模型基于孤立森林計算異常分數(shù),利用核極限學習機回歸預測,由粒子群算法尋優(yōu)模型參數(shù)。最后通過某混凝土拱壩真實監(jiān)測數(shù)據進行了仿真驗證,結果表明,所提出的IF-KELM混凝土壩位移預測模型能夠準確地剔除異常監(jiān)測數(shù)據,并且具有預測結果精確可靠,模型計算簡單的優(yōu)點,可以為混凝土壩運行性態(tài)估計、健康監(jiān)測等提供更加充分的輔助依據研究方法。
混凝土拱壩位移主要受水壓、溫度及時效等環(huán)境因素的影響,位移計算公式為
yD=yh+yT+yt
(1)
式中,yD為大壩的徑向位移,m;yh為靜水壓引起的位移響應,m;yT為溫度變化引起的位移響應,m;yt為不可逆的時間效應,m。
靜水壓力的影響通常表示為基于以下力學分析的多項式函數(shù),即
yh=a1h+a2h2+a3h3+a4h4
(2)
式中,h為上游水深,m;a1、a2、a3、a4為系數(shù)。
溫度變化的引起的位移響應可以計算為諧波正弦函數(shù)的組合,即
yT=b1sin(s)+b2cos(s)+b3sin(2s)+b4cos(2s)
(3)
式中,b1、b2、b3、b4為系數(shù);s=2πj/365.25,j為從年初(1月1日)到觀察日的天數(shù),或從監(jiān)測開始日期到響應觀察日的天數(shù)(即為t),d。
大壩隨時間變化的不可逆變形主要與蠕變有關,蠕變隨時間呈漸近變化。不可逆變形成分的演化是潛在結構紊亂的指標。時間效應變形通常在初始蓄水期間迅速發(fā)展,并隨時間趨于穩(wěn)定。因此,通常使用如下公式進行描述:
yt=c1θ+c2lnθ+c3(1-e-θ)+c4θ/(θ+1)
(4)
式中,θ=t/100,t為分析開始后的天數(shù),d;c1、c2、c3、c4為系數(shù)。
位移監(jiān)控的指標集S可以表示為
(5)
孤立森林(iForest)算法是一種具有綜合學習能力的無監(jiān)督異常值檢測算法,由一系列隨機構建的孤立樹(iTrees)組成。在大壩安全監(jiān)測數(shù)據資料中,異常值檢測值的占比很小,采用分類算法有效識別異常測值的難度很大,而且計算代價也很高。與其他的異常檢測算法相比,例如局部異常因子算法和隨機森林算法,需要基于距離或者密度來計算離群值,該算法只需要較小的子采樣大小即可實現(xiàn)高效的檢測性能,大大提高了計算效率。
孤立森林算法的具體過程為:首先創(chuàng)建孤立樹,給定處理過的異常監(jiān)測數(shù)據集,隨機選擇部分樣本形成訓練空間,根據特征和分區(qū)值,不斷分割訓練空間,直到滿足子樣本空間已不可分割或達到規(guī)定切割深度的條件。循環(huán)上述過程以構建t個孤立的樹,將監(jiān)測數(shù)據集中的測試空間經過訓練的隔離樹中進行數(shù)據評估,并根據采樣點的異常分數(shù)識別其中的異常值。
引入路徑長度的定義為
h(x)=e+c(T)
(6)
式中,e為樣本x從樹的根節(jié)點到葉節(jié)點的過程中經歷的邊的個數(shù);T為和樣本x同在一個葉子結點樣本的個數(shù);c(T)可以看作一個修正值,表示T個樣本構建一個二叉樹的平均路徑長度。c(n)計算公式為
(7)
式中,H(k)為調函數(shù)。
采樣點的異常分數(shù)s被定義為
(8)
采樣點異常識別的準則為:①當E(h(x))→c(n)時,s→0.5,不能判斷查詢數(shù)據x是否為異常;②當E(h(x))→0時,s→1,被識別為異常點;③當E(h(x))→n-1時,s→0,被識別正常點。
由式(5)可知,輸入因子集共有12個輸入變量,而變量類型可分為水位分量、溫度分量和時效分量。隨著維度的增加,數(shù)據空間的大小(體積)會以指數(shù)級別增長,給異常檢測帶來了挑戰(zhàn)。本文構建混凝土拱壩水平位移時間序列的異常檢測數(shù)據集,數(shù)據集中的效應量選取x′1、x′7和x′9分別代表水位、溫度和時效分量,響應變量選取大壩水平位移實際監(jiān)測值。減少異常檢測數(shù)據集的維度,將大大節(jié)省計算成本,合理效應量的選取,也保證了孤立森林算法計算異常分數(shù)的可靠性。
根據異常分數(shù)的大小,設置合適的異常閾值σ來進行剔除,既保證對異常樣本的精準剔除,又避免關鍵信息的損失。IF異常檢測性能受σ這個重要參數(shù)的影響。
ELM是一個單隱藏層前饋神經網絡[6]。與經典的人工神經網絡相比,它只包含3個組件:輸入層、單個隱藏層和輸出層。給定一對輸入/輸出數(shù)據樣本(xi,yi),經典ELM的簡化方程式為
(9)
式中,βi為將隱藏神經元連接到輸出神經元的權重向量;h(xi)為映射函數(shù)。
人工神經網絡能模擬從輸入到輸出之間的非線性結構。相對于人工神經網絡,核極限學習模型具有更好的非線性擬合能力與泛化性能,能很好地擬合出水位分量、溫度分量、時效分量與大壩水平位移的關系。
為增加模型的穩(wěn)定性,在對β的求解中將引入一個正則化系數(shù)C,相應的目標函數(shù)為
(10)
式中,ei為訓練誤差。此時β被計算為
(11)
式中,Y為輸出目標向量;H的表達式為
(12)
得到ELM的輸出函數(shù)表達式為
(13)
對于實際工程資料來說,很難得到映射函數(shù)精確的顯式表達式,所以可以通過構造隱式映射進行替代,即構造核矩陣,則有
ΩELM=HHT
(14)
ΩELMi,j=h(xi)h(xj)=K(xi,xj)
(15)
式中,ΩELM為核矩陣;K(xi,xj)為核函數(shù)。
圖1為KELM的網絡結構。
圖1 KELM網絡結構
用核矩陣代替映射表達式,式(13)可變換為
(16)
KELM的核函數(shù)通常采用Gaussian核函數(shù),即
(17)
因此,大壩水平位移的預測結果精度受正則化系數(shù)C與核函數(shù)的參數(shù)γ這兩個重要參數(shù)的影響。
將IF與KELM結合將能很好地把握大壩位移預測中的異常信息情況,生成大壩位移預測結果。
由于異常閾值、正則化系數(shù)、核函數(shù)的參數(shù)是影響IF-KELM擬合精度的關鍵參數(shù),為了避免參數(shù)估計帶來的偏差,因此采用粒子群(PSO)同時優(yōu)化σ、C和γ這3個參數(shù),實現(xiàn)對混凝土拱壩水平位移的精準預測。
粒子群優(yōu)化的一般思想是基于鳥群或魚群的移動方式[7]。在這個算法中,種群被稱為一個群體,每個點都是一個粒子。這些群體代表了可能的解決方案。粒子在目標函數(shù)的搜索空間中隨機初始化。初始化后,每個粒子在連續(xù)迭代期間在其自己的歷史最佳位置(即pbest)、群體的最佳位置(即gbest)和隨機搜索位置之間做出折中。在PSO中,每個粒子都與2個屬性(速度向量v和位置向量x)相關聯(lián),并且它在搜索空間中移動的速度同時根據粒子的經驗和粒子同伴的經驗動態(tài)調整。粒子的速度和位置根據式(18)和式(19)更新,即
(18)
(19)
式中,ω為慣性權重;n為迭代次數(shù);c1和c2為學習因子;r1和r2為隨機數(shù)。
某大壩為混凝土雙曲拱壩,位于瀾滄江流域。最大壩高294.5 m,長922.74 m,壩體總方量接近900萬m3,共由44個壩段組成。選取該大壩某壩段監(jiān)測點2012年8月1日~2018年11月27日共計456組的水平位移數(shù)據組成的時間序列進行分析。選取2012年8月1日~2017年12月31日共計390組監(jiān)測數(shù)據為訓練樣本,2018年1月1日~2018年11月27日共計66組監(jiān)測數(shù)據為測試樣本。
為了消除變量量綱的影響,對數(shù)據進行歸一化,即
(20)
式中,xi和xnorm分別為各變量歸一化前、后的值;xmin和xmax分別為各變量的極小、極大值。
將歸一化后的異常檢測數(shù)據集進行整理,結果如圖2所示。由圖2可知,水位與位移具有較好的負相關性,這是由于位移數(shù)據的方向是以向上游為正方向,同時位移值的變化相對于水位也有一定的滯后性,符合實際規(guī)律;溫度與位移有相似的變化規(guī)律。在水位、溫度和時效變化不大的情況下,位移發(fā)生了突變,經過一段時間后回歸正常,存在顯著異常值。
圖2 異常檢測數(shù)據
粒子群算法的異常閾值參數(shù)優(yōu)化結果為0.02,異常值處理的結果如圖3所示。圖3a表示位移與水位和溫度波函數(shù)值的關系,可以看出“花形”的異常值為顯著的離群點。圖3b中表示位移值隨時間的變化情況,可以看出異常值篩選效果優(yōu)越。
圖3 異常處理結果
將異常值處理后的數(shù)據集利用KELM模型進行回歸預測,利用PSO優(yōu)化參數(shù)σ、γ和C,為了保證模型的可靠性,在對訓練集進行訓練時采用5折交叉驗證以提高模型的穩(wěn)定性。提出的IF-KELM模型是用Python語言來設計和實現(xiàn)的,程序具體步驟為:
(1)數(shù)據預處理。導入監(jiān)測數(shù)據,進行規(guī)定的數(shù)據處理。
(2)異常值剔除。構建異常檢測數(shù)據集,計算每組數(shù)據的異常分數(shù),根據選定的異常閾值進行數(shù)據剔除。
(3)粒子適應度函數(shù)值的計算。將剔除后的數(shù)據以實際位移值和輸入因子集的形式輸入KELM模型,適應度函數(shù)值為模型擬合位移值與實際位移值的均方根誤差,PSO 的目標函數(shù)即為最小化適應度函數(shù):
(21)
式中,yfit為擬合位移值;yact為實際位移值。
(4)粒子更新。根據適應度函數(shù)更新粒子的速度和位置。
(5)檢查終止條件。如果達到符合要求的適應度函數(shù)或最大迭代次數(shù),轉到第(6)步,否則返回第(2)步。
(6)參數(shù)確定。得到適應度函數(shù)最小對應的σ、γ和C參數(shù)。
(7)結果輸出。根據最優(yōu)參數(shù),依次進行異常值剔除與回歸擬合,得到大壩水平位移預測值。
為測試KELM算法的性能,本文同時將支持向量回歸機(SVR)、高斯回歸過程(GPR)作為對比算法,分別建立IF-KELM、IF-SVR、IF-GPR預測模型。訓練階段的擬合精度和測試階段的預測精度如表1所示。由表1可知,IF-KELM模型訓練集和測試集的RMSE分別是0.263 9 mm和1.106 7 mm,MAE分別是0.179 9 mm和0.860 2 mm,遠小于大壩水平位移的量級,同時也低于其他2個模型,而訓練集與測試集的R2也大于另外兩個模型。結果表明,預測結果具有較高精確性的同時,也具有更好的整體穩(wěn)定性。
表1 不同預測模型的預測精度對比
不同預測模型的擬合和預測結果如圖4所示。由圖4可知,IF-KELM模型的擬合過程線和預測過程線與實測過程線最接近,相應取得最優(yōu)參數(shù)的IF-SVR模型和IF-GPR模型雖然都取得了較好的擬合效果,但在圖中的“波峰波谷”處預測值與實測值偏差較大。根據結果,IF-KELM可以有效地評估和預測大壩位移,并且性能優(yōu)于IF-SVR和IF-GPR模型。
圖4 不同預測模型的擬合和預測結果對比
為了避免出現(xiàn)維數(shù)災害的問題,IF算法減少了輸入變量的個數(shù),在異常值剔除效果好的同時也大大提高了計算效率。PSO自動參數(shù)尋優(yōu)避免了人工假設異常閾值的問題,提升算法的參數(shù)尋優(yōu)效率,提高算法的泛化性能。與IF-SVR和IF-GPR相比,基于IF-KELM的模型具有更好的捕捉自變量和因變量之間非線性關系的能力,有高預測精度和低誤差報警。