io4 - course : long term production optimization 1 focus on reservoir simulation-based techniques...
TRANSCRIPT
IO4 - course : Long term production optimization
1
Focus on reservoir simulation-based techniques partially studied and developed at IO-center:
– Formulation of long-term (> 6 months) optimization problems– Gradient-based methods and adjoint reservoir simulations– Model reduction and upscaling for optimization– Flow-based proxies for rapid optimization and visualization
Strongly linked to the open-source simulation software MRST, and includes examples/scripts in Matlab.
Course material can be tailored to participant background and desired duration.
Course modules developed through IO
IO4 - course : Long term production optimizationPossible modules and dependencies
2
Reservoir modelling and simulation basics using MRST
Simulator prototyping using automatic differentiation
Formulation of optimization problems Focus on simulation-based
optimization of recovery/NPV
Adjoint-based techniques Formulation and derivation Implementing objectives Gradient-based optimization
– Search directions and line-search
– Constraints
Flow diagnostics Using efficient flow-
based proxies for optimization and visualization
Upscaling and model reduction Upscaled model tuning
for optimization
Course 2 : Long term production optimization
3
Modules contain three main ingredients:
1. Theory and mathematical formulations – emphasis on understanding rather than proofs
2. Implementation – using MRST
3. Examples – Code that can be run during course.
+
Quick overview of MRST / Getting started Grids and Petrophysical Parameters Mathematical models for single- and multiphase flow in porous media Discretization of equations Well models for reservoir simulation
Examples
4
Modules 1/5 : Reservoir modelling and simulation basics using MRST
Background on classes in Matlab MRST-AD:
– Basic functionality– Discrete operators– Recommendations for efficient implementations– Complete example implementing a single
phase solver Components of a complex reservoir simulator:
– model equations and discretization– Wells and handling of well-equations – linear- and non-linear solvers– time-step control
Adding new properties/equations to existing solvers
AD-based implementations for adjoint simulations.
5
Modules 2/5 : Simulator prototyping using automatic differentiation (AD)
function eq = F(xn, xn-1)if forward
xn = initAD(xn) elseif reverse
xn-1 = initAD(xn-1)end…
Short module containing background/basics: Compact mathematical formulation of
Long Term Reservoir Optimization (LTRO) problems
Long – term objectives:– Recovery– NPV– Misfit
Analysis of NPV for a simple example using MRST
6
Modules 3/5 : Formulation of optimization problems
Derivation of discrete adjoint equations:– Background on constrained max/min, implicit functions and total derivatives– Discrete adjoint equations for time-dependent problems– Control-steps vs time-steps
Optimization using adjoint-based gradients– Objective implementation in MRST using automatic differentiation– Problem scaling– Line search: Wolfe conditions– Search directions: steepest ascent vs quasi Newton (BFGS)
Constraints– Handling of linear (input) constraints for steepest ascent and BFGS– Discussion of constraints typically present for a LTRO problem– Constraint handling in simulator vs optimizer
7
Modules 4/5 : Adjoint-based techniques
Recent research on speeding up reservoir simulations in optimization loops in MRST:
8
Modules 5/5 : Flow-based proxies, upscaling and model reduction for optimization loops
Flow-based proxies: Background on flow-diagnostics
equations Visualization Flow diagnostics and derived
quantities related to recovery and NPV
Proxy-optimization Real-field example (NPV-
optimization)
Upscaling for optimization: Upscaling background Local vs global upscaling Transmissibility upscaling for
optimization purposes Real-field example (NPV-
optimization)