Hippo: High-performance Interior-Point and Projection-based Solver for Generic Constrained Trajectory Optimization
Organizations: Tandon School of Engineering, New York University, USA · Munich Institute of Robotics and Machine Intelligence (MIRMI), Technical University of Munich (TUM), Germany
Abstract
Trajectory optimization is the core of modern model-based robotic control and motion planning. Existing trajectory optimizers, based on sequential quadratic programming (SQP) or differential dynamic programming (DDP), are often limited by their slow computation efficiency, low modeling flexibility, and poor convergence for complex tasks requiring hard constraints. In this paper, we introduce Hippo, a solver that can handle inequality constraints using the interior-point method (IPM) with an adaptive barrier update strategy and hard equality constraints via projection or IPM. Through extensive numerical benchmarks, we show that Hippo is a robust and efficient alternative to existing state-of-the-art solvers for difficult robotic trajectory optimization problems requiring high-quality solutions, such as locomotion and manipulation.
Figures & tables
| Solver | Parallelized | Eq. ii ii ii Eq./Ineq. - Equality/Inequality constraint handling. | Ineq. | Dynamics |
| Hippo (ours) | yes | proj. iii iii iii projection-based handling. /IPM | IPM | impl. |
| fatrop [ 26 ] | no | proj. | IPM | expl. |
| acados [ 7 ] | no | IPM | IPM | impl. |
| aligator [ 4 , 6 ] | yes | ALM | ALM | impl. |
| mim_solver [ 5 ] | yes | ALM | ALM | expl. |
| Solver | Inner Loop iv iv iv ’lin’ means only updating zero-order sensitivities. ’quad’ means com- puting new Newton steps of the LQ subproblems. | Param Update Scheme |
| Hippo /fatrop | iterative refinement (lin) | per outer loop |
| acados | hpipm qp loops (quad) | reset per outer loop |
| aligator(p) v v v the serial version of aligator does not have inner loop w.r.t. SQP steps | iterative refinement (lin) | if primal res. tol |
| mim_solver | ADMM step (lin) | per fixed num. updates |
| Solver | Iters | Inner Iters | Inner Tol. | Param vi vi vi barrier parameter for IPM and penalty parameter for ALM/ADMM. |
| Hippo | 100 | 2 | 1e-10 (abs) | 1 |
| acados | 100 | 50 | 1e-3 (abs) | 1 |
| fatrop | 100 | 5 | 1e-8 (abs) | 1 |
| aligator(s) | 400 | 0 | varying | 0.1 |
| mim_solver(1)/(2) | 400 | 5(15)/20(60) vii vii vii (..) the number of fixed inner steps to update the penalty parameters. | 1e-3 (abs) | 0.1 |
| Hippo | Hippo(i) | fatrop | acados | aligator | mim_solver | |
| # | 43 | 65 | 56 | 36/81 viii viii viii Only 36 out of the 81 solutions have acceptable slack values ( 1e-3). | 61 | (1):67;(2):64 |
| t ix ix ix ‘#‘: number of solved problems; ‘ t ‘: average timing per QP (ms) | 0.33 | 0.32 | 0.86 | 0.13 | 1.02 | (1):0.61;(2):1.1 |
| Solver | SQP Iters | Inner Iters | Inner Tol. | Param x x x barrier parameter for IPM and penalty parameter for ALM/ADMM |
| aligator(p) | 200 | 5 | varying | 0.1 |
| mim_solver | 200 | 100(50) xi xi xi (..) the number of fixed steps to update the penalty parameters | 1e-3 (abs) | 0.1 |
| RS xii xii xii R: reduced; S: simple; F: full; H: hard. ’#’ : number of solved problems. ’ t ’: average timing (ms) per QP. | FS | RH | FH | |||||
| trot | # | t | # | t | # | t | # | t |
| Hippo | 100 | 2.35 | 100 | 2.75 | 96 | 2.55 | 100 | 2.67 |
| Hippo(i) | 100 | 2.93 | 100 | 3.13 | 99 | 3.01 | 100 | 2.95 |
| fatrop | 100 | 24.9 | 100 | 25.0 | 100 | 24.9 | 100 | 23.9 |
| acados | 100 | 2.86 | 100 | 2.99 | 89 | 2.60 | 100 | 2.81 |
| aligator | 96 | 8.68 | 0 | - | 81 | 9.95 | 0 | - |
Trajectory Optimization
Trajectory optimization computes motion or control sequences that minimize costs while satisfying system dynamics, safety limits, and task constraints.
See all 205 papers