_images/kalman.png

Kalman Filter and Extensions

Authors: Matvei Kreinin, Maria Nikitina, Petr Babkin, Anastasia Voznyuk

Consultant: Oleg Bakhteev, PhD

πŸ’‘ Description

This project focuses on implementing Kalman Filters and their extensions in a simple and clear manner. Despite their importance, these state-space models remain underrepresented in the deep learning community. Our goal is to create a well-documented and efficient implementation that aligns with existing structured state-space models.

πŸ“Œ Algorithms Implemented

We plan to implement the following distributions in our library:

  • Kalman Filter

  • Extended Kalman Filter (EKF)

  • Unscented Kalman Filter (UKF)

  • Variational Kalman Filters

πŸ“š Tech Stack

The project is implemented using:

  • Python

  • PyTorch for tensor computation and differentiation

  • NumPy for numerical computations

  • SciPy for advanced mathematical functions

  • Jupyter Notebooks for experimentation and visualization

πŸ‘¨β€πŸ’» Usage

Basic usage examples for different filters will be provided. Below is an example of using a Kalman Filter in PyTorch:

import torch
from kalman_filter import KalmanFilter

kf = KalmanFilter(dim_x=4, dim_z=2)
kf.predict()
kf.update(torch.tensor([1.0, 2.0]))
print(kf.x)  # Updated state estimate

More detailed examples and tutorials will be available in the documentation.