Robotics: Science and Systems XVII

DiSECt: A Differentiable Simulation Engine for Autonomous Robotic Cutting

Eric Heiden, Miles Macklin, Yashraj S Narang, Dieter Fox, Animesh Garg, Fabio Ramos


Robotic cutting of soft materials is critical for applications such as food processing; household automation; and surgical manipulation. As in other areas of robotics; simulators can facilitate controller verification; policy learning; and dataset generation. Moreover; differentiable simulators can enable gradient-based optimization; which is invaluable for calibrating simulation parameters and optimizing controllers. In this work; we present DiSECt: the first differentiable simulator for cutting soft materials. The simulator augments the finite element method (FEM) with a continuous contact model based on signed distance fields (SDF); as well as a continuous damage model that inserts springs on opposite sides of the cutting plane and allows them to weaken until zero stiffness; enabling crack formation. Through various experiments; we evaluate the performance of the simulator. We first show that the simulator can be calibrated to match resultant forces and deformation fields from a state-of-the-art commercial solver and real-world cutting datasets; with generality across cutting velocities and object instances. We then show that Bayesian inference can be performed efficiently by leveraging the differentiability of the simulator; estimating posteriors over hundreds of parameters in a fraction of the time of derivative-free methods. Finally; we illustrate that control parameters in the simulation can be optimized to minimize cutting forces via lateral slicing motions. We publish videos and additional results on our project website at



    AUTHOR    = {Eric Heiden AND Miles Macklin AND Yashraj S Narang AND Dieter Fox AND Animesh Garg AND Fabio Ramos}, 
    TITLE     = {{DiSECt: A Differentiable Simulation Engine for Autonomous Robotic Cutting}}, 
    BOOKTITLE = {Proceedings of Robotics: Science and Systems}, 
    YEAR      = {2021}, 
    ADDRESS   = {Virtual}, 
    MONTH     = {July}, 
    DOI       = {10.15607/RSS.2021.XVII.067}