KalmanNet TSP

repository·main·Indexed 19 days ago

https://github.com/kalmannet/kalmannet_tsp

A neural network-aided Kalman filtering framework for partially known dynamics. It supports batched training for efficient sequence processing and includes simulation scripts for linear models (canonical and constant acceleration) and non-linear Lorenz Attractor cases (discrete-time, decimation, and non-linear observation functions).

Tokens
485
Snippets
1
Records
2
Agent score
16%

What's inside kalmannet_tsp

  1. Run KalmanNet simulations for linear and non-linear cases

    main

    KalmanNet provides simulation scripts for different dynamics models. This branch simulates architecture #2 from the original paper and supports batched sequence processing for improved efficiency.

    Linear Cases

    Use these scripts for the canonical model or the constant acceleration (CA) model:

    • python3 main_linear_canonical.py
    • python3 main_linear_CA.py

    Non-linear Lorenz Attractor Cases

    Use these scripts for the Lorenz Attractor case, supporting discrete-time, decimation, or non-linear observation functions:

    • python3 main_lor_DT.py (Discrete-Time)
    • python3 main_lor_decimation.py (Decimation)
    • python3 main_lor_DT_NLobs.py (Discrete-Time with Non-linear observation function)
    # Linear case
    python3 main_linear_canonical.py
    python3 main_linear_CA.py
    
    # Non-linear Lorenz Attractor case
    python3 main_lor_DT.py
    python3 main_lor_decimation.py
    python3 main_lor_DT_NLobs.py
  2. Configure KalmanNet model and training parameters

    main

    KalmanNet configuration is split across three main locations:

    1. Model Settings: Located in Simulations/model_name/parameters.py. This file defines the core mathematical parameters of the model, including:

      • m: Dimension of the state/control
      • n: Dimension of the state
      • f/F: Transition function/matrix
      • h/H: Observation function/matrix
      • Q: Process noise covariance
      • R: Measurement noise covariance
    2. Training and Dataset Settings: Located in Simulations/config.py. This file controls high-level execution parameters such as:

      • Dataset size
      • Training parameters
      • Network architecture settings
    3. Execution Flags: The main files (e.g., main_linear_canonical.py) are used to set command-line flags, file paths, and other runtime execution settings.