Planning and Control for Contact-rich Manipulation


Tao Pang
Oct 2022

Why contact-rich?

Collision-free Motion Planning
Interact with the world

Interact with the world
Collision-free Motion Planning
But this is excessively restrictive!
We'd like to enable robots to make contacts with the world like humans do.
Why contact-rich?

Box

What if we have a larger box...?

We need to use a bigger arm...
Or make more contacts!


- Contact-rich manipulation allows smaller robots to handle bigger objects.
- Smaller robots are safer to easier to work in environments designed for humans.


Contact-rich Manipulation at Different Scales

A few more arms
Smaller

Contact-rich planning and control can enable both bimanual whole-arm manipulation and dexterous manipulation.
Why is contact-rich planning hard?

Contact dynamics is non-smooth!
Two solutions
Smooth contact-dynamics and use smoothed gradients
Reason explicitly about contact mode transitions
Contact
No Contact
- But descent methods get stuck in local minima.
- Good at escaping local minima,
- But mode enumeration scales poorly (exponentially) with the number of contacts.

smoothed dynamics
original dynamics
\(u = 0\)
Model-based Planning through Contact: a Quick Review
- Trajectory Optimization through Contact
- Mordatch, Igor, Emanuel Todorov, and Zoran Popović. "Discovery of complex behaviors through contact-invariant optimization." ACM Transactions on Graphics (TOG), 2012.
- Hogan, François Robert, and Alberto Rodriguez. "Feedback control of the pusher-slider system: A story of hybrid and underactuated contact dynamics." arXiv preprint arXiv:1611.08268 (2016).
- Posa, Michael, Cecilia Cantu, and Russ Tedrake. "A direct method for trajectory optimization of rigid bodies through contact." The International Journal of Robotics Research, 2014.
- Aydinoglu, Alp, and Michael Posa. "Real-time multi-contact model predictive control via admm." 2022 International Conference on Robotics and Automation (ICRA), 2022.
- Cheng, Xianyi, et al. "Contact mode guided motion planning for quasidynamic dexterous manipulation in 3d." 2022 International Conference on Robotics and Automation (ICRA), 2022.
- Marcucci, Tobia, et al. "Approximate hybrid model predictive control for multi-contact push recovery in complex environments." 2017 IEEE-RAS 17th International Conference on Humanoid Robotics (Humanoids), 2017.
- Enumerate mode switches locally
- Enumerate Mode Switches
- Sampling mode switches
Smoothed Contact Dynamics
Hybrid Contact Dynamics
Local Planning
Global Planning
Smoothed dynamics + Global planning?

[1] Mordatch et al.

[3] Posa et al.
[5] Cheng et al.


[6] Marcucci et al.

[4] Aydinoglu and Posa.

[2] Hogan and Rogriguez.
What about RL (reinforcement learning)?

- RL generates robust policies for specific tasks, but...
- RL requires heavy offline computation,
- the learned policy does not generalize (e.g. to opening a door).
- In contrast, planning can solve new tasks with a small amount of online compute.
- We believe a good manipulation pipeline will have both plans and policies.

- Andrychowicz, OpenAI: Marcin, et al. "Learning dexterous in-hand manipulation." The International Journal of Robotics Research, 2020.
- Lee, Joonho, et al. "Learning quadrupedal locomotion over challenging terrain." Science robotics, 2020.
-
H.J. Terry Suh*, Tao Pang*, Russ Tedrake, “Bundled Gradients through Contact via Randomized Smoothing”, RA-L, 2022.
-
Tao Pang*, H.J. Terry Suh*, Lujie Yang, Russ Tedrake, "Global Planning for Contact-Rich Manipulation via Local Smoothing of Quasi-dynamic Contact Models", under review.
[2] Lee et al.
[1] OpenAI.
How does RL power through non-smooth contact dynamics? [3][4]
- RL minimizes a stochastic objective via sampling.
- Sampling has a smoothing effect on the objective's landscape.
Taking a page from RL's book, we smooth contact dynamics, but without using samples (faster).

Terry Suh
Our method: Kino-dynamic RRT through contact
- We leverage the sampling-based nature of RRT to globally explore the state space.
- Instead of thinking about mode transitions, we abstract modes away using smoothed linearization of the contact dynamics.
- We propose an reachability-based distance metric for RRT to efficiently explore the state space.
- Mode abstraction and the distance metric are enabled by a Convex, Quasi-static, Differentiable contact dynamics model.
- Convex: the discrete-time dynamics \(x_+ = f(x, u)\) can be evaluated by solving a convex program.
-
Quasi-static:
- Valid for many manipulation tasks.
- Smaller state space,
- Larger step size,
- The dynamics model can be easily smoothed.
- Differentiable: the smoothed gradients can help RRT by providing an effective distance metric.
Our Method: Sim and Hardware Demos.
- RRT takes less than a minute.
Open-loop execution of contact-rich plans:
What is quasi-static dynamics?
- Quasi-static: velocity is small so that inertial and Coriolis forces are negligible.
- \(x \coloneqq q \coloneqq [q^\mathrm{u}, q^\mathrm{a}]\): system configuration.
- \(q^\mathrm{a}\): actuated, imepdance-controlled robots
- \(q^\mathrm{u}\): un-actuated objects.
- \( u \):
robot velocitiesposition command to the stiffness-controlled robots [1]. - \(\delta q \coloneqq q_+ - q\)
- \(h\): step size in seconds.
\( x_{+} = f(x, u)\)
- \(\lambda_i\): contact forces/impulses
- \(\phi_i \): signed distances
(KKT)
- A convex quadratic program (QP), after linearizing \(\phi_i\).
- "Minimizing potential energy, subject to non-penetration constraints."
Force balance of the robot.
Force balance of the object.
Non-penetration.
"Contact forces cannot pull."
"Contact force needs contact."
-
Tao Pang, Russ Tedrake, "A Convex Quasistatic Time-stepping Scheme for Rigid Multibody Systems with Contact and Friction", ICRA, 2021.
Quasi-static dynamics is good for manipulation planning!
- Many manipulation tasks are quasi-static.
- Spatial benefit: Smaller state space (\([q, v]\) vs. only \(q\)).
-
Temporal benefit: Ignoring transients => looking into the future with fewer steps.
-
Tao Pang, Russ Tedrake, "A Convex Quasistatic Time-stepping Scheme for Rigid Multibody Systems with Contact and Friction", ICRA, 2021.


Second-order Dynamics
Quasi-static Dynamics
Quasi-static Dynamics Needs Regularization
Quasi-static Dynamics
- The quadratic cost is positive semi-definite.
- The object can be anywhere between the robot and the wall, similar to having a null space.
Regularized least squares
Regularized Quasi-static Dynamics
- The quadratic cost is now positive definite.
- "Among all possible object motions, give me the one that moves the least."
- Picking \(\epsilon = m^\mathrm{u} / h\) gives Mason's definition of quasi-dynamic dynamics.
What about friction?
- For a frictionless multi-body system with \(n_\mathrm{c}\) contacts, the dynamics can be solved as a QP:
- \(\mathcal{K}^\star_i\) is the dual of the \(i\)-th friction cone.
- Still convex! Convexity is achieved at the expense of "hydroplaning" between relatively-sliding objects.
- But hydroplaning disappears as \(h \rightarrow 0\).
- Anitescu [1] has a nice convex approximation of Coulomb friction constraints, allowing us to write down the dynamics as a Second-Order Cone Program (SOCP):
Tangential displacements
Dynamics of the Toy Problem
- Anitescu, Mihai. "Optimization-based simulation of nonsmooth rigid multibody dynamics." Mathematical Programming 105.1 (2006): 113-143.
Differentiability
Convex, Quasi-Static, Differentiable Dynamics (an SOCP)
- The KKT optimality condition of the dynamics SOCP defines equality constraints (including active contact constraints), from which the derivatives of \(\delta q^\star\) w.r.t. \((\mathbf{Q}, b, \phi_i, \mathbf{J}_{\mathrm{n}_i}, \mathbf{J}_{\mathrm{t}_i})\) can be computed using the Implicit Function Theorem (IFT).
- \(\mathbf{A}, \mathbf{B}\) can then be computed using the gradients from IFT and the chain rule.
- Standard practice for many differentiable simulators, even though many of them do not find the active constraints by solving convex programs.



Smoothing
- The contact dynamics \(f(q, u) \in C^0\) has discontinuous gradients, which are bad for planning methods that use gradients.
- Smoothing with "force at a distance" is a common method to alleviate this problem.
Optimality Condition
KKT
Original Dynamics
Smoothed Dynamics
Smoothing, the general case.
Put constraints in a generalized log for \(\mathcal{\kappa}_i^\star\)
- An unconstrained convex program.
- Can be solved with Newton's method.
- Also differentiable.
Convex, Quasi-Dynamic, Differentiable Dynamics (an SOCP)
Notation:
Original dynamics
Smoothed dynamics
Smoothed gradients enable trajectory optimization for dexterous hands, but...
Task: Turning the ball by 30 degrees.
What about 180 degrees?
Finding this trajectory requires powering through local minima!
Sampling-based Motion Planing is Great at Global Exploration, but...

- Rapidly-Exploring Random Tree (RRT): iteratively builds a tree that fills the state space. [1]
- Dynamic reachability is essential for efficient exploration. [2]


- Steven M. LaValle, "Planning Algorithms", Cambridge University Press , 2006.
-
H.J.T. Suh, J. Deacon, Q. Wang, "A Fast PRM Planner for Car-like Vehicles", self-hosted, 2018.
How do we think about reachability under the contact-dynamics constraint?
A distance metric that reflects contact dynamic reachability
Smoothed Contact Dynamics

\(\varepsilon \) sub-level set
Nominal state
un-actauted(objects)
Smoothed
At state \(\bar{q}\), what doe an \(\varepsilon\)-ball in action space get transformed into under the smoothed dynamics?
RRT through contact
Two modifications to the vanilla RRT are made:
- Nearest node on tree is found using \( d^\mathrm{u}_{\rho}(q; \bar{q}) \).
- Contact sampling: robot configuration is occasionally reset to one that has a good distance metric, which typically corresponds to grasps.
Distance Metric
RRT tree for a simple system with contacts


Ablation study: what trees look like after growing a fixed number of nodes.
The modified RRT works well for contact-rich tasks!


Planning wall-clock time (seconds)
Preliminary: stabilizing contact-rich plans
Open-loop
Closed-loop




Naive QP controller based on smoothed linearization:
Presented Works
Collaborators

-
Tao Pang*, H.J. Terry Suh*, Lujie Yang, Russ Tedrake, "Global Planning for Contact-Rich Manipulation via Local Smoothing of Quasi-dynamic Contact Models", under review.
-
H.J. Terry Suh*, Tao Pang*, Russ Tedrake, “Bundled Gradients through Contact via Randomized Smoothing”, RA-L, 2022.
-
Tao Pang, Russ Tedrake, "A Convex Quasistatic Time-stepping Scheme for Rigid Multibody Systems with Contact and Friction", ICRA, 2021.



Terry Suh
Lujie Yang
Russ Tedrake
Quasi-static dynamical systems: how to fix it.
A Impedance-controlled 1D robot and an object.
- Pang, Tao, and Russ Tedrake. "A convex quasistatic time-stepping scheme for rigid multibody systems with contact and friction." 2021 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2021.
- Pang, Tao, and Russ Tedrake. "A robust time-stepping scheme for quasistatic rigid multibody systems." 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2018.
\( x_{+} = f(x, u)\)
- \(x \coloneqq q \coloneqq [q^\mathrm{u}, q^\mathrm{a}]\): system configuration.
- \(q^\mathrm{a}\): actuated, imepdance-controlled robots
- \(q^\mathrm{u}\): un-actuated objects.
- \( u \):
robot velocities.position command to the impedance-controlled robots.
Contact force and \(q_+\) can now be uniquely* determined from \(u\), even for grasping.
Force-acceleration vs. Impulse-Momentum
Force-acceleration
- Stewart, David E. "Rigid-body dynamics with friction and impact." SIAM review 42.1 (2000): 3-39.
Impulse-momentum
is the optimality condition of
But impacts can lead to infinite forces (e.g. Painleve's Paradox) [1].
Time step
Stabilizing contact-rich plans

Open-loop hardware




Open-loop Drake
talk
By Pang
talk
- 368