CN109684760B - 基于随机搜索算法的弹性矢量波场数值模拟方法及系统 - Google Patents

基于随机搜索算法的弹性矢量波场数值模拟方法及系统 Download PDF

Info

Publication number
CN109684760B
CN109684760B CN201811638374.0A CN201811638374A CN109684760B CN 109684760 B CN109684760 B CN 109684760B CN 201811638374 A CN201811638374 A CN 201811638374A CN 109684760 B CN109684760 B CN 109684760B
Authority
CN
China
Prior art keywords
finite difference
local
particle
algorithm
numerical simulation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811638374.0A
Other languages
English (en)
Other versions
CN109684760A (zh
Inventor
王之洋
白文磊
俞度立
冯海新
刘洪�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Chemical Technology
Original Assignee
Beijing University of Chemical Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Chemical Technology filed Critical Beijing University of Chemical Technology
Priority to CN201811638374.0A priority Critical patent/CN109684760B/zh
Publication of CN109684760A publication Critical patent/CN109684760A/zh
Application granted granted Critical
Publication of CN109684760B publication Critical patent/CN109684760B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种基于随机搜索算法的弹性矢量波场数值模拟方法、系统、计算机设备以及计算机可读存储介质,涉及地震勘探技术领域。该方法包括:构建改进的粒子群算法;根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟。本发明设计了一种随机搜索算法,即改进的粒子群算法,通过改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高了弹性矢量波场数值模拟的精度与效率。

Description

基于随机搜索算法的弹性矢量波场数值模拟方法及系统
技术领域
本发明关于地震勘探技术领域,特别是关于地震领域的数值模拟技术,具体的讲是一种基于随机搜索算法的弹性矢量波场数值模拟方法、系统、计算机设备以及计算机可读存储介质。
背景技术
有限差分法数值模拟技术始于二十世纪60年代末。现今已经被广泛地应用到地震数值模拟,偏移成像以及地球物理反演中。应用有限差分法进行地震波场数值模拟,优势是可以利用大规模CPU/GPU集群,对海量数据进行处理,缺点是势必会引入数值频散。
数值频散是有限差分方法不可避免的一个问题,会直接影响数值模拟的精度,为了降低数值频散,可以采用更细的网格或者降低子波主频。但是更细的网格意味着海量的计算量,降低了计算效率,且对存储和计算性能都提出了挑战;降低子波主频则会损失高频成分,影响分辨率。因此,优化差分格式的方法成为主流,目前主要有两种差分算子优化方法:窗函数法和最优化方法,这两种方法本质上是相同的,都是求取有限差分系数,只有一个不同点,最优化方法是通过各种最优化方法“计算”得到有限差分系数,而优选窗函数法是通过“设计”得到有限差分系数。
应用最优化方法计算得到优化的有限差分系数,实际上是一个多参数优化的问题,虽然有诸如误差限和目标函数的选择,数量相对较多的差分系数以及优化流程不直观等问题,但是前人在此方面做了很多工作,也得到很多精度和效率较高的优化差分算子。目前被广泛使用优化有限差分算子的最优化方法有最小二乘法,模拟退火法以及Remez算法等,针对不同的优化方法,需要使用不同的目标函数。最优化方法的本质是在一个解池子里搜索最优解的过程,以在误差限内获得更大的谱覆盖范围,但通常都存在着收敛速度慢,收敛不到全局最优解的问题。
因此,如何提供一种新的有限差分算法,将其应用于弹性矢量波场数值模拟,以实现弹性矢量波场的高精度高效率的数值模拟是本领域亟待解决的技术难题。
发明内容
有鉴于此,本发明实施例提供了一种基于随机搜索算法的弹性矢量波场数值模拟方法、系统、计算机设备以及计算机可读存储介质,通过设计一种随机搜索算法,即改进的粒子群算法,以解决常规粒子群算法进行多参数优化时,收敛慢,容易陷入局部最优,以致收敛不到全局最优解的问题,形成改进的粒子群算法,通过改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高了弹性矢量波场数值模拟的精度与效率。
本发明的目的之一是,提供一种弹性矢量波场数值模拟方法,包括:
构建改进的粒子群算法;
根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;
根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟。
优选的,所述构建改进的粒子群算法包括:
构建局部学习模式;
构建全局学习模式;
使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置。
优选的,所述构建局部学习模式包括:
选择M个局部较优解的粒子位置;
求取M个局部较优解粒子位置的平均位置;
与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置。
优选的,所述构建全局学习模式包括:
获取预先设置的最优解的阈值范围;
遍历所有粒子;
当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;
在P这个种群中,随机选取粒子位置作为学习对象。
本发明的目的之一是,提供一种基于随机搜索算法的弹性矢量波场数值模拟系统,包括:
改进算法构建模块,用于构建改进的粒子群算法;
优化系数求解模块,用于根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;
数值模拟模块,用于根据所述优化的有限差分系数所构成的有限差分算子,对所述弹性矢量波场进行数值模拟。
优选的,所述改进算法构建模块包括:
局部模式构建模块,用于构建局部学习模式;
全局模式构建模块,用于构建全局学习模式;
粒子更新模块,用于使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置。
优选的,所述局部模式构建模块包括:
粒子位置选择模块,用于选择M个局部较优解的粒子位置;
平均位置求取模块,用于求取M个局部较优解粒子位置的平均位置;
位置线性组合模块,用于与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置。
优选的,所述全局模式构建模块包括:
阈值范围获取模块,用于获取预先设置的最优解的阈值范围;
粒子遍历模块,用于遍历所有粒子;
计数模块,用于当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;
学习对象选取模块,用于在P这个种群中,随机选取粒子位置作为学习对象。
本发明的目的之一是,提供一种计算机设备,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行一种基于随机搜索算法的弹性矢量波场数值模拟方法。
本发明的目的之一是,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行一种基于随机搜索算法的弹性矢量波场数值模拟方法。
本发明的有益效果在于,提供了一种基于随机搜索算法的弹性矢量波场数值模拟方法、系统、计算机设备以及计算机可读存储介质,通过设计一种改进的粒子群算法,解决常规粒子群算法进行多参数优化时,收敛慢,容易陷入局部最优,以致收敛不到全局最优解的问题,形成改进的粒子群算法,通过改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高了弹性矢量波场数值模拟的精度与效率。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统的结构示意图;
图2为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统中改进算法构建模块的结构示意图;
图3为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统中局部模式构建模块的结构示意图;
图4为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统中全局模式构建模块的结构示意图;
图5为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟方法的流程图;
图6为图5中的步骤S101的具体流程图;
图7为图6中的步骤S201的具体流程图;
图8为图6中的步骤S202的具体流程图;
图9为本发明提供的具体实施例中Marmousi纵波速度模型的示意图;
图10为本发明提供的具体实施例中Marmousi横波速度模型的示意图;
图11为本发明提供的具体实施例中Marmousi密度模型的示意图;
图12为本发明提供的具体实施例中应用常规8阶有限差分算子进行数值模拟的炮记录的示意图;
图13为本发明提供的具体实施例中应用改进的粒子群算法优化的有限差分算子进行数值模拟的炮记录的示意图;
图14为对图12炮记录中间方框区域放大显示的结果图;
图15为对图13炮记录中间方框区域放大显示的结果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、方法或计算机程序产品。因此,本发明公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
群体智能优化算法是一类基于概率计算的随机搜索算法,在多参数优化领域也得到了广泛应用。其稳定性较强,问题依赖度低,算法容易实现,具有全局搜索和局部搜索最优解的性能,收敛速度快,计算精度高。粒子群算法收敛速度快,计算简便,但在实际使用过程中并不能保证一定收敛到全局最优点,容易陷入局部最优的概念。产生这个问题的主要原因是首先是待优化问题的目标函数的问题,其为比较复杂的多峰函数或者病态函数,导致算法不容易收敛或收敛速度慢。其次是算法本身的问题,对于粒子群算法,粒子数量,参数以及优化策略的设置不恰当,很容易导致大量粒子迅速聚集,多样性降低,导致出现局部极值陷阱,即搜索不到最优解。
本专利针对粒子群算法容易陷入过早收敛的问题,无法找到全局最优解的问题,设计一种改进的粒子群算法,用以优化有限差分算子,以解决多参数优化收敛慢以及收敛不到全局最优解的问题。该改进的粒子群算法,在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新,可以提高算法在不同问题上的全局搜索能力和局部搜索能力。利用该改进的粒子群算法对有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分算子进行弹性矢量波场数值模拟,提高波场数值模拟的精度与效率。
图1为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统的结构示意图,请参见图1,所述基于随机搜索算法的弹性矢量波场数值模拟系统包括:
改进算法构建模块100,用于构建改进的粒子群算法。
粒子群算法是由Kennedy和Eberhart于1995年提出的一种基于群体智能的随机优化方法。算法概念简单,收敛速度快,参数调整便捷,容易实现。群体中每个粒子的位置代表搜索空间中的一个可行解。粒子在搜索空间中以给定的速度进行搜索,通过将粒子的位置数据代入给定的目标函数,可以衡量是否是最优位置(最优解)。粒子的搜索速度可以用自身历史最优位置以及全体粒子历史最优位置来进行调整,以通过多次迭代寻找搜索空间内的最优解。
标准粒子群算法的公式如公式(1),(2)
Figure GDA0002963258760000061
Figure GDA0002963258760000062
其中,ω是惯性系数,加强最优解的搜索能力以及对搜索防范的控制。
Figure GDA0002963258760000063
表示第t次迭代时,第i个粒子在第j维度的搜索速度。
Figure GDA0002963258760000064
表示第t次迭代时,第i个粒子在第j维度的空间位置。
Figure GDA0002963258760000065
和gbestj(t)分别表示截止到第t次迭代,粒子i的历史局部最优位置和所有粒子的全局最优位置,其中,
Figure GDA0002963258760000066
为粒子的总数。c1,c2为加速因子,影响最优化算法的收敛性。r1,r2∈[0,1]为符合均匀分布的随机小数。
公式(1)为速度更新公式,可分为三个部分,第一部分代表粒子进行新区域搜索的初始值,ω为惯性系数,惯性系数可以经过调节,平衡局部和全局搜索。第二部分代表局部区域深入搜索能力,第三部分代表全局搜索能力。
粒子群算法容易陷入过早收敛的问题,无法找到全局最优解,因此,本申请创造性的设计出一种改进的粒子群算法,具体的,图2为改进算法构建模块100的结构示意图,请参阅图2,改进算法构建模块100包括:
局部模式构建模块201,用于构建局部学习模式。
全局模式构建模块202,用于构建全局学习模式;
粒子更新模块203,用于使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置。
也即,本申请将粒子群算法分为两个部分,在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新,可以提高算法在不同问题上的全局搜索能力和局部搜索能力。
图3为局部模式构建模块的结构示意图,请参阅图3,局部模式构建模块201包括:
粒子位置选择模块2011,用于选择M个局部较优解的粒子位置;
平均位置求取模块2012,用于求取M个局部较优解粒子位置的平均位置;
位置线性组合模块2013,用于与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置。见公式(3):
Figure GDA0002963258760000071
其中,N代表粒子的数量,λ12代表权重系数。
图4为全局模式构建模块202的结构示意图,请参阅图4,全局模式构建模块包括:
阈值范围获取模块2021,用于获取预先设置的最优解的阈值范围。
在本发明的一种实施方式中,设定一个可能收敛的最优解的阈值范围,在一具体的实施例中诸如设置阈值为±10%的范围,具体做法是采用最小二乘法对目标函数进行优化,得到迭代10次的最优解的值,设置为可能收敛的最优解,并设置一个±10%的范围。
粒子遍历模块2022,用于遍历所有粒子;
计数模块2023,用于当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;
学习对象选取模块2024,用于在P这个种群中,随机选取粒子位置作为学习对象。
也即,随机搜索粒子,当其适应度值在可能收敛的最优解的阈值范围内,进行计数加一,所有满足条件的粒子数量记为P,在P这个种群中,随机选取粒子作为当前粒子i的学习对象,见公式(4):
Figure GDA0002963258760000072
其中,γi(j)为粒子i在第j维度要学习的随机某个粒子对应的编号。
本发明提出的改进的PSO粒子算法,针对PSO算法容易陷入局部极值的问题,将PSO算法分为两个部分,第一个部分是选择M个局部较优解的粒子位置,然后求取M个局部较优解粒子位置的平均位置,并与M个局部最优解的粒子位置之中的最优位置,进行线性组合,提高PSO算法的局部搜索能力。第二部分是设定一个可能收敛的最优解的范围,随机搜索粒子,当其适应度在可能收敛的最优解的阈值范围内,进行计数,记为P,在P这个种群中,随机选取粒子作为当前粒子i的学习对象,提高PSO算法的全局搜索能力,该改进的粒子群算法,在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新,可以提高算法在不同问题上的全局搜索能力和局部搜索能力。通过这种改进方法,PSO算法可以跳出进行多参数优化时陷入的局部极值陷阱,更好地收敛于全局最优解。
请参见图1,所述基于随机搜索算法的弹性矢量波场数值模拟系统包括:
优化系数求解模块200,用于根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;
波场数值模拟模块300,用于根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟。利用该改进的PSO算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该优化的有限差分系数所构成的有限差分算子进行弹性矢量波场数值模拟,能够提高弹性矢量波场数值模拟的精度与效率。
在本发明的一种优选实施例中,形成一种改进PSO算法,提高了搜索的广度和深度,能够提高多参数优化中的参数寻优速度,降低计算复杂度,避免局部极值的对最终结果的干扰。在该实施例中,该算法的详细步骤如下:
S1:首先应用最小二乘方法对目标函数进行优化,将结果作为可能收敛的最优解,并设置一个±10%的范围。
S2:对粒子群的随机位置和速度,群体的最好位置,每个粒子的最好位置以及群体规模进行初始化。计算每个粒子的适应值。
S3:交替使用局部学习和全局学习两种模式更新每个粒子的速度和位置,两种模式的交替周期为T,其中局部学习模式进行T1次,全局学习模式进行T2=T-T1
局部学习模式:选择M个局部较优解的粒子位置,然后求取M个局部较优解粒子位置的平均位置,并与M个局部最优解的粒子位置之中的最优位置,进行线性组合,作为当前最优位置E。
用公式(3),引导解的搜索,更新每个粒子的速度和位置。
全局学习模式:根据S1设置的一个最优解的阈值范围,遍历所有粒子,当其适应度在可能收敛的最优解的阈值范围内,进行计数,记为P,在P这个种群中,随机选取粒子位置作为学习对象,随机选取的粒子编号记为γz=rand()%P。
用公式(4),引导解的搜索,更新每个粒子的速度和位置。
S4:如果满足结束条件(误差足够好或者达到最大循环次数),退出。否则返回第二步,重新计算粒子的适应值,开始下一个循环。
S5:应用获得的最优解,计算并绘出逼近误差曲线,重点观察其频谱覆盖范围以及逼近精度的稳定性,如果效果不好,返回S1、S2、S3、S4、S5、S6步,重新开始循环,直到满意的结果。
将改进PSO算法应用于优化有限差分系数的求解,即求解目标函数公式(5),(6),(7),以获得优化的有限差分系数:
常规二阶导数:
Figure GDA0002963258760000091
常规一阶导数:
Figure GDA0002963258760000092
交错网格:
Figure GDA0002963258760000093
如上即为本发明提供的一种基于随机搜索算法的弹性矢量波场数值模拟系统,通过设计一种改进的粒子群算法,以解决常规粒子群算法进行多参数优化时,收敛慢,容易陷入局部最优,以致收敛不到全局最优解的问题,形成改进的粒子群算法,通过改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高了弹性矢量波场数值模拟的精度与效率。
此外,尽管在上文详细描述中提及了系统的若干单元模块,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。同样,上文描述的一个单元的特征和功能也可以进一步划分为由多个单元来具体化。以上所使用的术语“模块”和“单元”,可以是实现预定功能的软件和/或硬件。尽管以下实施例所描述的模块较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
在介绍了本发明示例性实施方式的基于随机搜索算法的弹性矢量波场数值模拟系统之后,接下来,参考附图对本发明示例性实施方式的方法进行介绍。该方法的实施可以参见上述整体的实施,重复之处不再赘述。
图5为本发明实施例提供的一种基于随机搜索算法的弹性矢量波场数值模拟方法的流程示意图,请参见5,所述基于随机搜索算法的弹性矢量波场数值模拟方法包括:
S101:构建改进的粒子群算法。
粒子群算法是由Kennedy和Eberhart于1995年提出的一种基于群体智能的随机优化方法。算法概念简单,收敛速度快,参数调整便捷,容易实现。群体中每个粒子的位置代表搜索空间中的一个可行解。粒子在搜索空间中以给定的速度进行搜索,通过将粒子的位置数据代入给定的目标函数,可以衡量是否是最优位置(最优解)。粒子的搜索速度可以用自身历史最优位置以及全体粒子历史最优位置来进行调整,以通过多次迭代寻找搜索空间内的最优解。
标准粒子群算法的公式如公式(1),(2)。
公式(1)为速度更新公式,可分为三个部分,第一部分代表粒子进行新区域搜索的初始值,ω为惯性系数,惯性系数可以经过调节,平衡局部和全局搜索。第二部分代表局部区域深入搜索能力,第三部分代表全局搜索能力。
粒子群算法容易陷入过早收敛的问题,无法找到全局最优解,因此,本申请创造性的设计出一种改进的粒子群算法,具体的,图6为步骤S101的具体流程图,请参阅图6,步骤S101包括:
S201:构建局部学习模式。
S202:构建全局学习模式;
S203:使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置。
也即,本申请将粒子群算法分为两个部分,在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新,可以提高算法在不同问题上的全局搜索能力和局部搜索能力。
图7为步骤S201的具体流程图,请参阅图7,步骤S201包括:
S301:选择M个局部较优解的粒子位置;
S302:求取M个局部较优解粒子位置的平均位置;
S303:用于与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置。见公式(3)。
图8为步骤S202的具体流程图,请参阅图8,步骤S202包括:
S401:获取预先设置的最优解的阈值范围。
在本发明的一种实施方式中,设定一个可能收敛的最优解的阈值范围,在一具体的实施例中诸如设置阈值为±10%的范围,具体做法是采用最小二乘法对目标函数进行优化,得到迭代10次的最优解的值,设置为可能收敛的最优解,并设置一个±10%的范围。
S402:遍历所有粒子;
S403:当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;
S404:在P这个种群中,随机选取粒子位置作为学习对象。
也即,随机搜索粒子,当其适应度值在可能收敛的最优解的阈值范围内,进行计数加一,所有满足条件的粒子数量记为P,在P这个种群中,随机选取粒子作为当前粒子i的学习对象,见公式(4)。
本发明提出的改进的PSO粒子算法,针对PSO算法容易陷入局部极值的问题,将PSO算法分为两个部分,第一个部分是选择M个局部较优解的粒子位置,然后求取M个局部较优解粒子位置的平均位置,并与M个局部最优解的粒子位置之中的最优位置,进行线性组合,提高PSO算法的局部搜索能力。第二部分是设定一个可能收敛的最优解的范围,随机搜索粒子,当其适应度在可能收敛的最优解的阈值范围内,进行计数,记为P,在P这个种群中,随机选取粒子作为当前粒子i的学习对象,提高PSO算法的全局搜索能力,该改进的粒子群算法,在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新,可以提高算法在不同问题上的全局搜索能力和局部搜索能力。通过这种改进方法,PSO算法可以跳出进行多参数优化时陷入的局部极值陷阱,更好地收敛于全局最优解。
请参见图5,所述基于随机搜索算法的弹性矢量波场数值模拟方法还包括:
S102:根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数。将改进PSO算法应用于优化有限差分系数的求解,即求解目标函数公式(5),(6),(7),以获得优化的有限差分系数。
S103:根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟。
利用该改进的PSO算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,能够提高弹性矢量波场数值模拟的精度与效率。
在本发明的其他实施方式中,对有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,可以替换应用多种最优化方法,比如最小二乘法,模拟退火法等,对有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,应用该优化的有限差分算子于波场数值模拟中,提高数值模拟的精度与效率。
如上即为本发明提供的一种基于随机搜索算法的弹性矢量波场数值模拟方法,改进的PSO算法可以跳出进行多参数优化时陷入的局部极值陷阱,更好地收敛于全局最优解。利用该改进的PSO算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高弹性矢量波场数值模拟的精度与效率。
本发明还提供了一种计算机设备,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行一种基于随机搜索算法的弹性矢量波场数值模拟方法。
本发明还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行一种基于随机搜索算法的弹性矢量波场数值模拟方法。
下面结合具体的实施例,详细介绍本发明的技术方案。本实施例采用一种基于改进粒子群算法优化的有限差分算法,在模型上进行数值模拟的应用。其中,图9为Marmousi纵波速度模型,横轴为距离,纵轴为深度。图10为Marmousi横波速度模型,横轴为距离,纵轴为深度。图11为Marmousi密度模型,横轴为距离,纵轴为深度。图12为该具体实施例中应用常规8阶算子进行数值模拟的炮记录示意图,横轴为距离,纵轴为时间。图13为该具体实施例中应用改进PSO算法优化的有限差分算子进行数值模拟的炮记录示意图,横轴为距离,纵轴为时间。图14是对图12炮记录中间方框区域放大显示的结果图,横轴为距离,纵轴为时间。图15是对图13炮记录中间方框区域放大显示的结果图,横轴为距离,纵轴为时间。
从图14和图15中,可以清晰地看到,相比于图14,图15的数值模拟结果较好,有效压制了数值频散。因此,该改进PSO算法优化的有限差分算子相比于常规有限差分算子,可以有效压制数值频散。
综上所述,本发明提供了一种基于随机搜索算法的弹性矢量波场数值模拟方法、系统、计算机设备以及计算机可读存储介质,通过设计一种改进的粒子群算法,以解决常规粒子群算法进行多参数优化时,收敛慢,容易陷入局部最优,以致收敛不到全局最优解的问题,形成改进的粒子群算法,通过改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,获得优化的有限差分系数,再利用该有限差分系数所构成的有限差分算子,进行弹性矢量波场数值模拟,提高了弹性矢量波场数值模拟的精度与效率。
对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(ProgrammableLogic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware DescriptionLanguage,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced BooleanExpression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java HardwareDescription Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware DescriptionLanguage)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated CircuitHardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机系统(可以是个人计算机,服务器,或者网络系统等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持系统或便携式系统、平板型系统、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子系统、网络PC、小型计算机、大型计算机、包括以上任何系统或系统的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理系统来执行任务。在分布式计算环境中,程序模块可以位于包括存储系统在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。

Claims (4)

1.一种基于随机搜索算法的弹性矢量波场数值模拟方法,其特征在于,所述方法包括:
构建改进的粒子群算法,其中,所述改进的粒子群算法在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新;
根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;
根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟;
其中,所述弹性矢量波场为地震波场;
所述构建改进的粒子群算法包括:
构建局部学习模式;
构建全局学习模式;
使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置;
所述构建局部学习模式包括:选择M个局部较优解的粒子位置;求取M个局部较优解粒子位置的平均位置;与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置;
所述构建全局学习模式包括:获取预先设置的最优解的阈值范围;遍历所有粒子;当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;在P这个种群中,随机选取粒子位置作为学习对象。
2.一种基于随机搜索算法的弹性矢量波场数值模拟系统,其特征在于,所述系统包括:
改进算法构建模块,用于构建改进的粒子群算法,其中,所述改进的粒子群算法在求解最优解的过程中按照一定的迭代周期对粒子的位置进行更新;
优化系数求解模块,用于根据所述改进的粒子群算法对包含有限差分系数的目标函数进行优化求解,得到优化的有限差分系数;
数值模拟模块,用于根据所述优化的有限差分系数所构成的有限差分算子,对弹性矢量波场进行数值模拟;
其中,所述弹性矢量波场为地震波场;
所述改进算法构建模块包括:
局部模式构建模块,用于构建局部学习模式;
全局模式构建模块,用于构建全局学习模式;
粒子更新模块,用于使用所述局部学习模式和所述全局学习模式更新每个粒子的速度和位置;
所述局部模式构建模块包括:
粒子位置选择模块,用于选择M个局部较优解的粒子位置;
平均位置求取模块,用于求取M个局部较优解粒子位置的平均位置;
位置线性组合模块,用于与M个局部最优解的粒子位置之中的最优位置进行线性组合,作为当前最优位置;
所述全局模式构建模块包括:
阈值范围获取模块,用于获取预先设置的最优解的阈值范围;
粒子遍历模块,用于遍历所有粒子;
计数模块,用于当适应度在收敛的最优解的阈值范围内时,进行计数,记为P;
学习对象选取模块,用于在P这个种群中,随机选取粒子位置作为学习对象。
3.一种计算机设备,其特征在于,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行如权利要求1所述的一种基于随机搜索算法的弹性矢量波场数值模拟方法。
4.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序用于执行如权利要求1所述的一种基于随机搜索算法的弹性矢量波场数值模拟方法。
CN201811638374.0A 2018-12-29 2018-12-29 基于随机搜索算法的弹性矢量波场数值模拟方法及系统 Active CN109684760B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811638374.0A CN109684760B (zh) 2018-12-29 2018-12-29 基于随机搜索算法的弹性矢量波场数值模拟方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811638374.0A CN109684760B (zh) 2018-12-29 2018-12-29 基于随机搜索算法的弹性矢量波场数值模拟方法及系统

Publications (2)

Publication Number Publication Date
CN109684760A CN109684760A (zh) 2019-04-26
CN109684760B true CN109684760B (zh) 2021-04-13

Family

ID=66191252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811638374.0A Active CN109684760B (zh) 2018-12-29 2018-12-29 基于随机搜索算法的弹性矢量波场数值模拟方法及系统

Country Status (1)

Country Link
CN (1) CN109684760B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113990017B (zh) * 2021-11-21 2022-04-29 特斯联科技集团有限公司 基于pnn神经网络的森林草原火灾预警系统及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010058865A2 (en) * 2008-11-21 2010-05-27 The University Of Tokyo Method for synthesizing numerical operators, system for synthesizing operators, and simulation device
CN103544526A (zh) * 2013-11-05 2014-01-29 辽宁大学 一种改进粒子群算法及其应用
CN103853930A (zh) * 2014-03-19 2014-06-11 中国科学院地质与地球物理研究所 地震矢量波场数值模拟方法和装置
CN105137486A (zh) * 2015-09-01 2015-12-09 中国科学院地质与地球物理研究所 各向异性介质中弹性波逆时偏移成像方法及其装置
CN105425298A (zh) * 2015-11-11 2016-03-23 中国石油天然气集团公司 一种消除有限差分正演过程中数值频散的方法和装置
CN106842306A (zh) * 2017-04-18 2017-06-13 中国科学院地质与地球物理研究所 一种全局优化的交错网格有限差分正演模拟方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010058865A2 (en) * 2008-11-21 2010-05-27 The University Of Tokyo Method for synthesizing numerical operators, system for synthesizing operators, and simulation device
CN103544526A (zh) * 2013-11-05 2014-01-29 辽宁大学 一种改进粒子群算法及其应用
CN103853930A (zh) * 2014-03-19 2014-06-11 中国科学院地质与地球物理研究所 地震矢量波场数值模拟方法和装置
CN105137486A (zh) * 2015-09-01 2015-12-09 中国科学院地质与地球物理研究所 各向异性介质中弹性波逆时偏移成像方法及其装置
CN105425298A (zh) * 2015-11-11 2016-03-23 中国石油天然气集团公司 一种消除有限差分正演过程中数值频散的方法和装置
CN106842306A (zh) * 2017-04-18 2017-06-13 中国科学院地质与地球物理研究所 一种全局优化的交错网格有限差分正演模拟方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王之洋 等.一种全局优化的隐式交错网格有限差分算法及其在弹性波数值模拟中的应用.《地球物理学报》.2015,第58卷(第7期),第2508-2524页. *

Also Published As

Publication number Publication date
CN109684760A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
EP3333735B1 (en) Method and computer program for determining a placement of at least one circuit for a reconfigurable logic device
US11300964B2 (en) Method and system for updating occupancy map for a robotic system
JP2023522567A (ja) ニューラルネットワークを使った集積回路配置の生成
Abedi et al. An h-adaptive spacetime-discontinuous Galerkin method for linear elastodynamics
Chacón et al. A charge-and energy-conserving implicit, electrostatic particle-in-cell algorithm on mapped computational meshes
CN116774292B (zh) 一种地震波走时确定方法、系统、电子设备及存储介质
CN109711072B (zh) 基于混合群智能算法的地震矢量波场数值模拟方法及系统
Le Bouteiller et al. A discontinuous Galerkin fast-sweeping eikonal solver for fast and accurate traveltime computation in 3D tilted anisotropic media
Johansen et al. Toward exascale earthquake ground motion simulations for near-fault engineering analysis
Rietmann et al. Newmark local time stepping on high-performance computing architectures
CN111638551A (zh) 地震初至波走时层析方法及装置
CN109684760B (zh) 基于随机搜索算法的弹性矢量波场数值模拟方法及系统
Hanson Techniques in computational stochastic dynamic programming
Forslund Fundamentals of plasma simulation
US20150134308A1 (en) Method and device for acquiring optimization coefficient, and related method and device for simulating wave field
CN106662665B (zh) 用于更快速的交错网格处理的重新排序的插值和卷积
Tang et al. Optimizing and auto-tuning iterative stencil loops for GPUs with the in-plane method
Potter et al. Ordered line integral methods for solving the eikonal equation
CN106646593B (zh) 一种跨节点并行的三维起伏地表声波正演模拟方法
Weinbub et al. Shared-memory parallelization of the fast marching method using an overlapping domain-decomposition approach
CN106570201A (zh) 粘弹介质数值模拟方法及系统
US20220129605A1 (en) Optimization device, optimization method, and computer-readable recording medium storing optimization program
CN108983290A (zh) 一种三维横向各向同性介质中旅行时确定方法及系统
Wolff et al. Asynchronous collision integrators: Explicit treatment of unilateral contact with friction and nodal restraints
Daisaka et al. Application of GRAPE9-MPX for high precision calculation in particle physics and performance results

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant