王德永 袁艷斌 陳 穎
(1.武漢理工大學資源與環境工程學院;2.平頂山工業職業技術學院計算機系)
巖體變形模量對于成功設計和實施巖體工程項目是至關重要的,因為它是巖體破壞前力學特征最具有代表性的參數,在任何巖體行為(包括變形)分析中,該參數也是一個重要的輸入參數。通過現場或原位測試,有幾種方法來直接確定變形模量,承壓板、荷載板、徑向承壓、面承壓和線承壓在模量估計的原位測試中是最常見的。這些方法耗時、費用高,并且只能當探測位置是開挖的情況下才能進行測試[1]。另外,原位測試需要麻煩的測試過程,并且驗證結果是可疑的[2]。
由于前面提到的原位測試操作困難和費用高,試圖對巖體變形模量間接估計開發出經驗聯系,然后使用回歸分析等統計方法獲得這些聯系。盡管經驗公式是經濟的和省時的,但是它們包含了連接有限數據的不確定性,巖石類型和巖體異構性質的變化[3]。
近年來,利用反向傳播神經網絡(BPNN)、模糊邏輯和模糊神經系統等人工智能系統預測巖體屬性已經是巖石工程實踐方面的熱點研究問題[3-8],在這些方法中,BPNN比其他方法使用更廣泛,這種方法的快速增長和廣泛使用的主要原因是它具有以穩定和有效的方式逼近任何函數的能力。BPNN模型的另外一個潛在好處是它利用并行計算突破大量計算的限制。
盡管BPNN廣泛使用,但進行BPNN設計仍然是利用耗時的反復試錯方法。BPNN設計需要的時間和工作量是依賴于問題的復雜性和用戶的經驗。這將導致耗費大量時間和精力去尋找待解問題的最優或接近最優的網絡結構。本研究的目標是建立一個利用遺傳算法(GA)的BPNN最優設計,用它來預測巖體的變形模量。優化設計的目的是決定隱含節點數、學習因子和動量系數,用來增強系數估計的準確性,同時降低運算時間和工作量。

表1 提取的巖體屬性的統計性描述
本研究評價用的數據集來源于實際巷道測量,單獨分析來自每個巷道位置的數據集,然后從數據集中剔除那些離散的和不可靠的數據,最終總共選擇了76個數據(某巷道實測)用來開發遺傳算法和試錯訓練模型。這些數據集包含通過承載板法測試獲得的巖體變形模量、通過使用直徑為54 mm的巖芯獲得的完整巖石的巖體變形模量(Em)、單軸抗壓強度(UCS)、巖體質量指標(RQD)、干密度、單位長度的節理數(J)和孔隙度,對于所有位置也要計算其地質強度指標(GSI)系統,并把它考慮作為一個輸入參數,GSI集中描述了巖石結構和巖石表面的情況,它廣泛應用于巖體強度和巖體變形參數的估計[1]。表1列出了原始數據集的基本描述性統計的詳細情況。
為了確定影響變形模量的參數,共有76個數據生成的幾個坐標圖說明了這些自變量參數和變形模量的關系(圖1)。并且,圖中給出了通過二元線性回歸建立的回歸線,在圖1中從點散布的情況來看,已經可以推斷出數據UCS(相關系數R2=0.21)、GSI(R2=0.50)以及RQD(R2=0.23)和變形模量關聯最密切,并且在變形模量預測中可以作為獨立的預測器。

圖1 獨立變量和變形模量E m之間關系
在本研究中,通過神經網絡軟件NeuroSolutions for Excel管理用試錯和GA訓練的BPNN設計過程,該軟件具有訓練網絡,并能直接測試網絡性能的功能。另外,具有內置的能幫助用戶遺傳優化網絡參數的特點。換句話說,這個軟件合并了神經網絡和遺傳算法來獲得網絡的大小和參數。
如上所述,有太多的參數影響神經網絡性能和最終結構,通過所有這些參數來獲得發生較少訓練誤差的參數設置幾乎是不可能的。因此,在本研究中,其中的一些參數被認為和在試錯法和GA訓練過程中是相同的,比如初始權重、傳遞函數類型、訓練樣本的數量和隱含層的數量。
為了達到這個目標,考慮選擇初始權值的范圍為[-1.0;1.0],1個使用sigmoid傳遞函數的隱含層,同時,把數據分成1個訓練集、1個訓練驗證(交叉驗證)集和1個測試集。訓練集采用適合該網絡權值,執行交叉驗證集是和網絡訓練同時發生的,被訓練集用來確定產生進化的第幾代。偶爾,網絡權值不會變化,交叉驗證數據是通過網絡產生,并報告其結果,控制器的停止標準可能是基于交叉驗證集的誤差,而不是訓練集,來確保這個進化的產生。測試集是一組數據,用來評價已經訓練的神經網絡的進化性能。本研究中,30%的數據被用來測試,剩下的數據用來訓練和交叉驗證,這種方法也是Nelson和 Illingworth 推薦的[9]。
NeuroSolutions軟件的學習因子和動量因子缺省設置一般[10]被試錯法過程使用。因此,可以認為隱含層的學習因子ηh=1,動量因子βh=0.7,輸出層學習因子ηo=0.1,動量因子βo=0.7,最后,考慮到7個不同的神經網絡的表2,依賴試錯法得到的文獻中提出的建議方法,選定的隱含神經元的個數(Nh)分別為1、2、5、6、7、9 和 14,來建立最有效的神經網絡結構。圖2展示了用到的反向傳播神經網絡(BPNN)。
每一個提及的網絡在訓練集上訓練,并使用交叉驗證集上來阻止過度擬合,如果停止標準滿足,則進行測試。訓練次數達到5 000以上停止,或者交叉驗證的均方誤差MSE開始增長前停止。交叉驗證的均方誤差MSE定義如式(1):

圖2 用到的BPNN結構

這里,Ei和E'i分別表示被測的變形模量和預測的變形模量,n是交叉驗證集的訓練樣本數。每個網絡得到了幾次訓練,并且在運行中保存了最好的網絡權值和當交叉驗證誤差最小時的次數。
表2給出了試錯網絡的性能,它是根據實驗數據和在訓練和測試數據集上神經網絡輸出之間的均方誤差(MSE)、平均絕對誤差(MAE)和線性相關系數(R)得到的。如果得到的R、MAE和MSE分別為接近于1、0和0,那么神經網絡預測是最理想的。如表2所示,試錯法結果表明帶有7個神經元的1個隱含層和NeuroSolutions軟件缺省設置的學習因子η、動量因子β組成的BPNN結構比其他網絡展示出了一個更好的性能。

表2 7種試錯網絡的結果
為了進行遺傳訓練,首先要隨機產生一個網絡的初始化種群,每個網絡的特點是包括不同參數(基因),這些參數是 Nh、ηh、βh、ηo、βo,由二進制數基因組成的每個種群染色體通過GA訓練自動調整這些參數,因此,每個染色體包含5個基因,第1個基因代表網絡隱藏層神經元個數,剩余的基因是BP優化算法網絡訓練的學習因子和動量因子,設置隱藏層神經元個數為[1;15],同時學習因子和動量因子為[0;1]。
接下來對創建的每個網絡進行訓練,并由基于它獲取的最小誤差的訓練樣本進行評價以確定其適應度。優化的目的是為了找到具有一個低訓練誤差的參數設置,交叉驗證數據不是用來訓練ANN(神經網絡算法)模型,而是用來在訓練階段檢測ANN模型,好的網絡的特點是混合和變異之后產生一個網絡種群。再次評價這個種群網絡,并把具有最好網絡的特征傳給網絡的下一代,重復這個過程,直到達到最大代數或用戶預先定義的停止條件為止。圖3顯示了利用GA來找到神經網絡的最佳結構的步驟[11]。

圖3 使用遺傳算法的神經網絡訓練流程
在執行遺傳訓練之前,首先應該指定GA參數的初始設置,為了達到這個目標,通過實驗來獲得遺傳操作算子不同層的組合比率、代數(定義為種群中所有網絡的訓練和評價次數)、種群大小等,這些數值是在計算實踐和大量文獻檢索的基礎上獲取的[12-15]。
以100個隨機產生的染色體(網絡)作為遺傳算法的開始,這些染色體的結構和前面提到的相同,接下來評估每個染色體的適應度。對競爭選擇法具有最好適應度的染色體被遺傳操作算子進化產生下一代。為此兩點交叉概率、統一變異概率和繁殖概率分別采用0.9、0.01和0.09,表3總結了用到的GA參數,進化網絡迭代次數經過70次之后,這些訓練運行生成最低誤差的設置參數的混合認定為最佳網絡。
GA訓練之后,軟件自動生成總結結果報告,報告內容包括了每一代期間獲得的最佳和平均適應度的2個圖(圖4和圖5)和1個總結這2個圖的表(表4)。

表3 確定變形模量用到的GA參數


表4 使用GA訓練網絡獲得的訓練誤差
圖4顯示了優化每一代期間獲得的平均適應度,平均適應度采用的是所有網絡相對應代的最小均方誤差(MSE)的平均值。圖5顯示了每代優化期間獲得的最佳適應度。最佳適應度是所有網絡之間相對應代的全部最小均方誤差(MSE)。從圖5中可以看出,最佳網絡適應度是3.157,它是迭代次數是53時獲得的。該網絡的參數設置保存并在之后的訓練中能夠調用。表4總結了最佳適應度和平均適應度,列出了每個圖的最小均方誤差、最小均方誤差產生的代數和最終的均方誤差。表5列出了經過遺傳算法之后的最優參數。

表5 改進BPNN的最優參數
表6總結了在訓練和測試數據之內實測模量和GA-BPNN預測模量之間的均方誤差(MSE)、平均絕對誤差(MAE)和線性相關系數(R)。表6和表2顯示結果對比表明,對于實驗數據可比情況下,使用遺傳算法的預測結果優于試錯法。

表6 GA-BPNN模型在訓練和測試數據上的性能
圖6顯示了GA方法和試錯方法的比較結果,從圖中明顯看出,對于同樣的測試數據,雖然給出可接受的結果是十分相近的,但是在BPNN訓練中使用GA預測變形模量比試錯法預測更好。

圖6 變形模量的ANN模型和GA-BPNN模型對比
開發了基于BPNN的遺傳算法模型來預測變形模量,用遺傳算法來提高模量預測的精度,縮短時間,并且能夠滿足確定BPNN的最優結構和參數的要求。利用遺傳算法優化了隱藏層神經元個數、學習因子和動量因子以及輸出層的學習因子和動量因子。為了分析和驗證所開發模型的性能,對使用建議模型和試錯模型的預測結果進行了對比。
采用的數據集來自不同項目,包含經過主成分分析的76個數據集,生成的幾個坐標圖也顯示了變形模量和獨立變量之間的關系,決定把UCS,GSI和RQD作為變形模量預測模型開發中的預測器。
試錯法的結果表明,BPNN結構有一個帶有7個神經元的隱含層組成,隱含層的學習因子和動量因子分別為1和0.7,輸出層的學習因子和動量因子分別為0.1和0.7,這些都是NeuroSolutions軟件的缺省設置。
最后,使用遺傳算法的結果顯示了一個最佳效果的網絡,該網絡隱含側有8個神經元,學習因子和動量因子分別為0.473和0.891,輸出層的學習因子和動量因子分別為0.361和0.615,GA-BPNN網絡模型的 R,MSE和 MAE的值分別為0.944,5.21和2.03。結果的比較表明,使用遺傳算法比試錯法在和承載板發實際測量值比較有更好的預測效果,即遺傳算法成為了替代試錯法的一個好的選擇,它以一種有效的方式構造最優的神經網絡結構和內部參數的設計。
[1] Cai M,Kaiser PK,Uno H,Tasaka Y,Minami M.Estimation of rock mass deformation modulus and strength of jointed hard rock masses using the GSI system[J].Int J Rock Mech Min Sci 2004,41:3-19.
[2] Hoek E,Diederichs MS.Empirical estimation of rock mass modulus[J].Int J Rock Mech Min Sci 2005,43:203-15.
[3] Kayabasi A,Gokceoglu C,Ercanoglu M.Estimating the deformation modulus of rock masses:a comparative study[J].Int JRock Mech Min Sci 2003,40:55-63.
[4] 沈建波,屈建國,詹召偉.基于灰色理論的軟巖巷道圍巖變形預測研究[J].煤礦開采,2011,16(1):22-24.
[5] 趙建海.巷道圍巖系統變形預測研究[D].武漢:武漢科技大學,2005.
[6] 葛宏偉,等.人工神經網絡與遺傳算法在巖石力學中的應用[J].巖石力學與工程學報,2004,23(9):1542-1550.
[7] 范 千.大壩變形預報的神經網絡極限學習方法[J].江南大學學報:自然科學版,2011,10(4):435-438.
[8] 楊 杰,吳中如,顧沖時.大壩變形監測的 BP網絡模型與預報研究[J].西安理工大學學報,2001,17(1):25-29.
[9] Nelson M,Illingworth WT.A Practical Guide to Neural Nets Reading[M].Mass:Addison-Wesley,1990.
[10] NeuroDimension Inc..NeuroSolutions for Excel,Help Version:6.30[M].Gainesville,FL:NeuroDimension Inc,2012.
[11] Holland J H.Application of natural and artificial systems[M].Ann Arbor:University of Michigan Press,1975.
[12] Javadi AA,Farmani R,Toropov VV,et al.Identification of parameters for air permeability of shotcrete tunnel lining using a genetic algorithm[J].Comput Geotech,1999,25:1-24.
[13] Wang C,Ma G W,Zhao J,et al.Identification of dynamic rock properties using a genetic algorithm[J].Int JRock Mech Min Sci,2004,41(3):453-553.
[14] Podgorelec V,Kokol P.Evolutionary induced decision trees for dangerous software modules prediction[J].Inf Process Lett,2002,82:31-38.
[15] Osman MS,Abo-Sinna MA,Mousa AA.A combined genetic algorithm-fuzzy logic controller(GA-FLC)in nonlinear programming[J].J Appl Math Comput,2004,170:821-840.