周星勇,楊容浩,王志勝,冉中鑫
(成都理工大學(xué) 地球科學(xué)學(xué)院,四川 成都 610059)
隨著我國現(xiàn)代化和城市化進程的不斷加快,基礎(chǔ)設(shè)施工程建設(shè)規(guī)模和數(shù)量不斷增加,基坑開挖深度和廣度也不斷提高。因此,對于沉降監(jiān)測、預(yù)報的要求越來越高[1]。針對基礎(chǔ)設(shè)施工程中的變形預(yù)測,國內(nèi)外學(xué)者已經(jīng)開展了許多相應(yīng)的研究。主要的預(yù)測方法有回歸分析法、時間序列分析[2]、灰色系統(tǒng)理論、卡爾曼濾波預(yù)測模型[3]和BP神經(jīng)網(wǎng)絡(luò)[4-5]等。其中,BP神經(jīng)網(wǎng)絡(luò)由于具有強大的自學(xué)習(xí)能力,能夠?qū)?fù)雜的工程形變問題進行建模,并模擬變形的發(fā)展規(guī)律,達到形變預(yù)測的目的,受到廣泛的關(guān)注和研究[6]。
由于易受初始權(quán)值和閾值的影響而陷入局部最優(yōu)值,利用BP神經(jīng)網(wǎng)絡(luò)進行基坑變形預(yù)測,并不能保證每次都得到理想的效果。為了提高BP神經(jīng)網(wǎng)絡(luò)基坑變形預(yù)測的有效性和預(yù)測精度,許多學(xué)者開展了BP算法的改進研究。常見的改進算法有基于粒子群算法優(yōu)化的BP算法[7]、AFSA算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)[8]、小波神經(jīng)網(wǎng)絡(luò)[9-10]、灰色神經(jīng)網(wǎng)絡(luò)[11]、模擬退火算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)[12]、遺傳神經(jīng)網(wǎng)絡(luò)[13]等。但這些算法對監(jiān)測數(shù)據(jù)無法連續(xù)獲取,或監(jiān)測數(shù)據(jù)中含有一定粗差的情況并不能取得滿意效果[14]。本文引入自適應(yīng)增強算法,對遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測模型進行優(yōu)化,通過自適應(yīng)增強算法整合多個GA-BP弱預(yù)測器,最終能達到提高基坑沉降量預(yù)測精度和穩(wěn)定性目的。
遺傳算法(Genetic Algorithm)是一種模擬自然界遺傳機制和生物進化論而形成的一種最優(yōu)搜索算法。利用GA算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),是將BP神經(jīng)網(wǎng)絡(luò)中輸入層到隱含層以及隱含層到輸出層的初始權(quán)重和閾值進行編碼串聯(lián)群體中,通過遺傳算法中的選擇、交叉和變異操作對個體進行篩選,根據(jù)適應(yīng)度函數(shù)計算出的適應(yīng)度值,使優(yōu)秀的個體被保留,適應(yīng)度差的個體被淘汰[15]。
利用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的基本思想,要改變BP算法對梯度信息過度依賴的缺點,轉(zhuǎn)而利用遺傳算法全局搜索的特點,尋找最優(yōu)BP神經(jīng)網(wǎng)絡(luò)連接權(quán)初值和閾值[16]。再利用BP算法對神經(jīng)網(wǎng)絡(luò)各層的權(quán)值和閾值進行迭代,從而得到優(yōu)化后的神經(jīng)網(wǎng)絡(luò)預(yù)測模型。
GA-BP神經(jīng)網(wǎng)絡(luò)算法步驟如下[17]:
1)編碼及種群初始化:將BP神經(jīng)網(wǎng)絡(luò)各層的連接權(quán)值以及閾值進行實數(shù)編碼,構(gòu)建成種群中的個體。這些個體實際上是由這些權(quán)值、閾值編碼之后構(gòu)成的數(shù)組。
2)種群進化:將遺傳神經(jīng)網(wǎng)絡(luò)的預(yù)測值與期望值的誤差絕對值做為個體的適應(yīng)度。進化若干次,適應(yīng)度值越小表示個體越優(yōu)秀。
3)選擇操作:本文采用輪盤賭法,基于適應(yīng)度比例的選擇策略,第i個個體被選擇概率pi為
fi=k/Fi.
(1)
(2)
式中:Fi為個體i的適應(yīng)度值,k為系數(shù),N為種群個體數(shù)目。
4)交叉操作:由于個體采用實數(shù)編碼,所以交叉操作的方法采用實數(shù)交叉法,第k個染色體ak和第l個染色體al在j位的交叉操作方法:
(3)
式中:b是[0,1]之間的隨機數(shù)。
(4)
遺傳算法能在一定程度上提升BP神經(jīng)網(wǎng)絡(luò)的基坑變形預(yù)測精度,但對于一些因樣本質(zhì)量問題,如樣本數(shù)量少、數(shù)據(jù)分布不均等,預(yù)測精度可能降低。自適應(yīng)增強(Adaboost)算法是一種有效的迭代增強算法,理論上它可以提高任何一種弱預(yù)測器的精度[18-19]。為了提高GA-BP神經(jīng)網(wǎng)絡(luò)的基坑變形預(yù)測精度,將GA-BP方法作為一種優(yōu)化后的弱預(yù)測器,利用自適應(yīng)增強算法調(diào)整參與訓(xùn)練數(shù)據(jù)的分布比重,以提高預(yù)測模型的抗差性,達到提高遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測精度的目的[20]。
自適應(yīng)增強GA-BP算法的步驟如下:
1)選擇樣本數(shù)據(jù){x1,x2,x3,…,xm},并始化樣本權(quán)重ωt(i)=1/m,i=1,2,3,…,m。
2)構(gòu)建弱預(yù)測器,訓(xùn)練到第t個預(yù)測器時,利用GA-BP弱預(yù)測器構(gòu)建起訓(xùn)練樣本g與期望目標(biāo)y之間的非線性關(guān)系,預(yù)測值與期望值之間的誤差et:
(5)
并計算下一個弱預(yù)測器分布權(quán)值ωt+1。若誤差et的絕對值大于限定閾值0.5,則需要調(diào)整分布權(quán)值。
(6)
3)計算預(yù)測權(quán)重,根據(jù)預(yù)測序列的誤差和et計算序列的權(quán)重at,權(quán)重計算式為
(7)
4)預(yù)測權(quán)重歸一化,調(diào)整式為
(8)
其中,Bt為歸一化因子,在權(quán)重比例不變的情況下為1。
5)強預(yù)測函數(shù)。訓(xùn)練T輪得到T組弱預(yù)測函數(shù)f(gt,at),由T組弱分類函數(shù)組合得到了強預(yù)測函數(shù)h為
(9)
則強預(yù)測函數(shù)預(yù)測結(jié)果y為
y(x)=ath(x).
(10)
自適應(yīng)增強遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測模型的算法步驟如圖1所示。
圖1 Adaboost算法優(yōu)化GA-BP神經(jīng)網(wǎng)絡(luò)流程圖
Adaboost算法通過對GA-BP網(wǎng)絡(luò)每次訓(xùn)練后的樣本,進行權(quán)重再分配。對于訓(xùn)練誤差小于設(shè)定閾值的樣本,算法會減少該樣本再次參與訓(xùn)練時的比例。對于訓(xùn)練誤差大于閾值的樣本,則會增加其在下次訓(xùn)練中的比例。最后算法會對訓(xùn)練的若干組弱預(yù)測器進行整合,并儲存作為一個新的強預(yù)測器。最后利用得到的強預(yù)測器進行仿真實驗并輸出預(yù)測結(jié)果。
本文選擇某小區(qū)2號樓基坑監(jiān)測數(shù)據(jù)進行仿真實驗?;娱_挖深度為8 m,地基等級為二級地基。按照規(guī)范要求,在基坑周圍邊緣頂部共布設(shè)了3個基準(zhǔn)點和6個監(jiān)測點。監(jiān)測工作從2014年4月22日開始,至2015年4月19日外業(yè)觀測全部結(jié)束,歷時12個月。采用二等水準(zhǔn)測量規(guī)范進行基坑沉降位移監(jiān)測。觀測次數(shù)50次,監(jiān)測時間間隔由基坑沉降速率決定。
影響基坑沉降的外界因素眾多,并且各種外界因素之間也可能相互作用[21]。難以確認(rèn)各種外因?qū)映两盗康挠绊憴?quán)重,所以本文僅考慮各期累積沉降值之間所隱含的非線性關(guān)系,構(gòu)建起自適應(yīng)增強遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測模型。
本文算法均在Matlab 2014a平臺上編譯實現(xiàn)。訓(xùn)練數(shù)據(jù)每一組都采用連續(xù)5期數(shù)據(jù)作為輸入樣本,將接下來1期數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)訓(xùn)練的目標(biāo)期望值,50期數(shù)據(jù)可以分成45組。由于沉降后期變化趨于平緩,本文選擇對沉降中后期數(shù)據(jù)進行仿真預(yù)測。利用前30組進行Adaboost GA-BP預(yù)測模型的訓(xùn)練,并對后5期數(shù)據(jù)進行預(yù)測。將預(yù)測值與實測值進行對比,對優(yōu)化后的遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測精度進行分析。選取平均絕對百分誤差(MAPE)、誤差絕對值均值(MAE)和誤差均方差(MSE)作為評定預(yù)測精度的指標(biāo)。平均絕對誤差和誤差絕對值均值由于誤差被絕對值化,不會出現(xiàn)正負(fù)相抵消的情況,因而能更好地反映預(yù)測值誤差的實際情況。誤差均方差則能很好的反映36~40期預(yù)測值的精確度。
本文選擇BP、Adaboost-BP、GA-BP預(yù)測模型與本文算法進行對比。4種BP神經(jīng)網(wǎng)絡(luò)的最大迭代次數(shù)均為1 000次,學(xué)習(xí)率均為0.1,學(xué)習(xí)目標(biāo)設(shè)置為0.001。GA-BP和Adaboot GA-BP算法的進化次數(shù)均為80次,種群規(guī)模設(shè)置為6,交叉概率選擇為0.3,變異率設(shè)置為0.2,弱預(yù)測器的數(shù)量為10。Adaboost-BP和Adaboot GA-BP算法的誤差閾值設(shè)置為0.5。
圖2反映了50期沉降監(jiān)測數(shù)據(jù)整體的一個變化趨勢。從圖上可以看出前10期沉降變化劇烈,第11~30期的沉降速率趨于平緩,第31~40期沉降速率突然加快,從第41期開始,沉降趨于穩(wěn)定,累計沉降量變化值趨近于零。此外神經(jīng)網(wǎng)絡(luò)模型的預(yù)測精度與訓(xùn)練樣本數(shù)量相關(guān),訓(xùn)練越充分,預(yù)測模型的精度越高。因此本文選擇利用前87.5%的監(jiān)測數(shù)據(jù)進行訓(xùn)練構(gòu)建神經(jīng)網(wǎng)絡(luò)預(yù)測模型,對沉降中后期第36~40期累計沉降數(shù)據(jù)進行預(yù)測,以驗證模型的預(yù)測精度。
圖2 50期監(jiān)測數(shù)據(jù)變化過程
表1記錄了4種預(yù)測算法對于36~40期累積沉降量的預(yù)測值,其中負(fù)號表示沉降的方向豎直向下。圖3為4種算法的預(yù)測誤差對比圖,預(yù)測誤差以毫米為單位,從圖上可以更直觀地看出,與其他3種算法相比,Adaboost GA-BP算法的預(yù)測誤差更接近于0值。從表2可以看出,后3種算法對于BP預(yù)測算法均有改進,其中精度最高的為本文提出的改進算法。Adaboost GA-BP算法后5期預(yù)測值的平均絕對百分誤差為0.68%,誤差絕對值均值為0.29,誤差均方差為0.49。對比BP算法和Adaboost-BP算法的預(yù)測結(jié)果,可知Adaboost算法能夠有效提高神經(jīng)網(wǎng)絡(luò)預(yù)測模型的預(yù)測精度。對比GA-BP和Adaboost GA-BP算法的預(yù)測結(jié)果可知,Adaboost GA-BP算法較GA-BP算法在MAPE、MAE、MSE 3項精度指標(biāo)上分別提高了80.57%、81.04%、70.83%。
為了驗證Adaboost GA-BP算法的有效性和魯棒性,以及避免預(yù)測結(jié)果的偶然性。本文選取了同一測區(qū)其他3個監(jiān)測點的數(shù)據(jù)進行仿真預(yù)測。從表3的精度指標(biāo)可以看出,B01、B03和B04第36~40期預(yù)測數(shù)據(jù)的均方根誤差分別為0.48、0.22、0.34,平均誤差絕對值分別為0.44、0.19、0.30,平均絕對百分誤差分別為1.03%、0.46%、0.72%。說明本文算法對不同監(jiān)測點累計沉降量的預(yù)測效果優(yōu)異,且算法的預(yù)測穩(wěn)定度高。
表1 各預(yù)測模型預(yù)測結(jié)果對比 mm
表2 各預(yù)測模型預(yù)測精度對比
表3 Adaboost GA-BP算法對不同監(jiān)測點數(shù)據(jù)的預(yù)測精度
圖3 各算法預(yù)測誤差大小對比
利用GA算法優(yōu)化過的BP預(yù)測模型,能夠有效克服BP預(yù)測模型容易陷入局部最優(yōu)的缺點。但是由于監(jiān)測數(shù)據(jù)在時間上的分布不均,或者測量數(shù)據(jù)中包含一定粗差而導(dǎo)致GA-BP累積沉降預(yù)測模型精度受到影響的問題仍然存在。因此本文引入了自適應(yīng)增強算法改進GA-BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,并應(yīng)用于基坑沉降預(yù)測當(dāng)中。實驗結(jié)果證明Adaboost優(yōu)化過的GA-BP預(yù)測模型的沉降預(yù)測值在誤差絕對值均值、平均絕對百分誤差以及誤差均方差上都明顯優(yōu)于GA-BP模型的預(yù)測結(jié)果。說明了自適應(yīng)增強遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測模型結(jié)合了Adaboost算法和GA算法的優(yōu)點,提高了模型的預(yù)測精度。利用實際工程數(shù)據(jù)進行實驗,實驗結(jié)果證明了自適應(yīng)增強算法優(yōu)化過的遺傳神經(jīng)網(wǎng)絡(luò)能夠很好地應(yīng)用于基坑沉降預(yù)測,且預(yù)測模型具有很好的魯棒性,預(yù)測精度能夠滿足基坑監(jiān)測的要求。
[1] 岳建平, 方露, 黎昵. 變形監(jiān)測理論與技術(shù)研究進展[J]. 測繪通報, 2007(7):4-7.
[2] 徐愛功, 李娜, 張濤. 時間序列分析在地鐵沉降觀測中的應(yīng)用[J]. 測繪科學(xué), 2013, 38(5):57-60.
[3] LU F, LI J. Application of Kalman Filter Method Based on Model Optimization Method in the Dam Deformation Forecast[C]// Asia-Pacific Power and Energy Engineering Conference. IEEE Computer Society, 2011:1-4.
[4] 黃定川, 謝世成. 一種基于 BP 神經(jīng)網(wǎng)絡(luò)的尾礦壩沉降預(yù)報方法[J]. 測繪工程, 2016, 25(8):53-56.
[5] 張文博, 郭云開. 基于BP神經(jīng)網(wǎng)絡(luò)的建筑物沉降預(yù)測模型研究[J]. 測繪工程, 2013, 22(2):52-56.
[6] 馬麗霞, 王鳳艷, 陳劍平. 基于人工神經(jīng)網(wǎng)絡(luò)的大壩變形分析與預(yù)報——以西津大壩27#點的變形監(jiān)測為例[J]. 吉林大學(xué)學(xué)報(地球科學(xué)版), 2009,39(3):487-491.
[7] 劉賀, 張弘強, 劉斌. 基于粒子群優(yōu)化神經(jīng)網(wǎng)絡(luò)算法的深基坑變形預(yù)測方法[J]. 吉林大學(xué)學(xué)報(地球科學(xué)版), 2014, 44(5):1609-1614.
[8] 史雨川. 基于AFSA—BP神經(jīng)網(wǎng)絡(luò)的基坑變形預(yù)測模型研究[J]. 計算機與數(shù)字工程, 2013, 41(12):1894-1897.
[9] 岳榮花. 小波神經(jīng)網(wǎng)絡(luò)在沉降預(yù)測中的應(yīng)用研究[D]. 南京:河海大學(xué), 2007.
[10] 李超. 小波神經(jīng)網(wǎng)絡(luò)在大壩變形預(yù)測中的應(yīng)用研究[D]. 西安:長安大學(xué), 2012.
[11] 薛鵬松, 馮民權(quán), 邢肖鵬. 基于馬爾科夫鏈改進灰色神經(jīng)網(wǎng)絡(luò)的水質(zhì)預(yù)測模型[J]. 武漢大學(xué)學(xué)報(工學(xué)版), 2012, 45(3):319-324.
[12] 張林,劉先珊, 陰和俊. 基于模擬退火的Gauss-Newton算法神經(jīng)網(wǎng)絡(luò)在短期負(fù)荷預(yù)測中的應(yīng)用[J]. 武漢大學(xué)學(xué)報(工學(xué)版), 2005, 38(4):28-33.
[13] 李金鋒. 遺傳BP神經(jīng)網(wǎng)絡(luò)在地鐵工程沉降預(yù)測中的應(yīng)用[D]. 北京:中國地質(zhì)大學(xué), 2006.
[14] 張正祿. 工程的變形監(jiān)測分析與預(yù)報[M]. 北京:測繪出版社, 2007.
[15] 劉勇健, 李彰明, 張建龍,等. 基于遺傳-神經(jīng)網(wǎng)絡(luò)的深基坑變形實時預(yù)報方法研究[J]. 巖石力學(xué)與工程學(xué)報, 2004, 23(6):1010-1014.
[16] 李偉超, 宋大猛, 陳斌. 基于遺傳算法的人工神經(jīng)網(wǎng)絡(luò)[J]. 計算機工程與設(shè)計, 2006, 27(2):316-318.
[17] 黃建國, 羅航, 王厚軍,等. 運用GA-BP神經(jīng)網(wǎng)絡(luò)研究時間序列的預(yù)測[J]. 電子科技大學(xué)學(xué)報, 2009, 38(5):687-692.
[18] 曹瑩, 苗啟廣, 劉家辰,等. AdaBoost算法研究進展與展望[J]. 自動化學(xué)報, 2013, 39(6):745-758.
[19] 吳俊利, 張步涵, 王魁. 基于Adaboost的BP神經(jīng)網(wǎng)絡(luò)改進算法在短期風(fēng)速預(yù)測中的應(yīng)用[J]. 電網(wǎng)技術(shù), 2012, 36(9):221-225.
[20] 韓韜, 陳曉輝. 基于預(yù)測模型的BP-Adaboost算法改進[J]. 桂林理工大學(xué)學(xué)報, 2014,(3):589-594.
[21] 王偉. 基坑位移時間序列分析的自記憶預(yù)測模型研究[D]. 長沙:中南大學(xué), 2011.