錢程 李連基 周子?xùn)|
摘要:合理分析大壩變形監(jiān)測數(shù)據(jù)序列特征,精確預(yù)測大壩變形狀況,是大壩安全監(jiān)測的重要內(nèi)容。針對常用大壩安全監(jiān)測分析模型存在的不足,將人工蜂群算法與支持向量機(jī)模型結(jié)合起來,利用人工蜂群算法全局搜索能力強(qiáng)、收斂速度快等優(yōu)點對支持向量機(jī)模型的懲罰因子C和核參數(shù)6進(jìn)行優(yōu)化,建立了ABCA-SVM模型。某水電站大壩壩頂某點的112組徑向位移預(yù)測實例表明,ABCA-SVM模型預(yù)測精度高于標(biāo)準(zhǔn)SVM模型的,可以在大壩安全監(jiān)測領(lǐng)域推廣應(yīng)用。
關(guān)鍵詞:大壩安全;變形監(jiān)測;人工蜂群算法;支持向量機(jī)
中圖分類號:TV698.1
文獻(xiàn)標(biāo)志碼:A
doi: 10.3969/j.issn.1000-1379.2018.04.030
大壩的變形情況能較客觀地反映大壩的運行狀況,根據(jù)大壩變形實測資料建立大壩安全監(jiān)測模型對大壩安全穩(wěn)定運行起著非常重要的作用。近年來隨著信號處理技術(shù)、人工智能方法的不斷涌現(xiàn)和推廣,各種智能模型(神經(jīng)網(wǎng)絡(luò)模型、支持向量機(jī)(SVM)模型、小波網(wǎng)絡(luò)模型等)相繼被提出。其中支持向量機(jī)模型對解決一些小樣本、高維數(shù)、非線性的問題有很好的效果,且具有良好的泛化能力和魯棒性,在大壩安全監(jiān)測建模中受到廣泛關(guān)注。SVM參數(shù)的選擇直接影響其預(yù)測精度和泛化性能。目前對SVM參數(shù)進(jìn)行尋優(yōu)的方法主要有遺傳算法、粒子群算法、模擬退火算法,但由于遺傳算法收斂速度較慢,粒子群算法容易陷入局部最優(yōu),模擬退火算法的參數(shù)難以控制,因此筆者采用人工蜂群算法(ABCA)優(yōu)化SVM中的參數(shù),以期提高該模型的預(yù)測精度。
1 支持向量機(jī)基本原理
支持向量機(jī)(SVM)以統(tǒng)計學(xué)理論為基礎(chǔ),能夠有效解決多維函數(shù)的預(yù)測、分類問題,以及復(fù)雜的非線性回歸問題,其基本思想是利用內(nèi)積函數(shù)將輸入空間的非線性變量映射到一個高維空間,并在高維空間進(jìn)行線性回歸,即式中:6為閾值;w為高維特征空間;Φ(x)為非線性映射。
這樣,就將低維空間的非線性問題轉(zhuǎn)化為高維空間的線性問題。因非線性映射是固定不變的,故式中:l、e(·)、λ分別為樣本的數(shù)目、損失函數(shù)、常數(shù)(可以調(diào)整);xi、yi為一維空間的白變量和因變量。
最小化R(w),可以得到式中:χi和χ*i為最小化R(w)的解。
根據(jù)式(1)、式(3),得式中:k(xi,x)=Φ(Xi)·Φ(x),稱為核函數(shù)(滿足MerCer條件的任何對稱的核函數(shù)對應(yīng)于特征空間的點積)。
SVM回歸模型的關(guān)鍵在于核函數(shù)和核函數(shù)參數(shù)的選取。關(guān)于核函數(shù)的選擇,徑向基函數(shù)(RBF)是一種常用的核函數(shù),而且效果較好。關(guān)于核函數(shù)參數(shù)的選取,筆者采用人工蜂群算法對懲罰因子C和核參數(shù)δ進(jìn)行迭代尋優(yōu),找到合適的參數(shù)代人SVM模型,以期提高ABCA-SVM模型的預(yù)測精度。
2 人工蜂群算法
2.1 算法原理
人工蜂群算法是一種建立在蜜蜂群體智能白組織模擬模型基礎(chǔ)上的群集智能優(yōu)化算法,該算法由KarabogaD.于2005年提出,最初應(yīng)用在函數(shù)數(shù)值優(yōu)化。該算法將群體分為偵查蜂、觀察蜂和采蜜蜂3種,包括為食物源招募蜜蜂和放棄某個食物源兩種行為。算法中,每個蜜源的位置(即待求函數(shù)的決策變量)代表優(yōu)化問題的一個可行解,蜜源的質(zhì)量即對應(yīng)可行解的質(zhì)量。
算法程序模擬真實蜜蜂采蜜過程:①初始化生成n組隨機(jī)解,n為采蜜蜂數(shù)即蜜源數(shù),變量x=(xi)(i=l,2,…,d)為一個d維向量(d為優(yōu)化參數(shù)決策變量的個數(shù)),同時對這n組解進(jìn)行評價;②采蜜蜂根據(jù)蜜源的局部位置信息產(chǎn)生新的蜜源并進(jìn)行評價,若新蜜源比初始蜜源好則替代,否則初始蜜源不變化:③根據(jù)蜜源的質(zhì)量,觀察蜂通過既定的“優(yōu)勝劣汰”機(jī)制,以較高的概率選取優(yōu)質(zhì)蜜源,在選取的同時,根據(jù)蜜源處的局部信息產(chǎn)生一組新蜜源,若新蜜源質(zhì)量優(yōu)于舊蜜源則將其替代,否則不變。
采蜜蜂和觀察蜂在不斷循環(huán)上述步驟后逐步改善蜜源的質(zhì)量,獲取優(yōu)質(zhì)蜜源的位置。但在經(jīng)歷若干次選擇后,若某些蜜源位置沒有發(fā)生改進(jìn),則執(zhí)行偵查蜂操作,放棄該蜜源,尋找一組新蜜源替代并如前述方法一樣進(jìn)行評估。整個過程不斷反復(fù)執(zhí)行,記錄每步最優(yōu)解,直至達(dá)到既定的循環(huán)次數(shù)或預(yù)定精度。
2.2 數(shù)學(xué)描述
以最小優(yōu)化問題為例,食物源的花蜜量對應(yīng)于實際解的適應(yīng)度為式中:FITi為某組蜜源對應(yīng)的質(zhì)量:fiti為目標(biāo)函數(shù)。
某組蜜源被選中的概率為
采蜜蜂判斷蜜源的優(yōu)劣程度后,領(lǐng)域內(nèi)產(chǎn)生新解的公式為式中:ψ為(一1,1)的隨機(jī)數(shù);i∈(1,2,…,d),k∈(1,2,…,d),且k≠i;xij為領(lǐng)域中心;xij-Xhj為領(lǐng)域范圍。
偵查蜂放棄某蜜源,產(chǎn)生替補(bǔ)新蜜源的公式為式中:x'max和x'min為i維度的上下界,由此產(chǎn)生的新蜜源可減少一定的盲目性;rand(0,1)為生成0~1的隨機(jī)數(shù)。
3 基于人工蜂群算法的支持向量機(jī)模型
ABCA-SVM模型旨在依靠人工蜂群算法全局搜索能力強(qiáng)、收斂速度快的優(yōu)點,選取支持向量機(jī)較優(yōu)的懲罰因子C和核參數(shù)δ,從而提高ABCA-SVM模型的預(yù)測精度。具體操作步驟如下。
(1)數(shù)據(jù)輸入。按成因,大壩變形可分為水壓分量、溫度分量和時效分量三部分,因此輸入數(shù)據(jù)時需輸入影響因素數(shù)據(jù)(水位、溫度和時間)以及位移數(shù)據(jù)。
(2)將支持向量機(jī)懲罰因子C和核參數(shù)δ作為人工蜂群算法目標(biāo)函數(shù)的決策變量。
(3)根據(jù)求解問題設(shè)定目標(biāo)函數(shù)??紤]到大壩變形預(yù)測精度,可將剩余平方和作為目標(biāo)函數(shù),假設(shè)有m組觀察樣本,實際位移為yi,ABCA-SVM模型預(yù)測值為yi,則目標(biāo)函數(shù)值為
(4)計算個體適應(yīng)度。由式(5)可知,目標(biāo)值越小適應(yīng)度越大,目標(biāo)值被選擇的概率越大。
(5)優(yōu)化得出新解后,計算新模型的相關(guān)統(tǒng)計學(xué)指標(biāo),并與原模型比較。如此反復(fù),直至結(jié)果達(dá)到滿意精度或循環(huán)達(dá)到既定的次數(shù)。
算法流程見圖1。
4 實例分析
某水電站位于瀾滄江中游,是瀾滄江中下游水電規(guī)劃“兩庫八級”中的第二級。電站于2002年1月20日開工,大壩為混凝土雙曲拱壩,壩高292m,壩頂高程1254m,電站建成后將形成庫容為149.14億m3的水庫,可帶來巨大的發(fā)電、灌溉、航運等綜合效益。以該大壩壩頂某點的112組徑向位移(2010-08-08至2013-02-08)為樣本,利用ABCA-SVM模型對樣本進(jìn)行擬合和預(yù)測,并把擬合和預(yù)測結(jié)果與標(biāo)準(zhǔn)SVM模型結(jié)果對比。其中,樣本的前82組數(shù)據(jù)用來擬合,后30組數(shù)據(jù)用來檢驗。
ABCA-SVM模型輸入數(shù)據(jù)有水位、溫度、時間和位移。該壩為混凝土雙曲拱壩,水壓分量與水深H-H0、(H-H0)2、(H-H0)3、(H-H0)4有關(guān),其中H、H0分別為監(jiān)測日、始測日對應(yīng)的水頭。由于沒有溫度數(shù)據(jù),因此溫度分量將多周期的諧波作為因子,取,其中:t為監(jiān)測日到始監(jiān)測日的累計天數(shù);t0為建模資料系列第一個測日到始測日的累計天數(shù)。時間分量取兩個影響因子θ-θ0、Inθ-Inθ0,其中:θ為監(jiān)測日至始測日的累計天數(shù)t除以100;θ為建模資料系列第一個監(jiān)測日到始測日的累計天數(shù)除以100。這樣總計有10個影響因子。
初始化人工蜂群算法基本參數(shù):蜂群大小為100,最大循環(huán)次數(shù)為100,放棄蜜源操作的最大執(zhí)行次數(shù)為50,C取值范圍為[0.1,100],6取值范圍為[0.01,10]。人工蜂群算法優(yōu)化后的懲罰因子C和核參數(shù)6的最佳取值為57.1和0.52。將最佳懲罰因子C和核參數(shù)6代人ABCA-SVM模型,計算得出2010年8月8日至2012年6月26日共82組位移數(shù)據(jù)的擬合值以及2012年7月5日至2013年2月8日共30組位移數(shù)據(jù)的預(yù)測值。將ABCA-SVM模型的擬合值和預(yù)測值與標(biāo)準(zhǔn)SVM模型計算結(jié)果進(jìn)行對比。為方便比較,從擬合數(shù)據(jù)中截取2011年8月11日至2012年3月11日的25組數(shù)據(jù),位移實測值和兩種模型的擬合值及擬合值的殘差見圖2、圖3。
從圖2、圖3可以看出,標(biāo)準(zhǔn)SVM模型和ABCA-SVM模型均能較好地擬合監(jiān)測序列,但ABCA-SVM模型擬合值殘差明顯小于標(biāo)準(zhǔn)SVM模型的擬合值殘差,ABCA-SVM模型具有更高的擬合精度。ABCA-SVM模型和標(biāo)準(zhǔn)SVM模型預(yù)測值對比見表1、圖4。
由表1、圖4可知,ABCA-SVM模型預(yù)測值的相對誤差大多小于標(biāo)準(zhǔn)SVM模型的:兩模型進(jìn)行短期預(yù)測時,ABCA-SVM模型的預(yù)測結(jié)果更接近實測值。綜上所述,ABCA-SVM模型在進(jìn)行小樣本數(shù)據(jù)擬合、預(yù)測時精度高于標(biāo)準(zhǔn)SVM模型。
5 結(jié)語
將人工蜂群算法與支持向量機(jī)結(jié)合起來,利用人工蜂群算法全局搜索能力強(qiáng)、收斂速度快等優(yōu)點對支持向量機(jī)的懲罰因子C和核參數(shù)δ進(jìn)行優(yōu)化,建立了ABCA-SVM模型。實例證明,相比于標(biāo)準(zhǔn)SVM模型,該模型的擬合、預(yù)測精度均有一定提高,可以在大壩安全監(jiān)測領(lǐng)域推廣應(yīng)用。