Open Source Robotics

A curated collection of high-quality open source robotics projects, tools, and software to propel the robotics community forward.

ProxSuite

High-performance QP/LP solver for robotics control and optimization

License

BSD-2-Clause

Overview

ProxSuite is an advanced optimization toolbox from the Willow and Sierra teams at Inria, ENS Paris and CNRS (Willow also co-develops Pinocchio) providing efficient solvers for quadratic programming (QP) and linear programming (LP) problems in robotics. Its core ProxQP solver uses a novel primal-dual proximal augmented Lagrangian approach, delivering state-of-the-art performance for model predictive control (MPC), whole-body control, and trajectory optimization. Supports dense, sparse, and mixed problem formulations with C++ and Python interfaces.

ProxSuite is an open-source collection of numerical optimization solvers developed by the Willow and Sierra research groups at Inria and Ecole Normale Superieure in Paris. Its flagship component, ProxQP, solves quadratic programs using a primal-dual proximal augmented Lagrangian method that achieves both high speed and numerical robustness — even on ill-conditioned or infeasible problems.

The toolbox provides dense, sparse, and matrix-free solver backends, allowing users to match the solver to their problem structure. Advanced features include SIMD vectorization support, warm-starting from previous solutions, batch QP solving in parallel, nonconvex QP handling, and the ability to differentiate through QP solutions for learning-based applications.

ProxSuite is already integrated into major optimization ecosystems including CVXPY, CasADi, and the TSID robotic inverse dynamics framework built on Pinocchio. It is distributed via pip, conda, and Homebrew, with bindings for Python and Julia alongside the core C++ library.

Why it matters

Quadratic programming is at the heart of robot control — from whole-body controllers and model predictive control to inverse dynamics with contacts. ProxSuite's ProxQP solver delivers state-of-the-art performance on the hardest QP benchmarks while handling both convex and nonconvex problems, making it a critical building block for real-time robotics optimization.

Problem it solves

Real-time robot controllers need to solve quadratic programs at high frequency with guaranteed numerical stability, even for ill-conditioned or infeasible problems. ProxSuite provides solvers that are simultaneously fast, numerically robust, and flexible enough to handle dense, sparse, and matrix-free problem formulations — returning useful results even when a QP is primal infeasible.

Key takeaways

  • ProxQP solver uses a primal-dual proximal augmented Lagrangian approach for robust QP solving
  • Supports dense, sparse, and matrix-free backends with SIMD vectorization for peak performance
  • Handles nonconvex QPs and returns closest feasible solutions for infeasible problems
  • Integrated into CVXPY, CasADi, and the TSID task-space inverse dynamics framework
  • Available via pip, conda, and Homebrew with Python and Julia bindings

Who it is for

  • Robotics control engineers implementing MPC or whole-body controllers
  • Optimization researchers benchmarking QP solver performance
  • Legged robotics developers needing real-time contact-aware control
  • Operations research practitioners solving large-scale QPs and LPs

Limitations

  • Focused on QP and LP problems — not a general nonlinear programming solver
  • Peak performance requires compilation with vectorization flags (-march=native)
  • Relatively young project compared to established solvers like OSQP or qpOASES
  • Advanced features like batch solving and QP differentiation have a steeper learning curve

This website requires JavaScript to function properly. Please enable JavaScript to explore our collection of open source robotics projects.