Solving estimation problems is a fundamental component of numerous robotics applications. Prominent examples involve pose estimation, point cloud alignment, and object tracking. Algorithms for solving these estimation problems need to cope with new challenges due to an increased use of potentially poor low-cost sensors, and an ever growing deployment of robotic algorithms in consumer products, which operate in potentially unknown environments. These...