LATEST POSTS

Bayesian Methods in Robotics

Motion Planning in Robotics

Robot Operating System - Command Line Tools

Sampling-based motion planners

Visual SLAM - An Introduction

Simulataneous Localization and Mapping - An Introduction




EXTENDED KALMAN FILTERS FOR ROBOT LOCALIZATION


Bayesian methods discussed earlier were a preface to the use of different probabilistic techniques in robotics. Bayesian inference derives the final equation that presents the various steps involved in the process of state-estimation by using the action and the model of the system.

The Kalman filters family is used for linear as well as non-linear models with Gaussian noise distribution assumption. This family of filters is most widely used for non-critical tasks where several assumptions and relaxed approximations can be used during noise or system modeling. While Kalman filter works well for linear models, the Extended Kalman filter is capable of working on non-linear models by the potential use of linearization of the models.

This article is a walkthrough of the application of the Extended Kalman Filter for robot localization. The content is primarily derived from the excellent tutorial SLAM for Dummies by Søren Riisgaard and Morten Rufus Blas

Family of Kalman Filters

INTRODUCTION

The Extended Kalman Filter is the go-to algorithm for state estimation for non-linear models with well-defined transition models. It works on non-linear state transition and observation models while assuming the process and observation noise both to be multivariate Gaussians.

Robot localization is the process of finding the robot's pose(position and orientation) with respect to a given map. Given the stochasticity in robot motion, sensors, and environment interaction, localization is a very sophisticated task. EKF is largely deployed in SLAM algorithms to use the odometry information and the landmarks in the environment for localization. The landmarks are represented as point objects with position (xl, yl) as the cartesian position coordinates.

Visual Representation of Robot Localization

REPRESENTATION OF THE DIFFERENT COMPONENTS OF LOCALIZATION

The EKF technique uses feature extraction, landmarks generation, data association, odometry, and landmark representation and sensor data concepts. Here is a glance at them individually after which, the setup should be ready to implement EKF.

MAIN COMPONENTS OF EKF LOCALIZATION

EKF localization has three significant steps; state estimate prediction, state estimate update, and addition of landmarks. While there are several intermediate steps, these three steps are the highlight of the complete state estimation cycle.

EKF Process


MATRICES USED IN EKF

Discrete-time EKF runs a loop that over every iteration updates and modifies all the values being used in the process. These are multivariate matrices whose components represent the different aspects like the system state, covariance, noises, and more in the process.

Here is a list of matrices used in EKF.

STEPS OF EKF LOCALIZATION EXECUTION

As mentioned earlier, the three most important steps of EKF localization are prediction, udpate, and landmark addition. We discuss how the matrices and sub-matrices mentioned above are used to execute these steps.
Initially, the robot starts with a known state and a default initialization of the covariance matrix P (usually just small non-zero values of the diagonal elements). The P matrix starts off as a 3 x 3 matrix because no landmarks exist yet.

CONCLUSIONS FOR RECURSIVE BAYESIAN ESTIMATION

Finally, the robot should be ready to explore the world around and be able to localize itself against the world using predictions, landmarks and reobserved landmarks.

A successor to this will be a project that implements EKF for SLAM localization and navigation with ROS and C++.

IF YOU LIKED THE ARTICLE, DON'T FORGET TO LEAVE A REACTION OR A COMMENT!


Copyright @Akshay Kumar | Last Updated on 01/22/2020

counter