# US 2014/0156238 A1 · Optimization with a control mechanism using a mixed-integer nonlinear formulation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0156238 A1
- Document ID: US20140156238A1
- Status: Published application
- Kind: A1
- Application number: 14/174,643
- Filed: 2014-02-06
- Published: 2014-06-05
- Earliest claimed: 2010-10-13
- Assignees: Schlumberger Technology Corporation
- Applicants: Schlumberger Technology Corporation
- Inventors: Kashif Rashid; Sulyman Demirel; Benoit Couet
- Web page: https://patentgrep.com/patent/US20140156238A1

## CPC

- G06F 30/20: Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30)
- E21B 43/00: Methods or apparatus for obtaining oil, gas, water, soluble or meltable materials or a slurry of minerals from wells (applicable only to water E03B)
- E21B 43/12: Methods or apparatus for controlling the flow of the obtained fluid to or in wells (E21B43/25 takes precedence; valve arrangements E21B34/00)
- E21B 43/122: {Gas lift}
- E21B 41/0035: {Apparatus or methods for multilateral well technology, e.g. for the completion of or workover on wells with one or more lateral branches}
- E21B 43/14: Obtaining from a multiple-zone well
- E21B 44/00: Automatic control systems specially adapted for drilling operations, i.e. self-operating systems which function to carry out or modify a drilling operation without intervention of a human operator, e.g. computer-controlled drilling systems; Systems specially adapted for monitoring a plurality of drilling variables or conditions
- E21B 2200/22: Fuzzy logic, artificial intelligence, neural networks or the like
- G05B 13/04: involving the use of models or simulators
- G05B 15/00: Systems controlled by a computer (G05B13/00, G05B19/00 take precedence; automatic controllers with particular characteristics G05B11/00)
- G05B 17/00: Systems involving the use of models or simulators of said systems (G05B13/00, G05B15/00, G05B19/00 take precedence)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- E21B: EARTH OR ROCK DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)

## Abstract

A method of optimizing production of wells using choke control includes generating, for each well, an intermediate solution to optimize the production of each well. The generating includes using an offline model that includes a mixed-integer nonlinear program solver and includes using production curves based on a choke state and a given wellhead pressure. The method further includes calculating, using a network model and the intermediate solution of each well, a current online wellhead pressure for each well. The method further includes setting the intermediate solution as a final solution based on determining that a difference between the current online wellhead pressure of each well and a prior online wellhead pressure of each well is less than a tolerance amount. The method further includes adjusting, using the final solution of each well, at least one operating parameter of the wells.

## Claims

### Claim 1

A method of optimizing production of a plurality of wells using a control mechanism, the method comprising:
generating, for each well of the plurality of wells, an intermediate solution to optimize the production of each well of the plurality of wells using, an offline model comprising a mixed-integer non linear program solver and using a plurality of prod fiction cures based on a state of the control mechanism and a given wellhead pressure;
calculating, using a network model and the intermediate solution of each well of the plurality of wells, a current online wellhead pressure for each well of the plurality of wells, wherein the current online wellhead pressure for each well is dependent upon each other well of the plurality of wells;
setting the intermediate solution as a final solution based on determining that a difference between the current online wellhead pressure of each well and a prior online wellhead pressure of each well of the plurality of well is less than a tolerance amount; and
adjusting, using the final solution of each well, at least one operating parameter of the plurality of wells to generate an actual wellhead pressure of each well, wherein the final solution of each well identifies a value for the at least one operating parameter.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining, using, a last online wellhead pressure of each well of the plurality of wells, the plurality of production curves of the plurality of wells.

### Claim 3 (depends on 2)

The method of claim 2, further comprising, prior to generating each intermediate solution:
generating, for each well of the plurality of wells, using the mixed-integer nonlinear program solver and the plurality of production curves based on an initial state of the control mechanism, an initial offline solution;
calculating, using the network model and the initial offline solution of each well of the plurality of wells, the prior online wellhead pressure of each well of the plurality of wells;
determining that a difference between the prior online wellhead pressure of each well and an initial wellhead pressure of each well of the plurality of wells is greater than the tolerance amount; and
generating the offline wellhead pressure of each well of the plurality of wells by equating the prior offline wellhead pressure of the each well to the prior online wellhead pressure of the each well,
wherein the plurality of production curves is calculated using the prior online wellhead pressure of each well of the plurality of wells.

### Claim 4 (depends on 1)

The method of claim 1, wherein the mixed-integer nonlinear program solver solves a non-linear equation.

### Claim 5 (depends on 1)

The method of claim 1, wherein the mixed-integer nonlinear program solver uses a plurality of piece-wise linear equations.

### Claim 6 (depends on 1)

The method of claim 1, wherein the plurality of production curves is further based. on at least one gas lift injection rate.

### Claim 7 (depends on 6)

The method of claim 6, wherein each gas lift injection rate comprises a vector of continuous decision variables.

### Claim 8 (depends on 1)

The method of claim 1, wherein each production curve of the plurality of production curves is non-smooth non-instantaneous.

### Claim 9

(canceled)

### Claim 10 (depends on 9)

The method of claim 9, wherein the state comprises a vector of discrete decision variables.

### Claim 11

(canceled)

### Claim 12 (depends on 1)

The method of claim 1, wherein each offline wellhead pressure is a component of a vector of a plurality of offline wellhead pressures.

### Claim 13 (depends on 1)

The method of claim 1, wherein the plurality of wells comprises a subset of wells connected to a common manifold, wherein each offline wellhead pressure of the subset of wells is an average of a calculated offline wellhead pressure of the subset of wells.

### Claim 14 (depends on 1)

The method of claim 1, wherein adjusting the operating parameters of the plurality of wells is based on a financial value of the plurality of wells using the operating parameters and a financial cost of the plurality of wells using the operating parameters.

### Claim 15

A system for optimizing production of a plurality of wells using a control mechanism, the system comprising:
a hardware processor;
a plurality of sensors collecting data from the plurality of wells;
an offline model executing on the hardware processor and configured to:
generate, for each well of the plurality of wells, an intermediate solution to optimize the production of each well of the plurality of wells using the data collected by the plurality of sensors, a mixed-integer nonlinear program solver, and a plurality of production curves based on a state of the control mechanism and a given offline wellhead pressure; and
a network model operatively connected to the offline model and executing on the hardware processor, wherein the network model is configured to:
calculate, using each intermediate solution of each well of the plurality of wells, a current online wellhead pressure for each well of the plurality of wells, wherein the current online wellhead pressure for each well is dependent upon each other well of the plurality of wells; and
an optimization engine operatively connected to the offline model and the network model, wherein the optimization engine executes on the hardware processor and is configured to:
set the intermediate solution as a final solution based on determining that a difference between the current online wellhead pressure of each well and a prior online wellhead pressure of the each well of the plurality of wells is less than a tolerance amount; and
adjust, using final solution of each well, at least one operating parameter of the plurality of wells to generate an actual wellhead pressure of each well, wherein the final solution of each well identities a value for the at least one operating parameter.

### Claim 16 (depends on 15)

The system of claim 15, wherein the offline model is further configured to:
determine, using a last online wellhead pressure of each well of the plurality of wells, the plurality of production curves of the plurality of wells.

### Claim 17 (depends on 16)

The system of claim 16,
wherein the offline model is further configured to generate, for each well of the plurality of wells, using the mixed-integer nonlinear program solver and the plurality of production curves based on an initial state of the control mechanism, an initial offline solution, and
wherein the network model is further configured to:
calculate, using the initial offline solution of each well of the plurality of wells, the prior online wellhead pressure of each well of the plurality of wells,
wherein the optimization engine is further configured to:
determine that a difference between the prior online wellhead pressure of each well and an initial wellhead pressure of each well of the plurality of wells is greater than the tolerance amount; and
generate the offline wellhead pressure of each well of the plurality of wells by equating the initial offline wellhead pressure of the each well to the prior online wellhead pressure of the each well, and
wherein the plurality of production curves is calculated using the prior online wellhead pressure of each well of the plurality of wells.

### Claim 18

A non-transitory computer readable medium comprising computer readable program code embodied therein for:
generating, for each well of a plurality of wells, an intermediate solution to optimize the production of each well of the plurality of wells using an offline model comprising a mixed-integer nonlinear program solver and using a plurality of production curves based on a state of a control mechanism and a given wellhead pressure;
calculating, using a network model and the intermediate solution of each well of the plurality of wells, a current online wellhead pressure for each well of the plurality of wells, wherein the current online wellhead pressure for each well is dependent upon each other well of the plurality of wells;
setting the intermediate solution as a final solution based on determining that a difference between the current online wellhead pressure of each well and a prior wellhead pressure of the each well of the plurality of wells is less than a tolerance amount; and
adjusting, using the final solution of each well, at least one operating parameter of the plurality of wells to generate an actual wellhead pressure of each well wherein the final solution of each well identifies a value for at least one operating parameter.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18, further comprising computer readable program code embodied therein for:
determining, using a last online wellhead pressure of each well of the plurality of wells, the plurality of production curves of the plurality of wells.

### Claim 20 (depends on 19)

The non-transitory computer readable medium of claim 19, further comprising computer readable program code embodied therein for, prior to generating each global solution:
generating, for each well of the plurality of wells, using the mixed-integer nonlinear program solver and the plurality of production curves based on an initial state of the control mechanism, an initial offline solution;
calculating, using the network model and the initial offline solution of each well of the plurality of wells, the prior online wellhead pressure of each well of the plurality of wells;
determining that a difference between the prior online wellhead pressure of each well and an initial wellhead pressure of the each well of the plurality of wells is greater than the tolerance amount; and
generating the offline wellhead pressure estimate of each well of the plurality of wells by equating the prior offline wellhead pressure of the each well to the prior online wellhead pressure of the each well,
wherein the plurality of production curves is calculated using, the prior online wellhead pressure of each well of the plurality of wells.

### Claim 21 (depends on 1)

The method of claim 1, wherein the plurality of production curves is further based on at least one electronic submersible pump rate.

### Claim 22 (depends on 15)

The system of claim 15, wherein the plurality of production curves is further based on at least one electronic submersible pump rate.
