Ipopt (Interior Point OPTimizer) for ROOT
Description
Ipopt (Interior Point OPTimizer)[1] is a software package for large-scale nonlinear optimization. It is designed to find (local) solutions of mathematical optimization problems. Ipopt is being integrated to ROOT framework, providing a new set of tools for minimization through a ROOT plugin system in the math libraries. The goal of the project will be to fully integrate in ROOT ipopt, to include the support for optimization with non trivial parameter constraints and to provide tests and code examples showing users how to use the new optimizers.
Task ideas
- Write support for:
- Constraint function g(x):Rn−>Rm
- Gradient of the constraint function
- Hessian
- All solvers
- Compilation under MS Windows with Visual Studio
- Write tests for all solvers including some of then with Hessian and constrain function.
- Measure performance comparing the current ROOT minimizers.
Expected results
Fully integrated Ipopt into ROOT with support for all solvers, hessian and constrain function. Documentation, tests and examples.
Desirable Skills
- C++ knowledge.
- Experience with optimization problems.
- Experience with ROOT is a plus.