  The objective of trajectory optimization algorithms is to achieve an optimal
collision-free path between a start and goal state. In real-world scenarios
where environments can be complex and non-homogeneous, a robot needs to be able
to gauge whether a state will be in collision with various objects in order to
meet some safety metrics. The collision detector should be computationally
efficient and, ideally, analytically differentiable to facilitate stable and
rapid gradient descent during optimization. However, methods today lack an
elegant approach to detect collision differentiably, relying rather on
numerical gradients that can be unstable. We present DiffCo, the first, fully
auto-differentiable, non-parametric model for collision detection. Its
non-parametric behavior allows one to compute collision boundaries on-the-fly
and update them, requiring no pre-training and allowing it to update
continuously in dynamic environments. It provides robust gradients for
trajectory optimization via backpropagation and is often 10-100x faster to
compute than its geometric counterparts. DiffCo also extends trivially to
modeling different object collision classes for semantically informed
trajectory optimization.
