This project implements mobile robot localization. A simulated environment with landmarks at specified locations is created. A robot is placed at a specified point and according to its initial belief its initial location is not exactly the actual location. The robots position is relative to the map of the simulated environment. Control velocities are given to the robot and it updates its location and belief according to these velocities. Because of uncertainty in the initial belief of the robot the uncertainty continuous with every update of its belief. After moving the robot gets information about the environment from its sensors and based on this information the robot updates its belief about its location. EKF localization and Monte Carlo localization algorithms are used for localization. The environment presented here is a static environment i.e. only the location of robot changes. Sensors used are laser beams. The measurements obtained are the relative distance and bearing of landmarks which are within the beam range. The robot is aware of the environment.
This project is about mobile robot localization or position estimation which is the problem of determining the pose of a robot relative to a given map of environment. The environment is unpredictable. So there will be uncertainty in the robot position. Robot contains some belief (internal knowledge) about its state and the state of environment. Certain velocities are given to robot and the robot moves and updates it belief according to these commands. Robot contains sensors which give information or measurements about the environment. Robot uses these values to update its belief. Sensors may produce noisy information which affects the uncertainty in robot position. Various localization algorithms are used for obtaining the robot belief based on previous belief, control data and measurement data.
This paper explains about the implementation of 2 localization algorithms: Extended Kalman Filter known correspondence localization and Monte Carlo localization algorithms. A simulated environment with specific landmarks is created and there is an initial uncertainty in robot position. Robot updates its belief and EKF and MCL algorithms are used for updating this belief based on previous belief, control data and measurements. It also specifies velocity motion models and measurement models which are used internally in the above algorithms for updating robot pose based on control commands and for calculating the likelihood of observations respectively. This paper also explains the affect of measurement noise and control noise in updating the belief of the robot. We also compare the performance of EKF and Monte Carlo localization algorithms in various cases and tell which algorithm gives best results under different conditions i.e. how the internal belief is updated according to each algorithm and how accurately it is updated.
The algorithms used for localization are:
1) Extended Kalman Filter Localization algorithm (EKF localization algorithm) 2) Monte Carlo Localization algorithm (MCL algorithm)
Implementation of EKF algorithm:
Robot uses velocity motion model for updating its belief about its position. Because the robot is aware of its environment after moving to the new location it checks all the landmarks, whether they are in the range of laser beam length which is specified by the user. If any of the landmarks is within its range it calculates the distance and relative bearing of the landmark from its actual location and from its believed location. Using this information it updates its belief. In implementing EKF localization algorithm the inputs taken are previous belief of the robot about its location, previous uncertainty, sensor information which is measurements,...