Oilfield services firms are frequently retained to handle projects that require specified criteria to be met when designing and completing the projects. Many such projects can be designed and performed as requested. However, the specified criteria often restrict project parameters that have an effect on other parameters, and such secondary effects must be considered when designing the project. For instance, stipulating that very high fluid pressures be used in a well for extended periods of time will have a significant impact on fluid costs. In some cases, this impact is so substantial that the project would be better completed at lower pressure, for a shorter period of time, or both. Identifying the optimal balance of pressure, time, and cost (and, more generally, the optimal balance of multiple parameters in any oilfield project) remains a challenge.
Disclosed herein are various techniques for optimizing multiple parameters in an oilfield operation. In general, the techniques entail identifying several models pertaining to the oilfield project, identifying n optimal solutions for one of the models, and then inserting a set of parameter values identified in those n solutions into a different model in an attempt to determine m optimal solutions for that model. This is an iterative process that is repeated until the last model is reached, at which point a single optimal solution for the last model is determined. One or more of the parameter values used in that single optimal solution may then be used as constants in any of the previous models to again determine optimal solutions in those previous models. The optimizations can then be used as desired—for instance, to control oilfield equipment. In this way, each of the previous models is optimized while taking into account the optimizations achieved for other target parameters using the other models. As a result, multiple parameters are simultaneously and optimally balanced.
This concept may best be explained in the context of an illustrative example Each oilfield model contains a target parameter to be optimized and multiple variable parameters that may be adjusted to achieve such optimization. For example, three such models may be identified, with each of the three models containing a different target parameter (e.g., fluid pressure, sound emissions, cost) to be optimized. The models are ranked from first to last in order of the priority of their respective target parameters. For instance, if cost is most important, it is ranked as the first model; similarly, if sound emission is the least important, it is ranked as the last model.
Values for all parameters in the model that will optimize the target parameter for that model are determined. This set of values is called a “solution,” and several such solutions may be identified for the first model. The first and second models will have one or more parameters in common. The values identified for these common parameters in the solutions to the first model are subsequently used in the second model to optimize the target parameter for that model. Several solutions to the second model may be identified in this way. Because some of the parameters in the second and third models will overlap, the values identified for these common parameters in the solutions to the second model are then used in the third model to optimize the target parameter for that model. A single optimal solution is identified for the third model. One or more of the parameter values used in that single solution may then be used in the first model (or, if desired, in the second model) as constants while the remaining parameters in the first model are varied until an optimal solution to the first model is determined. That optimal solution to the first model accounts not just for the target parameter of the first model, but it also accounts for the target parameters of the second and third models. In this way, multiple parameters of interest can be balanced to determine an optimal overall solution. The optimal solution to the first model may then be used to control or otherwise adjust oilfield equipment, as desired. These techniques are described in greater detail below.
The drill collars in the BHA 116 are typically thick-walled steel pipe sections that provide weight and rigidity for the drilling process. The BHA 116 typically further includes a navigation tool having instruments for measuring tool orientation (e.g., multi-component magnetometers and accelerometers) and a control sub with a telemetry transmitter and receiver. The control sub coordinates the operation of the various logging instruments, steering mechanisms, and drilling motors, in accordance with commands received from the surface, and provides a stream of telemetry data to the surface as needed to communicate relevant measurements and status information. A corresponding telemetry receiver and transmitter is located on or near the drilling platform 102 to complete the telemetry link. One type of telemetry link is based on modulating the flow of drilling fluid to create pressure pulses that propagate along the drill string (“mud-pulse telemetry or MPT”), but other known telemetry techniques are suitable. Much of the data obtained by the control sub may be stored in memory for later retrieval, e.g., when the BHA 116 physically returns to the surface.
A surface interface 126 serves as a hub for communicating via the telemetry link and for communicating with the various sensors and control mechanisms on the platform 102. A data processing unit (shown in
Still referring to
X
1
+X
2
+X
3
+X
4
+X
5=TARGET1 (1)
In this first model, X1-X5 and TARGET1 are parameters, and TARGET1 is the target parameter.
The method 400 next comprises determining n solutions to the first oilfield model that optimize the target parameter (step 404). The value of n may be set as desired. In the running example, n=3. Further, a “solution” is defined as a set of parameter values for a model. Thus, for instance, an illustrative solution to the model in (1) may be {X1=1, X2=3, X3=5, X4=7, X5=9, TARGET1=25}. Finally, to “optimize” a parameter within a model means to determine a solution that achieves a predetermined target value for that parameter or to determine a solution that comes closest to achieving that predetermined target value. For purposes of this disclosure and the claims, a predetermined target value need not always be precisely specified. For instance, a predetermined target value for a parameter may in some applications be defined as “the highest possible value” of that parameter or “the lowest possible value” of that parameter. In some instances, multiple solutions may “optimize” a parameter of a model, if those multiple solutions all meet the predetermined target value, all come equally close to meeting the predetermined target value, or all exceed a predetermined threshold value. In some instances, n solutions optimize a parameter of a model if those n solutions are the solutions that meet or come closest to meeting the predetermined target value compared to all other possible solutions. Solutions to some or all models in this disclosure are determined using one or more genetic algorithms Any suitable genetic algorithm(s) may be used.
Because n=3 in the running example, illustrative solutions that optimize TARGET1 in the first model may include:
{X1=1, X2=3, X3=5, X4=7, X5=9, TARGET=25}
{X1=2, X2=4, X3=4, X4=6, X5=9, TARGET1=25}
{X1=3, X2=5, X3=3, X4=5, X5=9, TARGET1=25} (2)
The method 400 then comprises identifying a second oilfield model (step 406). An illustrative model may be:
X
1
+X
2
+X
6
+X
7
+X
8=TARGET2 (3)
The method 400 next includes identifying a set of parameter values used in the n solutions to the first model (step 408). More specifically, all values used in the n solutions for parameters that are common to the two selected models are identified. In the running example, the second model includes X1 and X2 but not X3, X4 or X5. Thus, in step 408, the ranges of values for parameters X1 and X2 are identified—specifically, {X1: 1-3} and {X2: 3-5}.
The method 400 subsequently includes selecting from the set a value that optimizes a target parameter in the second oilfield model (step 410). In some embodiments, the target parameter of the second model has a lower priority level than the target parameter of the first model. In the running example, values between 1-3 and between 3-5 are identified for X1 and X2, respectively, that optimize TARGET2 in the second model. Thus, for instance, the values X1=1 and X2=5 may be identified as the values that optimize TARGET2 in the second model (optimal value for TARGET2 being 10):
{X1=3, X2=5, X6=1, X7=1, X8=2, TARGET2=10} (4)
Note that using different values for X1 from the range 1-3 and/or different values for X2 from the range 3-5 may not necessarily result in a TARGET2 value of 10, since different values for X1 and/or X2 can affect X6-X8 in different (and potentially non-linear) ways.
The method 400 next includes determining an optimal solution to the first oilfield model using the selected value as a constant (step 412). In the running example, X1=1 and X2=5 are used as constants in the first model:
{X1=3, X2=5, X3=10, X4=8, X5=1, TARGET1=25} (5)
Finally, the method 400 includes adjusting oilfield equipment using one or more of the optimizations described in the method 400 (step 414). For example, the final solution for the first model (as described with respect to step 412) may be used to determine various equipment settings. The method is then complete. The method 400 may be modified as desired, including by adding, deleting or modifying individual steps.
{X1=1, X2=5, X3=1, X4=1, X5=2, TARGET2=10}
{X1=3, X2=3, X6=1, X7=2, X8=1, TARGET2=10} (6)
As shown, the values for X1 and X2—which are the parameters the first and second models have in common—are selected from the sets that were obtained from the n solutions to the first model. The remaining values X6-X8 may be varied to obtain the optimal value for target parameter TARGET2.
The method 500 then comprises identifying those values of the common parameters (e.g., X1, X2) that were used in the second model (step 512). For instance, in (6), X1 values were {X1: 1,3} and X2 values were {X2: 5, 3}. The method 500 then includes identifying a third model (step 514) and selecting a value from the subset identified in step 512 that optimizes the target parameter in the third model (step 516). (In some embodiments, the target parameter for the third model has a lower priority level than the target parameter for the first model, the second model, or both.) For instance, assume the third model is as follows:
X
1
+X
2
+X
9
+X
10=TARGET3 (7)
Further assume that the optimal value for TARGET3 is 10. Accordingly, an illustrative execution of step 516 may be as follows:
{X1=1, X2=3, X9=2, X10=2, TARGET3=8} (8)
As shown in (8), the X1 value of 1 is selected from the set {X1: 1, 3} and the X2 value of 3 is selected from the X2 range of {X2: 5, 3}. The remaining parameters X9 and X10 of the third model are varied until the value for TARGETS that is as close as possible to the optimal value of 10 is achieved—in this case, 8.
The method 500 subsequently comprises determining an optimal solution to the first model, the second model, or both using the selected value as a constant (step 518). In the running example, the selected values for the parameters X1 and X2 were 1 and 3, respectively. These values may be used as constants in the first and/or second models while the remaining parameters in each of those models is varied until the target parameters reach values that are as close as possible to the optimal value. The resulting solutions for the first and/or second models may then be used as desired to, e.g., adjust oilfield equipment (step 520). The method 500 may be adjusted as desired, including by adding, deleting or modifying steps.
Numerous other variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations, modifications and equivalents. In addition, the term “or” should be interpreted in an inclusive sense.
In at least some embodiments, a method for optimizing oilfield operations comprises: identifying a first oilfield model; determining n solutions to the first oilfield model that optimize a target parameter of the first oilfield model; identifying a second oilfield model; identifying a set of parameter values used in the n solutions; selecting from said set a value that optimizes a different target parameter in the second oilfield model; determining an optimal solution to the first oilfield model using the selected value as a constant in said first oilfield model; and adjusting oilfield equipment using one or more of said optimizations. These embodiments may be supplemented using one or more of the following concepts, in any order and in any combination: wherein the n solutions either optimize the target parameter equally or optimize the target parameter unequally but beyond a predetermined optimization threshold; wherein the oilfield operations include upstream and downstream petroleum operations; wherein selecting said value that optimizes the different target parameter comprises varying one or more other parameters of the second oilfield model; wherein determining said n solutions comprises using a genetic algorithm; wherein determining said optimal solution comprises varying one or more other parameters of the first oilfield model while holding said selected value constant; wherein the target parameter has a higher priority than said different target parameter; and wherein the target parameter is revenue per barrel of oil equivalent (BOE) and the different target parameter is the degree of sound emissions.
In some embodiments, a method comprises: identifying a first oilfield model; determining n solutions to the first oilfield model that optimize a target parameter of the first oilfield model; identifying a second oilfield model; identifying a set of parameter values used in the n solutions; using said set of parameter values to determine m solutions to the second oilfield model that optimize a different target parameter of the second oilfield model; identifying a third oilfield model; identifying a subset of said set used in the m solutions; selecting a value from said subset, said selected value optimizes another target parameter in the third oilfield model; determining an optimal solution to the first oilfield model, the second oilfield model, or both using the selected value as a constant; and adjusting oilfield equipment using one or more of said optimizations. At least some of these embodiments may be supplemented using one or more of the following concepts, in any order and in any combination: wherein the target parameter has a higher priority than said different target parameter, and said different target parameter has a higher priority than said another target parameter; wherein m is less than or equal to n; wherein determining said n solutions and m solutions comprises using genetic algorithms; wherein the n solutions optimize the target parameter equally; and wherein the n solutions optimize the target parameter unequally but beyond a predetermined optimization threshold.
In some embodiments, a computer-readable medium storing software which, when executed by a processor, causes the processor to: identify a first oilfield model; determine n solutions to the first oilfield model that optimize a target parameter of the first oilfield model; identify a second oilfield model; identify a set of parameter values used in the n solutions; use said set of parameter values to determine m solutions to the second oilfield model that optimize a different target parameter of the second oilfield model; identify a third oilfield model; identify a subset of said set used in the m solutions; select a value from said subset, said selected value optimizes another target parameter in the third oilfield model; determine an optimal solution to the first oilfield model, the second oilfield model, or both using the selected value as a constant; and cause the adjustment of oilfield equipment using one or more of said optimizations. These embodiments may be supplemented using one or more of the following concepts, in any order and in any combination: wherein the target parameter has a higher priority than said different target parameter, and said different target parameter has a higher priority than said another target parameter; wherein m is less than or equal to n; wherein the processor uses genetic algorithms to determine said n solutions and said m solutions; wherein the n solutions optimize the target parameter equally; and wherein the n solutions optimize the target parameter unequally but beyond a predetermined optimization threshold.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2016/031346 | 5/6/2016 | WO | 00 |