CALIPSO

A Differentiable Solver for Trajectory Optimization

with Conic and Complementarity Constraints

Taylor Howell

thowell@stanford.edu

Simon Le Cleac'h

simonlc@stanford.edu

Zachary Manchester

zacm@cmu.edu

Kevin Tracy

ktracy@cmu.edu

interesting constraints are everywhere in robotics

interesting constraints are everywhere in robotics

complementarity

interesting constraints are everywhere in robotics

complementarity

cones

non-negative orthant

second-order

existing tools

existing tools

key ideas

primal-dual

augmented Lagrangian

complementarity constraints

state-triggered constraints

key ideas

primal-dual

augmented Lagrangian

complementarity constraints

interior-point

cone programming

inequality + second-order cone constraints

state-triggered constraints

impact

friction

key ideas

primal-dual

augmented Lagrangian

complementarity constraints

interior-point

cone programming

inequality + second-order cone constraints

implicit

differentiation

gradients through solver

state-triggered constraints

impact

friction

untuned

tuned

examples

ball-in-cup

bunny hop

quadruped gait

drifting

examples

ball-in-cup

bunny hop

quadruped gait

drifting

https://github.com/thowell/CALIPSO.jl
https://arxiv.org/abs/2205.09255

CALIPSO

A Differentiable Solver for Trajectory Optimization

with Conic and Complementarity Constraints

Taylor Howell, Kevin Tracy, Simon Le Cleac'h, Zachary Manchester

https://arxiv.org/abs/2205.09255
https://github.com/thowell/CALIPSO.jl
https://github.com/thowell/CALIPSO.jl

open-source solver

 

 

https://github.com/thowell/CALIPSO.jl

open-source solver

examples

 

https://github.com/thowell/CALIPSO.jl

open-source solver

examples

documentation

motivation

planning

motivation

planning

model-predictive control

motivation

for non-smooth systems

planning

model-predictive control

complementarity constraints

complementarity constraints

complementarity constraints

cone constraints

cone constraints

positive orthant

cone constraints

positive orthant

second-order cone

cone constraints

positive orthant

second-order cone

non-differentiable

application to robotics

application to robotics

friction cones

 

application to robotics

friction cones

impact constraints

 

 

application to robotics

friction cones

impact constraints

thrust limits

 

application to robotics

friction cones

impact constraints

thrust limits

state-triggered constraints

contact-implicit trajectory optimization

1D particle + impact + goal

contact-implicit trajectory optimization

contact-implicit trajectory optimization

contact-implicit trajectory optimization

complementarity constraints

contact-implicit trajectory optimization

cone constraints

contact-implicit trajectory optimization

Lagrangian

contact-implicit trajectory optimization

Lagrangian

KKT system

contact-implicit trajectory optimization

Lagrangian

KKT system

linear independence constraint qualification (LICQ) violation

contact-implicit trajectory optimization

Lagrangian

KKT system

cone variables

contact-implicit trajectory optimization

Lagrangian

KKT system

complementarity constraints

how do we solve these problems?

general-purpose solvers

trajectory-optimization solvers

trajectory-optimization solvers

trajectory-optimization solvers

CALIPSO key ideas

CALIPSO key ideas

primal-dual

augmented Lagrangian

complementarity constraints

CALIPSO key ideas

primal-dual

augmented Lagrangian

complementarity constraints

interior-point

cone programming

inequality + second-order cone constraints

CALIPSO key ideas

primal-dual

augmented Lagrangian

complementarity constraints

interior-point

cone programming

inequality + second-order cone constraints

implicit

differentiation

gradients through solver

augmented Lagrangian

augmented Lagrangian

augmented Lagrangian

primal method

augmented Lagrangian

primal method

primal-dual method

augmented Lagrangian

primal method

primal-dual method

dual update

interior-point

interior-point

interior-point

primal method

interior-point

primal method

primal-dual method

CALIPSO solver

CALIPSO solver

primal-dual augmented Lagrangian

CALIPSO solver

primal-dual augmented Lagrangian

interior-point method

CALIPSO solver

primal-dual augmented Lagrangian

interior-point method

problem data

implicit differentiation

solver finds a fixed point

implicit differentiation

solver finds a fixed point

solution sensitivities are efficiently computed

examples

https://github.com/thowell/CALIPSO.jl

CALIPSO

quadruped

ball-in-cup

bunny hop

drifting

contact-implicit trajectory optimization

dynamics at each time step

  • complementarity
  • impact
  • friction cones

CYBERDRIFT

model: Dubins car model subject to friction

ball-in-cup

model: end effector, ball, and string

bunny hop

model: body mass attached to two wheels via springs + dampers

quadruped gait

state-triggered constraints

non-smooth

complementarity

state-triggered constraints

non-smooth

complementarity

rocket landing

optimal unconstrained solution

state-triggered constraint solution

MPC autotuning

MPC autotuning

track reference trajectory

MPC autotuning

track reference trajectory

linear MPC policy

MPC autotuning

track reference trajectory

linear MPC policy

learn policy objective weights

acrobot swingup

open loop

(unstable)

acrobot swingup

open loop

untuned MPC

(unstable)

acrobot swingup

open loop

untuned MPC

autotuned MPC

( < 10 gradient steps!)

(unstable)

future work

  • semidefinite cones
  • fast implementation for real-time MPC
  • package precompilation
  • JAX/Torch/Chainrules.jl
  • codegen for embedded applications

Taylor Howell

Simon Le Cleac'h

Zachary Manchester

team

Kevin Tracy

roboticexplorationlab.org

CALIPSO

By taylorhowell

CALIPSO

  • 278