An important component of any autonomous robotic system is the ability to estimate its own state as well as that of its environment. This is often achieved by processing sensor measurements and control inputs in a principled way, where a common example is the Kalman filter. This well-established mathematical model can be derived from both control theory and statistics and is already widely applied in many practical systems. Without an accurate state estimator, reliable control of an autonomous vehicle is not possible.
Among other components, the Kalman filter makes use of multivariate Gaussian distributions. This means that the covariance matrix of any distribution over the robot’s state needs to be non-singular (I.e., invertible) to avoid numerical errors. The implication is that there cannot exist any perfect correlation between two given states, which is an unnecessary limitation. One example application where such linear dependencies need to be handled carefully is a ground vehicle in 3-D space navigating on a 2-D plane. This is also prevalent when working with high-dimensional, nonlinear systems where approximations are unavoidable and singularity does occur. The aim of this project is to derive, implement and test a version of the Kalman filter that can accommodate such degenerate settings. The experiments for this project will be performed in simulation only.