白力名, 簡興祥, 張 偉
( 1.成都理工大學(xué) 地球物理學(xué)院,成都 610059;2.中國地質(zhì)調(diào)查局 成都地質(zhì)調(diào)查中心,成都 610081;3.電子科技大學(xué) 資源與環(huán)境學(xué)院,成都 611731)
地下巖體在開挖擾動作用下,圍巖內(nèi)的彈塑性勢能集中程度達(dá)到某一臨界值后,會誘發(fā)巖體中微裂隙的產(chǎn)生,同時伴隨著彈性勢能的釋放,這種現(xiàn)象稱為巖體破裂[1]。巖體破裂通常伴生在地下巖體中,通過實時監(jiān)測巖石破裂來對巖體演化進(jìn)行解釋和評價。因此,巖體破裂作為一種實時、被動的監(jiān)測手段被應(yīng)用到巖石力學(xué)與工程監(jiān)測領(lǐng)域中[2]。為了使實時監(jiān)測技術(shù)更好地發(fā)揮邊坡巖體穩(wěn)定性評價的作用[3],提高地下巖體破裂事件的定位精度,選擇合適的定位算法是巖體破裂事件的主要影響因素。
最常見的定位算法,包括最小二乘法、Geiger 法[4]和單純形法,但都存在不同程度的局限性:①最小二乘法不一定能解出最優(yōu);②Geiger 法對初始值要求高;③單純形法易陷于局部最優(yōu)。為了提高定位精度,國內(nèi)、外學(xué)者做了許多研究,劉培洵等[5]采用絕對偏差最小法進(jìn)行巖石微破裂定位,減小了定位誤差;張曉平等[6]通過布谷鳥算法進(jìn)行層狀巖體破裂事件定位,提高了全局最優(yōu)能力。隨著計算機(jī)科學(xué)的不斷發(fā)展,越來越多的智能算法得到了快速發(fā)展[7],極大地提高了定位精度。最早提出的智能算法包括粒子群算法[8]、模擬退火算法[9]、遺傳算法[10]等,它們有著不同的優(yōu)缺點:①模擬退火算法可獲得全局最優(yōu)解,但搜索速度較慢; ②遺傳算法具有全局尋優(yōu)特點,但設(shè)置參數(shù)多;③粒子群算法簡單高效、全局尋優(yōu)能力好,但易陷入局部最優(yōu)。針對單個算法的局限性,許多學(xué)者進(jìn)行智能算法的改進(jìn)或多種算法相結(jié)合,達(dá)姝瑾等[11]提出了改進(jìn)粒子群算法在巖石聲發(fā)射定位中的研究,避免了局部最優(yōu)問題;LAGOS等[12]將粒子群算法與模擬退火法進(jìn)行聯(lián)合定位,提高了搜索效率,這些方法極大地提高了定位精度。
隨著智能化的迅猛發(fā)展,許多智能優(yōu)化算法被開發(fā)出來[13]。比如鼠群優(yōu)化算法(Rat swarm optimization,Rso)[14]、灰狼算法、布谷鳥算法,其中鼠群優(yōu)化算法是Gaurav Dhiman等[15]在2020年提出的一種原理簡單、易于編程實現(xiàn)以及參數(shù)少、全局尋優(yōu)能力強(qiáng),搜索效率高等特點的元啟發(fā)式智能優(yōu)化算法。一經(jīng)問世就引起了各領(lǐng)域?qū)W者的廣泛關(guān)注,目前,鼠群優(yōu)化算法主要應(yīng)用在醫(yī)學(xué)診斷[16]、復(fù)合材料檢測[17]、電力系統(tǒng)[18]等領(lǐng)域中,但尚未應(yīng)用于地下巖體破裂事件定位中。因此,筆者主要探討針對改進(jìn)鼠群優(yōu)化算法在地下巖體破裂事件定位中的應(yīng)用研究。
鼠群優(yōu)化算法主要來自于大自然中老鼠的追逐和攻擊獵物的行為。為了避免老鼠相互碰撞,在追逐時每只老鼠的初始位置不同,老鼠在攻擊獵物時,鼠群做出逐次逼近的運(yùn)動形態(tài)。該優(yōu)化算法主要通過老鼠追逐獵物過程模擬局部搜索,鼠群攻擊過程模擬全局搜索。鼠群追逐獵物如圖1所示。
(1)
(2)
t=0,1,2,…,MaxIteration
(3)
式中:R為控制變量A的參數(shù);MaxIteration為最大迭代次數(shù);t為當(dāng)前迭代次數(shù);參數(shù)R和C是取值在[1,5]和[0,2]之間的隨機(jī)數(shù)。
當(dāng)老鼠與獵物進(jìn)行斗爭時,通過在搜索空間中不斷更新迭代來確定最優(yōu)位置。
(4)
Levy飛行是法國數(shù)學(xué)家萊維在上世紀(jì)30年代提出了基于一種概率分布[19]。它是一種非高斯隨機(jī)過程,通過小步長搜索和偶爾的大步長搜索相結(jié)合的搜索模式,增強(qiáng)了局部搜索能力和全局尋優(yōu)的能力,如圖2所示。
圖2 二維Levy飛行示意圖Fig.2 2D Levy flight diagram
Levy飛行的更新公式為式(5)。
Yi(t+1)=Yi(t)+m⊕Levy(γ)
(5)
式中:Yi(t)為Yi在第t代的位置;m為i老鼠個體位置的隨機(jī)數(shù),由式(6)決定;⊕表示點對點乘法;Levy(γ)表示Levy飛行搜索路徑。
m=random(size(iposition))
(6)
Levy(γ)=0.01(u*|v|γ*(Yi(t)-Yibest))
(7)
式中:iposition表示i老鼠個體位置;γ的取值范圍一般是1<γ<3[20],在本文中,γ取1.5;Yibest為歷史最優(yōu)i老鼠的位置;u和v服從公式(8)和(9)所示的正態(tài)分布:
(8)
(9)
(10)
(11)
時差定位(Time difference of arrival, TDOA)是一種雙曲線定位法,該方法是通過不同檢波器接收到破裂點的時間差信息來建立方程組便可得到定位點[21]。在地下巖體破裂時,根據(jù)波的傳播特性,采用不同檢波器監(jiān)測到的P波到時差建立方程組,進(jìn)行定位求解。檢波器與巖體破裂如圖3所示。
圖3 檢波器與巖體破裂示意圖Fig.3 Schematic diagram of geophone and rock mass fracture
假設(shè)模擬的第i個檢波器坐標(biāo)為τ(xi,yi,zi),模擬的第j個巖體破裂事件坐標(biāo)為∈(xj,yj,zj),其中i,j=1、2、3、z,并且假設(shè)檢波器與巖體破裂事件位于同一巖層中。第i個檢波器與巖體破裂事件的P波測量時差關(guān)系為:
(12)
其中:Δ為第i個檢波器接收到的P波到時差;v為已知巖層速度。
不同檢波器之間測量的P波到時差為:
Δtn,m=tn-tm
(13)
通過已知波形速度V0,根據(jù)差值法(TD),計算理論模型中檢波器與破裂事件位置的時間差為:
V0
(14)
式中:(xn,yn,zn)和(xm,ym,zm)分別為第n個和第m個檢波器位置;(x0,y0,z0)為破裂事件位置。
根據(jù)檢波器之間的測量時差與計算時差的差值作為構(gòu)建的目標(biāo)函數(shù)。即公式(15)作為本文改進(jìn)的鼠群優(yōu)化算法的適應(yīng)度函數(shù),當(dāng)適應(yīng)度函數(shù)的取值越小時,則代表種群對函數(shù)的適應(yīng)性越好[15]。
(15)
根據(jù)地下巖體破裂事件與檢波器的位置關(guān)系,利用雙曲線時差定位方法構(gòu)建目標(biāo)函數(shù)作為本文算法的適應(yīng)度函數(shù),將適應(yīng)度函數(shù)代入基于改進(jìn)的Levy飛行鼠群優(yōu)化算法中進(jìn)行優(yōu)化求解,將其最終優(yōu)化解作為定位坐標(biāo)解。算法流程圖如圖4所示,實驗步驟如下:
圖4 算法流程圖Fig.4 Algorithm flow chart
1)設(shè)置參數(shù),其中包括鼠群規(guī)模N、最大迭代次數(shù)T、維度、上下邊界等。
2)隨機(jī)初始化鼠群位置。
3)將初始化的鼠群位置進(jìn)行Levy飛行。
4)將產(chǎn)生的每一個隨機(jī)位置代入適應(yīng)度函數(shù)計算其適應(yīng)度值。
5)對每一個位置按鼠群優(yōu)化算法尋優(yōu)并處理邊界,選出當(dāng)前迭代次數(shù)下,適應(yīng)度值最小的位置,并與上一代比較,更新最優(yōu)位置。
6)檢驗當(dāng)前迭代是否是最大迭代次數(shù),如未滿足最大迭代次數(shù),返回步驟5)再次進(jìn)行運(yùn)算。否則,終止算法。
7)輸出最佳結(jié)果。
筆者為了驗證基于Levy飛行的鼠群優(yōu)化算法對地下巖體破裂事件定位的有效性和可行性,設(shè)計了兩種不同地形的三維地下巖體破裂事件監(jiān)測系統(tǒng)模型。地下巖體破裂事件監(jiān)測系統(tǒng)如圖5所示。
圖5 地下巖體破裂事件監(jiān)測系統(tǒng)Fig.5 Underground rock mass fracture event monitoring system
針對兩種不同模型分別設(shè)置了9個檢波器,15 個破裂點。檢波器坐標(biāo)如表1所示,破裂點坐標(biāo)如表2所示。
表1 檢波器坐標(biāo)Tab.1 Geophone coordinates
表2 破裂點坐標(biāo)Tab.2 Rupture point coordinates
在模型實驗中,檢波器個數(shù)、種群數(shù)量、迭代次數(shù)以及不同地形對定位精度起著關(guān)鍵作用。針對兩種不同地形分別采用本文算法對破裂點1號(110,90,60)坐標(biāo)進(jìn)行定位誤差參數(shù)分析。在空間中最少需要四個臺站才可以判斷破裂點位置,因此筆者設(shè)置檢波器個數(shù)從4個增至9個,在不同地形、不同檢波器個數(shù)下,進(jìn)行了定位誤差對比,如圖6所示。
圖6 檢波器對定位誤差的影響Fig.6 Influence of geophone on positioning error
當(dāng)檢波器從4個增至6個時,針對兩種不同地形,本文算法對定位誤差都逐漸減小;當(dāng)檢波器從7個增至9個時,其定位誤差逐漸增大;故筆者采用檢波器個數(shù)為6。由實驗數(shù)據(jù)分析,當(dāng)檢波器一定時,水平地形的定位誤差要略小于傾斜地形的定位誤差。
種群的數(shù)目對定位精度有著一定的影響,種群數(shù)量較大會導(dǎo)致算法的尋優(yōu)時間較長。而較小的種群數(shù)量會導(dǎo)致算法陷入局部最優(yōu)。因此,設(shè)定種群的數(shù)目從10等距增加到110。隨著種群個數(shù)的增加,定位精度也相對提高,而當(dāng)種群個數(shù)超過60后,定位精度的變化范圍不再明顯,基本維持不變,故筆者采用種群個數(shù)為60。種群對定位誤差的影響,如圖7所示。
圖7 種群對定位誤差的影響Fig.7 Influence of population on positioning error
迭代次數(shù)對定位精度也有著一定的影響,較大的迭代次數(shù)會導(dǎo)致算法的尋優(yōu)時間較長;而較小的迭代次數(shù)會導(dǎo)致算法陷入局部最優(yōu)。迭代次數(shù)從10等值增加到80,當(dāng)?shù)螖?shù)達(dá)到50次后,再增加迭代次數(shù),定位精度變化很小,從而設(shè)定最大迭代次數(shù)為50。迭代次數(shù)對定位影響,如圖8所示。
圖8 迭代次數(shù)對定位誤差的影響Fig.8 Influence of iteration number on positioning error
通過對改進(jìn)的鼠群優(yōu)化算法的影響參數(shù)實驗分析,筆者采用六個檢波器,分別是編號為A、C、D、F、G和I。設(shè)置種群數(shù)為60,迭代次數(shù)為50的參數(shù),針對兩種不同的地形模型對十五個破裂點進(jìn)行反演定位求解,得到破裂點1號(110,90,60)的三維定位位置圖和十五個破裂點定位結(jié)果統(tǒng)計表,分別如圖9和表3所示。
表3 十五個破裂點定位結(jié)果Tab.3 Location results of fifteen fracture points
圖9 破裂點1號的三維定位位置結(jié)果Fig.9 3D positioning results of rupture point
通過引入均方根誤差公式和迭代距離(Generational Distance,GD)評價指標(biāo),進(jìn)一步驗證本文算法的魯棒性和收斂性。
均方根誤差公式(Root Mean Square Error RMSE)是評價定位精度的指標(biāo)之一,當(dāng)誤差越小,表示精度越高;同時,當(dāng)誤差趨于穩(wěn)定,表示算法的魯棒性較好。均方根誤差公式為式(16)。
RMSE=
(16)
其中:(xj,yj,zj)為第j個真實解的坐標(biāo);(xbesti,ybesti,zbesti)為最優(yōu)解坐標(biāo);i為計算次數(shù)。
分別采用狼群優(yōu)化算法(GWO)、鼠群優(yōu)化算法(RSO)以及本文改進(jìn)鼠群優(yōu)化算法分別對兩種不同的地形模型的十五個破裂點進(jìn)行均方根誤差計算,對每一個破裂點進(jìn)行10次計算,取平均值作為定位誤差結(jié)果,不同算法的定位誤差結(jié)果,如圖10所示。
圖10 不同算法的定位誤差結(jié)果Fig.10 Positioning error results of different algorithms
通過對圖10進(jìn)行分析,可以看出本文算法的定位誤差小于另外兩種算法的定位誤差,并且定位誤差結(jié)果都較趨于穩(wěn)定,進(jìn)一步說明本文算法的定位精度要高于其他兩種算法的定位精度,同時,表明該算法的魯棒性較好。
迭代距離是衡量真實解與近似解集之間的間隔距離的平均值,當(dāng)GD值越小,表示該算法具有越好的收斂性,越能逼近真實解。迭代距離公式為式(17)。
(17)
其中:(xT,yT,zT)為真實解的坐標(biāo);(xRm,yRm,zRm)為第m個近似解的坐標(biāo);m為近似解的個數(shù)。
同樣,采用上述三種算法,對兩種模型的十五個破裂點分別進(jìn)行迭代距離計算。不同算法的迭代距離統(tǒng)計,如圖11所示。
圖11 不同算法的迭代距離統(tǒng)計Fig.11 Generational distance statistics of different algorithms
通過對圖11進(jìn)行分析,可以看出本文算法的GD值小于另外兩種算法的GD值,說明本文算法的收斂性要好于另外兩種算法的收斂性,進(jìn)一步驗證了該算法性能的優(yōu)越性。
通過對改進(jìn)鼠群優(yōu)化算法在地下巖體破裂事件的定位研究,得到以下幾點認(rèn)識:
1)筆者提出了基于改進(jìn)鼠群優(yōu)化算法,增強(qiáng)了算法在進(jìn)行地下巖體破裂事件定位時的局部搜索能力和全局尋優(yōu)能力。通過模型設(shè)計,依據(jù)實驗所獲得的數(shù)據(jù)及三維定位結(jié)果分析,驗證了本文算法的有效性和可行性。
2)采用均方根誤差公式和迭代距離評價指標(biāo),驗證了該算法性能的優(yōu)越性;在同等條件下,通過與另外兩種算法對比,本文定位算法具有較高的精度,較好的魯棒性和收斂性。
3)由于本文方法僅是理論實驗,未在實際中應(yīng)用,還需結(jié)合實際地下層狀巖體破裂事件,考慮如何準(zhǔn)確構(gòu)建多層介質(zhì)模型和精確拾取到時等問題。因此,下一步主要研究工作是解決多層介質(zhì)模型和拾取到時等相關(guān)問題,并將理論研究成果成功應(yīng)用到實際工區(qū)中,從而實現(xiàn)快速、準(zhǔn)確地定位,以達(dá)到地下巖體破裂實時監(jiān)測的目的。