/FieldOpt-Research-Open

FieldOpt C++ Optimization Framework [Open Research Version]

Primary LanguageC++GNU General Public License v3.0GPL-3.0

FieldOpt-Research-Open

FieldOpt [Open Research Version] is a C++ programming framework for efficient prototyping and testing of optimization methodologies for problems involving large-scale numerical simulations.

FieldOpt serves as a multi-disciplinary knowledge repository for coupling optimization with reservoir simulation. Technology development is based on integration of efficient iterative procedures with expert domain parametrizations.

FieldOpt facilitates research and innovation through up-scaling of prototype methodology to realistic cases, coupling, integration and hybridization of optimization methodology and problem solutions, and cross-application of existing methods to new domains.

Target problems

Petroleum Field Development

  • Well placement optimization [1]
  • Production optimization
  • Optimization of inflow-control valve settings
  • Well completion optimization and model-update while drilling
  • Minimization of C02 emissions

Optimization methodologies

Deterministic

  • Compass Search (CS)
  • Asynchronous Paralell Pattern Search (APPS)
  • Derivative-Free Trust-Region Algorithm (DFTR) [2]

Stochastic / probabilistic

  • Genetic Algorithm (GA)
  • Particle Swarm Optimization (PSO)
  • Covariance Matrix Adaption Evolutionary Strategy (CMA-ES)
  • Bayesian Optimization (EGO)
  • Simultaneous Perturbation Stochastic Approximation (SPSA)

Hybrid approaches

  • mPSO
  • APPS/PSO + data-driven meta-optimization
  • Joint optimization using embedded reduced-order sub-routines

Problem structure

  • Multi-level joint optimization (concurrent, sequential, embedded)
  • Automatic variable segregation for multi-level optimization
  • Variable scaling

Objective terms

  • Weighted function, Net Present Value
  • Well cost
  • Augmented terms: Geology & geophysics-based (SWCT)

Thirdparty solvers/libraries

  • SNOPT [3]
  • Ensemble based Reservoir Tool (ERT) [4]
  • TensorFlow

Functionalities

Interfaces subsurface flow simulators

  • Schlumberger's E100/E300/IX
  • Open Porous Media Flow
  • Stanford's AD-GPRS
  • Pre-/Post-processing
    • E300 adjoint-gradient read-in

Well trajectory development

  • Automatic well planner (AWP) [5]
  • State-of-the-art well connection transmissibility factor calculation [6]
  • Variable mapping onto multi-segmented well model (WELSEGS/COMPSEGS/WSEGVALV) [7]

Well placement constraint-handling

  • Method of Alternating Projections (MAP) [8]
  • Length, inter-well distance, user-defined convex-polytope reservoir-boundary

Network/facility modeling

  • Topside facility model for CO2 emission calculation

Uncertainty-handling

  • Expected cost function evaluation over realization set
  • Reduced random sampling strategy[9]

Parallelization

  • Algorithm-level parallelization of cost function evaluations (simulations) through MPI runtime library [10]

References

[1] Bellout, M.C.; Echeverria Ciaurri, D.; Durlofsky, L.J.; Foss, B.; Kleppe, J. (2012). Joint optimization of oil well placement and controls. Computational Geosciences, 16(4), pp.1061-1079. https://doi.org/10.1007/s10596-012-9303-5

[2] Silva, T.L.; Bellout, M.C.; Giuliani, C.; Camponogara, E.; Pavlov, A. (2020). A Derivative-Free Trust-Region Algorithm for Well Control Optimization. 17th European Conference on the Mathematics of Oil Recovery, 14th-17th September, Online Event. https://doi.org/10.3997/2214-4609.202035086

[3] Gill, P.E.; Murray, W.; Saunders, M.A. (2005). SNOPT: An SQP Algorithm for Large-Scale Constrained Optimization. SIAM Review, 47(1), pp.99-131. http://dx.doi.org/10.1137/S0036144504446096

[4] Equinor. (2021). Ensemble based Reservoir Tool. https://github.com/equinor/ert

[5] Kristoffersen, B.S.; Silva, T.L.; Bellout, M.C.; Berg, C.F. (2020). An Automatic Well Planner for Efficient Well Placement Optimization Under Geological Uncertainty. 17th European Conference on the Mathematics of Oil Recovery, 14th-17th September, Online Event. https://doi.org/10.3997/2214-4609.202035211

[6] Ceetron Solutions AS; Equinor ASA. (2020). ResInsight. http://resinsight.org

[7] Schlumberger AS. (2012). Eclipse technical description. Chp.44: Multi-segment Wells. pp.683-703. https://www.software.slb.com/products/eclipse/simulators

[8] Bellout, M.C.; Volkov, O. (2018). Development of efficient constraint-handling approaches for well placement optimization. 16th European Conference on the Mathematics of Oil Recovery, 3rd-6th September, Barcelona, Spain. https://doi.org/10.3997/2214-4609.201802247

[9] Jesmani, M.; Jafarpour, B.; Bellout, M.C.; Foss, B. (2020). A reduced random sampling strategy for fast robust well placement optimization. Journal of Petroleum Science and Engineering, 184, pp.106414. https://doi.org/10.1016/j.petrol.2019.106414

[10] Baumann, E.J.M.; Dale, S.I.; Bellout, M.C. (2020). FieldOpt: A powerful and effective programming framework tailored for field development optimization. Computers & Geosciences, 135, pp.104379. https://doi.org/10.1016/j.cageo.2019.104379