  An efficient, generalizable physical simulator with universal uncertainty
estimates has wide applications in robot state estimation, planning, and
control. In this paper, we build such a simulator for two scenarios, planar
pushing and ball bouncing, by augmenting an analytical rigid-body simulator
with a neural network that learns to model uncertainty as residuals. Combining
symbolic, deterministic simulators with learnable, stochastic neural nets
provides us with expressiveness, efficiency, and generalizability
simultaneously. Our model outperforms both purely analytical and purely learned
simulators consistently on real, standard benchmarks. Compared with methods
that model uncertainty using Gaussian processes, our model runs much faster,
generalizes better to new object shapes, and is able to characterize the
complex distribution of object trajectories.
