MMA optimization solver.
- class gemseo_mma.opt.core.mma_optimizer.MMAOptimizer(problem)[source]¶
Method of Moving Asymptotes optimizer class.
This class run an optimization algorithm to solve Non-linear Optimization problems with constraints. The objective function and the constraints and their gradients are needed for the optimization algorithm. The original implementation the next iteration candidate is computed using mmasub function adapted from ` https://github.com/arjendeetman/GCMMA-MMA-Python <https://github.com/arjendeetman/GCMMA-MMA-Python>`_ . The external and internal move limit can be tuned to control minimum and maximum local approximation convexity. The max_optimization_step parameter can be used to control the optimization step. To avoid solver divergence in the case of highly non-linear problems one should use smaller values of the max_optimization_step, max_asymptote_distance and min_asymptote_distance.
problem (OptimizationProblem) –
Iterate until convergence from the starting guess.
x0 (ndarray) – The starting guess design point.
The optimum design point and objective value.
- Return type: