朱軍桃,程 勝,邢 尹
(桂林理工大學(xué) a.測繪地理信息學(xué)院;b.廣西空間信息與測繪重點實驗室,廣西 桂林 541006)
大壩變形常受溫度、水位等諸多具備隨機性和非線性因子的影響,使得傳統(tǒng)的預(yù)測方法難以表達變形量與影響因素之間的復(fù)雜關(guān)系,預(yù)測效果常不令人滿意[1]。目前,常用的監(jiān)測模型有支持向量機(SVM)、人工神經(jīng)網(wǎng)絡(luò)[2]、時間序列模型、統(tǒng)計模型等,其中SVM模型適用于解決小樣本、高維數(shù)、非線性的問題,具有良好的泛化能力[3],在大壩安全檢測建模中得到了較多的應(yīng)用。SVM是機器學(xué)習(xí)領(lǐng)域的一個熱點算法,但回歸性能受其內(nèi)部參數(shù)影響很大,為此,許多研究者提出將粒子群算法[4](PSO)、 布谷鳥搜索算法[5](CS)、差分進化算法[6](DE)等運用于SVM的參數(shù)優(yōu)化上, 并取得了良好的應(yīng)用效果。 灰狼算法(GWO)是一種新型元啟發(fā)式算法[7],且具備良好的穩(wěn)定性和快速收斂性,但該算法在參數(shù)尋優(yōu)過程中易陷入局部最優(yōu),進而影響SVM模型的預(yù)測性能。
鑒于此,本文提出引入非線性收斂因子和采用動態(tài)權(quán)重策略來改進灰狼算法(IGWO),并對SVM參數(shù)進行深度尋優(yōu)。利用優(yōu)化的參數(shù)建立SVM預(yù)測模型,并與PSO-SVM、CS-SVM、DE-SVM和GWO-SVM預(yù)測模型進行比較,本文提出的IGWO-SVM模型體現(xiàn)出了優(yōu)越性,能夠提高大壩預(yù)測精度。
用線性回歸函數(shù)f(x)=w·x+b擬合數(shù)據(jù){xi,yi},i=1,2,…,n,xi∈Rd,yi∈R的問題,根據(jù)SVM理論,若采用線性ε不敏感損失函數(shù):
(1)
下,最小化目標函數(shù)
(2)
其中, 常數(shù)C>0控制對超出誤差ε的樣本的懲罰程度,采用優(yōu)化方法可以得到其對偶問題,即在約束條件
(3)
(4)
從而得到回歸模型
(5)
其中,αi、αi*不為0, 對應(yīng)的樣本就是支持向量。 如果用核函數(shù)K(xi,xj)替代式(4)、(5)中的內(nèi)積運算就可以確定非線性擬合函數(shù)
(6)
式(5)、(6)中的b*為取在邊界上的一點,由此可確定;本文K(xi,xj)選用高斯徑向基核函數(shù)(RBF),其表達式為K(xi,xj)=exp{-g‖xi-xj‖2},g為RBF核參數(shù)。
灰狼是一種食肉性動物,多以群居為主,群體內(nèi)有著嚴格的社會等級管理制度,可形象描述為金字塔等級制,如圖1所示。金字塔頂層為種群中的頭狼,稱為α,是狼群的主要管理者。金字塔第2層狼稱為β,是α的協(xié)助者,當α出現(xiàn)空缺時,β將替補成為α,β在狼群中(除α外)對其他成員具有支配權(quán),同時還起著協(xié)調(diào)反饋的作用。金字塔第3層狼稱為δ,δ聽從α及β的指令,可以指揮其他底層個體,年老的α及β也將降級為δ級別。金字塔最底層狼稱為ω,主要負責(zé)種群內(nèi)部關(guān)系的平衡。
在GWO算法中,由α、β、δ執(zhí)行追捕行為,ω進行獵物跟蹤圍剿,對應(yīng)于連續(xù)函數(shù)優(yōu)化時,將當前種群中具有最優(yōu)適應(yīng)度值的個體記為α,排名第2及第3的個體分別記為β和δ,剩余個體記為ω,獵物的位置對應(yīng)于優(yōu)化問題的全局最優(yōu)解,下面給出算法中的3個定義[8]。
圖1 灰狼種群等級金字塔示意圖Fig.1 Schematic diagram of the grey wolf population level pyramid
定義1灰狼與獵物之間的距離[7],在捕食過程中,灰狼首先需要對獵物進行包圍,對應(yīng)在GWO算法中,需要確定個體與獵物之間的距離
D=|EXp-X(t)|;
(7)
E=2r1,
(8)
其中,Xp表示獵物的位置;X(t)表示在t代時灰狼個體的位置;常數(shù)E為擺動因子;r1為[0,1]的隨機數(shù)。
定義2灰狼位置更新[6]:
X(t+1)=Xp-AD;
(9)
A=2ar2-a,
(10)
其中,A為系數(shù)因子;r2為[0,1]的隨機數(shù);a隨著迭代次數(shù)增加從2線性遞減到0, 計算公式為
(11)
其中,Tmax是最大迭代次數(shù)。
定義3獵物位置定位[7],當灰狼判斷出獵物所在位置時,將由頭狼α帶領(lǐng)β、δ發(fā)動追捕行為。 在狼群中,α、β、δ三者最靠近獵物,可以利用這三者的位置來判斷獵物所在方位[8]。
狼群中個體跟蹤獵物方位的數(shù)學(xué)描述如下:
Dα=|E1Xα(t)-X(t)|;
(12)
Dβ=|E2Xβ(t)-X(t)|;
(13)
Dδ=|E3Xδ(t)-X(t)|;
(14)
X1=Xα-A1Dα;
(15)
X2=Xβ-A2Dβ;
(16)
X3=Xδ-A3Dδ;
(17)
(18)
由式(12)~(17)計算出群內(nèi)個體與α、β、δ的距離,然后由式(18)即可綜合判斷出個體向獵物移動的方向?;綠WO算法的具體步驟見文獻[7]。
由于灰狼算法的收斂因子a是隨著迭代次數(shù)線性從2遞減到0,但算法在不斷收斂過程中并不是線性的,收斂因子a線性遞減策略不能完全體現(xiàn)出實際的優(yōu)化搜索過程[9]。因此,本文提出一種新的非線性收斂方式[10]
(19)
其中, e是自然對數(shù)的底數(shù);t是當前迭代次數(shù);Tmax是最大迭代次數(shù);Q=9.903 438。 收斂因子a隨進化代數(shù)非線性遞減過程, 如圖2所示。 可知, 收斂因子a隨著迭代次數(shù)從2非線性遞減到0。 進化初期, 收斂因子a平穩(wěn)降低, 實現(xiàn)算法尋優(yōu)的平穩(wěn)過渡; 進化中期, 收斂因子a的衰減程度提高, 算法快速尋找全局最優(yōu)解; 進化后期, 收斂因子a的衰減程度逐漸減低, 保證算法精確尋優(yōu), 并最終收斂。
圖2 收斂因子a對比Fig.2 Comparison of convergence factors a
由于灰狼算法的狼α不一定是全局最優(yōu)點,這時在不斷迭代過程中,隨著狼ω不斷地向著狼α、β和δ逼近,容易陷入局部最優(yōu)[11]。通過評估狼α、β和δ所處位置優(yōu)劣,引入動態(tài)比例權(quán)重,進一步調(diào)整灰狼位置,并最終精確捕食獵物。動態(tài)權(quán)重比例計算公式為
(20)
(21)
(22)
最終的迭代方式為
X(t+1)=
(23)
其中:適應(yīng)度函數(shù)f(X)=1/MSE,MSE表示均方誤差。
① 給定實驗數(shù)據(jù),確定訓(xùn)練樣本和測試樣本,并進行歸一化操作:
(24)
式中,x為輸入數(shù)據(jù);y為歸一化后數(shù)據(jù)。
② 給定種群規(guī)模N,最大迭代次數(shù)Tmax,以及優(yōu)化參數(shù)取值范圍。
③ 隨機產(chǎn)生初始種群Xi為
Xi=r0(ub-lb)+lb,
(25)
其中:lb和ub分別為參數(shù)取值的下界和上界;r0為[0,1]間的隨機數(shù);i=1, 2, …,N。
④ 計算每一頭灰狼位置的適應(yīng)度值, 并進行升序排列, 排名前3位的灰狼位置分別記為Xα、Xβ和Xδ。
⑤ 按照式(19)更新a, 并根據(jù)式(12)~(14)計算出群體內(nèi)個體與α、β、δ的距離; 然后由式(15)~(17)和式(20)~(23)判斷個體向獵物移動的方向,得到新的個體位置X(t+1), 即得到新的SVM參數(shù)值。
⑥ 若達到最大迭代次數(shù), 則終止迭代, 輸出最優(yōu)參數(shù)C和g; 否則返回④。
⑦ 采用優(yōu)化的參數(shù)C和g建立SVM預(yù)測模型。
選取豐滿大壩某一測段1985年1月4日—1988年7月13日的200期多源監(jiān)測數(shù)據(jù),如圖3所示。
圖3 大壩水平位移序列Fig.3 Sequence of the horizontal displacement of the dam
為了評價模型預(yù)測效果, 選用均方誤差(MSE)、 平均相對誤差(MRE)、 誤差標準差(SDE)、 確定性系數(shù)(R2)這4個評價指標,它們分別為
(26)
(27)
(28)
(29)
為了說明本文所建立的預(yù)測模型優(yōu)越性,分別采用布谷鳥搜索算法(CS)、差分進化算法(DE)、粒子群算法(PSO)、灰狼算法(GWO)和改進灰狼算法(IGWO)對SVM模型進行優(yōu)化。所有優(yōu)化算法的種群規(guī)模都設(shè)置為20,最大迭代次數(shù)設(shè)置為100。此參數(shù)設(shè)置均保持了各算法具備充足的種群規(guī)模和迭代數(shù)以達到收斂狀態(tài)。其中,CS中鳥蛋被宿主發(fā)現(xiàn)概率為0.25;DE交叉概率因子為0.8;PSO加速因子c1=c2=1.5; SVM參數(shù)尋優(yōu)范圍設(shè)置為C∈[0.01,100],g∈[0.01,100]。
5種算法優(yōu)化的SVM參數(shù)結(jié)果見表1。采用其中的參數(shù)C和g作為SVM參數(shù),對訓(xùn)練集進行學(xué)習(xí),建立相應(yīng)的CS-SVM、DE-SVM、PSO-SVM、GWO-SVM及IGWO-SVM的大壩預(yù)測模型。
圖4給出了IGWO-SVM模型大壩位移變形預(yù)測值與原始觀測值的比較圖。IGWO-SVM模型大壩位移變形預(yù)測值與原始觀測值之間的殘差,如圖5所示。進一步給出另外4種模型預(yù)測結(jié)果,統(tǒng)計結(jié)果見表2。從圖4、5和表2可以看出,IGWO-SVM模型預(yù)測曲線與實際觀測曲線貼合效果很好, 其R2值達到了0.955 6, 均高于另外4種預(yù)測模型;IGWO-SVM模型的MRE和MSE值均最小,說明IGWO-SVM模型具有更高的預(yù)測精度;IGWO-SVM模型的SDE值也均小于另外的4種模型,說明IGWO-SVM模型的預(yù)測結(jié)果更加穩(wěn)定。另外,由表2還可以看出,IGWO-SVM模型具有較短的優(yōu)化CPU時間, 進一步說明IGWO-SVM模型對SVM參數(shù)優(yōu)化的性能更優(yōu)越。綜上,證明了IGWO能夠提升GWO的優(yōu)化性能,進而建立預(yù)測性能優(yōu)越的SVM回歸模型。
表1 5種算法優(yōu)化SVM參數(shù)結(jié)果
圖4 IGWO-SVM模型大壩水平位移預(yù)測結(jié)果Fig.4 Result of the horizontal displacement of dam predicted by IGWO-SVM model
圖5 IGWO-SVM大壩水平預(yù)測殘差Fig.5 Residual error of the horizontal direction of the dam predicted by IGWO-SVM
模 型MREMSESDER2t/sCS-SVM0.95460.50310.70250.955322.5681DE-SVM0.95180.50240.70170.955422.2015PSO-SVM0.95220.50360.70240.955411.2728GWO-SVM0.95240.50300.70210.95545.7456IGWO-SVM0.94660.50240.70060.95564.6299
本文提出了一種基于改進灰狼算法優(yōu)化支持向量機的預(yù)測模型。在灰狼算法的基本原理上,引入非線性收斂因子和采用動態(tài)加權(quán)策略來進一步提升基本灰狼算法優(yōu)化支持向量機參數(shù)的性能,并根據(jù)最優(yōu)參數(shù)建立大壩預(yù)測模型。實驗結(jié)果表明,相對于參比模型,IGWO-SVM能更加準確地刻畫大壩復(fù)雜變化趨勢,有效提高預(yù)測精度,為大壩預(yù)測提供了一種新的方法。