You are on page 1of 28

Optimization of

Oil Field Operations


Louis J. Durlofsky

Department of Energy Resources Engineering


Stanford University

Collaborators

Jerome Onwunalu
(now at BP)
Jincong He
Jon Saetrom (NTNU)
2

Smart Field Modeling


Reservoir
Data

Set Well
Controls

Update
Model
Field
Development
Optimization

Optimize
Well Settings

Optimization highly intensive computationally


3

Outline
Field development (well placement) optimization
Particle swarm optimization (PSO) algorithm
Well pattern optimization

Production optimization
Trajectory piecewise linearization (TPWL) for
surrogate modeling

Generalized pattern search method with TPWL

Conclusions

Optimization of Well Type and Placement

Solution Representation for


Field Development Optimization
Concatenation of well variables; (, ) are spatial locations:

x = {1 ,1 , 2 , 2 ,K, N , N }
well 1

well 2

well N

2N optimization variables
Representation can be generalized to handle deviated,
horizontal, or multilateral wells:

x = {( h , h , h )1 , ( t ,t , t )1 ,K}
6

Particle Swarm Optimization (PSO)


Developed originally by Kennedy & Eberhardt (1995)
Models social behavior in animals and entails a cooperative
search strategy (population-based like Genetic Algorithm)
Successfully applied for subsurface flow optimization
(groundwater remediation) by Mattot et al. (2006)

http://inlinethumb61
.webshots.com

PSO Solution Iteration

xi solution, vi particle velocity, k iteration, t = 1


Particle velocity has 3 contributions:

Particle Swarm Optimization


(2D Search Space)

PSO Neighborhood Topologies

10

Genetic Algorithm (GA) Operations


Population and selection:

}
Crossover:

Mutation:

11

PSO versus GA for Well Placement


In our tests, PSO generally outperformed GA
2 dual-lateral producers
Average PSO NPV (from 5 runs) 19% higher than GA

4 deviated producers
Average PSO NPV (from 5 runs) 7% higher than GA

12

Optimization Example: PSO versus GA


Find well location and type (20 wells) to maximize net
present value (NPV)
2D model, 100 x 100 blocks, oil-water simulation
Swarm (population): 50; iterations (generations): 100
Perform 4 runs for each algorithm
60 optimization variables

x = {1 ,1 , i1 , 2 , 2 , i2 ,K, N , N , iN }
13

Optimization Results: PSO and GA

- - PSO

GA

14

Well Locations and Types: PSO and GA

15

Solution Representation for Multiple Wells


Concatenation of well variables:

x = {1 ,1 , 2 , 2 ,K, N , N }
well 1

well 2

well N

Number of optimization variables increases with well


count high computational expense
Well count N must be specified (this should also be an
optimization variable)
May be difficult to enforce distance constraints
16

Optimization with Well Patterns


(Well Pattern Description)

17

Repeated Five-Spot Pattern

18

Optimize Parameters Associated with Pattern

a
b

(,
( )

Basic parameters: (, , a, b)
19

Allow for Rotation

20

Shearing

21

Then Replicate and Evaluate

22

Pattern Operators for WPD


Scale

Rotate

Shear

Can be expressed using transformation matrix M:


T
Wout
= MWinT

cos
M rotate =
sin

sin
cos
23

Switch Operator and Extension to


Other Patterns
Switch from
inverted to
regular pattern

Operators also defined for other pattern types:

24

Illustration of WPD with Two Operators

25

Solution Representation in
Well Pattern Description (WPD)

Fixed number of optimization parameters


Number of wells determined as part of optimization
Distance constraints easily satisfied
Can be used with a variety of optimization algorithms
Optimized solution is always a repeated pattern
26

Well-by-Well Perturbation (WWP)

Same number of variables as concatenation approach


but much smaller search space, and N is specified

27

Example 1: Problem Set Up


2D model, 100 x 100 grid blocks
Oil-water system, 10 years of production
Injector BHP: 6000 psi, Producer BHP: 1000 psi
Maximize NPV; run optimization multiple times
permeability
field

28

Algorithm Performance Pattern Optimization


(one pattern operator)

Best NPV using standard well patterns: $2151 MM


29

Example 1: Optimization Results

injector

30

Comparison of Concatenation and WPD+WWP


(5 runs, 4 operators, 8000 total simulations)
WWP (average)

WPD (best)

Concatenation (average,
# of wells specified)

Number of simulations

WPD+WWP outperformed concatenation for all 5 runs

31

Optimized Well Locations

injector

Concatenation

WPD+WWP

32

Example 2: Problem Set Up


2D model, 80 x 132 grid blocks
Oil-water-gas system, 5 years of production
Injector BHP: 2900 psi, Producer BHP: 1200 psi
Use 40 PSO particles, perform 5 runs using 3DSL

log permeability
field

33

Example 2: Optimization Results

34

Example 2: Optimization Results


WPD (pattern)

WPD+WWP performance

WWP after WPD

35

Example 2: Well Locations

injector

36

37

Production Optimization Problem


Seek to minimize:

J (u) = NPV(u) = roQo (u) + cwpQwp (u) + cwiQwi (u)


u controls, Qj cumulative production/injection
ro , cw oil revenue, water costs
subject to bound & linear/nonlinear constraints
Penalty function method:

min J (u) + h(u)

h constraint violation,

penalty parameter
38

Oil-Water Flow Equations

Mass balance equations for j = oil, water

S j
t

( j kp ) + q j = 0

Sj - phase saturation (volume fraction), p - pressure


j (Sj ) - phase mobility, k - permeability tensor, qj - source

Discretize: x - states (p, Sw), u - controls (pwell),


O(105-106) grid blocks

) ( ) (

g x n+1 , x n , u n+1 = A x n+1 , x n + F x n+1 + Q x n+1 , u n+1 = 0

Newtons method:

J = g , J = g x
39

Trajectory Piecewise Linearization (TPWL)


Basic idea
Use states and Jacobians generated and saved during
training run(s) to represent new solutions

Approach

Run training simulations (g(x,u) = 0)


Record states and Jacobian matrices (xi, gi/xi)
Represent new solutions (xn+1) as expansions around
saved states (xi+1)

Map into l-dim reduced space z using POD (xz)


References: Rewienski & White (2003), Vasilyev et al. (2003),
Qu & Chapman (2006), Cardoso & Durlofsky (2010), He et al. (2010)

40

Linearization around Saved States


x2
i=3
i=1

2D state space

i=4

i=2
i=5
i=6

u0

i =7
i=8

u1
x1

Save xi and gi/xi (u0)


Represent solutions for u1 using xi and gi/xi
41

TPWL for Reservoir Flow Equations


Discretized flow equations:
g n+1 = A n+1 + F n+1 + Q n+1 = 0

Linearized representation for new state xn+1:


g i +1
g i +1 n
g i +1 n +1
i

i +1 u u i +1
g n +1 g i +1 + i +1 x n+1 x i +1 +
x

x
+
i
x
x
u

x: states (p, Sw)

u: controls (BHPs)
42

Expansion around Saved States

Linearized representation:
J

i +1

(x

n +1

i +1

A i +1 n

Q i +1 n +1
i
=
x x + i +1 u u i +1
i
u
x

POD (SVD) applied to snapshot matrix: x z


TPWL representation (reduced space, multiply by T ):

( )

z n +1 = z i +1 J ir+1

A i +1 n i Q i +1 n +1
z z + i +1 u u i +1

i
x r
u r

J ir+1 = T J i +1

(ll l)

l ~ O(102 103)
43

Test Case Portion of SPE 10 Model


60
60
30 = 108,000 cells (216,000 unknowns)

w = 60 lb/ft3, o = 45 lb/ft3
High resolution for all 72 well blocks
l = 304 (basis optimization applied); 448 unknowns

44

Training and Test Runs


=0

=1
Training
input

Target
input

Test runs:

u = (1 )uTraining + uTarget
45

Production Rates for = 0.3

P1

P2

P3

P4

46

Production Rates for = 0.5

P1

P2

Run Time

P3

GPRS/CPR
~1 hr

TPWL
~2 sec

P4

47

TPWL as a Proxy for Optimization


Apply TPWL for direct search methods
Perform an initial training simulation
Retrain TPWL after specified number of iterations,
distance from last training, etc.
Generalized Pattern Search
(GPS)

Retrain
Training

(Kolda et al., 2003)


48

Production Optimization: Case 1


Optimization set up
Optimize NPV using generalized pattern search (GPS)
Oil: $80/bbl, prod. water: $-36/bbl, inj. water: $-18/bbl

Geological model: portion of Stanford VI model


30x40x4 = 4800 grid blocks
4 producers and 2 injectors
Simulation time: 1800 days (200 day intervals)
9 control variables for each producer (36 in total)
(BHP)min = 1,000 psia; (BHP)max = 3,000 psia

49

Optimization Result: NPV Evolution

50

Optimization Result: NPV Summary

Method

NPV (initial)
$106

NPV (final)
$106

# of full
simulations

Full-order GPS

49.9

170.1

2500

TPWL-guided
GPS

49.9

169.0

15

TPWL model construction ~ 2time for training run

51

Optimization Results: Final BHP Schedules

52

Production Optimization: Case 2


Optimization set up
Oil: $80/bbl, prod. water: $-10/bbl, inj. water: $-5/bbl
GPS with incremental penalty

Geological model: larger portion of Stanford VI


20,400 grid blocks, 4 producers and 2 injectors
Simulation time: 1800 days (200 day intervals)
Prod: (BHP)min = 1,000 psia; (BHP)max = 3,000 psia
Inj: (BHP)min = 5,500 psia; (BHP)max = 7,500 psia
Nonlinear constraints: water fractions < 50%

53

34%

Water Cut Violation

Optimization Results

54

Optimization Results: Injector BHP Schedules

Method
TPWL-guided
GPS

# of full
NPV (initial) NPV (final)
$106
simulations
$106
729

975

~12
55

Summary and Future Work


Applied particle swarm optimization (PSO) for determining
placement of new wells
Devised new treatments for optimizing multiwell (field)
development problems
Demonstrated use of TPWL (trajectory piecewise
linearization) procedure for fast reservoir simulation
Incorporated TPWL into generalized pattern search
optimization of oil production
Future work: meta-optimization techniques for use with
PSO; enhance TPWL and clarify criteria for retraining;
combine field development & production optimization
56