岳中文,吳羽霄,魏 正,王 貴,王 淵,李 鑫
(1.中國礦業大學(北京)力學與建筑工程學院,北京 100083;2.內蒙古康寧爆破有限責任公司,內蒙古 鄂爾多斯017010)
在工程爆破之前,準確預測和分析爆破振動峰值速度,進而優化爆破施工設計方案是有效減小爆破振動危害的主要方法[1]。然而影響爆破振動速度的因素眾多,且各因素之間存在復雜的非線性關系,目前國內外學者用來預測爆破振動速度的主要方法有經驗公式法[2-3]、BP神經網絡[4-5]、多元非線性回歸[6-7]等,但存在經驗公式考慮因素較少、BP網絡陷入局部最小值且收斂速度慢等問題。
基于以上現狀,筆者提出建立基于PCA和GA算法優化支持向量機的爆破振動速度預測模型。支持向量機[8-10](SVM)作為一種新的機器學習算法,具有較強的全局尋優和小樣本訓練能力,能夠解決爆破工程中樣本少、非線性、影響因子多等實際問題。首先采用PCA對數據進行降維,提取影響爆破振動速度的主成分作為模型的輸入變量,利用GA算法找到SVM模型的懲罰系數和核函數參數 的最優參數組合,最終建立PCA-GA-SVM預測模型,同時與BP神經網絡、傳統SVM和GA-SVM模型對比,取得了良好的預測效果。
支持向量機(Support Vector Machine,SVM)是Vapnik[11]等于1995年首次提出的一種新的機器學習方法,其基本原理是通過核函數在高維空間尋找最優分類超平面實現最優分類,解決低維樣本非線性不可分問題。其中尋找最優分類超平面的優化函數為[11]
(1)

為求式(1)的最優解,引入拉格朗日乘子并建立Lagrange函數,將最優分類超平面轉化為下列的對偶問題,即[11]
(2)

K(xi,x)=exp(-g‖x-xi‖2)
(3)
通過二次規劃優化算法訓練得到式(2)中最優的Lagrange乘子,最終得到的回歸函數為[12]
(4)
主成分分析的原理就是利用Karhunen-Loeve變換[13],計算原來變量的協方差矩陣并轉化為對角矩陣,提取少數可以代表原始多維變量信息的低維且線性無關變量。主成分分析法可以完成數據的降維,提高模型處理數據的速度,其具體步驟如下:
1)將原始數據進行歸一化處理,本文采用的是極差化歸一化處理,公式如下:
(5)
式中:xi為待處理的樣本數據;xmin為樣本數據的最小值;xmax為樣本數據的最大值;
2)設總體X有n個樣本(X1,X2,…,Xn),每個樣本有m維變量,則觀測數據的矩陣記為
3)將原始數據進行標準化,公式如下:
(6)

4)計算e=(e1,e2,…,en)T的相關系數矩陣,利用∑u=λu求出特征值λi和其特征向量ui。其中,λ1≥λ2≥…λm≥0;
5)通過計算得到的m個主成分,即[13]
(7)
其中,ui12+ui22+…+uin2=1(i=1,2,…,m)
傳統SVM算法對于懲罰系數c和核函數參數g的選取都是根據經驗給定一個默認值,這對模型的預測精度有很大影響。遺傳算法(Genetic Algorithm,GA)作為一種模擬生物界自然進化和自然遺傳機制的現代啟發式算法,具有全局搜索和全局優化的特點[14],被廣泛用于參數尋優問題。本文結合GA算法優化SVM的關鍵參數,采用實數編碼方式將c和g進行編碼,形成初代種群;選取預測值與實際值的誤差平方和作為適應度函數。對任意樣本集,其誤差平方和越小,說明個體的適應度越好,其參加下一次迭代的機率越大;通過選擇、交叉、變異運算,產生新一代適應度大的群體;不斷重復迭代,直到達到最大迭代次數T,解碼輸出最優的參數組合。
綜合以上原理,PCA-GA-SVM模型建立的實現流程如圖1所示。

圖1 PCA-GA-SVM模型實現流程Fig.1 Flow of PCA-GA-SVM model implementation
以內蒙古康寧爆破公司福強煤礦爆破工程為例,福強煤礦巖體強度平均值為6.40 MPa,巖石硬度系數為3。本工程采用深孔臺階松動爆破,臺階設計高度為10 m,鉆孔方式采用垂直鉆孔,布孔采用三角形布孔方式。結合爆破方案和現場實際情況,選取填塞長度X1(m)、高程差X2(m)、最大段藥量X3(kg)、最小抵抗線X4(m)、孔深X5(m)、設計單耗X6(kgm-3)、孔距X7(m)、排距X8(m)和爆心距X9(m)作為影響爆破振動速度的因子,爆破振動速度的實測數據為Y。在爆破作業時,采用TC-4850爆破測振儀進行實時監測,共測得69組有效爆破測振數據進行模型的訓練和預測,實測數據如表1所示。為使輸入向量的數據量綱一致,首先通過式(5)對各影響因子的原始數據進行[-1,1]區間的歸一化處理,處理后的數據如表2所示。

表1 原始爆破實測數據

表2 歸一化后樣本數據
本文利用SPSS軟件對影響爆破振動速度的9個因子進行主成分分析,通過Correlation Matrix窗口中計算得到爆破振動速度影響因子的相關系數矩陣如表3所示。求解矩陣對應的特征值λi,計算各成分貢獻率及累計貢獻率,結果如表4所示。

表3 相關系數矩陣

表4 特征值、貢獻率及累計貢獻率
由表4可知,前4個因子的累計貢獻率為89.288%>85%,即這4個主成分可以代表原始數據89.288%的信息,將提取主成分后的數據輸入GA-SVM模型進行學習,模型維度由原來的9維降為4維,可大大提高模型的計算和收斂速度。各主成分對應的得分系數如表5所示。

表5 主成分得分系數
由表5可得出主成分表達式,即:
F1=-0.183X1-0.729X2+0.871X3
+0.681X4+0.711X5+0.535X6+0.261X7
+0.107X8+0.762X9
F2=0.197X1+0.196X2-0.385X3
+0.519X4+0.573X5+0.399X6+0.081X7
-0.685X8-0.535X9
F3=0.557X1+0.031X2+0.007X3
+0.025X4-0.086X5+0.562X6-0.800X7
+0.305X8+0.051X9
F4=0.689X1+0.084X2-0.037X3
+0.210X4+0.172X5-0.308X6+0.427X7
+0.461X8-0.055X9
根據前4個主成分的得分系數可知,高程差X2、最大段藥量X3和爆心距X9占F1的主要部分,方差貢獻率達43.005%,可以認為F1反映了爆破設計參數對振動速度起主要作用;同理F2主要反映最小抵抗線X4、孔深X5和排距X8的次要影響,方差貢獻率為19.379%;F3反映設計單耗X6和孔距X7的相關信息,方差貢獻率為15.242%;F4反映填塞長度X1的信息,其貢獻率為11.662%。根據上述主成分表達式重新計算69組原始數據樣本,可得到爆破振動速度影響因素提取主成分后的數據統計(見表6)。

表6 提取主成分的樣本數據
本文采用LIBSVM軟件包進行SVM關鍵參數的優化。該軟件包由臺灣大學林智仁教授等開發,可以支持操作者在MATLAB平臺上對源代碼進行修改、編譯,能夠高效地識別和訓練SVM模型。PCA-GA-SVM預測模型的各參數設置如下:核函數設置為徑向基核函數,種群最大數量為20,最大迭代數為100,交叉概率為0.6,變異概率為0.1。從表6中隨機選取58組數據作為學習樣本訓練GA-SVM模型,剩下的11組作為待測試樣本進行預測。經過100次的迭代尋優,得到的適應度曲線如圖2所示。

注:最優c=1.899 1、g=1.971 2,均方誤差MSE為0.037 86。圖2 PCA-GA-SVM模型的適應度Fig.2 Fitness of PCA-GA-SVM model
由圖2可知,當種群迭代100次終止后,SVM模型有最優組合(c=1.899 1、g=1.971 2,均方誤差MSE為0.037 86),將其代入模型對訓練樣本仿真測試,得到樣本擬合回歸曲線(見圖3)。可以看出,PCA-GA-SVM對于訓練樣本集的回歸擬合效果良好,此時最小均方差MSE=0.003 751,能夠用來預測分析實際爆破工程中的振動速度。

圖3 PCA-GA-SVM訓練樣本擬合回歸曲線Fig.3 PCA-GA-SVM training sample fitting regression graph
為測試PCA-GA-SVM模型的準確率,通過與上述相同的訓練樣本和測試樣本,分別與BP神經網絡模型、傳統SVM模型和GA-SVM模型進行預測對比。其中,GA-SVM模型中的輸入變量為未經PCA分析的原始樣本數據,傳統SVM模型的參數利用交叉驗證獲得,上述4種模型的測試結果如圖4所示。為評價模型預測精度,各預測模型的平均相對誤差、均方差(MSE)和建模時間的具體數值如表7所示。

圖4不同預測模型測試結果Fig.4 Test results of different prediction models

表7 各模型預測效果對比
從圖4和表7可以看出,BP神經網絡模型預測效果最差,其平均相對誤差為45.46%,均方誤差為0.705 6,這說明BP神經網絡模型對小樣本學習和泛化能力較差;GA-SVM模型的平均相對誤差比傳統SVM模型減小了11.96%,均方差為0.192 0,說明經GA算法優化后得到的關鍵參數大大提高了SVM模型的準確率;而PCA-GA-SVM模型比傳統SVM模型和GA-SVM模型平均相對誤差分別減小了14.77%和2.81%,均方誤差達到0.131 5,收斂時間縮短了10.41 s和3.33 s,進一步說明了同時結合PCA和GA算法建立的PCA-GA-SVM模型具有更快的收斂速度和更高的預測精度,能夠準確地預測分析爆破振動速度。
1)PCA-GA-SVM模型引入主成分分析法,將影響振動速度的主要因素降維轉化為4個線性無關的主成分,有效減少了信息重復和干擾,提高了預測模型的效率和收斂速度。
2)結合GA算法對SVM中的關鍵參數c和g尋優,得到最佳參數組合值分別為c=1.899 1、g=1.971 2,克服了傳統的SVM模型參數不準導致的預測效果不佳的問題。
3)結合現場實際爆破工程,得到該模型的平均相對誤差為14.60%,均方差為0.131 5,建模時間為3.12 s。與其他智能預測模型對比,PCA-GA-SVM模型的預測準確率和收斂速度最好,為爆破振動速度的預測提供了一種有效的方法。