Skip to content

kul-optec/alpaqa

Repository files navigation

CI Tests: C++ CI Tests: Python CI: Matlab Docs PyPI Downloads GitHub all releases GitHub License

alpaqa

alpaqa is an efficient implementation of an augmented Lagrangian method for general nonlinear programming problems, which uses the first-order, matrix-free PANOC algorithm as an inner solver.
The numerical algorithms themselves are implemented in C++ for optimal performance, and they are exposed as an easy-to-use Python package. An experimental MATLAB interface is available as well.

The solvers in this library solve minimization problems of the following form:

$$ \begin{equation} \begin{aligned} & \underset{x}{\textbf{minimize}} & & f(x) &&&& f : {\rm I\!R}^n \rightarrow {\rm I\!R} \\ & \textbf{subject to} & & \underline{x} \le x \le \overline{x} \\ &&& \underline{z} \le g(x) \le \overline{z} &&&& g : {\rm I\!R}^n \rightarrow {\rm I\!R}^m \end{aligned} \end{equation} $$

Documentation

Installation

The Python interface can be installed directly from PyPI:

python3 -m pip install --upgrade --pre alpaqa

For more information, please see the full installation instructions.

Publications

Pieter Pas, Mathijs Schuurmans, and Panagiotis Patrinos. Alpaqa: A matrix-free solver for nonlinear MPC and large-scale nonconvex optimization. In 2022 European Control Conference (ECC), pages 417–422, 2022.

About

Library for nonconvex constrained optimization using the augmented Lagrangian method and the matrix-free PANOC algorithm.

Resources

License

Stars

Watchers

Forks

Packages

No packages published