System and method for simulating a reservoir model
By combining object-based modeling and generative adversarial networks (GANs), a GAN-driven geological modeling process is developed, which solves the problem of difficult geological model generation in existing technologies and achieves more accurate and efficient geological model generation.
Patent Information
- Application Number
- CN201880089402.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-02-07
- Filing Date
- 2018-12-13
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2038-12-13
AI Technical Summary
Existing geostatistical methods face difficulties in generating realistic geological models, especially multi-point statistical modeling, which struggles to capture the shape of complex geological objects, leading to reservoir prediction errors. Furthermore, object-based modeling processes are computationally expensive and struggle to handle data adjustment for densely packed well locations.
An object-based modeling approach combined with neural networks is adopted. Geological templates are generated by training images, and generative adversarial networks (GANs) and conditional generative adversarial networks (CGANs) are used to drive the modeling process, generating more realistic geological models that respect subsurface constraints and well logging data.
It improves the accuracy and efficiency of geological models, reduces the need for a certain number of wells, enhances the accuracy of geological predictions for undrilled locations, and lowers computational costs.
Smart Images

Figure CN111712823B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Provisional Application Serial No. 62 / 598,853, filed December 14, 2017, and U.S. Provisional Application Serial No. 62 / 627,505, filed February 7, 2018, the entire contents of each of which are incorporated herein by reference in their entirety. Background Art
[0003] Conventional model building and data interpretation methods may generally use geostatistical methods (e.g., geological object model building tools) to generate 3D reservoir property distributions. These properties include underground geological structure, sedimentary facies, rock type, porosity, permeability, water saturation, etc. The commonly used geostatistical methods require spatial linear interpolation between well locations through a tool called a "variogram," which is a two-point statistic and measures the variability of reservoir properties along different directions. The main limitation of modeling based on this two-point or variogram is that it is difficult to generate realistic geological models because most underground geological features are curvilinear and are beyond the linear pattern described by the two-point statistics. Reproducing realistic underground geological models can be critical for reservoir prediction and management. Summary of the Invention
[0004] A newly emerging geostatistical method called "Multi-Point Statistics" (MPS) has gained popularity due to its ability to create geological realism and respect subsurface data in the resulting model. MPS begins with training images, which are still conceptual quantitative geological models, and then captures complex patterns from the training images and anchors these patterns to reservoir measurements. However, generating satisfactory patterns in the model that resemble the training images is challenging. For example, a training image of a river containing highly connected, winding channels may ultimately result in an object with fractured blocks in the final MPS model. This is generally due to the difficulty in fully capturing the shape of complex geological objects in MPS simulations. The loss of connectivity in the final MPS model can lead to erroneous reservoir predictions and misplaced wells in production enhancement when drilling new wells. Another limitation of MPS modeling is its inaccurate representation and the artificially narrowed uncertainty estimates through a series of MPS simulation results (realizations), because MPS modeling generates the MPS model from a single training image. However, the most significant uncertainty arises from different geological scenarios or training images. Even though it is recommended to use multiple training images in MPS modeling, it is still not common practice due to the high CPU costs in MPS modeling.
[0005] MPS modeling is a pixel-based approach and has advantages in data conditioning, but may lose shape reproduction. In contrast, another type of modeling approach, known as object-based modeling (OBM), has the advantage of generating more realistic geological volumes by directly constructing geological objects (e.g., river systems) using a specified distribution of the geometric parameters of the river channels (e.g., width, length, amplitude, tortuosity, and thickness). This does not require pixelation of the reservoir being studied. Especially for dense well locations, conditioning of well observations and other types of data measurements and constraints (such as seismic data) becomes very difficult because the object modeling process may not converge and is extremely slow due to the use of MCMC (Markov Chain Monte Carlo).
[0006] In some embodiments and as will be discussed in more detail below, object-based modeling can be embedded into a neural network as a tool to generate various geological templates (e.g., training data or training images) to drive the modeling process, thereby building geologically realistic models and respecting various subsurface constraints by generating many realizations in a very efficient manner rather than patterns containing template populations.
[0007] For example, seismic surveys and / or well logs can yield important insights into the geology, geomechanics, and petrology of the subsurface. Accurate coupled geological interpretation of seismic and well log measurements can improve the accuracy of predictions about the geology at new locations where wells have not yet been drilled. Such workflows increase the value of measurements and reduce the number of wells required to fully understand the subsurface. Currently, this task is the responsibility of expert geoscientists using complex software tools with limitations such as those briefly mentioned above.
[0008] In some embodiments, a method (e.g., a computer-implemented method) is performed on a computing device and may include, but is not limited to, defining one or more water injector completions and one or more oil producer completions in one or more reservoir models. One or more edges may be defined between the one or more water injector completions and the one or more oil producer completions in the one or more reservoir models. The one or more edges between the one or more water injector completions and the one or more oil producer completions may define a graph network representing the one or more reservoir models. The one or more reservoir models may be simulated along the one or more edges between the one or more water injector completions and the one or more oil producer completions.
[0009] One or more of the following exemplary features may be included. One or more water injector-producer pairs may be defined based at least in part on a spatial proximity between the one or more water injector completions and the one or more producer completions. One or more directional edges between the one or more water injector completions and the one or more producer completions in the one or more reservoir models may be defined based at least in part on the one or more water injector-producer pairs. A total oil production of the one or more reservoir models may be determined based at least in part on determining an oil production for each directional edge that terminates at the one or more producer completions in the one or more reservoir models. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more producer completions may include: receiving one or more water injector rates associated with the one or more water injector completions; and determining one or more of an oil production rate and a water production rate for the one or more producer completions based at least in part on simulating the one or more water injector rates associated with the one or more water injector completions. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more oil producer completions may include: receiving one or more of an oil production rate and a water production rate associated with the one or more oil producer completions; and determining one or more water injection rates for the one or more water injector completions based at least in part on simulating the one or more of the oil production rate and the water production rate associated with the one or more oil producer completions. A plurality of edges between a plurality of water injector completions and a plurality of oil producer completions may be aggregated to define a three-dimensional graph network representing the reservoir model.
[0010] In another exemplary implementation, a computing system may include one or more processors and one or more memories, wherein the computing system is configured to perform operations that may include, but are not limited to, defining one or more water injector completions and one or more oil producer completions in one or more reservoir models. One or more edges may be defined between the one or more water injector completions and the one or more oil producer completions in the one or more reservoir models. The one or more edges between the one or more water injector completions and the one or more oil producer completions may define a graph network representing the one or more reservoir models. The one or more reservoir models may be simulated along the one or more edges between the one or more water injector completions and the one or more oil producer completions.
[0011] One or more of the following exemplary features may be included. One or more water injector-producer pairs may be defined based at least in part on a spatial proximity between the one or more water injector completions and the one or more producer completions. One or more directional edges between the one or more water injector completions and the one or more producer completions in the one or more reservoir models may be defined based at least in part on the one or more water injector-producer pairs. A total oil production of the one or more reservoir models may be determined based at least in part on determining an oil production for each directional edge that terminates at the one or more producer completions in the one or more reservoir models. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more producer completions may include: receiving one or more water injector rates associated with the one or more water injector completions; and determining one or more of an oil production rate and a water production rate for the one or more producer completions based at least in part on simulating the one or more water injector rates associated with the one or more water injector completions. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more oil producer completions may include: receiving one or more of an oil production rate and a water production rate associated with the one or more oil producer completions; and determining one or more water injection rates for the one or more water injector completions based at least in part on simulating the one or more of the oil production rate and the water production rate associated with the one or more oil producer completions. A plurality of edges between a plurality of water injector completions and a plurality of oil producer completions may be aggregated to define a three-dimensional graph network representing the reservoir model.
[0012] In another exemplary implementation, a computer program product may include a non-transitory computer-readable storage medium having a plurality of instructions stored thereon that, when executed by a processor, cause the processor to perform operations including, but not limited to, defining one or more water injector completions and one or more oil producer completions in one or more reservoir models. One or more edges may be defined between the one or more water injector completions and the one or more oil producer completions in the one or more reservoir models. The one or more edges between the one or more water injector completions and the one or more oil producer completions may define a graph network representing the one or more reservoir models. The one or more reservoir models may be simulated along the one or more edges between the one or more water injector completions and the one or more oil producer completions.
[0013] One or more of the following exemplary features may be included. One or more water injector-producer pairs may be defined based at least in part on a spatial proximity between the one or more water injector completions and the one or more producer completions. One or more directional edges between the one or more water injector completions and the one or more producer completions in the one or more reservoir models may be defined based at least in part on the one or more water injector-producer pairs. A total oil production of the one or more reservoir models may be determined based at least in part on determining an oil production for each directional edge that terminates at the one or more producer completions in the one or more reservoir models. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more producer completions may include: receiving one or more water injector rates associated with the one or more water injector completions; and determining one or more of an oil production rate and a water production rate for the one or more producer completions based at least in part on simulating the one or more water injector rates associated with the one or more water injector completions. Simulating the one or more reservoir models along the one or more edges between the one or more water injector completions and the one or more oil producer completions may include: receiving one or more of an oil production rate and a water production rate associated with the one or more oil producer completions; and determining one or more water injection rates for the one or more water injector completions based at least in part on simulating the one or more of the oil production rate and the water production rate associated with the one or more oil producer completions. A plurality of edges between a plurality of water injector completions and a plurality of oil producer completions may be aggregated to define a three-dimensional graph network representing the reservoir model.
[0014] This Summary is provided to introduce a selection of concepts that are further described below in the Detailed Description. This Summary is not intended to identify essential features of the claimed subject matter and is not intended to be used as an aid in limiting the scope of the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Embodiments of the present disclosure are described with reference to the following figures.
[0016] Figure 1 is a diagrammatic view of a distributed computing network including computing devices executing a neural network driven reservoir modeling process according to one implementation of the present disclosure;
[0017] Figure 2 is based on the implementation of various technologies described in this article Figure 1 Flowchart of the neural network driven reservoir modeling process;
[0018] Figure 3Two of many training images are shown (red is a sand-filled channel and purple is a shale floodplain). Many of these training images were generated using an object modeling (OBM) tool. In some implementations, one or more training images may include two-dimensional (2D) data and three-dimensional (3D) data. The GAN generator is trained to generate images (models) of the reservoir that are indistinguishable from the models generated by the OBM. According to embodiments of the various techniques described herein, the CGAN generator is also adjusted based on observations of the reservoir so that all generated models also respect the observations.
[0019] Figure 4 depicts a workflow overview of a neural network driven reservoir modeling process according to an embodiment of various techniques described herein;
[0020] Figure 5 depicts a generative adversarial network (GAN) according to an implementation of various techniques described herein;
[0021] Figure 6 depicts a conditional generative adversarial network (CGAN) according to an implementation of various techniques described herein;
[0022] Figure 7 depicts a workflow overview of a neural network driven reservoir modeling process according to an embodiment of various techniques described herein;
[0023] Figure 8 depicts eight river models (all 2D models, 128×128 pixels) generated by object-based modeling in Petrel according to embodiments of various techniques described herein;
[0024] Figure 9A An area with three data points is plotted (shown in red). These red data points may be wells or cores.
[0025] Figure 9B A CGAN-generated geological representation is depicted (in this case showing porosity). This map respects the three red data points but is filled in by a model generated from a conditional GAN model using analogs, previous maps, outcrops, or any other source of information, according to embodiments of various techniques described herein. Figure 9A of hitherto unknown interwell regions (white space) to generate Figure 9B Maps;
[0026] Figure 10 depicting a global grid segmentation of well logs according to embodiments of various techniques described herein;
[0027] Figure 11depicts conditional grid partitioning of well logs according to embodiments of various techniques described herein;
[0028] Figures 12 to 16 depicts various generator sample classes at various times according to implementations of various techniques described herein;
[0029] Figure 17A is an example of a nonlinear, meandering river pattern, such as the Kuskokwim River in Alaska, according to an embodiment of various techniques described herein;
[0030] Figure 17B is a depiction of a geological model constrained by measurements according to an embodiment of various techniques described herein;
[0031] Figure 18 Comparison between missing pixel values inferred from physical measurements and generated geology according to embodiments of various techniques described herein. Portions of this image are borrowed from Yeh et al. (2016);
[0032] Figures 19 to 20 An example of rocks in training data (generated using OBM) according to an embodiment of various techniques described herein is shown. White pixels correspond to river channels, while black pixels correspond to background rocks.
[0033] Figure 21 Depicts an unconditional sample generated according to an embodiment of various techniques described herein. The sample is sharp and exhibits many desirable properties, such as channel connectivity and species;
[0034] Figure 22A Describes an example of implicit traversal. Each row of images is obtained by It is obtained by interpolating between two random vectors z1 and z2 and mapping them through G;
[0035] Figure 22B Depicts the mean of 1000 unconditional samples. The pixel distribution is quite uniform, suggesting that the model has learned the uniform distribution of the river channel;
[0036] Figure 23 Depicts an example of a conditional sample according to an embodiment of various techniques described herein. Each row corresponds to a different number of measurements. The first column shows the actual physical measurements, while subsequent columns show different implementations based on the measurements. The implementations are realistic and almost always respect the data. Note that for clarity, the measurements are shown in blue and orange on the generated samples;
[0037] Figure 24ADepicts a sample adjusted at 300 points according to an embodiment of various techniques described herein. Even with a large number of physical measurements, the algorithm generates a realistic realization while respecting the majority of data points;
[0038] Figure 24B Depicts failure examples for different numbers of measurements (m = 10, 20, 40, 300). The samples fail to respect the measurements or produce unrealistic patterns (e.g., spots of disconnected river channels);
[0039] Figure 25 Plotting examples of 2D river training images (top) and unconditional samples or realizations generated by GAN (bottom);
[0040] Figure 26 Plotting examples of 2D delta training images (top) and unconditional samples generated by GAN (bottom).
[0041] Figure 27 Depicts three conditional river GAN examples respecting 20-well data (top) and three conditional MPS simulations constrained by the same 20-well data and using a single training image (bottom).
[0042] Figure 28 Plotted are three conditional delta-GAN examples respecting 35-well data (top) and three conditional MPS simulations constrained by the same 20-well data and using a single training image (bottom);
[0043] Figure 29 Example training images depicting 3D rivers (top) and unconditioned samples generated by the GAN (bottom).
[0044] Figure 30 A 3D conditional river sample generated by GAN is shown. Ten well data are also shown, with the interpreted facies being displayed on the far left (shale; channel sand; and levee);
[0045] Figure 31 Example training images depicting 3D carbonates (top) and unconditioned samples generated by the GAN (bottom).
[0046] Figure 32 depicts an exemplary OBM tool according to an embodiment of the various techniques described herein;
[0047] Figure 33A -D depicts a map view of a single reservoir according to embodiments of various techniques described herein, the map view depicting the process of Voronoi tessellation of well regions, followed by identification of adjacent injector-producer pairs and creation of a graph network with directed edges from the injectors to the producers;
[0048] Figure 34A -D depicts a map view illustrating segmentation of a reservoir into simulation cells for a standard five-point pattern according to an embodiment of various techniques described herein;
[0049] Figure 35A -D depicts three water injection wells and two oil production wells drilled into three stacked reservoirs according to embodiments of various techniques described herein. The three reservoirs and the five wells represent three distinct but hydraulically connected graph networks;
[0050] Figure 36 Depicts an oil producer-injector completion connection according to an embodiment of the various techniques described herein. A check mark indicates such a pairing, which can only exist in the same reservoir unit u. Note that the image is identical to Figure 36 (a) is almost the same. The diagram has two production wells P-1 and P-2, such that P∈{p1,p2}, and three injection wells I-1, I-2, I-3, such that I∈{i1,i2,i3}. The colored dots represent completions (injectors are blue and producers are green). The staggered stacking "units" are also shown and are denoted U∈{u1,u2,u3};
[0051] Figure 37 The mass flow rate of water from an injection well to an oil production well is plotted (in a linear element) according to various embodiments of the techniques described herein. The linear element itself has a cross-sectional area represented by A, a thickness of dx, and a porosity of φ. The amount of the advance element must be Aφdx.
[0052] Figure 38 Depicted are water saturation distributions for an injector-producer pair prior to water inrush, according to embodiments of various techniques described herein.
[0053] Figure 39 Plotted are the tangent to the fractional flow curve before the onrush and the average water saturation behind the shock front according to embodiments of various techniques described herein.
[0054] Figure 40 Plots water saturation curves between an injector-producer pair at and after a water inrush, utilizing current notation, according to embodiments of various techniques described herein.
[0055] Figure 41A The subsurface reservoir cell approximation reproduced by the CGAN analysis is shown. The model can incorporate errors (shown as dark grey bodies) and the contours represent any static reservoir properties required by the user. The three black dots represent existing wells (robust information) that are respected by the CGAN.
[0056] Figure 41B 1. Depicts an approximation of a subsurface reservoir cell rendered by a CGAN analysis according to an embodiment of various techniques described herein, wherein an SRMS is invoked and rendered over a region / volume of interest. The degree of tessellation is user-defined but may be defaulted. Each tessellation represents a volume or property or any property of interest associated with a forward simulation of a subsurface reservoir cell.
[0057] Figure 42 A general workflow illustrating the relationship between a CGAN model (i.e., a dynamic simulation model) and the operation of downhole valves, chokes, and other equipment is depicted in accordance with an embodiment of various techniques described herein. The red arrows indicate a continuous monitoring and updating process whereby the condition vector Y is updated based on measurements taken during an operating period (t). The large red dashed box represents a fully "learned" CGAN, as shown in FIG. Figure 6 The updated condition vector is used to restart and retrain the CGAN, so that G becomes fully trained;
[0058] Figure 43 depicts an exemplary monitored flow control device according to embodiments of various techniques described herein, showing water cut, pressure, temperature, and volume rate consistent with a flow control element of the device;
[0059] Figure 44 depicts exemplary historical flow data and how it changes over a forecast period controlled by an inflow control valve according to embodiments of various techniques described herein;
[0060] Figure 45 Plotting the actual rate versus unoptimized red production curve for each of these four wells according to embodiments of various techniques described herein;
[0061] Figure 46 depicts a set of possible HM implementations that may be used to optimize valve settings according to embodiments of various techniques described herein;
[0062] Figure 47 Schematic diagram of an embodiment of the present invention according to various techniques described herein. Figure 46 The results of optimizing the valve settings are achieved;
[0063] Figure 48 is based on the implementation of various technologies described in this article Figure 1 Flowchart of the neural network driven reservoir modeling process;
[0064] Figure 49A -C depicts a geological image generated by a trained GAN generator according to an embodiment of various techniques described herein;
[0065] Figure 50depicts an optimization loop for adjusting a latent vector (noise vector) based on observations, according to an implementation of various techniques described herein;
[0066] Figure 51A - J depicts an example of implicit (noise) vector optimization to adjust for geology based on well observations according to an implementation of various techniques described herein; and
[0067] Figure 52 According to one or more exemplary implementations of the present disclosure Figure 1 An exemplary diagrammatic view of a client electronic device.
[0068] Like reference symbols in the various drawings may indicate like elements. DETAILED DESCRIPTION
[0069] The following discussion is directed to specific implementations and / or embodiments. It will be understood that the following discussion is only intended to enable one skilled in the art to make and use any subject matter now or later defined by the patent "claims" appearing in any patent issuing herein.
[0070] It is particularly intended that the combination of claimed features is not limited to the implementations and descriptions contained herein, but rather includes modified forms of those implementations within the scope of the appended claims, including combinations of parts of the implementations and elements of different implementations. It should be understood that in the development process of any such actual implementation, as in any engineering or design project, many implementation-specific decisions must be made to achieve the developer's specific goals, such as complying with system-related and business-related constraints, which may differ between different implementations. Moreover, it should be understood that such development work may be complex and time-consuming, but will still be a routine task of design, manufacturing, and processing for those of ordinary skill in the art who benefit from this disclosure. Unless expressly indicated as "critical" or "essential," nothing in this application is considered critical or essential to the claimed invention.
[0071] It will also be understood that although the terms "first," "second," etc., may be used herein to describe various elements, these elements should not be limited by these terms. These terms are merely used to distinguish one element from another. For example, without departing from the scope of the present invention, a first object or step may be referred to as a second object or step, and similarly, a second object or step may be referred to as a first object or step. The first object or step and the second object or step are each an object or step, but should not be considered the same object or step.
[0072] Additionally, as disclosed herein, the term "storage media" may refer to one or more devices for storing data, including read-only memory (ROM), random access memory (RAM), magnetic RAM, core memory, magnetic disk storage media, optical storage media, flash memory devices, and / or other machine-readable media for storing information. The term "computer-readable medium" includes, but is not limited to, portable or fixed storage devices, optical storage devices, wireless channels, and various other media capable of storing, containing, or carrying data and / or information.
[0073] In addition, the embodiment can be implemented by hardware, software, firmware, middleware, microcode, hardware description language or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segment used to perform the necessary tasks can be stored in a computer-readable medium such as a storage medium. The processor can perform the necessary tasks. The code segment can represent any combination of a process, function, subroutine, program, routine, subroutine, module, software package, class, or instruction, data structure or program statement. The code segment can be coupled to another code segment or hardware circuit by transmitting and / or receiving information, data, independent variables, parameters or memory contents. Information, independent variables, parameters, data, etc. can be transmitted, forwarded or transferred via any suitable means, including memory sharing, message passing, token passing, network transmission, etc. It should be understood that the following disclosure provides many different embodiments or examples for implementing the different features of various embodiments. The specific examples of components and arrangements are described below to simplify the disclosure. Of course, these are only examples and are not intended to be restrictive. In addition, the disclosure may repeat reference numbers and / or letters in each example. This repetition is for the purpose of simplicity and clarity and does not in itself indicate a relationship between the various embodiments and / or configurations discussed. In addition, in the following description, forming a second feature above or on a first feature may include an embodiment in which the first feature and the second feature are formed in direct contact, and may also include an embodiment in which an additional feature may be formed between the first feature and the second feature so that the first feature and the second feature are not in direct contact.
[0074] See Figure 1 , a neural network driven reservoir modeling process 10 is shown. For the following discussion, it is expected to be understood that the neural network driven reservoir modeling process 10 can be implemented in a variety of ways. For example, the neural network driven reservoir modeling process 10 can be implemented as a server-side process, a client-side process, or a server-side / client-side process.
[0075] For example, the neural network-driven reservoir modeling process 10 may be implemented as a purely server-side process via the neural network-driven reservoir modeling process 10s. Alternatively, the neural network-driven reservoir modeling process 10 may be implemented as a purely client-side process via one or more of the client-side applications 10c1, 10c2, 10c3, and 10c4. Still alternatively, the neural network-driven reservoir modeling process 10 may be implemented as a server-side / client-side process via a combination of the server-side neural network-driven reservoir modeling process 10s and one or more of the client-side applications 10c1, 10c2, 10c3, 10c4, and 10c5. In this example, at least a portion of the functionality of the neural network driven reservoir modeling process 10 may be performed by the neural network driven reservoir modeling process 10s, and at least a portion of the functionality of the neural network driven reservoir modeling process 10 may be performed by one or more of the client-side applications 10c1, 10c2, 10c3, 10c4 and 10c5.
[0076] Thus, the neural network driven reservoir modeling process 10 used in the present disclosure may include any combination of the neural network driven reservoir modeling process 10s, the client side application 10c1, the client side application 10c2, the client side application 10c3, the client side application 10c4 and the client side application 10c5.
[0077] The neural network driven reservoir modeling process 10s may be a server application and may reside on and be executed by a computing device 12, which may be connected to a network 14 (e.g., the Internet or a local area network). Examples of computing device 12 may include, but are not limited to, a personal computer, a server computer, a series of server computers, a minicomputer, a mainframe computer, or a dedicated network device.
[0078] The instruction sets and subroutines of the neural network-driven reservoir modeling process 10s may be executed by one or more processors (not shown) and one or more memory architectures (not shown) included within the computing device 12, and the instruction sets and subroutines may be stored on a storage device 16 coupled to the computing device 12. Examples of the storage device 16 may include, but are not limited to: a hard drive; a tape drive; an optical drive; a RAID device; a NAS device, a storage area network, random access memory (RAM); read-only memory (ROM); and all forms of flash memory storage devices.
[0079] Network 14 may be connected to one or more secondary networks (eg, network 18), examples of which may include, but are not limited to, for example: a local area network; a wide area network; or an intranet.
[0080] The instruction sets and subroutines of the client-side applications 10c1, 10c2, 10c3, 10c4, 10c5 may be executed by one or more processors (not shown) and one or more memory architectures (not shown) incorporated into the client electronic devices 30, 32, 34, 36, 38 (respectively), and the instruction sets and subroutines may be stored on storage devices 20, 22, 24, 26, 28 (respectively) coupled to the client electronic devices 30, 32, 34, 36, 38 (respectively). Examples of the storage devices 20, 22, 24, 26, 28 may include, but are not limited to: hard disk drives; tape drives; optical disk drives; RAID devices; random access memory (RAM); read-only memory (ROM), and all forms of flash memory storage devices.
[0081] Examples of client electronic devices 30, 32, 34, 36, 38 may include, but are not limited to, personal computers 30, 36, laptop computers 32, mobile computing devices 34, notebook computers 36, netbook computers (not shown), server computers (not shown), game consoles (not shown), data-enabled television consoles (not shown), and dedicated network devices (not shown). Each of the client electronic devices 30, 32, 34, 36, 38 may execute an operating system.
[0082] Users 40, 42, 44, 46, 48 may access the neural network driven reservoir modeling process 10 directly through the network 14 or through the secondary network 18. Additionally, the neural network driven reservoir modeling process 10 may be accessed through the secondary network 18 via tie lines 50.
[0083] Various client electronic devices (e.g., client electronic devices 28, 30, 32, 34) can be coupled directly or indirectly to network 14 (or network 18). For example, personal computer 28 is shown as being directly coupled to network 14. Furthermore, laptop computer 30 is shown as being wirelessly coupled to network 14 via a wireless communication channel 52 established between laptop computer 30 and a wireless access point (WAP) 54. Similarly, mobile computing device 32 is shown as being wirelessly coupled to network 14 via a wireless communication channel 39 established between mobile computing device 32 and a cellular network / bridge 58, which is shown as being directly coupled to network 14. WAP 48 can be, for example, an IEEE 802.11a, 802.11b, 802.11g, 802.11n, Wi-Fi, and / or Bluetooth device capable of establishing a wireless communication channel 52 between laptop computer 30 and WAP 54. Additionally, personal computer 34 is shown coupled directly to network 18 via a hardwired network connection.
[0084] In some implementations, a client electronic device (e.g., client electronic device 38) may be electronically coupled to at least one monitored inflow control device 60 (e.g., Schlumberger Production and Reservoir Management System). Manara is a registered trademark of Schlumberger Technologies, Inc. The Manara Production and Reservoir Management System may include a multi-stage production assembly for a subsurface well, i.e., flow control valves, packers, monitoring and telemetry equipment for segmenting a downhole well and enabling control and monitoring of each individual segment while the well is being produced. As will be discussed in more detail below, the monitored inflow control device 60 may be configured to be deployed into or adjacent to a well (e.g., well 62) or other structure. In some implementations, the monitored inflow control device 60 may generally include a tool running on an electric logging cable that pushes a probe into the formation, which then allows production into a small, closed chamber. The monitored inflow control device 60 may obtain formation pressure at selected locations at certain intervals, and through a precise quartz gauge, permeability estimates may be obtained. In some implementations, the monitored inflow control device 60 may obtain formation fluid samples. In some implementations, the monitored inflow control device 60 may include a dielectric scanner configured to measure water volume and rock formation information and / or a resistivity sensor configured to measure the resistivity of rock or sediment.
[0085] In some embodiments, the neural network-driven reservoir modeling process 10 may communicate with, interact with, and / or include components or modules of a production and reservoir management application, such as, for example, the production and reservoir management application 64. In some embodiments, the production and reservoir management application may process, store, or otherwise interact with well log data recorded or provided by the monitored inflow control devices 60.
[0086] In one embodiment, the instruction set and subroutines of the production and reservoir management application 64 can be stored, for example, on a storage device 16 and / or another suitable storage device associated with the server computer 12 executing the production and reservoir management application 64. In addition, users (e.g., one or more of users 40, 42, 44, 46, 48) can access the production and reservoir management application 64 to access well logs and other data received from the monitored inflow control devices 60 or other mechanisms. Users can access the production and reservoir management application 64 via one or more suitable applications, such as client-side applications 10c1-10c5 (e.g., which may include a web browser, a client-side electronic conferencing application, or another application) and / or via a different application (not shown). In addition, while some users are depicted as being connected to the server computer 12 (and therefore to the electronic production and reservoir management application 64) via a network 14 (which may include the Internet), in other embodiments, one or more users can be directed to connect to and / or connect to the server computer 12 via, for example, a local area network and / or similar connection.
[0087] As generally discussed above, one or more of the client-side applications 10c1-10c5 may provide a portion and / or all of the functionality of the neural network-driven reservoir modeling process 10. For example, in some embodiments, the neural network-driven reservoir modeling process 10 (and / or the client-side functionality of the neural network-driven reservoir modeling process 10) may be included within and / or interact with the client-side applications 10c1-10c5, which may include a client-side electronic production and reservoir management application, a web browser, or another application. Various additional / alternative configurations may equally be utilized.
[0088] See also Figures 2 to 52 As will be discussed in greater detail below, the neural network-driven reservoir modeling process 10 can generate 200 one or more reservoir models based on one or more training images and one or more physical conditions associated with the reservoir via one or more neural networks. The one or more reservoir models can be simulated 202, and one or more monitored inflow control devices can be controlled 204 based at least in part on simulating the one or more reservoir models.
[0089] In this manner, and as will be discussed in greater detail below, the neural network-driven reservoir modeling process 10 can generate a reservoir model that is indistinguishable from the training images generated by the object model building tool, but which is adjusted based on observations of physical conditions associated with the reservoir (e.g., exemplary well and seismic data). In some implementations, the neural networks used by the neural network-driven reservoir modeling process 10 to generate the reservoir model (e.g., GAN, CGAN, RNN, CNN, etc.) can also have random inputs so that, once trained, they can quickly generate multiple geological realizations that are indistinguishable from the training images while respecting the observations. In some implementations, the neural network-driven reservoir modeling process 10 can generally include a generative model that captures sufficient geological knowledge to generate well logs consistent with real, observed wells. Physical and geological constraints can be enforced in this model. For example, the volume and properties of sediment deposition can vary with the distance of the well from the shoreline. It will be appreciated that other physical and geological constraints are possible.
[0090] In some implementations, the neural network driven reservoir modeling process 10 may generate 200 a reservoir model based on one or more training images. The training images may generally include images or data samples used to train the neural network. In some implementations, the neural network driven reservoir modeling process 10 may generate the training images from an object based modeling (OBM) tool. The object modeling tool may generally include a tool capable of generating training images based at least in part on synthetic geological data. For example, and also referring to Figure 3 , the neural network driven reservoir modeling process 10 can generate, for example, two training images (where red can represent sand-filled channels and purple can represent shale floodplains). In some implementations, the training images generated from the OBM tool or examples can focus on a geologic map view. In some implementations, one or more training images or the training data used to generate the training images from the OBM tool can be derived from a geoscientist's knowledge and understanding of the local geology. For example, the geoscientist can provide information (e.g., via the user interface of the OBM tool) that can be used to generate the one or more training images, such as the wavelength and amplitude of the channels. In some implementations, the OBM tool can generate training images with a wide range of geologic attributes.
[0091] In some implementations, the neural network driven reservoir modeling process 10 may generate one or more training images from a geological process modeling (GPM) simulator. Figure 4As shown in the workflow of , the neural network driven reservoir modeling process 10 can make inferences based on geological rules and knowledge that may have been learned through a deep learning framework. GPM is a relatively new tool and is not currently part of the interpretation and modeling workflow. In some implementations, training images obtained from GPM can be used to generate synthetic geology. In some implementations, GPM examples can focus on geological cross-sectional views. For GPM, the user can supply more basic information (e.g., via the GPM user interface), such as initial geographic location, sea level over geological time, sediment erosion rate, etc. The GPM can then generate geology over a specified time (e.g., 20 million years). This results in a 3D geological model that obeys geological principles. As will be discussed in more detail below, these generated models can be used to "teach geology" to a neural network (e.g., a GAN) as an alternative and / or supplement to supplying the neural network with OBM-based training images.
[0092] Deep learning currently requires a large amount of labeled data for training. To achieve this goal, the neural network driven reservoir modeling process 10 can use GPM ( Figure 4 Synthetic data is generated (action 402 in
[0066] ). For example, rather than relying solely on actual field data, which may be expensive to obtain, the neural network driven reservoir modeling process 10 can generate synthetic data (e.g., GPM) to allow the reservoir to be accurately modeled under less realistic physical conditions. In some implementations, different geological parameters can be input to the GPM simulator, such as initial conditions, sea level changes over time, etc. Once different models have been generated, synthetic well and / or seismic segments (e.g., tectonic plates) can be created that intersect the geological models. Figure 4 In addition to the geometry, the geological simulator may also generate properties describing the rock properties, such as clay, silt, and / or sand content. For one or more of the previously generated synthetic wells, a log of the rock properties may be extracted ( Figure 4 406 in ). The resulting large data set can define one or more training images. For example, and referring also to FIG9 , the GPM can generate various geological environments that can be used to train a neural network to understand a wide range of geological environments and facies (i.e., the body of rocks with specified properties, which can be any observable attribute of rocks, such as their overall appearance, composition, or stratigraphic state, and the variations that those attributes may exhibit across a geographic region). The resulting trained generator will then be able to produce a geological model adjusted to the local geology observed through wells, seismic, and other data such as outcrops.
[0093] In some implementations, one or more training images may become input for training, validating, and testing a deep learning neural network ( Figure 4(408, 410, 412 in the example). Figure 4 In an example, one or more of a "vanilla" generative adversarial network (GAN), a conditional GAN (CGAN), and / or a latent space representation can be trained. Generative adversarial networks (GANs) generally may include a class of neural networks used in unsupervised machine learning. Exemplary applications may include (but are not limited to) generating images from descriptions, generating high-resolution images from low-resolution images, predicting drugs for treating specific diseases, retrieving images containing a given pattern, and the like.
[0094] In some implementations, generative adversarial networks (GANs) can avoid Markov chains due to the high computational cost of MCMC (e.g., Markov Chain Monte Carlo), can have fewer constraints on the distribution of latent variables, and / or can avoid mean-field assumptions. Using GANs can overcome several limitations of applying multi-point interpretation. For example, the high computational cost associated with MPS is a major limitation in adapting geological models to data. An additional limitation of the MPS approach is that geological objects are too "noisy" due to inherent stochastic processes. Furthermore, MPS has a limited capacity to reproduce the complexity of many geological environments. As will be discussed in more detail below, GANs can be used to improve the "realism" of synthesized training images, which can be another key benefit over conventional methods.
[0095] As will be discussed in more detail below, Figure 4 The first use case shown in FIG may involve a neural network driven reservoir modeling process 10 constructing and / or generating a GAN that can generate wells in a general manner such that no physical conditions, such as distance from the shore surface, are imposed on the wells. Figure 4 Action 414 in).
[0096] As will be discussed in more detail below, Figure 4 The second use case shown in may involve extending the workflow to apply conditions to the wells when they are generated ( Figure 4 (Action 416 in
[0066] ). As will be discussed in more detail below, applying the physical conditions may include applying both static and dynamic physical conditions. For example, if a production history is not available for the well, only static modeling is applicable. That is, adjusting the generated model based on the well can match static observations such as lithology or facies. If production data history is available for the well, the reservoir model can also be adjusted based on this data. That is, reservoir simulation using, for example, a reservoir simulator, as will be discussed below, can be applied to the model and adjustments can be made to both static properties (lithology and facies) and dynamic properties (production history).
[0097] In one example, the neural network-driven reservoir modeling process 10 can specify a distance from the shore surface such that the generated well logs are consistent with the geology at that location. In some implementations, the distance can be input via a user interface. In this way, the concept of conditional generative adversarial networks (CGANs) can be used within the scope of the present disclosure to specify some constraints on the generator. In one example, the distance from the shore in the form of a distance range, such as ("generate wells that appear to be drilled between 10 km and 12 km from the shoreline"), can be used to adjust the reservoir model.
[0098] As will be discussed in more detail below, Figure 3 A third use case shown in may involve developing an inversion model that can map real wells into a latent space representation ( Figure 4 (Act 418 in the example). The latent space generally represents high-level features to which algebraic operations can be applied. For example, the latent spaces of two different wells can be interpolated to generate a well that is a mixture of the two original wells. This can be illustrated by an example where the latent space representation of the wells is continuous and transforms smoothly when interpolated. Another exemplary application can modify the conditions on the latent space to change the well to one that is located further offshore (e.g., 10 km) than the original well.
[0099] In some embodiments, and also see Figure 5 For example, the neural network driven reservoir modeling process 10 can train a GAN (e.g., GAN 500) or a vanilla GAN. Assume that there is real data x (e.g., real data 502) from a distribution X (x∈X), and also assume that there is some noise z from a distribution Z (z∈Z). It may be desirable to find a function f such that: f:Z→Y, where Y is as close to X as possible. In practice, it may be more interesting to generate samples that look like samples from X rather than to approximate the PDF of X. For example, consider the problem of generating images of a particular item (e.g., a cat). In this example, it may be less desirable to know the probability of a given item (e.g., a cat image) and more desirable to generate an image according to a distribution.
[0100] In some implementations, two neural networks compete with each other: a discriminator D (e.g., discriminator 504) is trained to determine whether an input comes from a real data source (e.g., real sample 506) or is generated (forged) (e.g., forged sample 508). A generator G (e.g., generator 510) is trained to generate real-looking data based on training data (e.g., training data 512) and attempt to fool the discriminator D (e.g., discriminator 504) (G plays the role of the function f described above). By alternately training G (e.g., generator 510) and D (e.g., discriminator 504), it is expected that each will improve: G (e.g., generator 510) will get better at creating forged data, while D (e.g., discriminator 504) will get better at distinguishing between real and forged data. Ultimately, at the end of training, an equilibrium may be reached where G can produce forged data that D (e.g., discriminator 504) cannot distinguish from real data. This "training game" played by the two neural networks can be summarized by the min-max relationship of Equation 1:
[0101] (1)
[0102] Where x = real data, z = noise samples, G = generator, D = discriminator, θ = weights of the generator, φ = weights of the discriminator, and E = expectation.
[0103] In some implementations, it can be observed that maximizing φ implies that the discriminator should give a probability close to one for real samples and a probability close to zero for counterfeit samples. This will result in log(l)+log(l-0)=0, which is the maximum value of the log function on the probability interval [0, l]. In some implementations, it can be observed that minimizing θ implies that the generator should cause the discriminator to output a probability close to one for counterfeit data. This leads to log(ε)→∞ and minimizes the equation.
[0104] In some embodiments, and also see Figure 5 and Figure 6For example, the neural network driven reservoir modeling process 10 may train a conditional GAN (CGAN 600). In some implementations, it may be desirable to have a certain degree of control when generating a reservoir model. For example, a conditional GAN (e.g., CGAN 600) may allow parameter control of the synthetically generated data so that the results meet the supplied parameter values. In some implementations, these parameters may be physical conditions (e.g., sea level and distance from the coastline). However, it will be appreciated that other parameters or physical conditions associated with the reservoir are possible. In the case of the vanilla GAN described above, it may not be possible to impose these conditions because the sample z input to the GAN may be a random noise vector. That is, it may not be known how the high-level features of a particular image are encoded in Z.
[0105] One approach to using a CGAN is to decompose the input to the generator into two parts: a noise source z∈Z (e.g., training data 512) and a conditional vector y (e.g., conditional vector 604) that represents the conditions of interest to be enforced for the generation. The conditional vector y (e.g., conditional vector 602) will be discussed in more detail below. In some implementations, the vectors z (e.g., training data 512) and y (e.g., conditional vector 602) may be concatenated and passed to a Figures 5 and 6 . For the discriminator D, the real vector or the fake vector is also concatenated with the conditional vector y. Therefore, G now generates data that not only attempts to fool the discriminator but also satisfies the conditional vector y (e.g., conditional vector 602).
[0106] The cost function of Equation 1 may be modified to incorporate the condition as shown below in Equation (2).
[0107] (2)
[0108] Where x = real data, y = conditional vector, z = noise sample, G = generator, D = discriminator, θ = weights of generator, φ = weights of discriminator, and E = expectation.
[0109] In some implementations, the neural network driven reservoir modeling process 10 may use a Figure 6 As discussed above, one or more training images may be input to the neural network of the exemplary neural network to generate 200 one or more reservoir models. Figure 6 The generator then learns the geology and is able to create a geological model that not only looks like the geology it was trained on (the training images or models generated by the OBM or GPM) but also satisfies the constraints of the conditional vector Y. As discussed above, a GAN or CGAN may include two neural networks: a generator (e.g., Figure 6 G) and the discriminator (e.g., Figure 6 After training, D is generally discarded because G is fully trained to generate synthetic geology. However, in addition to training the weights of the neurons in G, the architecture / structure of G must be designed.
[0110] In some implementations, the network can be implemented via specific types of neural networks, such as recurrent neural networks (RNNs) and convolutional neural networks (CNNs). Figure 6 Generator. For example, an RNN architecture can be part of the generator design because geology is inherently temporal (in geological time). RNNs can capture the knowledge that the past is key to the present: that is, the geology at the previous time step influences the current and future time steps. When considering a 3D geological model, rocks are older the deeper they are, and thus can be viewed as a time series from deeper to shallower.
[0111] exist Figure 7 The entire workflow involving RNN is shown in . Figure 7 The workflow can be inferred based on geological rules and knowledge that have been learned through deep learning frameworks. Deep learning currently requires a large amount of labeled data for training. To achieve this goal, geological process modeling simulators can be used to generate synthetic data ( Figure 7 Different geological parameters are input to the simulator, such as initial conditions and sea level changes over time. Once different models have been generated, synthetic wells (or seismic segments) that intersect the geological models can be created ( Figure 7 In addition to the geometry, the geological simulator also generates properties describing the rock properties, such as clay, silt, and sand content. The simulator may also generate properties of the depositional environment, such as the rate of sea level change and relative sea level. For all of the previously generated synthetic wells, logs of rock properties and depositional environment are extracted ( Figure 7 The resulting large dataset may include one or more training images. In some implementations, the one or more training images may become input for training, validating, and testing a deep learning neural network ( Figure 7 In action 708). Figure 7 In the example of , a recurrent neural network (RNN) can be trained.
[0112] As will be discussed in more detail below, Figure 7 The first use case shown in FIG (e.g., Use Case 1 710) may involve inferring the relative rate of sea level change over geological time. The input measurements are well logs of the relative fractions of clay, silt, and sand. Knowledge of the relative rate of sea level change at a given depth in the well yields important insights into sequence stratigraphy.
[0113] As will be discussed in more detail below, Figure 7 The second use case shown in FIG. 7 (e.g., Use Case 2 712) may involve building a fast model that can perform a "simulation inversion" by recovering the simulator's meta-parameters, which will reproduce a given well at a given location. Such a model would be very useful because forward geological simulation is computationally very expensive. Furthermore, if one is interested in interpreting real data rather than synthetic data, forward modeling of the geology is not an option. Having a model that can interpret the geology in the well and interpret the most likely geological model parameters would allow for a better understanding of the geology at a specific location.
[0114] In standard (fully connected or convolutional) networks, it can be assumed that the model inputs are independent and therefore have no temporal dependencies. In fact, when building an image classifier, for example, the resulting class assigned to an image does not depend on previous (or future) images presented to the model. However, when trying to model time series, these assumptions no longer hold. Therefore, it may be necessary to consider temporal dependencies between the inputs to the model. In order to take these temporal dependencies into account, RNNs can be used as generator D and / or discriminator D neural networks.
[0115] RNNs are similar to fully connected neural networks because they share the same weights for all inputs. However, RNNs have internal hidden states that are updated at each time step based on the previous state and the current input. In addition, the output at a given time step can be calculated using the current hidden state. Using a formal description, RNNs themselves can be represented as loops that can theoretically be infinite. However, in practice, they can be expanded in a finite number of steps and have weights that are trained using a backpropagation algorithm.
[0116] In some implementations, this can be implemented via CNN (Convolutional Neural Network) Figure 6 Generators of , because they capture and model the spatial relationships of geological objects. Therefore, various neural networks can be used in various situations. For example, in situations involving interpreting the rate of sea level change and / or interpreting model parameters, RNNs can be used. In some situations involving predicting the geology of new wells and / or reproducing physical constraints, GANs can be used. However, it will be appreciated that various neural networks can be used for various applications.
[0117] As discussed above, the GAN generator can be trained to generate reservoir models or realizations that are indistinguishable from models generated by OBM. In some implementations, the CGAN generator can be further tuned based at least in part on the physical conditions or observations of the reservoir so that all generated models can also respect the observations.
[0118] In some implementations, the neural network driven reservoir modeling process 10 may generate 200 one or more reservoir models based at least in part on one or more physical conditions or observations in the form of "hard" data and / or "soft" data. In some implementations, the neural network driven reservoir modeling process 10 may adjust the one or more reservoir models based at least in part on the "hard" data and / or the "soft" data. In some implementations, the process may be configured to generate 200 one or more reservoir models based at least in part on the "hard" data and / or the "soft" data. Figure 6 The condition vector y shown in FIG includes the hard data and soft data. Hard data may generally include the most trusted data that will be fully respected in the reservoir model. Examples of hard data may generally include well data and / or core data. Soft data may be less precise than hard data and may be used to constrain one or more reservoir models to trends or probabilities. Examples of soft data may generally include seismic data and / or geological interpretations. The condition vector y may be large and complex. It is believed that it is best if the generator G creates all conditions (or constraints) on the reservoir model.
[0119] For example, one component of y could be the location of well measurements. Those measurements could be rock type (sand, shale, limestone, etc.) or petrophysical properties such as porosity or permeability. Seismic based conditions could also be supplied based on attribute interpretation. Additional conditions such as exogenous geological knowledge could also be included in y, such as knowledge of when the depositional environment was: for example whether it was a continental shelf or deep water. Potentially the production history of the well would also be included in Y. This opens up the possibility of applying this to history matching. In history matching, the geology being modeled must have the correct geometry and properties to have hydrocarbon flow in the manner seen in the production history of the well. The resulting geology created by G would then respect the supplied conditions. For example, in Figure 8 The neural network driven reservoir modeling process 10 is shown in FIG. Figure 4 An exemplary reservoir model (eg, reservoir realization) is generated 200 from training images.
[0120] For example, a trained CGAN can be adjusted relative to known physical conditions or data associated with subsurface assets (existing wells, analogs, outcrops, etc.). The trained reservoir model can then be used to populate the static properties and their distributions of a single layer, various layers, facies, or the entire subsurface activity to provide a reasonable approximation of the (unknown) subsurface geology. Any number of CGAN-generated reservoir models can be generated. A CGAN reservoir model adjusted based on known data from existing wells can include all, some, or none of the following:
[0121] ·Aerial range of units, layers, and phases
[0122] Fault
[0123] Porosity
[0124] Permeability
[0125] Net-to-Gross (NTG)
[0126] Saturation
[0127] ·pressure
[0128] Thickness (may vary by region)
[0129] Connectivity to adjacent compartments
[0130] Connectivity to aquifers and / or gas caps
[0131] See also Figures 9A to 9B For example, Figure 9A It can be empty except for three known data points. These known data points can be existing wells or cores or other physical conditions. Figure 9B There can be a CGAN map for any property (here porosity). Hundreds (or even thousands) of such property maps can be generated by the neural network driven reservoir modeling process 10 in such a way that they all adhere to the available data. In some embodiments, Figure 9B Can draw compliance Figure 9A but fills in a map of the hitherto unknown interwell regions (white space) using the three data points but applying a model generated from a conditional GAN model using analogs, previous maps, outcrops, or any other source of information.
[0132] In this example, a vanilla GAN is used to generate realistic-looking wells unconditionally. Instead of generating wells of any measured depth / length, segments of uniform length are generated, e.g. Figure 10 In Figures 10 to 16 In the example of , GPM generates synthetic geological conditions (e.g., one or more training images). The figures labeled as pseudo samples 1, 2, and 3 are shown in Figure 16 The well log curves in the training oil wells (e.g. Figure 6 The training images are generated by the oil production wells G) and are similar to the training images generated by the oil production wells that were trained on the training images supplied by the OBM. The conditions in this scenario are simple positions that describe the relative position of the wells with respect to the geology. In some embodiments, the well orientation can be described relative to the "proximal" to the "distal" subsidence environment. Figure 13In the training and test data sets of , the near environment may be closer to the coast and have coarser sediments and thicker layers. The far environment, on the other hand, has finer sediments and thinner layers. In some embodiments, these four states (classes) may range from the farthest end (class 1) to the closest end (class 4), as shown in FIG. Figure 28 As described in .
[0133] For both the vanilla GAN investigation and the conditional GAN (CGAN) investigation, fully connected neural networks have been implemented to model G and D. For the vanilla GAN example, through hyperparameter optimization, the following architecture for generating wells was observed:
[0134] Latent Space:
[0135] Size = 128
[0136] Distribution = Normality
[0137] Oil wells:
[0138] Number of layers = 3
[0139] Number of neurons = 512
[0140] Discriminator:
[0141] Number of layers = 3
[0142] Number of neurons = 239
[0143] In some implementations, GANs can be extremely unstable during training. In one example, the Wasserstein GAN (WGAN) method is used for the cost function. Instead of outputting probabilities, the WGAN generates a critics score (criticscore). As WGAN training progresses, this critics score decreases. The value of the score can be interpreted as "the generator performs x times better than before" rather than as a probability. Additionally, this score provides a good indication of the quality of the generation, and generally, the lower the score, the better the generated sample.
[0144] In this experiment, at the end of training (200 iterations consisting of 100 batches with 64 sequences each), generated data were obtained that appeared visually similar to real samples.
[0145] In another example, well logs adjusted for relative distance from the shoreline are generated, such as Figure 11 The same basic network structure and configuration are generally used as in the original GAN example above. However, to support conditioning, the conditioning vector can be concatenated with noise. In this example, five different categories are used, corresponding to five different distance ranges from the coastline.
[0146] exist Figures 12 to 16 In FIG. 1 , some examples of the generation of wells by type using a neural network driven reservoir modeling process 10 can be observed. These examples can be drawn from different training epochs. In some embodiments, an epoch can generally be a measure of the number of times all training vectors are used once to update the weights of the neural network. Figure 12 It can represent training after 0 epochs; Figure 13 It can represent the training after 10 epochs; Figure 14 It can represent the training after 90 epochs; Figure 15 can represent training after 150 epochs; and Figure 16 This represents training after 170 epochs. We can observe that at the beginning of training, the generator outputs noise, but quickly learns to approximate the real data with more epochs.
[0147] In some embodiments, given a number of real physical measurements and a distribution of geological patterns (e.g., a large set of training images), an implementation of a geological situation (e.g., a reservoir model) that adheres to the physical measurements while producing realistic geological patterns can be generated 200. More specifically, assuming that a particular region is known to have, for example, a river geological pattern, such as Figure 17A , as shown in . In this example, the fluvial geotype can be non-Gaussian and highly nonlinear. Furthermore, assume that rock type r has been measured at various spatial locations (x, y), i.e., a set of tuples of the form (x, y, r). Given these measurements, the rock type r at all locations can be determined such that: 1) the resulting realization is realistic (i.e., matches the distribution of the geotype); and 2) the resulting realization adheres to physical conditions or measurements. While fluvial geotypes have been described, it should be understood that embodiments of the present invention are applicable to all sedimentary environments, such as alluvial soils, lakes, deltaic plains, shallow seas, deep seas, and the like.
[0148] The examples discussed below relate to the case of river patterns with binary measurements (i.e., there are only two rock types present), but this scenario can be easily extended to general cases. For example, the neural network driven reservoir modeling process 10 may receive 206 one or more training images including a distribution of patterns associated with a depositional environment (e.g., distributions of river patterns, alluvial soil patterns, lake patterns, deltaic plain patterns, shallow marine patterns, deep marine patterns, etc.). Specifically, the neural network driven reservoir modeling process 10 may have a distribution p of binary images. fluvial (z), where z∈{0,1} n×n ; and a set of m binary measurements (x, y, r), where r∈{0, 1}. In some embodiments, samples z~p fluvial (z) can be generated so that for i=1, ..., m, z(xi ,y i )=r i This method is illustrated in Figure 17B middle.
[0149] The above problem is closely related to semantic image restoration. Semantic image restoration may generally include the task of filling in missing areas of an image using surrounding pixels and a priori content that the image should look similar to. As discussed above, a GAN is a generative model consisting of a generator G and a discriminator D, each parameterized by a neural network, where G is trained to map a latent vector z into an image x, and D is trained to map image x to the probability that the image is real (as opposed to the generated image). In some embodiments, the neural network driven reservoir modeling process 10 may train 208 one or more neural networks to generate one or more samples based at least in part on one or more training images, wherein the training images include a distribution of patterns associated with a sedimentation environment. For example, the network may be trained adversarially by optimizing a loss, as illustrated below in Equation 3.
[0150] (3)
[0151] In terms of the distribution p data After training on the data drawn, G will be able to generate a similar result from p by sampling z~p(z) and mapping x=G(z). data In some embodiments, the neural network driven modeling process 10 may generate 210 one or more reservoir models based at least in part on one or more samples and one or more physical conditions associated with the reservoir. Using the trained G and D, the neural network driven reservoir modeling process 10 may generate a realistic image (e.g., realize) x that is adjusted with respect to a set of known pixel values y. g = G(z). This can be achieved by fixing the weights of G and D and optimizing z to produce realistic samples based on known pixel values. In order to produce realistic samples (e.g., images and / or realizations), it may be necessary to make the sample x g Approximation p data , that is, samples such that the discriminator D assigns high probability to x g This is regularized via a priori loss as discussed below. In some implementations, it may be desirable for a sample to respect the pixel value y, i.e., the resulting x g Matches y at known pixel locations. This is normalized via a contextual loss as discussed below. In this way, the neural network driven reservoir modeling process 10 can generate one or more reservoir models, including determining at least one of a priori loss and contextual loss associated with one or more samples.
[0152] Prior loss: Prior loss Penalize non-realistic images. Since D is trained to assign high probability to realistic samples, the prior loss is chosen as shown in Equation 4 below:
[0153] (4)
[0154] Context loss: The context loss penalizes the mismatch between the generated sample and the known pixel y. Let M denote the masking matrix (the matrix has a value of 1 at the known points and a value of 0 otherwise), and the context loss is defined as shown in Equation 5 below:
[0155] (5)
[0156] Total loss: The total loss is defined as the weighted sum of the prior loss and the context loss, as shown below in Equation 6:
[0157] (6)
[0158] where λ controls the trade-off between producing realistic images and matching known pixel values. As can be observed, the loss Modified by Yeh et al. (2016) in that the L2 norm is used instead of the L1 norm for the context loss, and the masking matrix M is unweighted.
[0159] See also Figure 18 And in some embodiments, the neural network driven reservoir modeling process 10 can establish a connection between semantic image restoration and the realization of the geological situation adjusted with respect to the physical measurements. data Can be river type fluvial The distribution of , and the set of known pixel values y can be a set of known physical measurements at various orientations. By randomly initializing z and Minimizing, the neural network driven reservoir modeling process 10 can obtain various realizations that are realistic geological conditions while adhering to physical measurements (the relationship between using different initializations of z and generating different realizations of geological conditions is discussed in more detail below). The final algorithm for generating realizations adjusted for physical measurements can then be described as follows. Given a distribution p of river patterns fluvial (x), measured value y, the neural network driven reservoir modeling process 10 can perform the following operations:
[0160] 1. About p fluvial (x) Training G and D
[0161] 2. Initialize z randomly
[0162] 3. By making Minimize to calculate z
[0163] 4. Return sample x = G(z)
[0164] In some embodiments, the neural network driven reservoir modeling process 10 may train G and D using a large dataset of geological patterns. To generate this dataset, the neural network driven reservoir modeling process 10 may utilize another family of geological body modeling methods called object-based models (OBM). Although OBMs are good at generating realistic geological bodies, they are extremely difficult and slow to adjust to dense data locations and often fail to converge in MCMC (e.g., Markov chain Monte Carlo). The neural network driven reservoir modeling process 10 may use OBM to generate a training set of 5000 images of river patterns. Each image may have dimensions 128 by 128 and may be binary, where "1" corresponds to a channel and "0" corresponds to background (i.e., two different types of rock). However, it will be appreciated that images of other sizes and / or non-binary values may be used. An example of training data is shown in Figure 19 middle.
[0165] See also Figure 20 A training set of images can be generated using OBM using three channel parameters: orientation, amplitude, and wavelength. Each of these parameters can follow a triangular distribution. Orientation can vary from, for example, -60° to 60°; amplitude from, for example, 10 to 30; and wavelength from, for example, 50 to 100. The channel ratio of each image is controlled to, for example, 25% (i.e., an average of 25% of the pixels are white).
[0166] In some embodiments, the neural network-driven reservoir modeling process 10 can use a DC-GAN architecture (Radford et al. (2015)) for the discriminator and generator, and train an unconditional model (i.e., a model that freely generates river patterns without being constrained by physical measurements) on a dataset of, for example, 5,000 images. The nonlinearity in the discriminator can be LeakyReLU (0.2), except for the output layer, which can be a sigmoid. The nonlinearity in the generator is ReLU, except for the output layer, which can be a hyperbolic tangent (e.g., tangent, tanh). In some embodiments, the model can be trained for, for example, 500 epochs using the Adam algorithm with a learning rate of, for example, 1e-4, β1=0, and β2=0.9.
[0167] To verify that the model has learned to produce realistic and varied samples, the neural network driven reservoir modeling process 10 may perform several checks. First, the neural network driven reservoir modeling process 10 may visually inspect samples from the model (see Figure 21 ). The samples are almost indistinguishable from the real data and embody a number of properties of the data, for example, the channels remain connected, the patterns are tortuous, and there is a large diversity that suggests the model has learned the broad distribution of the data. Second, since the training images are generated by OBM, the model should satisfy some of the statistics. For example, the ratio of white pixels to black pixels can be a generative factor (and is selected to be 0.25). By sampling, for example, 1,000 images from G and calculating the ratio of white pixels to black pixels, the neural network driven reservoir modeling process 10 can obtain the same ratio within 1%. In addition, to ensure that the channels are well distributed, the neural network driven reservoir modeling process 10 can average, for example, the 1,000 generated images and check to confirm that the pixel values are approximately 0.25 at each location. Finally, the neural network driven reservoir modeling process 10 can also perform a traversal in the latent space to ensure that the model has learned a good approximation of the data manifold. It is expected that changes in the latent space are smooth and do not disconnect any channels. This is illustrated in Figure 22.
[0168] Using conditional GAN, the neural network driven reservoir modeling process 10 can be achieved by making the loss specified in Equation 4 To do this, the neural network driven reservoir modeling process 10 may obtain a river image and randomly select m measurement positions and mask the rest of the input. The neural network driven reservoir modeling process 10 may then use several z (i) Initialize randomly and use Stochastic Gradient Descent (SGD) for several z (i) Each of them makes In some embodiments, to optimize z, the neural network driven reservoir modeling process 10 may use SGD with a learning rate of 1e-2 and a momentum of 0.9. However, it should be understood that other configurations for optimizing z are within the scope of the present invention.
[0169] By making some z (i) Initialize randomly and for some z (i) Each of them makes minimization, which results in each corresponding to A set of local minima z *(i) Ideally, z *(i) Each of can be mapped to realize x (i) =G(z *(i) ), so that x (i) Adhering to physical measurements, with realistic geological patterns and each corresponding to a different realization. The idea is that different initializations will result in This results in different minimum values for , which in turn leads to a variety of samples that all satisfy the constraints. An example of this situation is shown in Figure 23 As can be seen, the generated samples are of high quality (channels remain connected and the image looks realistic), and satisfy the constraints while being diverse.
[0170] For most geostatistical modeling algorithms, increasing the number of measurements to be conditioned on degrades performance and increases runtime. However, this is not the case for the neural network driven reservoir modeling process 10, which is able to achieve good performance over a wide range of numbers of measurements, from sparse to dense. The results are plotted in Figure 24A However, Minimization can sometimes lead to poor minima, which in turn lead to samples that are not realistic or do not satisfy the measurement constraints. An example of this is provided in Figure 24B While the unconditional model exhibits large sample diversity, this is not always the case for the conditional samples. The resulting conditional samples are realistic and adhere to physical measurements but may lack diversity. The sample diversity is based on The diversity of local minima of , and random initialization can end up in the same local minimum, resulting in the same sample.
[0171] In contrast to conventional geological modeling systems, the neural network driven reservoir modeling process 10 can use several training images with a wide range of uncertainties and produce a large coherent realization of the geological situation compared to a small patch. More importantly, the neural network driven reservoir modeling process 10 can allow adjustments to be made with respect to physical measurements.
[0172] As discussed above, the neural network driven reservoir modeling process 10 can provide a powerful and flexible framework for generating an implementation of geological scenarios adjusted for physical measurements. The neural network driven reservoir modeling process is superior to existing geological modeling tools due to its ability to capture realistic geological patterns with a wide range of uncertainties and its flexibility in adjusting for physical measurements. In some embodiments, the neural network driven reservoir modeling process 10 can generate a subsurface geological model in 3D and can include more than two rock types.
[0173] In some implementations, a GAN can generate geological facies by feeding a neural network with training images, which are treated as digital representations of a geological conceptual model. For example, a 2D GAN can be used to generate unconditional river samples or realizations. River training images can be generated using OBM with varying channel widths and orientations. Figure 25Sixteen of the 15,000 river samples (shown at the top) with binary phase (white: sand; black: background) are shown, and each river sample has a size of, for example, 128×128. In some embodiments, the sand ratio may be approximately 0.25 in all such training images. However, it should be understood that other ratios are possible. The sixteen unconditional river models generated by the GAN are shown below the training images. Figure 25 It will be observed that the GAN is able to generate very realistic river samples (such as representations of channel width, connectivity, and orientation) that are indistinguishable from the training images used to train the network. While river samples and facies models have been discussed, it should be understood that other samples (e.g., alluvial soils, lakes, deltaic plains, shallow sea, deep sea, etc.) and other attributes of the reservoir can be included in one or more reservoir models generated by the neural network driven reservoir modeling process 10. For example, the other attributes of the neural network driven reservoir modeling process 10 may generally include categorical attributes and continuous attributes. Continuous attributes may generally include porosity, sand fraction, etc.
[0174] In some embodiments, the neural network driven reservoir modeling process 10 can be used for deltaic systems that depict tributary channels spreading from a point source in the middle of the studied area or the top boundary of the reservoir. The variations in both channel width and orientation along the flow direction indicate the strong multiphase and unstable nature of deltaic sedimentation systems, which are generally challenging to model by geostatistical simulations. However, GAN can reproduce this type of unstable channel pattern quite reasonably. For example, 16 of the 15,000 deltaic training images and the sixteen unconditional samples generated by GAN are shown at the top and bottom of the figure, respectively. Figure 26 middle.
[0175] In some embodiments and using pre-trained G and D, the neural network driven reservoir modeling process 10 can generate realistic images Xg=G(Z) adjusted with respect to a set of known values y, defined at pixel locations in 2D or at voxel locations in 3D. This can be achieved by fixing the weights of G and D and optimizing z to generate realistic samples based on the known values.
[0176] In some embodiments, the neural network driven modeling process 10 may determine 212 at least one of a perceptual loss and a contextual loss associated with one or more samples. For example, in order to generate realistic samples, it may be necessary to approximate P for sample Xg. data, i.e., to generate samples such that the discriminator D assigns high probability to Xg. This concept is regularized by a perceptual loss. It is also desirable for the samples to adhere to the pixel or voxel value y, i.e., the generated Xg, to match y at the known pixel or voxel location. This is regularized via a contextual loss. In some embodiments, the neural network-driven reservoir modeling process 10 can constrain the generated samples via a GAN to adhere to well measurements (e.g., facies interpretation in the well location).
[0177] In some embodiments, determining 212 a contextual loss associated with one or more samples is based at least in part on one or more of a semantic image inpainting (as discussed above) and a distance transform that measures a mismatch between the one or more samples and one or more physical conditions associated with the reservoir. For example and in some embodiments, the neural network driven reservoir modeling process 10 can result in better data conditioning by defining a contextual loss using a distance transform that measures a mismatch between samples generated by a GAN and conditioning data (e.g., facies observations in well locations) compared to a semantic image inpainting approach. The total loss function is normalized as the sum of the perceptual loss and the contextual loss:
[0178] Total loss: The total loss is defined as the weighted sum of the perceptual loss and the contextual loss, as shown in Equation 7 below:
[0179] (7)
[0180] where λ is an adjustment factor that controls the tradeoff between producing realistic images and matching known phase data.
[0181] Perception loss Penalize non-realistic images. Since D is trained to assign high probability to realistic samples, the perceptual loss is chosen as shown below in Equation 8:
[0182] (8)
[0183] Context loss: The context loss penalizes the mismatch between the generated sample and the known pixel y. The context loss can be defined as shown in Equation 9 below:
[0184] (9)
[0185] where K is the total number of phases, and M is the total number of known phase positions about which the samples generated by the GAN are adjusted.
[0186] In the context loss, {I m |m=1, ..., M} may be a set of m-phase indicator variables, where in the lower case, {im |m=1,…,M} represents individual observation values; represents the observed k-phase indicator at the reference azimuth d. The context loss is calculated as the sum of all mismatched phases in all well azimuths by finding the shortest distance from a phase azimuth at an individual well to the nearest corresponding phase in the sample generated by the generator G, which is denoted as i in the formula for the context loss. (k) (G(Z)).
[0187] In some embodiments, the neural network driven reservoir modeling process 10 may minimize 214 at least one of a perceptual loss and a contextual loss associated with one or more samples. For example, once the contextual loss is approaching zero, all data (e.g., physical conditions) may be respected. This may be achieved by minimizing the total loss by applying gradient descent to a noisy z vector in the latent space. If a small error threshold resulting in a contextual loss for one conditional sample generated by the GAN is reached, the iterative process may be interrupted.
[0188] For example, using a distance transform to calculate the context loss based on a phase indicator provides a smoother objective function and can achieve better and faster adjustments than those achieved using semantic image inpainting. Furthermore, semantic image inpainting eliminates the need for user-defined arbitrary masks and weighting factors for bounding data measurements. This limitation is eliminated with the distance transform. Furthermore, the distance transform using a phase indicator can be more robust and versatile because it is independent of phase coding.
[0189] In some embodiments, the neural network driven reservoir modeling process 10 may generate one or more reservoir models (e.g., 2D conditional facies models) using the above-described conditional GAN. Figure 25 As shown in FIG, the neural network driven reservoir modeling process 10 may receive a plurality of training images. Figure 27 , Figure 27 For example, 20 known well data locations are plotted (one point shaded for sand and another for shale background). In some embodiments, for example, three river models can be generated using a GAN to follow all 20 well data through a neural network driven reservoir modeling process 10. It can be observed that the channel morphology and connectivity are very similar to those in Figure 25For comparison, multipoint statistics (MPS) can be used to generate a facies model constrained by the same well data. The training image for MPS is shown in the left corner of the figure, which contains channel patterns that are unstable due to varying channel widths and orientations. This is challenging for MPS modeling because MPS infers high-order statistics from a single training image, which requires repeatable patterns for reliable statistical inference. Failure examples are shown at the bottom of the figure, where the apparent loss of channel morphology and connectivity is seen in the training image. Disconnected channels and poor reproduction of various channel widths are visible in the three conditional MPS simulations, even though all simulations are adhering to the 20 well data.
[0190] The results of conditional delta phase modeling by GAN and the comparison with MPS simulation are shown in Figure 28 In this example, 35 well data were used, and the heterogeneity and instability of the facies sedimentation became more pronounced due to the large variations in channel width and orientation. This was due to MPS's difficulty in finding sufficient repeating patterns from the unstable delta training image, resulting in poor reproduction of the tributary channels in the three conditional MPS simulations, as shown in the left corner of the figure. Consequently, the resulting MPS facies model does not incorporate the channel distribution seen in the delta training image.
[0191] In comparison, conditional modeling using GANs provides a more realistic representation of the delta system, based on the source location, various channel widths, and their orientations. All of this is based on data from 35 wells. This scenario demonstrates the clear advantages of using GANs for facies modeling on MPS in unstable geological subsidence environments, which are common in subsurface reservoirs.
[0192] In some embodiments, the neural network driven reservoir modeling process 10 can model facies in 3D. For example, the conditional GAN discussed above can be used to build a geologically realistic framework in 3D, and the model is adjusted to the well data. Unconditional simulation of a sedimentation river system can be tested using three facies: channel sand, levee, and shale background. In this example, for example, 15,000 river models can be generated in 3D using OBM with variations in channel width, thickness, amplitude, tortuosity, and orientation. The ratios of the three facies in this example can be approximately 0.85 (shale), 0.10 (channel), and 0.05 (levee), respectively. The size of each training model can be 32×64×64 in the x-direction, y-direction, and x-direction, respectively.
[0193] See also Figure 29 , Figure 29 Depicted are eight of, for example, 15,000 models used as training datasets to train a GAN. Figure 29 For example, three facies can be depicted (e.g., river channel, levee, and shale background). However, it should be understood that any number of sedimentary facies can be defined in the training images. It can be observed that these training images reveal the complexity of the sedimentary facies architecture and its spatial association. The 3DGAN was first trained using 15,000 river training images, and then the conditional facies model was generated using the pre-trained GAN. The eight unconditional models (implementations) are shown in Figure 29 The results suggest that GANs can learn the phase structure and patterns very well to perform predictions from a 1D latent space to a 3D phase model. The channel morphology (width, amplitude, and tortuosity) and the spatial correlation between the three phases are correctly captured and reasonably reproduced in these examples.
[0194] Continuing with this example, the pre-trained GAN can be further used to generate 3D fluvial facies models constrained by facies interpretation in well locations. For example, Figure 30 Plotted are, for example, 10 well locations with, for example, 3 interpreted facies (far left) and three conditional facies models by GAN. It can be observed that the channel architecture, geology, and correlations are reasonably reproduced, and all samples (realizations) adhere to the well data.
[0195] A more complex carbonate example was tested to demonstrate the modeling capabilities of the 3D GAN. In this example, 5,000 carbonate ramp training models were generated in 3D using, for example, five transition phases: tidal flat, lagoon, shallow, shallow sea, and deep sea. Figure 31 Five of the 5,000 training examples are shown, showing a clear correlation between lateral progradation and vertical accretion. Note that facies subsidence progresses into the deep ocean at increasing accretion angles in the training dataset. Each training model has a size of 32×64×64 in the z-, y-, and x-directions, respectively.
[0196] exist Figure 31 At the bottom of the graph, there are three unconditional models (realizations) generated by GAN. The clear transitional facies trend from mudflats to deep sea, evident in the training examples, is well captured and reproduced in the GAN-predicted models. This type of strongly unstable 3D facies pattern has proven challenging for geostatistical simulation methods, but is crucial to reflect in geological reservoir models for optimal field development and decision-making.
[0197] The structure of a 3D GAN is shown in the table below. This GAN is similar to a deep convolutional GAN adapted and extended to 3D for conditional phase modeling. Each of the generator and discriminator is a deep convolutional network. The nonlinearity in the discriminator is a LeakyReLU (0.2), except for the output layer, which is a sigmoid. The nonlinearity in the generator is a ReLU, except for the output layer, which is a hyperbolic tangent (e.g., hyperbolic tangent). In this example, the GAN is trained for 500 epochs using Adam with a learning rate of 1e-4, β1 = 0.5, and β2 = 0.5.
[0198]
[0199]
[0200] Table 1
[0201] In some embodiments and when optimizing the z vector in the latent space to adhere to the conditional data, the neural network driven reservoir modeling process 10 may use the Adam stochastic optimization method with a learning rate of 1e-2 and a default β parameter, λ=1000, and training for 1500 iterations. Figure 32 , the user interface of the OBM is shown with one or more parameters used to generate training images.
[0202] In some embodiments, the neural network driven reservoir modeling process 10 may simulate 202 one or more reservoir models. For example and in some embodiments, the neural network driven reservoir modeling process 10 may simulate 202 a static geological model domain and a dynamic fluid production domain. For example, in the dynamic fluid production domain, one or more generated realizations (e.g., reservoir models) may be simulated 202 immediately (e.g., almost instantaneously) using existing reservoir simulator tools or fast proxy servers. In some embodiments, the neural network driven reservoir modeling process 10 may fix an observed value at a single point in time (e.g., cumulative oil production (referred to as FOPT - field total production)) and may quickly simulate conditional samples relative to known results for the purpose of predictive optimization (this proxy server may replace the optimal grid). Thus, the neural network driven reservoir modeling process 10 may extend the use of GAN implementation integration to make the model "flow" and determine predictions of production, saturation, and / or pressure.
[0203] In some embodiments, one or more reservoir models may be simulated 202 using a reservoir simulator. The reservoir simulator may model dynamic properties to bridge the gap between the generated reservoir model (as discussed above) and the model adjusted to observed production data for monitoring and control. Examples of reservoir simulators may be based on finite differences, such as ECLIPSE and INTERSECT (IX), and generally include reservoir simulators. As discussed in more detail below, a Segmented Reservoir Model Simulator (SRMS) may be configured to simulate 202 one or more reservoir models. SRMS is a new approach to reservoir simulation based on graphical models. In some embodiments, SRMS may simulate one or more reservoir models more quickly than other conventional reservoir simulators.
[0204] An overview of simulating 202 one or more reservoir models via a neural network driven reservoir modeling process 10 via SRMS is provided below:
[0205] 1 Overview of SRMS
[0206] See also Figure 42 A Segmented Reservoir Model Simulator (SRMS) can be configured to simulate 202 one or more reservoir models. The SRMS can be an analytical oilfield simulator for a waterflooding project using a set of water injection wells and oil production wells. The SRMS supports multiple reservoirs with potentially mixed water injection and oil production.
[0207] See also Figure 48 In some embodiments, and as discussed in more detail below, the neural network-driven reservoir modeling process 10 may define 4802 one or more water injector completions and one or more production completions in one or more reservoir models at a computing device. One or more edges between the one or more water injector completions and the one or more production completions in the one or more reservoir models may be defined 4804. The one or more edges between the one or more water injector completions and the one or more production completions may define a graph network representing the one or more reservoir models. The one or more reservoir models may be simulated 4806 along the one or more edges between the one or more water injector completions and the one or more production completions. In some embodiments, water injectors may generally comprise fluid "sources," and production wells may generally comprise fluid "reservoirs" in the reservoir. The completions in each reservoir may generally comprise the assembly of downhole tubulars and equipment required to enable safe and efficient production from an oil or gas well and are modeled as vertices in the graph network, with the communication paths between each water injector and production well being modeled as edges in the graph network. Each edge may be a model of a portion of the reservoir and represent an average reservoir property that affects the hydraulic relationship between associated injector-producer pairs.The local portion of the reservoir represented by an edge may be referred to as a "segment."
[0208] Representing an oil field as a graph network of wells allows for the modeling of three-dimensional (3D) dynamic properties that affect production prediction and history matching. However, because the fluid dynamics of each segment are represented by graph edges, the behavior along each edge can be modeled using a one-dimensional (1D) simulator. Effective 3D behavior is visualized by converging 1D behavior onto a 3D graph.
[0209] As an illustration of applying a 1D simulation to each edge and converging to an entire 3D graph network of wells, the Buckley-Leverett solution can be extended and applied to 1D fluid displacements. In some embodiments, the act of simulating 4806 one or more reservoir models along one or more edges between one or more water injector completions and one or more production well completions can include receiving 4808 one or more water injector rates associated with the one or more water injector completions, and determining 4810 one or more of oil production rates and water production rates for the one or more production well completions based at least in part on simulating the one or more water injector rates associated with the one or more water injector completions. For example, and as will be discussed in more detail below, this graph network represents solving the Buckley-Leverett solution for each edge in the network simultaneously, and thus providing a prediction of oil production and water production for all production wells given a water injection rate and basic reservoir properties.
[0210] In some embodiments, simulating 4806 one or more reservoir models along one or more edges between one or more water injector completions and one or more oil production completions may include receiving 4812 one or more oil production rates and water production rates associated with the one or more oil production completions, and determining 4814 one or more water injection rates for the one or more water injector completions based at least in part on simulating one or more oil production rates and water production rates associated with the one or more oil production completions. For example, if the oil production rate and water production rate are known, the water injection rate can be solved accordingly. Furthermore, if the water injection rate and oil production rate are known, some basic reservoir properties can also be inferred, i.e., history matching.
[0211] 2 Well Network
[0212] In some embodiments, an oil field can be represented as a network of wells, where water injection wells are connected to oil production wells. Each reservoir unit (in any particular field) is treated as hydraulically isolated, but has potential connectivity through real or virtual wells. The completions in each reservoir unit are modeled as vertices in a graph network, and the connectivity paths between the vertices are modeled as edges in the graph network. Any segment between two completions in a well is also modeled as an edge.
[0213] In some embodiments, the neural network-driven reservoir modeling process 10 may aggregate 4816 a plurality of edges between a plurality of injection well completions and a plurality of production well completions to define a three-dimensional graph network representing the reservoir model. For example, representing an oil field as a graph well network allows three-dimensional (3D) dynamic properties, thus influencing production prediction and history matching, to be modeled. However, because the fluid dynamics of each segment are represented by graph edges, the behavior along such edges can therefore be modeled using a one-dimensional (1D) simulator. The effective 3D behavior emerges from the aggregation of the 1D behavior of each edge in the 3D graph.
[0214] In some embodiments, the wells are modeled as a communication network. In some embodiments, the neural network-driven reservoir modeling process 10 may define 4818 one or more injector-producer pairs based at least in part on the spatial proximity between one or more injector completions and one or more producer completions. The injectors and producers communicate with each other via completions in a common reservoir. Thus, for each injector completion in a reservoir, all "adjacent" producer completions in the same reservoir are identified. The hydraulic communication of each of these injector-producer pairs is then modeled using a 1D simulator, such as Buckley-Leverett.
[0215] There are several ways to define and identify injection-production well neighbors. In the absence of historical production data or geological modeling (e.g., fault barriers, high-permeability fracture networks), the simplest approach is to use methods such as the Voronoi distribution to identify spatially nearest neighbors. Another approach is to examine historical production to discover which wells are currently connected. Hybrid approaches are also possible, using Bayesian likelihood to exploit spatial associations in the absence of historical data but augmenting the likelihood of such associations with historical data.
[0216] As a simple illustration of the concept, a Thiessen polygon distribution can be used by a neural network driven reservoir modeling process 10 to segment a reservoir. For example, Figures 33A to 33D A simple reservoir is schematically illustrated in a map view. Figure 33A Illustration of basic injection and production well completions in a reservoir. Figure 33B The results are plotted as a Thiessen polygon distribution where each cell represents a domain of contained completions.
[0217] In this approach, adjacent cells containing different well types (injection wells or production wells) are considered to be in "hydraulic communication." Figure 33C The diagram shows a designated injector-producer pair (with directed "edges" between them that are in "hydraulic communication") overlaid on a Thiessen polygon cell. Finally, Figure 33DThe same map is plotted but with the Thiessen polygon cells removed and the well network now plotted as a graph with the completions as vertices and the injector-producer connections as "directed edges" (indicated by arrows).
[0218] Figures 34A to 34D Further use of the example from the standard five-point pattern to develop the concept. This example also illustrates the application of the 1D Barclay-Leverett model to the problem. Figure 34A In the wells, the wells are evenly distributed. Figure 34B In , the Thiessen polygon distribution identifies the spatial domain of each well. Figure 34C In the diagram, the connections between adjacent injection well-production well pairs are shown, where the Thiessen polygon elements are in Figure 34D was removed. Figure 34C and 34D The individual Buckley-Leverett models for each injector-producer pair are also schematically illustrated. A few unimportant items are modeled as "diamonds" (rather than boxes) within the Buckley-Leverett volume. Another item to note is that the Buckley-Leverett volume does not occupy the entire cell due to the "sweep efficiency" not being 100%. Finally, the advancement of the water shock front is schematically illustrated for each pair.
[0219] In some implementations, each reservoir may be modeled or simulated as a hydraulically isolated volume. However, a well may penetrate multiple reservoirs and have commensurate production. This can be modeled by treating each reservoir as a subnetwork that is then aggregated together to comprise the entire graph network and is conceptually illustrated in Figures 35A to 35D middle. Figure 35A The diagram shows three water injection wells and two oil production wells drilled into three stacked reservoirs, as depicted in a 3D perspective. Figure 35B The top two reservoirs are “stripped” to show that two water injection wells (I-1 and I-2) and one oil production well (P-1) are completed in the deepest reservoir and connected by arcs. Figure 35C As shown, the sub-shallow reservoir is completed by two water injection wells (I-2 and I-3) and one oil production well (P-2), and is connected in this reservoir. Figure 35D The shallowest reservoir is depicted with two water injection wells (I-2 and I-2) and two oil production wells (P-1 and P-2). Thus, using three reservoirs and five wells, three diverse but hydraulically connected networks are generated. To solve 3D fluid dynamics, 1D modeling equations (e.g., Buckley-Leverett) require knowing the volume of injected water for a given water injection well-producer completion pair. However, in this network approach, each well may communicate with many other wells across multiple reservoirs. Therefore, for a given well's water injection rate and oil production rate, it is necessary to discover how the oil production is distributed to each water injection well-producer completion pair.
[0220] 3 Reservoirs as Graphics
[0221] In conventional digital reservoir simulations, the reservoir is modeled as a 3D grid of finite-difference cells. Generally, the size of each cell is made small enough to capture the heterogeneity of the reservoir's static and dynamic properties. However, the smaller the cell, the greater the number of cells required to represent the field, and this is constrained by available computational resources. Modern simulators allow for local mesh refinement, with finer cell sizes possible in areas of high pressure gradients, such as near wells.
[0222] One approach achieved using a neural network driven reservoir modeling process 10 (e.g., via SRMS) is to treat the connections (relationships) between injectors and producers as atomic units, rather than finite difference grid cells being treated as atomic units of simulation. In this way, edges defined between injectors and producers can define a graph network representing the reservoir model. In a reservoir with one injector and one producer, there is a single relationship; whereas in a single five-point pattern with one injector and four producers, there are four relationships. However, as the number of injectors (N) increases, the number of producers increases. i ) and the number of oil wells (N p ) grows, the number of possible relations (N r ) increases, as shown below in equation (10):
[0223] (10)N r =N i ·N p
[0224] In large mature oil fields, N i and N p Each of them can be 100. This situation results in N r Potentially about 10,000 or more. However, in practice, water injection wells will only communicate with a smaller number of oil production wells. Therefore, if each water injection well communicates with five oil production wells, then N r will be approximately 500. If the problem is represented as an adjacency matrix, the result is an extremely sparse matrix, where 95% of the elements are zero or unbounded. However, if the problem is treated as a graph network in which wells are represented as vertices, each connection is represented as a directed edge in the graph. Furthermore, the graph representation exposes a wide array of graph theory tools that can be used to model this "social network of wells."
[0225] Side-to-side volume
[0226] As previously mentioned, using formal terminology from graph theory, the connections between injectors and producers are referred to as "edges." In some embodiments, the neural network-driven reservoir modeling process 10 may define 4820 one or more directional edges between one or more injector completions and one or more producer completions in one or more reservoir models based at least in part on one or more injector-producer pairs. For example, because fluid is flowing from an injector to a producer, each of these edges is referred to as a "directional edge." In this section, we will describe how local static and dynamic reservoir properties are represented on such edges. Considering the volume of interest (between the injector and the producer), this can be defined as follows:
[0227] (11)V φ =A×L×φ×E v
[0228] The unit of "A×L" is [L] 3 , φ is the porosity, A is the area, L is the length, and E v is the vertical sweep efficiency (essentially a tuning parameter used to match the data). It can be assumed that any side of length L can be represented as a volume, so:
[0229] (12)
[0230] Among them E v Represents a specific graph edge. E v The nature of is discussed in Section 4 (and later defined in Table 2).
[0231] Equation 12 demonstrates an important and potentially useful property of graph theory; namely, the volume (with [L] 3 Dimensions of can be represented as edges (with units). Taking this concept further, edges can occupy any property with any dimension as desired.
[0232] 4 Using Graphs for Allocation Rates
[0233] consider Figure 36 The diagram on the left is shown in Figure 1. This scenario shows two production wells: P-1 and P-2; and three injection wells: I-1, I-2, and I-3. All wells are completed in any reservoir unit they may encounter. Injection well I-2 is completed in all three reservoir units (two hidden completions are also shown). If each reservoir unit is labeled u1 (top), u2 (middle), and u3 (bottom), a table of completions for production well-injection well connections can be constructed, such as Figure 36, i.e., the number of completed wells. Each check mark indicates a pairing, which can only exist within the same reservoir unit u. The diagram has two production wells, P-1 and P-2, such that P∈{p1,p2}, and three injection wells, I-1, I-2, and I-3, such that I∈{i1,i2,i3}. The colored points indicate completions (blue for injection wells and green for production wells). The interleaved "units" are also shown and designated U∈{u1,u2,u3}.
[0234] 4.1 Tabulate all components
[0235] test Figure 36 , and the corresponding production well and water injection well connections show the degree of interaction between production wells, water injection wells and their reservoir units (completions). In order to define the allocation, a comprehensive table of all possible relationships associated with assets needs to be constructed. Figure 36 As a template, the following generic actions can be used to construct this relationship "map":
[0236] 1. Determine all the 'elements' that will ultimately be represented by graph edges. For this example, these 'elements' are:
[0237] Injection well, I={1,...N i}, where the total number of injection wells is N i =3
[0238] Oil wells, P = {1,...,N p}, where the total number of oil wells is N p =3, and
[0239] Reservoir unit, U={1,...,N u}, where the number of units is N u =3.
[0240] 2. Tabulate every possible permutation of wells and cells, as shown in Table 2.
[0241] 3. Index each table entry m, which can be valid or invalid.
[0242] 4. Use the following equation (13) to define whether each item can form a valid edge, ε≠0, or an invalid edge:
[0243] (13)
[0244] 5. List all valid edges: See Table 2 below.
[0245] 4.2 Final Edge and Confirmation Table
[0246] The complete form of Table 2 with rows for the flow along each graph edge then follows:
[0247]
[0248] Table 2: N i = 3 water injection wells (set I), N p = 2 oil wells (set P) and N u = all possible combinations of reservoir units (set U). M contains Nm = (N i ×N p ×N u ) = 18 members, only some of which are valid, i.e. when ε = 1, so N s = 8. Equation (11) defines ε which in turn describes the edge metric E(i, p, u). Note that black font symbols generally indicate sums over two or more edges, and normal font symbols generally indicate edge-specific parameters.
[0249] 4.3 Overview of Edge Indexing
[0250] In this example, Table 2 serves as the primary reference for all rate allocation analyses. Key behavior to note: Valid edges are indexed by the valid edge, designated by E(i, p, u). Any particular individual water injection well is designated as i=i. Similarly, any single oil production well is designated as p=p, and any single reservoir unit is designated as u=u. Table 3 (illustrated below) summarizes several indexing permutations (which are incomplete).
[0251] 4.4 Instance Rate Calculation
[0252] In some embodiments, important notes may be utilized:
[0253] ·(q oii )T or (q inj ) T Indicates passing or or The sum of the oil production (or water injection) of the two or more edges specified. Note that whenever these appear on the left side of the expression, there is a summation involved.
[0254] ·(q oil ) or (q inj ) denotes the single oil production rate or water injection rate, respectively, for the edge specified by E(i, p, u). Note that whenever these appear on the left side of an expression, there is no summation involved. However, these are used within the summation.
[0255]
[0256] i: any single injection well (ie, i={2}≡i). All water injection wells.
[0257] p: all single production wells (ie, p = {1}≡p). All oil wells.
[0258] u: any single reservoir unit (ie, u = {3}≡u). All reservoir units.
[0259] Table 3. Overview of valid edge index terms.
[0260] Example: Total Oil Production
[0261] In some embodiments, the neural network driven reservoir modeling process 10 may determine 4822 a total oil production of one or more reservoir models based at least in part on determining the oil production of each oriented edge that terminates at one or more production well completions in the one or more reservoir models. For example, the total oil produced (q oil ) T is the sum of all valid edges (i.e., ε≠0), so The effective edge in all reservoir units The upper part terminates at each oil well.
[0262] (14)
[0263] The RHS of equation (14) simply sums over all entries in Table 2 (i.e., m∈M), but uses only valid edges (i.e., conditionally, ε≠0). The compressed form of equation (14) expresses the index in terms of v∈V, so:
[0264] (15)
[0265] However, for the sake of clarity, this compressed form is not used here, but rather explicit edge-specific notation is used, using each row 6 in Table 2.
[0266] Example: Total water injection volume:
[0267] The volume of water injected (q inj ) T ) is the sum of all valid edges (i.e., ε≠0), so The effective edges originate from all reservoir units At each water injection well on
[0268] (16)
[0269] The summation again covers all valid instances of injectors, producers, and cells, as shown in Table 2.
[0270] Example: Total oil production from units 1 and 2
[0271] Using Table 2, all oil production wells connected to unit u = {1, 2} become:
[0272] (17)
[0273] Example: Total water injection into I-1 and I-3:
[0274] Using Table 2, all units The total water injection volume of the injection well i={1,3} is:
[0275] (18)
[0276] Example: Total water injection into I-1 and unit #1
[0277] Use Table 2:
[0278] (19)
[0279] Example: Water injection along a specific edge: E(i=1, p=2, u=3)
[0280] Let E(i={1}, p={2}, u={3}) and use Table 2:
[0281] (20)
[0282] In this case, (q inj ) T =0, this is because we observe from Table 2 that ε(1, 2, 3) = 0, so the condition for validity is false.
[0283] Example: Water injection along a specific edge: E(i=3, p=2, u=2)
[0284] Let E(i={3}, p={2}, u={2}) and use Table 2 to produce:
[0285] (twenty one)
[0286] In this case, E(3,2,2)≠0, since from Table 2 we can observe that ε(3,2,2)=1, and thus the validity condition is true.
[0287] 4.5 Generalized oil production
[0288] Let p = p (i.e., and a single oil well), then the set of possible edges will be: E(i, p, u). Based on Table 2, the general expression for a single oil well is:
[0289] (twenty two)
[0290] In this example, the total oil production can be expressed as (q oil ) T , since it may be desirable to sum over all associated reservoir units and injection wells.
[0291] For a particular edge i=i, p=p, u=u, the edge index becomes E(i, p, u). Since this case represents the finest granularity of analysis, the neural network driven reservoir modeling process 10 may not be able to sum over any quantities, so the oil rate is given by q oil Rendering:
[0292] (twenty three)
[0293] 4.6 Generalized water injection volume
[0294] Let i = i, then the set of possible edges will be: E(i, p, u). Since the water injection rate does not experience breakthrough at the well (a necessary calculation for oil wells), using Table 2, the general expression is simply:
[0295] (twenty four)
[0296] In this example, the total water injection volume can be marked as (q inj ) T , because it may be desirable to sum over all associated reservoir units and producing wells.
[0297] 4.7 Considering Pressure Using Darcy's Law
[0298] In some embodiments, simulating 4806 one or more reservoir models along one or more edges between one or more water injector completions and one or more production well completions may include receiving 4812 one or more of oil production rates and water production rates associated with the one or more production well completions, and determining 4814 a water injection rate for the one or more water injector completions based at least in part on simulating one or more of the oil production rates and water production rates associated with the one or more production well completions. For example, the total water injection rate to water injector i is the sum of the total flow rates along each edge emanating from the water injector, so:
[0299] (25)
[0300] In equilibrium and before water breakthrough, the total oil recovery rate for a particular production well is given by the sum of the flow rates along each side terminating at the production well, i.e.:
[0301] (26)
[0302] The injection rate along any single effective edge can be modeled as a single phase using Darcy's law (Hubbert [6], 1957), thus:
[0303] (27)
[0304] where E(i, p, u) represents a unique edge. Then, assuming constant bottom hole pressure (BHP) control,
[0305] (28)
[0306] In other words, the difference in BHP across all edges in the graph in a given reservoir is constant at ΔP. This assumption can be made independent of the specific edge specified by E(i, p, u). Substituting Eq. (26) into Eq. (25), and assuming ε(i, p, u) ≠ 0, then:
[0307] (29)
[0308] Modify equation (29) to incorporate the equation (E V ) indicates the sweeping efficiency. The effective volume of the modeled displacement is slightly reduced by the macroscopic sweeping efficiency, which is D ) has passed the residual oil saturation S or To take into account, therefore:
[0309] (30)
[0310] Using equation (12) but including the sweep efficiency, and still considering E(i, p, u), we have:
[0311] (38)(q inj ) E(i,p,u) =[A φ LE V | E(i,p,u) ]
[0312] Then equation (30) becomes:
[0313] (32)
[0314] 5. Barkley-Leverett Fundamentals
[0315] The Segmented Reservoir Model Simulator (SRMS) solves a network of ID Buckley-Leverette equations simultaneously and analytically. Therefore, it may be helpful to review the basic Buckley-Leverette method and underlying assumptions.
[0316] 5.1 Barkley-Leverett: Dake Decodes
[0317] The Buckley-Leverett identification is the fundamental equation for describing the miscible displacement in one dimension and is formulated by Buckley and Leverett. Assuming diffusive flow, the basic model is expressed in the following equation (33) and is plotted in Figure 37 middle.
[0318] (33)
[0319] Equation (33) states that the mass flow rate is equal to the mass of water flowing into the volume element, minus the mass of water flowing out of the volume element. Note that changes in the mass of water on the left side (LHS) of equation (33) are accounted for by changes in water saturation on the RHS.
[0320] Assuming a constant incompressible displacement, in the limiting case, equation (33) can be expressed as a difference equation, as shown in equation (34):
[0321] (34)
[0322] Incremental change in water saturation The total difference of can be expressed as:
[0323] (35)
[0324] In this analysis, the shift of the constant water saturation plane can be investigated. This allows equation (31) to be restated as equation (32):
[0325] (36)
[0326] Equation (34) can be restated using equation (36) to give
[0327] (37)
[0328] Expressing the LHS of equation (37) using the chain rule yields:
[0329] (38)
[0330] And combining equation (37) and equation (38) yields:
[0331] (39)
[0332] Or alternatively, the rate depending on saturation is as follows
[0333] (40)
[0334] For incompressible displacement, q T must be constant. If the fractional flow of water (f w ) is defined as follows:
[0335] (41)q w =q T ·f w
[0336] Because the model can be oriented to a constant plane S w is limited, and since fractional flow (f w ) is strictly a function of water saturation, then the following equation can be obtained from equation (41):
[0337] (42)
[0338] Therefore, equation (33) becomes the following equation (43):
[0339] (43)
[0340] Equation (43) is the well-known Buckley-Leverett expression. This expression generally states that for a constant water injection rate (q T =q w ), the velocity of the plane of constant water saturation is proportional to the derivative of the fractional flow at that particular saturation. Again, since the fractional flow is assumed to be a function of water saturation, integrating Equation (43) over time establishes the location of the plane of constant water saturation at a given point in time, yielding Equation (44):
[0341] (44)
[0342] Where W inj is the total amount (cumulative amount) of water injected since the initial conditions.
[0343] 5.2 Water saturation behind the shock front
[0344] The technique used to understand water saturation behind the shock front of Welge is stated as:
[0345] (45)W inj =x A φ(〈S w 〉-Swc )
[0346] or
[0347] (46)
[0348] Note that from equation (37), equation (46) can be written as:
[0349] (47)
[0350] Let x2 be saturation S w The position of the shock front in the case of , then combining equations (46) and (47) yields:
[0351] (48)
[0352] like Figure 38 As shown in the figure, the shock front at x2 (S wf ) can also be obtained by direct integration of the saturation profile, i.e.:
[0353] (49)
[0354] As shown in equation (37), for a given amount of injected water W inj , a plane of constant water saturation The position of is directly proportional to the fractional flow gradient at that particular saturation, i.e.:
[0355] (50)
[0356] Thus, for a given volume of injected water, and S w ≥S wf , equation (49) can be further interpreted as:
[0357] (51)
[0358] The integral in the calculation of equation (51) is solved by integration by parts to produce:
[0359] (52)
[0360]
[0361]
[0362] Substituting equation (52) back into equation (51) yields:
[0363] (53)
[0364] Simplifying Equation (53) yields Equation (54) - Equation (54) is the well-known Verger equation. This expression gives the average water saturation behind the shock front (S w ) and the water saturation S of the shock front itself wf (subscript 'f' designates 'shock front') are equal, and the fractional flow Given as:
[0365] (54)
[0366] Before water breakthrough, when the shock front reaches the production well, equations (48) and (54) are independent expressions for the fractional flow at the shock front and can be equated, yielding the following equation:
[0367] (55)
[0368] The significance of this result is shown in the figure Figure 38 to 4 1. In order to satisfy equation (55), at coordinate S wf ,f w The tangent line to the fractional flow curve at the point is equal to the slope of the line connecting the points {S w =S wc ,S w =0} and {S w =(S w ),f w =1} As will be shown later, equation (55) is critical in determining the shock front position with respect to the injected water.
[0369] 5.3 Calculation Recovery
[0370] At the breakthrough time (e.g., subscript "bt"), let x = L in equation (46), so the dimensionless cumulative amount of water injected is:
[0371] (56)
[0372] in Indicate W in terms of porosity inj The dimensionless form of is obtained from the mass balance constraint at the breakthrough time:
[0373] (57)
[0374] or
[0375] (58)
[0376] in N p (total volume of oil recovered) in dimensionless form, and is the dimensionless water injection rate. From equations (48 and 50), the pore volume of oil recovered at the breakthrough point can be obtained, thus:
[0377] (59)
[0378] After water breakthrough, the Verger expression, equation (54) is applied to the saturation increase S at the producing well. * w :
[0379] (60)
[0380] From the mass balance, after the breakout:
[0381] (61)
[0382] And substituting equation (60) into equation (61) yields
[0383] (62)
[0384] And substituting equation (47) into equation (62) yields the following:
[0385] (63)
[0386] 6 1D Barkley-Leverett: Analytical Expression
[0387] In some embodiments, the neural network driven reservoir modeling process 10 may create a ID implementation of the model suitable for implementation along a single graph edge.
[0388] 6.1 Brooks-Corey approximation
[0389] Modeling water saturation using Buckley-Leverett can include fractional flow f w If the capillary pressure gradient and gravity effects are neglected, the fractional flow can be expressed in terms of oil and water viscosities and relative permeabilities, i.e.:
[0390] (64)
[0391] Note that the relative permeability k wr and k 0r Can only depend on water saturation S wTo simplify the mathematics and yet obtain an analytical expression for the Buckley-Leverett equation, it may be desirable to model the relative permeability. In this example, the neural network driven reservoir modeling process 10 may use the Kerry and Brooks-Kerry approximations for the task. To apply these approximations, it may be useful to first normalize the water saturation, thus:
[0392] (65)
[0393] where ||S W || represents the 'normalized' water saturation. The Brooks-Kerry approximation then allows the relative permeability to be expressed as follows:
[0394] (66)
[0395] and
[0396] (67)
[0397] Apply Kerry simplification, i.e., And k wr,max =k or,max =1, then
[0398] (68)k wr =(||S w ||) 2
[0399] and
[0400] (69)k or =(1-||S w ||) 2
[0401] 6.2 Fractional Flow Relations
[0402] Using the Brooks-Kerry approximation provided earlier in equations (61 and 62), the relative permeability in equation (64) yields:
[0403] (70)
[0404] Alternatively, the gradient of the fractional flow can also be expressed relative to ||S w ||Distinguish equation (70) according to ||S w || to express, that is:
[0405] (71)
[0406]
[0407] Differentiate the normalized saturation equation (65):
[0408] (72)
[0409] Allows the neural network driven reservoir modeling process 10 to apply the multiplication rule to w Get the gradient of f, that is:
[0410] (73)
[0411]
[0412] 6.3 Calculated Position of Shock Front
[0413] Average water saturation (S w ) and the average normalized water saturation (by (||S w ||) indicates) can be expressed in a form similar to equation (65), that is:
[0414] (74)
[0415] And rearranging equation (53) and normalizing the saturation according to equation (74) yields the following equation:
[0416] (75)
[0417] In some embodiments, there may be a situation where S is described by Equation (70) and Equation (75). w With f w Verger uses this relationship to derive the water saturation (S) at the shock front by graphically determining the point where the line described by equation (75) is tangent to the fractional flow according to equation (70). wr ),like Figure 7 As shown in the figure.
[0418] In this section, analytical derivations of the simultaneous solutions of Eq. (70) and Eq. (75) are presented.
[0419] Described by equation (75) and plotted in Figure 39 The tangent line in ||S w ||=0,f w =0 to line, and can be expressed as:
[0420] (76)
[0421] And substitute equation (71) into equation (76):
[0422] (77)
[0423] And from equation (70), the fractional flow at the shock front is described only by the fractional flow equation:
[0424] (78)
[0425] When f is obtained from equations (77) and (78) w When they are equal, the tangent point appears, that is:
[0426] (79)
[0427] Equation (79) can be simplified to:
[0428] (80)
[0429] And because the discriminator of equation (80) is always > 0, then:
[0430] (81)
[0431] The neural network driven reservoir modeling process 10 may focus on solving for which ||S w ||>0, so:
[0432] (82)
[0433] This quadratic equation has one real solution, which is:
[0434] (83)
[0435] Equation (83) shows an important result in that it allows us to estimate the water saturation || S at the shock front directly before breakthrough w ||.
[0436] Equation (83) can be combined with Equation (73) to generate multiple solutions based on the fractional flow gradient before breakthrough, i.e. For example, substituting equations (46) and (73) into equation (37) expresses the position of the shock front before water breakthrough, namely:
[0437] (84)
[0438] 6.4 Calculation of the amount of water injected at the breakthrough time
[0439] From equation (57), the amount of water injected at the breakthrough time but stated in terms of porosity units (thus dimensionless) is given by:
[0440] (85)
[0441] Combining Equation (48) and Equation (73) yields the average water saturation behind the shock front until water breakthrough:
[0442] (86)
[0443] Substituting equations (74) and (86) into equation (85) gives the amount of water injected at the breakthrough point based on the water saturation at the front:
[0444] (87)
[0445] From the relative viscosity equation (83), we know that ||S w ||.
[0446] 6.5 Oil production at the breakthrough point
[0447] In some embodiments, simulating 4806 one or more reservoir models along one or more edges between one or more water injector completions and one or more production well completions may include receiving 4808 one or more water injector rates associated with the one or more water injector completions, and determining 4810 one or more of an oil recovery rate and a water recovery rate for the one or more production well completions based at least in part on simulating the one or more water injector rates associated with the one or more water injector completions. For example, and before water breakthrough, the dimensionless volume of oil recovered and the dimensionless volume of water injected However, after the water breaks through, The calculation may involve first determining the average water saturation w >, that is:
[0448] (88)
[0449] Or by substituting into equation (74)
[0450] (89)
[0451] In order to obtain <||S w ||>(average value of normalized water saturation), it is important to note that after water breakthrough, the water saturation at the producing well is As water injection increases, Figure 40 As shown in the figure.
[0452] Equation (48) is no longer valid after water breakthrough, but Verger's equation, i.e., equation (54), does not remain valid and can be restated in terms of normalized saturation as in equation (65):
[0453] (89)
[0454] Using the Brooks-Kerry approximation, equation (90) can then be expressed in terms of the normalized Verger saturation at the producing well (||S * w ||) ('Verger' parameter is indicated by '*') expression. Substituting equations (70) and (71) into equation (90):
[0455] (91)
[0456] in
[0457] (92)
[0458] And simplify the generation
[0459] (93)
[0460] Normalized saturation <||S w The average value of ||> can now be calculated as needed To express.
[0461] If you know <||S w ||>, then the inverse function of equation (93) is solved It is stated in terms of a function of: <||S w ||>、μ w 、μ o 、S wc 、S or ,Right now:
[0462] (94)
[0463] Note that before water breakthrough, the normalized water saturation at the producing well is However, after the breakthrough, F(.) (in Equation 87) is a third-order cubic polynomial with three roots, only one of which is real (e.g., one root will produce S wf <0, and the other will supply S wf >1). When the average water saturation between the injection well and the production well is known, equation (94) is used to obtain
[0464] Instead, I know <||S w ||>, if the dimensionless amount of injected water is known Then equation (71) can be substituted into equation (38) to obtain:
[0465] (95)
[0466] Equation 88 can be expressed in terms of the (normalized) Verger water saturation To express However, when solving the forward model for the fluid, Can be expressed based on Therefore, the inverse function of equation (93) is solved as Solved as μ w 、μ o 、S wc 、S or function; that is:
[0467] (96)
[0468] Note that before the water breaks through, But after the breakthrough, is a quartic (fourth-order) polynomial with four roots, one of which is real.
[0469] For the purpose of obtaining predictions, the following steps allow the neural network driven modeling process 10 to be used as μ w ,μ o ,S wc ,S or The function is calculated analytically Right now:
[0470] 1. Calculate the normalized water saturation at the production well using equation (96):
[0471] 2. Calculate the average normalized water saturation using equation (93) <||S w ||>; and
[0472] 3. Calculate the dimensionless yield using equation (89)
[0473] This sequence of steps can be summarized by the following equation:
[0474] (97)
[0475] 7. 3D Barkley-Leverett: Analytical Expression
[0476] The previous description is merged into a full 3D implementation, computing fractional flows and utilizing the edge indexing terms previously described in subsection 4.3.
[0477] Combining equation (36) with equation (32), an expression for the fraction of water flowing along a particular edge can be obtained as:
[0478] (98)
[0479] and rearrange
[0480] (99)
[0481] Or stated in terms of dimensionless pore volume:
[0482] (100)
[0483] The key assumptions in the derivation of Equation (30) to Equation (99) are that the mobility along each edge is affected by the absolute permeability along the edge and that the effective relative mobility K along each edge is r / μ t This situation allows the saturation dependence of the fluid mobility to be eliminated from equation (98) to equation (99).
[0484] Total flow rate at each production well (i.e., all corresponding edges associated with production well p) can then be derived for the flow rate on each edge terminating at that production well, i.e.:
[0485] (101)
[0486] Since the velocity on a given side is now known from equation (99), the time for water breakthrough on each side can be obtained from equation (58), but for a specific production well p:
[0487] (102)
[0488] in From equations (81) and (85), we get From equation (100), the aggregate fraction flow at any production well p can then be obtained from equation (31), namely:
[0489] (103)
[0490] In some embodiments, a well visualization CGCN implementation of a subsurface geological unit, layer, or reservoir may be represented for prediction and scanning purposes by a fast but file-based proxy or simulation. For example, the neural network driven reservoir modeling process 10 may overlay a segmented reservoir model simulator (SRMS) or any other reservoir simulator fixed to an existing well onto a CGAN previous reservoir proxy. The resolution of the proxy may be user defined. Overlaid on a CGAN geological model, the edges of the SRMS model may then be given the average values of the static properties (e.g., porosity, permeability, saturation, net weight to gross weight (NTG), etc.) required to construct a simple dynamic prediction model. The proxy may be constrained to known data (as in the CGAN visualization geological model), and the degree of refinement may be manually limited to some predefined value preset for property changes.
[0491] Referring again to Figures 41(a) and 41(b), note that each edge of the subdivision surface in Figure 41(b) is a solid that can be filled by the values adjacent to it.
[0492] (97)
[0493] Equation 97 summarizes the concept of filling edges with volume or properties. In other words, the neural network-driven modeling process 10 can scan the immediate neighborhood of an SRMS edge, thus filling it with the property of interest, and then execute an SRMS simulator to derive some predicted value from the immediate neighborhood. This could be a Buckley-Leverette simulation or a more general material balance (MBAL) calculation.
[0494] Referring again to Figure 41(a), a map represents the sub-surface reservoir unit approximation revealed by the CGAN analysis. The model can incorporate faults (in gray) and the contours represent any static reservoir properties desired by the user. The three black dots represent existing wells (robust information) that are respected by the CGAN representation. Referring again to Figure 41(b), the SRMS can now be invoked and displayed over the area / volume of interest. The degree of subdivision of the surface is user-defined but can be preset. Each subdivision surface can represent a volume or a property or anything that may be of interest. This ultra-fast proxy server (which is robust) then provides the means to quickly predict production from the geological model and / or horizon generated by the CGAN.
[0495] In some embodiments, the neural network driven reservoir modeling process 10 can control 204 one or more monitored inflow control devices based at least in part on simulating one or more reservoir models. For example, the neural network driven reservoir modeling process 10 can utilize a multi-point GAN to perform operational control of oilfield flow devices. In some embodiments, the neural network driven reservoir modeling process 10 can have direct implications for the operational efficiency of oilfield inflow control devices, both monitored and independent.
[0496] See also Figure 42 , the practical application of the neural network driven reservoir modeling process 10 can be traced. Figure 42 As shown in FIG41 , if multiple realizations are needed (injections, when there may be uncertainty in the underlying geological conditions, i.e., faults, high permeability layers, etc.), then a random vector "Z" (e.g., action 4202) can be drawn from a distribution of a simple seed z. For example, in FIG41 , this can be represented by a normal distribution, where μ = 0 and σ = 1. However, it should be understood that any random drawing is possible.
[0497] As discussed above, the neural network driven reservoir modeling process 10 may be based at least in part on Figure 42 One or more reservoir models are generated based on one or more physical conditions specified as "condition vector at 2.t: Y" (e.g., action 4204), where "Y" represents a condition vector. In some embodiments, two specific types of condition vectors are specified: static condition vector "Y" and static condition vector "Y". Static ”, which can represent all static reservoir conditions (i.e., measured values), such as bedding planes, height of pay zone, NTG, porosity (φ), permeability (k), clay content, crystal cluster fragments, etc.; that is, the dynamic condition vector “Y Dynamic ”, which can represent all dynamic properties, that is, measurements that change with time. For example: flow rate (flow rate of water and oil or gas), damage changes near the wellbore, temperature (T), pressure associated with the sand surface (p), inflow and reservoir. Note that through Figure 42 The loop indicated by the arrow in the figure usually updates the Dynamic ”, but in the static nature of the conditioning training (Y Static ) may also be updated, there may be several instances. As discussed above and in some embodiments, the neural network driven reservoir modeling process 10 may generate 200 one or more reservoir models, such as in Figure 424206). In some embodiments, a GAN (or other type of neural network) can be trained using all the conditional vectors that are observed. The activity that produces a trained and consistent model is captured in the large dashed box (encompassing actions 4202, 4204, and 4206). Example methods that can be used for this training and learning are also shown in Figure 6 The period used for the prediction is designated as Δt and can be a small or long time step (as required).
[0498] In some embodiments and as discussed above, the neural network driven reservoir modeling process 10 may simulate 202 one or more reservoir models as per "4. Simulate" (e.g., action 4208). Figure 42 The model generated from "3. Trained Production Wells" (e.g., action 4206) can be used for actual asset management and operation of downhole and surface equipment. By definition, G can be fully history matched (HM) because G obeys the condition vector "Y Dynamic ”. Thus, for asset management purposes, G can be transformed into a dynamic predictive simulator as discussed above. In some implementations, this transformation can be ultra-fast and can be suitable for real-time application in optimal passive management applications.
[0499] In some embodiments and as Figure 42 As shown in FIG, the neural network driven reservoir modeling process 10 includes optional steps (e.g., shown as action 4210 labeled "Optimize Equipment Operation Over Δt") depending on the circumstances. However, the user, via the neural network driven reservoir modeling process 10, may consider optimization (of the reservoir model G) relative to some stated objective. Given the stated objective function, this activity may demonstrate an operational "recipe" for optimizing operation (e.g., optimizing NPV, recovery, or some other metric). For example, this scenario may imply an optimized setting size for an inflow control valve (Manala or some other inflow control valve).
[0500] In some embodiments, the neural network driven reservoir modeling process 10 may control 204 or operate one or more components in the flow system according to "5. Operate" (e.g., action 4212), such as Figure 42 In some embodiments, the neural network driven reservoir modeling process 10 can control or direct the actual active operation of components in the flow system, be it downhole (e.g., the Manara Production and Reservoir Management System ("Manara")), surface gas traps, etc. See also Figure 43 And in some embodiments, Manara is the name provided to Schlumberger production and reservoir management systems, including a monitored inflow control device comprising a flow control device (which can be cThe device may be freely adjustable between a minimum and a maximum value of Δt) and further include a flow meter that can measure the flow rate into the device and the associated water intrusion. The period of operation may be Δt, as discussed above. Figure 42 This action (e.g., action 4212) may instruct the neural network driven reservoir modeling process 10 to couple the output of the CGAN(G) (e.g., action 4206) to the location of the operation.
[0501] For example, as in Figure 44 As illustrated in the example historical flow data of , the flow rate can be varied over a historical forecast period that is controlled by the inflow control valve (i.e., Manara). Note that while oil is slightly reduced, water (which is a net cost) is barely changed. In this example, if a history matching (HM) simulator had not been executed to analyze the data, there would have been an increase in water production rate while a decrease in oil was experienced. Therefore, this example illustrates how preferred control can define a historical forecast period using simulations based on the HMCGAN model. For example, a forecast period (e.g., one year) can be supplied by a production well G that includes and is in agreement with the physical conditions associated with the reservoir. In Figure 44 In the example of , this cycle can be simulated and the operation of the inflow control valve can be made so that the water inflow is optimized (since water is a major cost of production). In this example, during the forecast cycle, it was found that the inflow valve needs to be close to 32% to optimize water inflow while maintaining oil production at a satisfactory level. In some embodiments, this information can be incorporated into one or more reservoir models by adding it to the existing condition vector Y to generate a new realization.
[0502] See also Figure 45 , the actual rates for each of the four wells are plotted along with the non-optimized red production curve. The red curve is not optimized, and the resulting economics are poor when water production rates are very high. For example, Figure 45 Oil production is plotted through 2030. While these rates are above the actual oil rates, the amount of water generated far exceeds the operating costs to achieve these oil rates. Therefore, oil production is suboptimal in this example. The optimized curves (green and blue) vary from base, but both have much less water and are therefore much more economical.
[0503] See also Figure 46 , the neural network driven reservoir modeling process 10 can optimize the valve setting if faced with an ensemble of equally probable HM realizations (in this example, there are five such reservoir models). Figure 46As shown in , the size of the circle area can represent the valve orifice opening. A small circle means a nearly closed valve, while a larger circle indicates a more open valve. In this example, there are four valves (see insert at the lower right), and these are operated (adjusted) at five points in time (sequentially) based at least in part on simulating 202 one or more reservoir models. Although five reservoir models and four valves in the flow system have been described, it should be understood that any number of reservoir models can be generated and any number of valves in the flow system can be controlled by the neural network driven reservoir modeling process 10 within the scope of the present invention. See also Figure 47 , the result of this optimization (e.g., from Figure 46 The optimization of the implementation) can be presented as an efficient frontier.
[0504] In some embodiments, the neural network driven reservoir modeling process 10 may measure 216 reservoir data from the flow system according to "6. Measure" (e.g., action 4214), such as Figure 42 Most wells and manifolds have some form of surface mount monitoring, however downhole monitoring is less common due to the complexity involved and the difficult environment. Figure 42 The diagram shown in FIG. 1 provides means for extracting extremely useful downhole data that can be utilized in many ways. One such way is to supply values to update 218 the conditional dynamic vector Y. Dynamic This then enables training the CGAN to update G to include information gained over Δt. Not only is the model updated and consistent with the data (i.e., history matching), but this new history matching model is a near-instantaneous transformation of the dynamic prediction engine (e.g., as Figure 42 This means that the neural network-driven reservoir modeling process 10 can monitor and control downhole operations in real time. This is indicated by the arrows, which feed back into arrow 42 to update the condition vector. Note also that time can also be updated.
[0505] In some embodiments, the neural network driven reservoir modeling process 10 may generate 200 one or more reservoir models to include or support multiple types of facies (e.g., bank, floodplain, etc.) and / or continuous implementations (e.g., porosity, sand content, etc.). For example and referring again to Figures 49A to 49C , the neural network driven reservoir modeling process 10 can represent each type and continuous attribute of the reservoir as a separate bed. Figure 49AIn the example of , a binary image of the facies may be depicted, where white may represent a channel and where a shaded color (e.g., black) is not a channel. This is similar to images represented by multiple color and transparency channels. In some embodiments, a trained GAN (as discussed above) may generate geological conditions represented as 2D (pixel) and / or 3D (voxel) images. In some embodiments, and as mentioned above, each pixel / voxel may have a categorical and / or continuous attribute, similar to, for example, a red, green, or blue channel in a color image. While color images with red, green, and blue channels have been discussed, it should be understood that various symbols, shading, etc. may be used to classify attributes of a reservoir model.
[0506] For each of the aforementioned attributes (e.g., species and phase), an additional infeasible attribute may be generated that may represent the spatial distance from the attribute. For example, if a pixel position on the generated map is inside an attribute (e.g., phase), then the pixel position is considered feasible, i.e., the distance to the phase is 0. If the pixel position is outside the relevant phase, the degree of infeasibility may be the distance to the nearest feasible pixel. In some implementations, this distance may be efficiently computed for each attribute using a Euclidean distance transform. See also Figure 49B And in some embodiments, the neural network driven reservoir modeling process 10 can generate a Euclidean distance transform (EDT) image of the distance from, for example, a channel. In this example, darker colors can represent zero distance (inside the channel). Red represents the maximum distance from the channel. See also Figure 49C And in some embodiments, the neural network-driven modeling process 10 can generate an EDT image of the distance to another phase (the floodplain). In this example, dark colors can represent zero distance (inside the floodplain), while red can imply the maximum distance to the floodplain (in the center of the river channel). It should be understood that these specific colors and shading are for example purposes only.
[0507] See also Figure 50 And in some embodiments, the neural network driven reservoir modeling process 10 may use an optimization loop to adjust the potential vector (noise vector) to the observed value (phase at the well location in this example). In some embodiments, the potential / noise vector (Z) may be the input to the training production wells. Different values of Z may produce different realizations of the geological situation. In order to optimize the elements of Z efficiently, the neural network driven reservoir modeling process 10 may use additional feasibility attributes for the pattern description. In this way, the value of Z is then optimized using techniques such as gradient descent to minimize the infeasibility penalty. In some embodiments, the value of Z may become the sum of the distances to the baseline. In some embodiments, the diagram shown in Figure 50 The optimization in can be evaluated independently for each initial guess of Z.
[0508] See also Figures 51A to 51J And in some embodiments, when Figure 50 When the process is executed in an environment such as the cloud, each optimization can be performed in parallel, allowing multiple implementations adjusted to the geology of the data to be discovered. For example, Figure 51A A well constraint may be plotted with a first colored point representing, for example, a channel and a second colored point representing, for example, a floodplain. Figure 51B It can represent a sampled random latent (noise) vector and is generated using trained oil wells corresponding to the geological conditions. Figure 51B , the circular wells may be those that do not match the geology. In this example, there is no reason to expect a better match with respect to the initial guess. Figure 51C , after optimizing the latent vector value, Figure 51B The geological conditions in the figure can be transformed into the Figure 51C The geological conditions in which there is a good match between the well observations and the geological conditions. Figure 51D And in some embodiments, a new random sample of Z can be independently optimized to produce another geological realization adjusted to the well observations, the other geological realization being different from Figure 51C Optimized implementation. Figures 51E to 51I Additional realizations generated by the neural network driven reservoir modeling process 10 may be represented. For example, Figures 51D to 51F New realizations of the potential vectors may be included, the realizations being randomly sampled and each independently optimized to produce a geological realization that is adjusted to the well observations. Figure 51J And in some embodiments, multiple independent realizations of adjusted geology may be converged to produce a probabilistic model that is consistent with observations and that is geologically plausible.
[0509] The neural network driven reservoir modeling process 10 may provide several important advantages over deep learning driven modeling approaches over existing geostatistical methods, including but not limited to: (1) a wide range of facies patterns are generated in the resulting model and therefore a more ideal uncertainty space, because the GAN approach uses a training library with varying instances, as opposed to a single training image used in multi-point statistics (MPS); (2) better reproduction of facies geometry in 3D due to the learned representation of the facies architecture in GAN compared to MPS; (3) the flexibility of object-based modeling (OBM) to adhere to denser well data given the fact that OBM performs data conditioning via Markov Chain Monte Carlo (MCMC) sampling, which is slow or fails to converge under dense conditioning data conditions; and (4) the ability to train with unstable geological concept models (training images) and produce unstable realizations. As discussed above, GANs can learn non-stationary multi-scale phase deposition trends from training images, while MPS simulations require stable training image patterns for reliable statistical inference.
[0510] See Figure 52 , depicts a diagrammatic view of a client electronic device 38. Although a client electronic device 38 is depicted in this figure, this is for illustrative purposes only and is not intended to limit the present invention, as other configurations are possible. For example, any computing device capable of executing, in whole or in part, the neural network driven reservoir modeling process 10 may replace Figure 52 The client electronic device 38 within, examples of which may include but are not limited to computing device 12 and / or client electronic devices 40, 42 and 44.
[0511] The client electronic device 38 may include a processor and / or microprocessor (e.g., microprocessor 5200) configured to, for example, process data and execute the aforementioned code / instruction set and subroutines. The microprocessor 5200 may be coupled to the aforementioned energy storage device (e.g., storage device 30) via a memory adapter (not shown). An I / O controller (e.g., I / O controller 5202) may be configured to couple the microprocessor 5200 to various devices, such as a keyboard 5204, a pointing / selection device (e.g., a mouse 5206), a custom device, a phone (e.g., mobile device 5208), a USB port (not shown), and a printer port (not shown). A display adapter (e.g., display adapter 5210) can be configured to couple a display 5212 (e.g., a CRT or LCD monitor) to the microprocessor 5200, and a network controller / adapter 5214 (e.g., an Ethernet adapter) can be configured to couple the microprocessor 5200 to the network 14 mentioned above (e.g., the Internet or a local area network).
[0512] The flowcharts and block diagrams in the figures illustrate systems and methods and the architecture, functionality and operation of possible implementations of various embodiments of the present invention. In this regard, each block in the flowchart or block diagram may represent a module, segment or portion of code, which includes one or more executable instructions to implement a dedicated logic function. It should also be noted that in some alternative embodiments, the functions mentioned in the blocks may occur in an order different from the order mentioned in the figures. For example, depending on the functionality involved, two blocks shown in succession may actually be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order. It is also noted that each block of the block diagram and / or flowchart illustration and the combination of blocks in the block diagram and / or flowchart illustration can be implemented by a dedicated hardware-type system that performs a specified function or action, or a combination of dedicated hardware and computer instructions.
[0513] As used in any embodiment described herein, the term "circuitry" may include, for example, hardwired circuitry, programmable circuitry, state machine circuitry, and / or firmware storing instructions executed by programmable circuitry, individually or in combination. It should be understood that, at the outset, any of the operations and / or operational components described in any embodiment herein may be implemented in software, firmware, hardwired circuitry, and / or any combination thereof.
[0514] The terms used herein are for the purpose of describing specific embodiments and are not intended to limit the present invention. As used herein, the singular forms "a," "an," and "the" are also intended to include the plural forms, unless otherwise clearly indicated. It should be further understood that the term "comprising," when used in this specification, specifies the presence of stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0515] The equivalents of corresponding structures, materials, actions, and members or steps plus function elements in the following claims are intended to include any structure, material, or action for performing a function in combination with other claimed elements as specifically claimed. The description of the present invention is presented for the purpose of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiments are selected and described in order to best explain the principles of the invention and practical application, and to enable others of ordinary skill in the art to understand the disclosure of various embodiments with various modifications as are suitable for the specific use contemplated.
[0516] Although several example embodiments have been described above in detail, persons of ordinary skill in the art will readily appreciate that many modifications are possible in the example embodiments without materially departing from the scope of the invention as described herein. Such modifications are therefore intended to be included within the scope of the invention as defined in the following claims. In the claims, means-plus-function clauses are intended to cover structures described herein as performing the recited function, as well as structural equivalents and equivalent structures. Thus, while a nail or a screw may not be structurally equivalent in that a nail uses a cylindrical surface to fasten wooden parts together while a screw uses a helical surface, in the context of fastening wooden parts, a nail and a screw may be equivalent structures. Applicant's express intention is not to invoke 35 U.S.C. §112, paragraph 6, for any limitation in any of the claims herein, except where the technical solution expressly uses the term "means for..." in conjunction with an associated function limitation.
[0517] Having thus described the disclosure of the present application in detail and by reference to embodiments, it will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims.
[0518] the term:
[0519]
[0520]
[0521]
Claims
1. A method for simulating a reservoir model, the method comprising: defining a plurality of water injection well completions and a plurality of oil production well completions in one or more reservoir models via a neural network; defining, via the neural network, a plurality of water injector-producer pairs based at least in part on spatial proximity between the plurality of water injector completions and the plurality of oil producer completions; defining, via the neural network, a plurality of directional edges between the plurality of injector completions and the plurality of producer completions in the one or more reservoir models based at least in part on the plurality of injector-producer pairs, wherein the plurality of directional edges include local static and dynamic reservoir properties, wherein the plurality of directional edges between the plurality of injector completions and the plurality of producer completions define a graph network representing the one or more reservoir models, wherein each directional edge represents a volume of interest between an injector completion and a producer completion of one of the plurality of injector-producer pairs, wherein the volume of interest is determined based at least in part on the local static and dynamic reservoir properties of the directional edges, and wherein each directional edge is associated; simulating, via the neural network, a one-dimensional behavior of the one or more reservoir models along each of the plurality of directional edges between the plurality of injector well completions and the plurality of producer well completions using a one-dimensional simulator, wherein the one-dimensional behavior of the one or more reservoir models is modeled via the neural network by treating each injector-producer pair among the plurality of injector-producer pairs as a corresponding subnetwork; and A three-dimensional graph network representing the one or more reservoir models is defined via the neural network by aggregating each of the one-dimensional behaviors of the plurality of directed edges between the plurality of injection well completions and the plurality of production well completions to determine an effective three-dimensional behavior of the one or more reservoir models, wherein the effective three-dimensional behavior of the one or more reservoir models is represented by a degree of interaction between each corresponding sub-network of each injector-producer pair among the plurality of injector-producer pairs.
2. The method according to claim 1, further comprising: A total oil production capacity of the one or more reservoir models is determined based at least in part on determining the oil production capacity of each oriented edge terminating at the plurality of production well completions in the one or more reservoir models.
3. The method of claim 1 , wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving a plurality of water injection well rates associated with the plurality of water injection well completions; as well as One or more of oil production rates and water production rates for the plurality of oil production well completions are determined based at least in part on simulating the plurality of water injection well rates associated with the plurality of water injection well completions.
4. The method of claim 1 , wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving one or more of an oil production rate and a water production rate associated with the plurality of production well completions; as well as Water injection rates for the plurality of water injection well completions are determined based at least in part on simulating one or more of the oil production rates and the water production rates associated with the plurality of oil production well completions.
5. The method according to claim 1, wherein The one-dimensional simulator is a Buckley-Leverett simulator, and a Thiessen polygon distribution is used when defining one or more water injection well-oil production well pairs.
6. The method according to claim 1, further comprising: monitoring inflow control devices; The inflow control device is controlled by reducing or increasing a flow area through the inflow control device, wherein the controlling of the inflow control device is based at least in part on a simulation of the one or more reservoir models. The method according to claim 1 , wherein the one-dimensional simulator is a Segmented Reservoir Model Simulator (SRMS).
8. The method according to claim 1, further comprising: receiving one or more training images; as well as The neural network is trained based on the one or more training images to produce a trained neural network, wherein the trained neural network generates counterfeit data that is indistinguishable from authentic data.
9. The method of claim 8, wherein the neural network comprises a discriminator and a generator, wherein the generator is configured to generate counterfeit data, and wherein the discriminator is configured to distinguish the counterfeit data from authentic data.
10. The method of claim 1, wherein the effective three-dimensional behavior of the one or more reservoir models is a fluid dynamics representation defined by the one-dimensional behavior of the one or more reservoir models.
11. The method according to claim 1, wherein The degree of interaction before water breakthrough between each corresponding sub-network of each injector-producer pair within the plurality of injector-producer pairs is defined by the sum of the flow rates along each directional edge terminating at each of the plurality of producer completions in the one or more reservoir models.
12. The method according to claim 1, wherein The degree of interaction between each corresponding sub-network of each injector-producer pair among the plurality of injector-producer pairs at or after water breakthrough is defined by the sum of flows along each directional edge terminating at each of the plurality of producer completions in the one or more reservoir models corrected for the average water saturation between each injector-producer pair.
13. The method of claim 1, wherein the neural network is a generative adversarial network (GAN).
14. A computing system for simulating a reservoir model, the computing system comprising one or more processors and one or more memories, the computing system configured to perform operations comprising: defining, via a neural network, a plurality of injection well completions and a plurality of production well completions in one or more reservoir models; defining, via the neural network, a plurality of water injector-producer pairs based at least in part on spatial proximity between the plurality of water injector completions and the plurality of oil producer completions; defining, via the neural network, a plurality of directional edges between the plurality of injector completions and the plurality of producer completions in the one or more reservoir models based at least in part on the plurality of injector-producer pairs, wherein the plurality of directional edges include local static and dynamic reservoir properties, wherein the plurality of directional edges between the plurality of injector completions and the plurality of producer completions define a graph network representing the one or more reservoir models, wherein each directional edge represents a volume of interest between an injector completion and a producer completion of one of the plurality of injector-producer pairs, wherein the volume of interest is determined based at least in part on the local static and dynamic reservoir properties of the directional edges, and wherein each directional edge is associated; determining a total oil production capacity of the one or more reservoir models based at least in part on determining an oil production capacity of each oriented edge terminating at a completion of the plurality of producing wells in the one or more reservoir models; simulating, via the neural network, a one-dimensional behavior of the one or more reservoir models along each of the plurality of directional edges between the plurality of injector well completions and the plurality of producer well completions using a one-dimensional simulator, wherein the one-dimensional behavior of the one or more reservoir models is modeled via the neural network by treating each injector-producer pair among the plurality of injector-producer pairs as a corresponding subnetwork; and A three-dimensional graph network representing the one or more reservoir models is defined via the neural network by aggregating each of the one-dimensional behaviors of the plurality of directed edges between the plurality of injection well completions and the plurality of production well completions to determine an effective three-dimensional behavior of the one or more reservoir models, wherein the effective three-dimensional behavior of the one or more reservoir models is represented by a degree of interaction between each corresponding sub-network of each injector-producer pair among the plurality of injector-producer pairs.
15. The computing system of claim 14, wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving a plurality of water injection well rates associated with the plurality of water injection well completions; as well as One or more of oil production rates and water production rates for the plurality of oil production well completions are determined based at least in part on simulating the plurality of water injection well rates associated with the plurality of water injection well completions.
16. The computing system of claim 14, wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving one or more of an oil production rate and a water production rate associated with the plurality of production well completions; as well as Water injection rates for the plurality of water injection well completions are determined based at least in part on simulating one or more of the oil production rates and the water production rates associated with the plurality of oil production well completions.
17. The computing system of claim 14, wherein the one-dimensional simulator is a Buckley-Leverette simulator, and wherein a Thiessen polygon distribution is used when defining one or more injector-producer pairs.
18. The computing system of claim 14, wherein: The degree of interaction before water breakthrough between each corresponding sub-network of each injector-producer pair within the plurality of injector-producer pairs is defined by the sum of the flow rates along each directional edge terminating at each of the plurality of producer completions in the one or more reservoir models.
19. A computer program product for simulating a reservoir model, the computer program product comprising a non-transitory computer-readable storage medium having stored thereon a plurality of instructions that, when executed by a processor, cause the processor to perform operations comprising: defining a plurality of water injection well completions and a plurality of oil production well completions in one or more reservoir models via a generative adversarial network (GAN); defining, via the GAN, a plurality of water injector-producer pairs based at least in part on spatial proximity between the plurality of water injector completions and the plurality of oil producer completions; defining, via the GAN, a plurality of directional edges between the plurality of injector completions and the plurality of producer completions in the one or more reservoir models based at least in part on the plurality of injector-producer pairs, wherein the plurality of directional edges include local static and dynamic reservoir properties, wherein the plurality of directional edges between the plurality of injector completions and the plurality of producer completions define a graph network representing the one or more reservoir models, wherein each directional edge represents a volume of interest between an injector completion and a producer completion of one of the plurality of injector-producer pairs, wherein the volume of interest is determined based at least in part on the local static and dynamic reservoir properties of the directional edges, and wherein each directional edge is associated; simulating, via the GAN, a one-dimensional behavior of the one or more reservoir models along each of the plurality of directional edges between the plurality of injector well completions and the plurality of producer well completions using a one-dimensional simulator, wherein the one-dimensional behavior of the one or more reservoir models is modeled via the GAN by treating each injector-producer pair among the plurality of injector-producer pairs as a corresponding subnetwork; and A three-dimensional graph network representing the one or more reservoir models is defined via the GAN by aggregating each of the one-dimensional behaviors of the plurality of directed edges between the plurality of injection well completions and the plurality of production well completions to determine an effective three-dimensional behavior of the one or more reservoir models, wherein the effective three-dimensional behavior of the one or more reservoir models is represented by a degree of interaction between each corresponding sub-network of each injector-producer pair among the plurality of injector-producer pairs.
20. The computer program product of claim 19, further comprising instructions for: A total oil production capacity of the one or more reservoir models is determined based at least in part on determining the oil production capacity of each oriented edge terminating at the one or more production well completions in the one or more reservoir models.
21. The computer program product of claim 19, wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving a plurality of water injection well rates associated with the plurality of water injection well completions; as well as One or more of oil production rates and water production rates for the plurality of oil production well completions are determined based at least in part on simulating the plurality of water injection well rates associated with the plurality of water injection well completions.
22. The computer program product of claim 19, wherein simulating the one or more reservoir models along each of the plurality of oriented edges between the plurality of water injection well completions and the plurality of oil production well completions comprises: receiving one or more of an oil production rate and a water production rate associated with the plurality of production well completions; as well as Water injection rates for the plurality of water injection well completions are determined based at least in part on simulating one or more of the oil production rates and the water production rates associated with the plurality of oil production well completions.
23. The computer program product of claim 19, wherein the one-dimensional simulator is a Buckley-Leverette simulator, and wherein a Thiessen polygon distribution is used when defining one or more injector-producer pairs.
Citation Information
Patent Citations
Method for Quantifying Reservoir Connectivity Using Fluid Travel Times
US20100057418A1
System and method for use in simulating a subterranean reservoir
US20130338983A1
Rock facies prediction in non-cored wells from cored wells
US20140149041A1
Performance prediction method for hydrocarbon recovery processes
US7289942B2
Method for producing hydrocarbons through a well or well cluster of which the trajectory is optimized by a trajectory optimisation algorithm
US8751208B2