Comparison to "Integrating Generic Sensor Fusion Algorithms with Sound State Representations through Encapsulation of Manifolds"?

24 views
Skip to first unread message

cbe...@gmail.com

unread,
Feb 23, 2020, 4:03:48 AM2/23/20
to Manopt
Hello,

I come from a robotics background, and I recently heard about ManOpt. In robotics applications, we are often concerned with solving optimization problems where the goal is to determine the optimal 3D rotation (element of SO(3)) or rigid transformation (element of SE(3)) according to  some cost function. In other cases, we want to optimize for several rotations or rigid transformations. These types of optimization problems come up often in calibration, mapping, tracking, bundle adjustment, etc.

One relatively common approach in the robotics literature is from the paper "Integrating Generic Sensor Fusion Algorithms with Sound State Representations through Encapsulation of Manifolds".
https://arxiv.org/abs/1107.1119

The core idea is that one must define a "boxplus" and "boxminus" operator for a particular manifold. These operators establish a mapping from the manifold in the optimization problem to R^N.  One benefit of this approach is that you can adapt common algorithms for things like like nonlinear least squares to work on manifolds with very little thought/code.

How does ManOpt compare to this approach in general? When adding a new manifold to the ManOpt, it seems that ManOpt requires far more than just "boxplus" and "boxminus" - what benefit does this yield on a practical level?  Sorry for this naive question - I am far from an expert in this area and I'm still reading over some of the basic papers in this area to gain understanding. However, I want to understand the practical benefits before I read too much :)

Thanks,
Ceberous

Nicolas Boumal

unread,
Feb 24, 2020, 8:10:46 AM2/24/20
to Manopt
Hello Ceberous,

I am not familiar with that approach, but I'm guessing that if you map all of SO(3) to a linear space, then symmetry will be broken. This may mean that if we take some problem data and rotate it (corresponding to a change of world coordinates), then the algorithm may perform differently. In contrast, the manifold approach preserves symmetry, so this wouldn't be an issue.

As for how this and Manopt compare in practice: the only way to tell is to try them on some numerical examples. Manopt tends to perform quite well, but I have no experience with the approach you mentioned, so I can't tell. I'd be interested in hearing about the results if you try!

Also: if you'd like an introductory text to all of this, I can send you a draft of my upcoming book: you can e-mail me directly for this.

Best,
Nicolas
Reply all
Reply to author
Forward
0 new messages