Method and device for optimizing feasible point, and method and device for optimizing production of oil and gas reservoir

By combining population grouping and simplex optimization with streamline proxy optimization, the problems of time-consuming, labor-intensive, and unreliable optimization in oil and gas reservoir production have been solved. This approach enables rapid feasible point optimization under complex constraints, thereby improving the efficiency and reliability of oil and gas reservoir production optimization.

CN121599173APending Publication Date: 2026-03-03PETROCHINA CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411153669.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-21
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

Existing oil and gas reservoir production optimization methods suffer from time-consuming and labor-intensive nature, as well as insufficient reliability or accuracy. In particular, they are difficult to optimize feasible points efficiently under complex constraints, and they fail to effectively consider the uncertainties of geological models and the imperfect streamline tracing technology for multi-medium reservoirs.

Method used

A feasible point optimization method is adopted, which combines population grouping, simplex construction and optimization steps with streamline surrogate optimization method. It utilizes initial surrogate model and streamline simulation flow field diagnosis method to achieve feasible point optimization under complex constraints, and improves the applicability of surrogate optimization algorithm by SGBE-FP algorithm.

Benefits of technology

It enables rapid feasible point optimization under complex constraints, improves the calculation speed and applicability of oil and gas reservoir production optimization, reduces calculation costs, and enhances the reliability and applicability of the results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121599173A_ABST
    Figure CN121599173A_ABST
Patent Text Reader

Abstract

The invention discloses a feasible point optimization method, and an oil and gas reservoir production optimization method and device. The oil and gas reservoir production optimization method comprises the following steps: determining a decision variable to be optimized for oil and gas reservoir production, a constraint condition and an optimization objective function; constructing an initial agent model; establishing an objective function of the decision variable based on the sampling strategy, wherein the objective function comprises an optimization objective function; according to the objective function and the constraint condition, a feasible point is obtained by using an SGBE-FP method (including the steps of population establishment, population grouping, simplex construction, simplex optimization and the like, including internal simplex iterative optimization, middle grouping iterative optimization and external population iterative optimization), and in the step, an optimization objective function value of the selected feasible point is predicted by using a current agent model; determining an optimization objective function value (true value) of a feasible point, and updating the agent model; and repeatedly obtaining the feasible points, updating the agent model until the termination condition is met, and obtaining the optimal decision variable. According to the method, the optimization calculation amount is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of oil and gas reservoir production optimization and optimization algorithm technology, and in particular to a feasible point optimization method, an oil and gas reservoir production optimization method and apparatus. Background Technology

[0002] In the field of oil and gas reservoir production optimization, traditional optimization methods mainly fall into two categories: reservoir engineering methods and numerical simulation methods. Reservoir engineering methods rely on empirical knowledge solidified from theoretical deduction, dynamic analysis, geological reservoir understanding, and past development practices to heuristically adjust the injection-production system. The optimization strategy is continuously updated and revised based on the adjustment effects and constantly updated dynamic data. Its advantages include simplicity, practicality, strong operability, low data requirements and time costs, and real-time operation, making it suitable for scenarios requiring high-frequency adjustments, such as daily development control. However, this type of method also has significant drawbacks, such as: over-reliance on the researcher's own knowledge depth and understanding of the target reservoir; different researchers analyzing the same data source may reach different conclusions; it can only provide a general direction for optimization adjustments, with low precision; and its analysis efficiency decreases when the number of reservoir wells is large.

[0003] Numerical simulation methods, based on detailed geological modeling, utilize dynamic data to perform historical fitting of the numerical model, and then leverage the predictive capabilities of simulators to conduct production optimization studies. However, limited by time and computational costs, researchers often artificially set up several simulation schemes based on a comprehensive understanding of the geological reservoir, and then select the optimal solution from the simulation results. These methods can integrate various data such as seismic, well logging, and production dynamics, offering high reliability. However, the historical fitting process requires a large amount of data and is time-consuming, and optimizing a limited number of schemes makes it difficult to determine the optimal solution. Even when using optimization algorithms such as gradient-based algorithms (e.g., finite difference gradient, adjoint gradient), approximate gradient-based algorithms (e.g., synchronous perturbation stochastic approximation SPSA, stochastic Gaussian search algorithm SGSD or G-SPSA, ensemble optimization EnOpt, and stochastic simplex approximation gradient StoSAG), or classical gradient-free algorithms (e.g., particle swarm optimization PSO, genetic algorithm GA, differential evolution DE, pattern search PS, simulated annealing SA), to automatically optimize the reservoir numerical model after historical fitting, the computational cost remains extremely high. Furthermore, there is significant room for improvement in optimization performance with a limited number of simulations. Summary of the Invention

[0004] Given the shortcomings of the aforementioned oil and gas reservoir production optimization methods, reservoir simulator surrogate optimization or streamline simulation production optimization can be used to achieve oil and gas reservoir production optimization. In the reservoir simulator surrogate optimization method, the objective function evaluation and surrogate model update are completed "online" after the initial surrogate is constructed using the initial experimental design. The two processes of surrogate construction and surrogate optimization (determination of potential candidate points) are performed alternately, and the surrogate model does not need to be sufficiently accurate as to approximate the reservoir numerical model from the outset. Its main advantages are: the surrogate can represent the physical essence of the numerical simulator; the simulation cost is significantly reduced after the initial surrogate is constructed; the optimization (or seeking potential candidate points) process no longer requires calling the simulator for calculations; and the time cost is greatly reduced compared to numerical simulation optimization combined with traditional optimization algorithms because the number of simulations is controllable. It should be noted that this type of method is not suitable for the "train first, then optimize" path of pure data-driven surrogate optimization, because the dataset acquisition process is too time-consuming. However, the main problems include: (1) Since the required initial sample points are sensitive to the dimension of the optimization problem and involve multiple iterative function evaluations, the time consumption of the initial surrogate model construction and subsequent surrogate update process is still generally long; (2) Even if the training process and optimization process can achieve a benign interaction to accelerate the optimization solution, the optimization result still depends on the quality or accuracy of the historical fitting model of the numerical simulator in the early stage, and the realization of the production optimization closed loop still faces challenges such as rapid historical fitting; (3) The influence of geological model uncertainty has not been effectively considered; (4) The synergistic effect with other reservoir production optimization methods has not been effectively utilized; (5) For high-dimensional complex constraint optimization problems with linear and nonlinear (inequality and equality) constraints, the efficient synergy of surrogate optimization in terms of surrogate construction, sampling strategy, optimization algorithm, and constraint processing method still faces challenges.

[0005] Streamline simulation-based production optimization is another promising method for reservoir production optimization. It can be based on streamline properties generated from finite difference model simulations or directly apply the streamline field generated by the streamline tracing algorithm within the streamline model. This type of method primarily relies on the speed advantage of streamline simulation and the unique physical meaning that streamlines impart to the seepage field to optimize injection-production flow distribution. Current streamline simulation-based production optimization methods mainly optimize flow distribution based on flow field diagnostic indicators such as injection efficiency and time-of-flight. The former calculates the injection efficiency of a single well or well pair based on the flow distribution coefficient, sets a corresponding objective function (such as injection efficiency balancing), and solves for the optimal water well injection rate and oil well production rate according to a certain flow update criterion. This method is applicable to the mid-to-late stages of waterflood development and is beneficial for stabilizing oil production and controlling water. The latter aims to make the arrival time of injected water (water breakthrough time) at each production well as similar as possible, thereby achieving an approximately balanced displacement effect to improve sweep efficiency. However, this method is often more effective in the early stages of development. In addition, some researchers combine streamline simulation with mathematical methods (such as fuzzy logic, optimization algorithms, other derived information, or custom diagnostic indicators) to optimize injection-production flow rates. The reliability of these methods depends to some extent on the accuracy of the historical fitting of the streamline model in the early stage. The advantage of streamline simulation lies in its unique flow field diagnosis function. The injection and production flow rate optimization has a clear physical connotation and is not sensitive to the number of wells. The computational cost is significantly reduced compared with the reservoir simulator proxy optimization method. However, the production optimization problem at the oilfield scale usually involves very complex reservoir models, production and facility constraints and a large number of unknown factors. This makes the production optimization method based on streamline simulation (flow field diagnosis) still face the following challenges: (1) The streamline tracing technology in complex oil and gas reservoirs (multi-medium reservoirs such as fractured reservoirs, fractured-vuggy reservoirs, and triple-medium reservoirs) is still imperfect; (2) There are uncertain parameters in the flow rate update criteria, which may also need to be optimized. Further coupling of optimization algorithms in flow field diagnosis optimization can be considered; (3) The optimization process still fails to effectively consider the uncertainty of the geological model, and the reliability of the results is limited to a certain extent. The degree depends on the accuracy of the historical fitting of the model in the early stage. This problem is expected to be partially solved by combining with machine learning and optimization theory. It is necessary to develop an intelligent closed-loop production optimization method that combines automatic historical fitting; (4) At present, there is no flow field diagnosis method or production optimization platform based on streamline simulator or finite difference simulator to derive streamline information in China. Streamline simulation optimization method has not been widely used; (5) The scope of application is limited. For the development scheme involving layers, well network and well location and its joint optimization with injection and production parameters, it is still necessary to study it extensively; (6) The coordination mechanism with simplified physical model has not been systematically studied.

[0006] Given the aforementioned analysis of the advantages and disadvantages of reservoir production optimization methods, streamline surrogate optimization, which combines surrogate optimization and streamline simulation optimization, is a promising development direction. It can overcome the inherent shortcomings of single methods, such as being time-consuming, labor-intensive, and lacking reliability or accuracy. However, regardless of whether it's a simple surrogate optimization method or a streamline surrogate optimization method, the iterative update process of the surrogate model requires frequent acquisition of feasible points (decision variables). Therefore, the reasonable and rapid optimization of feasible points under complex constraints is one of the key points of reservoir production optimization.

[0007] To enrich process routes and increase the selection space, embodiments of the present invention provide a feasible point optimization method, an oil and gas reservoir production optimization method and apparatus, which can quickly and reasonably realize feasible point optimization under complex constraints. Furthermore, based on this, a streamline proxy optimization method is used to achieve rapid oil and gas reservoir production optimization, and the optimization has a wide range of applications.

[0008] In a first aspect, embodiments of the present invention provide a feasible point optimization method, comprising:

[0009] Population grouping steps: Sort the individuals in the feasible population according to the size of their values, and group the individuals according to the sorting results. Each individual includes feasible points and values ​​that satisfy the set constraints, and the value of an individual is the objective function value of the feasible points it contains.

[0010] Simplex construction steps: Select a preset number of individuals from the group to form a simplex, where the preset number is less than the number of individuals contained in the group;

[0011] Simplex optimization steps: Sort the individuals in the simplex in ascending order of their values, determine the individuals to be optimized, and replace the worst individual in the simplex;

[0012] Repeat the simplex optimization step until the first termination condition is met; put the individuals in the simplex back into their corresponding positions in the grouping, and return to the simplex construction step until the second termination condition is met; put the individuals in each updated group back into their corresponding positions in the feasible population, and return to the population grouping step until the third termination condition is met.

[0013] Optimize the output steps: Output the feasible point with the smallest value in the feasible population as the optimized feasible point.

[0014] Secondly, embodiments of the present invention provide a method for optimizing oil and gas reservoir production, comprising:

[0015] Steps for identifying production optimization problems: Determine the decision variables to be optimized in oil and gas reservoir production, the constraints on the decision variables, and the optimization objective function;

[0016] Initial surrogate model construction steps: Using the constraints as constraints, obtain a set number of feasible points using a selected sampling method. Feasible points are decision variables that satisfy the constraints. Determine the optimization objective function values ​​of the obtained feasible points using the selected method to obtain a sample set. The selected method is a numerical simulation method or a streamline simulation flow field diagnosis method. Train the selected surrogate model using the sample set.

[0017] Objective function construction steps: Establish an objective function based on the sampling strategy, wherein the objective function includes the optimized objective function;

[0018] The optimization feasible point solution steps are as follows: Based on the objective function and the constraints, at least one feasible point is obtained using the above feasible point optimization method; the optimization feasible point solution steps use the current surrogate model to predict the optimization objective function value of the feasible point;

[0019] Proxy model update steps: Use the selected method to determine the optimized objective function value of the feasible point, update the current sample set, and use the current sample set to update the Proxy model;

[0020] Return to the optimization feasible point solution step until the fourth termination condition is met, and then execute the production optimization step;

[0021] Production optimization steps: Based on the feasible points where the objective function value is minimized among the feasible points where the objective function has been evaluated, the final optimization result is obtained.

[0022] Thirdly, embodiments of the present invention provide a feasible point optimization apparatus, the apparatus comprising: a memory and a processor; the memory is used to store a feasible point optimization program, and the processor is used to read and execute the feasible point optimization program to execute the aforementioned feasible point optimization method.

[0023] Fourthly, embodiments of the present invention provide an oil and gas reservoir production optimization device, the device comprising: a memory and a processor; the memory is used for a program for oil and gas reservoir production optimization, and the processor is used to read and execute the program for oil and gas reservoir production optimization, and execute the above-described oil and gas reservoir production optimization method.

[0024] Fifthly, embodiments of the present invention provide a computer storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-mentioned feasible point optimization method or the above-mentioned oil and gas reservoir production optimization method.

[0025] The beneficial effects of the above-described technical solutions provided in the embodiments of the present invention include at least the following:

[0026] (1) The feasible point optimization method provided in this embodiment of the invention iteratively optimizes the simplex internally through the steps of establishing a feasible population, grouping the population, constructing the simplex, and optimizing the simplex. Then, individuals in the simplex are placed back into their corresponding positions in the groups, returning to the simplex construction step to achieve iterative optimization of the middle group. Individuals in each updated group are placed back into their corresponding positions in the feasible population, returning to the population grouping step to achieve iterative optimization of the outer population. Through layer-by-layer optimization, reasonable optimization of feasible points under complex constraints is finally achieved. This method has global optimization capability and can be directly applied to solving non-time-consuming constraint optimization problems. It can also be integrated into the selection strategy (sampling strategy) of potential candidate points in surrogate optimization algorithms, thereby being applied to time-consuming constraint optimization problems.

[0027] (2) The oil and gas reservoir production optimization method provided in this embodiment of the invention first determines the production optimization problem, including determining the decision variables to be optimized, the constraints of the decision variables, and the optimization objective function; constructs an initial surrogate model; since the computational workload of determining the optimization objective function value by numerical simulation methods or streamline simulation flow field diagnosis methods is relatively large, and the process of continuously searching for feasible points (feasible points for which the optimization objective function value needs to be calculated) involves the calculation of a large number of feasible point optimization objective function values, a surrogate model is used to determine the optimization objective function value of feasible points, and the surrogate model is continuously optimized using the currently obtained feasible points and their optimization objective function values; finally, the final optimization decision variables are obtained by comparing the magnitudes of the optimization objective function values. This method has advantages such as controllable computational speed, high optimization efficiency, wide applicability, and good reliability.

[0028] (3) The oil and gas reservoir production optimization method provided in this embodiment of the invention uses a sampling strategy of minimizing the surrogate model response or a combination of minimizing the surrogate model response and maximizing the search capability. This improves the applicability of the surrogate optimization algorithm to constrained optimization problems and develops a surrogate optimization method based on the reservoir simulator. It can be applied to solving well location, injection and production and their joint optimization problems.

[0029] (4) The oil and gas reservoir production optimization method provided in this embodiment combines the streamline simulation optimization method with the surrogate optimization algorithm (the above-mentioned feasible point optimization method) that incorporates the SGBE-FP algorithm in the sampling strategy. This further develops the streamline surrogate optimization method, improves the time consumption characteristics of the single simulator surrogate optimization method for high-dimensional injection and production optimization problems, and addresses the limitation that the standalone streamline simulation optimization method cannot be applied to optimization of formations, well locations, etc. It can be regarded as a kind of intelligent production optimization method that comprehensively considers the balance between reliability and computational cost.

[0030] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings.

[0031] The technical solution of the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description

[0032] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:

[0033] Figure 1 This is a flowchart of the feasible point optimization method in Embodiment 1 of the present invention;

[0034] Figure 2 for Figure 1 The detailed implementation flowchart of step S13 is shown below;

[0035] Figure 3 A flowchart for implementing injection and sampling optimization using streamline simulation flow field diagnostic methods;

[0036] Figure 4 The flowchart shows the process of solving the reservoir production optimization problem based on a numerical simulator and a surrogate optimization algorithm.

[0037] Figure 5 The flowchart of the streamline surrogate optimization method, which integrates streamline simulation optimization method and surrogate optimization algorithm;

[0038] Figure 6 This is a flowchart of the oil and gas reservoir production optimization method in Embodiment 2 of the present invention;

[0039] Figure 7 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP1 as a function of the number of population evolutions in Embodiment 3 of the present invention are shown.

[0040] Figure 8 This is the curve showing the optimal value of the objective function of the population in semi-logarithmic coordinates at COP1 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0041] Figure 9 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP2 as a function of the number of population evolutions in Embodiment 3 of the present invention are shown.

[0042] Figure 10 This is the curve showing the optimal value of the objective function of the population under semi-logarithmic coordinates at COP2 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0043] Figure 11 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP2 during the third embodiment of the present invention as a function of the number of population evolutions (L) pop =50);

[0044] Figure 12 The curve showing the optimal value of the objective function of the population at COP2 in the semi-logarithmic coordinate system of Embodiment 3 of the present invention as a function of the number of population evolutions (L) pop =50);

[0045] Figure 13 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP3 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0046] Figure 14 This is the curve showing the change of the optimal value of the objective function of the population in semi-logarithmic coordinates at COP3 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0047] Figure 15 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP4 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0048] Figure 16 This is the curve showing the optimal value of the objective function of the population under semi-logarithmic coordinates at COP4 in Embodiment 3 of the present invention as a function of the number of population evolutions;

[0049] Figure 17 The curves showing the changes in the optimal, average, and worst values ​​of the objective function of the population in COP5 during the third embodiment of the present invention as a function of the number of population evolutions.

[0050] Figure 18 This is the curve showing the optimal value of the objective function of the population under semi-logarithmic coordinates at COP5 in Embodiment 3 of the present invention as a function of the number of population evolutions; Detailed Implementation

[0051] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.

[0052] It should be understood that the terminology used in this invention is merely for describing particular embodiments and is not intended to limit the invention. Furthermore, with respect to numerical ranges in this invention, it should be understood that each intermediate value between the upper and lower limits of the range is also specifically disclosed. Every smaller range between any stated value or intermediate value within a stated range, and any other stated value or intermediate value within said range, is also included in this invention. The upper and lower limits of these smaller ranges may be independently included or excluded from the range.

[0053] Unless otherwise stated, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. While only preferred methods and materials have been described herein, any methods and materials similar or equivalent to those described herein may be used in the implementation or testing of this invention. All references to this specification are incorporated by way of citation to disclose and describe methods and / or materials associated with those references. In the event of any conflict with any incorporated reference, the content of this specification shall prevail.

[0054] Embodiment 1 of this invention defines a penalty function for the optimization problem, and selects feasible points (feasible individuals) that meet the constraints during population initialization and evolution for simplex updates. This allows for iterative updates of the entire population based on grouping and sorting, thus proposing a feasible point algorithm for solving complex constrained optimization problems: the Feasible Sorting Grouping Evolutionary Algorithm (SGBE-FP). The SGBE-FP algorithm is a global optimization algorithm that can handle various complex constraints, based on optimization ideas such as unconstrained population evolution algorithms, random search, and the simplex method. It can be directly applied to solving non-time-consuming constrained optimization problems, or integrated into the sampling strategy of surrogate optimization algorithms for solving time-consuming production optimization problems.

[0055] First, we introduce the complex constrained optimization problem, namely, the constraints:

[0056] Besides bounded constraints, the general constrained optimization problem containing equality and inequality constraints can be expressed as:

[0057]

[0058] In equation (1): min represents the minimization problem; f(x) is the objective function, and for the maximization problem, the objective function f is... max (x), can be obtained by adding a negative sign to make f(x) = -f max (x) is transformed into a minimization problem; x is the decision variable, and n is the decision variable. var n-dimensional row vectors var (The number of optimization variables); lb is the lower bound constraint for the decision variables, n var n is a row vector; ub is the upper bound constraint on the decision variables. varRow vector; A ineq is the coefficient matrix of linear inequality constraints, with dimension n l,ineq ×n var and n l,ineq is the number of linear inequality constraints; b ineq is the constant vector of linear inequality constraints, an n var dimensional column vector; A eq is the coefficient matrix of linear equality constraints, with dimension n l ,eq×n var and n l,eq is the number of linear equality constraints; b eq is the constant vector of linear equality constraints, an n var dimensional column vector; C ineq is the non - linear inequality constraint, an n nl,ineq dimensional row vector, and n nl,ineq is the number of non - linear inequality constraints; C eq is the non - linear equality constraint, an n nl,eq dimensional row vector, and n nl,eq is the number of non - linear equality constraints.

[0059] For an optimization problem with n l,ineq linear inequality constraints, n l,eq linear equality constraints, n nl,ineq non - linear inequality constraints, n nl,eq non - linear equality constraints, the penalty function Penalty(x) of the decision variable x is defined as:

[0060]

[0061] In Equation (2): Penalty(x) is the penalty function for violating the constraint conditions; max is the maximum value function; the superscript T represents the transpose.

[0062] The constraint violation tolerance eps can be set. When Penalty(x) < eps, x is considered a feasible point that satisfies the constraint conditions.

[0063] Here, the sample point composed of the decision variable x and the objective function value f(x) at x is called an "individual", that is, the position of the individual is a set of decision variables, and the value of the individual is the objective function value under this decision variable. The sample point (individual) that satisfies all constraints is called a feasible point (feasible individual). The Sorting - Grouping - Based Evolutionary Algorithm for Feasible Points (SGBE - FP) needs to first construct an initial population consisting of N group ×M group feasible individuals, and then sort and group the initial population (N group is the number of divided groups, M groupThe algorithm first determines the number of individuals in each group. Then, it selects some individuals from each group to construct a simplex. The worst-performing individual in the simplex is replaced to evolve the simplex. By continuously sorting, grouping, constructing, and evolving the simplex, the entire population evolves, eventually finding the global optimum. Table 1 lists the parameters that need to be set for the SGBE-FP algorithm.

[0064] Table 1 shows the parameters that need to be set for the feasible sorting group evolutionary algorithm (SGBE-FP).

[0065]

[0066]

[0067] In Table 1, Flag_initial can be set to four integers: 0, 1, 2, and 3, corresponding to four methods for generating feasible initial populations. When set to 0, the SGBE-FP algorithm uses the unifrn function to perform multiple samplings, and each time uses the penalty function to determine whether the sampling point is feasible, until the number of feasible individuals reaches N. group ×M group When Flag_initial is 1, the SGBE-FP algorithm uses the rand function to perform multiple samplings, and each time uses the penalty function Penalty to determine whether the sampling point is feasible, until the number of feasible individuals reaches N. group ×M group When Flag_initial is 2, the SGBE-FP algorithm uses a Latin hypercube design that minimizes the sum of squared column correlations to generate sample points multiple times. Each time, the Penalty function is used to determine whether the sampling point is feasible, until the number of feasible individuals reaches N. group ×M group When Flag_initial is 3, it means that sample points are generated multiple times using a Latin hypercube design that maximizes the minimum distance between points. Each time, the Penalty function is used to determine whether the sampling point is feasible, until the number of feasible individuals reaches N. group ×M group .

[0068] In Table 1, Flag_plot can be set to five integers: 0, 1, 2, 3, and 4. 0 represents plotting the minimum objective function value as a function of the number of population evolutions in a normal coordinate system; 1 represents plotting the minimum objective function value as a function of the number of population evolutions in a semi-logarithmic coordinate system; 2 represents plotting the minimum, maximum, and mean objective function values ​​as a function of the number of population evolutions in a normal coordinate system; 3 represents plotting the minimum, maximum, and mean objective function values ​​as a function of the number of population evolutions in a semi-logarithmic coordinate system; and 4 represents plotting two graphs: one showing the minimum, maximum, and mean objective function values ​​as a function of the number of population evolutions in a normal coordinate system, and the other showing the minimum objective function value as a function of the number of population evolutions in a semi-logarithmic coordinate system.

[0069] Example 1

[0070] Embodiment 1 of the present invention provides a feasible point optimization method, the process of which is as follows: Figure 1 As shown, it includes the following steps:

[0071] Step S11: Population grouping step: Sort the individuals in the feasible population according to the size of the value, and group the individuals according to the sorting result.

[0072] An individual includes feasible points and values ​​that satisfy the defined constraints. The value of an individual is the objective function value of the feasible points it contains. The defined constraints here are that the conditions are met within a bounded domain and the corresponding penalty function is less than the constraint violation tolerance.

[0073] After defining the constrained optimization problem and the (constraint violation) penalty function Penalty, it is necessary to first generate a function containing N. group ×M group A feasible population of individuals, and guarantee that these individuals are feasible (i.e., Penalty). <eps)。

[0074] The method for generating a feasible population is determined by the variable Flag_initial, with an upper bound of ub and a lower bound of lb for sampling, ensuring that all sample points lie within the bounded region. Then, the feasibility of the initial population is judged using the penalty function Penalty, retaining only feasible individuals (feasible points) that satisfy the constraints. If the number of feasible individuals is less than N... group ×M group Then, the aforementioned method is used to sample again within the bounded domain, adding new feasible points to the previous set of feasible points until the required number of individuals in the feasible population is met.

[0075] The individuals in the feasible population are sorted according to their values ​​in ascending order. The purpose of sorting is to determine the optimal (minimum), worst (maximum), and average values ​​of the current population, as well as the distribution of individuals in subsequent groups. After the population is sorted, the following conditions must be met:

[0076] f(sx i )≥f(sx i-1 (2≤i≤N) group ·M group (3)

[0077] f beast =f(sx1) (4)

[0078]

[0079] In equations (3)-(6): sx i This represents the position of the i-th individual after the population is sorted, where n is the position of the i-th individual. var 3D row vector; f(sx) i f is the value of the i-th individual after the population is sorted; beast f represents the optimal value of the current population; worst f represents the worst value of the current population; mean This represents the average value of all individuals in the current population.

[0080] In generating a content containing N group ×M group After determining the population of feasible individuals, the population is divided into N groups. group There are M groups, and the number of individuals in each group is M. group To ensure a relatively balanced distribution of individual values ​​within each group, it is not advisable to concentrate the best values ​​(highest-ranked individuals) or the worst values ​​(lowest-ranked individuals) in a particular group. The following grouping method can be used, grouping individuals according to the ranking results:

[0081] Num(i,j)=i+(j-1)·N group (1≤i≤N group ,1≤j≤M group (7)

[0082] In equation (7): Num(i,j) is the index of the j-th individual in the (sorted) population within the i-th group.

[0083] For example, when the number of groups N group =4. Number of members in each group M group When the number of individuals in the population is 6, the total number of individuals in the population is 24. The indices of the individuals in each group in the (sorted) population are as follows:

[0084] Num(1,:)=[1,5,9,13,17,21], Num(2,:)=[2,6,10,14,18,22],

[0085] Num(3,:)=[3,7,11,15,19,23], Num(4,:)=[4,8,12,16,20,24].

[0086] Step S12: Simplex construction step: Select a preset number of individuals from the group to form a simplex.

[0087] Specifically, the preset number is less than the number of individuals contained in the group.

[0088] The simplex is a subset of the groupings, and we need to start from the groupings M. group M were selected from the individuals. simplex The following are some methods for selecting and constructing a simplex:

[0089] Construction Method 1: Select a preset number of individuals from the grouping according to probability to form a simplex.

[0090] From the sequence [1,2,…,M] group Select M according to probability distribution simplex Number; probability distribution satisfies:

[0091]

[0092] In equation (8): p is the sequence [1,2,…,M] group The probability corresponding to each index in the ]; a and b are both positive numbers, the larger (ab) is, the greater the probability of the first individual being selected in the group and the smaller the probability of the last individual being selected; linspace is the equidistant linear partitioning function, linspace(a,b,M) group The result is an arithmetic sequence consisting of M. group A row vector; sum is the summation function.

[0093] Equation (8) can guarantee that the sum of the probabilities of all individual numbers in the group is 1. Other probability distributions that can satisfy the sum of probabilities of 1 can also be set.

[0094] For example, take M group =6, a=7, b=1, the probability distribution generated by equation (8) is:

[0095] p=[0.2917,0.2417,0.1917,0.1417,0.0917,0.0417];

[0096] And take M group=6, a=50, b=1, the probability distribution generated by equation (8) is:

[0097] p = [0.3268, 0.2627, 0.1987, 0.1346, 0.0706, 0.0065]. At this point, the probability of the first three individuals being selected increases, while the probability of the last three individuals being selected decreases.

[0098] Construction Method 2: Select a preset number of individuals from the group to form a simplex by random selection.

[0099] From the sequence [1,2,…,M] group Randomly select M from ] simplex The number serves as the index of the individual within the group in the simplex. In this case, the selection of the optimal or worst value within the group is not considered.

[0100] Num Simplex =randperm(M group M simplex (9)

[0101] In equation (9): Num Simplex The index of an individual in the simplex within a group is given by ; randperm is a random permutation function, ranging from 1 to M. group Randomly select M from among simplex A set of unique integers.

[0102] Construction Method 3: Select a preset number of individuals from the group to form a simplex according to the priority of the best individual selection method.

[0103] You can first determine M using either construction method 1 or construction method 2 as described above. simplex If a number is selected but does not contain 1, then one of the selected numbers is randomly chosen and replaced with 1. In this way, the optimal individual (the individual with the smallest function value) of the simplex group is guaranteed.

[0104] Construction Method 4: Select a preset number of individuals from the group to form a simplex by prioritizing the worst individual selection method.

[0105] M can be determined first using either construction method 1 or construction method 2 as described above. simplex If the selected sequence number does not contain M, then... simplex Then randomly select one of the serial numbers and replace it with M. simplex Thus, it is guaranteed that the simplex contains the worst individual in the group (the individual with the largest function value).

[0106] Step S13: Simplex optimization steps: Sort the individuals in the simplex in ascending order of value, determine the individuals to be optimized, and replace the worst individual in the simplex.

[0107] After the simplex is constructed, the individuals in the simplex are sorted in ascending order of their values. Further, they are sorted in ascending order, up to the Mth digit. simplex The worst individual is the one that is eliminated and replaced by the better individual that is determined later.

[0108] The evolution of the simplex requires selecting optimal individuals through processes such as centroid determination, reflection, boundary absorption, translation, and random sampling to replace the worst individual in the simplex. Specifically, determining optimal individuals and replacing the worst individual in the simplex involves... (See...) Figure 2 As shown, it includes the following steps:

[0109] Step S131: Determine the centroid of the simplex.

[0110] The mean value of the positions of all individuals in the simplex except the worst individual is determined as the centroid of the simplex.

[0111]

[0112] In equation (10): sim_x centroid Let n be the centroid of the simplex. var 3D row vector; sim_x i Let n be the position of the i-th individual in the sorted simplex (a set of decision variables). var 3D row vectors.

[0113] Step S132: Determine the worst-case individual's reflective feasible individual based on the centroid.

[0114] If the worst-case individual in the simplex is reflected with its centroid as the center point, the position of the reflection point can be represented as:

[0115] sim_x reflection =sim_x centroid +r reflection ·(sim_x centroid -sim_x worst (11)

[0116]

[0117] In equations (11) and (12): r reflection The reflectivity is set to 0-1, with a default value of 1; sim_x worst n represents the position of the worst individual in the simplex. var 3D row vector; sim_x reflection This represents the position of the reflection point of the worst individual in the simplex with respect to the centroid.

[0118] After reflecting the worst-case individual in the simplex about its centroid, it is necessary to determine whether the reflection point is within the bounded domain of the given optimization problem. If it exceeds the upper bound lb or the lower bound ub, boundary absorbing is performed, that is, the reflection point is replaced with the boundary value of the bounded domain that it violates.

[0119] sim_x reflection-b =max[min(sim_x) reflection ,ub),lb] (13)

[0120] In equation (13): sim_x reflection-b Let n be the position of the reflection point of the worst individual in the simplex with respect to the centroid of the simplex after boundary absorption. var A 3D row vector; max is the maximum value function; min is the minimum value function.

[0121] The penalty function Penalty is used to determine whether the reflection point (or the reflection point after boundary absorbing) satisfies all constraints except for the bounded constraint. If it does, the reflection point is a feasible reflection point, and its position is denoted as sim_x. reflection-fea For sim_x reflection-fea (i.e., sim_x) reflection-b or sim_x reflection If the conditions are not met, perform function evaluation; otherwise, perform random sampling until a feasible point (reflected feasible point) that satisfies all constraints is generated.

[0122]

[0123] or

[0124]

[0125] In equations (14) and (15): sim_x reflection-b-random The position of the feasible individual (reflection feasible point) that satisfies bounded constraints and other constraints after reflecting the worst individual in the simplex; unifrnd represents the function that generates continuous uniform random numbers, unifrnd(lb,ub) generates an n between the lower bound lb and the upper bound ub. var 1-dimensional row vector; lb group n represents the lower bound of the positions of all individuals in the current group. var 3D row vector; ub group n is the upper bound of the positions of all individuals in the current group. var 3D row vectors.

[0126] A reflective feasible individual is constituted by a reflective feasible point and its objective function value.

[0127] Step S133: Determine whether the value of the feasible individual is less than the value of the worst individual.

[0128] If step S133 is determined to be yes, proceed to step S134; if step S133 is determined to be no, proceed to step S135.

[0129] Step S134: Replace the worst individual with a reflective feasible individual.

[0130] Step S135: Determine the translational feasible individuals of the reflection feasible individuals according to the set translation rules.

[0131] According to the set translation rate, the position of the worst feasible individual in the simplex is moved towards the centroid or the best feasible point in the simplex, to obtain the translation point:

[0132] sim_x movement =sim_x worst +r movement ·(sim_x centroid -sim_x worst (17)

[0133] or

[0134] sim_x movement =sim_x worst +r movement ·(sim_x best -sim_x worst (18)

[0135] sim_x best =sim_x i | i=1 (19)

[0136] In equations (17)-(19): r movement The translation ratio, ranging from 0 to 1, is preset to 0.5; sim_x movement The position of n is the "translation point" reached by translating the worst individual in the simplex a certain distance towards the centroid or the position of the best individual. var 3D row vector; sim_x best Let n be the position of the optimal individual in the simplex. var 3D row vectors.

[0137] Determine whether the translation point simultaneously satisfies the conditions that it is within the bounded domain and the corresponding penalty function is less than the constraint violation tolerance.

[0138] If so, determine the translation point as a feasible translation point.

[0139] If not, random sampling is performed until a feasible point that satisfies the set constraints is generated, which is then used as the translation feasible point:

[0140]

[0141] or

[0142]

[0143] In equations (20) and (21): sim_x movement-random This refers to the location of feasible translation points obtained through random sampling when the translation point does not meet the constraints.

[0144] A translational feasible individual is composed of a translational feasible point and its objective function value.

[0145] Step S136: Determine whether the value of the feasible individual being translated is less than the value of the worst individual.

[0146] If step S136 is determined to be yes, proceed to step S137; if step S136 is determined to be no, proceed to step S138.

[0147] Step S137: Replace the worst individual with a feasible translation individual.

[0148] Step S138: Generate a new feasible individual with a value less than the worst feasible individual value, and replace the worst feasible individual.

[0149] If the value of a feasible individual to be translated is not less than the value of the worst individual, then in [lb,ub] or [lb] group ,ub group Random sampling is performed within the interval until a feasible point (random feasible point) that satisfies all constraints is generated.

[0150]

[0151] or

[0152]

[0153] In equations (22) and (23): sim_x random The location of a random feasible point is generated when no position better than the worst individual can be found after reflection and translation.

[0154] The generated random feasible point locations are evaluated using a function to replace the worst individual in the simplex.

[0155] Repeat the simplex optimization step, i.e. step S13, until the first termination condition is met; put the individuals in the simplex back into their corresponding positions in the grouping, return to the simplex construction step, i.e. step S12, until the second termination condition is met; put the individuals in each updated group back into their corresponding positions in the feasible population, return to the population grouping step, i.e. step S11, until the third termination condition is met; then execute step S14.

[0156] Furthermore, satisfying the first termination condition can be achieved by the number of iterations reaching L as set in Table 1. simplex The second termination condition is met, which can be that the number of iterations reaches L as set in Table 1. group The third termination condition is met, which can be that the number of iterations reaches L as set in Table 1. pop .

[0157] It should be noted that the termination condition of the outer loop, i.e. the third termination condition, can also be that the distance between the populations is lower than a certain lower limit, the improvement of the optimal objective function value is lower than a certain lower limit, or the number of function evaluations is higher than a certain upper limit.

[0158] Step S14: Optimize the output: Output the feasible point with the smallest value in the feasible population as the optimized feasible point.

[0159] It is conceivable that there could be one or more feasible optimization points for the output.

[0160] The feasible point optimization method provided in Embodiment 1 of this invention iteratively optimizes the simplex internally through steps of establishing a feasible population, grouping the population, constructing the simplex, and optimizing the simplex. Then, individuals from the simplex are placed back into their corresponding positions within the groups, returning to the simplex construction step to achieve iterative optimization of the middle group. Finally, individuals from each updated group are placed back into their corresponding positions within the feasible population, returning to the population grouping step to achieve iterative optimization of the outer population. Through this layered optimization, reasonable optimization of feasible points under complex constraints is ultimately achieved. This method possesses global optimization capabilities and can be directly applied to solving non-time-consuming constraint optimization problems. It can also be integrated into the selection strategy (sampling strategy) of potential candidate points in surrogate optimization algorithms, thereby applying it to time-consuming constraint optimization problems.

[0161] The production optimization method based on streamline simulation flow field diagnosis can make up for the time-consuming nature of surrogate optimization algorithms in solving high-dimensional production optimization problems. The streamline simulation optimization method performs streamline tracing on the historically fitted numerical simulation model, statistically analyzes high-order flow field diagnostic information (such as injection efficiency, production efficiency, and movable residual oil displacement efficiency) of single wells or injection-production well pairs, and determines the direction of injection-production adjustment. This process is called flow field diagnosis. Then, according to the flow rate update criteria (such as bounded weight criteria and unbounded weight criteria), the flow rate of low-efficiency wells is redistributed to high-efficiency wells. After total injection-production constraint processing, the optimized injection-production flow rate allocation is assigned to the injection-production wells in the current optimization step, thus entering the flow field diagnostic information statistics and injection-production optimization process of the next optimization step. The injection-production optimization of all optimization steps is executed sequentially, that is, the basis for optimization in the next time step is the streamline simulation result of the current time step. If a fixed flow rate update criterion is set (without optimizing the criterion), the injection-production optimization scheme can be obtained by only one numerical simulation of all optimization steps, which greatly reduces the computational cost compared to proxy optimization. Moreover, the streamline method is not sensitive to the dimensionality of the optimization problem, that is, the time required to optimize the injection-production parameters of 5 wells in the numerical model is not much different from the optimization time of 200 wells. However, this method has limitations: this flow field diagnosis-based optimization method is mainly used for optimizing the allocation of injection and production flows, and cannot directly optimize well locations. Furthermore, the variable parameters in the flow update criterion can be further optimized. It is important to note that flow field diagnosis in streamline simulation optimization methods can be directly achieved through streamline tracing in a streamline simulator (FrontSim), or indirectly achieved through a streamline generation process from simulation results in finite difference simulators (such as Eclipse and Intersect). Figure 3 The process of implementing injection and production optimization using the streamline simulation flow field diagnostic method described above is summarized.

[0162] Figure 4 This paper demonstrates a general workflow for solving reservoir production optimization problems based on numerical simulators and surrogate optimization algorithms. The streamline surrogate optimization method combines streamline simulation optimization methods with surrogate optimization algorithms. Essentially, it executes subroutines for streamline simulation flow field diagnosis and optimization within the framework of the surrogate optimization algorithm. Figure 5 This paper demonstrates the general process of a streamline surrogate optimization method that integrates streamline simulation optimization and surrogate optimization algorithms. The decision variables can be parameters from layer, well location, flow update criteria, or combinations thereof. The dimension of the injection-production optimization problem is reduced to less than 5 (depending on the parameters in the flow update criteria to be optimized), and the optimization variables for the well location and injection-production joint optimization problem are also greatly reduced (depending on the number of infill wells). Therefore, the optimal solution or an acceptable near-optimal solution can generally be obtained after dozens of reservoir simulations, overcoming the time-consuming drawback of simple surrogate optimization algorithms in solving high-dimensional production optimization problems.

[0163] The advantage of the streamlined proxy optimization method lies in its combination of the inherent advantages of simulator proxy optimization and streamlined simulation optimization methods. It can optimize not only the formation, well location, and injection-production parameters, but also other physical processes that the simulator can characterize (such as enhanced oil recovery parameters). At the same time, it avoids the time-consuming simulation of the simple simulator proxy optimization method in multi-well injection and production, and overcomes the shortcomings of the simple streamlined simulation optimization method, such as being only applicable to injection-production optimization problems and having under-optimized flow update criteria. It expands the applicability and optimization accuracy of the streamlined simulation optimization method.

[0164] Example 2

[0165] Embodiment 2 of the present invention provides an implementation flow of an oil and gas reservoir production optimization method, referring to... Figure 6 As shown, it includes the following steps:

[0166] Step S61: Determining the Production Optimization Problem: Determine the decision variables to be optimized in oil and gas reservoir production, the constraints on the decision variables, and the objective function.

[0167] For example, when solving for the optimal water well injection rate and oil well production rate, and optimizing the objective function to achieve injection efficiency equilibrium, the method provided in this embodiment can be applied to the middle and late stages of water drive development, which is beneficial for stabilizing oil production and controlling water production.

[0168] Step S62: Initial surrogate model construction steps: Using the constraints as constraints, obtain a set number of feasible points using the selected sampling method, determine the optimization objective function value of the obtained feasible points using the selected method, and obtain a sample set; train the selected surrogate model using the sample set.

[0169] The optimization objective function values ​​of the obtained decision variables are determined using numerical simulation methods or streamline simulation flow field diagnostic methods.

[0170] The sampling methods selected above generally include Latin hypercube sampling, symmetrical Latin hypercube sampling, or uniform random sampling. Normal distribution Latin hypercube sampling, Halton sampling, Sobol sampling, corner sampling, or space-filling sampling methods can also be used.

[0171] For surrogate models, it is generally recommended to use various radial basis function interpolation models (such as cubic radial basis functions, thin plate spline functions, Gaussian functions, multiple quadratic functions, inverse multiple quadratic functions, etc.). Other surrogate models include multinomial regression models, Kriging models, multivariate adaptive regression spline MARS, or combinations of multiple models. It is not recommended to use various complex neural network models because the purpose of surrogate is to gradually approximate the true objective function, and it does not need to be accurate enough at the beginning. The computational cost of surrogate updates should be small enough.

[0172] Step S63: Objective function construction step: Establish the objective function for the decision variables based on the sampling strategy.

[0173] Since the objective function includes the optimization objective function, the optimization objective function must be evaluated before evaluating the objective function.

[0174] The sampling strategy is to minimize the surrogate model response, or a combination of minimizing the surrogate model response and maximizing search capability.

[0175] Minimizing the surrogate model response considers the current behavior of the surrogate model, requiring the potential candidate points to have the optimal surrogate response values. This means selecting the points where the surrogate model achieves its minimum value as potential candidate points for the next evaluation of the true objective function. Maximizing search capability, on the other hand, considers the global optimization property of the future surrogate model, requiring the potential candidate points to have the strongest search capability. This means selecting the points in the feasible search space furthest from the currently known points (sample points where the true objective function has already been evaluated) as potential candidate points for the next evaluation of the true objective function. The combination of minimizing the surrogate model response and maximizing search capability is achieved by using weighting coefficients to combine these two criteria, seeking a balance between the current optimum (local optimum) and the future optimum (global optimum).

[0176] If the sampling strategy is to minimize the response of the surrogate model, the objective function for the decision variables based on the sampling strategy is as follows:

[0177]

[0178] If the sampling strategy is a combination of minimizing the surrogate model response and maximizing search capability, the objective function for the decision variables based on the sampling strategy is as follows:

[0179]

[0180] In equations (24)-(27), f(x) represents the objective function of the decision variable x, w represents the weight coefficients of the factors minimizing the response of the proxy model, and 0 <w<1, This represents the normalized value of the proxy model's response at decision variable x, ranging from 0 to 1. S represents the normalized value of the minimum distance from the decision variable x to the evaluated sample points, ranging from 0 to 1. ur (x) represents the proxy model response value of decision variable x, S ur D represents the set of surrogate model response values ​​for sample points within the feasible region. is (x) represents the minimum distance from the decision variable x to the already evaluated sample points, D is This represents the set of minimum distances from sample points within the feasible region to the evaluated sample points.

[0181] Step S64: Optimization Feasibility Point Solution Step: Based on the objective function and constraints, obtain at least one feasible point.

[0182] Furthermore, at least one feasible point is obtained using the method described in Embodiment 1 above. In the feasible point optimization step, the objective function value of the feasible point is predicted using the current surrogate model.

[0183] Due to limitations in the number of function evaluations, the SGBE-FP algorithm cannot be directly applied to time-consuming optimization problems. However, it can be applied to the search for potential candidate points related to surrogate models, forming a new sampling strategy. Because the computational cost of the surrogate model in the surrogate optimization algorithm is quite small, the search for potential candidate points can be classified as a non-time-consuming optimization problem.

[0184] Step S65: Proxy model update step: Use the selected method to determine the optimization objective function of the feasible point, update the current sample set, and use the current sample set to update the proxy model.

[0185] The limiting method here can also be a numerical simulation method or a streamline simulation flow field diagnosis method.

[0186] After the proxy model update step, return to the optimization feasible point solution step until the fourth termination condition is met, and then execute the production optimization step.

[0187] Step S66: Production optimization step: Based on the feasible points with the smallest objective function value among the feasible points where the objective function has been evaluated, the final optimization result is obtained.

[0188] The oil and gas reservoir production optimization method provided in Embodiment 2 of this invention first defines the production optimization problem, including determining the decision variables to be optimized, the constraints on the decision variables, and the optimization objective function; then, an initial surrogate model is constructed. Since numerical simulation methods or streamline simulation flow field diagnosis methods involve relatively large computational loads in determining the optimization objective function value, and the process of continuously searching for feasible points (feasible points for which the optimization objective function value needs to be calculated) involves the calculation of a large number of feasible point optimization objective function values, a surrogate model is used to determine the optimization objective function value of feasible points, and the surrogate model is continuously optimized using the currently obtained feasible points and their optimization objective function values; finally, the final optimization decision variables are obtained by comparing the magnitudes of the optimization objective function values. This method has advantages such as controllable computational speed, high optimization efficiency, wide applicability, and good reliability.

[0189] The oil and gas reservoir production optimization method provided in Embodiment 2 of this invention uses a sampling strategy that minimizes the surrogate model response or combines minimizing the surrogate model response with maximizing search capability. This improves the applicability of the surrogate optimization algorithm to constrained optimization problems and develops a surrogate optimization method based on an oil reservoir simulator, which can be applied to solving well location, injection and production and their joint optimization problems.

[0190] The oil and gas reservoir production optimization method provided in Embodiment 2 of this invention combines the streamline simulation optimization method with a surrogate optimization algorithm that incorporates the SGBE-FP algorithm (the aforementioned feasible point optimization method) into the sampling strategy. This further develops the streamline surrogate optimization method, improves the time consumption characteristics of the single simulator surrogate optimization method for high-dimensional injection and production optimization problems, and addresses the limitation of the standalone streamline simulation optimization method in not being applicable to optimizations such as stratigraphy and well location. It can serve as a type of intelligent production optimization method that comprehensively considers the balance between reliability and computational cost.

[0191] Example 3

[0192] The SGBE-FP algorithm proposed in this invention was applied to solving non-time-constrained optimization problems, achieving good optimization results. The surrogate optimization algorithm integrating SGBE-FP and the streamline surrogate optimization method were applied to injection-production adjustments in various types of water-driven reservoirs both domestically and internationally for CNPC, achieving good field application results. The Al-Ahdab oilfield, tested earlier, showed significant oil production and water control effects. The internally developed surrogate optimization program integrating the SGBE-FP algorithm, using a streamline simulator, can quickly obtain well location and injection-production optimization schemes within hours to days (depending on the size of the reservoir numerical model). This provides valuable insights for real-time injection-production adjustments and the formulation of medium- and long-term oilfield development policies and decisions, significantly saving the economic and time costs required by conventional numerical model-based optimization methods, and significantly improving the accuracy and efficiency of reservoir development and control.

[0193] The following optimization examples with complex constraints illustrate the effectiveness of the SGBE-FP algorithm in solving time-constrained optimization problems (COPs). The parameters for the SGBE-FP algorithm are shown in Table 2.

[0194] Table 2. Example of parameter settings for the feasible sorting group evolutionary algorithm (SGBE-FP)

[0195] variable Value eps <![CDATA[10 -8 ]]> <![CDATA[N group ]]> 3 <![CDATA[M group ]]> <![CDATA[max(10,n var +1)]]> <![CDATA[M simplex ]]> <![CDATA[max(0.5M group ,2)]]> <![CDATA[L pop ]]> 30 <![CDATA[L group ]]> 5 <![CDATA[L simplex ]]> 3 Flag_initial 1 Flag_plot 4 <![CDATA[r reflection ]]> 1.0 <![CDATA[r movement ]]> 0.5

[0196] COP1:

[0197] COP1 is a 5-dimensional nonlinear constrained optimization problem, and its objective function is expressed as follows:

[0198]

[0199] This optimization problem also includes 6 nonlinear constraints:

[0200]

[0201] The SGBE-FP algorithm solves this constrained optimization problem to obtain the optimal value f. best The value is -30665.6291, and the optimal solution is x. best The values ​​are: [78.0000000143675, 33.0000000005721, 29.994942383081, 44.9999999999499,

[0202] 36.7759721597676] T ;

[0203] Figure 7 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP1. Figure 8 This shows the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when solving the constrained optimization problem COP1 using the SGBE-FP algorithm; where f best f represents the optimal function value for all individuals in the population. mean f represents the average function value of all individuals in the population. worst f represents the worst function value for all individuals in the population. opt N represents the optimal function value at the end of the algorithm's execution. fun This represents the number of times the function is evaluated under the maximum number of population evolutions.

[0204] COP2:

[0205] COP2 is a 13-dimensional nonlinear constrained optimization problem, and its objective function is expressed as follows:

[0206]

[0207] This optimization problem also includes nine linear constraints:

[0208]

[0209] The optimal value f is obtained by solving this constrained optimization problem using the SGBE-FP algorithm. best The value is -14.937894, and the optimal solution is x. bestThe values ​​are: [0.999765746265727,0.999205443226632,1,0.99999844468995,0.997923085178001,0.999789205052183,0.996747956578179,0.998514163890727,0.999315876452159,2.99543691455786,2.98321910692188,2.99014213341305,0.981953998673889] T .

[0210] Figure 9 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP2. Figure 10 The results show the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when the SGBE-FP algorithm solves the constrained optimization problem COP2.

[0211] For COP2, increasing the number of population evolutions improves the search for the optimal value; for example, increasing L... pop When the value is set to 50, the optimal value f is obtained. best The value is -14.996654, and the optimal solution is x. best The result is: [1,0.999857495039104,0.999980965671468,1,0.999174833724367,0.999965237704151,0.999729458980621,1,0.999999046080091,2.99890330519804,2.99973332278891,2.99995599894106,1] T .

[0212] Figure 11 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP2. Figure 12 The results show the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when the SGBE-FP algorithm solves the constrained optimization problem COP2.

[0213] COP3:

[0214] COP3 is a 10-dimensional nonlinear constrained optimization problem, and its objective function is expressed as follows:

[0215]

[0216] The optimization problem also includes three linear inequalities and five nonlinear inequality constraints:

[0217]

[0218] The optimal value f is obtained by solving this constrained optimization problem using the SGBE-FP algorithm. best The value is 24.381979, and the optimal solution is x. best The values ​​are: [2.17077063737291, 2.3700480453143, 8.76462146867781, 5.09070067743369, 0.985427273154847, 1.41555873276904, 1.31791362606376, 9.82392046203135, 8.34516995451446, 8.55333105412528] T .

[0219] Figure 13 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP3. Figure 14 The results show the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when the SGBE-FP algorithm solves the constrained optimization problem COP3.

[0220] COP4:

[0221] COP4 is a 7-dimensional nonlinear constrained optimization problem, and its objective function is expressed as follows:

[0222]

[0223] The optimization problem also includes four nonlinear inequality constraints:

[0224]

[0225] The optimal value f is obtained by solving this constrained optimization problem using the SGBE-FP algorithm. best The value is 680.630626, and the optimal solution is x. best The values ​​are: [2.32778799402687, 1.95006939716597, -0.485798288107983, 4.37029359447822, -0.626472465978575, 1.04208151474115, 1.59468432711692] T .

[0226] Figure 15 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP4. Figure 16 The results show the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when the SGBE-FP algorithm solves the constrained optimization problem COP4.

[0227] COP5:

[0228] COP5 is a 4-dimensional nonlinear constrained optimization problem, and its objective function is expressed as follows:

[0229]

[0230] The optimization problem also includes two linear inequalities and one nonlinear inequality constraint:

[0231]

[0232] The optimal value f is obtained by solving this constrained optimization problem using the SGBE-FP algorithm. best The value is 6276.365962, and the optimal solution is x. best The values ​​are: [0.960924737102825, 0.474973378915532, 49.7930398230915, 99.9958788613675] T .

[0233] Figure 17 This shows the changes in the optimal, average, and worst values ​​of the objective function of the population as the population evolves through the number of iterations when the SGBE-FP algorithm is used to solve the constrained optimization problem COP5. Figure 18 The results show the variation of the optimal value of the objective function of the population in semi-logarithmic coordinates with the number of population evolutions when the SGBE-FP algorithm solves the constrained optimization problem COP5.

[0234] Optimization Result Analysis

[0235] Observing the solution process of the SGBE-FP algorithm for the above five complex constrained optimization problems, it is easy to see that the population generally converges to the optimal solution within 20 iterations. Table 3 lists the difference between the optimal value obtained by SGBE-FP and the true optimal value of the constrained optimization problem. The error does not exceed 1%, and the results verify the effectiveness of the SGBE-FP algorithm for solving constrained optimization problems.

[0236] Table 3 Comparison of SGBE-FP algorithm calculation results for several complex constrained optimization problems.

[0237] Optimization problem Dimension optimal value SGBE-FP Results error(%) COP1 5 -30665.5387 -30665.6291 0.0003 COP2 13 -15.0000 -14.9967 0.0220 COP3 10 24.3062 24.3820 0.3119 COP4 7 680.6301 680.6306 0.0001 COP5 4 6277.0166 6276.3660 0.0104

[0238] Based on the inventive concept of this invention, embodiments of this invention also provide a feasible point optimization apparatus, the apparatus comprising: a memory and a processor; the memory is used to store a feasible point optimization program, and the processor is used to read and execute the feasible point optimization program to execute the aforementioned feasible point optimization method.

[0239] Based on the inventive concept of the present invention, embodiments of the present invention also provide an oil and gas reservoir production optimization device, the device comprising: a memory and a processor; the memory is used to store a program for oil and gas reservoir production optimization, and the processor is used to read and execute the program for oil and gas reservoir production optimization, and execute the above-described oil and gas reservoir production optimization method.

[0240] Based on the inventive concept of the present invention, embodiments of the present invention also provide a computer storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-mentioned feasible point optimization method or the above-mentioned oil and gas reservoir production optimization method.

[0241] Unless otherwise specifically stated, terms such as processing, calculation, operation, determination, display, etc., may refer to the actions and / or processes of one or more processing or computing systems or similar devices that represent the manipulation and conversion of data representing physical (e.g., electronic) quantities within the registers or memory of the processing system into other data similarly representing physical quantities within the memory, registers, or other such information storage, transmission, or display devices of the processing system. Information and signals can be represented using any of a variety of different techniques and methods. For example, data, instructions, commands, information, signals, bits, symbols, and chips mentioned throughout the above description can be represented by voltage, current, electromagnetic waves, magnetic fields or particles, light fields or particles, or any combination thereof.

[0242] It should be understood that the specific order or hierarchy of steps in the disclosed process is an example of an exemplary method. Based on design preferences, it should be understood that the specific order or hierarchy of steps in the process may be rearranged without departing from the scope of this disclosure. The appended method claims provide elements of various steps in an exemplary order and are not intended to limit the scope to the specific order or hierarchy described.

[0243] In the detailed description above, various features are combined together in a single embodiment to simplify this disclosure. This approach to disclosure should not be construed as reflecting an intention that embodiments of the claimed subject matter require more features than those stated in each claim. Rather, as reflected in the appended claims, the invention is presented with fewer features than all of the features in a single disclosed embodiment. Therefore, the appended claims are hereby clearly incorporated into the detailed description, wherein each claim stands alone as a preferred embodiment of the invention.

[0244] Those skilled in the art will also understand that the various illustrative logic blocks, modules, circuits, and algorithm steps described in conjunction with the embodiments herein can be implemented as electronic hardware, computer software, or a combination thereof. To clearly illustrate the interchangeability between hardware and software, the various illustrative components, blocks, modules, circuits, and steps described above are generally described in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the overall system. Those skilled in the art can implement the described functionality in alternative ways for each specific application; however, such implementation decisions should not be construed as departing from the scope of this disclosure.

[0245] The steps of the methods or algorithms described in conjunction with the embodiments herein can be directly embodied in hardware, software modules executed by a processor, or a combination thereof. The software modules can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disks, removable disks, CD-ROMs, or any other form of storage medium well known in the art. An exemplary storage medium is connected to the processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. The ASIC can reside in a user terminal. Alternatively, the processor and storage medium can exist as discrete components in the user terminal.

[0246] For software implementation, the techniques described in this application can be implemented using modules (e.g., procedures, functions, etc.) that perform the functions described in this application. This software code can be stored in memory units and executed by a processor. The memory units can be implemented within the processor or outside the processor; in the latter case, they are communicatively coupled to the processor via various means, as is well known in the art.

[0247] The foregoing description includes examples of one or more embodiments. It is certainly impossible to describe all possible combinations of components or methods in order to describe the above embodiments, but those skilled in the art will recognize that further combinations and arrangements of the various embodiments are possible. Therefore, the embodiments described herein are intended to cover all such changes, modifications, and variations that fall within the scope of the appended claims. Furthermore, the term "comprising" as used in the specification or claims is interpreted in a manner similar to the term "including," as interpreted when used as a conjunction in the claims. Additionally, the use of any term "or" in the specification of the claims is intended to mean "non-exclusive or."

Claims

1. A feasible point optimization method, characterized in that, include: Population grouping steps: Sort the individuals in the feasible population according to the size of their values, and group the individuals according to the sorting results. Each individual includes feasible points and values ​​that satisfy the set constraints, and the value of an individual is the objective function value of the feasible points it contains. Simplex construction steps: Select a preset number of individuals from the group to form a simplex, where the preset number is less than the number of individuals contained in the group; Simplex optimization steps: Sort the individuals in the simplex in ascending order of their values, determine the individuals to be optimized, and replace the worst individual in the simplex; Repeat the simplex optimization step until the first termination condition is met; put the individuals in the simplex back into their corresponding positions in the grouping, and return to the simplex construction step until the second termination condition is met; put the individuals in each updated group back into their corresponding positions in the feasible population, and return to the population grouping step until the third termination condition is met. Optimize the output steps: Output the feasible point with the smallest value in the feasible population as the optimized feasible point.

2. The method as described in claim 1, characterized in that, The process of determining the optimal individual and replacing the worst individual in the simplex includes: Determine the centroid of the simplex, and based on the centroid, determine the worst-case reflex feasible individuals; Determine whether the value of a feasible individual's reflection is less than the value of the worst individual; If so, replace the worst individual with a reflective feasible individual; If not, determine the translational feasible individuals of the reflection feasible individuals according to the set translation rules; If the value of a feasible individual is less than the value of the worst individual, replace the worst individual with a feasible individual. If the value of a feasible individual being translated is not less than the value of the worst individual, a new feasible individual with a value less than the worst individual is generated, replacing the worst individual.

3. The method as described in claim 2, characterized in that, Determining the centroid of the simplex includes: Determine the mean position of all individuals in the simplex except for the worst individual, and use it as the centroid of the simplex.

4. The method as described in claim 2, characterized in that, The conditions for satisfying the set constraints include: Within a bounded region, and where the corresponding penalty function value is less than the constraint violation tolerance, the penalty function includes all constraints other than those for the bounded region. The penalty function is: In equation (1), Penalty(x) is the penalty function for violating the constraints corresponding to the decision variable x, and max is the maximum value function. T Indicates transpose, A ineq Let b be the coefficient matrix of the linear inequality constraint. ineq Let A be a constant vector of linear inequality constraints. eq Let b be the coefficient matrix of the linear equality constraint. eq C is a constant vector of linear equality constraints. ineq For nonlinear inequality constraints, C eq It is a nonlinear equality constraint.

5. The method as described in claim 4, characterized in that, The method of determining the worst-case individual based on the centroid of the feasible reflective individuals includes: The worst-case individual in the simplex is reflected with its centroid as the center point to obtain the position of the reflection point: In equations (2) and (3): sim_x reflection Let r be the position of the reflection point of the worst individual in the simplex with respect to the centroid. reflection For reflectivity, sim_x centroid sim_x represents the centroid location of the simplex. worst sim_x represents the position of the worst individual in the simplex. i Let M be the position of the i-th individual in the simplex. simplex The number of individuals in the simplex; If it is determined that the reflection point is not within the bounded domain, the reflection point is replaced with the boundary of the bounded domain that it violates. If the penalty function value corresponding to the reflection point is not less than the constraint violation tolerance, a feasible point that satisfies the set constraint conditions is generated and the reflection point is replaced. Obtain feasible individuals for reflection from the current reflection point.

6. The method as described in claim 4, characterized in that, The translational feasible individuals for determining the reflection feasible individuals according to the set translation rules include: According to the set translation rate, the position of the worst individual in the simplex is moved towards the centroid or the position of the best individual in the simplex to obtain the translation point; Determine whether the translation point simultaneously satisfies the following conditions: it is within the bounded domain, and the corresponding penalty function value is less than the constraint violation tolerance. If so, the feasible translation individuals are obtained from the translation points; If not, generate feasible points that satisfy the set constraints to obtain feasible individuals for translation.

7. The method as described in claim 1, characterized in that, The process of grouping individuals based on the sorting results includes: The individuals are grouped according to the sorting results using the following grouping method: Num(i,j)=i+(j-1)·N group (1≤i≤N group ,1≤j≤M group ) (4) In equation (4): Num(i,j) is the index of the j-th individual in the i-th group within the (sorted) feasible population, N group M is the number of groups. group The number of individuals in a single group.

8. The method as described in claim 1, characterized in that, The step of selecting a preset number of individuals from the group to form a simplex includes: A predetermined number of individuals are selected from the groupings according to probability to form a simplex; or, A predetermined number of individuals are selected from the group to form a simplex using a random selection method; or, A predetermined number of individuals are selected from the group to form a simplex according to the optimal individual selection method; or, A preset number of individuals are selected from the group to form a simplex using the worst-case selection method.

9. A method for optimizing oil and gas reservoir production, characterized in that, include: Steps for identifying production optimization problems: Determine the decision variables to be optimized in oil and gas reservoir production, the constraints on the decision variables, and the optimization objective function; Initial surrogate model construction steps: Using the constraints as constraints, obtain a set number of feasible points using a selected sampling method. Feasible points are decision variables that satisfy the constraints. Determine the optimization objective function values ​​of the obtained feasible points using the selected method to obtain a sample set. The selected method is a numerical simulation method or a streamline simulation flow field diagnosis method. Train the selected surrogate model using the sample set. Objective function construction steps: Establish an objective function based on the sampling strategy, wherein the objective function includes the optimized objective function; The optimization feasible point solution step involves obtaining at least one feasible point using the method described in any one of claims 1 to 8, based on the objective function and the constraints; the optimization feasible point solution step uses the current surrogate model to predict the optimization objective function value of the feasible point. Proxy model update steps: Use the selected method to determine the optimized objective function value of the feasible point, update the current sample set, and use the current sample set to update the Proxy model; Return to the optimization feasible point solution step until the fourth termination condition is met, and then execute the production optimization step; Production optimization steps: Based on the feasible points where the objective function value is minimized among the feasible points where the objective function has been evaluated, the final optimization result is obtained.

10. The method as described in claim 9, characterized in that, The selected sampling method is: Latin hypercube sampling, symmetric Latin hypercube sampling, uniform random sampling, Halton sampling, Sobol sampling, corner sampling, or space-filling sampling methods.

11. The method as described in claim 9, characterized in that, The selected proxy model is: Any one of the following models: radial basis function interpolation model, multinomial regression model, Kriging model, and multivariate adaptive regression spline MARS, or a combination of at least two models.

12. The method as described in claim 9, characterized in that, The sampling strategy is as follows: Minimize the surrogate model response, or a combination of minimizing the surrogate model response and maximizing search capability.

13. The method as described in claim 12, characterized in that, If the sampling strategy is to minimize the response of the surrogate model, the establishment of the objective function based on the sampling strategy includes: The objective function based on the sampling strategy is as follows: In equations (5) and (6), f(x) represents the objective function of the decision variable x. S represents the normalized value of the proxy model response at decision variable x. ur (x) represents the proxy model response value of decision variable x, S ur This represents the set of surrogate model response values ​​for sample points within the feasible region.

14. The method as described in claim 12, characterized in that, If the sampling strategy is a combination of minimizing the surrogate model response and maximizing search capability, the objective function established based on the sampling strategy includes: The objective function based on the sampling strategy is as follows: In equations (7) and (8), f(x) represents the objective function of the decision variable x, and w represents the weight coefficients of the factors minimizing the response of the proxy model. This represents the normalized value of the proxy model's response at decision variable x. S represents the normalized value of the minimum distance from the decision variable x to the evaluated sample points. ur (x) represents the proxy model response value of decision variable x, S ur D represents the set of surrogate model response values ​​for sample points within the feasible region. is (x) represents the minimum distance from the decision variable x to the already evaluated sample points, D is This represents the set of minimum distances from sample points within the feasible region to the evaluated sample points.

15. A feasible point optimization device, characterized in that, The apparatus includes a memory and a processor; the memory is used to store a program for feasible point optimization, and the processor is used to read and execute the program for feasible point optimization, performing the method according to any one of claims 1 to 8.

16. An oil and gas reservoir production optimization device, characterized in that, The apparatus includes: a memory and a processor; the memory is used for a program for optimizing oil and gas reservoir production, and the processor is used to read and execute the program for optimizing oil and gas reservoir production, and to execute the method according to any one of claims 9 to 14.

17. A computer storage medium, characterized in that, The computer storage medium stores computer-executable instructions, which, when executed by a processor, implement the method described in any one of claims 1 to 14.