Simple-Robotics / proxsuite-nlp

A primal-dual augmented Lagrangian solver for nonlinear programming on manifolds.
https://simple-robotics.github.io/proxsuite-nlp/
BSD 2-Clause "Simplified" License
59 stars 11 forks source link
nonlinear-optimization robotics

Proxsuite Logo

proxsuite-nlp: a package for nonlinear optimization on manifolds

proxsuite-nlp is a C++ library, implementing a primal-dual augmented Lagrangian-type algorithm for nonlinear optimization on manifolds, as well as some modelling tools.

Installation

From Conda

From our channel

conda install -c simple-robotics proxsuite-nlp

From source with Pixi

To build proxsuite-nlp from source the easiest way is to use Pixi.

Pixi is a cross-platform package management tool for developers that will install all required dependencies in .pixi directory. It's used by our CI agent so you have the guarantee to get the right dependencies.

Run the following command to install dependencies, configure, build and test the project:

pixi run test

The project will be built in the build directory. You can run pixi shell and build the project with cmake and ninja manually.

From source

Clone this repo using

git clone [url-to-repo] --recursive

Create a build tree using CMake, build and install:

cd your/checkout/folder/
cmake -S . -B build
cmake --build build/ --config Release --target install

Dependencies

Python dependencies:

Notes

Credits

The following people have been involved in the development of proxsuite-nlp and are warmly thanked for their contributions:

Acknowledgments

The development of proxsuite-nlp is actively supported by the Willow team @INRIA and the Gepetto team @LAAS-CNRS.