柳志坤,周蘭庭
(河海大學(xué)水利水電學(xué)院,南京 210098)
混凝土壩變形監(jiān)測數(shù)據(jù)能直觀可靠地反映大壩的運(yùn)行狀況,監(jiān)測序列是一種隨時(shí)間變化的數(shù)據(jù)信號(hào),主要受到水壓、溫度和時(shí)效的影響,二者之間是一種非線性映射的關(guān)系,加之監(jiān)測過程中常帶有一定的系統(tǒng)噪聲和觀測噪聲,往往會(huì)掩蓋實(shí)際變形值,這使得變形監(jiān)測序列具有較強(qiáng)的非線性和不確定性,增加了資料分析的困難度。目前常采用的監(jiān)控模型主要有統(tǒng)計(jì)型、混合型、確定型及其衍生的各種改進(jìn)模型,隨著智能算法的發(fā)展,遺傳算法(GA)、神經(jīng)網(wǎng)絡(luò)(BP)、支持向量機(jī)(SVM)等均被應(yīng)用到大壩安全監(jiān)控中。在處理大壩變形監(jiān)測數(shù)據(jù)這類高維數(shù)、非線性的問題上,SVM是一種較為理想的模型,錢秋培等[1]應(yīng)用SVM建立了混凝土壩變形監(jiān)控模型,論證了其短期預(yù)測能力優(yōu)于長期預(yù)測能力,合理選擇測試集數(shù)目對模型預(yù)測影響明顯;孫小冉等[2]將粗集理論與SVM結(jié)合,簡化了大壩變形影響因素和效應(yīng)量之間的映射關(guān)系,優(yōu)化了模型輸入使模型更能體現(xiàn)大壩的運(yùn)行機(jī)制;趙二峰等[3]基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則和提升算法強(qiáng)化學(xué)習(xí)的思想,提出一種穩(wěn)定性好的AdaBoost-SVM變形預(yù)測模型,增強(qiáng)了模型的泛化能力和預(yù)測精度;杜傳陽等[4]利用馬爾科夫鏈(MC)對原始數(shù)據(jù)的殘差進(jìn)行處理,并基于SVM理論建立大壩變形監(jiān)測模型;黃夢婧等[5]利用差分自回歸移動(dòng)平均模型(ARIMA)來處理非平穩(wěn)時(shí)間序列,對SVM模型的殘差進(jìn)行處理,改進(jìn)了原有大壩變形監(jiān)控模型;張海龍等[6]將極限學(xué)習(xí)機(jī)(ELM)用于混凝土壩變形監(jiān)控模型的構(gòu)建中,并通過改進(jìn)粒子群算法進(jìn)行參數(shù)尋優(yōu),提高了模型的學(xué)習(xí)能力;針對大壩變形影響因子繁多,因子之間關(guān)聯(lián)性強(qiáng)的問題,陳斯煜等[7]利用主成分分析(PCA)對監(jiān)測數(shù)據(jù)降維,將提取的主元影響量作為徑向基神經(jīng)網(wǎng)絡(luò)(RBF)的輸入量,建立了混凝土壩位移趨勢性預(yù)測模型。本文在前述研究的基礎(chǔ)上,通過對實(shí)測數(shù)據(jù)進(jìn)行去噪,并利用主成分分析提取影響因子的主元,采用支持向量機(jī)對非線性問題進(jìn)行預(yù)測,但考慮到模型參數(shù)的合理選擇對預(yù)測精度有較大的影響,本文利用粒子群算法的全局搜索能力及魯棒性強(qiáng)的特點(diǎn),采用改進(jìn)的粒子群算法對模型參數(shù)進(jìn)行尋優(yōu),建立了基于PCA-IPSO-SVM的組合預(yù)測模型。
小波分析理論[8,9]是在Fourier的基礎(chǔ)上發(fā)展起來的一種時(shí)頻分析方法,克服了傳統(tǒng)變換的缺點(diǎn),通過小波基函數(shù)的伸縮變換實(shí)現(xiàn)對信號(hào)的多尺度分析,大壩變形監(jiān)測數(shù)據(jù)就是一個(gè)時(shí)間序列,小波理論憑借良好的時(shí)頻局部化和多分辨率分析的能力,在大壩監(jiān)測數(shù)據(jù)處理領(lǐng)域得到廣泛應(yīng)用。
大壩變形監(jiān)測數(shù)據(jù)為一離散的時(shí)間序列,故在應(yīng)用小波理論時(shí)采用其離散形式:
(1)
式中:f(t)為變形時(shí)間序列;φ*為小波基函數(shù)的復(fù)共軛;a0、b0均為實(shí)常數(shù);j、k為整數(shù)。
小波分析的實(shí)質(zhì)是對信號(hào)根據(jù)尺度大小由粗到細(xì)地分解,不斷地將低頻信號(hào)進(jìn)一步分解為低頻和高頻信號(hào),分解N層后即可得到N個(gè)高頻信號(hào)和1個(gè)低頻信號(hào),進(jìn)而實(shí)現(xiàn)把信號(hào)分解為任意頻率上的高頻和低頻。
大壩變形監(jiān)測序列本身包含著大壩實(shí)際運(yùn)行狀態(tài)的信息,但在監(jiān)測過程中往往受到環(huán)境、儀器等因素的影響,序列中的噪聲會(huì)給建模分析帶來一定的偏差,故將監(jiān)測序列視為一維信號(hào)進(jìn)行去噪處理,以提高數(shù)據(jù)分析的精度。小波去噪的關(guān)鍵在于控制閾值的選取,閾值過小會(huì)保留過多噪聲,閾值過大則會(huì)產(chǎn)生失真現(xiàn)象,此處采用使最大風(fēng)險(xiǎn)最小化的極大極小值閾值法來確定閾值,公式如下:
λ=σ(0.393 6+0.182 9log2n)
(2)
σ=median(|ωj|)/0.674 5
(3)
式中:σ為標(biāo)準(zhǔn)差;n為數(shù)據(jù)個(gè)數(shù);median(|ωj|)為小波系數(shù)絕對值中值。
選定閾值后,采用式(4)的軟閾值法去噪,當(dāng)小波系數(shù)的絕對值大于或等于閾值時(shí),將兩者相減,符號(hào)保持不變;而小于閾值時(shí)直接置為零,最后對小波系數(shù)重構(gòu)可得去噪后的監(jiān)測數(shù)據(jù)。
(4)
式中:λ為閾值;ω為小波系數(shù);ωλ為閾值處理后的小波系數(shù)。
在建立混凝土壩變形的預(yù)測模型時(shí),需要將與變形相關(guān)的各影響因子作為模型的輸入量,但因子數(shù)量繁多且因子間相互關(guān)聯(lián)性復(fù)雜,不僅降低模型的精度還增加了運(yùn)算時(shí)間。因此,借助主成分分析法[10,11]提取主要因素作為模型的輸入量,將原始高維數(shù)據(jù)轉(zhuǎn)化成低維數(shù)據(jù),消除原數(shù)據(jù)間的相關(guān)性,并能在最大程度上反映原數(shù)據(jù)包含的信息。
設(shè)大壩變形預(yù)測模型有p個(gè)影響因子,每個(gè)因子有n個(gè)監(jiān)測數(shù)據(jù),則數(shù)據(jù)集X:
(5)
式中:xi=(x1i,x2i,…,xni),i=1,2,…,p。在對變形影響因子進(jìn)行主成分分析時(shí),按式(6)~(8)對數(shù)據(jù)集進(jìn)行標(biāo)準(zhǔn)化處理,并按式(9)計(jì)算相關(guān)系數(shù)矩陣。
(6)
(7)
(8)
(9)
最后根據(jù)特征方程求出各特征值和對應(yīng)的特征向量,并將特征值從大到小排列,此即主成分的排序,根據(jù)式(10)、(11)計(jì)算各主成分的貢獻(xiàn)率和累計(jì)貢獻(xiàn)率,并選取累計(jì)貢獻(xiàn)率大于85%的主成分作為最終的主元來代替原始數(shù)據(jù)。
(10)
(11)
式中:λi為特征值;γi為各主成分貢獻(xiàn)率;Mk為主成分累計(jì)貢獻(xiàn)率。
粒子群算法[12,13]最早起源于群鳥覓食的現(xiàn)象,算法中的每一個(gè)粒子代表優(yōu)化問題的一個(gè)可能解,并通過速度和位置兩個(gè)指標(biāo)來刻畫粒子的行為,粒子的優(yōu)劣通過適應(yīng)度值來判斷,而適應(yīng)度函數(shù)則根據(jù)具體情況而定,粒子在尋優(yōu)中通過分析個(gè)體極值和群體極值的情況決定是否更新,通過不斷迭代搜尋到全局最優(yōu)解。
設(shè)在一個(gè)N維搜索空間中,群體粒子數(shù)為m,第i個(gè)粒子的位置為xi=(xi1,xi2,…,xin),速度為vi=(vi1,vi2,…,vin),個(gè)體極值為pi=(pi1,pi2,…,pin),群體極值為gi=(gi1,gi2,…,gin),則經(jīng)過k次迭代后PSO算法按下述公式對粒子的位置和速度進(jìn)行更新:
vidk=ωvidk-1+c1r1(pidk-1-xidk-1)+c2r2(gidk-1-xidk-1)
(12)
xidk=xidk-1+vidk
(13)
式中:i=1,2,…,m,d=1,2,…,n,c1、c2為加速常數(shù);r1和r2是[0,1]內(nèi)的隨機(jī)數(shù);ω為慣性權(quán)重。
粒子群算法中最需要關(guān)注的參數(shù)是慣性權(quán)重ω,這直接關(guān)系到算法尋優(yōu)的效果,ω越大其全局尋優(yōu)能力越強(qiáng),局部尋優(yōu)能力較弱;ω越小其局部尋優(yōu)能力越強(qiáng),全局尋優(yōu)能力較弱。在標(biāo)準(zhǔn)粒子群算法中,ω常取為1,但考慮到實(shí)際尋優(yōu)中,算法在不同時(shí)期對全局和局部尋優(yōu)的需求程度不同,ω不能一成不變,此處規(guī)定其初值為0.9,終值為0.4,采用式(14)的線性遞減慣性權(quán)重來控制ω的大小,對粒子群算法進(jìn)行改進(jìn),使算法在前期加強(qiáng)全局尋優(yōu),后期注重局部尋優(yōu)。
ω(k)=ωs-(ωs-ωe)(T-k)/T
(14)
式中:ωs為權(quán)重初值;ωe為權(quán)重終值;T為最大迭代次數(shù);k為當(dāng)前迭代次數(shù)。
支持向量機(jī)[14,15]源于模式分類研究,后推廣至回歸問題,通過選定的非線性映射函數(shù)將輸入量轉(zhuǎn)化到高維空間中,并在該空間中構(gòu)造最優(yōu)決策函數(shù),它基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化準(zhǔn)則,并具有全局最優(yōu)性和較好的泛化能力,對于大壩變形序列這種復(fù)雜的非線性問題,采用該方法能取得較為理想的結(jié)果。
給定樣本數(shù)據(jù)(xi,yi),i=1,2,…,n,xi∈Rm,yi∈R。采用非線性映射φ(x)將數(shù)據(jù)映射到高維空間中,并構(gòu)造線性擬合函數(shù)f(x)=ωφ(x)+b,其中ω為權(quán)值向量,b為常數(shù)?;诮Y(jié)構(gòu)風(fēng)險(xiǎn)最小化原則求解ω和b,尋優(yōu)過程等價(jià)于下式:
(15)
式中:C為懲罰因子;ξ為松弛變量。
對上述問題建立拉格朗日函數(shù)求解:
L(ω,b,ξ,α)=
(16)
式中:αi為拉格朗日乘子。根據(jù)KKT條件可求得:
(17)
消去ω和ξi,核函數(shù)K(x,xi)取為高斯徑向基函數(shù)(RBF),通過求解方程組最終得到支持向量機(jī)的回歸方程,分別見式(18)、(19)。
(18)
(19)
根據(jù)1.1~1.4的理論分析,基于小波理論的混凝土壩變形PCA-IPSO-SVM預(yù)測模型建模步驟如下,流程圖見圖1。
圖1 建模流程圖
(1)對混凝土壩變形監(jiān)測序列Y采用極大極小值的軟閾值法進(jìn)行去噪處理,記去噪后序列為Y1;
(2)根據(jù)影響大壩變形的水壓、溫度、時(shí)效三大主因素以及大壩安全監(jiān)控統(tǒng)計(jì)模型選取適當(dāng)?shù)挠绊懸蜃?,記為D1,D2,…,Dn;
(3)對(2)中選取的影響因子進(jìn)行主成分分析,并提取累計(jì)貢獻(xiàn)率大于85%的因子作為主成分,記為Z1,Z2,…,Zm;
(4)將主成分序列進(jìn)行歸一化處理,并相應(yīng)的劃分訓(xùn)練集和測試集。將主成分作為SVM的輸入量,將去噪后序列作為SVM輸出量;
(5)采用IPSO算法對SVM的參數(shù)進(jìn)行尋優(yōu),求解最優(yōu)的C、σ值,并代回SVM中,完成模型訓(xùn)練;
(6)用訓(xùn)練好的模型對測試集進(jìn)行預(yù)測,并分析預(yù)測精度。
某水電站由攔河大壩、壩后溢流式廠房、埋設(shè)于壩內(nèi)的輸水系統(tǒng)、泄水底孔及過木筏等組成,大壩類型為混凝土重力壩,壩頂高程280 m,最大壩高78 m,壩頂全長253 m,本文為分析其位移變化情況,選取該壩的9號(hào)壩段引張線測點(diǎn)EX7自2012年12月6日至2013年12月26日的監(jiān)測數(shù)據(jù)為樣本,樣本實(shí)測位移和上游水位過程線如圖2所示,其中以2012年12月6日至2013年12月6日的數(shù)據(jù)為訓(xùn)練集,以2013年12月7日至2013年12月26日的數(shù)據(jù)為測試集。
圖2 EX7測點(diǎn)實(shí)測位移及上游水位過程線
在實(shí)際位移的監(jiān)測過程中,由于噪聲等因素的影響,實(shí)測位移數(shù)據(jù)往往存在一定的偏差,從而影響建模分析,故對圖2中的實(shí)測位移運(yùn)用小波原理進(jìn)行去噪處理,以增加數(shù)據(jù)的真實(shí)度。首先,使用正則性較好的db4小波對原始監(jiān)測數(shù)據(jù)進(jìn)行分解,分解層數(shù)為4,分解之后的低頻序列和高頻序列見圖3,高頻序列為d1、d2、d3、d4,低頻序列為a4。從圖3中可以看出由于噪聲的存在使得高頻序列波動(dòng)較為劇烈,因此有必要采用軟閾值法進(jìn)行去噪處理。
圖3 小波分解過程線
然后通過調(diào)用matlab函數(shù)庫中的wnoisest函數(shù),提取第一層的細(xì)節(jié)系數(shù)來估計(jì)噪聲的標(biāo)準(zhǔn)偏差,通過“極大極小值閾值法”確定閾值,并采用全局閾值處理,即對近似系數(shù)不做處理而對細(xì)節(jié)系數(shù)進(jìn)行處理,最后將處理后的數(shù)據(jù)進(jìn)行重構(gòu),得到去噪后的變形序列如圖4所示,由圖4可以看出去噪后的數(shù)據(jù)相對光滑,利于下文建模分析。
圖4 去噪前后數(shù)據(jù)過程線
運(yùn)用SPSS對上述9個(gè)影響因子進(jìn)行主成分分析,得到其特征值及方差貢獻(xiàn)率如表1所示。
表1 影響因子貢獻(xiàn)率表
由表1可知,前4個(gè)主成分的累計(jì)貢獻(xiàn)率為94.425%,可以反映原數(shù)據(jù)的大部分信息,故選擇前四個(gè)主成分作為模型的輸入向量,并得到前4個(gè)主成分的評(píng)分系數(shù),如表2所示。由式(20)計(jì)算主成分,并將歸一化后的數(shù)據(jù)作為模型輸入變量。
表2 主成分評(píng)分系數(shù)
Fi=mi1Y1+mi2Y2+mi3Y3+mi4Y4+
mi5Y5+mi6Y6+mi7Y7+mi8Y8+Mi9Y9
(20)
式中:Fi為主成分(i=1,2,3,4);Y1~Y9為變形影響因子;mi1~mi9為對應(yīng)的各主成分的評(píng)分系數(shù)。
基于選定的樣本數(shù)據(jù),劃分訓(xùn)練集和測試機(jī),并利用IPSO算法對SVM的參數(shù)C和σ進(jìn)行尋優(yōu)。設(shè)定粒子個(gè)數(shù)為20,種群迭代次數(shù)為200,C的范圍為[0.1,100],σ的范圍為[0.01,10],加速常數(shù)c1、c2為1.2,慣性權(quán)重采用式(14)的確定方式,適應(yīng)度函數(shù)為SVM輸出值與樣本實(shí)測值的均方誤差。
由圖5可以看出,IPSO-SVM模型的最佳適應(yīng)度要優(yōu)于未改進(jìn)模型的最佳適應(yīng)度,改進(jìn)后的最佳適應(yīng)度穩(wěn)定在0.013附近,此時(shí)C=38.398,σ=0.29。將劃分好的訓(xùn)練集主成分輸入到SVM中進(jìn)行學(xué)習(xí),將測試集主成分輸入到已訓(xùn)練好的預(yù)報(bào)模型里,分別得到擬合和預(yù)測結(jié)果,并與單一SVM模型和BP神經(jīng)網(wǎng)絡(luò)的擬合和預(yù)測結(jié)果進(jìn)行對比,各模型擬合和預(yù)測曲線見圖6、圖7。
圖5 改進(jìn)前后適應(yīng)度比較曲線
圖6 各模型擬合曲線
圖7 各模型預(yù)測曲線
根據(jù)預(yù)測結(jié)果,基于均方根誤差(RMSE)、平均絕對百分比誤差(MAPE)和平均絕對誤差(MAE)三項(xiàng)統(tǒng)計(jì)指標(biāo)定量比較各模型的預(yù)測精度,計(jì)算公式如下,計(jì)算結(jié)果如表3所示。
表3 各模型預(yù)測精度
(21)
(22)
(23)
從表3可以直觀發(fā)現(xiàn),相比于單一的SVM模型和BP神經(jīng)網(wǎng)絡(luò),本文提出的PCA-IPSO-SVM模型的預(yù)測精度較高,三項(xiàng)誤差指標(biāo)均較小。由于影響混凝土壩變形的各個(gè)因素之前往往具有較強(qiáng)的非線性,因此本文提出的模型在混凝土壩變形預(yù)測方面有著較強(qiáng)的合理性和優(yōu)越性。
本文充分考慮實(shí)際中混凝土壩變形序列的非線性特征及含噪特性,基于復(fù)合建模思想將小波理論、粒子群算法、主成分分析和支持向量機(jī)應(yīng)用到大壩變形預(yù)測中,該方法在消除監(jiān)測噪聲影響的同時(shí)也降低了因子之間的關(guān)聯(lián)性對預(yù)測精度的影響,并采用IPSO算法對SVM的參數(shù)進(jìn)行尋優(yōu),減少其陷入局部最優(yōu)的概率,提高了預(yù)測精度,彌補(bǔ)了傳統(tǒng)方法數(shù)據(jù)分析量大、精度欠佳的缺點(diǎn)。工程實(shí)例表明,本文提出的方法能較好地進(jìn)行混凝土壩變形預(yù)測,相較于傳統(tǒng)的預(yù)測模型,具有更高的實(shí)用價(jià)值。