Carbon dioxide injection-production parameter multi-objective optimization method based on spark distribution
By combining the improved non-dominated sorting genetic algorithm with the Spark distributed framework, the multi-objective conflict and computational efficiency problems of injection and production parameter optimization in the carbon dioxide enhanced oil recovery process were solved, achieving efficient multi-objective optimization and generating a variety of feasible injection and production parameter schemes.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- YANGTZE UNIVERSITY
- Filing Date
- 2026-03-23
- Publication Date
- 2026-06-05
AI Technical Summary
Existing technologies for optimizing injection and production parameters in carbon dioxide enhanced oil recovery (EOR) face challenges such as multi-objective conflicts, high computational costs, and local optimum traps, making it difficult to achieve an efficient and rapid globally optimal injection and production strategy.
An improved non-dominated sorting genetic algorithm is deeply integrated with the Spark distributed framework. Through parallel numerical simulation and a specific aggregation strategy, the convergence and diversity problems of multi-objective solution sets are solved, realizing distributed computing and multi-objective optimization.
It significantly improves computational efficiency, generates a uniformly distributed Pareto optimal solution set, provides decision-makers with multiple feasible solutions, shortens optimization time, and adapts to the optimization needs of different reservoir model sizes.
Smart Images

Figure CN122154556A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of petroleum development technology, and in particular to a multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing. Background Technology
[0002] Carbon dioxide capture, utilization, and storage (CCUS) is one of the key technologies for addressing global climate change and achieving carbon neutrality. In the process of carbon dioxide enhanced oil recovery (CEOR) in oil reservoirs, appropriate injection and production parameters, such as injection rate, pressure, and gas-water ratio, are crucial for balancing improved oil recovery, maximizing CO2 storage, and ensuring geological safety. Current optimization of injection and production parameters faces the following main challenges: 1. Multi-objective conflict: Economic benefits often conflict with storage benefits and safety indicators, and optimization methods with a single objective cannot meet complex engineering requirements.
[0003] 2. High computational cost: Reservoir numerical simulation is a highly nonlinear and complex computational process, and a single simulation can take several hours. Traditional evolutionary algorithms require tens of thousands of iterations for evaluation. In a single-machine serial environment, the optimization cycle can take weeks or even months, which severely restricts the timeliness of field applications.
[0004] 3. Local Optimality Trap: The high-dimensional non-convex parameter space makes traditional gradient algorithms prone to getting trapped in local optima, making it difficult to find the globally optimal injection and sampling strategy. Summary of the Invention
[0005] The purpose of this invention is to address the shortcomings of existing technologies by deeply integrating an improved non-dominated sorting genetic algorithm with the Spark distributed framework, significantly improving computational efficiency through parallel numerical simulation, and solving the convergence and diversity problems of multi-objective solution sets through a specific aggregation strategy.
[0006] To achieve the above objectives, this invention provides a multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing, comprising the following steps: S1. Construct a geological model of the target reservoir: Obtain geological modeling data, high-pressure fluid property data, and historical production data of the target reservoir, and construct a basic numerical simulation model of the carbon dioxide flooding reservoir. S2. Construct a multi-objective mathematical model: Determine the optimization variables and objective functions. The optimization variables include gas injection rate, gas injection pressure, bottom hole flowing pressure, shut-in time, gas-water ratio and injection cycle of alternating gas-water injection; the objective functions include maximizing cumulative oil production, maximizing carbon dioxide storage, and maximizing net present value. S3. Population RDD: Initialize the multi-objective optimization algorithm population and generate a population containing... The initial injection and production variable set for each individual; the Spark distributed computing environment is started, the reservoir numerical simulation basic model is broadcast to each computing node, and the initial injection and production variable set is transformed into a resilient distributed dataset; S4. Perform distributed fitness evaluation: In Spark's Map operator, each computing node calls commercial reservoir numerical simulation software to perform parallel computation based on the assigned decision variables and calculate the objective function value for each individual. S5. Perform multi-objective aggregation and evolution operations: The Spark driver node collects the computational objective function values of each computing node, performs global non-dominated sorting and crowding distance calculation based on the aggregation strategy, and selects the Pareto front of the current generation. S6. Based on genetic operators, perform selection, crossover, and mutation operations on the population to generate offspring populations, and repeat steps S5 to S6 for iterative iteration until the preset iteration termination condition is met; output the final Pareto optimal solution set, and select the optimal injection and extraction parameter scheme according to decision preferences.
[0007] Preferably, in step S1, the basic model for numerical simulation of the carbon dioxide flooding reservoir is a three-dimensional heterogeneous geological model, adopting a five-point production and injection mode. The model parameters include effective thickness, burial depth, porosity, permeability, reservoir temperature, initial pressure, and initial water saturation.
[0008] Preferably, in step S2, the objective function is: Maximum net present value: ; in, The annual discount rate is 10%. For oil prices, For carbon tax subsidies, To reduce the cost of CO2 capture and compression, For the cost of producing water treatment, This represents the flow rate of each phase at time t. For fixed costs; Maximize carbon dioxide storage efficiency: ; in, Let t be the carbon dioxide flow rate injected at time t. Let be the flow rate of carbon dioxide discharged back to the ground at time t. This refers to the mass of CO2 that ultimately remains underground.
[0009] Preferably, in step S3, the Spark distributed computing environment uses YARN as the resource manager and dynamically adjusts the memory and CPU core count of the Executor according to the computational load of the reservoir simulation task.
[0010] Preferably, in step S4, the distributed fitness evaluation includes: using Spark's task scheduler DAGScheduler to divide the simulation tasks of individuals in the population into multiple Stages; for each Task, the computing node reads the corresponding injection parameters, modifies the input file of the numerical simulator, calls the simulation kernel to solve the problem, and parses the output file to extract different injection objective function values; if non-convergence occurs during the simulation, a poor fitness value is assigned to the individual through a penalty function mechanism.
[0011] Preferably, in step S5, the multi-objective aggregation strategy specifically includes: establishing a global archive set to store non-dominated solutions generated during the evolutionary process; performing mixed aggregation of the fitness results obtained by parallel computation in the current generation with the global archive set; performing non-dominated sorting on the aggregated set to divide individuals into different rank levels; and calculating the crowding distance within the same rank level to remove solutions with high crowding and low dominance levels.
[0012] Preferably, the multi-objective aggregation strategy further includes: using Chebyshev decomposition to transform the multi-objective optimization problem into multiple single-objective sub-problems for scalar aggregation; after collecting fitness values at the Driver end, performing evolutionary operator operations only within the T nearest neighbors in Euclidean distance; after each iteration, if the global archive set size exceeds a threshold, using the K-Means clustering algorithm to divide the archive set into a preset number of clusters, with each cluster retaining only the individual closest to the cluster center or with the optimal aggregation function value.
[0013] Preferably, in step S6, the crossover operator uses simulated binary crossover, and the mutation operator uses polynomial mutation.
[0014] This invention employs the aforementioned multi-objective optimization method for carbon dioxide injection and extraction parameters based on Spark distributed computing, with the following beneficial effects: (1) This invention realizes the concurrent execution of numerical simulation tasks through Spark distributed parallel computing. When the number of nodes is sufficient, the optimization time can be shortened to the order of time of a single simulation. (2) The multi-objective aggregation algorithm of the present invention can generate a Pareto optimal solution set with uniform distribution and wide coverage, providing decision-makers with a variety of feasible solutions to weigh economic benefits, storage potential and security risks. (3) The algorithm architecture of the present invention is coupled, and the number of computing nodes can be flexibly increased according to the scale of the reservoir model to adapt to different optimization needs from mechanism model to million-node reservoir model. Attached Figure Description
[0015] Figure 1 This is a flowchart of the multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing, which is the subject of this invention. Figure 2 This is a diagram of the Spark distributed multi-objective optimization architecture of the present invention; Figure 3 This is a flowchart of the multi-objective optimization process for injection and extraction parameters of the present invention; Figure 4 It is the Pareto front solution set of this invention. Detailed Implementation
[0016] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to specific embodiments and the accompanying drawings. It should be understood that these descriptions are merely exemplary and not intended to limit the scope of the invention. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.
[0017] like Figure 1 As shown in the figure, an embodiment of the present invention provides a multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing, comprising the following steps: S1. Constructing a high-precision geological model for a carbon dioxide flooding reservoir: Based on well logging, core, and seismic data of the target block, a three-dimensional heterogeneous geological model was constructed using commercial numerical simulation software. Effective thickness: 20m; Burial depth: 2500m; Porosity =0.18; Permeability K=200mD; Capillary pressure ignored; Reservoir temperature: 90℃; Initial pressure: 26.3MPa; Initial water saturation S wi =0.25; Layout type: Five-point injection mode.
[0018] S2. Establish a multi-objective injection-progression parameter optimization mathematical model: Define a vector of decision variables (optimization variables). This includes factors such as gas injection rate, gas injection pressure, bottom hole flowing pressure, shut-in time, gas-water ratio and injection cycle during alternating gas-water injection; and optimization of the objective function set. The definition is as follows: Objective function 1: Maximize net present value: ; in, The annual discount rate is 10%. For oil prices, For carbon tax subsidies, To reduce the cost of CO2 capture and compression, For the cost of producing water treatment, This represents the flow rate of each phase at time t. For fixed costs; Objective function 2: Maximize carbon dioxide storage efficiency: ; in, Let t be the carbon dioxide flow rate injected at time t. Let be the flow rate of carbon dioxide discharged back to the ground at time t. The target is to maximize the amount of CO2 that will ultimately remain underground. At the same time, reduce the amount of extracted material returned to the source.
[0019] Objective function 3: Cumulative oil production .
[0020] S3. Population RDD: Initialize the multi-objective optimization algorithm population and generate a population containing... The initial set of variables for each individual; the population generated by the evolutionary algorithm. (Include Each individual is a set of injection and sampling parameters (x), which are serialized and converted into an RDD using the sc.parallelize(population_list) method.
[0021] S4. Partitioning, Scheduling, and Fault Tolerance Mechanisms: To avoid the overhead of frequently starting the JVM, a map operator is used. Utilizing Spark's DAG mechanism, if a simulated task fails on a node, the Driver reschedules the Task to another node, assigning a penalty value according to the penalty function mechanism.
[0022] S5. Multi-objective optimization based on Chebyshev aggregation and cluster archiving: S51. Scalar Aggregation: Using Chebyshev decomposition, the problem of maximizing net present value and maximizing carbon dioxide storage efficiency is transformed into multiple single-objective sub-problems. For the i-th sub-problem, the aggregation value g is calculated: ; in, It is an ideal reference point. .
[0023] S52. Dynamic Neighborhood Update: After collecting the fitness values returned by each Executor, the Driver performs evolutionary operator operations only on the T nearest neighbors in Euclidean distance, thereby balancing global exploration and local development.
[0024] S53. Cluster-based archive maintenance: To address the limitations of traditional crowding distance on complex Pareto fronts, at the end of each iteration: all non-dominated solutions are stored in a global archive set A; like Perform the K-Means clustering algorithm: divide the solution set A into groups in the target space. There are several clusters; within each cluster, only the individual closest to the cluster center or the individual with the best aggregation function value is retained. The Spark distributed multi-objective optimization architecture diagram is as follows: Figure 2 As shown.
[0025] S6. Optimal Decision Output: After the operation terminates, the Driver outputs the final Pareto optimal solution set. The flowchart for multi-objective optimization with parameter sampling is shown below. Figure 3 As shown.
[0026] Plot a 3D Pareto front surface, with the X-axis representing cumulative oil production, the Y-axis representing CO2 reserves, and the Z-axis representing NPV. Figure 4 As shown, increasing the gas injection rate can significantly improve cumulative oil production, but excessively high rates will reduce CO2 capture fraction and increase the risk of fracturing and leakage; a shorter WAG cycle can achieve a higher recovery rate, which needs to be balanced with the aforementioned objectives.
[0027] according to Figure 4 The operating results show that: (1) the gas injection rate is between 12,000 and 16,000 m 3 / d、When the gas injection pressure is controlled in the range of 27.8-28.5MPa, the overall target performance is the best, which can simultaneously take into account oil production, storage and economy; (2) The optimal shut-in time is 40-60 days; (3) The WAG cycle is optimal in the range of 8-15 days. The short cycle enhances the sweep efficiency, but too short a cycle may introduce injection-production interference. Therefore, this range achieves a more stable comprehensive target value. In the optimal range, the cumulative oil production increase is increased by about 15%-23%; CO2 storage is increased by 10%-18%; and the net present value (NPV) is increased by 12%-20% compared with the basic operating condition.
[0028] Therefore, this invention adopts the above-mentioned multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing, which has the following advantages: 1) Extremely high computational efficiency: Through Spark distributed parallel computing, the concurrent execution of numerical simulation tasks is realized. With sufficient nodes, the optimization time can theoretically be shortened to the order of time of a single simulation; 2) Excellent decision support: The multi-objective aggregation algorithm can generate a Pareto optimal solution set that is evenly distributed and has a wide coverage, providing decision-makers with a variety of feasible solutions to weigh economic benefits, storage potential and safety risks; 3) Good scalability: The algorithm architecture is coupled and can flexibly increase the number of computing nodes according to the scale of the reservoir model, adapting to different optimization needs from mechanistic models to reservoir models with millions of nodes.
[0029] It is worth noting that all contents not described in detail in this invention are existing technologies and are well known to those skilled in the art.
[0030] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can still be made to the technical solutions of the present invention, and these modifications or equivalent substitutions cannot cause the modified technical solutions to deviate from the spirit and scope of the technical solutions of the present invention.
Claims
1. A multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing, characterized in that, Includes the following steps: S1. Construct a geological model of the target reservoir: Obtain geological modeling data, high-pressure fluid property data, and historical production data of the target reservoir, and construct a basic numerical simulation model of the carbon dioxide flooding reservoir. S2. Construct a multi-objective mathematical model: Determine the optimization variables and objective functions. The optimization variables include gas injection rate, gas injection pressure, bottom hole flowing pressure, shut-in time, gas-water ratio and injection cycle of alternating gas-water injection; the objective functions include maximizing cumulative oil production, maximizing carbon dioxide storage, and maximizing net present value. S3. Population RDD: Initialize the multi-objective optimization algorithm population and generate a population containing... The initial injection and production variable set for each individual; the Spark distributed computing environment is started, the reservoir numerical simulation basic model is broadcast to each computing node, and the initial injection and production variable set is transformed into a resilient distributed dataset; S4. Perform distributed fitness evaluation: In Spark's Map operator, each computing node calls commercial reservoir numerical simulation software to perform parallel computation based on the assigned decision variables and calculate the objective function value for each individual. S5. Perform multi-objective aggregation and evolution operations: The Spark driver node collects the computational objective function values of each computing node, performs global non-dominated sorting and crowding distance calculation based on the aggregation strategy, and selects the Pareto front of the current generation. S6. Based on genetic operators, perform selection, crossover, and mutation operations on the population to generate offspring populations, and repeat steps S5 to S6 for iterative iteration until the preset iteration termination condition is met; output the final Pareto optimal solution set, and select the optimal injection and extraction parameter scheme according to decision preferences.
2. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S1, the basic model for numerical simulation of the carbon dioxide flooding reservoir is a three-dimensional heterogeneous geological model, which adopts a five-point production and injection mode. The model parameters include effective thickness, burial depth, porosity, permeability, reservoir temperature, initial pressure, and initial water saturation.
3. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S2, the objective function is: Maximum net present value: ; in, The annual discount rate is 10%. For oil prices, For carbon tax subsidies, To reduce the cost of CO2 capture and compression, For the cost of producing water treatment, This represents the flow rate of each phase at time t. For fixed costs; Maximize carbon dioxide storage efficiency: ; in, Let t be the carbon dioxide flow rate injected at time t. Let be the flow rate of carbon dioxide discharged back to the ground at time t. This refers to the mass of CO2 that ultimately remains underground.
4. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S3, the Spark distributed computing environment uses YARN as the resource manager and dynamically adjusts the memory and CPU core count of the Executor according to the computational load of the reservoir simulation task.
5. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S4, the distributed fitness evaluation includes: using Spark's task scheduler DAGScheduler to divide the simulation tasks of individuals in the population into multiple Stages; for each Task, the computing node reads the corresponding injection parameters, modifies the input file of the numerical simulator, calls the simulation kernel to solve the problem, and parses the output file to extract different injection objective function values; if non-convergence occurs during the simulation, a poor fitness value is assigned to the individual through a penalty function mechanism.
6. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S5, the multi-objective aggregation strategy specifically includes: establishing a global archive set to store non-dominated solutions generated during the evolution process; performing mixed aggregation of the fitness results obtained by parallel computation in the current generation with the global archive set; performing non-dominated sorting on the aggregated set to divide individuals into different rank levels; and calculating the crowding distance within the same rank level to remove solutions with high crowding and low dominance levels.
7. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 6, characterized in that, The multi-objective aggregation strategy further includes: using Chebyshev decomposition to transform the multi-objective optimization problem into multiple single-objective sub-problems for scalar aggregation; after collecting fitness values at the Driver end, performing evolutionary operator operations only within the T nearest neighbors in Euclidean distance; after each iteration, if the global archive set size exceeds a threshold, using the K-Means clustering algorithm to divide the archive set into a preset number of clusters, with each cluster retaining only the individual closest to the cluster center or with the optimal aggregation function value.
8. The multi-objective optimization method for carbon dioxide injection and production parameters based on Spark distributed computing as described in claim 1, characterized in that, In step S6, the crossover operator uses simulated binary crossover, and the mutation operator uses polynomial mutation.