I have a thesis work about Graph Slam The GraphSLAM Algorithm with Applications to Large-Scale Mapping of Urban Structures I try to implement it with the help of this paper but during the implementation stage I came to know that it requires a huge memory space if your dataset is huge. It is a offline slam algorithm so everything that it computes store in the memory. So basically for this boundary, I fail to implement it.

Next, I am looking for a alternative solution and from Probabilistic Robotics I got one name Sparse extended Information Filter which is referred as online algorithm of GraphSlam.

To implement SEIF, Lectures on Youtube is very helpful.

This picture define motion update for SEIF slam

Motion Update

How many time this algorithm iterate?. There is no looping concept.

From line 9, I understand that $\Omega$ is a 33*33 matrix if I have a 15 landmark. 1st 3*3 matrix for pose update and rest of them is for landmarks.

For line 10, I understand that Xi is also a (3*3) matrix. Am I correct? But as per the algorithm develop Xi should be a (3*1) dimension matrix. $\bar\Omega_tF_x^t\delta_t$ represent a 3*3 dimension matrix. As per matrix addition both matrix must have same dimension for addition. The resultant matrix also have same dimension with additive matrix. So, I understand Xi is a 3*3 matrix. What is the signification of Xi? What should represent using 3*3 matrix block?

It is describe that Just like the EKF, the SEIF integrates out past robot poses and only maintains a posterior over the present robot pose and map.Can any one clarify this line with respect to this algorithm?

If in a data set 1st 500 data are only the odometer data and from 501 measurement data are integrated then how does the algorithm work? Which blocks updated time to time?


1 Answer 1


First of all, I am also new to the algorithm, so I might be wrong.

  1. There is no loop concept for this routine. Once your system has a new state, this will be run to produce a predicted state with information from previous state and motion model.

  2. As I understand, $\bar{\xi_t}$ is the predicted information vector at time t. So it should be as the same dimension of your state vector, which might be (3+2N * 1).

  3. The basic step of Kalman filter is an iterative process including two steps, predict and update. Only information matrix and information vector is maintained during the process. It includes the current pose and landmark information, and the relationship between them(not accurate term). As in the code, the input needed for the routine are $\xi_{t-1}$ and $\Omega_{t-1}$


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.