Sampling-based Model Predictive Control Leveraging Parallelizable Physics Simulations

Corrado Pezzato*1 Chadi Salmi*1 Elia Trevisan*1 Max Spahn1 Javier Alonso-Mora1 Carlos Hernández Corbato1

*Equal contribution 1TU Delft

Omnidirectional Push w Disturbances

Manipulator Push w Disturbances

Manipulator Push Left

Manipulator Push Right

Abstract

We present a method for sampling-based model predictive control that makes use of a generic physics simulator as the dynamical model. In particular, we propose a Model Predictive Path Integral controller (MPPI), that uses the GPU-parallelizable IsaacGym simulator to compute the forward dynamics of a problem. By doing so, we eliminate the need for manual encoding of robot dynamics and interactions among objects and allow one to effortlessly solve complex navigation and contact-rich tasks. Since no explicit dynamic modeling is required, the method is easily extendable to different objects and robots. We demonstrate the effectiveness of this method in several simulated and real-world settings, among which mobile navigation with collision avoidance, non-prehensile manipulation, and whole-body control for high-dimensional configuration spaces. This method is a powerful and accessible tool to solve a large variety of contact-rich motion planning tasks.

Image 1

Figure 1: Scheme of the proposed method using IsaacGym as the dynamic model for MPPI. At each time step, IsaacGym is reset to the current world's state $x$, and random input sequences ${V}$ are applied for the horizon $T$, to every environment. The resulting rolled-out trajectories are used by MPPI to approximate the optimal control $u_0^*$ given a cost function $C$.

Omidirectional Motion Planning
 
Manipulator Motion Planning
 
Omnidirectional Box Push

Collision avoidance with the obstacles

Omnidirectional Box Push

Collision avoidance with the obstacles

Omnidirectional Ball Roll

Change object: roll against obstacles

Omnidirectional Ball Roll

Change object: roll against obstacles

Differential Drive Box Push

Change robot: just change the URDF!

12-DOF Pick and Delivery

Control velocity of all joints, including fingers.

Manipulator Push

Keep the same orientation

Manipulator Push

Rotatate $90^\circ$

Manipulator Push

Keep the same orientation

Manipulator Push

Rotatate $30^\circ$