论文部分内容阅读
[摘 要]针对目前射线追踪法的局限与不足,本文尝试以一种新的方法模拟两点间射线追踪,并以层状介质为模型编制程序。
[关键词]射线追踪;遗传算法;层状介质
中图分类号:O434.1
1前言
射线追踪作为一种快速高效的波场近似计算方法,是波速反演的基础,在正演模拟、层析成像及其他诸多领域都扮演了重要角色。传统的两点射线追踪方法主要是试射法和弯曲法。试射法是将射线追踪子程序放入迭代循环内,通过确定源和接收点位置来获得射线。弯曲法则先猜测初始的射线路径,然后反复扰动,直到满足合适的微分方程。以上两种方法各有优点,但都存在着计算效率低,阴影区域射线覆盖不足的缺点。对于横向不均匀介质和多值走时问题,两种方法均难以很好解决。为了弥补现有方法的不足,本文尝试探讨遗传算法在两点射线追踪中的应用。
2 遗传算法运行机制
遗传算法基于自然选择的生物进化,是一种模仿生物进化过程的随机方法。
遗传算法从从代表问题潜在解的一个初始种群开始,将种群中每个个体进行二进制编码,仿照生物学的遗传算子思想,将个体之间进行组合交叉和变异,然后根据个体的适应度挑选优胜个体,产生新的种群。按照优胜劣汰的原则,逐代进化出越来越好的近似解。
3算法的设计与实现
我们以三层层状介质为例建立模型进行两点射线追踪。设三层的层速度分别
为:v1=2000m/s,v2=2300m/s,v3=2700m/s. 波从震源点出发,经过两个层界面,
交点分别为A、B,到达检波器。根据遗传算法的思想我们设A点坐标为
[var(0) ,var(1) ,var(2)],B点坐标为[var(3) ,var(4) ,var(5)],求最小旅行时。
编制程序的主要流程可概括为:数据结构和遗传算法参数设置、参数初始化并产生初始种群、设计适应度函数并解码、遗传操作设计(选择、交叉、变异)、编制主程序。在运行遗传算法程序时,需要对一些参数做事先选择。对于具体问题而言,衡量参数设置恰当与否,要依据多次运行的收敛情况和解的质量来判断。根据本例的实际情况,我们设置了如下的参数:种群大小(popsize)=100; 变量个数(nvars)=6; 最大进化代数(maxgens)=300 交叉率(pxover)=0.8; 变异率(pmutation)=0.1.
4 模拟结果分析
程序运行结果如下
generation
number
best
value
average
fitness
standard
deviation
1
4.588
4.534
0.037
2
4.588
4.540
0.036
3
4.588
4.538
0.036
4
4.589
4.535
0.036
5
4.589
4.538
0.036
6
4.591
4.536
0.037
7
4.591
4.543
0.033
…
…
…
…
128
4.592
4.557
0.022
129
4.592
4.555
0.025
130
4.592
4.556
0.025
…
…
…
…
299
4.592
4.551
0.031
从average fitness(平均适应度)的演变中,可以看出种群总体上向着最优值进化,在运行到128代时获得最佳个体。
Best member: var(0) = 74.255;var(1) = 65.285;var(2) = 295.830;var(3) = 175.616;var(4) = 169.935;var(5) = 595.330;Best fitness = 4.592.
上述问问题中A、B坐标的最优解为:
A(74.255,65.285,295.830), B(175.616,169.935,595.330)。
5结论
经过调试,程序得以正常运行,并快速得到最优解,最优解与实际相符,符合预期效果。该程序以其占用空间小、高效、精确的特点,有效弥补了当前方法的不足,证明遗传算法可成功应用于两点间的射线追踪,有着广泛的应用前景。
参考文献
[1] 王小平,曹立明.《遗传算法-理论、应用与软件实现》[M].西安:西安交通大学
出版社,2002.
[2] 穆艳玲.遗传算法程序设计与探讨[J].计算机与信息技术.2008,04.
[3] 董世泰,高红霞.微地震监测技术及其在油田开发中的应用[J].石油仪器.2004.05
[关键词]射线追踪;遗传算法;层状介质
中图分类号:O434.1
1前言
射线追踪作为一种快速高效的波场近似计算方法,是波速反演的基础,在正演模拟、层析成像及其他诸多领域都扮演了重要角色。传统的两点射线追踪方法主要是试射法和弯曲法。试射法是将射线追踪子程序放入迭代循环内,通过确定源和接收点位置来获得射线。弯曲法则先猜测初始的射线路径,然后反复扰动,直到满足合适的微分方程。以上两种方法各有优点,但都存在着计算效率低,阴影区域射线覆盖不足的缺点。对于横向不均匀介质和多值走时问题,两种方法均难以很好解决。为了弥补现有方法的不足,本文尝试探讨遗传算法在两点射线追踪中的应用。
2 遗传算法运行机制
遗传算法基于自然选择的生物进化,是一种模仿生物进化过程的随机方法。
遗传算法从从代表问题潜在解的一个初始种群开始,将种群中每个个体进行二进制编码,仿照生物学的遗传算子思想,将个体之间进行组合交叉和变异,然后根据个体的适应度挑选优胜个体,产生新的种群。按照优胜劣汰的原则,逐代进化出越来越好的近似解。
3算法的设计与实现
我们以三层层状介质为例建立模型进行两点射线追踪。设三层的层速度分别
为:v1=2000m/s,v2=2300m/s,v3=2700m/s. 波从震源点出发,经过两个层界面,
交点分别为A、B,到达检波器。根据遗传算法的思想我们设A点坐标为
[var(0) ,var(1) ,var(2)],B点坐标为[var(3) ,var(4) ,var(5)],求最小旅行时。
编制程序的主要流程可概括为:数据结构和遗传算法参数设置、参数初始化并产生初始种群、设计适应度函数并解码、遗传操作设计(选择、交叉、变异)、编制主程序。在运行遗传算法程序时,需要对一些参数做事先选择。对于具体问题而言,衡量参数设置恰当与否,要依据多次运行的收敛情况和解的质量来判断。根据本例的实际情况,我们设置了如下的参数:种群大小(popsize)=100; 变量个数(nvars)=6; 最大进化代数(maxgens)=300 交叉率(pxover)=0.8; 变异率(pmutation)=0.1.
4 模拟结果分析
程序运行结果如下
generation
number
best
value
average
fitness
standard
deviation
1
4.588
4.534
0.037
2
4.588
4.540
0.036
3
4.588
4.538
0.036
4
4.589
4.535
0.036
5
4.589
4.538
0.036
6
4.591
4.536
0.037
7
4.591
4.543
0.033
…
…
…
…
128
4.592
4.557
0.022
129
4.592
4.555
0.025
130
4.592
4.556
0.025
…
…
…
…
299
4.592
4.551
0.031
从average fitness(平均适应度)的演变中,可以看出种群总体上向着最优值进化,在运行到128代时获得最佳个体。
Best member: var(0) = 74.255;var(1) = 65.285;var(2) = 295.830;var(3) = 175.616;var(4) = 169.935;var(5) = 595.330;Best fitness = 4.592.
上述问问题中A、B坐标的最优解为:
A(74.255,65.285,295.830), B(175.616,169.935,595.330)。
5结论
经过调试,程序得以正常运行,并快速得到最优解,最优解与实际相符,符合预期效果。该程序以其占用空间小、高效、精确的特点,有效弥补了当前方法的不足,证明遗传算法可成功应用于两点间的射线追踪,有着广泛的应用前景。
参考文献
[1] 王小平,曹立明.《遗传算法-理论、应用与软件实现》[M].西安:西安交通大学
出版社,2002.
[2] 穆艳玲.遗传算法程序设计与探讨[J].计算机与信息技术.2008,04.
[3] 董世泰,高红霞.微地震监测技术及其在油田开发中的应用[J].石油仪器.2004.05