A terrain data processing method and device based on parallel search

Through the method of parallel search and adaptive filter matrix parameter update, the problems of low Moho surface solution accuracy and large computational complexity are solved, and efficient and accurate Moho surface solution is achieved.

CN118227942BActive Publication Date: 2025-09-30GUANGZHOU MARINE GEOLOGICAL SURVEY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410325826.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-21
Publication Date
2025-09-30
Estimated Expiration
2044-03-21

AI Technical Summary

Technical Problem

In the existing technology, the Moho surface solution has low accuracy and large computational complexity, and the simulated annealing search efficiency is low, resulting in the calculated results being rougher than the actual results.

Method used

A terrain data processing method based on parallel search is adopted, combined with simulated annealing method and adaptive update of filter matrix parameters. The Moho surface is solved by Parker-Oldenburg inversion method. Parallel computing and adaptive search strategy are used to improve the solution accuracy and efficiency.

Benefits of technology

The accuracy of Moho surface solution and computational search efficiency are improved, automatic parameter adjustment and adaptive update are ensured, and the accuracy of calculation results is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118227942B_ABST
    Figure CN118227942B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and device for processing terrain data based on parallel search. The method comprises: initializing target parameters for a target area; then performing a parallel search for target density difference and target depth using a simulated annealing method; using filter matrix parameters as variables, iteratively searching for the target filter matrix parameters using a parallel search strategy based on the target density difference and target depth; and obtaining the Moho depth of the target area using the Parker-Oldenburg inversion method based on the target density difference, target depth, target filter matrix parameters, and a gravity anomaly matrix. This embodiment of the present invention combines the simulated annealing method with an adaptive update method for filter matrix parameters, ensuring automatic parameter adjustment of all parameters. Parallel processing is also performed during the adaptive update process, ensuring Moho accuracy and improving computational search efficiency. The method is widely applicable in the field of data processing technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data processing, and in particular to a terrain data processing method and device based on parallel search. Background Art

[0002] Regarding the Moho surface, current technical solutions typically treat the parameters of the Parker-Oldenburg inversion as constants, resulting in poor solution accuracy. Existing approaches treat density differences and depth as a linear relationship, resulting in less accurate Moho surfaces derived from the Parker-Oldenburg inversion. Furthermore, existing solutions are computationally intensive, and simulated annealing searches are inefficient, ultimately resulting in results that are rougher than the true results. Summary of the Invention

[0003] The present invention aims to solve at least one of the technical problems in the related art to a certain extent. To this end, the present invention proposes a terrain data processing method and device based on parallel search, which can quickly solve the Moho surface.

[0004] In one aspect, an embodiment of the present invention provides a terrain data processing method based on parallel search, comprising:

[0005] Initialize the target parameters of the target area; the target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, end temperature and temperature decay rate;

[0006] The initialized density difference and depth are used as the first solution vector; the initial temperature is used as the target temperature;

[0007] Based on the Parker-Oldenburg inversion method, the first RMS value is obtained by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix;

[0008] Based on the first solution vector, a plurality of second solution vectors are generated in parallel through a preset search strategy;

[0009] Based on the Parker-Oldenburg inversion method, the second root mean square value corresponding to each second solution vector is obtained by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix; the smallest second root mean square value is used as the third root mean square value, and the second solution vector corresponding to the third root mean square value is used as the third solution vector;

[0010] When the first RMS value is less than the iterative optimal threshold, the target density difference and target depth are output according to the first solution vector; otherwise, the first RMS value and the third RMS value are compared;

[0011] When the third RMS value is less than the first RMS value, the third solution vector is used as the first solution vector, and the third RMS value is used as the first RMS value; the first iteration number is increased by 1; and the first iteration number is initialized to 0;

[0012] When the number of first iterations is less than or equal to the maximum number of random iterations, return to the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy. Until the number of first iterations exceeds the maximum number of random iterations, the target temperature is decayed using the temperature decay rate, and the decayed temperature is used as the target temperature.

[0013] When the target temperature is greater than or equal to the termination temperature, return to the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy until the target temperature is less than the termination temperature, and output the target density difference and target depth according to the first solution vector;

[0014] Based on the target density difference and target depth, the filter matrix parameters are used as variables and the target filter matrix parameters are obtained through iterative search using a parallel search strategy.

[0015] According to the target density difference, target depth, target filter matrix parameters and gravity anomaly matrix, the Moho depth of the target area is obtained by the Parker-Oldenburg inversion method.

[0016] Optionally, based on the Parker-Oldenburg inversion method, a first root mean square value is obtained by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix, including:

[0017] According to the first solution vector, the initialized filter matrix parameters and the gravity anomaly matrix, the first predicted depth matrix is ​​obtained by processing with the Parker-Oldenburg inversion method;

[0018] Adaptation processing is performed according to the first predicted depth matrix and the earthquake depth matrix to obtain a first root mean square value.

[0019] Optionally, performing fitness processing according to the first predicted depth matrix and the earthquake depth matrix to obtain a first root mean square value includes:

[0020] According to the first predicted depth matrix, matrix surface data is obtained by linear interpolation;

[0021] Traverse each element of the seismic depth matrix, and extract the depth data of the corresponding position in the matrix surface data according to the traversed elements;

[0022] A root mean square calculation is performed based on the difference between the depth data of each element and the depth data of the corresponding position in the matrix planar data to obtain a first root mean square value.

[0023] Optionally, the target parameter further includes a search step size; based on the first solution vector, a plurality of second solution vectors are generated in parallel by a preset search strategy, including:

[0024] The first solution vector is transmitted to a plurality of computing units respectively, and a plurality of second solution vectors are generated in parallel by executing a preset search strategy by the computing units;

[0025] The preset search strategy executed by the computing unit includes at least one of the following:

[0026] Based on the random number and search step of the normal distribution, the first solution vector is searched successively by single variables to obtain the second solution vector;

[0027] Based on a preset range of random values ​​and a search step, a multi-variable simultaneous search is performed on the first solution vector to obtain a second solution vector.

[0028] Optionally, the target parameter further includes a search range minimum value and a search range maximum value; based on a random value in a preset range and a search step size, a multi-variable simultaneous search is performed on the first solution vector to obtain a second solution vector, including:

[0029] Obtain a second solution vector based on the sum of the product of the random value and the search step length and the first solution vector;

[0030] When the second solution vector is larger than the maximum value of the search range, the second solution vector is updated by subtracting the product of the random value generated separately and the search step length from the second solution vector;

[0031] When the second solution vector is smaller than the minimum value of the search range, the second solution vector is updated by adding the product of the additionally generated random value and the search step length to the second solution vector.

[0032] Optionally, the target parameter further includes a probability threshold; when the third root mean square value is greater than the first root mean square value, the method further includes:

[0033] The difference between the first root mean square value and the second root mean square value is divided by the target temperature and the result is calculated using an exponential function to obtain the target probability corresponding to each second root mean square value;

[0034] When the target probability is greater than the probability threshold, the second solution vector corresponding to the target probability is used as an alternative vector;

[0035] When there are multiple candidate vectors, the difference between the second RMS value corresponding to each candidate vector and the iterative optimal threshold is calculated respectively, and the candidate vector corresponding to the smallest difference is used as the first solution vector, and the second RMS value corresponding to the candidate vector is used as the first RMS value.

[0036] Optionally, the target parameters further include an iterative optimal threshold, a filter matrix search unidirectional iteration threshold, a filter matrix search multi-directional iteration threshold, a second iteration number, and a third iteration number. Based on the target density difference and the target depth, the filter matrix parameters are used as variables and the target filter matrix parameters are obtained by iterative search through a parallel search strategy, including:

[0037] The filter matrix parameters are used as the first filter matrix parameters; according to the target density difference and target depth, the first filter matrix parameters and the gravity anomaly matrix, the second predicted depth matrix is ​​obtained by processing through the Parker-Oldenburg inversion method;

[0038] Performing fitness processing according to the second predicted depth matrix and the earthquake depth matrix to obtain a fourth root mean square value;

[0039] The first filter matrix parameters are transmitted to a plurality of calculation units respectively, and the calculation units perform a single variable search on the first filter matrix parameters based on the target search direction to generate a plurality of second filter matrix parameters in parallel;

[0040] Based on the Parker-Oldenburg inversion method, the fifth root mean square value corresponding to each second filter matrix parameter is obtained by processing the second filter matrix parameters, target density difference, target depth, gravity anomaly matrix and seismic depth matrix; the smallest fifth root mean square value is used as the sixth root mean square value;

[0041] When the sixth RMS value is less than the fourth RMS value, the second filter matrix parameter corresponding to the sixth RMS value is used as the first filter matrix parameter, and the sixth RMS value is used as the fourth RMS value; the second iteration number is increased by 1; and the second iteration number and the third iteration number are both initialized to 0;

[0042] When the fourth root mean square value is less than the iterative optimal threshold, outputting target filter matrix parameters according to the first filter matrix parameters;

[0043] Return to the step of transmitting the first filter matrix parameters to multiple calculation units respectively, performing a single variable search on the first filter matrix parameters based on the target search direction by the calculation units, and generating multiple second filter matrix parameters in parallel, until the second iteration number is greater than the filter matrix search single-direction iteration threshold, adjusting the target search direction based on a preset search order, adding 1 to the third iteration number, and then returning to the step of transmitting the first filter matrix parameters to multiple calculation units respectively, performing a single variable search on the first filter matrix parameters based on the target search direction by the calculation units, and generating multiple second filter matrix parameters in parallel, until the third iteration number is greater than the filter matrix search multi-directional iteration threshold, and outputting the target filter matrix parameters according to the first filter matrix parameters.

[0044] On the other hand, an embodiment of the present invention provides a terrain data processing device based on parallel search, comprising:

[0045] The first module is used to initialize the target parameters of the target area; the target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, end temperature and temperature decay rate;

[0046] The second module is used to use the initialized density difference and depth as the first solution vector; and the initial temperature as the target temperature;

[0047] The third module is used to obtain the first root mean square value based on the Parker-Oldenburg inversion method by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix;

[0048] A fourth module is configured to generate a plurality of second solution vectors in parallel based on the first solution vector by using a preset search strategy;

[0049] The fifth module is used to obtain the second root mean square value corresponding to each second solution vector by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix based on the Parker-Oldenburg inversion method; the smallest second root mean square value is used as the third root mean square value, and the second solution vector corresponding to the third root mean square value is used as the third solution vector;

[0050] A sixth module is configured to output a target density difference and a target depth according to the first solution vector when the first root mean square value is less than the iterative optimal threshold; otherwise, compare the first root mean square value with the third root mean square value;

[0051] A seventh module is configured to, when the third root mean square value is less than the first root mean square value, use the third solution vector as the first solution vector and the third root mean square value as the first root mean square value; increase the first iteration number by 1; and initialize the first iteration number to 0;

[0052] An eighth module is configured to, when the first iteration number is less than or equal to the maximum number of random iterations, return to the fourth module until the first iteration number is greater than the maximum number of random iterations, attenuate the target temperature using the temperature attenuation rate, and use the attenuated temperature as the target temperature;

[0053] A ninth module is configured to return to the fourth module when the target temperature is greater than or equal to the termination temperature, and output the target density difference and target depth according to the first solution vector until the target temperature is less than the termination temperature;

[0054] The tenth module is used to obtain the target filter matrix parameters through iterative search using a parallel search strategy based on the target density difference and the target depth, taking the filter matrix parameters as variables;

[0055] The eleventh module is used to obtain the Moho depth of the target area through the Parker-Oldenburg inversion method based on the target density difference, target depth, target filter matrix parameters and gravity anomaly matrix.

[0056] Optionally, the target parameter further includes a probability threshold; when the third root mean square value is greater than the first root mean square value, the apparatus further includes:

[0057] A twelfth module is configured to calculate the target probability corresponding to each second root mean square value by using an exponential function to calculate the result of dividing the difference between the first root mean square value and the second root mean square value by the target temperature;

[0058] The thirteenth module is configured to use the second solution vector corresponding to the target probability as an alternative vector when the target probability is greater than the probability threshold;

[0059] The fourteenth module is used to calculate the difference between the second root mean square value corresponding to each alternative vector and the iterative optimal threshold when there are multiple alternative vectors, and use the alternative vector corresponding to the smallest difference as the first solution vector, and use the second root mean square value corresponding to the alternative vector as the first root mean square value.

[0060] On the other hand, an embodiment of the present invention provides an electronic device, including: a processor and a memory; the memory is used to store programs; the processor executes the program to implement the above-mentioned terrain data processing method based on parallel search.

[0061] On the other hand, an embodiment of the present invention provides a computer storage medium storing a program executable by a processor. When the program is executed by the processor, it is used to implement the terrain data processing method based on parallel search.

[0062] The embodiment of the present invention initializes the target parameters of the target area; the target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, termination temperature and temperature decay rate; the initialized density difference and depth are used as the first solution vector; the initial temperature is used as the target temperature; based on the Parker-Oldenburg inversion method, a first root mean square value is obtained by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix; based on the first solution vector, multiple second solution vectors are generated in parallel through a preset search strategy; based on the Parker-Oldenburg inversion method, a second root mean square value corresponding to each second solution vector is obtained by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix; the smallest second root mean square value is used as the third root mean square value, and the second solution vector corresponding to the third root mean square value is used as the third solution vector; when the first root mean square value is less than the iterative optimal threshold, the target density difference and target depth are output according to the first solution vector; otherwise, the first root mean square value and The third root mean square value is used for comparison; when the third root mean square value is less than the first root mean square value, the third solution vector is used as the first solution vector, and the third root mean square value is used as the first root mean square value; the first iteration number is increased by 1; the first iteration number is initialized to 0; when the first iteration number is less than or equal to the maximum number of random iterations, the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy is returned until the first iteration number is greater than the maximum number of random iterations, the target temperature is attenuated using the temperature attenuation rate, and the attenuated temperature is used as the target temperature; when the target temperature is greater than or equal to the termination temperature, the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy is returned until the target temperature is less than the termination temperature, and the target density difference and target depth are output based on the first solution vector; based on the target density difference and target depth, the filter matrix parameters are used as variables and the target filter matrix parameters are iteratively searched using a parallel search strategy; based on the target density difference, target depth, target filter matrix parameters, and gravity anomaly matrix, the Moho depth of the target area is obtained by processing using the Parker-Oldenburg inversion method. The embodiment of the present invention combines a simulated annealing method with a filter matrix parameter adaptive update method to ensure automatic parameter adjustment of all parameters. At the same time, parallel processing is performed during the adaptive update process, thereby ensuring the accuracy of the Moho surface and improving the computational search efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the technical solution of the present invention and do not constitute a limitation to the technical solution of the present invention.

[0064] Figure 1 This is a schematic diagram of an implementation environment for Moho surface solution provided by an embodiment of the present invention;

[0065] Figure 2 1 is a flow chart of a terrain data processing method based on parallel search provided by an embodiment of the present invention;

[0066] Figure 3 A schematic diagram of the overall flow of a terrain data processing method based on parallel search provided by an embodiment of the present invention;

[0067] Figure 4 A schematic diagram of a simulated annealing search process provided by an embodiment of the present invention;

[0068] Figure 5 A schematic diagram of a parallel computing search process provided by an embodiment of the present invention;

[0069] Figure 6 A schematic diagram of a process for probabilistically selecting and accepting a difference vector according to an embodiment of the present invention;

[0070] Figure 7 A schematic diagram of a flow chart of a parallel adaptive search method for filter matrix parameters provided by an embodiment of the present invention;

[0071] Figure 8 A schematic diagram of a parallel calculation process for filter matrix parameters provided by an embodiment of the present invention;

[0072] Figure 9 A schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0073] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0074] It should be noted that although the system diagrams illustrate functional module divisions and the flowcharts illustrate a logical sequence, in certain circumstances, the steps shown or described may be performed in a sequence that differs from the module divisions in the system or the sequence in the flowcharts. The terms "first / S100," "second / S200," and the like in the specification, claims, and drawings are used to distinguish similar objects and are not necessarily intended to describe a specific sequence or precedence.

[0075] References herein to "embodiments" mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present invention. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute a separate or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0076] To facilitate the technical solution of the present invention, the technical principles that may be cited in the embodiments of the present invention are first explained:

[0077] Moho Discontinuity: The Mohorovicic Discontinuity, commonly referred to as the Moho or simply the M-discontinuity, is the boundary between the Earth's crust and mantle. It is an abrupt boundary, marking a change in chemical composition and crystal structure. Depth maps of the Mohorovicicic Discontinuity are of great significance for studying crustal structure, crustal equilibrium, and natural seismic activity. For oil exploration, the gravity effects of the Moho are often removed as deep influences.

[0078] Heuristic Search: Also known as informed search, this method uses heuristic information about a problem to guide the search, reducing the search scope and complexity. This process of using heuristic information is called heuristic search. For example, simulated annealing is a classic heuristic search algorithm.

[0079] Simulated annealing, derived from solid annealing, is a probability-based algorithm that heats a solid to a sufficient temperature and then slowly cools it. During heating, the particles within the solid become disordered as the temperature rises, increasing its internal energy. However, as the temperature gradually cools, the particles gradually become ordered, reaching equilibrium at each temperature. Simulated annealing is a general optimization algorithm that theoretically exhibits probabilistic global optimization performance and has been widely used in engineering fields such as VLSI, production scheduling, and control engineering. By imposing a time-varying, ultimately zero-approaching probability jump in the search process, the simulated annealing algorithm effectively avoids local minima and ultimately approaches a global optimum.

[0080] Parker-Oldenburg inversion method: It is a frequency domain density interface iterative inversion method proposed by Oldenburg based on the Parker formula. Due to the advantage of fast calculation, its application has been rapidly developed. However, there is a downward extension factor in the formula, which causes the formula to have oscillation of high-frequency signals during the inversion iteration process, and as the inversion depth increases, this phenomenon becomes more obvious, seriously affecting the convergence of the inversion result. To solve this problem, a low-pass filter is usually applied in the inversion process to eliminate the high-frequency oscillation phenomenon. The Parker-Oldenburg inversion method is one of the important methods for calculating the Moho interface and is also the core starting point of the present invention. At present, the input parameters of this method (filter target parameters, density difference, depth) and so on are designed according to constants based on experience, but in fact, there is still room for optimization and exploration of these parameters. The present invention proposes a terrain data processing method based on parallel search based on improved simulated annealing and Parker-Oldenburg inversion. The optimal parameters are found by improved simulated annealing, and the optimal filter matrix parameters are found by adaptive update method of filter matrix parameters. With the help of Parker-Oldenburg inversion method, a more accurate Moho surface is obtained.

[0081] Among them, the Parker-Oldenburg inversion method can be regarded as a black box. The input is parameters (density difference, depth, gravity anomaly matrix GravityMat, etc.), and the output is the corresponding (longitude, latitude, depth) triples composed of the predicted depth matrix PredictDepthMat, that is, the Moho surface topography.

[0082] Here we briefly introduce the Parker-Oldenburg inversion method. Formula 1 is the Parker inversion method, and Formula 2 is the Oldenburg inversion method optimized based on Formula 1, namely the Parker-Oldenburg inversion method. Formula 3 is the filter formula used in the Parker-Oldenburg inversion method. These three formulas are provided in existing papers and are not the core of this invention. The core of this invention is the proposed parameter tuning method for these formulas.

[0083]

[0084]

[0085]

[0086] Here F[] is the two-dimensional Fourier transform, F -1[] is the inverse 2D Fourier numbering, g is the gravity anomaly matrix GravityMat, h is the predicted depth matrix PredictDepthMat, G is the gravitational constant, ρ is the density difference, z0 is the depth, n is the number of iterations, and k is the wavenumber field norm. From the perspective of this invention, the Parker-Oldenburg algorithm can be considered a black box.

[0087] RMS: Root Mean Square (RMS), which is the result of taking the square root of the sum of the squares of N items divided by N. The formula is as follows:

[0088]

[0089] Computing unit: For this purpose, the term "computing unit" primarily refers to the smallest execution unit. For example, for a CPU, the smallest computing unit is a thread. Generally, the number of cores in a processor is the maximum number of available computing units. For GPUs (primarily Nvidia GPUs), the smallest computing unit is a SIMT hyperthread (Single Instruction, Multiple Threads).

[0090] It is understandable that the terrain data processing method based on parallel search provided in the embodiment of the present invention can be applied to any computer device with data processing and computing capabilities, and this computer device can be various terminals or servers. When the computer device in the embodiment is a server, the server is an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Optionally, the terminal is a smart phone, tablet computer, laptop computer, desktop computer, etc., but is not limited to this.

[0091] To facilitate understanding of the technical solutions of the present invention, the following are first explained regarding the technical features that may appear in the embodiments of the present invention:

[0092] like Figure 1 FIG. 1 is a schematic diagram of an implementation environment provided by an embodiment of the invention. Figure 1 , the implementation environment includes at least one terminal 102 and a server 101. The terminal 102 and the server 101 can be connected to the network in a wireless or wired manner to complete data transmission and exchange.

[0093] Server 101 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), as well as big data and artificial intelligence platforms.

[0094] In addition, server 101 can also be a node server in a blockchain network. Blockchain is a new application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, and encryption algorithm.

[0095] The terminal 102 may be a smart phone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, etc., but is not limited thereto. The terminal 102 and the server 101 may be connected directly or indirectly via wired or wireless communication, which is not limited in this embodiment of the present invention.

[0096] Based on the example Figure 1 In the implementation environment shown, an embodiment of the present invention provides a terrain data processing method based on parallel search. The following is explained using the example of the terrain data processing method based on parallel search being applied to the server 101. It can be understood that the terrain data processing method based on parallel search can also be applied to the terminal 102.

[0097] Reference Figure 2 , Figure 2 The flowchart of the terrain data processing method based on parallel search applied to the server provided by the embodiment of the present invention is provided. The execution subject of the terrain data processing method based on parallel search can be any of the aforementioned computer devices (including servers or terminals). Figure 2 , the method comprises the following steps:

[0098] S100, initializing target parameters of the target area;

[0099] It should be noted that the target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, end temperature and temperature decay rate;

[0100] For example, in some specific embodiments, the initialized parameters mainly include two parts: parameters of the improved simulated annealing method and parameters of the Parker-Oldenburg inversion method used in the embodiments of the present invention:

[0101] There are two variables in the improved simulated annealing method, namely contrast (physical meaning: density difference, unit g / cm 3 ) and depth (physical meaning is depth, unit is km). The parameters of the improved simulated annealing method are:

[0102] The vector varMinList that searches for the minimum value of the vector threshold range has a vector size that is equal to the number of search variables. In this method, there are two vectors, contrast and depth. For example, if varMinList is [0.38, 40], the minimum value of contrast is 0.38 and the minimum value of depth is 40.

[0103] The vector varMaxList that searches for the maximum value of the vector threshold range has a vector size that is equal to the number of search variables. In this method, there are two vectors, contrast and depth. For example, if varMaxList is [0.58, 60], the maximum value of contrast is 0.58 and the maximum value of depth is 60.

[0104] The initial temperature initTemp is set according to the requirements and the default value is 100.

[0105] Final temperature finalTemp, this value is determined according to the requirements and the default value is 1.

[0106] The temperature decay rate tempReduceRate has a value range of [0, 1]. This value is determined according to the requirements and the default value is 0.99

[0107] The maximum number of random iterations maxMarkovCnt is the maximum number of inner loop iterations. This value is determined according to the requirements and is 500 by default.

[0108] The search step size searchStep can also be understood as the accuracy of solving the vector contrast and depth. This value is determined according to the requirements and the default value is 0.01.

[0109] Search step length searchStepReduceRate, this is the searchStep attenuation rate, the default is 0.5, where the calculation formula of searchStep is: searchStep = searchStep * searchStepReduceRate.

[0110] Iterate the optimal threshold minIterDelt. If a solution vector less than or equal to minIterDelt is found, it means that the optimal solution has been found, and the entire simulated annealing search process ends directly.

[0111] The filter matrix search single-direction iteration threshold maxOneSize, that is, the maximum number of iterations in a single variable direction for adaptive adjustment of the filter matrix parameters, is 100 by default.

[0112] The filter matrix search multi-directional iteration threshold maxAllSize, that is, the maximum number of iterations for switching search directions for adaptive adjustment of the filter matrix parameters, is 3 by default.

[0113] The filter matrix parameter search step size searchFilterStep represents the accuracy of solving the frequency threshold WH, frequency threshold SH, and window function threshold truncation. This value is determined according to requirements and the default value is 0.001.

[0114] The main parameters of the Parker-Oldenburg inversion method are as follows:

[0115] Density difference contrast, unit g / cm 3 , this is one of the variables searched with the help of improved simulated annealing, that is, the variable is searched by the improved simulated annealing method.

[0116] Depth depth, in km, is one of the variables searched with the help of improved simulated annealing, that is, the variable is searched by the improved simulated annealing method.

[0117] GravityMat: It is a matrix composed of (longitude, latitude, gravity outlier) triplets, which are gravity outlier parameters for a specific area, generally obtained from seismic measurements, satellite measurements, or other observations.

[0118] Seismic depth matrix SemisMat: It is a matrix composed of (longitude, latitude, depth) triplets, which are the depth parameters of a specific area, generally observed by seismic measurements, satellite measurements or other means.

[0119] The Parker-Oldenburg inversion method iteration threshold criterio, that is, the Parker-Oldenburg inversion method iteration rms threshold, is generally a constant, and the default value is 0.1.

[0120] Frequency threshold WH: low-pass filter threshold. The initial value is obtained based on experience, with a default value of 0.1. The optimal value is obtained by the filter matrix parameter adaptive search method.

[0121] Frequency threshold SH: high-pass filter threshold. The initial value is obtained based on experience, with a default value of 0.12. The optimal value is obtained by the adaptive search method of the filter matrix parameters.

[0122] Window function threshold truncation: A window function is a signal sampling weighting function used in signal processing. This parameter affects the generation of the window function and functions similarly to the filter threshold. The initial value is empirically derived and defaults to 0.1. The optimal value is determined by adaptive search of the filter matrix parameters.

[0123] S200, using the initialized density difference and depth as the first solution vector; using the initial temperature as the target temperature;

[0124] S300, based on the Parker-Oldenburg inversion method, obtaining a first root mean square value by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix;

[0125] It should be noted that, based on the Parker-Oldenburg inversion method, the first root mean square value is obtained by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix, which may include: obtaining the first predicted depth matrix by processing the first solution vector, the initialized filter matrix parameters and the gravity anomaly matrix through the Parker-Oldenburg inversion method; performing fitness processing on the first predicted depth matrix and the seismic depth matrix to obtain the first root mean square value.

[0126] Among them, in some embodiments, fitness processing is performed based on the first predicted depth matrix and the seismic depth matrix to obtain a first root mean square value, which may include: obtaining matrix surface data through linear interpolation based on the first predicted depth matrix; traversing each element of the seismic depth matrix, and extracting depth data of corresponding positions in the matrix surface data based on the traversed elements; performing root mean square calculation based on the difference between the depth data of each element and the depth data of the corresponding position in the matrix surface data to obtain the first root mean square value.

[0127] For example, in some specific embodiments, RMS is calculated based on the obtained PredictDepthMat (predicted depth matrix) and the seismic depth matrix SemisMat. Specifically as follows:

[0128] PredictDepthMat is a matrix of point data, which is converted to matrix surface data through linear interpolation. Next, each element (longitude, latitude, depth A) of the seismic depth matrix SemisMat is traversed. Based on the longitude and latitude of the current element, the corresponding depth B is calculated in PredictDepthMat. This process is repeated until the number of matrices containing the same number of Seismic Depth Matrices as SemisMat is obtained. The RMS of depths A and B, which is also the fitness value, is calculated.

[0129] The smaller the RMS, the closer the PredictDepthMat is to the seismic depth matrix SemisMat, and the more accurately the Moho topography is portrayed. The larger the RMS, the further the PredictDepthMat is from the seismic depth matrix SemisMat, and the rougher the Moho topography is portrayed.

[0130] S400, based on the first solution vector, generating multiple second solution vectors in parallel through a preset search strategy;

[0131] It should be noted that the target parameters also include a search step size; in some embodiments, step S400 may include: transmitting the first solution vector to multiple computing units respectively, and generating multiple second solution vectors in parallel by executing a preset search strategy through the computing units; wherein the preset search strategy executed by the computing units includes at least one of the following: performing a single-variable successive search on the first solution vector based on a normally distributed random number and a search step size to obtain a second solution vector; performing a multi-variable simultaneous search on the first solution vector based on a preset range of random values ​​and a search step size to obtain a second solution vector.

[0132] In some embodiments, the target parameters also include a minimum search range value (i.e., varMinList) and a maximum search range value (i.e., varMaxList); based on a random value and a search step in a preset range, a multi-variable simultaneous search is performed on the first solution vector to obtain a second solution vector, which may include: obtaining the second solution vector based on the sum of the product of the random value and the search step and the first solution vector; wherein, when the second solution vector is greater than the maximum search range value, the second solution vector is updated by subtracting the product of the additionally generated random value and the search step from the second solution vector; when the second solution vector is less than the minimum search range value, the second solution vector is updated by adding the product of the additionally generated random value and the search step to the second solution vector.

[0133] For example, in some specific embodiments, the initial solution vector initVar is the initial value of the density difference contrast and depth depth (i.e., initVar = [contrast, depth], initVar[0] is contrast, initVar[1] is depth), which is essentially the starting point of the search. The initial solution vector can be customized or randomly selected. The search range of contrast and depth is within varMinList and varMaxList. The current solution vector (i.e., the first solution vector) curVar is equal to the initial solution vector initVar, and the current solution vector curVar is the optimal vector obtained in each search. How to generate a new solution vector in parallel with the help of multiple computing units based on the current solution vector? The core idea is to generate a new solution vector by randomly perturbing near the current solution vector. The new solution vector must be within the range of varMinList and varMaxList. This method provides two strategies for parallel execution, thereby improving search efficiency.

[0134] Strategy 1: Single variable sequential search, that is, for N search variables, only one is perturbed, and the other N-1 variables remain unchanged (in the simulated annealing search process, N is equal to 2). The sequential search here means that the first search is in the direction of curVar(0) (i.e., contrast), the second search is in the direction of curVar(1) (i.e., depth), the third search is in the direction of curVar(0) (i.e., contrast), and the fourth search is in the direction of curVar(1) (i.e., depth). The perturbation formula is as follows: newVar(v) = curVar(v) + tNowSearchStep*(varMaxList(v) - varMinList(v))*normal(0,1)

[0135] Where newVar represents the new solution vector, and tNowSearchStep is the current search step, which is adaptively adjusted based on the search step. A detailed adaptive adjustment strategy is provided below. varMaxList(v) represents the maximum threshold in the v direction. Similarly, varMinList(v) represents the minimum threshold in the v direction. normal(0,1) represents a normal distribution with a mean of 0 and a standard deviation of 1. The resulting random numbers adhere to a normal distribution, thus ensuring search fairness.

[0136] Strategy 2: Simultaneous search of multiple variables, that is, perturb each of the N search variables one by one (in this method, N equals 2). The meaning of simultaneous search here is to perform searches in N directions of curVar. The perturbation formula is as follows: newVar(v) = curVar(v) + tNowSearchStep * random(), if newVar(v) > varMaxList(v), then newVar(v) = varMaxList(v) - tNowSearchStep * random(0,1), if newVar(v) < varMinList(v), then newVar(v) = varMinList(v) + tNowSearchStep * random(0,1), where random() represents a random value with an undetermined range, and random(0,1) represents a random value in [0,1].

[0137] Generally speaking, the maximum number of concurrent operations per single time maxParaCnt >= 8. Through a large number of tests on existing work, it is found that Strategy 1 performs well overall, but in some cases, it is prone to abnormal situations of falling into local optimal solutions. For this reason, this invention introduces Strategy 2. The data random idea of Strategy 1 is based on the normal distribution of 0-1, while Strategy 2 gives a certain chance to jump out of the current search interval, that is, based on a pure random idea. The way of using the strategy and generating new vectors is different from existing work. Moreover, this paper proposes that multiple computing units execute the above process in parallel. Currently, 75% of the computing units execute Strategy 1 and 25% of the computing units execute Strategy 2 (this ratio can be configured). The parallel execution of multiple strategies not only ensures the efficiency of local search but also ensures a certain ability to jump out of local solutions. By combining the two, it ultimately not only improves the computing efficiency but also improves the search and solution efficiency.

[0138] S500. Based on the Parker-Oldenburg inversion method, process the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix to obtain the second root mean square value corresponding to each second solution vector; take the smallest second root mean square value as the third root mean square value, and take the second solution vector corresponding to the third root mean square value as the third solution vector;

[0139] It should be noted that the process principle of processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix to obtain the second root mean square value corresponding to each second solution vector based on the Parker-Oldenburg inversion method is similar to the principle of S300 mentioned above and will not be elaborated further.

[0140] S600: When the first RMS value is less than the iterative optimal threshold, output the target density difference and the target depth according to the first solution vector; otherwise, compare the first RMS value with the third RMS value;

[0141] S700, when the third RMS value is less than the first RMS value, use the third solution vector as the first solution vector and the third RMS value as the first RMS value; increase the first iteration number by 1; and initialize the first iteration number to 0;

[0142] In some embodiments, the target parameter also includes a probability threshold; when the third root mean square value is greater than the first root mean square value, the method may further include: dividing the difference between the first root mean square value and the second root mean square value by the target temperature, and calculating the target probability corresponding to each second root mean square value through an exponential function; when the target probability is greater than the probability threshold, the second solution vector corresponding to the target probability is used as an alternative vector; when there are multiple alternative vectors, the difference between the second root mean square value corresponding to each alternative vector and the iterative optimal threshold is calculated respectively, and the alternative vector corresponding to the smallest difference is used as the first solution vector, and the second root mean square value corresponding to the alternative vector is used as the first root mean square value.

[0143] Specifically, let's explain why a certain probability is required to accept poor vectors: The simulated annealing algorithm is a heuristic search algorithm. To avoid falling into a local optimum, it uses a certain random probability to jump out of the current search range. This is why it accepts poor-valued vectors with a certain probability. The calculation of this probability is related to the current temperature tNowTemp. Unlike existing work, when faced with multiple poor-valued vectors, this invention proposes a probability + priority selection scheme, which is also the core of the invention.

[0144] S800: When the number of first iterations is less than or equal to the maximum number of random iterations, return to the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy, until the number of first iterations exceeds the maximum number of random iterations, decay the target temperature using a temperature decay rate, and use the decayed temperature as the target temperature;

[0145] S900: When the target temperature is greater than or equal to the termination temperature, return to the step of generating multiple second solution vectors in parallel using a preset search strategy based on the first solution vector until the target temperature is less than the termination temperature, and output the target density difference and target depth according to the first solution vector;

[0146] S1000, based on the target density difference and the target depth, using the filter matrix parameters as variables, and iteratively searching through a parallel search strategy to obtain the target filter matrix parameters;

[0147] It should be noted that the target parameters also include an iterative optimal threshold, a filter matrix search unidirectional iteration threshold, a filter matrix search multi-directional iteration threshold, a second iteration number, and a third iteration number. In some embodiments, step S1000 may include:

[0148] S1001, using the filter matrix parameters as the first filter matrix parameters; obtaining a second predicted depth matrix by using the Parker-Oldenburg inversion method according to the target density difference and target depth, the first filter matrix parameters, and the gravity anomaly matrix;

[0149] S1002, performing fitness processing according to the second predicted depth matrix and the earthquake depth matrix to obtain a fourth root mean square value;

[0150] S1003, transmitting the first filter matrix parameters to multiple calculation units respectively, performing single variable search on the first filter matrix parameters based on the target search direction by the calculation units, and generating multiple second filter matrix parameters in parallel;

[0151] For example, in some specific embodiments, the core idea of ​​generating a new parameter vector is to add disturbances, and the strategy is to search single variables one by one, that is, for the N search variables, only one is disturbed, and the other N-1 variables remain unchanged (in the filter matrix parameter parallel adaptive search method, N is equal to 3). Preferably, it is recommended to use this strategy here and not start other strategies. The reason is that the three variables WH, SH, and truncation are not completely independent, and there are mutual influences among these three. Therefore, the idea of ​​controlling variables is adopted, that is, searching single variables one by one. This is consistent with the meaning of the improved simulated annealing method. When facing the three variables WH, SH, and truncation, only one is disturbed at a time, and the other two remain unchanged. The default order is truncation first, then SH, and finally WH.

[0152] S1004. Based on the Parker-Oldenburg inversion method, obtain a fifth root mean square value corresponding to each second filter matrix parameter by processing the second filter matrix parameters, the target density difference, the target depth, the gravity anomaly matrix, and the seismic depth matrix; and use the smallest fifth root mean square value as the sixth root mean square value.

[0153] S1005. When the sixth RMS value is less than the fourth RMS value, use the second filter matrix parameters corresponding to the sixth RMS value as the first filter matrix parameters, and use the sixth RMS value as the fourth RMS value; increase the second iteration number by 1; and initialize the second iteration number and the third iteration number to 0.

[0154] S1006. When the fourth root mean square value is less than the iterative optimal threshold, output target filter matrix parameters according to the first filter matrix parameters;

[0155] S1007. Return the step of separately transmitting the first filter matrix parameters to multiple computing units, and through the computing units, performing univariate search on the first filter matrix parameters based on the target search direction to generate multiple second filter matrix parameters in parallel, until the second iteration count is greater than the filter matrix search single-direction iteration threshold, adjusting the target search direction based on the preset search order, incrementing the third iteration count by 1, and then returning the step of separately transmitting the first filter matrix parameters to multiple computing units, and through the computing units, performing univariate search on the first filter matrix parameters based on the target search direction to generate multiple second filter matrix parameters in parallel, until the third iteration count is greater than the filter matrix search multi-direction iteration threshold, and outputting the target filter matrix parameters according to the first filter matrix parameters.

[0156] It should be noted that after the parallel adaptive update of the filter matrix parameters, RMS is obtained. RMS is compared with the iteration optimal threshold minIterDelt. If RMS < minIterDelt, it means that the optimal WH, SH, and truncation are found, and the target filter matrix parameters are directly output. If RMS > minIterDelt, continue the parallel adaptive update of the filter matrix parameters, return to step S100 to reinitialize the parameters and execute the previous process.

[0157] S1100. According to the target density difference, target depth, target filter matrix parameters, and gravity anomaly matrix, process through the Parker-Oldenburg inversion method to obtain the Moho depth of the target area.

[0158] To explain the principle of the technical solution of the present invention in detail, the overall process of the present invention will be described below with some specific embodiments. It is easy to understand that the following is an explanation of the technical principle of the present invention and should not be regarded as a limitation of the present invention.

[0159] The present invention proposes a parallel Moho solution method based on improved simulated annealing and Parker-Oldenburg inversion. The core idea is to isolate the data and calculations of the existing algorithm and then schedule and allocate them to multiple computing units for parallel execution, which not only improves the computing efficiency but also increases the possibility of finding the optimal solution.

[0160] In view of this, the embodiments of the present invention provide a Moho solution scheme, aiming to solve at least one problem existing in the prior art. As Figure 3 shown, the process of the embodiments of the present invention is as follows:

[0161] Step 1: Parameter initialization. The parameters mainly include two parts: the parameters of the improved simulated annealing method and the parameters of the Parker-Oldenburg inversion method, etc. The initialized parameters are shown in the explanation part of the parameter meanings in the previous step S100.

[0162] Step 2: The improved simulated annealing method searches for the optimal density difference and depth in parallel. The main criterion for optimization is the RMS value calculated by the Parker-Oldenburg inversion method. That is, the improved simulated annealing method searches for the optimal density difference contrast and depth depth through multiple computing units in parallel, and the search goal is to make the RMS value as small as possible. The details of this step will be introduced below.

[0163] Step 3: The Parker-Oldenburg inversion method calculates the Moho depth of the target area. The Parker-Oldenburg inversion method belongs to a classical inversion algorithm. Its input refers to the input values described in Step 1, and the output is the RMS value, which is the fitness function value.

[0164] Here is a brief introduction to the RMS calculation process: Based on the input values of a specific Parker-Oldenburg inversion method, after inversion calculation, a predicted depth matrix PredictDepthMat composed of corresponding (longitude, dimension, depth) triples will be obtained. Then, based on the predicted depth matrix PredictDepthMat, the RMS is calculated according to the seismic depth matrix SemisMat, which is the fitness function value. The process of calculating RMS: Traverse the seismic depth matrix SemisMat. For each element SemisMat[i][j] in the matrix, find the point in the predicted depth matrix PredictDepthMat that is closest to SemisMat[i][j], and then calculate the average depth AverDepth. Take the difference between it and SemisMat[i][j], and then calculate the corresponding RMS.

[0165] Step 4: Determine whether the optimal threshold is reached. Based on the optimal density difference contrast and depth depth searched by the improved simulated annealing method, then based on the density difference contrast and depth depth, use the Parker-Oldenburg inversion method to calculate the Moho depth of the target area and obtain the RMS. Compare the RMS with the iterative optimal threshold minIterDelt. If RMS < minIterDelt, it means that the optimal density difference contrast and depth depth have been searched, and go to Step 5. Otherwise, continue to search based on the improved simulated annealing method and go to Step 2, and repeat this process until the optimal solution is found.

[0166] Step 5: Parallel adaptive update of filter matrix parameters. The filter matrix parameters here refer to the frequency threshold WH, frequency threshold SH, and window function threshold truncation. The parallel adaptive update of filter matrix parameters means that after obtaining the optimal density difference contrast and depth depth, multiple computing units simultaneously search for the best frequency threshold WH, frequency threshold SH, and window function threshold truncation through an adaptive method, thereby ultimately ensuring the minimum RMS. Here is an explanation of a question: Why are WH, SH, and truncation not searched together with density difference contrast and depth depth? The reasons are as follows:

[0167] 1. The influence of density contrast and depth on the Parker-Oldenburg inversion results is much greater than that of the filter matrix parameters. The common practice of this method is to keep WH, SH, and truncation unchanged, and then adjust contrast and depth to obtain better results.

[0168] 2. WH, SH, and truncation are filter matrix parameters, meaning they perform frequency-based filtering on the calculated predicted depth matrix. This means that if the optimal contrast and depth are found, then fine-tuning WH, SH, and truncation can be used to calculate the optimal parameters.

[0169] 3. Contrast and depth are independent variables; physically speaking, they represent different meanings. However, WH, SH, and truncation are not completely independent; for example, WH must be less than SH.

[0170] The details of this step will be described later.

[0171] Step 6: Calculate the Moho depth of the target area using the Parker-Oldenburg inversion method. Based on the optimal density contrast and depth obtained in Step 4, and the optimal frequency threshold WH, frequency threshold SH, and window function threshold truncation obtained in Step 5, the Parker-Oldenburg inversion method is then used to calculate the Moho depth of the target area. This yields the optimal Moho depth of the target area.

[0172] Step 7: Determine whether the iteration parameter is reached. After the parallel adaptive update of the filtering matrix parameters, the RMS is obtained. The RMS is compared with the iteration optimal threshold minIterDelt. If RMS < minIterDelt, it means that the optimal WH, SH, and truncation are found, and go to Step 8. Otherwise, continue the parallel adaptive update of the filtering matrix parameters and go to Step 1. Repeat this process. The parallel adaptive update method of the filtering matrix parameters further drives the parallel search method based on the improved simulated annealing, ensuring the integrity of the overall search space, and further improving the efficiency and probability of finding the optimal parameters.

[0173] Step 8: Obtain the optimal Mohorovicic discontinuity depth of the target area. After multiple searches above, the optimal solution (density difference contrast, depth, filtering parameters, etc.) is finally obtained, and then the Mohorovicic discontinuity depth of the target area is generated.

[0174] The above steps are the overall process of the present invention. Refer to Figure 3 ; Among them, Steps 1 to 4 correspond to the simulated annealing search process, and Steps 5 to 7 are the parallel adaptive search method for the filtering matrix parameters. The detailed details of these two parts are referred to below.

[0175] In some preferred embodiments, the specific implementation manners of Steps S100 to S900 are referred to Figure 4 , that is, the implementation of the simulated annealing search process is as follows:

[0176] Step 1: Parameter initialization. This is the parameter initialization of the improved simulated annealing method, which has been described above and will not be elaborated here. Go to Step 2.

[0177] Step 2: Generate multiple solution vectors in parallel based on the initial solution vector. The initial solution vector initVar is the initial value of the density difference contrast and depth depth (i.e., initVar = [contrast, depth], initVar[0] is contrast, initVar[1] is depth). It is essentially the starting point of the search. The initial solution vector can be customized or randomly selected. The search range for contrast and depth is within varMinList and varMaxList. The current solution vector curVar is equal to the initial solution vector initVar. The current solution vector curVar is the optimal vector obtained in each search. How to generate a new solution vector in parallel based on the current solution vector using multiple computing units? The core idea is to generate a new solution vector by randomly perturbing the current solution vector. The new solution vector must be within the range of varMinList and varMaxList. This method provides two strategies for parallel execution to improve search efficiency. The strategy for generating a new solution vector has been described previously and will not be repeated here. Go to step 3.

[0178] Step 3: Use the new solution vectors to parallelly calculate the new fitness function value. Having obtained the new solution vectors in Step 2, the next step is to perform the Parker-Oldenburg inversion method on each solution vector and calculate the corresponding RMS. Go to Step 4.

[0179] Step 4: Check whether a solution vector satisfies the threshold. Now that multiple RMS values ​​have been obtained, assume that the RMS1 of newVar is the smallest, meaning that its corresponding solution vector newVar is the best in the current search range. Here, we check whether RMS1 is less than the iterative optimality threshold minIterDelt. If so, we proceed to step 12, indicating that the optimal solution has been found. Otherwise, we proceed to step 5.

[0180] Step 5: Check whether a better solution exists. Assume curRMS represents the fitness value of the optimal vector curVar obtained in the current search. If RMS1 is less than curRMS, the new solution vector newVar is better than the current solution vector curVar, and the process goes to step 6. Otherwise, the new solution vector is worse, and the process goes to step 7.

[0181] Step 6: Find a better solution and accept the new vector. If the new solution vector newVar is better than the current solution vector curVar, accept the new vector, curVar = newVar, curRMS = RMS1. The next search will then focus on the better vector. When accepting the new search vector, searchStep = searchStep * searchStepReduceRate. Go to step 9.

[0182] Steps 2 to 6 can refer to Figure 5 The present invention parallelizes completely independent calculation processes such as solution vector generation and fitness calculation, thereby improving search efficiency and solution efficiency.

[0183] Step 7: Accept the new vector with a certain probability. If newVar is inferior to the current solution vector curVar, this means that all the new solutions in parallel are inferior to the current solution curVar. Instead of completely discarding newVar, accept it with a certain probability. Given these multiple solutions, how do we choose? For each search vector, we calculate the corresponding probability: acceptBadProb[i] = exp((curRMS - RMS[i]) / tNowTemp).

[0184] Among them, curRMS represents the fitness function value corresponding to curVar; newVar[i] represents the solution vector responsible for the i-th computing unit; RMS[i] represents the fitness function value corresponding to newVar[i]; tNowTemp represents the current temperature, which is gradually decreasing. The detailed calculation method is described later; then a random probability randomProb (i.e., the probability threshold, in the range [0,1]) is randomly selected. If acceptBadProb[i] is greater than randomProb, then it is an alternative search vector. There may be multiple alternative vectors. At this time, the vector corresponding to the minimum RMS[i]-minIterDelt is selected. The reason for this setting is: the smaller RMS[i]-minIterDelt is, the closer the surface corresponding vector is to the expected value, which means that the corresponding solution vector performs better. If the new vector is finally selected, go to step 8, otherwise go to step 9.

[0185] Here's why a certain probability is required to accept poor vectors: The simulated annealing algorithm is a heuristic search algorithm. To avoid falling into a local optimum, it uses a certain random probability to jump out of the current search range. This is why it accepts poor-valued vectors with a certain probability. The calculation of this probability is related to the current temperature tNowTemp. Unlike existing work, when faced with multiple poor-valued vectors, this invention proposes a probability-based selection method, which is also the core of the invention.

[0186] At the same time, a specific example is given. Suppose there are a total of 4 computing units, and the corresponding vectors are newVar[0], newVar[1], newVar[2], and newVar[3]. The corresponding fitness values ​​are RMS[0] = 2.2, RMS[1] = 5.6, RMS[2] = 9.7, and RMS[3] = 13.2, curRMS is 1.1, and tNowTemp = 56.2. In this case, it is necessary to accept the new ground vector with a certain probability. Assume that the probability calculation formula can be obtained:

[0187] acceptBadProb[0]=exp((curRMS-RMS[0]) / tNowTemp)=0.98

[0188] acceptBadProb[1]=exp((curRMS-RMS[1]) / tNowTemp)=0.92

[0189] acceptBadProb[2]=exp((curRMS-RMS[2]) / tNowTemp)=0.85

[0190] acceptBadProb[3]=exp((curRMS-RMS[3]) / tNowTemp)=0.80

[0191] Then a random probability randomProb is chosen, assuming randomProb is 0.86. At this point, the vector with acceptBadProb[i] greater than randomProb is the candidate vector, that is, newVar[0] and newVar[1] are candidate vectors, and newVar[2] and newVar[3] are eliminated. Faced with multiple candidate vectors, the vector with the smallest RMS[i]-minIterDelt is selected. Since RMS[0]-minIterDelt=1.2 is less than RMS[1]-minIterDelt=4.2, newVar[0] is selected as the new search vector.

[0192] Step 8: Based on the probability, accept the current solution vector. Now accept the new vector, curVar = newVar, so the next search will be around the better vector. Because the accepted vector is not optimal, the search step size (searchStep) is not decayed. This differs from existing work and is done to leverage the parallelism of multiple computing units to increase the search range. Go to step 9.

[0193] Steps 7 to 8 correspond to Figure 6As shown, in simple terms, the parallel calculation of multiple computing units includes processes such as randomly generating new search vectors, calculating fitness values, selecting optimal vectors, and selecting and accepting difference vectors. Moreover, each step has been optimized compared to the existing serial approach, ultimately ensuring the improvement of search efficiency and solution accuracy.

[0194] Step 9: Check if the maximum number of iterations has been reached. Steps 2 to 8 are executed in a loop, with the number of iterations incremented by 1 each time until the maximum number of random iterations, maxMarkovCnt, is reached. If not, proceed to step 2; otherwise, proceed to step 10.

[0195] Step 10: Reduce the temperature. After the random iteration of the current temperature is complete, the temperature needs to be reduced. The reduction formula is: tNowTemp = tNowTemp * tempReduceRate, where the initial value of tNowTemp is the initial temperature initTemp. Go to step 11.

[0196] Step 11: Check whether the lower limit of the iteration temperature has been reached. Determine whether tNowTemp is less than the final temperature, finalTemp. If so, the iteration process ends and the process goes to step 12. Otherwise, the process goes to step 2.

[0197] Step 12: Find the optimal solution. This step yields the optimal solution for the entire search process. There are only two possible solutions: the optimal vector that satisfies the iterative optimal threshold minIterDelt, or the optimal vector obtained by searching the entire space.

[0198] For example, in some preferred embodiments, based on the target density difference and the target depth, the filter matrix parameters are used as variables, and the target filter matrix parameters are obtained by iterative search through a parallel search strategy. Figure 7 , that is, the implementation of the parallel adaptive search method for filter matrix parameters is as follows:

[0199] Based on the previous simulated annealing search process, the optimal density difference contrast and depth depth have been obtained. Then, it is necessary to use the filter matrix parameter parallel adaptive search method to find the best frequency threshold WH, frequency threshold SH, and window function threshold truncation, and then drive again. Figure 7 .

[0200] Step 1: Parameter initialization. There are three main search parameters:

[0201] Frequency threshold WH: The threshold of the low-pass filter. The initial value is obtained based on experience, with a default value of 0.1. The search interval is [0.0001, 0.4], and WH must be less than SH. The optimal value is obtained by the parallel adaptive search method of the filter matrix parameters.

[0202] Frequency threshold SH: The threshold of high-pass filtering. The initial value is obtained based on experience, with a default value of 0.12. The search interval is [0.0001, 0.4], and WH is less than SH. The optimal value is obtained by the parallel adaptive search method of the filter matrix parameters.

[0203] Window function threshold truncation: This parameter affects the generation of the window function and is functionally similar to the filter threshold. The initial value is empirically determined, with a default of 0.1 and a search interval of [0.1, 1]. The optimal value is obtained using a parallel adaptive search method for the filter matrix parameters.

[0204] Go to step 2.

[0205] Step 2: Perform a concurrent search based on the current optimal variable to obtain a batch of parameter vectors. The core idea behind generating new parameter vectors is to add perturbations. The strategy is to perform a sequential search of single variables. Specifically, for the N search variables, only one is perturbed, while the other N-1 variables remain unchanged (in the parallel adaptive search method for filter matrix parameters, N is equal to 3). This strategy is recommended over other strategies because the three variables WH, SH, and truncation are not completely independent and interact with each other. Therefore, the idea of ​​controlling variables, i.e., sequential search of single variables, is adopted. This is consistent with the improved simulated annealing method. For the three variables WH, SH, and truncation, only one is perturbed at a time, while the other two remain unchanged. The default order is truncation first, then SH, and finally WH.

[0206] If the current search direction is WH, then WH = WH + searchFilterStep * (MaxWH - MinWH) * normal(0,1). searchFilterStep represents the filter matrix parameter search step, MaxWH represents the maximum value of WH, MinWH represents the minimum value of WH, and normal(0,1) represents a normal distribution with mean 0 and standard deviation 1. The resulting random numbers adhere to a normal distribution, thus ensuring search fairness. If WH > SH, then WH = SH.

[0207] If the current search direction is SH, then SH = SH + searchFilterStep * (MaxSH - MinSH) * normal(0,1). searchFilterStep represents the filter matrix parameter search step, MaxSH represents the maximum value of SH, MinSH represents the minimum value of SH, and normal(0,1) represents a normal distribution with a mean of 0 and a standard deviation of 1. The resulting random numbers adhere to a normal distribution, thus ensuring search fairness. If WH > SH, then SH = WH.

[0208] If the current search direction is truncation, then truncation = truncation + searchFilterStep * (MaxTruncation - MinTruncation) * normal(0,1). Here, searchFilterStep represents the filter matrix parameter search step, MaxTruncation represents the maximum truncation value, MinTruncation represents the minimum truncation value, and normal(0,1) represents a normal distribution with a mean of 0 and a standard deviation of 1. The resulting random numbers follow a normal distribution, thus ensuring search fairness.

[0209] Based on the calculation formulas for each search variable, the present invention proposes using multiple computing units to execute the above process in parallel, that is, multiple computing units generate the parameter vector for the current search direction in parallel. For example, if the search vector is SH, and the current optimal vector is (WH = 0.01, SH = 0.012, truncation = 0.013), and there are four computing units, then based on the SH generation rule, the four corresponding new parameter vectors may be:

[0210] Parameter vector 0: (WH = 0.01, SH = 0.01119, truncation = 0.013)

[0211] Parameter vector 1: (WH = 0.01, SH = 0.0135, truncation = 0.013)

[0212] Parameter vector 2: (WH = 0.01, SH = 0.0147, truncation = 0.013)

[0213] Parameter vector 3: (WH = 0.01, SH = 0.018, truncation = 0.013)

[0214] If the search direction is other than the given one, the calculation process is similar. Go to step 3.

[0215] Step 3: Calculate the Moho depth in the target area using the Parker-Oldenburg inversion method in parallel using different parameter variables. Multiple computational units perform the Parker-Oldenburg inversion method in parallel to obtain the RMS. If there are four parameter vectors, four computational units perform the inversion in parallel to obtain the four corresponding RMS values, and then proceed to Step 4.

[0216] Step 4: Check whether a solution vector satisfies the threshold. Now that multiple RMS values ​​have been obtained, assume that the RMS1 of newPara is the smallest, meaning that its corresponding solution vector newPara is the best in the current search range. Here, we check whether RMS1 is less than the iterative optimality threshold minIterDelt. If so, we proceed to Step 7, indicating that the optimal solution has been found. Otherwise, we proceed to Step 5.

[0217] Steps 2 to 4 can refer to Figure 8 ,Compared to existing methods, the entire calculation process is ,executed in parallel with the help of multiple computing units, ,which improves the search and solution efficiency.

[0218] Step 5: Check if the upper limit of one-way iterations has been reached. Steps 2 to 4 are executed in a loop. The number of iterations increases by 1 each time until the filter matrix reaches the upper limit of the one-way iteration threshold maxOneSize. If not, go to step 2; otherwise, go to step 6.

[0219] Step 6: Check whether the multi-directional search limit has been reached. Steps 2 to 5 are executed iteratively. Each time the search direction is switched, the number of iterations increases by 1 until the filter matrix reaches the multi-directional search threshold maxAllSize. If not, proceed to step 2; otherwise, proceed to step 7.

[0220] Note that steps 2 to 3 search in a single variable direction, and step 5 is responsible for modifying the search direction. The default order is to search in truncation first, search on SH second, search on WH third, and search in truncation fourth, and so on until the upper threshold limit is reached.

[0221] Step 7: Output the optimal filter matrix parameters. At this point, the optimal frequency threshold WH, frequency threshold SH, and window function threshold truncation have been searched for. Combined with the optimal density contrast and depth obtained through the improved simulated annealing search, the Parker-Oldenburg inversion method can be used to calculate the Moho depth of the target area.

[0222] In existing work using the Parker-Oldenburg inversion method, the frequency threshold WH, frequency threshold SH, and window function threshold truncation are generally calculated as constants. During testing and verification, the present invention discovered that these values ​​still require optimization. Therefore, a parallelized adaptive search method for filter matrix parameters is proposed, ultimately achieving automatic parameter tuning. This reduces the uncertainty of manual parameter adjustment and improves testing and verification efficiency.

[0223] After completing the parallel adaptive update of the filter matrix parameters, the overall process will restart the improved simulated annealing search and repeat it until the optimal solution is found.

[0224] In summary, this paper proposes a parallel solution method for the Moho surface based on improved simulated annealing and Parker-Oldenburg inversion. The core idea is to parallelize the solution of existing methods, which not only improves the computational efficiency but also improves the accuracy of the solution data, thereby obtaining a more accurate Moho surface. The method includes:

[0225] 1) An improved simulated annealing method is proposed to search for the optimal density difference and depth in parallel, which improves the computational efficiency and ultimately improves the accuracy of the Parker-Oldenburg inversion Moho surface.

[0226] 2) A parallel adaptive update method for the filter matrix parameters is proposed, which optimizes the existing brute force iterative process, improves the search efficiency, and ultimately improves the boundary calculation processing of high-pass filtering, low-pass filtering, etc. in the Parker-Oldenburg inversion process.

[0227] 3) The parallelized adaptive parallel update method of the filter matrix parameters further drives the parallel search method based on improved simulated annealing, ensuring the integrity of the overall search space and further improving the efficiency and probability of finding the optimal parameters.

[0228] Compared with the prior art, the method of the present invention has at least the following beneficial effects:

[0229] 1) The improved simulated annealing algorithm is parallelized to improve the computational search efficiency;

[0230] 2) Improved the adaptive parameter adjustment process of filter parameters and improved the calculation and search efficiency;

[0231] 3) The parallelized adaptive parallel update method of the filter matrix parameters further drives the parallel search method based on improved simulated annealing, ensuring the integrity of the overall search space and further improving the efficiency and probability of finding the optimal parameters.

[0232] On the other hand, an embodiment of the present invention provides a terrain data processing device based on parallel search, which may include:

[0233] The first module is used to initialize the target parameters of the target area; the target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, end temperature and temperature decay rate;

[0234] The second module is used to use the initialized density difference and depth as the first solution vector; and the initial temperature as the target temperature;

[0235] The third module is used to obtain the first root mean square value based on the Parker-Oldenburg inversion method by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix;

[0236] A fourth module is configured to generate a plurality of second solution vectors in parallel based on the first solution vector by using a preset search strategy;

[0237] The fifth module is used to obtain the second root mean square value corresponding to each second solution vector by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix based on the Parker-Oldenburg inversion method; the smallest second root mean square value is used as the third root mean square value, and the second solution vector corresponding to the third root mean square value is used as the third solution vector;

[0238] A sixth module is configured to output a target density difference and a target depth according to the first solution vector when the first root mean square value is less than the iterative optimal threshold; otherwise, compare the first root mean square value with the third root mean square value;

[0239] A seventh module is configured to, when the third root mean square value is less than the first root mean square value, use the third solution vector as the first solution vector and the third root mean square value as the first root mean square value; increase the first iteration number by 1; and initialize the first iteration number to 0;

[0240] An eighth module is configured to, when the first iteration number is less than or equal to the maximum number of random iterations, return to the fourth module until the first iteration number is greater than the maximum number of random iterations, attenuate the target temperature using the temperature attenuation rate, and use the attenuated temperature as the target temperature;

[0241] A ninth module is configured to return to the fourth module when the target temperature is greater than or equal to the termination temperature, and output the target density difference and target depth according to the first solution vector until the target temperature is less than the termination temperature;

[0242] The tenth module is used to obtain the target filter matrix parameters through iterative search using a parallel search strategy based on the target density difference and the target depth, taking the filter matrix parameters as variables;

[0243] The eleventh module is used to obtain the Moho depth of the target area through the Parker-Oldenburg inversion method based on the target density difference, target depth, target filter matrix parameters and gravity anomaly matrix.

[0244] In some embodiments, the target parameter further includes a probability threshold; when the third root mean square value is greater than the first root mean square value, the apparatus may further include:

[0245] A twelfth module is configured to calculate the target probability corresponding to each second root mean square value by using an exponential function to calculate the result of dividing the difference between the first root mean square value and the second root mean square value by the target temperature;

[0246] The thirteenth module is configured to use the second solution vector corresponding to the target probability as an alternative vector when the target probability is greater than the probability threshold;

[0247] The fourteenth module is used to calculate the difference between the second root mean square value corresponding to each alternative vector and the iterative optimal threshold when there are multiple alternative vectors, and use the alternative vector corresponding to the smallest difference as the first solution vector, and use the second root mean square value corresponding to the alternative vector as the first root mean square value.

[0248] The contents of the method embodiments of the present invention are all applicable to the device embodiments. The functions specifically implemented by the device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0249] In another aspect, an embodiment of the present invention further provides an electronic device comprising a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the aforementioned terrain data processing method based on parallel search. The electronic device can be any intelligent terminal, including a tablet computer and an in-vehicle computer.

[0250] It can be understood that the contents of the above method embodiments are applicable to the present device embodiments, the functions specifically implemented by the present device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0251] like Figure 9 As shown, Figure 9 The hardware structure of an electronic device according to another embodiment is shown. The electronic device includes:

[0252] The processor 1010 can be implemented as a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application;

[0253] The memory 1020 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 1020 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1020 and is called by the processor 1010 to execute the network node population optimization method of the embodiment of the present application;

[0254] Input / output interface 1030, used to implement information input and output;

[0255] Communication interface 1040, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WiFi, Bluetooth, etc.);

[0256] bus 1050 , which transmits information between various components of the device (e.g., processor 1010 , memory 1020 , input / output interface 1030 , and communication interface 1040 );

[0257] The processor 1010 , the memory 1020 , the input / output interface 1030 , and the communication interface 1040 are connected to each other in communication within the device via a bus 1050 .

[0258] The electronic device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, i.e., they may be located in one location or distributed across multiple network units. Some or all of these modules may be selected based on actual needs to achieve the objectives of this embodiment.

[0259] The contents of the method embodiments of the present invention are all applicable to the electronic device embodiments. The functions specifically implemented by the electronic device embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0260] Another aspect of an embodiment of the present invention further provides a computer-readable storage medium, wherein the storage medium stores a program, and the program is executed by a processor to implement the above method.

[0261] It should be noted that the computer-readable medium shown in the embodiments of the present invention may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, device, or component. In the present invention, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0262] The contents of the method embodiments of the present invention are all applicable to the computer-readable storage medium embodiments. The functions specifically implemented by the computer-readable storage medium embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0263] The present invention also discloses a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the above method.

[0264] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present invention. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the above-mentioned module, program segment, or a part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0265] It should be noted that although several modules of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to an embodiment of the present invention, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be concretized.

[0266] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present invention can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD to ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present invention.

[0267] In some optional embodiments, the function / operation mentioned in the block diagram may not occur in the order mentioned in the operation diagram. For example, depending on the function / operation involved, the two boxes shown in succession can actually be executed substantially simultaneously or the boxes can sometimes be executed in reverse order. In addition, the embodiment presented and described in the flow chart of the present invention is provided in an exemplary manner for the purpose of providing a more comprehensive understanding of the technology. The disclosed method is not limited to the operation and logic flow presented herein. Optional embodiments are contemplated in which the order of the various operations is changed and the sub-operations described as a part of a larger operation are performed independently.

[0268] In addition, although the present invention is described in the context of functional modules, it should be understood that, unless otherwise stated, one or more of the functions and / or features may be integrated into a single physical device and / or software module, or one or more functions and / or features may be implemented in separate physical devices or software modules. It will also be understood that a detailed discussion of the actual implementation of each module is not necessary for understanding the present invention. More specifically, given the properties, functions, and internal relationships of the various functional modules in the devices disclosed herein, the actual implementation of the module will be understood within the ordinary skill of an engineer. Therefore, a person skilled in the art will be able to implement the present invention as set forth in the claims using ordinary skill without undue experimentation. It will also be understood that the specific concepts disclosed are merely illustrative and are not intended to limit the scope of the present invention, which is determined by the full scope of the appended claims and their equivalents.

[0269] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, and other media that can store program code.

[0270] The logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing the logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution apparatus, device, or apparatus (e.g., a computer-based apparatus, a device including a processor, or other apparatus that can fetch instructions from and execute instructions on an instruction execution apparatus, device, or apparatus). For purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by, or in conjunction with, an instruction execution apparatus, device, or apparatus.

[0271] More specific examples (a non-exhaustive list) of computer-readable media include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk cartridge (magnetic devices), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disc read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, deciphering, or processing in another suitable manner as necessary, and then stored in a computer memory.

[0272] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above-described embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution device. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application-specific integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0273] Throughout this specification, reference to terms such as "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that a specific feature, structure, material, or characteristic described in conjunction with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.

[0274] While embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions, and variations may be made to the embodiments without departing from the principles and spirit of the invention, and that the scope of the invention is defined by the claims and their equivalents.

[0275] The above is a specific description of the preferred implementation of the present invention, but the present invention is not limited to the embodiments. Those skilled in the art can make various equivalent modifications or substitutions without violating the spirit of the present invention. These equivalent modifications or substitutions are all included in the scope defined by the claims of the present invention.

Claims

1. A terrain data processing method based on parallel search, characterized in that: include: Initialize the target parameters of the target area; The target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, termination temperature and temperature decay rate; Taking the initialized density difference and the depth as a first solution vector; using the initial temperature as the target temperature; Based on the Parker-Oldenburg inversion method, a first root mean square value is obtained by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix and the seismic depth matrix; Based on the first solution vector, generating multiple second solution vectors in parallel through a preset search strategy; Based on the Parker-Oldenburg inversion method, a second root mean square value corresponding to each second solution vector is obtained by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix; the smallest second root mean square value is used as a third root mean square value, and the second solution vector corresponding to the third root mean square value is used as a third solution vector; When the first root mean square value is less than the iterative optimal threshold, outputting the target density difference and the target depth according to the first solution vector; otherwise, comparing the first root mean square value with the third root mean square value; When the third RMS value is less than the first RMS value, use the third solution vector as the first solution vector and the third RMS value as the first RMS value; increase the first iteration number by 1; and initialize the first iteration number to 0; When the first iteration number is less than or equal to the maximum number of random iterations, returning to the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy, until the first iteration number is greater than the maximum number of random iterations, decaying the target temperature using the temperature decay rate, and using the decayed temperature as the target temperature; When the target temperature is greater than or equal to the termination temperature, returning to the step of generating multiple second solution vectors in parallel based on the first solution vector using a preset search strategy, until the target temperature is less than the termination temperature, and outputting the target density difference and the target depth according to the first solution vector; Based on the target density difference and the target depth, the filter matrix parameters are used as variables, and the target filter matrix parameters are obtained by iterative search through a parallel search strategy; The Moho depth of the target area is obtained by processing the Parker-Oldenburg inversion method according to the target density difference, the target depth, the target filter matrix parameters and the gravity anomaly matrix.

2. The terrain data processing method based on parallel search according to claim 1, characterized in that: The method of obtaining a first root mean square value by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix based on the Parker-Oldenburg inversion method includes: Obtaining a first predicted depth matrix by performing Parker-Oldenburg inversion processing according to the first solution vector, the initialized filter matrix parameters, and the gravity anomaly matrix; Adaptation processing is performed according to the first predicted depth matrix and the earthquake depth matrix to obtain a first root mean square value.

3. The terrain data processing method based on parallel search according to claim 2, characterized in that: The performing fitness processing according to the first predicted depth matrix and the earthquake depth matrix to obtain a first root mean square value includes: Obtaining matrix surface data by linear interpolation according to the first predicted depth matrix; Traversing each element of the seismic depth matrix, and extracting depth data of corresponding positions in the matrix surface data according to the traversed elements; A root mean square calculation is performed based on a difference between the depth data of each element and the depth data of a corresponding position in the matrix planar data to obtain the first root mean square value.

4. The terrain data processing method based on parallel search according to claim 1, characterized in that: The target parameter also includes a search step size; and the generating of multiple second solution vectors in parallel based on the first solution vector by a preset search strategy includes: transmitting the first solution vector to a plurality of computing units respectively, and executing the preset search strategy through the computing units to generate a plurality of second solution vectors in parallel; The preset search strategy executed by the computing unit includes at least one of the following: Based on a normally distributed random number and the search step size, performing a single variable successive search on the first solution vector to obtain the second solution vector; Based on a random value within a preset range and the search step size, a multi-variable simultaneous search is performed on the first solution vector to obtain the second solution vector.

5. The terrain data processing method based on parallel search according to claim 4, characterized in that: The target parameter further includes a minimum search range value and a maximum search range value; the random value based on the preset range and the search step size, performing a multi-variable simultaneous search on the first solution vector to obtain the second solution vector, including: Obtaining a second solution vector based on a sum of a product of the random value and the search step length and the first solution vector; Wherein, when the second solution vector is larger than the maximum value of the search range, the second solution vector is updated by subtracting the product of the additionally generated random value and the search step length from the second solution vector; When the second solution vector is smaller than the minimum value of the search range, the second solution vector is updated by adding the product of the additionally generated random value and the search step length to the second solution vector.

6. The terrain data processing method based on parallel search according to claim 1, characterized in that: The target parameter further includes a probability threshold; when the third root mean square value is greater than the first root mean square value, the method further includes: Calculate the target probability corresponding to each second root mean square value by using an exponential function to obtain the result of dividing the difference between the first root mean square value and the second root mean square value by the target temperature; When the target probability is greater than the probability threshold, taking the second solution vector corresponding to the target probability as an alternative vector; When there are multiple alternative vectors, the difference between the second root mean square value corresponding to each alternative vector and the iterative optimal threshold is calculated respectively, and the alternative vector corresponding to the smallest difference is used as the first solution vector, and the second root mean square value corresponding to the alternative vector is used as the first root mean square value.

7. The terrain data processing method based on parallel search according to claim 1, characterized in that: The target parameters also include an iterative optimal threshold, a filter matrix search unidirectional iteration threshold, a filter matrix search multi-directional iteration threshold, a second iteration number, and a third iteration number; The method of obtaining target filter matrix parameters by iteratively searching based on the target density difference and the target depth using the filter matrix parameters as variables through a parallel search strategy includes: The filter matrix parameters are used as first filter matrix parameters; a second predicted depth matrix is ​​obtained by processing the target density difference and the target depth, the first filter matrix parameters and the gravity anomaly matrix through the Parker-Oldenburg inversion method; performing fitness processing according to the second predicted depth matrix and the earthquake depth matrix to obtain a fourth root mean square value; transmitting the first filter matrix parameters to a plurality of calculation units respectively, performing a single variable search on the first filter matrix parameters based on a target search direction by the calculation units, and generating a plurality of second filter matrix parameters in parallel; Based on the Parker-Oldenburg inversion method, obtaining a fifth root mean square value corresponding to each second filter matrix parameter by processing the second filter matrix parameters, the target density difference, the target depth, the gravity anomaly matrix, and the seismic depth matrix; and using the smallest of the fifth root mean square values ​​as the sixth root mean square value; When the sixth RMS value is less than the fourth RMS value, using the second filter matrix parameter corresponding to the sixth RMS value as the first filter matrix parameter, and using the sixth RMS value as the fourth RMS value; increasing the second iteration number by 1; and initializing the second iteration number and the third iteration number to 0; When the fourth root mean square value is less than the iterative optimal threshold, outputting the target filter matrix parameters according to the first filter matrix parameters; Return to the step of transmitting the first filter matrix parameters to multiple calculation units respectively, performing a single variable search on the first filter matrix parameters based on the target search direction by the calculation units, and generating multiple second filter matrix parameters in parallel, until the second iteration number is greater than the filter matrix search single-direction iteration threshold, adjusting the target search direction based on a preset search order, adding 1 to the third iteration number, and then returning to the step of transmitting the first filter matrix parameters to multiple calculation units respectively, performing a single variable search on the first filter matrix parameters based on the target search direction by the calculation units, and generating multiple second filter matrix parameters in parallel, until the third iteration number is greater than the filter matrix search multi-directional iteration threshold, and outputting the target filter matrix parameters according to the first filter matrix parameters.

8. A terrain data processing device based on parallel search, characterized in that: include: The first module is used to initialize the target parameters of the target area; The target parameters include density difference, depth, filter matrix parameters, gravity anomaly matrix, seismic depth matrix, iterative optimal threshold, first iteration number, maximum number of random iterations, initial temperature, termination temperature and temperature decay rate; A second module is configured to use the initialized density difference and the depth as a first solution vector; using the initial temperature as the target temperature; A third module is configured to obtain a first root mean square value by processing the first solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix based on a Parker-Oldenburg inversion method; A fourth module is configured to generate a plurality of second solution vectors in parallel based on the first solution vector by using a preset search strategy; A fifth module is configured to obtain, based on the Parker-Oldenburg inversion method, a second root mean square value corresponding to each second solution vector by processing the second solution vector, the initialized filter matrix parameters, the gravity anomaly matrix, and the seismic depth matrix; taking the smallest second root mean square value as a third root mean square value, and taking the second solution vector corresponding to the third root mean square value as a third solution vector; A sixth module is configured to output a target density difference and a target depth according to the first solution vector when the first root mean square value is less than the iterative optimal threshold; otherwise, compare the first root mean square value with the third root mean square value; A seventh module is configured to, when the third root mean square value is less than the first root mean square value, use the third solution vector as the first solution vector and the third root mean square value as the first root mean square value; increase the first number of iterations by 1; and initialize the first number of iterations to 0; An eighth module is configured to, when the first iteration number is less than or equal to the maximum number of random iterations, return to the fourth module, and continue until the first iteration number is greater than the maximum number of random iterations, attenuate the target temperature using the temperature attenuation rate, and use the temperature after the attenuation as the target temperature; a ninth module, configured to return to the fourth module when the target temperature is greater than or equal to the termination temperature, and output the target density difference and the target depth according to the first solution vector until the target temperature is less than the termination temperature; A tenth module is configured to obtain target filter matrix parameters by iteratively searching through a parallel search strategy based on the target density difference and the target depth and taking the filter matrix parameters as variables; The eleventh module is used to obtain the Moho depth of the target area through Parker-Oldenburg inversion method according to the target density difference, the target depth, the target filter matrix parameters and the gravity anomaly matrix.

9. An electronic device, characterized in that: including a processor and a memory; The memory is used to store programs; The processor executes the program to implement the method according to any one of claims 1 to 7.

10. A computer storage medium storing a program executable by a processor, characterized in that: The program executable by the processor is used to implement the method according to any one of claims 1 to 7 when executed by the processor.

Citation Information

Patent Citations

  • LAS detection algorithm improved based on simulated annealing idea in large-scale MIMO system

    CN109995403A

  • Method for simultaneously inverting free parameters and mourhos surface based on constant density model

    CN117521024A