劉艷冬, 盧蘭萍*, 劉林林, 王鐵計, 靳子棟,李大屯
(1.河北工程大學(xué)土木工程學(xué)院,河北邯鄲 056038;2.冀中能源峰峰集團,河北邯鄲 056038;3.邯鄲市寶峰有限公司九龍礦,河北邯鄲 056200)
峰峰九龍礦區(qū)煤層下伏存在高水壓,大水量的灰?guī)r含水層,煤層底板保護層完整性較差。在煤層開采過程中,隨著開采的深度、速度、以及規(guī)模的增加,煤層底板突水概率也隨之增加,礦井突水對生命財產(chǎn)的威脅成為制約九龍礦區(qū)煤礦安全生產(chǎn)的主要難題[1]。因此,深入研究九龍礦區(qū)的底板突水機理,正確地評價及預(yù)測礦區(qū)深部開采時底板突水的可能性及突水量等級,對預(yù)防礦井水災(zāi)害的發(fā)生,及時提出科學(xué)的風(fēng)險預(yù)防決策,進一步提升煤礦安全生產(chǎn)具有重要意義。
國內(nèi)外專家學(xué)者針對煤層底板突水機理及預(yù)測的研究中,提出了懸臂梁假說[2],鉸接巖塊假說[3],板模型理論等理論方法,為礦井的安全生產(chǎn)提供了大量的經(jīng)驗和參考,為礦井水害防治工作的開展提供了堅實的理論基礎(chǔ)和技術(shù)支持。但造成礦井水害的原因很多,它們之間存在著很強的非線性關(guān)系[4]。因此,運用傳統(tǒng)的線性理論與方法來預(yù)測煤層底板突水,很難得到令人滿意的預(yù)測精度。近年來,一些學(xué)者采用集對分析、多決策樹法、Logistic回歸分析法、支持向量機法等新方法對煤層底板突水進行預(yù)測。以上幾種方法在治理礦井水害方面都有各自的特點,但這些方法對指標(biāo)權(quán)重存在有主觀性,在實際應(yīng)用中受到一定的限制。人工神經(jīng)網(wǎng)絡(luò)作為一種非線性動力系統(tǒng),能夠處理復(fù)雜的突水因素,為解決礦井底板突水預(yù)測提出新的方法。
閆志剛等建立SVM-RF 模型進行礦井突水預(yù)測[5],張承斌等提出了將BP 神經(jīng)網(wǎng)絡(luò)模型用于煤層底板突水量等級預(yù)測的方法[6],但是,BP 神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值隨機產(chǎn)生,易陷入局部最優(yōu)。遺傳算法相較于其它智能算法不僅自適應(yīng)范圍廣,還擁有強大的全局搜索能力[7-9]。因此,本文通過將遺傳算法優(yōu)化過的權(quán)值、閾值賦值給BP神經(jīng)網(wǎng)絡(luò)然后利用BP神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,建立煤層底板突水量等級預(yù)測的GA-BP 神經(jīng)網(wǎng)絡(luò)模型。將BP 預(yù)測模型作為其對比,通過對比不同模型預(yù)測精度進行評價。
本文選取峰峰九龍礦區(qū)15449S 工作面煤層底板突水實例進行分析。工作面地面標(biāo)高+115~+130m,井下標(biāo)高-820~-890m,煤層傾角16°~20°,煤層平均厚度1.2m,上順槽煤厚和下順槽煤厚均為1.0~1.4m,切眼煤厚為1.0~1.1m。礦區(qū)勘探階段揭露的斷層均為小斷層,煤層頂板為野青灰?guī)r,直接底板為粉砂巖。
按照國家煤礦安全監(jiān)察局出臺的《煤礦防治水細則》將突水量分為4 個等級(表1)。分別用1、2、3、4表示簡單、中等、復(fù)雜、極復(fù)雜4個突水等級。
表1 突水量變量取值表Table 1 Surge water volume variable value table
為了在研究區(qū)收集到足夠多的數(shù)據(jù),并且這些數(shù)據(jù)可以充分地反映出煤層底板突水量等級的相關(guān)信息,選取水壓、微震個數(shù)、煤層傾角、煤層厚度、采高、斷層落差、①隔水層厚度(山伏青灰?guī)r含水層與煤層之間隔水層厚度)、②隔水層厚度(大青灰?guī)r含水層與煤層之間隔水層厚度)、山伏青灰?guī)r含水層厚度、大青灰?guī)r含水層厚度10個因素作為煤層底板突水量等級的影響因素。本文選取九龍礦區(qū)15449S工作面400份煤層底板突水實測數(shù)據(jù)進行分析(部分實測數(shù)據(jù)如表2所示)。
表2 工作面部分現(xiàn)場實測數(shù)據(jù)Table 2 On-site measured data of the working surface
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是一種誤差反向傳遞學(xué)習(xí)算法,在傳遞信息的過程中,既有信息的正向傳遞又有誤差的反向傳遞[10-11]。一般由輸入層、隱含層和輸出層三層神經(jīng)元組成。因為原始數(shù)據(jù)集中各項數(shù)據(jù)具有不同的物理意義和量綱,為了避免樣本數(shù)據(jù)直接輸入對模型產(chǎn)生不利影響,造成預(yù)測誤差增大,同時為提高神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)速率,采用歸一化方法處理輸入數(shù)據(jù),使其取值范圍為[0,1]。其轉(zhuǎn)換方式如式(1)所示:
式中:x(p,i)為歸一化后的數(shù)值;x0(p,i)為歸一化處理前數(shù)值;xmin(i)、xmax(i)為全部樣本中第i個數(shù)據(jù)的最小值和最大值;p為全部影響因素的整體數(shù)據(jù)集。
在BP 神經(jīng)網(wǎng)絡(luò)的設(shè)計中,確定隱含層的層數(shù)和結(jié)點的數(shù)目是一個很重要的問題,Kolmogorov 定理證明,三層BP神經(jīng)網(wǎng)絡(luò)能夠以任意精度映射非線性輸入輸出關(guān)系[12],所以,本文選擇隱含層層數(shù)為1層,圖1 為本文采用的單層隱含層BP 神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)圖。在確定隱含層神經(jīng)元具體節(jié)點數(shù)時,本文選擇經(jīng)驗公式的方法(公式2),經(jīng)過多次計算當(dāng)隱含層的節(jié)點個數(shù)為12時效果最好。由1.2節(jié)變量選擇可知本文選取10 個煤層底板突水量等級影響因素,所以輸入層神經(jīng)元節(jié)點數(shù)為10,突水量等級分為四個等級,所以輸出層神經(jīng)元節(jié)點數(shù)為4。最終確定網(wǎng)絡(luò)結(jié)構(gòu)為10-12-4。經(jīng)過對模型的多次試運行確定網(wǎng)絡(luò)具體參數(shù):最大訓(xùn)練次數(shù)1 000 次,學(xué)習(xí)速率0.01,訓(xùn)練函數(shù)選用trainlm 函數(shù),顯示頻率每訓(xùn)練25 次顯示一次。總體數(shù)據(jù)集中的340 組數(shù)據(jù)用于訓(xùn)練,60組數(shù)據(jù)用于測試。
圖1 BP神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)Figure 1 Structure of BP neural network model
隱含層節(jié)點數(shù)經(jīng)驗公式:
式中:y為隱含層節(jié)點個數(shù);e為輸入層節(jié)點數(shù);h為輸出層節(jié)點數(shù);l為[1,10]之間的整數(shù)。
在該三層神經(jīng)網(wǎng)絡(luò)模型中各層信號間的傳遞和計算關(guān)系如下,其中函數(shù)f稱為激活函數(shù),采用tansig 函數(shù)作為隱含層的激活函數(shù),purelin 函數(shù)[13-14]為輸出層的激活函數(shù)。
隱含層節(jié)點的輸出:
輸出節(jié)點的計算公式:
式中:Yj表示隱含層第j個節(jié)點的輸出;f為激活函數(shù);Wij表示第i個輸入節(jié)點和第j個隱含層節(jié)點的權(quán)值;Xi表示第i個輸入節(jié)點的輸入數(shù)據(jù);θj表示第j個隱含層節(jié)點的閾值;Pk表示輸出層第k個節(jié)點的輸出;Hjk表示第j個隱含層節(jié)點和第k個輸出層節(jié)點的權(quán)值;λk表示第k個輸出節(jié)點的閾值。
20 世紀(jì)70 年代,美國著名學(xué)者HOLLAND J H提出了遺傳算法(GA),這是一種仿照達爾文進化論優(yōu)勝劣汰的計算模型,采用了一種并行的、隨機的、可擴展的,能更好地模擬生物進化過程的方法[15]。該方法能夠模擬生物在自然界中適者生存、自然進化,能更好地尋求最優(yōu)解,既能更好地擴展問題的解的覆蓋面,又能更好地解決各類非線性問題。種群中,每一個個體都有可能會出現(xiàn)選擇、交叉、變異,從而讓個體適應(yīng)度值持續(xù)提升,隨著進化的進行,個體適應(yīng)度好的將被保留,剔除適應(yīng)性差的個體,從而提升個體質(zhì)量。通過這種迭代進化的方式,不斷優(yōu)化問題的解,從而取得最佳值。
遺傳算法的基本步驟:
1)編碼及種群初始化。遺傳算法首先將解數(shù)據(jù)表達為基因型序列,然后再執(zhí)行搜索。遺傳算法擁有多種編碼方式,常見的有實數(shù)編碼、二進制編碼等,其中二進制編碼可讀性差,容易受到多維度問題的影響,實數(shù)編碼具有精度高,搜索能力強的優(yōu)點,因此本文選用實數(shù)編碼進行染色體編碼,染色體長度N計算公式如下所示:
式中:n、m、l分別為輸入層、隱含層、輸出層神經(jīng)元個數(shù)。
2)計算適應(yīng)度值。
3)選擇。按照一定規(guī)則,一般選用輪盤賭法,依據(jù)個體適應(yīng)度值在總適應(yīng)度值中的占比判斷被選擇的概率,占比約大,被選擇概率越大。
4)交叉。隨機選取種群中個體進行相同位置編碼的交叉操作,從而產(chǎn)生新的個體。
5)變異。在種群進化過程中設(shè)定變異概率,對被選中個體按照概率將某些基因值更改為其它等位基因。
6)重復(fù)執(zhí)行2~5步驟,直到滿足停止準(zhǔn)則(例如達到一定的迭代次數(shù),或者適應(yīng)度已經(jīng)滿足約束條件等)。
在遺傳算法中,目標(biāo)函數(shù)不必是連續(xù)的或可微分的,只需要確保問題是能夠計算的,遺傳算法搜索方式是在整個解空間中進行搜索,所以很容易獲得全局最優(yōu)解。為了解決BP 神經(jīng)網(wǎng)絡(luò)隨機生成初始權(quán)值、閾值參數(shù)的缺陷,首先根據(jù)BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)確定網(wǎng)絡(luò)權(quán)值和閾值個數(shù)并隨機生成初始權(quán)值和閾值,然后通過運用遺傳算法的全局尋優(yōu)能力,找出次優(yōu)解所對應(yīng)的權(quán)值和閾值,并將其作為BP網(wǎng)絡(luò)的初始權(quán)值和閾值,再使用BP算法對網(wǎng)絡(luò)進行訓(xùn)練,最終獲得模型所需的最優(yōu)解。正式訓(xùn)練網(wǎng)絡(luò)前還需要對遺傳算法各參數(shù)進行設(shè)置,常用參數(shù)設(shè)置方法如下:①種群規(guī)模:種群數(shù)量越多,則搜索空間越廣,找到最優(yōu)解的可能性也越大。但同時,種群規(guī)模越大,計算成本也越高。通常,種群大小可以根據(jù)實際情況選擇,在20~200個較為合適。②交叉概率:交叉概率太小,則新生成個體數(shù)量會比較有限,影響種群多樣性;如果交叉概率過大,則易降低收斂速度,通??梢栽O(shè)置在0.5~0.9。③變異概率:變異概率太小,則可能導(dǎo)致算法出現(xiàn)局部最優(yōu)解問題,如果變異概率太大,則容易破壞已經(jīng)找到的好的個體,通常設(shè)置為0.05 左右。通過選取各參數(shù)的不同數(shù)值進行組合并對模型進行多次訓(xùn)練,在綜合考慮模型的預(yù)測準(zhǔn)確率及收斂速度的前提下,正式訓(xùn)練網(wǎng)絡(luò)前各參數(shù)設(shè)置為:種群規(guī)模為30,遺傳代數(shù)為50,變異概率為0.8,交叉概率為0.2。GA-BP神經(jīng)網(wǎng)絡(luò)模型流程如圖2所示。
圖2 GA-BP神經(jīng)網(wǎng)絡(luò)流程Figure 2 Flow of GA-BP neural network
采用實測數(shù)據(jù)對GA-BP 神經(jīng)網(wǎng)絡(luò)模型和BP 神經(jīng)網(wǎng)絡(luò)模型進行測試(部分測試結(jié)果見表3),同時為避免預(yù)測結(jié)果存在偶然性,選取10次測試結(jié)果準(zhǔn)確率的平均值進行對比分析,結(jié)果表明BP神經(jīng)網(wǎng)絡(luò)識別的準(zhǔn)確率平均值為84%,GA-BP 神經(jīng)網(wǎng)絡(luò)識別的準(zhǔn)確率平均值為95%。對于預(yù)測精度不變的情況下,選擇預(yù)測精度更好的BP神經(jīng)網(wǎng)絡(luò)可以更好的體現(xiàn)出遺傳算法的優(yōu)化效果。圖3 是用BP 神經(jīng)網(wǎng)絡(luò)與GA-BP 算法計算出的煤層底板突水量等級預(yù)測值與實際測量結(jié)果的比較,由圖3知,經(jīng)過遺傳算法優(yōu)化后的BP 神經(jīng)網(wǎng)絡(luò)的預(yù)測準(zhǔn)確率有了很大的提高。由圖4遺傳算法優(yōu)化前后預(yù)測值與實測值誤差可知,與BP 神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)果相比,GA-BP 神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)果與測量結(jié)果的吻合程度更高,誤差較小。
圖3 模型預(yù)測效果對比Figure 3 Comparison of model prediction effects
圖4 誤差對比Figure 4 Error comparison
表3 模型測試結(jié)果Table 3 Model test results
由圖5 和圖6 可知,GA-BP 神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練的第5 次達到最佳驗證性能MSE=0.028 454,BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練的第14次達到最佳驗證性能MSE=0.033 505,表明遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)是有效的,可以明顯加快訓(xùn)練收斂速度,提高訓(xùn)練精度。
圖5 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程Figure 5 BP neural network training process
在網(wǎng)絡(luò)訓(xùn)練過程中,GA-BP 網(wǎng)絡(luò)的相關(guān)系數(shù)R值在訓(xùn)練集、測試集、驗證集分別為0.963、0.946、0.938,BP網(wǎng)絡(luò)的相關(guān)系數(shù)R值在訓(xùn)練集、測試集、驗證集分別為0.949、0.911、0.938??芍狦A-BP 網(wǎng)絡(luò)的相關(guān)系數(shù)R值在訓(xùn)練集、測試集、驗證集均大于BP 網(wǎng)絡(luò),所以GA-BP 神經(jīng)網(wǎng)絡(luò)模型相比BP 神經(jīng)網(wǎng)絡(luò)模型的擬合程度更好。
1)通過將GA-BP 神經(jīng)網(wǎng)絡(luò)和BP 神經(jīng)網(wǎng)絡(luò)實驗結(jié)果進行對比可知GA-BP 神經(jīng)網(wǎng)絡(luò)模型性能更優(yōu),其預(yù)測準(zhǔn)確率95%高于BP 神經(jīng)網(wǎng)絡(luò)的84%,所以GA-BP 神經(jīng)網(wǎng)絡(luò)可以更好的進行煤層底板突水量等級預(yù)測。
2)相比與BP 神經(jīng)網(wǎng)絡(luò)在訓(xùn)練的第14 次達到最佳,GA-BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練的第5次便達到最佳,且GA-BP 神經(jīng)網(wǎng)絡(luò)在訓(xùn)練集、測試集、驗證集的相關(guān)系數(shù)均小于BP 神經(jīng)網(wǎng)絡(luò)的在訓(xùn)練集、測試集、驗證集的相關(guān)系數(shù),表明遺傳算法可以有效提高BP神經(jīng)網(wǎng)絡(luò)的預(yù)測精度及擬合程度。