陳 濤
(中國鐵路設計集團有限公司,天津 300251)
BP神經網絡是一種按照誤差逆向傳播算法訓練的多層前饋神經網絡,在高鐵、建筑物沉降等方面有著廣泛應用。張文博[1]基于BP神經網絡預測了建筑物的沉降,厲東偉[2]將BP神經網絡應用于高鐵的沉降預測中,均取得了較好的效果。趙杰[3]采用ARIMA_BP組合模型預報高鐵的沉降,劉建國[4]基于卡爾曼濾波的BP神經網絡模型預測橋梁的形變,這兩種模型均對原始數據進行了預處理,精度有所提高。吳偉立等[5]基于遺傳算法優化BP神經網絡,認為優化后的BP神經網絡精度較傳統BP算法高;林淼[6]利用粒子群算法優化BP神經網絡,江麗[7]融合了粒子群算法與模擬退火算法對BP神經網絡進行優化。從算法的復雜度考慮,遺傳算法需要進行基因的選擇、交叉和變異操作,粒子群算法需要對粒子最大速度、慣性權重、加速系數等多個參數進行調整,兩種算法在預報的實現上較為復雜[8]。為了找到一種更為簡單有效的方法,引入果蠅算法[9]對BP神經網絡進行優化,通過與傳統的BP神經網絡進行對比,驗證果蠅算法優化BP神經網絡預測模型(FOA-BP)預測高鐵沉降的可行性。
果蠅算法基于果蠅的覓食演化來尋求全局最優。果蠅覓食的過程分為兩步。第一步:依靠強大的嗅覺對食物源進行初步定位,快速飛近食物源;第二步:通過視覺找到并飛向食物源。因此,果蠅算法的基本尋優過程是:果蠅種群從給定的初始坐標出發,按照給定的飛行方向和飛行步距進行搜索(嗅覺搜索),通過味道濃度初步確定與最優解的大致方向和距離,然后依靠視覺搜索到達最優解的位置[10]。由此可知,果蠅算法有迭代次數、種群規模、步長三個參數,對果蠅算法改進就是對其參數進行調整,以達到最佳優化效果。迭代次數能夠滿足模型收斂即可,過多的收斂步數并無意義。種群規模會對算法的精度產生影響,但同時也會顯著降低算法的速度。
果蠅種群(包含N只果蠅)利用嗅覺搜尋食物的隨機方向和距離,搜索方式為
xi=x0+t×rand,yi=y0+t×rand
(1)
其中i為(1,N)之間的整數,表示果蠅個體的數目;t為搜索步長;rand為(0,1)之間的隨機數。
由當前最優的味道濃度判定值
(2)
得
(3)

(4)
通過改進,可以根據上一步的步長對當前步長進行動態調整。一方面可以避免步長過大引起早熟收斂(局部最優),另一方面也可以提高搜索速度,減少由于固定步長帶來的收斂速度過慢的情況。由于公式(4)步長的符號為正,表示果蠅算法的搜索只能朝著一個方向,這仍然在一定程度上限制了果蠅算法的搜索能力。
將以上對果蠅算法的改進與BP神經網絡進行融合,建立改進果蠅算法優化BP神經網絡預測模型(以下簡稱FOA-BP神經網絡算法),用果蠅算法的味道濃度判定函數來替代BP神經網絡中的基函數,通過迭代尋優,找到最適合的權值與閾值,然后代入BP神經網絡中進行預測,實現步驟如下。
(1)初始化BP神經網絡。根據網絡的輸入輸出數據確定輸入層、隱含層和輸出層的節點數(分別為a,h,b)。同時,將樣本的輸入輸出數據歸一化,初始化輸入層、隱含層和輸出層之間的連接權值,初始化隱含層和輸出層的閾值。
(2)初始化果蠅種群的位置、迭代次數、種群規模,將果蠅個體看作是BP神經網絡中的連接權值及對應的閾值,給定隨機方向和距離進行搜索。
(3)計算果蠅個體與原點的距離,再計算味道濃度判定值,味道濃度判定值為距離的倒數。
(4)將味道濃度判定值代入味道濃度函數,味道濃度函數為預測輸出yi和期望輸出y差值的平方求和,使其取極小值,即
(5)
(5)不斷迭代,同時更新神經網絡的權值與閾值,當味道濃度函數值滿足要求或者達到迭代次數上限,即得到優化后的BP神經網絡權值和閾值。
(6)利用優化后的權值和閾值構建BP神經網絡,對目標數據進行預測。
(7)采用以下兩個評價指標對兩種算法的預測沉降量進行對比分析。
①均方誤差MSE[11]:是觀測值與真值偏差的平方和與觀測次數比值的平方根,用于衡量觀測值和真值之間的偏差,公式為
(6)
②平均相對百分比誤差MAPE[12],可以用來衡量一個模型精度的高低,其值越小說明模型精度越高,其公式為
(7)
以河北省某地區高速鐵路為例,該地區屬于華北平原,地勢平坦,地層自上而下主要為第四系松散層、粉質黏土、粉土、粉砂及其互層[13],地下水位深6.0~10.0 m,地下水對混凝土結構不具有侵蝕性。高鐵路基采用CFG樁網復合地基[14],設計單樁承載力為400 kN。樁頂設0.6 m厚的碎石墊層,其上填筑高度為8.0 m的路基。已進行超載預壓,實際堆載預壓期為13個月,縱剖面如圖1所示。沿既有高鐵軌道線間及兩側路肩每隔約20 m布置一個沉降監測點,平面位置如圖2。

圖1 高鐵路基縱剖面

圖2 監測點平面位置(單位:m)
按照二等水準測量精度要求,采用Leica DNA03型電子水準儀及配套的設備對路基監測點進行觀測。為提高觀測數據的準確性,每次監測實行“三固定”,即“固定測量人員、固定測量儀器、固定觀測路線和方法”[15]。選取T01監測點作為沉降預測的對象,自2017年3月16日至2018年1月16日進行了20次觀測(每半月進行一次監測),原始累計沉降數據如表所1示。

表1 T01原始累計沉降量 mm
為了驗證FOA-BP神經網絡在高鐵沉降預測中的可行性,以表1中前15期觀測數據為樣本,分別采用BP神經網絡和FOA-BP神經網絡進行訓練,采用由前3期觀測數據預測后1期數據的滾動組合方式對后5期沉降數據進行預測,選取輸入層節點數a=3,輸出層節點數b=1,經過試驗得到最為合適的隱含層節點數h=7。
通過試驗數據對比分析,得到兩種算法的預測沉降數據及其殘差,如表2所示,兩種算法的預測累計沉降量對比如圖3。
由圖3可知,兩種算法均可以較好地反映T01監測點的沉降趨勢,其中BP神經網絡在個別監測周期的預測值與實測值差別很小,但是就整體而言,BP神經網絡只能反映出沉降的趨勢,不能準確預測累計沉降。從表2可知,BP神經網絡均方誤差為0.021,經優化后為0.009,說明FOA-BP神經網絡預測沉降值與實測沉降值差距較小。BP神經網絡平均相對誤差為0.828%,優化后平均相對百分比誤差顯著降低,預測精度得到了提升。由此得出,FOA-BP神經網絡算法預測精度更高。此外,在同樣的約束條件下,FOA-BP神經網絡在4步實現收斂,而BP神經網絡需要34步,故FOA-BP神經網絡算法的預測速度更快。

表2 兩種算法的預測沉降數據及其殘差對比

圖3 兩種算法的預測沉降數據對比
為了避免監測點選取的偶然性,另外隨機選取監測點T11進行預測。T11的原始累計沉降量如表3所示,兩種算法的預測沉降數據及殘差如表4所示,兩種算法的預測結果對比如圖4。

表3 T11原始累計沉降量 mm

表4 兩種算法的預測沉降數據及其殘差對比

圖4 T11監測點兩種算法的預測沉降數據對比
由圖4可知,FOA-BP神經網絡較BP神經網絡更為準確地預測了T11號監測點的沉降趨勢。由表3和表4中可得, FOA-BP神經網絡在迭代次數、均方誤差和平均相對百分比誤差等方面均遠小于BP神經網絡。
(1)與BP神經網絡相比,FOA-BP神經網絡降低了均方誤差,提高了模型精度,預測精度更高。在使用時,需要提前剔除異常值,避免對預測結果產生干擾。
(2)迭代次數和種群規模對果蠅算法的優化影響不大,步長是影響果蠅算法優化精度的主要參數,步長的動態調整可以避免早熟收斂或者收斂速度過慢的情況。
(3)FOA-BP神經網絡具有預測精度高、預測速度快的優點,但是也存在著一些不足(果蠅算法只能單向搜索),在以后的研究中還需要對果蠅算法做進一步的改進。