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-1.0.0.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

NANO_filter-1.0.0-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nano_filter-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2c098fc086bf3cdbb4262162f404076c102fdb50a89e824f390336b0e3dfd706
MD5 5d5e6c12446e22320e6e0235c1e65a7e
BLAKE2b-256 de9bb117dcd810d435d39801952fb61616c3a44357614d50e2758aad501d868a

See more details on using hashes here.

File details

Details for the file NANO_filter-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: NANO_filter-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.3

File hashes

Hashes for NANO_filter-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c4a1b98f4465a3e4b7d810469f70124299ce45744bfe84d56326fc4e22b6ccca
MD5 54642ce46c6c6e23bd0cf339136c2b5e
BLAKE2b-256 10181a00061f519f7a6885e074eeb634e61cda80386bc6c684b0929f6415eba8

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