Pymanopt: A Python Toolbox for Optimization on Manifolds using Automatic Differentiation

03/10/2016
by   James Townsend, et al.
0

Optimization on manifolds is a class of methods for optimization of an objective function, subject to constraints which are smooth, in the sense that the set of points which satisfy the constraints admits the structure of a differentiable manifold. While many optimization problems are of the described form, technicalities of differential geometry and the laborious calculation of derivatives pose a significant barrier for experimenting with these methods. We introduce Pymanopt (available at https://pymanopt.github.io), a toolbox for optimization on manifolds, implemented in Python, that---similarly to the Manopt Matlab toolbox---implements several manifold geometries and optimization algorithms. Moreover, we lower the barriers to users further by using automated differentiation for calculating derivative information, saving users time and saving them from potential calculation and implementation errors.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/06/2022

CDOpt: A Python Package for a Class of Riemannian Optimization

Optimization over the embedded submanifold defined by constraints c(x) =...
research
10/03/2018

McTorch, a manifold optimization library for deep learning

In this paper, we introduce McTorch, a manifold optimization library for...
research
03/01/2021

Manifold optimization for optimal transport

Optimal transport (OT) has recently found widespread interest in machine...
research
06/20/2016

Benchmarking Python Tools for Automatic Differentiation

In this paper we compare several Python tools for automatic differentiat...
research
03/18/2022

PYROBOCOP: Python-based Robotic Control Optimization Package for Manipulation

PYROBOCOP is a Python-based package for control, optimization and estima...
research
12/06/2021

A hybrid projection algorithm for stochastic differential equations on manifolds

Stochastic differential equations projected onto manifolds occur widely ...
research
06/06/2021

PYROBOCOP : Python-based Robotic Control Optimization Package for Manipulation and Collision Avoidance

PYROBOCOP is a lightweight Python-based package for control and optimiza...

Please sign up or login with your details

Forgot password? Click here to reset