An Extended Kalman Filter 2010
In the pursuit of constructing truly autonomous mobile robots, the simultaneous localization and mapping problem is considered as one of the most important problems. Simultaneous localization and mapping (SLAM) is the process by which a mobile robot can build a map of an unknown environment and at the same time use this map to compute its location. SLAM is considered as a chicken-egg problem as to identify a robots location the map is needed which the robot is still building. One classical solution to the SLAM problem is the EKF-SLAM method. EKF-SLAM uses Kalman filter, which is an efficient recursive filter that estimates the internal state of a linear dynamic system from a series of noisy measurements. Goal of this project is to implement and simulate the EKF-SLAM method for solving the SLAM problem.
How the project works:
Overview of the project is shown here: 
Detailed process is explained 
This implementation is evaluated with the following assumptions: –Whatever the robot sees is a landmark –Data association problem is not considered –Robot odometry data and laser data are simulated
Evaluation is done using 11 landmarks and straight line path. Result is shown in figure below. 
In the picture, the red line is the ground truth, green line shows the odometry data and the blue line shows the robot path estimated by the kalman filter.
Code: Code can be downloaded from []