A method, device, electronic device and storage medium for solving seabed topography

The Parker-Oldenburg method is optimized by binary coded genetic algorithm, the population is initialized and crossover mutation operations are performed, which solves the problem of insufficient inversion accuracy caused by parameter constant design and achieves efficient and accurate solution of seabed topography.

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

Patent Information

Application Number
CN202411093658.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-09
Publication Date
2025-09-23
Estimated Expiration
2044-08-09

AI Technical Summary

Technical Problem

When using the Parker-Oldenburg method for crustal structure inversion, the existing technology treats the parameters as constants, which makes it difficult to accurately reflect the complexity and diversity of the underground medium. This leads to insufficient accuracy of the inversion results, large amount of calculation, and lack of a unified execution framework, which affects the accuracy and practicality of the inversion results.

Method used

A genetic algorithm based on binary coding is used to initialize the initial population. The seabed topography data is processed through the inversion method. The fitness is evaluated in combination with the seismic depth matrix. The parameters are optimized using crossover and mutation operations, and the seabed topography is solved iteratively.

Benefits of technology

It improves the accuracy and efficiency of seabed topography solution, ensures the efficiency and accuracy of the genetic algorithm search process, and improves the accuracy and automation of the inversion results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119128346B_ABST
    Figure CN119128346B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device, electronic device, and storage medium for solving seabed topography. The method includes: initializing an initial population based on preset rules; using the initial population as the first population; obtaining seabed topography data of a target search area through inversion based on the first population; then performing fitness evaluation to obtain the root mean square value of each individual in the first population; when an individual's root mean square value is less than or equal to an iterative optimal threshold, the corresponding individual is used as a target individual; otherwise, updating the population through a genetic algorithm, increasing the first loop count by 1, and returning to the step of obtaining seabed topography data of the target search area through inversion based on the first population until the target individual is obtained, or the first loop count equals a preset iteration count; and finally determining a solution result for the target search area based on the target individual. The embodiments of the present invention can efficiently and accurately solve seabed topography and can be widely applied 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 field of data processing technology, and in particular to a method, device, electronic equipment and storage medium for solving seabed topography. Background Art

[0002] In the current field of geophysical exploration, especially in the process of crustal structure inversion using gravity data, the Parker-Oldenburg method, as a classic and widely used interface inversion technology, is of self-evident importance. However, existing technical solutions generally design the parameters of the Parker-Oldenburg inversion as constants, and this approach has shown significant limitations in practical applications. Specifically, due to the complexity and diversity of underground media, the simple linear relationship assumption between density difference and depth is often difficult to accurately reflect the actual geological conditions, resulting in a significant reduction in the accuracy of the inversion results. In addition, the existing solutions are relatively large in terms of overall computational complexity and lack a unified execution framework, which not only increases the difficulty of parameter tuning, but also limits the automation of advanced functions such as terrain inversion, further affecting the accuracy and practicality of the inversion results. Summary of the Invention

[0003] The present invention aims to at least partially address the limitations of related technologies. To this end, the present invention provides a method, device, electronic device, and storage medium for accurately determining seabed topography.

[0004] In one aspect, an embodiment of the present invention provides a method for solving seabed topography, comprising:

[0005] Initializing an initial population based on a preset rule; using the initial population as a first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to a first parameter of the target search area; the first parameter includes a density difference and an average depth of the seabed; and the first parameter is obtained based on binary coding;

[0006] Based on the first parameter corresponding to the individuals in the first population, the seabed topography data of the target search area is obtained by inversion method;

[0007] Based on the seabed topography data and the seismic depth matrix of the target search area, the fitness evaluation is performed to obtain the root mean square value corresponding to each individual in the first population;

[0008] When the root mean square value of an individual in the first population is less than or equal to the iterative optimal threshold, the corresponding individual is taken as the target individual; otherwise,

[0009] Based on the priority level of each individual in the first population, a preset number of individuals are selected from the first population using a random threshold to form a second population. Priorities are determined based on the root mean square value, and the priority level of the same individual is negatively correlated with the root mean square value.

[0010] Perform the first number of crossover operations on random individuals in the second population based on probability to obtain the third population;

[0011] Based on probability, a second number of mutation operations are performed on random individuals in the third population to obtain the fourth population;

[0012] Using the fourth population as the first population, increasing the first loop count by 1, and returning to the step of obtaining seafloor topography data of the target search area by an inversion method based on the first parameter corresponding to the individuals in the first population, until the target individual is obtained, or the first loop count equals the preset number of iterations;

[0013] When the first cycle number is equal to the preset iteration number, the target individual is output according to the first population obtained in the last cycle;

[0014] The seabed topography data corresponding to the target individual is used as the target data value for solving the seabed topography of the target search area.

[0015] Optionally, initializing the initial population based on a preset rule includes the following steps:

[0016] Based on a preset center point and a first random number, a preset number of initial parameters are randomly generated near the center point; the first random number represents a random number normally distributed within a first interval; the initial parameters include a decimal density difference and an average seabed depth;

[0017] Alternatively, a preset number of initial parameters are randomly generated within the second interval based on the second random number; the second random number represents a random value within the third interval;

[0018] Alternatively, in response to an input instruction from the target object, a preset number of initial parameters are obtained;

[0019] The decimal initial parameters are encoded into binary to obtain the first binary parameter, and then the corresponding individual is obtained;

[0020] The initial population is obtained by sorting out the preset number of individuals.

[0021] Optionally, obtaining seabed topography data of the target search area by an inversion method based on the first parameter corresponding to the individuals in the first population includes the following steps:

[0022] Binary decoding is performed on the first parameter corresponding to the genes of all individuals in the first population to obtain a second parameter; wherein the second parameter includes a decimal density difference and an average seabed depth;

[0023] Based on the second parameter, the seabed topography data of the target search area is obtained by using the Parker-Oldenburg inversion method.

[0024] Optionally, based on the priority corresponding to each individual in the first population, a preset number of individuals are selected from the first population by a random threshold to obtain a second population, which includes the following steps:

[0025] The reciprocal of the root mean square value is used as the exponent of the natural constant to obtain the priority corresponding to each individual in the first population;

[0026] Normalize the priorities of all individuals in the first population to obtain the normalized priority of each individual;

[0027] Based on the normalized priorities corresponding to all individuals in the first population, a priority array is obtained;

[0028] The value of the i-th element in the priority array is the cumulative sum of the normalized priorities corresponding to the first individual to the i-th individual in the first population;

[0029] Generate a random number in the fourth interval as a random threshold;

[0030] Based on the random threshold, sequentially traverse the priority array to find the first element greater than the random threshold as the target element;

[0031] According to the element number of the target element, corresponding individuals are selected from the first population and arranged into the second population, and the step of generating a random number as a random threshold within the fourth interval is returned to be executed until a preset number of individuals are selected from the first population and arranged into the second population.

[0032] Optionally, performing a first number of crossover operations on random individuals in the second population based on probability to obtain a third population includes the following steps:

[0033] Obtain the minimum value of the root mean square values ​​corresponding to all individuals in the second population as the minimum root mean square value;

[0034] The ratio of the minimum root mean square value to the iterative optimal threshold is rounded up to obtain a target integer; the result of multiplying the target integer by the preset number is used as the first multiplication factor;

[0035] Randomly obtain two individuals from the second population as crossover individuals;

[0036] A random number is generated within the fifth interval as a third random number. When the third random number is less than a preset crossover operator probability, a crossover operation is performed on the gene fragments of random length corresponding to the density difference and / or the average seabed depth in the crossover individual; otherwise, no crossover operation is performed on the genes of the crossover individual.

[0037] Increase the second cycle count by 1, and return to the step of randomly obtaining two individuals from the second population as crossover individuals until the second cycle count equals the first count, thus obtaining the third population;

[0038] The second cycle number is initialized to 0.

[0039] Optionally, the second number is less than or equal to a preset number; performing a mutation operation of the second number on random individuals in the third population based on probability to obtain a fourth population comprises the following steps:

[0040] Randomly obtain an individual from the third population as a mutant individual;

[0041] A random number is generated within the sixth interval as a fourth random number. When the fourth random number is less than a preset mutation operator probability, a mutation operation is performed on the gene corresponding to the density difference and / or the average seabed depth in the mutant individual; otherwise, no mutation operation is performed on the gene of the mutant individual.

[0042] Increase the third cycle count by 1, and return to the step of randomly obtaining an individual from the third population as a mutant individual until the third cycle count equals the second count, thus obtaining the fourth population;

[0043] The third loop number is initialized to 0.

[0044] Optionally, outputting a target individual according to the first population obtained in the last cycle includes the following steps:

[0045] Get the minimum value among the RMS values ​​corresponding to all individuals in the first population obtained in the last cycle, and output the individual corresponding to the minimum value as the target individual.

[0046] In another aspect, an embodiment of the present invention provides a device for calculating seabed topography, comprising:

[0047] The first module is configured to initialize an initial population based on a preset rule; the initial population is used as a first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to a first parameter of the target search area; the first parameter includes a density difference and an average seafloor depth; the first parameter is obtained based on binary coding;

[0048] The second module is used to obtain seabed topography data of the target search area through an inversion method based on the first parameter corresponding to the individuals in the first population;

[0049] The third module is used to evaluate the fitness of each individual in the first population based on the seabed topography data and the seismic depth matrix of the target search area.

[0050] The fourth module is used to select the corresponding individual as the target individual when the root mean square value of the individual in the first population is less than or equal to the iterative optimal threshold; otherwise,

[0051] A fifth module is configured to select a preset number of individuals from the first population using a random threshold based on the priority corresponding to each individual in the first population, and to obtain a second population; the priority is determined based on the root mean square value, and the priority of the same individual is negatively correlated with the root mean square value;

[0052] The sixth module is used to perform a first number of crossover operations on random individuals in the second population based on probability to obtain a third population;

[0053] The seventh module is used to perform a second number mutation operation on random individuals in the third population based on probability to obtain a fourth population;

[0054] An eighth module is configured to use the fourth population as the first population, increase the number of the first loop by 1, and return to execute the second module until the target individual is obtained, or the number of the first loop equals the preset number of iterations;

[0055] A ninth module is configured to output a target individual according to the first population obtained from the last cycle when the number of the first cycle is equal to the preset number of iterations;

[0056] The tenth module is used to use the seabed topography data corresponding to the target individual as the target data value for solving the seabed topography of the target search area.

[0057] 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 seabed topography solution method.

[0058] On the other hand, an embodiment of the present invention provides a computer storage medium storing a program executable by a processor. The program executable by the processor is used to implement the above-mentioned method for solving seabed topography when executed by the processor.

[0059] The embodiment of the present invention initializes an initial population based on a preset rule; the initial population is used as the first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to the first parameter of the target search area; the first parameter includes density difference and average depth of the seabed; the first parameter is obtained based on binary coding; based on the first parameter corresponding to the individuals in the first population, the seabed topography data of the target search area is obtained by an inversion method; based on the seabed topography data, fitness evaluation is performed in combination with the seismic depth matrix of the target search area to obtain the root mean square value corresponding to each individual in the first population; when the root mean square value corresponding to an individual in the first population is less than or equal to the iterative optimal threshold, the corresponding individual is used as the target individual; otherwise, based on the priority corresponding to each individual in the first population, a preset number of individuals are selected from the first population through a random threshold, and sorted A second population is obtained; priorities are determined based on the root mean square value, with the priorities of identical individuals negatively correlated with the root mean square value; a first crossover operation is performed on random individuals in the second population based on probability to obtain a third population; a second mutation operation is performed on random individuals in the third population based on probability to obtain a fourth population; the fourth population is used as the first population, the first iteration count is incremented by 1, and the process returns to the step of obtaining seafloor topography data of the target search area through an inversion method based on the first parameter corresponding to the individuals in the first population until the target individual is obtained, or the first iteration count equals a preset iteration count; when the first iteration count equals the preset iteration count, the target individual is output based on the first population obtained from the last iteration; and the seafloor topography data corresponding to the target individual is used as the target data value for solving the seafloor topography of the target search area. This embodiment of the present invention utilizes binary coding combined with relevant genetic operations. Specifically, binary encoding and decoding are simple, and operations such as crossover and mutation are easy to implement. This ensures a more efficient genetic algorithm search process and improves data solution accuracy and efficiency. Furthermore, this embodiment of the present invention, based on the iterative iteration of relevant genetic operations, enables efficient and accurate seafloor topography solution. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] 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.

[0061] Figure 1 A schematic diagram of an implementation environment for solving seabed topography provided by an embodiment of the present invention;

[0062] Figure 2 A schematic flow chart of a method for solving seabed topography provided by an embodiment of the present invention;

[0063] Figure 3 A schematic diagram of the process of initializing an initial population according to an embodiment of the present invention;

[0064] Figure 4 A schematic diagram of the expansion process of obtaining seabed topography data by inversion provided in an embodiment of the present invention;

[0065] Figure 5 A schematic diagram of the expansion process of obtaining the second population according to an embodiment of the present invention;

[0066] Figure 6 A schematic diagram of the expansion process of the crossover operation provided in an embodiment of the present invention;

[0067] Figure 7 A schematic diagram of the expansion process of the mutation operation provided in an embodiment of the present invention;

[0068] Figure 8 A schematic diagram of the overall process of the seabed topography solution method provided by an embodiment of the present invention;

[0069] Figure 9 A schematic structural diagram of a submarine topography solving device provided by an embodiment of the present invention;

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

[0071] 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.

[0072] 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.

[0073] 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.

[0074] It is understandable that the seabed topography solution method 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.

[0075] To facilitate understanding of the technical solutions of the present invention, the following are the technical features and the terms for the variable parameters that may be used in the embodiments of the present invention:

[0076] The technical features are described as follows:

[0077] Seafloor topography refers to the shape of the solid Earth's surface beneath water. Due to the obscuration of seawater, the undulations of seafloor topography are difficult to observe directly. Early plumb bob depth sounding methods were time-consuming and inaccurate. Since the 1920s, ships have used echo sounders during navigation, enabling rapid measurements of seafloor depth. Combined with precise positioning, these echo sounders reveal the true nature of seafloor topography. In this context, seafloor topography refers to the depth of water at various latitudes and longitudes of the ocean.

[0078] Heuristic search, also known as informed search, 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, the genetic algorithm is a classic heuristic search algorithm.

[0079] A genetic algorithm (GA) is a computational model that simulates biological evolution, leveraging mechanisms such as natural selection and genetic recombination to search and optimize complex problems. It is a heuristic search algorithm whose fundamental concept is to create a population of artificial individuals by simulating the mechanisms of genetics and evolution in nature to optimize the solution. In a GA, each individual represents a potential solution and has its own fitness evaluation criteria. By performing operations such as selection, crossover, and mutation on these individuals, the fitness of the current population is gradually improved and the potential solution space is explored in the hope of finding the optimal solution. GAs have the characteristics of a wide range of applications, strong global search capabilities, and ease of parallel computing. They are suitable for solving optimization problems of various types, including combinatorial optimization, continuous optimization, and multi-objective optimization. Compared to other algorithms, GAs are highly efficient in finding the global optimal solution and are widely used in various fields, including but not limited to engineering optimization design, artificial intelligence tasks, and financial analysis and forecasting.

[0080] Binary encoding: Binary numbers are numbers represented using the binary number system, a base-2 number system. In this system, numbers are typically represented by two distinct symbols: 0 (for zero) and 1 (for one). The base-2 number system is binary. In digital electronic circuits, logic gates are directly implemented using binary, and as such, modern computers and computer-dependent devices use binary. Each digit is called a bit (binary digit).

[0081] The Parker-Oldenburg inversion method is a frequency domain density interface iterative inversion method proposed by Oldenburg based on the Parker formula. Since this method has 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 an oscillation phenomenon 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 situation, 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 seabed topography and is also the starting point of the core of the present invention. At present, the input parameters of the method (filter-related parameters, density difference, depth) and the like are designed according to constants based on experience, but in fact there is still room for optimization and excavation of these parameters.

[0082] RMS: The abbreviation of Root Mean Square. The result of taking the square root of the sum of the squares of N items divided by N is the root mean square result.

[0083] The description of the variable parameters is as follows:

[0084] There are 2 variables searched by the improved genetic algorithm based on binary encoding, namely contrast (physical meaning: density difference, unit: g / cm 3 ) and depth (physical meaning: depth, unit: km). Then, the parameters of the improved genetic algorithm are as follows:

[0085] Maximum density difference maxContrast: the maximum value of contrast, which is determined by the average value of the target search area, generally obtained based on experience, and satisfies minContrast < maxContrast. In most cases, it is sufficient to satisfy maxContrast - minContrast >= 0.4, and it can be set according to the actual situation.

[0086] Minimum density difference minContrast: the minimum value of contrast, which is determined by the average value of the target search area, generally obtained based on experience, and satisfies minContrast < maxContrast. In most cases, it is sufficient to satisfy maxContrast - minContrast >= 0.4, and it can be set according to the actual situation.

[0087] Maximum depth maxDepth: the maximum value of depth, which is determined by the average value of the target search area, generally obtained based on experience, and satisfies maxDepth < minDepth. In most cases, it is sufficient to satisfy maxDepth - minDepth >= 10, and it can be set according to the actual situation.

[0088] Minimum depth minDepth: the minimum value of depth, which is determined by the average value of the target search area, generally obtained based on experience, and satisfies maxDepth < minDepth. In most cases, it is sufficient to satisfy maxDepth - minDepth >= 10, and it can be set according to the actual situation.

[0089] Population individual number sizePop, the individual scale of the genetic algorithm, which is taken according to requirements, and the default is 100.

[0090] Maximum population iteration number maxGenCnt, the population reproduction times of the genetic algorithm, that is, the iteration number of the genetic algorithm, which is taken according to requirements, and the default is 200.

[0091] Binary encoding length encodeLen: the number of bits used for binary encoding, which directly affects the gene encoding accuracy, and is taken according to requirements, and the default is 20.

[0092] CrossoverRate is a parameter used by the crossover operator. Its value range is [0,1]. It is determined based on the requirements. The default value is 0.9.

[0093] Mutation operator probability mutationRate, a parameter used by the mutation operator, has a value range of [0,1] and is determined based on demand. The default value is 0.1.

[0094] DistanceRate, a parameter used by the mutation operator, takes a value based on requirements and is 3 by default.

[0095] Search reduction ratio ReduceRate, a parameter used by the mutation operator, has a value range of [0,1] and is determined based on requirements. The default value is 0.5.

[0096] Iterate the optimal threshold minIterDelt. If an individual less than or equal to minIterDelt is found, it means that the optimal solution has been found and the entire search process ends directly.

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

[0098] Density difference contrast, unit g / cm 3 , which is one of the variables searched with the help of the improved genetic algorithm, that is, the variable is obtained by searching with the improved genetic algorithm, and is one of the two search directions mentioned in the present invention.

[0099] Depth: unit is km. This is one of the variables searched by means of the improved genetic algorithm, that is, this variable is obtained by searching the improved genetic algorithm and is one of the two search directions mentioned in the present invention.

[0100] GravityMat: It is a matrix composed of triplets of (longitude, latitude, gravity outlier), which is generally data observed by seismic measurement, satellite measurement or other means, and is a constant in the present invention.

[0101] Seismic depth matrix SemisMat: It is a matrix composed of (longitude, latitude, depth) triplets, generally obtained from seismic measurements, satellite measurements or other observations, and is a constant in the present invention.

[0102] The iteration threshold criterio, i.e., the iteration rms threshold of the Parker-Oldenburg inversion method, is generally a constant, with a default value of 0.1, and is a constant in the present invention.

[0103] Frequency threshold WH: low-pass filter threshold, the initial value is obtained based on experience, the default value is 0.1, and it is a constant in the present invention.

[0104] Frequency threshold SH: high-pass filter threshold, the initial value is obtained based on experience, the default value is 0.12, and it is a constant in the present invention.

[0105] Window function threshold truncation: It is a signal sampling weighting function in signal processing. The initial value is obtained based on experience and is 0.1 by default. It is a constant in the present invention.

[0106] 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.

[0107] 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.

[0108] 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.

[0109] 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.

[0110] Based on the example Figure 1 In the implementation environment shown, an embodiment of the present invention provides a method for solving seabed terrain. The following is explained using the application of the seabed terrain solving method in the server 101 as an example. It can be understood that the seabed terrain solving method can also be applied to the terminal 102.

[0111] Reference Figure 2 , Figure 2 The flowchart of the seabed topography solving method applied to the server provided in the embodiment of the present invention is provided. The executing subject of the seabed topography solving method can be any of the aforementioned computer devices (including servers or terminals).

[0112] Reference Figure 2, the method comprises the following steps:

[0113] S100, initializing an initial population based on a preset rule; using the initial population as the first population;

[0114] The first population includes a preset number of individuals, and the genes of the individuals correspond to the first parameter of the target search area; the first parameter includes the density difference and the average depth of the seabed; the first parameter is obtained based on binary coding;

[0115] It should be noted that, in some embodiments, Figure 3 As shown, initializing the initial population based on a preset rule may include the following steps: S101, randomly generating a preset number of initial parameters near the center point based on a preset center point and a first random number; the first random number represents a normally distributed random number in a first interval; the initial parameters include a decimal density difference and an average depth of the seabed; or, S102, randomly generating a preset number of initial parameters in a second interval based on a second random number; the second random number represents a random value in a third interval; or, S103, obtaining a preset number of initial parameters in response to an input instruction of the target object; S104, binary encoding the decimal initial parameters to obtain binary first parameters, and then sorting to obtain corresponding individuals; S105, sorting to obtain the initial population based on the preset number of individuals.

[0116] The second interval includes a density difference interval (determined based on a preset maximum density difference value and a preset minimum density difference value) and a seabed average depth interval (determined based on a preset maximum depth value and a preset minimum depth value);

[0117] For example, in some specific implementations, initializing the population based on binary coding can be implemented as follows:

[0118] A population is composed of a large number of individuals, each of which has two genes, representing the density contrast and the average depth of the seabed. This invention uses binary representation of gene encoding. The initialization gene first generates a decimal value and then converts it into binary through encoding. The core of population initialization is to generate sizePop (i.e., a preset number) individuals and initialize the corresponding gene for each individual. There are three strategies for population generation:

[0119] Case 1: Generate based on the center point. If the center point is given, the generation of contrast and depth is as follows:

[0120] The generation formula of the first individual gene is as follows, which is mainly generated near the center point.

[0121] contrast=initContrast+normal(0,1)*0.01;

[0122] depth=initDepth+normal(0,1)*0.1;

[0123] Other ways in which individual genes can be generated are:

[0124] contrast=initContrast+(maxContrast-minContrast)*normal(0,1);

[0125] depth=initDepth+(maxDepth-minDepth)*normal(0,1);

[0126] Case 2: Random generation. If no center point is given, it is randomly generated within the search interval. The generation methods of contrast and depth are as follows:

[0127] contrast=minContrast+(maxContrast-minContrast)*random();

[0128] depth=minDepth+(maxDepth-minDepth)*random();

[0129] Case 3: Manually specified. In this case, you need to manually specify the initial genes for all individuals. The values ​​specified here are in decimal format, which are then automatically converted to binary values.

[0130] Among them, initContrast and initDepth represent the center point; random() represents the random value generated in [0,1]; normal(0,1) represents a normal distribution with a mean of 0 and a standard deviation of 1. The obtained random numbers satisfy the normal distribution, thereby ensuring the fairness of gene generation.

[0131] Now we have individuals represented by decimal coded real numbers, which need to be converted into individuals represented by binary coded numbers. The core of binary coding is how to use the binary representation of a fixed number of bits to search for a single gene. The simplest method is direct coding, which is to enable the use of the binary representation of the floating-point bottom layer (because all numbers are binary representations at the bottom layer of the computer). The advantage of doing so is that encoding and decoding are convenient, but it is easy to cause the situation that the search accuracy and search efficiency are not high. In order to solve this situation, the present invention uses the processing mode of relative coding, and the specific binary encoding and decoding process is as follows:

[0132] Decimal to binary encoding process: The genes involved in this invention are mainly depth Depth and density difference Contrast, and the maximum and minimum thresholds of each gene are determined, so relative encoding can be used. Specifically, for depth Depth, the gene search interval is [minDepth, maxDepth], and the binary encoding length is encodeLen, that is, encodeLen bits are required to represent [minDepth, maxDepth]. The binary encoding accuracy of depth Depth refers to formula (1), and similarly, the binary encoding accuracy of density difference Contrast refers to formula (3); if there is a decimal depth Depth, the binary encoding can be obtained by calculating formula (2), and the ToBinary() function converts a decimal integer into binary. Similarly, if there is a decimal depth Contrast, the binary encoding can be obtained by calculating formula (4).

[0133]

[0134] Here is a specific example, assuming minDepth = 15.0, maxDepth = 25.0, minContrast = 0.5, maxContrast = 0.7, encodeLen = 20,

[0135] Substituting into formula (1) we can get depthAccuracy = 9.536752259018191e-06;

[0136] Assuming Depth = 15.0, substituting into formula (2) yields the binary value 0000 0000 0000 0000 0000;

[0137] Assuming Depth = 21.999, substituting into formula (2) the binary number obtained is 1001 0011 0100 1100 1101;

[0138] Assuming Depth = 25.0, substituting into formula (2) the binary output is 1111 1111 1111 1111 1111;

[0139] Substituting into formula (3) we can get contrastAccuracy = 1.9073504518036378e-07;

[0140] Assuming Contrast = 0.5, substituting into formula (4) the binary output is 0000 0000 0000 0000 0000;

[0141] Assuming Contrast = 0.59999, substituting into formula (4) the binary output is 1101 0011 1111 11111110;

[0142] Assuming Contrast = 0.7, substituting into formula (4) the binary output is 1111 1111 1111 1111 1111;

[0143] From this step, we can see that 20 bits can achieve a very high precision (1e-06), far exceeding the accuracy requirements for searching depth and density contrast in seafloor topography, and the precision can be customized. The trade-off is that encoding and decoding are time-consuming in large-scale computations (actual tests have shown that encoding and decoding do not significantly affect performance when solving seafloor topography with 2 million gravity points). The above is the decimal-to-binary encoding process.

[0144] Binary to decimal decoding process: With the encoding process, the decoding process is the opposite of the calculation process. If there is a binary depth DepthBinary, the binary decoding can be calculated using formula (5). The ToDecimal() function converts the binary integer into a decimal system. Similarly, if there is a binary depth ContrastBinary, the binary decoding can be calculated using formula (6). It can be seen that formula (2) and formula (5), formula (4) and formula (6) are equivalent. This is the core formula for encoding and decoding involved in this invention.

[0145] Depth=minDepth+ToDecimal(DepthBinary)*DepthAccuracy (5)

[0146] Contrast=minContrast+ToDecimal(ContrastBinary)*ContrastAccuracy (6)

[0147] Here is a specific example, assuming minDepth = 15.0, maxDepth = 25.0, minContrast = 0.5, maxContrast = 0.7, encodeLen = 20,

[0148] Substituting into formula (1) we can get depthAccuracy = 9.536752259018191e-06;

[0149] Assuming that the binary value of Depth is 0000 0000 0000 0000 0000, substituting it into formula (5) yields 15.0;

[0150] Assuming that the binary value of Depth is 1001 0011 0100 1100 1101, substituting it into formula (5) yields 21.999;

[0151] Assuming that the binary representation of Depth is 1111 1111 1111 1111 1111, substituting it into formula (5) yields 25.0;

[0152] Substituting into formula (3) we can get contrastAccuracy = 1.9073504518036378e-07;

[0153] Assuming that the binary value of Contrast is 0000 0000 0000 0000 0000, substituting it into formula (6) yields 0.5;

[0154] Assuming that the binary value of Contrast is 1101 0011 1111 1111 1110, substituting it into formula (6) yields 0.5999;

[0155] Assuming that the binary value of Contrast is 1111 1111 1111 1111 1111, substituting it into formula (6) yields 0.7;

[0156] S200, obtaining seabed topography data of the target search area by an inversion method based on first parameters corresponding to individuals in the first population;

[0157] It should be noted that, in some embodiments, Figure 4 As shown, step S200 may include the following steps: S201, binary decoding the first parameter corresponding to the genes of all individuals in the first population to obtain the second parameter; wherein the second parameter includes the decimal density difference and the average depth of the seabed; S202, based on the second parameter, obtaining the seabed topography data of the target search area by using the Parker-Oldenburg inversion method.

[0158] For example, in some specific implementations, first, binary decoding is performed to obtain the current population: Now a new population is obtained. Because all genes of each individual in the population are binary-encoded and need to be decoded before the seabed topography can be calculated, this step is to binary decode all genes of each individual one by one (the specific decoding process refers to the above decoding instructions and will not be repeated here) to obtain the individual in decimal representation. Then, the seabed topography is calculated based on the current population: for the current population, the gene contrast and depth of each individual are traversed one by one, and then the corresponding seabed topography data is calculated based on the Parker-Oldenburg inversion method.

[0159] S300, performing fitness evaluation based on the seabed topography data and the seismic depth matrix of the target search area to obtain the root mean square value corresponding to each individual in the first population;

[0160] For example, in some specific implementations, the fitness function value of each individual can be evaluated: each individual in the population calculates the corresponding seafloor topography data, and then combines it with the seismic depth matrix SemisMat to calculate the corresponding RMS. Each individual calculates its own RMS, ultimately resulting in an array of size sizePop. Specifically, the data used to calculate the RMS is determined based on the square of the difference between the seafloor topography data and the seismic depth matrix at the same location.

[0161] S400: When there is an individual in the first population whose corresponding RMS value is less than or equal to the iterative optimal threshold, the corresponding individual is taken as the target individual and the process jumps to step S1000; otherwise, the process goes to step S500;

[0162] For example, in some specific implementations, all individuals in the population are traversed to determine whether there is an RMS less than the iterative optimal threshold minIterDelt. If so, it means that the optimal individual (optimal solution, i.e., the target individual) has been found, and the final result of the seabed topography solution can be obtained based on this. Otherwise, continue to execute the subsequent steps.

[0163] S500, based on the priority corresponding to each individual in the first population, select a preset number of individuals from the first population using a random threshold to obtain a second population;

[0164] Among them, the priority is determined based on the root mean square value, and the priority of the same individual is negatively correlated with the root mean square value;

[0165] It should be noted that, in some embodiments, Figure 5As shown, step S500 may include the following steps: S501, taking the reciprocal of the root mean square value as the exponent of the natural constant to obtain the priority corresponding to each individual in the first population; S502, normalizing the priorities corresponding to all individuals in the first population to obtain the normalized priority corresponding to each individual; S503, arranging to obtain a priority array based on the normalized priorities corresponding to all individuals in the first population; wherein the value of the i-th element in the priority array is the cumulative sum of the normalized priorities corresponding to the first individual to the i-th individual in the first population; S504, generating a random number as a random threshold within the fourth interval; S505, based on the random threshold, sequentially traversing the priority array to find the first element greater than the random threshold as the target element; S506, selecting the corresponding individual from the first population according to the element number of the target element and arranging it into the second population, returning to execute the step of generating a random number as the random threshold within the fourth interval, until a preset number of individuals are selected from the first population and arranged into the second population.

[0166] For example, in some specific implementations, applying a selection operator to an individual based on probability can be implemented as follows:

[0167] The selection operator is mainly based on probability to select better individuals. The smaller the RMS, the better the individual, and the larger the RMS, the worse the individual. -RMS To express the individual excellence, e -RMS The larger the value, the better the individual. Formula (7) is used to solve the sum of all individual priorities; Formula (8) calculates the normalized individual priority; referring to Formula (9), the sum of all individual priorities is 1; Formula (10) is used to calculate the array of cumulative priority sums. How to select the best individual? Calculate a random number R0 in the range [0,1] and traverse the accRMS array to find the first individual greater than R0. This individual will be selected.

[0168] With this selection operator, individuals with a higher averRMS score have a higher probability of being selected, while individuals with a lower averRMS score still have a chance of being selected. This design is based on the fact that currently, excellent individuals have excellent gene expression and are therefore worthy of selection. However, individuals with a lower averRMS score may be due to slower gene expression, so they are still selected with a certain probability.

[0169]

[0170] S600, performing a first number of crossover operations on random individuals in the second population based on probability to obtain a third population;

[0171] It should be noted that, in some embodiments, Figure 6As shown, step S600 may include the following steps: S601, obtaining the minimum value of the root mean square values ​​corresponding to all individuals in the second population as the minimum root mean square value; S602, rounding up the ratio of the minimum root mean square value to the iterative optimal threshold to obtain a target integer; multiplying the target integer by a preset number as the first number; S603, randomly obtaining two individuals from the second population as crossover individuals; S604, generating a random number as a third random number within the fifth interval, and when the third random number is less than the preset crossover operator probability, performing a crossover operation on the gene fragments of random lengths of the density difference and / or the average depth of the seabed in the crossover individual; otherwise, not performing a crossover operation on the genes of the crossover individual; S605, adding 1 to the second loop number, returning to execute the step of randomly obtaining two individuals from the second population as crossover individuals, until the second loop number is equal to the first number, and obtaining the third population; wherein the second loop number is initialized to 0.

[0172] For example, in some specific implementations, applying a crossover operator to an individual based on probability can be implemented as follows:

[0173] The crossover operator selects two individuals and then performs a genetic crossover. Referring to formula (11), minRMS is the minimum RMS value of the current population, round() indicates rounding up, and crossCnt indicates the number of crossovers. The advantage of this design is that a larger minRMS indicates a greater distance from the global optimal solution, and the crossover operator performs more operations. A smaller minRMS indicates a closer distance from the global optimal solution, and the crossover operator can guarantee at least sizePop times.

[0174]

[0175] For a single crossover operation, based on the excellent individuals obtained by the selection operator, two individuals A1 and A2 are randomly selected; then a random number R2 in [0,1] is calculated. If R2 is less than crossoverRate, it is determined that a crossover is performed on these two individuals A1 and A2; then one is randomly selected from Case1, Case2 and Case3 for the crossover operator operation; for each crossover, the length of the crossover required this time is randomly selected, and then the binary values ​​of the corresponding length are directly exchanged; this process is repeated, and crossCnt crossover operations are performed, and finally the crossover operation of the entire population is completed.

[0176] Case 1: Density difference crossover, only density difference crossover is performed. The crossover formula is as follows:

[0177] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0178] t1=A1[contrast][0:swapLen];

[0179] t2=A2[contrast][0:swapLen];

[0180] A1[contrast][0:swapLen]={0};

[0181] A2[contrast][0:swapLen]={0};

[0182] A1[contrast]=A1[contrast]|t2;

[0183] A2[contrast]=A2[contrast]|t1;

[0184] Case 2: Depth crossover, only depth crossover is performed. The crossover formula is as follows:

[0185] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0186] t1 = A1[depth][0:swapLen];

[0187] t2 = A2[depth][0:swapLen];

[0188] A1[depth][0:swapLen]={0};

[0189] A2[depth][0:swapLen]={0};

[0190] A1[depth]=A1[depth]|t2;

[0191] A2[depth]=A2[depth]|t1;

[0192] Case 3: Density difference crossover and depth crossover, all genes are crossovered:

[0193] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0194] t1=A1[contrast][0:swapLen];

[0195] t2=A2[contrast][0:swapLen];

[0196] A1[contrast][0:swapLen]={0};

[0197] A2[contrast][0:swapLen]={0};

[0198] A1[contrast]=A1[contrast]|t2;

[0199] A2[contrast]=A2[contrast]|t1;

[0200] t3 = A1[depth][0:swapLen];

[0201] t4 = A2[depth][0:swapLen];

[0202] A1[depth][0:swapLen]={0};

[0203] A2[depth][0:swapLen]={0};

[0204] A1[depth]=A1[depth]|t3;

[0205] A2[depth]=A2[depth]|t4;

[0206] Among them, swapLen represents the length of the crossover. If If the distance to the optimal individual is too far, then crossover requires increased randomness and a rough, long-range search to avoid falling into a local optimum. Therefore, use Random(0, EncodeLen). Otherwise, the distance to the optimal individual is too close, and crossover requires a more precise, closer search. Therefore, use Random(0, EncodeLen * ReduceRate). DistanceRate is set based on requirements, typically 3. ReduceRate is set in the range [0, 1], typically 0.5. In binary encoding, crossover simply swaps lengths.

[0207] In summary, the total number of crossovers is calculated using minRMS. Individuals are then randomly selected based on probability to determine whether to participate in the crossover. Individuals participating in the crossover then choose which genes to participate in the crossover based on probability. Finally, the randomly calculated swapLen is used to perform the crossover, ultimately ensuring both a coarse search over long distances and a precise search over short distances.

[0208] S700, performing a second number mutation operation on random individuals in the third population based on probability to obtain a fourth population;

[0209] It should be noted that, in some embodiments, Figure 7 As shown, step S700 may include the following steps: S701, randomly obtaining an individual from the third population as a mutant individual; S702, generating a random number as a fourth random number within the sixth interval, and when the fourth random number is less than the preset mutation operator probability, performing a mutation operation on the gene corresponding to the density difference and / or the average seabed depth in the mutant individual; otherwise, no mutation operation is performed on the gene of the mutant individual; S703, adding 1 to the third loop number, returning to execute the step of randomly obtaining an individual from the third population as a mutant individual, until the third loop number is equal to the second loop number, and obtaining the fourth population; wherein the third loop number is initialized to 0.

[0210] For example, in some specific implementations, applying a mutation operator to an individual based on probability can be achieved as follows:

[0211] The mutation operator selects a single individual and then selects genes for mutation. The maximum number of mutations is sizePop. A random number R3 in the range [0, 1] is calculated. If R3 is less than mutationRate, an individual is selected for mutation. The mutation operator then randomly selects one from Case 1 and Case 2.

[0212] Case 1: Density difference mutation, only density difference mutation operation is performed. The mutation formula is as follows:

[0213] if

[0214] Then mutationPos=Random(EncodeLen*ReduceRate,EncodeLen),

[0215] Otherwise mutationPos = Random(0, EncodeLen*ReduceRate);

[0216] A1[contrast][mutation]=(A1[contrast][mutation]+1)%2;

[0217] Case 2: Deep mutation, only deep mutation operation is performed. The mutation formula is as follows:

[0218] if

[0219] Then mutationPos=Random(EncodeLen*ReduceRate,EncodeLen),

[0220] Otherwise mutationPos = Random(0, EncodeLen*ReduceRate);

[0221] A1[depth][mutation]=(A1[depth][mutation]+1)%2;

[0222] Among them, mutationPos represents the position of the mutation. If it satisfies If the distance to the optimal individual is too far, the genetic mutation must occur at a high position, resulting in significant differences between the genes before and after the mutation. To perform a rough, long-range search and avoid falling into a local optimum, we use Random(EncodeLen * ReduceRate, EncodeLen). Otherwise, the distance to the optimal individual is too close, and the genetic mutation must occur at a low position, requiring a precise, close-range search. Therefore, we use Random(0, EncodeLen * ReduceRate). The DistanceRate value is determined based on requirements, typically 3. The ReduceRate value range is [0, 1], typically 0.5.

[0223] In general, the maximum number of mutations is sizePop, and then the need for mutation is determined based on the mutationRate probability; if a mutation is required, individuals are randomly selected, and then which gene is selected for mutation.

[0224] S800, using the fourth population as the first population, increasing the first loop count by 1, and returning to the step of obtaining seafloor topography data of the target search area by an inversion method based on the first parameter corresponding to the individuals in the first population, until the target individual is obtained, or the first loop count equals the preset number of iterations;

[0225] For example, in some specific implementations, the operations of steps S500 to S700 indicate the completion of a population multiplication cycle, resulting in a new population. Through natural selection based on the survival of the fittest, it can be determined whether a global optimal solution has been found based on the new population. Steps S200 to S800 are executed in an iterative loop, with each iteration representing one population multiplication iteration, until the maximum number of population iterations, maxGenCnt, is reached. If not, the process returns to step S200; otherwise, the subsequent steps are executed.

[0226] S900, when the first cycle number is equal to the preset iteration number, outputting the target individual according to the first population obtained from the last cycle;

[0227] It should be noted that, in some embodiments, outputting the target individual based on the first population obtained in the last cycle may include the following steps: obtaining the minimum value among the root mean square values ​​corresponding to all individuals in the first population obtained in the last cycle, and outputting the individual corresponding to the minimum value as the target individual.

[0228] S1000: Using the seabed topography data corresponding to the target individual as the target data value for solving the seabed topography of the target search area.

[0229] For example, in some specific implementations, there are only two scenarios for finding the optimal solution (i.e., the target individual): the optimal vector that satisfies the iterative optimal threshold minIterDelt, or the optimal vector obtained by searching the entire space (i.e., the individual with the smallest RMS value in the last population). At this point, the entire search process ends, and not only the optimal solution is obtained, but also the corresponding seabed topography data.

[0230] In order to explain the principle of the technical solution of the present invention in detail, the overall process of the present invention is described below in combination with some specific embodiments. It is easy to understand that the following is an explanation of the technical principle of the present invention and cannot be regarded as a limitation of the present invention.

[0231] First of all, it should be noted that the current technical solutions all design the parameters of Parker-Oldenburg inversion as constants, which results in low solution accuracy. In addition, the existing technology has the following shortcomings:

[0232] 1) Existing methods treat density difference and depth as a linear relationship, resulting in inaccurate seabed topography obtained by Parker-Oldenburg inversion.

[0233] 2) Facing the optimal parameter problem of the Parker-Oldenburg inversion method, through extensive testing, the crossover operator and mutation operator of the existing genetic algorithm did not perform well, which was reflected in low solution efficiency and unstable average solution accuracy;

[0234] 3) The overall computational complexity is large, and there is no unified execution framework, which makes the automation of terrain inversion difficult, and ultimately makes the calculation results rougher than the actual results.

[0235] In view of this, unlike existing practices, the core idea of ​​the present invention is to start from the nonlinear relationship between density difference and depth; the present invention proposes a seabed topography solution method based on an improved genetic algorithm and Parker-Oldenburg inversion based on binary coding. By finding the optimal parameters through the improved genetic algorithm, and with the help of the Parker-Oldenburg inversion method, a more accurate seabed topography is obtained.

[0236] The present invention solves the optimal parameter problem of the Parker-Oldenburg inversion method. It should be emphasized that the present invention mainly improves the existing genetic algorithm, improves the shortcomings of the existing work, and combines it with the Parker-Oldenburg inversion method to solve a more accurate seabed topography. Specifically, refer to Figure 8 As shown, the present invention may include the following process steps:

[0237] Step 1: Parameter initialization. The parameters mainly include the improved genetic algorithm parameters based on binary coding and the Parker-Oldenburg inversion method parameters (for specific parameter details, please refer to the variable parameter description above). Go to step 2;

[0238] Step 2: Initialize the population based on binary coding. The population is composed of a large number of individuals, each of which has two genes, representing the density difference contrast and the average depth of the seabed depth. The present invention uses binary to represent gene coding. The initialization gene first generates a decimal value and then converts it into binary through coding. The core of population initialization is to generate sizePop (i.e., the preset number) individuals and initialize the corresponding gene for each individual. There are three strategies for population generation:

[0239] Case 1: Generate based on the center point. If the center point is given, the generation of contrast and depth is as follows:

[0240] The generation formula of the first individual gene is as follows, which is mainly generated near the center point.

[0241] contrast=initContrast+normal(0,1)*0.01;

[0242] depth=initDepth+normal(0,1)*0.1;

[0243] Other ways in which individual genes can be generated are:

[0244] contrast=initContrast+(maxContrast-minContrast)*normal(0,1);

[0245] depth=initDepth+(maxDepth-minDepth)*normal(0,1);

[0246] Case 2: Random generation. If no center point is given, it is randomly generated within the search interval. The generation methods of contrast and depth are as follows:

[0247] contrast=minContrast+(maxContrast-minContrast)*random();

[0248] depth=minDepth+(maxDepth-minDepth)*random();

[0249] Case 3: Manually specified. In this case, you need to manually specify the initial genes for all individuals. Here, the values ​​specified are in decimal format, which are then automatically converted to binary values.

[0250] Among them, initContrast and initDepth represent the center point; random() represents the random value generated in [0,1]; normal(0,1) represents a normal distribution with a mean of 0 and a standard deviation of 1. The obtained random numbers satisfy the normal distribution, thereby ensuring the fairness of gene generation.

[0251] Now obtained the individuality of decimal code real number representation, need to convert into the individuality of binary code representation.Binary code core is how to use the binary representation search interval of fixed bit single gene, the simplest method is direct encoding, i.e. enabling the use of floating point bottom binary representation (because all numbers are binary representation in computer bottom), doing so benefit is coding and decoding convenience, but is easy to occur the situation that search precision and search efficiency are not high.In order to solve this situation, the present invention uses the processing mode of relative coding, and specific binary code and decoding process are with reference to the explanation in aforementioned specific embodiment, and will not go into details here.

[0252] Go to step 3.

[0253] Step 3: Binary decoding to obtain the current population. Now that we have a new population, because all genes of each individual in the population are binary-encoded and require decoding before calculating the seafloor topography, this step involves binary decoding all genes of each individual one by one to obtain the decimal representation of the individual. Go to Step 4.

[0254] Step 4: Calculate the seafloor topography for each individual in the current population. For each individual in the current population, iterate through the genetic contrast and depth data, then calculate the corresponding seafloor topography using the Parker-Oldenburg inversion method. Go to Step 5.

[0255] Step 5: Evaluate the fitness function for each individual. At this point, each individual in the population has calculated the corresponding seafloor topography data. Combined with the seismic depth matrix SemisMat, the corresponding RMS is calculated. Each individual calculates its own RMS, ultimately resulting in an array of sizePop. Go to Step 6.

[0256] Step 6: There is an individual with an RMS smaller than the threshold. Traverse all individuals in the population and determine whether there is an individual with an RMS smaller than the iterative optimal threshold minIterDelt. If so, go to step 12, indicating that the optimal individual (optimal solution) has been found. Otherwise, go to step 7.

[0257] Step 7: Apply the selection operator to individuals based on probability. The selection operator mainly selects better individuals based on probability. The smaller the RMS, the better the individual, and the larger the RMS, the worse the individual. -RMS To express the individual excellence, e -RMS The larger the value, the better the individual. Formula (7) is used to solve the sum of all individual priorities; Formula (8) calculates the normalized individual priority; referring to Formula (9), the sum of all individual priorities is 1; Formula (10) is used to calculate the array of cumulative priority sums. How to select the best individual? Calculate a random number R0 in the range [0,1] and traverse the accRMS array to find the first individual greater than R0. This individual will be selected.

[0258] With this selection operator, individuals with a higher averRMS score have a higher probability of being selected, while individuals with a lower averRMS score still have a chance of being selected. This design is based on the fact that currently, excellent individuals have excellent gene expression and are therefore worthy of selection. However, individuals with a lower averRMS score may be due to slower gene expression, so they are still selected with a certain probability.

[0259]

[0260] For example, if the array of the original RMS is [3, 7, 1, 9], that is, there are four individual RMSs which are 3, 7, 1, and 9 respectively.

[0261] Through formula (7), sum = e -3 + e -7 + e -1 + e -9 = 0.4187;

[0262] Through formula (8), the averRMS array is Calculated to get averRMS = [0.1189, 0.0022, 0.8786, 0.0003]. It can be verified through formula (9) that the sum of the averRMS array is 1.

[0263] Calculate the accRMS array through formula (10),

[0264] accRMS[0] = 0.1189;

[0265] accRMS[1] = 0.1189 + 0.0022 = 0.1211;

[0266] accRMS[2] = 0.1189 + 0.0022 + 0.8786 = 0.9997;

[0267] accRMS[3] = 0.1189 + 0.0022 + 0.8786 + 0.0003 = 1.0000;

[0268] Then calculate the random value R1. If R1 < accRMS[0], then accRMS[0] is selected; if R1 >= accRMS[0] and R1 < accRMS[1], then accRMS[1] is selected; if R1 >= accRMS[1] and R1 < accRMS[2], then accRMS[2] is selected; if R1 >= accRMS[2] and R1 < accRMS[3], then accRMS[3] is selected; if R1 >= accRMS[3], then accRMS[3] is selected, and this is the critical case.

[0269] In this way, through sizePop runs of the selection operator, finally sizePop excellent individuals are obtained. Among them, the same individual may be selected twice or more. Go to step 8.

[0270] Step 8: Apply the crossover operator to the individuals based on probability. The crossover operator selects two individuals and then performs a genetic crossover. Referring to formula (11), minRMS is the minimum RMS value of the current population, round() indicates rounding up, and crossCnt indicates the number of crossovers. The advantage of this design is that when minRMS is larger, it indicates that the solution is farther from the global optimal solution, and the crossover operator will perform more operations; when minRMS is smaller, it indicates that the solution is closer to the global optimal solution, and the crossover operator can guarantee at least sizePop times.

[0271]

[0272] For a single crossover operation, based on the excellent individuals obtained by the selection operator, two individuals A1 and A2 are randomly selected; then a random number R2 in [0,1] is calculated. If R2 is less than crossoverRate, it is determined that a crossover is performed on these two individuals A1 and A2; then one is randomly selected from Case1, Case2 and Case3 for the crossover operator operation; for each crossover, the length of the crossover required this time is randomly selected, and then the binary values ​​of the corresponding length are directly exchanged; this process is repeated, and crossCnt crossover operations are performed, and finally the crossover operation of the entire population is completed.

[0273] Case 1: Density difference crossover, only density difference crossover is performed. The crossover formula is as follows:

[0274] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0275] t1=A1[contrast][0:swapLen];

[0276] t2=A2[contrast][0:swapLen];

[0277] A1[contrast][0:swapLen]={0};

[0278] A2[contrast][0:swapLen]={0};

[0279] A1[contrast]=A1[contrast]|t2;

[0280] A2[contrast]=A2[contrast]|t1;

[0281] Case 2: Depth crossover, only depth crossover is performed. The crossover formula is as follows:

[0282] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0283] t1 = A1[depth][0:swapLen];

[0284] t2 = A2[depth][0:swapLen];

[0285] A1[depth][0:swapLen]={0};

[0286] A2[depth][0:swapLen]={0};

[0287] A1[depth]=A1[depth]|t2;

[0288] A2[depth]=A2[depth]|t1;

[0289] Case 3: Density difference crossover and depth crossover, all genes are crossovered:

[0290] if Then swapLen = Random(0, EncodeLen), otherwise swapLen = Random(0, EncodeLen*ReduceRate);

[0291] t1=A1[contrast][0:swapLen];

[0292] t2=A2[contrast][0:swapLen];

[0293] A1[contrast][0:swapLen]={0};

[0294] A2[contrast][0:swapLen]={0};

[0295] A1[contrast]=A1[contrast]|t2;

[0296] A2[contrast]=A2[contrast]|t1;

[0297] t3 = A1[depth][0:swapLen];

[0298] t4 = A2[depth][0:swapLen];

[0299] A1[depth][0:swapLen]={0};

[0300] A2[depth][0:swapLen]={0};

[0301] A1[depth]=A1[depth]|t3;

[0302] A2[depth]=A2[depth]|t4;

[0303] Among them, swapLen represents the length of the crossover. If If the distance to the optimal individual is too far, then crossover requires increased randomness and a rough, long-range search to avoid falling into a local optimum. Therefore, use Random(0, EncodeLen). Otherwise, the distance to the optimal individual is too close, and crossover requires a more precise, closer search. Therefore, use Random(0, EncodeLen * ReduceRate). DistanceRate is set based on requirements, typically 3. ReduceRate is set in the range [0, 1], typically 0.5. In binary encoding, crossover simply swaps lengths.

[0304] In summary, the total number of crossovers is calculated using minRMS. Individuals are then randomly selected based on probability to determine whether to participate in the crossover. Individuals participating in the crossover then choose which genes to participate in the crossover based on probability. Finally, the randomly calculated swapLen is used to perform the crossover, ultimately ensuring both a coarse search over long distances and a precise search over short distances.

[0305] Here is a specific example. If minRMS is 1.2, minIterDelt is 1, sizePop is 4, and crossoverAlpha is 0.8, then corssCnt = round(1.2 / 1)*4 = 8, that is, at most 8 pairs of individuals participate in the crossover operation. Here, taking the crossover of a pair of individuals as an example, assume that the density difference of individual A1 is A1[contrast] = 0000 1111 110000110101, and the depth of individual A1 is A1[depth] = 1111 0011 0011 1010 1101; the density difference of individual A2 is A2[contrast] = 1000 1001 1010 1100 1111, and the depth of individual A2 is A2[depth] = 1111 001111110000 0001. If the random number R2 is less than the crossoverRate, then A1 and A2 are definitely crossed over.

[0306] If only density crossover is done, then, assume swapLen is 8;

[0307] Before crossover:

[0308] A1[contrast]=0000 1111 1100 0011 0101;

[0309] A2[contrast]=1000 1001 1010 1100 1111;

[0310] After crossover:

[0311] A1[contrast]=0000 1111 1100 1100 1111;

[0312] A2[contrast]=1000 1001 1010 0011 0101;

[0313] If only depth crossover is done, then, assume swapLen is 11;

[0314] Before crossover:

[0315] A1[depth]=1111 0011 0011 1010 1101;

[0316] A2[depth]=1111 0011 1111 0000 0001;

[0317] After crossover:

[0318] A1[depth]=1111 0011 0011 0000 0001;

[0319] A2[depth]=1111 0011 1111 1010 1101;

[0320] If you want to perform density difference and depth intersection at the same time, the process is similar to the above and will not be described here. Go to step 9.

[0321] Step 9: Apply the mutation operator to the individual based on probability. The mutation operator selects a single individual and then selects genes for mutation. The maximum number of mutations is sizePop. A random number R3 in the range [0, 1] is calculated. If R3 is less than mutationRate, an individual is selected for mutation. The mutation operator then randomly selects one from Case 1 and Case 2.

[0322] Case 1: Density difference mutation, only density difference mutation operation is performed. The mutation formula is as follows:

[0323] if

[0324] Then mutationPos=Random(EncodeLen*ReduceRate,EncodeLen),

[0325] Otherwise mutationPos = Random(0, EncodeLen*ReduceRate);

[0326] A1[contrast][mutation]=(A1[contrast][mutation]+1)%2;

[0327] Case 2: Deep mutation, only deep mutation operation is performed. The mutation formula is as follows:

[0328] if

[0329] Then mutationPos=Random(EncodeLen*ReduceRate,EncodeLen),

[0330] Otherwise mutationPos = Random(0, EncodeLen*ReduceRate);

[0331] A1[depth][mutation]=(A1[depth][mutation]+1)%2;

[0332] Among them, mutationPos represents the position of the mutation. If it satisfies If the distance to the optimal individual is too far, the genetic mutation must occur at a high position, resulting in significant differences between the genes before and after the mutation. To perform a rough, long-range search and avoid falling into a local optimum, we use Random(EncodeLen * ReduceRate, EncodeLen). Otherwise, the distance to the optimal individual is too close, and the genetic mutation must occur at a low position, requiring a precise, close-range search. Therefore, we use Random(0, EncodeLen * ReduceRate). The DistanceRate value is determined based on requirements, typically 3. The ReduceRate value range is [0, 1], typically 0.5.

[0333] In general, the maximum number of mutations is sizePop, and then the mutationRate probability is used to determine whether a mutation is necessary. If a mutation is clearly indicated, individuals are randomly selected, and the gene to be mutated is selected. Go to step 10.

[0334] Step 10: Obtain the next generation of the population. After steps 7 through 9, a population reproduction cycle is complete, resulting in a new population. Through natural selection, determine whether the global optimal solution has been found based on this new population. If so, proceed to step 12. Otherwise, proceed to step 11.

[0335] Step 11: The maximum number of population iterations is met. Steps 3 to 10 are executed in an iterative loop, with each iteration representing one population iteration, until the maximum number of population iterations, maxGenCnt, is reached. If not, proceed to step 3; otherwise, proceed to step 12.

[0336] Step 12: Find the optimal solution. This step yields the optimal solution for the entire search process. There are only two possible solutions: an optimal vector that satisfies the iterative optimality threshold, minIterDelt, or an optimal vector obtained by searching the entire space. At this point, the search process is complete, with not only the optimal solution but also the corresponding seafloor topography data.

[0337] In summary, the present invention proposes a method for solving seabed topography based on an improved genetic algorithm using binary coding and Parker-Oldenburg inversion. By finding optimal parameters using the improved genetic algorithm based on binary coding and then using the Parker-Oldenburg inversion method, a more accurate seabed topography is obtained. Compared to existing technologies, the present invention has at least the following advantages:

[0338] 1) An improved genetic algorithm based on binary coding is proposed to search for the optimal density contrast and depth. The binary coding uses a dynamic coding bit number and supports customized coding precision, ultimately improving the accuracy of Parker-Oldenburg inversion of seafloor topography.

[0339] 2) We propose optimized crossover and mutation operators. Binary encoding and decoding are simple, and operations such as crossover and mutation are easy to implement. The improved operators support both long-range coarse searches and short-range precise searches, ensuring a more efficient search process for the improved genetic algorithm and improving both data solution accuracy and efficiency.

[0340] 3) The improved genetic algorithm based on binary coding and Parker-Oldenburg inversion are combined to ensure the accuracy of the seabed topography and improve the computational efficiency.

[0341] On the other hand, Figure 9 As shown, an embodiment of the present invention provides a submarine topography solving device 900, which may include:

[0342] The first module 901 is configured to initialize an initial population based on a preset rule; the initial population is used as a first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to first parameters of the target search area; the first parameters include density difference and average seabed depth; the first parameters are obtained based on binary coding;

[0343] The second module 902 is configured to obtain seabed topography data of the target search area by performing an inversion process based on the first parameter corresponding to the individuals in the first population;

[0344] The third module 903 is used to perform fitness evaluation based on the seabed topography data and the seismic depth matrix of the target search area to obtain the root mean square value corresponding to each individual in the first population;

[0345] The fourth module 904 is used to select the corresponding individual as the target individual when the root mean square value of the individual in the first population is less than or equal to the iterative optimal threshold; otherwise,

[0346] A fifth module 905 is configured to select a preset number of individuals from the first population using a random threshold based on the priority level of each individual in the first population, and to obtain a second population; the priority level is determined based on the root mean square value, and the priority level of the same individual is negatively correlated with the root mean square value;

[0347] The sixth module 906 is configured to perform a first number of crossover operations on random individuals in the second population based on probability to obtain a third population;

[0348] The seventh module 907 is used to perform a second number mutation operation on random individuals in the third population based on probability to obtain a fourth population;

[0349] The eighth module 908 is configured to use the fourth population as the first population, increase the first loop count by 1, and return to execute the second module until the target individual is obtained, or the first loop count equals the preset iteration count;

[0350] A ninth module 909 is configured to output a target individual according to the first population obtained from the last cycle when the first cycle number is equal to the preset iteration number;

[0351] The tenth module 910 is used to use the seabed topography data corresponding to the target individual as the target data value for solving the seabed topography of the target search area.

[0352] 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.

[0353] 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 implements the above-described method for predicting the bottom boundary of the hydrate stability region when executing the computer program. The electronic device can be any smart terminal, including a tablet computer and an in-vehicle computer.

[0354] 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.

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

[0356] The processor 1001 may 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 configured to execute relevant programs to implement the technical solutions provided by the embodiments of the present invention.

[0357] The memory 1002 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 1002 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 1002 and is called by the processor 1001 to execute the network node population optimization method of the embodiment of the present invention.

[0358] Input / output interface 1003, used to implement information input and output;

[0359] Communication interface 1004, 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.);

[0360] Bus 1005 , which transmits information between various components of the device (e.g., processor 1001 , memory 1002 , input / output interface 1003 , and communication interface 1004 );

[0361] The processor 1001 , the memory 1002 , the input / output interface 1003 and the communication interface 1004 are connected to each other in communication within the device via a bus 1005 .

[0362] 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.

[0363] 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.

[0364] 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.

[0365] 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.

[0366] 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.

[0367] 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.

[0368] 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 method for solving seabed topography, characterized in that: The following steps are involved: Initializing an initial population based on a preset rule; using the initial population as a first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to first parameters of the target search area; the first parameters include density difference and average seabed depth; the first parameters are obtained based on binary coding; Based on the first parameters corresponding to the individuals in the first population, obtaining seabed topography data of the target search area through an inversion method; Based on the seabed topography data and in combination with the seismic depth matrix of the target search area, a fitness evaluation is performed to obtain a root mean square value corresponding to each individual in the first population; When the root mean square value corresponding to the individual in the first population is less than or equal to the iterative optimal threshold, the corresponding individual is taken as the target individual; otherwise, Based on the priority corresponding to each of the individuals in the first population, selecting the preset number of individuals from the first population using a random threshold to obtain a second population; the priority is determined based on the root mean square value, and the priority of the same individual in the first population is negatively correlated with the root mean square value; performing a first number of crossover operations on the random individuals in the second population based on probability to obtain a third population; Performing a second mutation operation on the random individuals in the third population based on probability to obtain a fourth population; Taking the fourth population as the first population, increasing the first loop count by 1, and returning to the step of obtaining the seabed topography data of the target search area by an inversion method based on the first parameters corresponding to the individuals in the first population, until the target individual is obtained, or the first loop count equals a preset number of iterations; When the first cycle number is equal to the preset iteration number, outputting the target individual according to the first population obtained in the last cycle; The seabed topography data corresponding to the target individual is used as the target data value for solving the seabed topography of the target search area.

2. The method for solving seabed topography according to claim 1, characterized in that: Initializing the initial population based on the preset rules includes the following steps: Based on a preset center point and a first random number, randomly generating the preset number of initial parameters near the center point; the first random number represents a random number normally distributed within a first interval; the initial parameters include the density difference in decimal and the average depth of the seabed; Alternatively, based on a second random number, the preset number of initial parameters are randomly generated within a second interval; the second random number represents a random value within a third interval; Alternatively, in response to an input instruction of a target object, obtaining the preset number of initial parameters; Binary encoding is performed on the decimal initial parameter to obtain the first binary parameter, and then sorting is performed to obtain the corresponding individual; The initial population is obtained by sorting the preset number of individuals.

3. The method for solving seabed topography according to claim 1, characterized in that: The method of obtaining the seabed topography data of the target search area by an inversion method based on the first parameters corresponding to the individuals in the first population includes the following steps: Binary decoding is performed on the first parameters corresponding to the genes of all the individuals in the first population to obtain second parameters; wherein the second parameters include the density difference in decimal and the average depth of the seabed; Based on the second parameter, the seabed topography data of the target search area is obtained by processing using the Parker-Oldenburg inversion method.

4. The method for calculating seabed topography according to claim 1, wherein: The step of selecting the preset number of individuals from the first population by a random threshold based on the priority corresponding to each individual in the first population to obtain a second population includes the following steps: Taking the reciprocal of the root mean square value as an exponent of a natural constant, obtaining the priority corresponding to each individual in the first population; Normalizing the priorities corresponding to all the individuals in the first population to obtain a normalized priority corresponding to each individual; Arranging the normalized priorities corresponding to all individuals in the first population to obtain a priority array; The value of the i-th element in the priority array is the cumulative sum of the normalized priorities corresponding to the first individual to the i-th individual in the first population; generating a random number within a fourth interval as the random threshold; Based on the random threshold, sequentially traverse the priority array to find the first element greater than the random threshold as the target element; According to the element number of the target element, the corresponding individuals are selected from the first population and arranged into the second population, and the step of generating a random number as the random threshold within the fourth interval is returned to be executed until the preset number of individuals are selected from the first population and arranged into the second population.

5. The method for calculating seabed topography according to claim 1, wherein: The method of performing a first number of crossover operations on the random individuals in the second population based on probability to obtain a third population comprises the following steps: Obtaining a minimum value among the root mean square values ​​corresponding to all the individuals in the second population as a minimum root mean square value; performing an upward rounding operation on the ratio of the minimum root mean square value to the iterative optimal threshold to obtain a target integer; and multiplying the target integer by the preset number as the first number; Randomly obtaining two individuals from the second population as crossover individuals; generating a random number as a third random number within a fifth interval, and performing the crossover operation on the gene fragments of random length corresponding to the density difference and / or the average seabed depth in the crossover individual when the third random number is less than a preset crossover operator probability; otherwise, not performing the crossover operation on the genes of the crossover individual; Increment the second cycle number by 1, and return to the step of randomly obtaining two individuals from the second population as crossover individuals until the second cycle number equals the first cycle number, thereby obtaining the third population; The second cycle number is initialized to 0.

6. The method for calculating seabed topography according to claim 1, wherein: The second number of times is less than or equal to the preset number; and the probability-based mutation operation of the random individuals in the third population for the second number of times to obtain the fourth population includes the following steps: Randomly obtaining one of the individuals from the third population as a mutant individual; generating a random number as a fourth random number within a sixth interval, and performing the mutation operation on the gene corresponding to the density difference and / or the average seabed depth in the mutant individual when the fourth random number is less than a preset mutation operator probability; otherwise, not performing the mutation operation on the gene of the mutant individual; Increment the third cycle number by 1, and return to the step of randomly obtaining one of the individuals from the third population as a mutant individual until the third cycle number equals the second cycle number, thereby obtaining the fourth population; The third cycle number is initialized to 0.

7. The method for calculating seabed topography according to claim 1, wherein: Outputting the target individual according to the first population obtained in the last cycle includes the following steps: Obtain a minimum value among the root mean square values ​​corresponding to all the individuals in the first population obtained in the last cycle, and output the individual corresponding to the minimum value as the target individual.

8. A device for calculating seabed topography, characterized in that: include: The first module is used to initialize the initial population based on preset rules; The initial population is used as a first population; wherein the first population includes a preset number of individuals, and the genes of the individuals correspond to first parameters of the target search area; the first parameters include density difference and average seabed depth; the first parameters are obtained based on binary coding; A second module is configured to obtain seabed topography data of the target search area by an inversion method based on the first parameters corresponding to the individuals in the first population; A third module is configured to perform fitness evaluation based on the seabed topography data and the seismic depth matrix of the target search area to obtain a root mean square value corresponding to each individual in the first population; The fourth module is configured to take the individual in the first population as the target individual when the root mean square value corresponding to the individual is less than or equal to the iterative optimal threshold; otherwise, A fifth module is configured to select the preset number of individuals from the first population using a random threshold based on the priority corresponding to each individual in the first population, and to obtain a second population; the priority is determined based on the root mean square value, and the priority of the same individual in the first population is negatively correlated with the root mean square value; A sixth module is configured to perform a first number of crossover operations on the random individuals in the second population based on probability to obtain a third population; A seventh module is configured to perform a second mutation operation on the random individuals in the third population based on probability to obtain a fourth population; an eighth module, configured to use the fourth population as the first population, increase the first loop count by 1, and return to execute the second module until the target individual is obtained, or the first loop count equals a preset number of iterations; A ninth module, configured to output the target individual according to the first population obtained in the last cycle when the first cycle number is equal to the preset iteration number; A tenth module is configured to use the seabed topography data corresponding to the target individual as a target data value for solving the seabed topography of the target search area.

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

  • Gravity multi-interface inversion method

    CN105549106A

  • Spark-based pre-stack seismic data AVO elastic parameter inversion method and system

    CN108445537A