Contact-implicit MPC:
Methods analysis and comparison
Quals update / overview
Contact-implicit methods allow for adaptible/complex actions.
Contact-implicit MPC: Methods comparison study
Contact-implicit formulation: Contact is a decision variable
force/dynamics agreement
Explicit contact formulation: Contact follows pre-specified schedule
dynamics
dynamics
contact force constraints
Optimizing over contact boundary is not easy
Contact-implicit MPC: Methods comparison study
- Rigid dynamics at contact boundaries leads to non-differentiable constraints
- To solve this, must introduce a "cheat"
- Make force transition differentiable
- Optimize over different contact modes separately + reason about choosing
This project looks at three types of contact-implicit method:
-
Sampling-based methods: Try a set of random inputs, allowing for sampling of other contact modes
→ MuJoCo MPC (Howell et. al)
-
Differentiable contact models: Add a small relaxation to the contact force Jacobian at contact boundaries, allowing for solutions to cross modes by indicating "force at a distance"
→ Fast CI-MPC (Cleac'h et. al)
-
Contact force -- dynamics disparity: Allow the controller to separately solve for desired contact and feasible dynamics, and then reconcile the conflict
→ C3 (Aydinoglu et. al)
Methods of comparison
Contact-implicit MPC: Methods comparison study
Many current methods are not evaluated on the same tasks or metrics, which makes it difficult to understand their true contributions / the state of the field
CI-MPC (Cleach et. al) | MuJoCo MPC (Howell et. al) | C3 (Aydinoglu et. al) |
---|---|---|
Pushbot | Shadow Hand | Cartpole with soft walls |
2D Hopper | Humanoid | 2D finger gaiting |
3D Hopper | Quadruped | 2D object pivoting |
Quadruped | Franka ball rolling | |
Biped | Franka waiter task |
This project: Compare different SoTA methods on a set of benchmark tasks
Problem: Current evaluation is not standard.
Contact-implicit MPC: Methods comparison study
What makes a good benchmark?
Benchmark tasks should:
- demonstrate important abilities that are needed for many tasks
- differentiate the strengths and weaknesses of different fundamental approaches.
Aspects of interest:
- Taking advantage of both sticking and sliding contact
- Ability to handle small solution set relative to possible actions
- Ability to scale with number of contacts/inputs
- Ability to pursue "non-obvious" contact (moving around an object, exhibiting longer-horizon action sequences)
Contact-implicit MPC: Methods comparison study
Project benchmark tasks and implementation
Contact-implicit MPC: Methods comparison study


Pushbot: baseline task, unstable equilibrium
2D Waiter: stick-slip transitions

Stacked pushbot: number of contacts and inputs / small solution set
Circle corralling: number of contacts, longer horizon actions
Project benchmark tasks and implementation
Contact-implicit MPC: Methods comparison study

- Time to success (within margin of goal for X seconds)
- Control loop speed
- formal complexity analysis
- memory / compute resource efficiency
- Observed qualitative behaviors achieved
- smoothness of trajectory (jerk, etc)
- average contact force
- number of contact instances made
- (come up with metrics for these behaviors)
- Sensitivity to initial state and disturbances
- Tuning sensitivity
Evaluation
Contact-implicit MPC: Methods comparison study
quals-grey
By Grey Sarmiento
quals-grey
- 48