. Our algorithm recursively partitions the SLAM graph into a submap tree, and the optimization runs from the leaves to the root. Following the treemap visualization [1], each rectangle represents a submap, and the sub-rectangles represent the submaps in the child level. The red and green dots are robot poses and landmarks respectively. From left to right: 1). the finest level of submaps; 2). the coarsest level of submaps; 3). the optimized full map. Abstract-We propose a novel batch algorithm for SLAM problems that distributes the workload in a hierarchical way. We show that the original SLAM graph can be recursively partitioned into multiple-level submaps using the nested dissection algorithm, which leads to the cluster tree, a powerful graph representation. By employing the nested dissection algorithm, our algorithm greatly minimizes the dependencies between two subtrees, and the optimization of the original SLAM graph can be done using a bottom-up inference along the corresponding cluster tree. To speed up the computation, we also introduce a base node for each submap and use it to represent the rigid transformation of the submap in the global coordinate frame. As a result, the optimization moves the base nodes rather than the actual submap variables. We demonstrate that our algorithm is not only exact but also much faster than alternative approaches in both simulations and real-world experiments.
REF extended their previous approach to include multiple levels and use nested dissection to minimize the dependence between two subtrees.
Multi-level submap based SLAM using nested dissection
2010 IEEE/RSJ International Conference on Intelligent Robots and Systems
2010 IEEE/RSJ International Conference on Intelligent Robots and Systems
Computer Science