The McCormick-based Algorithm for mixed-integer Nonlinear Global Optimization (MAiNGO) is a deterministic global optimization software for solving mixed-integer nonlinear programs (MINLPs).
Any (mixed-integer or continuous) nonlinear program with nonconvex functions can exhibit multiple local solutions. Local optimization methods can converge to any locally optimal solution and can even fail to find any feasible point for a poor choice of initial point. Heuristic methods such as genetic algorithm or simulated annealing converge to the global solution with probability one only as the runtime approaches infinity. In contrast, deterministic global methods do guarantee finite convergence to the global solution given non-zero tolerances for feasibility (δ) and optimality (ϵ) specified by the user.
MAiNGO can solve MINLPs of the form
to global optimality, guaranteeing a solution that is δ-feasible and ϵ-optimal or proving that no δ-feasible point exists, where IR denotes the set of closed bounded intervals of ℝ.
One of the main algorithmic features of MAiNGO is the operation in the original variable space using McCormick relaxations (i.e., no auxiliary variables are introduced during the optimization process) through the open-source library MC++. Additionally, MAiNGO uses a specialized heuristic for tightening McCormick relaxations, as well as custom relaxations for various functions relevant to process systems engineering. Furthermore, MAiNGO offers significant flexibility in model formulation.
MAiNGO has been shown to be advantageous for problems with reduced space formulations. For example, such problems are found in flowsheet optimization of chemical or energy processes, or in optimization of hybrid models with artificial neural networks embedded.
The open-source version of MAiNGO is available here: https://git.rwth-aachen.de/avt.svt/public/maingo.git
Reference: Bongartz D, Najman J, Sass S, Mitsos A. MAiNGO – McCormick-based Algorithm for mixed-integer Nonlinear Global Optimization. Technical Report, Process Systems Engineering (AVT.SVT), RWTH Aachen University, 2018. Available at http://permalink.avt.rwth-aachen.de/?id=729717
Acknowledgement: MAiNGO was developed at the Chair for Process Systems Engineering (AVT.SVT) at RWTH Aachen University with funding from various public institutions.