Optimization has become a practical component in decision-making processes in field development and reservoir management. Although optimization simplifies decision-making, it harnesses complex equations and formulations that may be computationally expensive to solve. Numerical reservoir simulation adds another dimension to this phenomenon when combined with optimization software to find the optimum defined by an objective function. Considering the fact that current reservoir simulation models are constructed with vast amount of data and if it is coupled with optimization software, computational limits of regular computers can cause not being able to reach the aimed result although the recent technological development allows running huge reservoir models with parallel computing systems. Consequently, it is inevitable to achieve robust and faster results in optimization problems.
Predefined objective functions in optimization software when combined with numerical reservoir simulators attempt to maximize the net present value or cumulative oil recovery defined with an objective function, where the objective function can be defined to be multi-objective leading to Pareto sets consisting of trade-offs between objectives. Using an optimization algorithm with predefined objective functions does not provide the flexibility to the physical reservoir fluid flow phenomenon to "maneuver" throughout the iterations of an optimization process. It is necessary to use a more flexible objective function by introducing conditional statements through procedures.
In this study an optimization software is combined with a commercial reservoir simulator. Conditional statements implemented in the simulator as procedures help the software/simulator combination operate under pseudo-dynamic objective functions that lead to speed and robustness through trying sets of combinations of parameters, and thus achieving conditions that lead to highest recovery within the given time frame as defined by the conditional statement for the condition for which the simulation run is performed. The procedures feature enables implementation of codes by using conditional statements that act as piecewise objective functions, maximizing the recovery and taking into account the timeframe or condition they belong.
A commercial reservoir simulator is used in this study with conditional statements enhancing production in a given timeframe featuring certain conditions. The optimized recoveries with pseudodynamic objective functions provide an enhanced recovery, as compared to that of an optimization case with predefined constant objective function in the optimization software throughout the iterations of the optimization and simulation process.