NAG Optimization Modelling Suite
Nowadays a vast majority of optimization solvers can handle very complex problems involving many variables and various types of the constraints with a different structure. Designing an interface for such a solver which would allow a complex input without compromising the ease of use is challenging.
A new suite of routines, the NAG Optimization Modelling Suite, has been introduced in Mark 26 of the NAG Library to better tackle the input of complex problems without forming difficult interfaces with a daunting number of arguments. It is available for the new optimization solvers introduced at this mark, the semidefinite programming solver and the interior point method for nonlinear optimization. However, the suite will expand in the years to come for more problem types.
The main aim of the NAG Optimization Modelling Suite is the ability to define and solve various optimization problems in a uniform manner.
There are three key features of the suite. Firstly, the definition of the optimization problem and the call to the solver have been separated in such a way that the formulation of the problem is solver agnostic, i.e., the same problem can be set up in the same way for different solvers. Secondly, the problem representation is built up from basic components (for example, a QP problem is composed of a quadratic objective, simple bounds and linear constraints), therefore different types of problems reuse the same routines for their common parts. Finally, the call to the solver is notably simplified thanks to the fact that the most pieces of the information has been already provided.