Skip to main content

Nonlinear Bayesian Filtering with Natural Gradient Gaussian Approximation

Project description

Natural Gradient Gaussian Approximation (NANO) Filter

This is the official python code for the paper "Nonlinear Bayesian Filtering with Natural Gradient Gaussian Approximation". You can find the preprint of the paper in Link.

Please contact the corresponding author of the code at cwh19@mails.tsinghua.edu.cn or mehdizhang@126.com.

Index

  1. Installation
  2. Example: Wiener Velocity Model
  3. Example: Air-Traffic Control Model
  4. Example: Unmanned Ground Vehicle Localization

1. Installation

  1. Clone the repository.
git clone https://github.com/TianyiMehdi/NANO-filter.git
  1. Install the dependencies.
pip install -r requirements.txt

2. Example: Wiener Velocity Model

Model:

formula

Test:

cd experiments
# 1. For system without outlier
python wiener/wiener_NANO.py \
    --measurement_outlier_flag False \
    --n_iterations 1 \
# 2. For system with outlier, and you can try to change the loss_type and loss hyperparameters to see the difference 
python wiener/wiener_NANO.py \
    --measurement_outlier_flag True \
    --loss_type beta_likelihood_loss \
    --beta 9e-4 \
    --n_iterations 1 \

Figure:

3. Example: Air-Traffic Control Model

Model:

formula

Test:

cd experiments
# 1. For system without outlier
python air_traffic/air_traffic_NANO.py \
    --measurement_outlier_flag False \
    --n_iterations 1 \
# 2. For system with outlier, and you can try to change the loss_type and loss hyperparameters to see the difference 
python wiener/wiener_NANO.py \
    --measurement_outlier_flag True \
    --loss_type beta_likelihood_loss \
    --beta 2e-2 \
    --n_iterations 1 \

Figure:

4. Example: Unmanned Ground Vehicle Localization

Model:

formula

Test:

cd experiments
python ugv/ugv_NANO.py \
    --loss_type beta_likelihood_loss \
    --beta 2e-2 \
    --n_iterations 1 \

Figure:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nano_filter-0.1.0.tar.gz (21.5 kB view details)

Uploaded Source

File details

Details for the file nano_filter-0.1.0.tar.gz.

File metadata

  • Download URL: nano_filter-0.1.0.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.3

File hashes

Hashes for nano_filter-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b058172e69be7fe7b65c5c8cae3aeaf442a696a1ffb35f9bdc6459dfd9deb129
MD5 83426895623960d6252c3ca4ac03ae5d
BLAKE2b-256 cf3f5d24e314648553e21ad923cdf61e52f866de3edb7736237ff03229f9d799

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page