劉李楠
(海軍士官學校,安徽 蚌埠 233012)
計算機層析成像就是利用地震波、電容值或電阻率變化等測量數據來反演地質或物體內部結構的物質屬性,并逐層剖析繪制其圖像的技術,是目前應用最廣泛的工程地質探測和工業成像方法。成像問題的核心最終歸結于一個稀疏病態、混定、不相容方程組的求解[1-6],因此反演算法在整個層析成像技術中處于核心地位,反演算法的優劣將直接關系層析成像的成敗。
層析成像中的反演方法可分為線性方法和非線性方法兩種。有效的線性反演方法主要有:Van 和Vorst[7]提出了雙穩定共軛梯度法(BICGSTAB),它可以用于求解系數矩陣不對稱的線性方程組,它利用短遞歸的方法逐步減小殘量,占用內存少,但收斂不規則,在有限精度運算時,這種不規則可能減慢收斂的速度;楊文采[8]提出的帶阻尼因子的LSQR 算法(DLSQR),提高了反演計算精度,避免了LSQR 算法在數據誤差大時造成的數值不穩定,特別適于求解系數為大型稀疏矩陣的方程組,與其他迭代方法相比,在解奇異或病態問題時,顯示出更快的收斂性及更好的可接受的結果,是目前最常用的線性反演方法;此外還有諸如精細積分迭代反演算法等方法,都從某些方面提升了反演計算的性能。非線性反演方法主要有:遺傳算法、模擬退火、粒子群和神經網絡方法[9]等。
由于層析反演方程組是大型稀疏的非線性方程組,采用線性反演算法求解非線性問題不可避免地帶來了解的不適定性等問題,雖然計算速度快但往往精度較低,穩定性也較差。近年來,隨著運算平臺計算能力的大幅提升,以集群智能尋優算法為代表的智能方法,因其良好的自適應及全局搜索能力在工程技術中有了越來越多的應用,它能更好地排除隨機干擾帶來的影響,對復雜介質分布重建效果也更為優越。
本文提出了一種利用量子行為粒子群算法(QPSO)優化BP網絡解決非線性反演問題的方法,利用QPSO算法中粒子的量子隨機性優化BP 神經網絡的權值和閾值,提升網絡反演計算能力,仿真實驗表明了方法的有效性。
粒子群算法(PSO)是一種群體智能優化算法,通過對預設初始解的迭代運算搜尋最優值,具有易于實現、參數管理少等優點。但從本質上說,其不是一種全局收斂算法,受解空間局限、位置進化公式等影響,算法中粒子的隨機性和智能性降低,易陷入局部極值導致魯棒性降低。孫俊等將量子空間引入PSO算法,利用量子理論中的測不準原理來取代經典力學理論中的粒子運動行為,極大地增強了解空間中粒子的隨機性,使得解落入局部極值的概率大大降低,全局搜索能力得到極大增強。
這一過程中,最主要的貢獻即為通過引入量子行為優化了粒子位置更新公式[10]:


其中,M為粒子個數,mbest、pi,d和pg,d分別為平均、個體和整個群體的迭代當前最優位置;α為擴張參數。
BP 算法實際上就是含有隱層的多層前饋網絡,核心是信息向前傳播而誤差向后傳播,當輸出期望值達不到預設輸出時,會利用誤差反向傳播來修改網絡的權值和閾值,使得網絡結構更加優化。然而單一的BP神經網絡方法也有其明顯的困難與缺點,如收斂性、局部極小以及隱層神經元個數的選取等。本質上BP 神經網絡方法是隨機的,依賴于空間誤差表面的瞬時梯度值,因此收斂速度可能較慢甚至可能不收斂,易陷入局部極小,時間開銷較大,因此在應用時可以綜合運用其他方法來優化,提升網絡的收斂性和準確性。
QPSO算法優化BP網絡反演計算分為兩部分,如圖1所示,主體右側是BP網絡訓練部分,左側是QPSO算法優化部分。QPSO算法中粒子代表BP網絡中的權值和閾值,利用每個粒子表示候選解空間內的一個解,解的優劣由適應度函數衡量,這個適應度函數是根據具體的優化目標而選取。如本文計算機層析成像反演計算中,粒子代表了BP 網絡的權值和閾值,適應度函數可選為BP 網絡計算權值閾值與期望權值閾值的預測誤差,適應度函數的優化就是尋求誤差最小的過程。左右部分往返調用,迭代尋找最優的粒子,即為BP網絡權值和閾值的最優設置,建立了基于QPSO 優化的BP 網絡反演算法(QPSO-BP反演算法)。

圖1 QPSO優化BP網絡反演算法流程圖
采用QPSO-BP 算法進行計算機層析成像反演計算,具體步驟及參數選擇如下:
(1)初始化:采用三層網絡結構,輸入層為監測點測量數據,節點數選擇為10;輸出層為反演介質網格分布,節點數為10;隱層節點數根據經驗選擇為21。得出權值為420 個,閾值為41個。
(2)計算適應度函數值:選擇BP網絡訓練實際輸出值和期望輸出值的差來計算適應度函數值。
(3)集群更新:如果適應度不滿足,按QPSO 算法更新,重復計算;如果滿足即停止,輸出最優權值和閾值,完成網絡訓練及優化。
(4)反演計算:完成網絡訓練后,將新測量炮點走時或電阻率數據輸入訓練好的BP網絡,經計算得到最終反演結果,完成不同介質計算機層析成像圖形重建。
為了驗證反演算法的效果,建立二維層狀介質模型,見圖2,模型尺寸均為100×300m,層狀介質速度模型在0~150m深度范圍內有5 層,每層厚度均為30m;150~300m 深度范圍內有3 層,每層厚度均為50 米;從頂層至底層速度值分別為1800m/s、2000m/s、2200m/s、2400m/s、2600m/s、2800m/s、3000m/s及3200m/s。采用“井間”觀測方式,地表左側井位置坐標為(0,0),發射源置于左側井中,個數為10 個,第一個發射點位于深度10m處,均勻分布,間距為20m,接收點位于右側井,地表右側井位置坐標為(100,0),接收點數目及深度分布同發射點。

圖2 二維層狀介質模型圖
采用相同的離散規則網格,利用不同的反演方法求解計算。根據發射點至接收點射線建立反演方程,此時反演計算屬于超定問題無法得到精確解,分別采用PSO-BP 和QPSOBP 算法進行求解。參數設置中,PSO 算法中粒子種群規模設置為80,QPSO 算法中粒子種群規模為20,最大迭代次數均為400,粒子速度取值區間為[-1,1],擴張參數α為0.7;BP網絡部分,最大迭代代數設置為100,不設置訓練終止條件。采用MATLAB 7.0,在硬件Intel(R)Core(TM)i5-3230M CPU 2.6G Hz,8G內存的機器上運行,適應度進化曲線、反演計算相對誤差如圖3、4所示。

圖3 兩種算法適應度進化曲線圖

圖4 兩種算法反演重建結果相對誤差圖
從圖3中可以看出,兩種算法都完成了測量數據的反演重建工作。QPSO算法由于對粒子位置更新采用量子行為極大增強了粒子運動的隨機性,迅速提升了全局尋優能力,在適應度計算迭代到約50次時已經基本到達了最優,具有很好的快速尋優能力。從誤差圖中看出,除個別網格介質分布誤差較大外,大部分相對誤差在0.03 以內,基本完成了分層檢測板重建工作,PSO-BP 算法的最大誤差為0.097,最小誤差為9.73e-005,平均誤差為0.0218;而QPSO-BP算法計算最大誤差為0.065,最小誤差為1.49e-004,平均誤差為0.0098。仿真結果表明,QPSO-BP算法反演結果能更準確反映出模型中各層速度分布,具有很好的反演效果。
層析成像的核心是反演計算,反演計算的重點即是對大型、病態方程組的求解,本文將量子行為粒子群算法引入BP神經網絡權值和閾值優化,然后利用優化訓練后的網絡進行反演計算,主要具有以下優點:
(1)計算效率高。適應度值能快速收斂最優,通過適應度進化曲線圖可以看出經過不到50次尋優,適應度基本達到了最優,收斂速度幾乎是PSO方法的三分之一。
(2)應用性強。仿真實驗中,PSO 方法粒子種群數目為80,而QPSO 方法粒子種群數目為20 時即能更好完成任務,計算過程中參數選取以及迭代條件不會顯著影響收斂性、收斂速度,具有較好的應用前景。