Kalman Filter and EKF based Simulated Helicopter Control

Class Instructor Date Language Ta'ed Code
CS 8803-STR Statistical Techniques in Robotics Byron Boots Spring 2015 (Expanded as Personal Project during Summer) Matlab No Code N/A

This was another project for the Statistical Robotics class I took - I implemented the Kalman filter as part of the class, and worked on the EKF during the summer.

The Kalman Filter models the belief of a state at a particular time as a mean and covariance (so a gaussian) by taking the past time step's belief of its state and its applied control. From this update a predicted belief is derived, that is then modified by the observation, scaled by a factor called the Kalman Gain. This filter uses gaussian models of the noise in state transitions and observations (which are both otherwise assumed to be linear) as terms in the predicted belief and actual belief calculation.

If the state transitions and observations are not linear, which is usually the case, then the Kalman filter is going to be of limited usefulness. Instead, using an Extended Kalman Filter can allow for non-linear transitions and observations, although it still generates a gaussian belief which can only approximate the actual underlying belief. The EKF handles nonlinear transition functions by linearizing them via First Order Taylor expansion in some appropriate locality based on the previous state and control.