Reduced-order optimal control of water flooding using proper orthogonal decomposition

    loading  Checking for direct PDF access through Ovid


Model-based optimal control of water flooding generally involves multiple reservoir simulations, which makes it into a time-consuming process. Furthermore, if the optimization is combined with inversion, i.e., with updating of the reservoir model using production data, some form of regularization is required to cope with the ill-posedness of the inversion problem. A potential way to address these issues is through the use of proper orthogonal decomposition (POD), also known as principal component analysis, Karhunen–Loéve decomposition or the method of empirical orthogonal functions. POD is a model reduction technique to generate low-order models using ‘snapshots’ from a forward simulation with the original high-order model. In this work, we addressed the scope to speed up optimization of water-flooding a heterogeneous reservoir with multiple injectors and producers. We used an adjoint-based optimal control methodology that requires multiple passes of forward simulation of the reservoir model and backward simulation of an adjoint system of equations. We developed a nested approach in which POD was first used to reduce the state space dimensions of both the forward model and the adjoint system. After obtaining an optimized injection and production strategy using the reduced-order system, we verified the results using the original, high-order model. If necessary, we repeated the optimization cycle using new reduced-order systems based on snapshots from the verification run. We tested the methodology on a reservoir model with 4050 states (2025 pressures, 2025 saturations) and an adjoint model of 4050 states (Lagrange multipliers). We obtained reduced-order models with 20–100 states only, which produced almost identical optimized flooding strategies as compared to those obtained using the high-order models. The maximum achieved reduction in computing time was 35%.

Related Topics

    loading  Loading Related Articles