Simultaneous Learning of Contact and Continuous Dynamics

November 2023   Bianchini

Project Documents

  CoRL_2023_poster.pdf

We published our work on data efficient model building through contact in a paper at the Conference on Robot Learning (CoRL) 2023 in Atlanta, GA. My co-authors are recent Penn PhD graduate Mathew Halm and our advisor, Professor Michael Posa. Our project simultaneously built contact and continuous dynamics of novel, possibly multi-link objects by observing their dynamics through collision-rife trajectory data.

We've made all of the below publicly available for any interested researchers/readers:

Video 1:  My 1-minute spotlight talk, submitted and presented live at CoRL 2023.

Paper abstract

Robotic manipulation can greatly benefit from the data efficiency, robustness, and predictability of model-based methods if robots can quickly generate models of novel objects they encounter. This is especially difficult when effects like complex joint friction lack clear first-principles models and are usually ignored by physics simulators. Further, numerically-stiff contact dynamics can make common model-building approaches struggle. We propose a method to simultaneously learn contact and continuous dynamics of a novel, possibly multi-link object by observing its motion through contact-rich trajectories. We formulate a system identification process with a loss that infers unmeasured contact forces, penalizing their violation of physical constraints and laws of motion given current model parameters. Our loss is unlike prediction-based losses used in differentiable simulation. Using a new dataset of real articulated object trajectories and an existing cube toss dataset, our method outperforms differentiable simulation and end-to-end alternatives with more data efficiency.

Citation

@inproceedings{bianchini2023simultaneous,
  title = {Simultaneous Learning of Contact and Continuous Dynamics},
  author = {Bianchini, Bibit and Halm, Mathew and Posa, Michael},
  year = {2023},
  month = nov,
  booktitle = {Conference on Robot Learning (CoRL)},
  url = {https://openreview.net/forum?id=-3G6_D66Aua}
}

Dataset

Figure 1:  Automated data collection with Franka Panda arm.

We automated the collection of over 500 tosses of a two-link articulated object using a Franka Panda 7-DOF robotic arm.  We tracked the poses of the 2 links using TagSLAM then converted the two poses to minimal coordinates via an optimization problem.

Methods

Figure 2:  Our method for learning dynamics of an unknown object.

We aim to do model building, or system identification, of an unknown system with which a robot is interacting.  A Franka Panda arm repeatedly lifts and tosses an unknown articulated object onto a flat table, and cameras track the object's configuration over time.  This data is grouped into current and next state pairs.  We formulate an optimization problem that determines the best explaining contact forces given the observed dynamics transitions.  Our loss function penalizes those contact forces' violation of realistic contact dynamics, given the current belief of the physical parameters like geometry, friction, and inertia.  This loss informs the update of the physical parameters in a data efficient manner.  Then the converged physical parameters can be combined with a contact solver / simulator of choice to perform forward dynamics predictions.

Implicit representation and violation-based loss

Figure 3:  Explicit (left) models and implicit (right) models, during inference (top) and training (bottom).

In the figure above, the explicit and implicit representations during inference (simulation) are in blue in the top row at left and right, respectively.  Explicit models are typically trained with prediction-based losses (bottom left), as can implicit approaches as in DiffSim (bottom middle).  Our alternative trains implicit representations with a violation-based loss (bottom right).

Our approach utilizes both:

This is in contrast to:

Geometry reconstruction results

Figure 4:  Geometry reconstruction results.

Above:  Geometry learning results on an articulated object.  Ground truth is in red, and the learned geometry is in blue.  Geometry is parameterized by a set of 8 vertices per link.

Dynamics predictions

Figure 5:  Continuous + ContactNets (CCN) before (left) and after (right) training.

Figure 6:  DiffSim before (left) and after (right) training.

Figure 7:  End-to-end before (left) and after (right) training.

Quantitative results

Figure 8:  Quantitative results.

We present four scenarios above, in order from left to right columns:

The three rows are the following metrics, from top to bottom (see our paper for more details on these calculations):

Discussion

Both real experiments (articulated object and cube in left and left middle columns, respectively) show separation between CCN, DiffSim, and End-to-end methods, with CCN at least matching and often outperforming the alternatives along all metrics, especially with more training data.  On the cube dataset, CCN and CCN-R consistently converge to volume error of less than 10%.  DiffSim struggles to improve its volume error, even with more data.  On the real data, inclusion of a residual does not significantly help either the CCN or DiffSim approaches.  The residual makes improvements in the simulated examples, where CCN-R in the vortex scenario (right middle column) improves its positional trajectory error significantly with more data, achieving consistently 5x better performance than any other method by the largest tested dataset size. On the same metric, DiffSim-R sees no improvement beyond DiffSim.  In the gravity scenario (right column), the residual helps CCN-R maintain its good performance achieved at the correct gravitational acceleration, across all initial gravitational acceleration models.  In contrast, DiffSim-R outperforms DiffSim at every initial gravitational acceleration model.  Since this gravity scenario swept over different modeled gravitational accelerations, End-to-end is unaffected since its representation is unstructured.  Thus it is expected that its performance is consistent over the x-axis of these plots, and its results are included for reference against CCN and DiffSim.

Back to Bibit Back to all posts