iSAM is an optimization library for sparse nonlinear problems as encountered in simultaneous localization and mapping (SLAM). The iSAM library provides efficient algorithms for batch and incremental optimization, recovering the exact least-squares solution. The library can easily be extended to new problems, and functionality for often encountered 2D and 3D SLAM problems is already provided. The iSAM algorithm was originally developed by Michael Kaess and Frank Dellaert at Georgia Tech.
Parts of the Manhattan world dataset during incremental optimization.
iSAM provides a range of advantages over other state-of-the-art SLAM algorithms, for details please see:>Comparison to other algorithms
iSAM has successfully been used online on a range of mobile robot platforms, including ground robots (DARPA LAGR platform, Willow Garage PR2), aerial robots (quadrotors), and underwater robots (Bluefin HAUV, Hydroid REMUS 100).
iSAM is available as open source under GNU LGPL version 2.1.
iSAM runs on both Linux and Mac OS X (Windows is not supported). iSAM requires cmake, and depends on SuiteSparse and the SDL library for visualization. Detailed installation instructions are part of the included documentation ("make doc").>
You can check out iSAM from our public svn repository:
svn co https://svn.csail.mit.edu/isam
Or you can download the current and previous releases
isam_v1_7.tgz (2.0 MB) (Jul 2, 2013)
isam_v1_6.tgz (2.0 MB) (Mar 30, 2012) [fixed ChangeLog Apr 15, 2012]
isam_v1_5.tgz (1.2 MB) (Nov 12, 2010)
isam_v1_4.tgz (1.2 MB) (Aug 29, 2010)
Details of the algorithms used in this software are provided in these publications:
Newer publications will be available from my web page.
Many thanks to Richard Roberts for his help with this software. Thanks also to John McDonald, Ayoung Kim, Ryan Eustice, Aisha Walcott, Been Kim and Abe Bachrach for their feedback and patience with earlier versions.