Digital twinning system and method for hydrocarbon systems
The digital twin system using ROMs and machine learning enhances real-time estimation and control of hydrocarbon systems, addressing the limitations of existing methods by accurately predicting and managing critical variables like gas-oil ratio and water content.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- SENSIA LLC
- Filing Date
- 2021-12-07
- Publication Date
- 2026-07-23
AI Technical Summary
Existing hydrocarbon system modeling and control methods lack real-time accuracy and efficiency, particularly in estimating and controlling unmeasurable variables such as gas-oil ratio and water content, which are crucial for optimizing hydrocarbon production.
A digital twin system is developed using reduced-order models (ROMs) that integrate hyperdimensional simulations, regression, and machine learning to estimate and control hydrocarbon system variables in real-time, incorporating calibration and inverse models to adjust and refine predictions.
The digital twin system provides accurate, real-time estimation and control of hydrocarbon system variables, enhancing production optimization and reducing the need for extensive simulations, thereby improving operational efficiency and accuracy.
Smart Images

Figure 0007894372000001 
Figure 0007894372000002 
Figure 0007894372000003
Abstract
Description
[Technical Field]
[0001] This disclosure (the present invention) relates to the modeling of hydrocarbon systems. In particular, the present invention relates to real-time model-based analysis and control of hydrocarbon systems. International Publication No. 2018 / 165352A1 relates to an analysis engine that outputs values for state variables of an artificial lift system for use by a surface controller.
[0002] [Cross-reference of related applications] This application is an interest and priority claim application to U.S. Provisional Patent Application No. 63 / 122,325, filed on 7 December 2020, which is cited by reference and whose entire disclosure is incorporated herein by reference. [Overview of the project]
[0003] One embodiment of the present invention, according to several embodiments, is a method for generating and using a digital twin of a hydrocarbon system. In some embodiments, the method includes the step of generating a hyperdimensional space that maps the inputs, outputs, and attributes of the simulations by performing multiple simulations using a design of experiments (DOE) method. In some embodiments, the method includes the step of generating one or more reduced-dimensional models (ROMs) using regression or machine learning methods with the hyperdimensional space obtained from the multiple simulations. In some embodiments, the method includes the step of generating a digital twin of the hydrocarbon system by instantiating one or more ROMs at the operating points of the hydrocarbon system, and then configuring the digital twin to use real-time data obtained from the hydrocarbon system. In some embodiments, the method includes the step of estimating the values of one or more variables of the hydrocarbon system in real time using the digital twin. In some embodiments, the method includes the step of controlling the hydrocarbon system based on the estimates of one or more variables.
[0004] In some embodiments, one or more ROMs include a forward ROM, an inverse ROM, or a calibration ROM. In some embodiments, the forward ROM is configured to predict the value of one or more variables of a hydrocarbon system for a hypothetical scenario based on the values of one or more controllable variables, the values of one or more set parameters, and the values of one or more calibration variables.
[0005] In some embodiments, the inverse ROM is configured to solve the inverse problem and estimate the value of one or more system variables of a hydrocarbon system based on the values of one or more controllable variables, one or more set parameters, one or more calibration variables, and one or more quantifiable variables of the hydrocarbon system.
[0006] In some embodiments, the calibration ROM is configured to estimate one or more calibration variables based on the values of one or more controllable variables, one or more settable parameters, one or more unmeasurable variables, and one or more measurable variables for the forward or inverse ROM. In some embodiments, the digital twin includes an instantiation of multiple ROMs, one or more of the multiple ROMs being configured to provide outputs to different ROMs of the multiple ROMs as inputs.
[0007] In some embodiments, the method includes the step of performing field testing at a hydrocarbon system to obtain calibration data. In some embodiments, the method includes at least one of the following steps: (1) regenerating one or more ROMs and using the calibration data to regenerate a digital twin to generate a calibrated digital twin; or (2) providing the calibration data to the calibration ROM so that it can be used when updating one or more other ROMs of the digital twin.
[0008] In some embodiments, the regeneration step includes automatically selecting the optimal combination of both the DOE sampling scheme and the ROM model and parameters in the simultaneous presence of the calibration measurement and the calibration matching criterion. In some embodiments, the regeneration step includes an iterative process and a Bayesian regularization method.
[0009] Another embodiment of the present invention, according to several embodiments, is a system for generating and using a digital twin of a hydrocarbon system. In some embodiments, the system includes a processor. In some embodiments, the processor is configured to run multiple simulations in a hyperdimensional space to generate outputs. In some embodiments, the processor is configured to use the outputs of the multiple simulations to generate one or more lower-order models (ROMs) using regression or machine learning methods. In some embodiments, the processor is configured to generate a digital twin of the hydrocarbon system by instantiating one or more ROMs at the operating points of the hydrocarbon system, and to configure the digital twin to use real-time data obtained from the hydrocarbon system. In some embodiments, the processor is configured to operate the hydrocarbon system based on the outputs of the digital twin.
[0010] In some embodiments, the processor is further configured to estimate the values of one or more variables of the hydrocarbon system in real time using a digital twin and real-time data. In some embodiments, the real-time data includes at least one of the following: wellhead pressure, flowline pressure, injection pressure, injection rate, pump discharge pressure, pump suction pressure, voltage, current, or motor temperature of the hydrocarbon system.
[0011] In some embodiments, the processor is configured to perform an automated calibration check of the digital twin. In some embodiments, the operation of performing the automated calibration check includes obtaining measurements of one or more predictor variables of the hydrocarbon system, determining one or more quasi-static parameters using the measurements of one or more predictor variables, and determining whether one or more quasi-static parameters have converged. In some embodiments, in response to the determination that one or more quasi-static parameters have not converged, the processor includes adjusting one or more of the predictor variables to determine one or more quasi-static parameters again, and then determining again whether one or more quasi-static parameters have converged.
[0012] In some embodiments, the processor is configured to perform an automated calibration check of the digital twin. In some embodiments, the operation of performing the automated calibration check includes obtaining measurements of one or more predictor variables of the hydrocarbon system; determining one or more quasi-static parameters using the measurements of one or more predictor variables; determining a predicted response using one or more quasi-static parameters; comparing the predicted response to the actual response of the hydrocarbon system to determine the prediction error of the response; and minimizing the prediction error by adjusting the quasi-static parameters and then determining the predicted response again, and then comparing the predicted response to the actual response again to determine the prediction error of the response.
[0013] In some embodiments, at least one of the ROMs of the digital twin includes a transient ROM. In some embodiments, the transient ROM includes a filter function, the parameters of which are one or more quasi-static parameters output by a calibration ROM. In some embodiments, the filter function is configured to determine the expected response given one or more measured inputs of a hydrocarbon system using deconvolution and the filter function.
[0014] In some embodiments, the processor is configured to instantiate one or more ROMs of the digital twin using a plurality of measurements from a first data source and data of a movable location from a second data source. In some embodiments, the plurality of measurements from the first data source and the data of the movable location are temporally synchronized with each other.
[0015] In some embodiments, the processor is configured to automatically temporally synchronize a plurality of measurements from a first data source and data of an operating location from a second data source. In some embodiments, the processor is configured to instantiate one or more ROMs using a plurality of data of an operating location of a hydrocarbon system, and each of the plurality of data of the operating location includes a weighting that indicates a confidence factor for each of the plurality of data of the operating location.
[0016] In some embodiments, the processor is configured to recalculate the parameters of one or more ROMs over time and monitor changes in the parameters of one or more ROMs. In some embodiments, the processor is configured to warn a technician in response to the parameters of one or more ROMs changing by more than a threshold amount.
[0017] Another embodiment of the present invention is a twin tool that generates and uses a digital twin of a hydrocarbon system, according to some embodiments. In some embodiments, the twin tool has a processing circuitry, and the processing circuitry is configured to execute multiple simulations using the design of experiments (DOE) method, thereby generating a hyperspace that maps the inputs, outputs, and attributes of the simulations. In some embodiments, the processing circuitry is configured to generate multiple reduced-order models (ROMs) using the curve fitting method with the hyperspace from the multiple simulations. In some embodiments, the processing circuitry is configured to determine multiple quasi-static parameters by providing calibration data obtained by performing tests at the hydrocarbon system as inputs to the multiple ROMs. In some embodiments, the processing circuitry is configured to generate a digital twin of the hydrocarbon system based on the multiple quasi-static parameters and the multiple ROMs. In some embodiments, the processing circuitry is configured to predict the response of the hydrocarbon system over a future planning period using the digital twin and display the predicted response of the hydrocarbon system over the future planning period to a technician.
[0018] The present invention will become fully apparent from the following detailed description taken in conjunction with the accompanying drawings, in which like reference numerals refer to like elements throughout.
Brief Description of the Drawings
[0019] [Figure 1] According to some embodiments, it is a schematic diagram of a system that generates a digital twin of a hydrocarbon system based on one or more reduced-order models (ROMs). [Figure 2] According to some embodiments, it is a flowchart of a process that generates a digital twin of a hydrocarbon system based on one or more ROMs. [Figure 3] According to some embodiments, it is a schematic diagram of a forward ROM showing the inputs and outputs of the forward ROM. [Figure 4]According to some embodiments, this is a schematic diagram of an inverse ROM showing the inputs and outputs of the inverse ROM. [Figure 5] According to some embodiments, this is a schematic diagram of a calibration ROM showing the inputs and outputs of the calibration ROM. [Figure 6] According to some embodiments, this is a schematic diagram of a digital twin including a calibration ROM, an inverse ROM, and a forward ROM that interact with each other to produce an output. [Figure 7] According to several embodiments, this is a block diagram of a system for generating and using a digital twin. [Figure 8] According to several embodiments, this is a schematic diagram of an inverse ROM for an electric submersible pump (ESP) well. [Figure 9] According to some embodiments, Figure 8 is a block diagram of the calibration ROM and inverse ROM facing the ESP well. [Figure 10] According to some embodiments, Figure 9 is a graph showing the estimated and measured flow rates over time for the calibration ROM and inverse ROM. [Figure 11] According to some embodiments, Figure 9 is a graph showing the estimated and measured water content (WC) of the calibration ROM and inverse ROM over time. [Figure 12] According to some embodiments, Figure 9 is a graph showing the estimated gas-oil ratio (GOR) and measured GOR over time for the calibration ROM and inverse ROM. [Figure 13] According to some embodiments, Figure 9 is a graph showing the estimated pump leakage (PL) of the calibration ROM and inverse ROM. [Figure 14] According to some embodiments, this is a schematic diagram of a gas lift well. [Figure 15] According to some embodiments, Figure 14 is a schematic diagram of a forward ROM facing a gas lift well. [Figure 16]According to several embodiments, this figure shows a dashboard for presenting to engineers on a web page. [Figure 17] According to several embodiments, this is a block diagram of the calibration ROM workflow. [Figure 18] According to several embodiments, this is a block diagram of a workflow for a first implementation of calibration ROM optimization. [Figure 19] According to several embodiments, this is a block diagram of a workflow for a second implementation of calibration ROM optimization. [Figure 20] According to several embodiments, this is a block diagram of the transient ROM workflow. [Figure 21] According to some embodiments, this is a graph illustrating how data for calibrating a digital twin is synchronized. [Figure 22] According to some embodiments, this is a graph illustrating how to weight the calibration data of a digital twin. [Figure 23] According to some embodiments, this is a graph showing various quasi-static parameters of a digital twin tracked over time. [Figure 24] According to several embodiments, this is an optimization block diagram that can be implemented in place of a calibration ROM. [Modes for carrying out the invention]
[0020] Before referring to the drawings illustrating the exemplary embodiments, it should be understood that this application is not limited to the details or methodologies described or illustrated herein. Furthermore, it should be understood that the art is not intended to limit the invention and is provided solely for illustrative purposes.
[0021] Overview
[0022] Referring particularly to Figure 1, a schematic diagram of a system 100 that generates a digital twin 116 of a hydrocarbon system, oil system, or petroleum system, or an apparatus of such system. System 100 can embody one or more offline techniques 106 and one or more online or live techniques 114 for generating the digital twin 116. The digital twin 116 is often an instantiation of one or more ROMs that digitally encapsulates the necessary model attributes across the expected workspace as a single system, and more likely to include design, installation, and model variables. The digital twin 116 is often an instantiation of ROMs at a specific point in time and can operate in real time based on measurements and / or real-time information shown as real-time inputs 118. The digital twin 116 can output real-time outputs 120 of any of the ROMs contained in the digital twin 116. The digital twin 116 is preferably embodied as one of the live techniques 114 of system 100, which uses real-time inputs 118 (e.g., sensor data, measured values, etc.) and outputs real-time outputs 120 (e.g., predicted values for one or more variables of a system, calculated values for one or more variables of this system, values of calibration variables of this system, etc.). The digital twin 116 is preferably configured to estimate or predict the values of immeasurable variables, such as gas-oil ratio (GOR), water content (WC), liquid flow rate, etc. It should be understood that these specific immeasurable variables are provided as examples and should not be understood as limiting the invention.
[0023] The offline technique 106 may include a technique that uses one or more simulators 108 to execute the Design of Experiment (DOE) 110. The simulators 108 and DOE 110 may be a number of hypothetical scenarios (e.g., different values of pump speed or other parameters) in a hyperdimensional space. For example, the simulator 108 may be different models, equations, and operating curves of various components, subsystems, or devices of the system represented by the digital twin 116, and may further include various interrelationships of the various components, subsystems, and devices of the system represented by the digital twin 116 (e.g., which models feed each other). The simulators 108 and DOE 110 may use applied techniques based on known information about the system represented by the digital twin 116, thereby avoiding the need for an excessive number of simulations. For example, the simulation may be performed in a hyperdimensional space of various variables that are expected to operate the system that the digital twin 116 is to represent. For example, if the system is a pump for a hydrocarbon system that is expected to operate at a pressure of 1000-3000 psi, the simulation should be performed for pressures within this range. In another example, if the system represented by the digital twin 116 is a hydrocarbon pump, the DOE 110 can simulate or estimate choke percentage, water output, etc., for different values of the manipulated variable (e.g., the speed or rpm of the system represented by the digital twin 116), or for different ranges of the manipulated variable. The result of the DOE 110 should be a working curve or virtual curve (e.g., a simulated working curve) for different output variables of the system represented by the digital twin 116, given different ranges or values of the input variables. The DOE 110 should use either naive DOE techniques or randomized DOE sampling techniques (e.g., Latin hypersquare DOE techniques, Sobol DOE techniques, Halton DOE techniques, etc.). In some embodiments, randomized DOE sampling techniques overlap with the working range of all quantities in the digital twin to avoid extrapolation.
[0024] Using the results of DOE110, a ROM can be created as shown in ROM generation technique 112. The ROM may be any of the following: transient ROM (e.g., a low-dimensional model that outputs a number of values for a transient or dynamic phase of a system represented by the digital twin 116), static ROM (e.g., a low-dimensional model that outputs static variables for a steady-state phase of a system represented by the digital twin 116), forward ROM (e.g., a low-dimensional model that predicts future values or hypothetical scenarios of various variables for one or more control decisions), inverse ROM (e.g., a low-dimensional model that can be used to solve an inverse problem and estimate various system parameters based on actual measurements and / or calibration variables), or calibration ROM (e.g., a low-dimensional model that can be used to estimate or predict various calibration variables of a system represented by the digital twin 116). Transient ROMs may be more complex than static or steady-state ROMs and may require additional refinement or further techniques for generation, such as deconvolution, gradient search techniques, etc. In some embodiments, the input to the tROM is a quasi-static parameter or output of a calibration ROM. In some embodiments, tROM outputs predicted values used to solve a deconvolution problem in order to estimate dynamic system variables that could not be measured or were unmeasurable. In some embodiments, tROM also includes a convolutional neural network. ROM can be generated using novel regression methods, neural networks, and / or machine learning methods. For example, ROM can be generated based on the output of DOE110 using linear regression, Gaussian process regression, neural networks, XGBoost, LGBoost for regression, or auto-selective (e.g., Bayesian-based) regression methods.
[0025] The digital twin 116 is preferably generated based on one or more ROMs produced when the ROM generation technique 112 is performed. For example, the digital twin 116 may include some of the ROMs and the relationships between the ROMs (e.g., which ROMs send outputs to the inputs of different ROMs). In one example, the digital twin 116 may include a calibration ROM, an inverse ROM, and a forward ROM. The output of the calibration ROM may be provided to both the inverse ROM and the forward ROM. The output of the inverse ROM may be provided to the forward ROM.
[0026] The digital twin 116 includes one or more ROMs, which, according to some embodiments, are preferably instantiated at a specific point in time based on a real-time input 118. The output of the ROM defining the digital twin 116 for instantiation at a specific point in time is preferably the real-time output 120 of the digital twin 116. Thus, according to some embodiments, the digital twin 116 operates based on the real-time input 118 and outputs the real-time output 120.
[0027] Referring still to Figure 1, it is preferable that Test 104 be performed on the measurable output of the system represented by the digital twin 116. For example, Test 104 may be a test to determine whether the system represented by the digital twin 116 is a hydrocarbon well pump. Test 104 may be performed at regular intervals (e.g., every month, every six months) by a technician or automatically. Test 104 may be performed to obtain different values of the calibration variables of the system represented by the digital twin 116 or adjustments to the calibration variables. For example, if the digital twin 116 represents a hydrocarbon well pump, the calibration variables obtained by performing Test 104 may be the gas-oil ratio (GOR), water content (WC), productivity index (PI), or reservoir pressure of the hydrocarbon system. It is preferable to perform calibration 102 of the simulator 108 using the results of test 104 (e.g., calibration variables) (e.g., to adjust, redefine, or update the simulator 108 based on real-world test results in the system represented by the digital twin 116). Next, it is preferable to regenerate the digital twin 116 using offline techniques 106 as described herein. Thus, it is preferable to recalibrate the digital twin 116 intermittently or periodically in a non-real-time manner when test 104 is performed, and to calibrate the simulator 108 using the results of test 104. As a variation, the results of test 104 may also be provided to the digital twin 116 to determine new settings for the calibration variables (e.g., post-test calibration of the system represented by the digital twin 116) if the calibration variables were used as part of the original DOE. The real-time output 120 of the digital twin 116 can be used for a variety of applications, including, but not limited to, simulation, model predictive control (MPC) or optimization, feedback control of the system represented by the digital twin 116, or a dashboard. In some embodiments, test or calibration measurements are required to avoid the indeterminacy of the regression problem that generates the ROM, or to compensate for the inaccuracies of the underlying measurements or estimates.In some embodiments, calibration can be achieved by correcting inaccurate measurements or estimates by rerunning the simulation with the adjusted simulation input parameters, and / or by determining output parameters for the inverse ROM or forward ROM from the calibration ROM or procedure.
[0028] Forward ROM
[0029] Referring now to Figure 3, according to several embodiments, a forward ROM 300 can be generated using the technology described in detail above with reference to Figure 1 (and further described below with reference to Figures 2 and 7). In some embodiments, the forward ROM 300 is configured to receive inputs of a controllable variable 302, a setting parameter 304, and a calibration variable 306. In some embodiments, the forward ROM 300 is configured to output one or more predictive variables 308 (e.g., given values of the controllable variable 302). The predictive variable 308 may be a simulated value of the system represented by the digital twin 116. The controllable variable 302 may be a variable representing an operating setpoint (e.g., an adjustable setpoint) of one or more actuators, motors, or other controllable devices of the system represented by the digital twin 116. The setting parameter may be a known parameter of the system represented by the digital twin 116 (e.g., well design, pump configuration, etc., if the system represented by the digital twin 116 is a hydrocarbon well pump). The calibration variable 306 may be the output of a calibration ROM (for example, the calibration ROM 500, which will be described in detail below with reference to Figure 5) or the result from test 104 (for example, a manual measurement).
[0030] Forward ROM 300 can generally be represented in the following format: var predict =f fwd (var control var config var cal ) In the above formula, var predict is a large number of sets of time-series data of various variables predicted by the forward ROM 300, var control is a large number of sets of time-series data of various controllable variables (e.g., controllable variable 302), var config is a large number of sets of time-series data of various setting parameters (e.g., setting parameter 304), var cal is a large number of sets of time-series data of various calibration variables (e.g., calibration variable 306), f fwd is the forward ROM 300 (e.g., a function). When the system represented by the digital twin 116 is a hydrocarbon well pump, the controllable variable 302 may well include pump speed, choke position / percentage, valve position, etc., the setting parameter 304 may well be a well design or pump setting parameter, the calibration variable 306 may well be variables such as GOR, WC, PI, friction coefficient, etc., and the predicted variable 308 may well be pressure, temperature, torque, liquid flow rate, pump leakage amount, etc. The forward ROM 300 can output the value of the predicted variable 308 (e.g., the response of the system) when given different inputs of the controllable variable 302 (e.g., the influence on pressure, temperature, torque, liquid flow rate, pump leakage amount, boundary conditions, etc. that occur when the pump speed or choke is adjusted).
[0031] Inverse ROM
[0032] Next, referring to Figure 4, several embodiments of an inverse ROM 400 that can be generated using the techniques described in detail above with reference to Figure 1 (and described in detail below with reference to Figures 2 and 7) are shown. In some embodiments, the inverse ROM 400 is configured to receive inputs of a controllable variable 402, a setting parameter 404, a calibration variable 406, and a measured variable 408. The controllable variable 402 may be identical to the controllable variable 302 described in detail above with reference to Figure 3. The setting parameter 404 may be identical to the setting parameter 304 described in detail above with reference to Figure 3. The calibration variable 406 may include some of the calibration variables 306 described in detail above with reference to Figure 4. The measured variable 408 may be any variable of the system represented by the digital twin 116, such any variable may be obtained from one or more sensors of the system (e.g., pressure, temperature, torque, etc.) (e.g., in real time).
[0033] The inverse ROM 400 is configured to solve the inverse problem and estimate or calculate system variables 410 relating to the system represented by the digital twin 116 based on controllable variables 402, setting parameters 404, calibration variables 406, and measurement variables 408. For example, given different control inputs, system settings, system calibration, and system sensor data, the inverse ROM 400 estimates the values of the system variables 410 that the system had, and as a result, the measurement variables 408 are obtained. For example, the system variables 410 may include variables that are difficult to measure, such as GOR, WC, liquid flow rate, pump leakage rate, or any other variables. Advantageously, the inverse ROM 400 makes it possible to estimate various parameters that are difficult to measure or cannot be measured in real time. Such unmeasurable parameters can be said to be beneficial and effective in the control scheme relating to the system represented by the digital twin 116.
[0034] Inverse ROM 400 can generally be represented in the following format: var sys =finv (var control var config var cal var means ) In the above equation, var sys This is a collection of numerous time-series data of system variables (e.g., system variable 410) estimated by inverse ROM 400, and var control This is a collection of many time series data of various controllable variables (e.g., controllable variable 402 or controllable variable 302), and var config This is a collection of numerous time-series data for various configuration parameters (e.g., configuration parameter 404 or configuration parameter 304), and var cal This is a collection of numerous time series data of various calibration variables (e.g., calibration variable 406), and var meas This is a collection of numerous time-series data of various measured variables (e.g., 408 measured variables), and f inv This is an inverse ROM 400 (e.g., a single function). The calibration variables 406 may include PI, friction coefficient, etc., and such calibration variables may be outputs of a calibration ROM (e.g., a calibration ROM 500, which will be described in detail below with reference to Figure 5), or they may be values obtained from conducting a test (e.g., test 104). In some embodiments, the calibration variables 406 are subject to constraints similar to those shown in Figure 23 and described in detail below.
[0035] Calibration ROM
[0036] Next, referring to Figure 5, several embodiments of a calibration ROM 500 that can be generated using the technique described in detail above with reference to Figure 1 (and described in detail below with reference to Figures 2 and 7) are shown. In some embodiments, the calibration ROM 500 is configured to receive inputs of a controllable variable 502, a setting parameter 504, and a measured variable 508. In some embodiments, the calibration ROM 500 is configured to output, predict, estimate, etc., a calibration variable 510 and an unmeasured variable 506. According to some embodiments, the controllable variable 502 may be the same as the controllable variable 402 or controllable variable 302 described in detail above with reference to Figures 3 and 4. The setting parameter 504 may be the same as the setting parameter 404 or setting parameter 304 described in detail above with reference to Figures 3 and 4. The unmeasured variable 506 may be a variable that is difficult to measure, for example, the unmeasured variable 506 may be the system variable 410 described in detail above with reference to Figure 4, or may include any of these. The measurement variable 508 may be, or may include, measurements obtained by performing Test 104 (e.g., GOR, WC, liquid flow rate, etc.), and such measurement variable may further include values measured by various sensors of the system represented by the digital twin 116 (e.g., pressure, temperature, torque, etc.). The calibration variable 510 may be an estimated calibration factor or variable that is difficult to measure in real time (e.g., PI, coefficient of friction, etc.).
[0037] The calibration ROM 500 is configured to generate calibration values that can be used to update other calibration inputs of the various ROMs of the digital twin 116 (e.g., inverse ROM 400, forward ROM 300, etc.). The calibration ROM 500 can generally be expressed in the following format: var cal var unmeas =f cal (var control var config varmeas ) In the above equation, var cal This is a collection of numerous time-series data of calibration variables (e.g., calibration variable 406 or a portion of calibration variable 306) estimated by the calibration ROM 500, and var unmeas This is a collection of numerous time-series data of various unmeasurable variables or system variables (e.g., unmeasurable variable 506, system variable 410) estimated by the calibration ROM 500, and var control This is a collection of many time series data of various controllable variables (e.g., controllable variable 502, controllable variable 402, or controllable variable 302) and var config This is a collection of numerous time-series data for various setting parameters (e.g., setting parameter 504, setting parameter 404, or setting parameter 304), and f cal This is the calibration ROM 500 (e.g., a single function). The output of the calibration ROM 500 is preferably provided as an input to other ROMs of the digital twin 116 (e.g., the inverse ROM 400 and / or forward ROM 300).
[0038] Example of a digital twin
[0039] Referring next to Figure 6, schematic diagram 600 shows the interaction between a digital twin 602 and one or more applications 614 according to several embodiments. The digital twin 602 may be identical to or similar to the digital twin 116, and such a digital twin can be generated using similar techniques. According to several embodiments, the digital twin 602 includes a calibration ROM 500, an inverse ROM 400, and a forward ROM 300. The output of the calibration ROM 500 (e.g., calibration variable 510) is provided as input to the inverse ROM 400 and the forward ROM 300 (e.g., as calibration variable 306 and calibration variable 406). The calibration ROM 500 can receive inputs (e.g., controllable variables 502, setting parameters 504, unmeasurable variables 506, and measurable variables 508) from one or more external sources (e.g., controllers of the system represented by the digital twin 602, such as the feedback controller 610, sensors of the system represented by the digital twin 602, test results performed at the digital twin system, known settings, or system setting values). The inverse ROM 400 and forward ROM 300 can further receive similar inputs from one or more external sources.
[0040] The calibration ROM 500 also provides its output (e.g., calibration variables 510) to the calibration reporting application 604. The calibration reporting application 604 may be an external application configured to generate a report for the technician to view (e.g., graphs, charts, values of calibration variables 510, usage of calibration variables 510, etc.).
[0041] The inverse ROM 400 is configured, according to some embodiments, to provide its output to the forward ROM 300. The inverse ROM 400 may also provide its output (e.g., system variables 410) to the calibration ROM 500 for use in determining the calibration variables 510. For example, the inverse ROM 400 may provide the system variables 410 to the forward ROM 300. Both the inverse ROM 400 and the forward ROM 300 provide these outputs (e.g., system variables 410 and predictor variables 308) to the simulation application 606, the MPC / optimization application 608, the feedback controller 610, or the dashboard 612. Thus, the output of the digital twin 602 can be used to run simulations, perform MPC or optimization of the system represented by the digital twin 602, perform feedback or closed-loop control (e.g., PID control) of the system represented by the digital twin 602, and provide data on the dashboard. In some embodiments, the output of the MPC or optimization is provided as input to an inverse ROM 400, a forward ROM 300, or a calibration ROM 500.
[0042] Twin conversion tool
[0043] Referring next to Figure 7, the techniques described herein for generating and using digital twins can be embodied in a twinning system 700, which includes a twinning tool 702 and various external applications. The twinning tool 702 is configured to generate a digital twin 718, which provides the output of the digital twin 718 and / or the digital twin 718 itself to various external applications. As shown in Figure 7, the twinning tool 702 incorporates a processing circuit system 704, which includes a processor 706 and a memory 708. The processor 706 may be a general-purpose or special-purpose processor, an application-specific integrated circuit (ASIC), one or more field-programmable gate arrays (FPGAs), a set of processing components, or other suitable processing components. The processor 706 is preferably configured to execute computer code and / or instructions received from memory 708 or other computer-readable media (e.g., CD-ROM, network storage device, remote server, etc.).
[0044] Memory 708 may include one or more devices (e.g., memory units, memory devices, storage devices, etc.) that store data and / or computer code to complete and / or facilitate the various processes described herein. Memory 708 may include random access memory (RAM), read-only memory (ROM), hard drive storage devices, temporary storage devices, non-volatile memory, flash memory, optical memory, or any other suitable memory, or any other suitable memory that stores software objects and / or computer instructions. Memory 708 may include database components, object code components, script components, or any other form of information structure that supports the various activities and information structures described herein. Memory 708 may be communicably connected to processor 706 via processing circuit system 704, and such memory may contain computer code (e.g., by processor 706) that executes one or more processes described herein.
[0045] The memory 708, according to some embodiments, includes one or more simulators 710, a DOE manager 712, a ROM generator 714, a digital twin generator 716, and a digital twin 718. As shown in Figure 7, the twinning tool 702 is configured to receive real-time input from a system 728 (e.g., the system represented by the digital twin 718). The real-time input, according to some embodiments, can be obtained from sensors, measuring devices, instruments, flow meters, etc., of the system 728. The system 728 is preferably a hydrocarbon well pump, according to some embodiments. The twinning tool 702 is also configured, according to some embodiments, to receive system information (e.g., from a technician, from a remote device, from a database, etc.). In some embodiments, the system information is metadata about the system 728. In some embodiments, the system information is stored in the memory 708 of the twinning tool 702.
[0046] In some embodiments, the twinning tool 702 is also configured to receive independent test results (e.g., results of tests performed by a technician at system 728). The technician can perform tests (e.g., well tests) at system 728 to obtain one or more measurements and provide such measurements to the twinning tool 702 (e.g., via a user interface, smartphone, touchscreen device, etc.). It should be understood that the functionality of the twinning tool 702 can be implemented locally at system 728 (e.g., on a single processing circuit) or remotely and / or in a distributed manner (e.g., on a cloud computing system). For example, the twinning tool 702 is cloud-based, and as a result, the twinning tool 702 receives real-time inputs, system information, and independent test results at a remote location, performs its functions, and then provides the output (e.g., digital twin, digital twin output, etc.) to one or more applications (e.g., closed-loop controller 720, MPC / optimization system 722, one or more simulators 724, dashboard 726, edge device 730, etc.) that are locally located at system 728 or remotely located from system 728 within a cloud computing system.
[0047] The simulator 710 may, according to several embodiments, be one or more functions, models, operating curves, etc., representing different parts of system 728, and / or one or more interrelationships of one or more functions, models, operating curves, etc., of different parts of system 728, or may include such interrelationships, so as to be able to simulate the output of system 728. The simulator 710 may, according to several embodiments, be configured to perform a multivariable or hyperdimensional simulation of system 728 to produce different outputs of system 728 given various inputs of system 728 (e.g., control inputs, temperature settings, flow rates, pump speeds, etc., depending on the form of system 728). For example, the simulator 710 may be configured to perform a hi-fi (high-fidelity) simulation of system 728. For example, the simulator 710 may include an electric submersible pump (ESP) simulator, a rod pump dynamic simulator, a pipe simulator, and the like. The simulation output of the simulator 710 may, according to some embodiments, take the form of a multidimensional graph, curve, surface plot, or the like, representing the relationships between various variables (e.g., input and output variables of system 728).
[0048] In some embodiments, the DOE manager 712 is configured to perform one or more simulations by using the simulator 710 and implementing one or more DOE techniques. Examples of DOE techniques include the naive DOE technique, the randomized DOE technique, the Latin hypersquare DOE technique, the Sobol DOE technique, and the Halton DOE technique. The DOE manager 712 uses the simulator 710 to produce simulation output and provide the simulation output to the ROM generator 714. For example, the DOE manager 712 may provide one or more multidimensional graphs to the ROM generator 714. The DOE manager 712 can implement any of the DOE 110 techniques described in detail above with reference to Figure 1.
[0049] According to several embodiments, the ROM generator 714 is configured to use a simulation output provided by the DOE manager 712, which is generated using a simulator 710, thereby generating one or more ROMs based on the simulation output. According to several embodiments, the ROMs are preferably generated by the ROM generator 714 using a new regression method and the simulation output of the simulator 710. For example, the ROM generator 714 is preferably configured to use a linear regression method, a Gaussian process regression method, a neural network, a machine learning method, a Bayesian regression method, etc. The ROMs may include a calibration ROM 500, an inverse ROM 400, a forward ROM 300, or a transient ROM 732.
[0050] Still referring to Figure 7, the digital twin generator 716 is configured, according to some embodiments, to receive a ROM from a ROM generator 714 and to generate a digital twin 718 using such ROM. The digital twin generator 716 is configured to instantiate the ROM obtained from the ROM generator 714 using real-time input and to generate the digital twin 718 by defining one or more interrelationships between the ROMs. In some embodiments, the digital twin 718 is or is similar to the digital twin 116 or digital twin 602 described in detail above. The digital twin 718 is preferably configured to estimate the values of various calibration variables, system variables, and predictor variables. For example, if the system 728 is a hydrocarbon well pump, the digital twin 718 is preferably configured to output predictor variables, such as the pressure of the hydrocarbon well pump, the temperature of the hydrocarbon well pump, the torque of the hydrocarbon well pump, the liquid flow rate, and the pump leakage rate; system variables, such as GOR, WC, liquid flow rate, and pump leakage; and / or calibration variables, such as PI and the friction coefficient.
[0051] The digital twin 718 is configured to provide any of the outputs described above (e.g., predictor variables, system variables, and / or calibration variables) to one or more external applications, such as a closed-loop controller 720, an MPC / optimization system 722, a simulator 724, a dashboard 726, and / or an edge device 730. It should be understood that this list is not exhaustive, and the digital twin 718 may provide its outputs to additional external applications. In some embodiments, the twinning tool 702 is configured to provide the digital twin 718 to the closed-loop controller 720, the MPC / optimization system 722, the simulator 724, the dashboard 726, and / or an edge device 730 for local embodiment and use of the digital twin 718.
[0052] In some embodiments, the digital twin generator 716 is configured to calibrate the digital twin 718 based on independent test results or calibration variables obtained by performing independent tests at system 728. For example, the digital twin generator 716 can re-instantiate the digital twin 718 using calibration variables obtained by performing independent tests at system 728. In some embodiments, the simulator 710, DOE manager 712, and ROM generator 714 are configured to perform these functions again using calibration variables from the independent test results to regenerate the ROM. If system 728 is a hydrocarbon well pump, the calibration variables obtained by performing independent tests may be GOR, WC, and liquid flow rate.
[0053] The closed-loop controller 720 is configured, according to several embodiments, to perform closed-loop control of the system 728 using a digital twin output and / or digital twin 718. For example, the closed-loop controller 720 may operate the system 728 by performing a PID control scheme. The MPC / optimization system 722 is configured, according to several embodiments, to minimize, maximize, or otherwise optimize a cost function (e.g., a reward function) for one or more constraints by adjusting one or more control variables over a planning period. In some embodiments, the MPC / optimization system 722 may use a digital twin 718 for the system 728 as a model of the system 728, thereby estimating the value of the objective function or imposing constraints on the objective function. In some embodiments, the MPC / optimization system 722 is configured to produce high-level control decisions for the system 728, and such an MPC / optimization system may provide these high-level control decisions to the closed-loop controller 720. In some embodiments, the dashboard 726 generates a dashboard for the technician using a digital twin and / or digital twin output, and provides such a dashboard to the technician.
[0054] process
[0055] Referring to Figure 2, flowcharts of a process 200 for generating a digital twin based on one or more ROMs are shown according to several embodiments. Process 200 comprises steps 202-214, and such process may be carried out by system 100 or by twinning tool 702. Process 200 may be advantageously carried out to generate a digital twin of a system (e.g., a hydrocarbon well pump) with reduced complexity compared to various other simulations. The digital twin may be embodied or used in various applications, such as a closed-loop or feedback controller, MPC or optimization system, one or more simulators, dashboards, and / or edge devices of the system represented by the digital twin.
[0056] Process 200, according to some embodiments, includes a step (202) of performing multiple simulations in a hyperdimensional space to generate an output. In some embodiments, step 202 is configured to perform the simulation using a simulator 710. In some embodiments, step 202 is performed by a DOE manager 712 and the simulator 710. The simulation results may include a multidimensional graph showing the relationships between various variables of the system represented by the digital twin, a surface plot, etc.
[0057] Process 200, according to some embodiments, includes step (204) of generating one or more reduced-dimensional or degenerate models (ROMs) using regression or machine learning methods with the output of multiple simulations. In some embodiments, step 204 is carried out by a ROM generator 714 using any of the techniques described in detail above with reference to Figure 7. In some embodiments, the ROMs include a calibration ROM, an inverse ROM, a forward ROM, and / or a transient ROM. The calibration ROM is preferably configured, according to some embodiments, to estimate one or more set parameters (e.g., PI, friction coefficient, etc.). In some embodiments, the inverse ROM is preferably configured to estimate one or more system variables (e.g., GOR, WC, fluid flow rate, pump leakage rate, etc.). For example, the inverse ROM is preferably configured to solve an inverse problem, which, according to some embodiments, takes various controllable variables, set parameters, calibration variables, and measured variables for specific conditions of the system, and is preferably configured to estimate system variables that must be in the case of achieving the measured variables and controllable variables. In some embodiments, the forward ROM is configured to predict or estimate predictor variables (e.g., measurable variables, system variables, etc.) given certain conditions (e.g., given different values for controllable variables, set parameters, or calibration variables).
[0058] Process 200, according to some embodiments, includes a generating step (206) of generating a digital twin of a system using one or more ROMs, the digital twin including at least one of the one or more ROMs. In some embodiments, the digital twin is digital twin 116, digital twin 602, etc., or any other digital twin described herein. Step 206 is preferably carried out by a digital twin generator 716 of a twinning tool 702, according to some embodiments. The digital twin may include a forward ROM, an inverse ROM, and / or a calibration ROM, and such a digital twin may, according to some embodiments, include interrelationships between the ROMs such that the output of one particular ROM is fed as input to another ROM. In some embodiments, the digital twin is an instantiation of one or more ROMs, and such a digital twin uses real-time data (e.g., sensor data) from the system it represents. Thus, steps 202-206 are preferably carried out offline while the ROMs are used online with real-time data.
[0059] Process 200, according to several embodiments, includes step (208) of predicting or outputting values of one or more variables of a system for real-time applications using a digital twin. In some embodiments, the digital twin operates in online mode and is configured to receive real-time data from the system it represents. The real-time data received by the digital twin may, according to several embodiments, be determined by the specific application of the digital twin. In some embodiments, the digital twin may use ROM to output different sets of variables, including predictor variables, system variables, and calibration variables. In some embodiments, predictor variables may include pressure, temperature, torque, fluid flow rate, and pump leakage rate of the system represented by the digital twin. In some embodiments, system variables may include GOR, WC, fluid flow rate, and pump leakage rate of the system represented by the digital twin. In some embodiments, calibration variables may include PI and friction coefficient.
[0060] Process 200, according to several embodiments, includes a step (210) of performing an independent test against the measurable output of the system represented by the digital twin. In some embodiments, for example, if the system is a hydrocarbon well pump, the test may be a well test to measure the GOR, WC, and liquid flow rate of the hydrocarbon well pump. In some embodiments, step 210 is performed by a technician at the system represented by the digital twin. The well test may include a step of updating one or more calibration knobs or quasi-static parameters of the digital twin.
[0061] Process 200, according to some embodiments, includes a step (212) of performing calibration based on the results of independent tests. In some embodiments, step 212 is performed by a digital twin generator 716 by providing new calibration values as inputs to various ROMs of the digital twin. In some embodiments, step 212 is performed by a simulator 710, a DOE manager 712, and a ROM generator 714, which thereby regenerate the ROMs based on the newly obtained calibration values.
[0062] Process 200, according to some embodiments, includes a step (214) of updating one or more parameters of the digital twin or the ROM of the digital twin based on calibration. Step 214 is preferably performed by a simulator 710, a DOE manager 712, and a ROM generator 714, according to some embodiments. In response to the performance of step 214, process 200 may return to step 208, or alternatively, to step 202. It should be understood that steps 210-214 (or alternatively, steps 202-214) may be performed in a non-real-time manner (e.g., monthly, every six months). In some embodiments, steps 212-214 (or steps 202-214) are performed only in response to step 210 if independent tests performed indicate that recalibration of the digital twin is required.
[0063] Examples of concrete examples
[0064] Referring next to Figure 8, the systems and methods described herein may, according to some embodiments, be embodied in generating a digital twin or inverse ROM for an ESP well 826. Schematic Figure 800 shows exemplary configurations of various simulation models or simulators that, according to some embodiments, can be used to generate an inverse ROM for an ESP well 826. In some embodiments, the inverse ROM for the ESP well 826 includes one or more analytical models 802, one or more numerical models 804, a drive unit model 806, a formation model 814, and a flowline model 824. The analytical model 802, according to some embodiments, includes a transformer model 808, a cable model 810, and a motor model 812. The numerical model 804, according to some embodiments, includes a pipe model 816, a pump model 818, a well model 820, and a choke model 822. In some embodiments, the various models described herein utilize variables or parameters such as voltage, current, frequency, speed, torque, density, viscosity, formation pressure, productivity index (PI), derating, intake temperature, suction pressure, inflow rate, output wellhead pressure, flow rate, WC, and GOR.
[0065] In some embodiments, one or more of the variables or parameters are measured values (e.g., measured and provided to the digital twin as real-time data). In some embodiments, one or more variables or parameters are obtained by performing a hyperdimensional simulation (e.g., performed when generating an inverse ROM). In some embodiments, one or more variables or parameters may be obtained by performing field tests or determined by a calibration ROM. In some embodiments, one or more variables or parameters are measured values or set values (e.g., known values or fixed values).
[0066] Referring now to Figure 9, schematic Figure 900 shows a calibration ROM 902 and an inverse ROM 904 that, according to some embodiments, work together to model an ESP well (e.g., ESP well 826). According to some embodiments, the calibration ROM 902 controls speed, torque, P i and P d The calibration ROM 902 receives inputs of measured flow rate Q, WC, and GOR (e.g., values for a PID control scheme), as well as predicted pump leakage (PL). Using these inputs, the calibration ROM 902 outputs calibration variables, including updated choke opening and updated torque derating, according to some embodiments. The calibration variables are provided as inputs to the inverse ROM 904, which, according to some embodiments, uses the updated choke opening and updated torque derating to predict flow rate Q, WC, GOR, and PL. In some embodiments, the calibration ROM 902 and inverse ROM 904 are often instantiated at specific operating points in the ESP well and brought online so that they can function as a digital twin of the ESP well with real-time data. The calibration ROM 902 and inverse ROM 904 are often made or generated, according to some embodiments, using the techniques described in detail above (e.g., by the twinning tool 701 described in detail with reference to Figure 7).
[0067] Referring to Figure 10, Graph 1000 shows, according to some embodiments, the difference between the estimated flow rate and the measured flow rate of the ROM shown in schematic Figure 900. Graph 1000 also shows, according to some embodiments, the difference between the measured flow rate and the estimated flow rate over time. If the error between the measured flow rate and the estimated flow rate exceeds a corresponding threshold, according to some embodiments, the calibration ROM 902 and the inverse ROM 904 may be readjusted or calibrated to minimize the overall error.
[0068] Referring next to Figure 11, Graph 1100 shows, according to some embodiments, the difference between the estimated WC and the measured WC of the ROM shown in schematic Figure 900. Graph 1100 also shows, according to some embodiments, the difference between the estimated WC and the measured WC over time. If the error between the measured WC and the estimated WC exceeds a corresponding threshold, according to some embodiments, the calibration ROM 902 and the inverse ROM 904 may be readjusted or calibrated to minimize the overall error.
[0069] Referring next to Figure 12, Graph 1200 shows, according to some embodiments, the difference between the estimated GOR and the measured GOR of the ROM shown in schematic Figure 900. Graph 1200 shows, according to some embodiments, the difference between the estimated GOR and the measured GOR over time. If the error between the measured GOR and the estimated GOR exceeds a corresponding threshold, according to some embodiments, the calibration ROM 902 and the inverse ROM 904 are preferably readjusted or calibrated to minimize the overall error.
[0070] Referring next to Figure 13, Graph 1300 shows estimated PL over time according to several embodiments. In some embodiments, PL may be difficult to measure, and therefore, a comparison between estimated PL and measured PL cannot be obtained. However, if the errors between estimated flow rate and measured flow rate, estimated WC and measured WC, and estimated GOR and measured GOR are minimal, the estimated PL can be considered accurate with confidence.
[0071] Referring next to Figures 14 and 15, Figure 1500 relating to the gas lift well 1400 shows various simulation models or simulators that can be used to generate forward ROM for the gas lift well 1400, according to several embodiments. The models may, according to several embodiments, include a dry hole (DH) well model 1514, a formation model 1516, an injection well model 1512, a production well model 1510, a gauge model 1508, a sulfur (SF) valve model 1502, a flowline model 1504, and a stock tank model 1506. In several embodiments, the various models described herein are configured to use variables or parameters, such as formation pressure, GOR, WC, PI, fluid flow rate, gas flow rate, downhole pressure, injection pressure, injection flow rate, wellhead pressure, flowline pressure, etc. In several embodiments, one or more of the variables or parameters described herein are variables that can be measured at any time. In several embodiments, one or more of the variables or parameters described herein are unmeasurable values. In some embodiments, one or more of the variables or parameters described herein are values that can be obtained from well testing or output of the calibration ROM, or by calibration in a different manner. The forward ROM in schematic Figure 1500 may, according to some embodiments, be generated using the systems and methods described herein (for example, by the twinning tool 702 described in detail above with reference to Figure 7).
[0072] Example dashboard
[0073] Referring next to Figure 16, a dashboard 1600 that can be presented on a web page is shown according to several embodiments. According to several embodiments, the dashboard 1600 may be one of a dashboard 726 based on the output of a digital twin (e.g., digital twin 718) or the digital twin itself. In several embodiments, the dashboard 1600 includes one or more graphs or tables of time-series data of the system represented by the digital twin, such as various outputs, predicted values, estimated values, system values, etc. For example, the graphs may include a gas lift performance graph, a node analysis graph, a pressure-to-temperature ratio graph, a temperature graph, a liquid flow rate graph, etc. According to several embodiments, the dashboard 1600 may be generated and provided to an engineer for the following analysis and control. According to several embodiments, the dashboard 1600 may further include various menus or submenus for navigation.
[0074] advantage
[0075] Advantageously, the systems and methods described herein can be used to provide reliable digital twins of real-world systems. Using a digital twin, which is an instantiation of one or more ROMs, can improve computational speed in contrast to the use of simulations, which can be computationally intensive. The digital twin is preferably embodied in online mode to use real-time measurements from the real-world system (e.g., a hydrocarbon well pump) for real-time control, real-time analysis, real-time optimization, etc. The digital twin is preferably calibrated periodically to ensure that the digital twin accurately represents the real-world system.
[0076] Optimized calibration ROM
[0077] Referring to Figures 17 to 19, various embodiment examples of the calibration ROM shown as a block diagram are shown according to several embodiments. Specifically, Figure 17 shows the overall workflow of the calibration ROM (e.g., calibration ROM 500, calibration ROM 902, etc.), Figure 18 shows an embodiment example of a first optimization with the calibration ROM, and Figure 19 shows an embodiment example of a second optimization with the calibration ROM. Any of the block diagrams, technologies, systems, etc. described herein with reference to Figures 17 to 19 can be embodied by a twinning tool 702 (e.g., its processing circuit system 704), a remote processing circuit system, a distributed processing circuit system, one or more servers, a local controller, a cloud computing system, etc., or any combination thereof.
[0078] Referring to Figure 17, in some embodiments, schematic figure 1700 shows an example of a calibration ROM 1702. In some embodiments, the calibration ROM 1702 is generated by a ROM builder 1704 that uses curve fitting techniques to determine the parameters of the calibration ROM 1702 (for example, to instantiate the calibration ROM 1702 based on simulation data shown as DOE simulation data). In some embodiments, the calibration ROM 1702 is generated using any of the techniques described in detail above with reference to Figures 1 to 16 (for example, by a twinning tool 702). For example, the DOE simulation data may be the output of a simulator 710 and / or a DOE manager 712, and the ROM builder 1704 may be a ROM generator 714.
[0079] Once constructed, generated, and instantiated by the ROM builder 1704, the calibration ROM 1702 is preferably configured to predict, output, estimate, and calculate one or more quasi-static parameters given predictor variable inputs. The predictor variables may include any calibration or normal measurements provided by a system (e.g., by system 728, by sensors in the ESP well 826, etc.). For example, the predictor variables may be measurements of various parameters of a twinned system (e.g., system 728). In some embodiments, if the system is an ESP, the predictor variables may include GOR.
[0080] Quasi-static parameters are parameters used by inverse ROMs to predict one or more predictor variables (e.g., predicted versions of predictor variables, in this case the predictor variables are measured values). Quasi-static parameters are often separator efficiency in the case of ESP, for example, and therefore, one or more inverse ROMs are often used to predict the value of GOR (e.g., one of the predictor variables).
[0081] Referring to Figure 18, schematic diagram 1800 of a first optimization embodiment is shown according to several embodiments. Schematic diagram 1800 includes a ROM builder 1802, which is configured to generate one or more calibration ROMs, shown as calibration ROM 1804 and calibration ROM 1806, an optimizer 1810, and an adjuster 1808. The first optimization system shown in schematic diagram 1800 may be implemented on any processing circuit system of the digital twin (e.g., twinning tool 702, remote processing circuit system, etc.). The first optimization embodiment shown in schematic diagram 1800 may be implemented to determine a coefficient or derating coefficient that achieves convergence or stability together with other coefficients for quasi-static parameters of the digital twin (e.g., derating coefficients). For example, calibration ROM 1804 may be a calibration ROM for a first quasi-static parameter, which outputs the coefficient of the first quasi-static parameter to the inverse ROM and calibration ROM 1806. Similarly, calibration ROM 1806 may be for a second quasi-static parameter, which may output the calculated second quasi-static parameter or the coefficient of the second quasi-static parameter to the optimizer 1810 and / or inverse ROM. In some embodiments, two or more calibration ROMs 1804-1806 are used in series, with each calibration ROM associated with a corresponding quasi-static parameter and outputting the corresponding quasi-static parameter to another of the calibration ROMs. Each of the many calibration ROMs may also be provided with a specific unknown quasi-static parameter as input.
[0082] As shown in Figure 18, the optimizer 1810 can monitor the quasi-static parameters received from the calibration ROMs 1804 and 1806 to determine whether the quasi-static parameters are changing or whether they have converged (e.g., are stable). If the quasi-static parameters have not converged, the optimizer 1810 may inform the adjuster 1808, which may adjust or change one of the quasi-static parameters (e.g., an unknown quasi-static parameter) and provide the adjusted or changed quasi-static parameter to the calibration ROMs 1804 and 1806. The optimizer 1810 and adjuster 1808 continue checking the quasi-static parameters and adjusting at least one of them, until finally the optimizer 1810 confirms that the quasi-static parameters have converged or are no longer changing. This means that the value of the unknown quasi-static parameter is found, and as a result, an internally stable or converged ROM or digital twin is obtained. Quasi-static parameters, including unknown values or coefficients, should preferably be provided to the inverse ROM as input.
[0083] Advantageously, the first optimization embodiment shown in schematic 1800 of Figure 18 is best used for undefined or undetermined problems (e.g., problems where one or more of the quasi-static parameters are unknown). The quasi-static parameters should be adjusted, modified, and monitored to observe the degree of convergence of these parameters until convergence or stability is satisfied.
[0084] Referring to Figure 19, a schematic diagram 1900 of a second optimization embodiment is shown according to several embodiments. Schematic diagram 1900 includes a ROM builder 1902 for a calibration ROM, i.e., calibration ROM 1906; a ROM builder 1904 for an inverse ROM, i.e., inverse ROM 1908; a cost function 1910; and an optimizer 1912. According to several embodiments, the ROM builder 1902 is configured to perform calculation, determination, instantiation, etc., of the calibration ROM 1906, and the ROM builder 1904 is configured to perform calculation, determination, instantiation, etc., of the inverse ROM 1908. In several embodiments, the ROM builders 1902 and 1904 are configured to embody any of the functions or techniques of the ROM generator 714 to generate the inverse ROM 1908 and the calibration ROM 1906. ROM builders 1902 and 1904 are preferably configured to perform a curve fitting method to generate a calibration ROM 1906 and an inverse ROM 1908. In some embodiments, the techniques described herein with reference to Figure 19 are part of an automated calibration check. A second optimization embodiment is preferably performed to check the consistency between the calibration ROM (e.g., the input to the calibration ROM) and the output to the inverse ROM.
[0085] According to several embodiments, the calibration ROM 1906 receives various values of calibration measurements indicated as predictor variables and outputs predicted quasi-static parameters. According to several embodiments, the predicted quasi-static parameters are provided as input to the inverse ROM 1908 in combination with the normal measurements.
[0086] According to several embodiments, the calibration ROM 1906 is configured to output predicted quasi-static parameters to the inverse ROM 1908 based on predictor variables (e.g., measured values of the predictor variables and other normal measurements). According to several embodiments, the inverse ROM 1908 receives the predicted quasi-static parameters from the calibration ROM 1906 and one or more normal measurements of the system's calibration points. In several embodiments, the inverse ROM 1908 is configured to output a predicted response (e.g., predicted flow rate) using the predicted quasi-static parameters and normal measurements. According to several embodiments, the cost function 1910 obtains both the response predicted by the inverse ROM 1908 for the predicted quasi-static parameters and normal measurements, and the measured actual response. In several embodiments, the predicted response is the response that is expected to occur in the system given the current measurement conditions (normal measurements) and the predicted quasi-static parameters that define the system's behavior. Since the current situation is the measured condition and the predicted response can be compared to the actual response, any difference or discrepancy between the system's predicted response and the system's actual response indicates that adjustments should be made to the quasi-static parameters in order to more accurately define the system's behavior.
[0087] The cost function 1910, according to several embodiments, compares the predicted response of the system with the actual response and quantifies the error between the predicted and actual responses (e.g., prediction error). The optimizer 1912 uses the error provided by the cost function 1910 and adjusts the calibration ROM 1906, the prediction quasi-static parameters, or both, to bring the error toward zero (e.g., minimizing the cost function 1910).
[0088] The cost function 1910 can calculate the error between the predicted response and the actual response for a single variable or parameter, or for a number of variables or parameters. When the cost function 1910 models a number of variables or parameters (e.g., flow rate, GOR, etc.), each of the prediction errors associated with the number of variables or parameters is often assigned a weighted value, so that the cost function 1910 outputs an overall or weighted prediction error that can be minimized by the optimizer 1912 (by adjusting the predicted quasi-static parameters or by adjusting the calibration ROM 1906). In some embodiments, the optimization problem solved by the optimizer 1912 includes constraints on the variability of the quasi-static parameters, so that the optimizer 1912 minimizes the prediction error (e.g., the output of the cost function 1910) by adjusting the calibration ROM 1906 and / or the predicted quasi-static parameters. The functions and techniques described herein with reference to Figure 18 or Figure 19 may, according to some embodiments, be implemented at specific operating points of the system (e.g., calibration points) or at multiple operating points of the system (e.g., multiple calibration points).
[0089] Transient ROM
[0090] Referring to Figure 20, a schematic diagram 2000 of the workflow for transient ROM ("tROM") is shown according to several embodiments. Schematic diagram 2000 includes a ROM builder 2002, a calibration ROM 2004, a parameterized filter function 2006, and a deconvolution 2008. In some embodiments, the ROM builder 2002 is identical or similar to any of the ROM builders 1904, 1902, 1802, 1704, ROM generator 714, etc. According to some embodiments, the tROM uses convolution and deconvolution as opposed to the use of curve fitting, i.e., the tROM predicts the time curve as a function of another time curve (e.g., the transient response that occurs when a time-varying input is given).
[0091] In some embodiments, the calibration ROM is configured to receive measured values of predictor variables and output quasi-static parameters. According to some embodiments, these quasi-static parameters are used as parameters in a filter, indicated as a parameterized filter function 2006. In some embodiments, the parameterized filter function 2006 is an analytical parameterized model, and the quasi-static parameters are parameters of the model. In some embodiments, the model or parameterized filter function 2006 is configured to predict or compute dependencies between dynamic behaviors. In some embodiments, the output of the parameterized filter function 2006 is deconvolved at deconvolution 2008 to determine the predicted response of the system. In some embodiments, the parameterized filter function 2006 and deconvolution 2008 define tROM2010.
[0092] Data synchronization
[0093] Referring to Figure 21, Graph 2100, which shows the time-series data collected from a system (e.g., ESP), includes a series of GOR points, a series of WC points, a series of fluid flow points, a series of discharge pressures, a series of suction pressures, a series of tubing head pressures, and a series of drive frequencies. According to some embodiments, Graph 2100 shows the performance of a well test and the recording of GOR data points, WC data points, and fluid flow data points. As shown in Graph 2100, the first well test 2114 is performed between times t2, t3 (represented by lines 2104, 2106), but the data for the first well test (i.e., GOR, WC, and fluid flow values) is recorded as having been obtained at time t1 (represented by line 2102). Similarly, the second well test 2116 is conducted between times t5 and t6 (represented by lines 2110 and 2112), while the data for the second well test (i.e., GOR, WC, and fluid flow rate values) is recorded as having been obtained at time t4 (represented by line 2108). Therefore, as can be seen in Figure 21, the timestamps of the data for the well test (e.g., calibration data) are not synchronized with the actual time the well test is conducted. This may be due to the fact that the GOR, WC, and fluid flow rate data are obtained from different sources than discharge pressure, suction pressure, etc. However, using digital twin data that is not synchronized with other data results in a discrepancy in the output of the digital twin. In some embodiments, the calibration data for the well test (e.g., GOR, WC, and fluid flow rate) is the average value collected over the duration of the well test. Therefore, in order to synchronize calibration data from a well test from one source with other data from a well test from a second source, it may be necessary to synchronize the time periods (for example, synchronizing both the start and end times associated with the calibration data and the other data). In some embodiments, GOR, WC, and liquid flow rate are independent test results, as shown in Figure 7.
[0094] In some embodiments, synchronization is performed manually by a technician. For example, the collected data may be real-time inputs (e.g., sensor data obtained from system 728) or data reported by a technician conducting well tests. In some embodiments, the technician may synchronize the data to account for errors in the well test data relative to the time of calibration or when the well test was performed, and for different time zones between different data sources. In some embodiments, synchronization is performed automatically by a digital twin 718 or a digital twin generator 716. For example, the digital twin generator 716 may obtain data from different sources (e.g., real-time inputs or historical data from system 728, and independent test results provided by a technician) and identify identical data points between the two sources (e.g., identical values in a particular set of data). The digital twin generator 716 may synchronize the timestamps of the data from either source so that the timestamps of identical data points match, and also adjust the remainder of the data in the sources, thereby synchronizing the data from the two sources. In some embodiments, the graph 2100 is displayed to the user (for example, via a display screen on the dashboard 1600) so that the user can observe the response of various obtained data and synchronize the calibration data with other data sources.
[0095] Weighted calibration data
[0096] Referring to Figure 22, Graph 2200 shows, according to several embodiments, data obtained from the ESP (e.g., discharge pressure, suction pressure, tubing head pressure, and drive frequency), predicted fluid flow rate (indicated by a series of points 2202), and well test or calibration data sets 2204, 2206 (including GOR, WC, and fluid flow rate). Graph 2200 shows, according to several embodiments, a first well test 2208 and a second well test 2210. In some embodiments, the predicted fluid flow rate is the output of a digital twin generated using calibration data sets 2204, 2206. In some embodiments, the weighting of calibration sets 2204 or 2206, or the weighting of the digital twin output (e.g., fluid flow rate), is assigned based on the expected accuracy of well test 2208 or 2210. In some embodiments, the weighting is a user-assigned value. In some embodiments, the weighting is in the range of 0% to 100%. For example, well test 2210 may be shown to have a shorter duration than well test 2208, and therefore may provide less reliable data from well test 2210. Therefore, it is preferable for the user to provide a 50% weight to calibration dataset 2206 and a 100% weight to calibration data set 2204, thereby generating a digital twin. The weighting is preferably used to determine a weighted mean of the values in calibration data sets 2204 and 2206 (which can be used in any of the techniques described in detail above in relation to any of the calibration ROMs). In some embodiments, the time synchronization technique described in detail above with reference to Figure 21 and the weighting technique described with reference to Figure 22 are implemented in a closed-loop manner in relation to the digital twin. In some embodiments, graphs 2200 and / or 2100 are presented to the user on a dashboard 1600 so that the user can provide different weights to calibration data 2204, 2206 (for example, to the digital twin generator 716), adjust time synchronization, etc., and observe the resulting effects of the weight adjustments and time synchronization to the digital twin output.
[0097] Quasi-static parameter threshold
[0098] Referring to Figure 23, Graph 2300 shows the tracking status of various quasi-static parameters of the digital twin over time (e.g., quasi-static parameters of the digital twin 718), according to several embodiments. In some embodiments, Graph 2300 shows the tracking values of a first quasi-static parameter, a second quasi-static parameter, and a third quasi-static parameter over time. In some embodiments, the twinning tool 702 or the digital twin 718 is configured to compare the values of the quasi-static parameter over time (e.g., a series of points 2302, 2304, 2306) with corresponding thresholds (e.g., thresholds 2308, 2310, 2312). In some embodiments, the thresholds 2308, 2310, 2312 are based on the average of the last n values of the quasi-static parameter. If the value of a quasi-static parameter falls outside the thresholds 2308, 2310, and 2312, this indicates that an inappropriate calibration test (e.g., a well test) has been performed, and therefore a warning may be issued to the user (e.g., by the twinning tool 702, dashboard 726, etc.). In some embodiments, thresholds 2308, 2310, and 2312 may cause a quasi-static parameter to deviate by a certain percentage of the value of the quasi-static parameter or by the average of the number of values of the quasi-static parameter. For example, if the value of the second quasi-static parameter is 0.55, the threshold may be 0.55 ± 0.05 (0.55).
[0099] Another calibration ROM
[0100] Referring to Figure 24, schematic Figure 2400 shows a modified version of any of the calibration ROMs described herein, according to several embodiments. It should be understood that the system shown in schematic Figure 2400 and described herein with reference to Figure 24 can be used in place of any of the calibration ROMs described throughout this specification.
[0101] The calibration ROM can be embodied as an optimization system, as shown in Figure 24, according to several embodiments. Specifically, the inverse ROM 400 receives controllable variables 502 and settable parameters 504, and can output one or more measured predicted values (e.g., predicted values of measurable variables). The measured predicted values may, according to several embodiments, be predicted values of pressure, temperature, torque, GOR, WC, flow rate, or any other measurable variable or parameter. In several embodiments, the measured predicted values and measured variables 508 are used to calculate a prediction error (e.g., the difference between the measured predicted values and the measured variable 508) (e.g., at the joint 2402). The prediction error can be used in a weighted cost function 2404, which is provided to an optimization solver 2406. The optimization solver 2406 can, according to several embodiments, output, adjust, predict, etc., an unmeasurable variable 506 with respect to the inverse ROM 400. Thus, the optimization solver 2406 can change or adjust the value of the unmeasurable variable 506 to move the weighted cost function 2404 or prediction error toward zero. The unmeasurable variable 506 provided to and used by the inverse ROM 400 for the calculation of measured predictions is preferably a form of adjustment parameter or internal parameter used by the inverse ROM 400. Therefore, finding the optimal value of the unmeasurable variable 506 with respect to the inverse ROM 400 provides an inductive optimization that can be performed instead of the calibration ROM.
[0102] Configuration of the Exemplary Embodiment
[0103] As used herein, the terms “approximately,” “about,” “substantially,” and similar terms are intended to have a broad meaning consistent with the usual and accepted use by those skilled in the art relating to the subject matter of this disclosure. Those skilled in the art should understand that these terms allow for the description of certain features described and claimed without restricting the scope of such features to the numerical range provided. Therefore, these terms should be interpreted as indicating that minor or insignificant modifications or alterations of the subject matter described and claimed are considered to fall within the scope of the invention as described in the claims.
[0104] It should be noted that the term “exemplary” as used herein to describe various embodiments is intended to indicate that such embodiments are possible examples, representative examples, and / or illustrations of possible embodiments (and such term does not necessarily mean that such embodiments are unexpected or best examples).
[0105] As used herein, terms such as “joined” and “connected” refer to the direct or indirect joining of two members to each other. Such joining may be immovable (e.g., permanent) or movable (e.g., removable, detachable, etc.). Such joining may be achieved by two members, or by two members integrally formed with each other as a single, integrated body and any additional intermediate members, or by two members or two members attached to each other and any additional intermediate members.
[0106] In this specification, when we refer to the position of an element (e.g., "top," "bottom," "up," "down," etc.), these terms are used merely to describe the orientation of the various elements shown in the figures. It should be noted that the orientation of the various elements may vary according to other exemplary embodiments, and such variations are included in this disclosure.
[0107] Furthermore, the term "or" is used in its inclusive sense (rather than its exclusive sense), and as a result, for example, when used to link elements shown as a list together, the term "or" means one, some, or all of the elements in that list. After linking, for example, the expression "at least one of X, Y, and Z" is understood in the context in which it is commonly used to mean that, unless otherwise specified, an item, term, etc. may be X, Y, Z, X and Y, X and Z, Y and Z, or X, Y, and Z (i.e., any combination of X, Y, and Z). Thus, such linking words do not generally mean, unless otherwise specified, that a particular embodiment requires the presence of at least one X, at least one Y, and at least one Z, respectively.
[0108] It is important to note that the configuration and arrangement of elements of systems and methods as shown in the exemplary embodiments are illustrative only. Although only a few embodiments of this disclosure have been described in detail, many modifications (e.g., variations in the size, dimensions, structure, shape and proportions, parameter values, mounting arrangements, material use, color, and orientation of various elements) are possible, as will be readily apparent to those skilled in the art considering this disclosure, and these do not significantly deviate from the novel teachings and merits of the subject matter described herein. For example, elements shown as integrally formed may consist of numerous parts or elements. It should be noted that the elements and / or assemblies of components described herein can be made of any of the wide range of materials that provide sufficient strength or durability in any of the many colors, textures, and combinations. Thus, all such modifications fall within the scope of the invention. Other substitutions, modifications, changes, and omissions of preferred and other embodiments of design, operating conditions, and arrangements can be made without departing from the spirit of the invention as described in the scope of this disclosure or the appended claims.
Claims
1. A method for generating and using a digital twin of a hydrocarbon system, wherein the method is The process involves running multiple simulations using the Design of Experiments (DOE) method to generate a hyperdimensional space that maps the simulation inputs, outputs, and attributes, and The steps include generating one or more low-dimensional models (ROMs) using regression or machine learning methods with the hyperdimensional space obtained from the multiple simulations, Based on data from field tests of the hydrocarbon system, a digital twin of the hydrocarbon system is generated by instantiating one or more ROMs at the operating points of the hydrocarbon system, and the digital twin is configured to use real-time data obtained from the hydrocarbon system. The steps include: using the digital twin to estimate the values of one or more variables of the hydrocarbon system in real time; A method comprising the step of controlling the hydrocarbon system based on the estimated values of one or more variables.
2. The one or more ROMs mentioned above are Forward ROM, Inverse ROM, or The method according to claim 1, comprising a calibration ROM.
3. The method according to claim 2, wherein the forward ROM is configured to predict the value of one or more variables of the hydrocarbon system for a hypothetical scenario based on the values of one or more controllable variables, the values of one or more setting parameters, and the values of one or more calibration variables.
4. The method according to claim 2, wherein the inverse ROM is configured to solve the inverse problem and estimate the value of one or more system variables of the hydrocarbon system based on the value of one or more controllable variables, the value of one or more setting parameters, the value of one or more calibration variables, and the value of one or more measurement variables of the hydrocarbon system.
5. The method according to claim 2, wherein the calibration ROM is configured to estimate one or more calibration variables based on the values of one or more controllable variables, one or more setting parameters, one or more unmeasurable variables, and one or more measured variables for the forward ROM or the inverse ROM.
6. The method according to claim 1, wherein the digital twin includes the instantiation of a plurality of ROMs, and one or more of the plurality of ROMs are configured to provide outputs to different ROMs of the plurality of ROMs as inputs.
7. The steps include: conducting the field test at the hydrocarbon system to obtain calibration data; The method according to claim 1, further comprising at least one of the following steps: regenerating one or more ROMs and using the calibration data to regenerate the digital twin to generate a calibrated digital twin; or providing the calibration data to a calibration ROM so that it can be used when updating one or more other ROMs of the digital twin.
8. The method according to claim 7, wherein the playback step includes a step of automatically selecting the optimal combination of both the DOE sampling method and the ROM model and parameters in the simultaneous presence of the calibrated measurement value and the calibration matching criterion.
9. The method according to claim 8, wherein the regeneration step includes an iterative process and a Bayesian regularization method.
10. A system for generating and using a digital twin of a hydrocarbon system, wherein the system is Including a processor, the processor is Multiple simulations are performed in a hyperdimensional space to generate output, Using the outputs of the aforementioned multiple simulations, one or more lower-order models (ROMs) are generated using regression or machine learning methods. Based on data from field tests of the hydrocarbon system, a digital twin of the hydrocarbon system is generated by instantiating one or more ROMs at the operating points of the hydrocarbon system, and the digital twin is configured to use real-time data obtained from the hydrocarbon system, and A system configured to operate the hydrocarbon system based on the output of the digital twin.
11. The aforementioned processor further, The system according to claim 10, configured to estimate the value of one or more variables of the hydrocarbon system in real time using the digital twin and the real-time data.
12. The system according to claim 11, wherein the real-time data includes at least one of the wellhead pressure, flowline pressure, injection pressure, injection rate, pump discharge pressure, pump suction pressure, voltage, current, or motor temperature of the hydrocarbon system.
13. The processor is configured to perform an automatic calibration check of the digital twin, and the operation of performing the automatic calibration check is: An operation to obtain measured values of one or more predictor variables of the hydrocarbon system, An operation to determine one or more quasi-static parameters using the measured values of one or more predictor variables, An operation to determine whether one or more of the aforementioned quasi-static parameters have converged, The system according to claim 10, comprising the operation of adjusting one or more of the predictor variables in response to a determination that one or more of the quasi-static parameters have not converged, to re-determine the one or more quasi-static parameters, and then determining again whether the one or more quasi-static parameters have converged.
14. The processor is configured to perform an automatic calibration check of the digital twin, and the operation of performing the automatic calibration check is: An operation to obtain measured values of one or more predictor variables of the hydrocarbon system, An operation to determine one or more quasi-static parameters using the measured values of one or more predictor variables, An operation to determine the predicted response using one or more quasi-static parameters, The operation of comparing the predicted response with the actual response of the hydrocarbon system to determine the prediction error of the response, and The system according to claim 10, comprising the operation of adjusting the quasi-static parameter and then determining the predicted response again to minimize the prediction error, and then comparing the predicted response with the actual response again to determine the prediction error of the response.
15. The system according to claim 10, wherein at least one of the one or more ROMs is a transient ROM, the transient ROM includes a filter function, the plurality of parameters of the filter function being one or more quasi-static parameters output by a calibration ROM, and the filter function is configured to determine a predicted response given one or more measured values of the hydrocarbon system using deconvolution and the filter function.
16. The system according to claim 15, wherein the processor is configured to instantiate one or more ROMs of the digital twin using a plurality of measurements from a first data source and data of the operating location from a second data source, and the plurality of measurements from the first data source and the data of the operating location are synchronized in time with respect to each other.
17. The system according to claim 16, wherein the processor is configured to automatically synchronize in time the plurality of measurement values from the first data source with the data of the operating location from the second data source.
18. The system according to claim 10, wherein the processor is configured to instantiate one or more ROMs using a plurality of data of the operating points of the hydrocarbon system, each of the plurality of data of the operating points includes a weighting that indicates the confidence coefficient of each of the plurality of data of the operating points.
19. The system according to claim 10, wherein the processor is configured to recalculate the parameters of one or more ROMs over time and to monitor changes in the parameters of one or more ROMs, and the processor is configured to warn an engineer in response to changes in the parameters of one or more ROMs by an amount greater than a threshold.
20. A twinning tool for generating and using a digital twin of a hydrocarbon system, wherein the twinning tool has a processing circuit system, and the processing circuit system is By performing multiple simulations using the Design of Experiments (DOE) method, a hyperdimensional space is generated that maps the inputs, outputs, and attributes of the simulations. Using the hyperdimensional space obtained from the aforementioned multiple simulations, multiple low-dimensional models (ROMs) are generated using the curve fitting method. By performing field tests at the hydrocarbon system and providing the resulting calibration data as input to the multiple ROMs, multiple quasi-static parameters are determined. A digital twin of the hydrocarbon system is generated based on the plurality of quasi-static parameters and the plurality of ROMs. Using the aforementioned digital twin, the response of the hydrocarbon system is predicted over a future planned period, and, A twinning tool configured to display to an engineer the predicted response of the hydrocarbon system over the aforementioned future planned period.
21. The system according to claim 10, wherein the field test is a field well test, the field well test is performed periodically, and the processor is configured to periodically receive data from the field well test and recalibrate the digital twin.