MANOPT - A Matlab toolbox for optimization on manifolds
A Matlab toolbox for optimization on manifolds
Optimization on manifolds is a powerful paradigm to address nonlinear optimization problems. With Manopt, it is easy to deal with various types of symmetries and constraints which arise naturally in applications, such as orthonormality and low rank.
Manifolds are mathematical sets with a smooth geometry, such as spheres. If you are facing a nonlinear (and possibly nonconvex) optimization problem with nice-looking constraints, symmetries or invariance properties, Manopt may just be the tool for you. Check out the manifolds library to find out!
Manopt comes with a large library of manifolds and ready-to-use Riemannian optimization algorithms. It is well documented and includes diagnostics tools to help you get started quickly. It provides flexibility in describing your cost function and incorporates an optional caching system for more efficiency.
It's open source
Check out the license and let us know how you use Manopt. Please cite this paper if you publish work using Manopt (bibtex).