付宇,艾寒冰,3,姚振岸,梅竹虚,苏可嘉,4
(1.江西省防震减灾与工程地质灾害探测工程研究中心,江西 南昌 330013;2.东华理工大学 地球物理与测控技术学院,江西 南昌 330013;3.中国地质大学(武汉) 地球物理与空间信息学院,湖北 武汉 430074;4.核工业二七0研究所,江西 南昌 330200)
随着工程建设场地复杂程度以及施工难度的提高,获得精确的地层信息对于工程的设计和施工变得尤为重要[1]。瑞利波勘探具有浅层分辨率高、抗干扰能力强等优点,在工程勘探中应用广泛[2]。频散曲线反演是瑞利波勘探的关键环节,其反演效果直接决定了获取地层信息的精度。因此,准确地进行频散曲线反演极其重要。
频散曲线反演隶属地球物理反演问题范畴,具有高度非线性、多参数、多极值的特点[3-4]。同时由于地震数据存在噪声、反演多解性等因素的影响,想要精确且高效地反演频散曲线变得非常困难。频散曲线的反演算法可分为局部优化算法和全局优化算法。局部优化算法有最小二乘法[5-9]、L-M算法[10]、Occam算法[11-12]等。早期,局部优化算法因计算速度快而被广泛应用。但此类方法过度依赖于初始模型的建立,初始模型选取和真实情况相近才能获得较好的反演效果。另外,算法易陷入局部极值,并且涉及到的偏导数计算以及反演结果的好坏都受到雅可比矩阵精度的影响[13-14]。这些使局部优化算法在瑞利波反演领域的发展受到限制。另一种全局优化算法因可以很好地避免局部优化算法在反演时遇到的问题,受到学者们的广泛关注。全局优化算法中常用的有遗传算法[15-17]、模拟退火算法[18-22]、粒子群算法等[23-24]。这些算法和局部优化算法相比虽具有不依赖于初始模型、不易陷入局部最优解等优势,但存在运算时间长、容易早熟收敛等缺点。
鉴于此,本文将一种新的正余弦算法(sine cosine algorithm,SCA)用于瑞利波频散曲线的反演研究。为了评价SCA对瑞利波频散曲线反演的可行性、有效性、稳定性和实用性,本文首先利用SCA对4个从简单到复杂的地质模型产生的含噪声与不含噪声的理论频散曲线进行反演,并分析与评价SCA的可行性,有效性和稳定性。接着,通过进一步对比SCA与PSO的反演性能以说明SCA相对于经典的粒子群算法是否具有更稳定、收敛速度更快,反演精度更高的优越性。最后将SCA用于反演来自冰岛Arnarbælidi和美国怀俄明地区的实测数据以检验SCA对瑞利波频散曲线反演的实用性。
SCA是澳洲学者Seyedali Mirjalili在基于正余弦函数组合,应用多个随机参数和自适应变量调整寻优过程的基础上于2016年提出的一种新型群智能优化算法[25]。SCA与其他群智能优化算法相同,可以根据先验信息给出每个解的初始值。如果先验信息不可用,则可以随机生成初始集合。然后这些解的位置更新方程如下:
(1)
(2)
式中:t为当前迭代次数;T为最大迭代次数;a为一常量。图1给出了SCA的算法流程。
图1 SCA算法流程
在实际工程应用中,基阶频散曲线能量更强,更易观测,采集数据中大多只含有基阶信息,所以在反演时一般选取基阶频散曲线进行反演[26]。本文考虑到出现高阶频散的情况,对基阶、高阶频散曲线联合反演的情况也进行了测试。在测试中将所有地层信息都设为未知,即同时反演厚度、密度、横波速度以及纵波速度,最后选取对频散曲线有显著影响的层厚和横波速度来进行分析与评价。由于真实的地层情况比较复杂,将模型参数的搜索范围设置为真实模型的50%。对于算法参数设置,SCA中影响算法性能的参数主要为种群数和迭代次数。本文设置SCA的种群数为30,迭代次数为100。为避免算法的随机性,每次理论模型测试都进行独立反演30次,且每次反演初始模型都不相同,最后将30次反演所得数据的均值作为反演结果进而输出,标准差作为衡量算法稳定性的指标进而评价。
瑞利波频散曲线反演的本质是求解适应度函数最小值的优化问题。本文采用的适应度函数是根据反演所得模型能否精确解释观测资料所定[27]:
(3)
为合理评价SCA算法的性能,本文使用4个工程勘察中常见的理论模型对其进行测试。这些模型从简单到复杂逐渐过渡,模型参数见表1。表1中模型A为两层速度递增模型;模型B为4层速度递增模型;模型C为4层含一低速软弱夹层模型;模型D为4层含一高速硬夹层模型。
表1 模型参数及反演搜索范围
为合理评测算法,从基础两层模型开始进行测试,随后提升模型复杂度,在四层复杂模型中进行进一步评测。从图2简单两层速度递增模型反演结果可看出,在无任何先验信息的情况下,反演所得频散曲线(图2a中的点线)和理论模拟频散曲线(图2a中的实线)仍具有较高拟合度,并且反演模型和理论模型各参数误差只有0.23%,0.60%和4.76%(表2),30次独立反演所得参数标准差表明30次独立反演整体偏离度较低,验证了SCA用于简单地层结构频散曲线反演的可行性以及稳定性。
表2 模型A、B、C、D含噪声与不含噪声反演结果
a—反演所得频散曲线;b—反演的横波速度剖面
为进一步测试SCA在复杂地层中的反演表现,将其应用在3种复杂地层:模型B、 C和D中进行反演试算。结果如图3所示,其中a2,b2和c2分别展示了模型B、 C和D的反演结果。从反演结果可以看出,不论是3种模型中的哪一种,利用SCA反演得到的频散曲线(图中a1,b1和c1中的点线)都能与理论频散曲线(图中a1,b1和c1中的实线)吻合良好。3种模型反演所得参数中最大相对误差仅为6.76%,标准差值也相对较小(表2),说明SCA在处理复杂地层模型的频散曲线反演问题时依旧能保持良好的性能。
a1,b1,c1—分别为模型B、C和D反演所得频散曲线;a2,b2,c2—分别为模型B、C和D反演的横波速度剖面
在采集地震数据时,噪声是难以避免的。这些噪声会使提取到的频散曲线在小范围内随机扰动,进而影响反演结果。因此,算法用于实际数据处理前需检测其抗噪能力。为测试SCA的抗噪性能,在以上4个理论模型经正演模拟得到的频散曲线中加入15%的随机噪声后进行反演。
SCA用于含噪声模型的反演结果如图4所示,其中a2,b2,c2和d2分别展示了模型A、B、C、D的反演结果。从图a2,b2,c2和d2可以看出,即便加入15%的噪声,反演模型参数和真实模型参数依然相近,并且模型A、B、C、D利用SCA反演所得参数的相对误差仅变为了5.00%,6.54%,8.16%和1.36%(表2)。将其和不加噪声模型反演结果进行对比,可以看出反演所得参数间几乎无偏差(表2),这表明噪声虽然对反演结果具有一定影响,但SCA具有较强的抗噪能力。故SCA适用于包含较强噪声数据的反演。
a1,b1,c1,d1—分别为模型A、B、C和D反演所得频散曲线;a2,b2,c2,d2—分别为模型A、B、C和D反演的横波速度剖面
在一些特殊地层(如软弱夹层),可能会出现高阶波高频部分能量强于基阶波的情况[28],这时若将高阶频散曲线和基阶频散曲线联合起来反演,便可以增加反演的有效信息,进而提升反演所得地层信息的准确度,故检验算法对于多模式频散曲线的反演能力是必要的。此次测试以模型C为例,向模型C的基阶频散曲线数据中加入高阶数据后进行反演试算,反演结果见图5和表3。从图5a1可知,反演得到的频散曲线(点线),无论基阶还是高阶,都与真实模型频散曲线(实线)拟合得很好并且由图5a2可看出,反演所得模型参数(点线)与真实模型参数(实线)相差也较小,说明SCA用于多模式频散曲线反演是可行的。另外,多模式频散曲线反演结果相比单纯基阶频散曲线反演结果的精度总体有所提升,尤其是第三层层厚的相对误差从6.28%降到了1.38%。由此可知,多模式频散曲线反演比只用基阶频散曲线进行反演所得模型参数准确度更高,反演效果更优异。
表3 模型C基阶数据和多模式数据反演结果
a—反演所得频散曲线;b—反演的横波速度剖面
为证实SCA用于频散曲线反演确实能得到较为准确的地层参数,将其和经典的粒子群算法(particle swarm optimization,PSO)一起进行反演测试,对比、分析和评价两者的反演性能。测试在不含噪声的模型D上进行,各单独反演30次。反演时两种算法的种群数目,搜索空间和迭代次数都相同。反演结果如图6所示,具体的反演参数如表4所示。结合图6a2和表4可知,SCA在迭代初期就大致确定了最优解位置,迭代到30次的时候就基本收敛且收敛精度较高为1.35 m/s;PSO的寻优能力较差,在迭代到40次左右才收敛并且在100次左右时还有进一步收敛的趋势,最后收敛的精度也较低为11.57 m/s。除此之外,通过表4中SCA与PSO对于模型各参数反演的标准差可以看到,SCA算法的稳定性远远强于传统的粒子群算法,这得益于SCA独特的更新解的方式。综上可知SCA相较于PSO在瑞雷波频散曲线反演中的表现具有更高的精度,更快的收敛速度以及更强的稳定性。
表4 SCA和PSO反演效果对比
a—放大前的收敛曲线对比;b—放大后的收敛曲线对比
前面理论模型测试结果表明,SCA用于频散曲线反演是可行且有效的。现用冰岛Arnarbælidi地区数据(数据来源于文献[29])测试SCA反演实际数据的效果。原始地震记录如图7a所示。采集震源为锤击震源,选用的检波器主频为4.5 Hz,共24道,道间距为1 m,偏移距为10 m。图7b为提取的频散能量,从图上可看出高阶波能量弱,基本不发育,反演选用基阶波数据。反演时算法参数同前面理论模型测试时参数设置相同,模型参数按照文献[30]进行设置,所有地层的纵波速度及密度分别设置为1 440 m/s和1 850 kg/m3,其余参数如表5所示。表5中的层厚及S波速度数据来源于文献[29]。
表5 Arnarbælidi地区前人[29]反演模型参数以及搜索范围[30]
图7 Arnarbælidi地区地震数据(a)与频散能量图(b)[29]
图8a中可看出反演所得频散曲线(黑点)和实测频散曲线(实线)拟合程度非常高;反演模型参数(图8c中黑点)在浅层与文献[29]的参考模型(图8c中实线)参数差别较小,只有第9层横波速度出现较大差别,推测原因是基阶频散曲线低频信息不够充分,故对于深部结果约束性不强所导致。SCA迭代到60次时就基本收敛,其均方根误差仅只有2.90 m/s,这小于文献[29]中所得到的5.18 m/s,故将SCA应用于实际瑞利波频散曲线反演中的效果相较于前人结果具有更为优异的表现。
a—反演所得频散曲线;b—最小目标函数值随迭代次数变化情况;c—反演的横波速度剖面
接着使用美国怀俄明地区数据(数据来源于文献[31])进一步测试SCA反演实际数据的效果。原始地震记录如图9a所示,采集地震数据时,使用了48个检波器,震源为锤击震源,偏移距、道间距都为0.9 m。图9b为提取的频散能量,由于高阶数据出现了模式接吻现象,文中仅选用基阶波数据进行反演。反演时算法参数同前面理论模型测试时参数设置相同,反演的模型参数如表6所示。
表6 怀俄明地区前人[32]反演模型参数及搜索范围
图9 怀俄明地区地震数据(a)与频散能量(b)[32]
反演结果如图10所示,从图10a和10b中可看出,反演得到的频散曲线(图10a中的实线)与实测数据频散曲线(图10a中的点线)拟合得很好、精度较高,反演迭代20多次后就已经收敛,收敛精度为4.40 m/s。在浅部,SCA重建的横波速度模型(图10c中的实线)与测井资料(图10c中带菱形的折线)都吻合得很好,在5 m往深后,重建模型依然能较好地贴近测井数据。可知SCA用于实测数据反演具有较高可信度。
a—反演所得频散曲线;b—最小目标函数值随迭代次数变化情况;c—测井数据与反演横波速度剖面对比
本文将一种新的群智能优化算法——SCA用于瑞利波频散曲线反演的研究当中。在进行具体的反演工作时,通过设置较大的模型参数搜索范围以模拟无先验信息或者仅有少量已知信息的情况,并同时反演厚度、密度、横波速度以及纵波速度以更好适应真实情况(但只选取对频散曲线有显著影响的层厚和横波速度来进行分析与评价)。利用多个理论模型(从简单模型到复杂模型,从无噪声数据到含噪声数据)对SCA性能从理论的角度进行了详尽的测试,最后再采用来自冰岛Arnarbælidi和美国怀俄明地区的实测数据检验了SCA的实用性。测试结果表明:
1)基于正余弦函数组合,应用多个随机参数和自适应变量调整寻优过程的SCA对于频散曲线反演搜索空间具有十分优异的探索和开发能力,在获得高精度地层模型参数的同时还保证了收敛速度以及较强的稳定性,具有良好的发展潜力。
2)SCA相较于传统的粒子群算法在瑞利波频散曲线反演中的表现具有更高的精度、更快的收敛速度以及更强的稳定性。