Constraint Handling in Life-cycle Optimization Using Ensemble Gradients
More Info
expand_more
Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.
Abstract
Constrained optimization is the process of optimizing an objective function with respect to some variables in the presence of constraints on those variables themselves or on some function of those variables. This thesis focused on using the Ensemble Optimization method to improve the NPV (Net Present Value) as the objective function of waterflooding a reservoir with an L-shaped sealing fault under constraints. The optimization controls are injection rates for the input-constrained optimization and valves opening for the output-constrained optimization. The constraints are field injection rate for the input-constrained optimization and field production rate for the output-constrained optimization. Three Matlab optimization methods were tested, of which the SQP (Sequential Quadratic Programming) method performed the best. For dealing with the constraints, it is better to let the optimizer handle them instead of the simulator. Two ways to help the optimizer to have a better constraint adherence are by using the constraint scaling and improving the quality of the gradients. Having too many variables may lead to a lower objective function due to the approximate gradients’ inaccuracies. Regularization (smoothing) can help to improve the objective function in this problem.