Skip to content

Implementation of a SSM for a two-leg motion model. State variables are position of the hip and angles between the limbs. Observations are given by inertial measurement units at limbs and pressure senors at the feet.

Notifications You must be signed in to change notification settings

MaurusGubser/TwoLegModel

Repository files navigation

TwoLegModelSMC

SSM implementation of a two leg motion model, using particles library for filtering, smoothing and parameter learning. The two leg model is implemented as a class, the SMC tasks like filtering, smoothing, parameter learning are done using the particles library.

The following files are implementation of classes:

  • CustormDistributions.py sublasses ProbDist class of particles to implement custom distributions
  • CustomMCMC.py subclasses PMMH class of particles to implement a custom PMMH sampler.
  • DataReaderWriter.py is a class for reading and preparing data for the SMC sapmler of particles. Also, particles data can be exported.
  • MechanicalModel.py implements the mechanical two leg model as a python class.
  • Plotter.py implements a class for plotting the results of the SMC sampler, e.g. particle trajectories or likelihood plots.
  • TwoLegEKFModel.py implements a general EKF filter for the two leg model, along with a short script for comparing EKF with SMC results.
  • TwoLegSMCModel.py implements a SSM for the two leg model, i.e. probabilistic process and observation maps for forward computing.

The following files are scripts for executing SMC tasks for the two leg model:

  • bayesian_parameter_learning.py can parameters like IMU-position, IMU-angle and others using PMMH or SMC2 methods.
  • compare_model_with_truth.py compares the true observations with the observations based on the mechanical model and the true states.
  • filtering_smoothing.py filters and smoothes state trajectories, given observations, using the SMC model.
  • likelihood_analysing.py can be used to analyse the log likelihood of the data, given a model defined by certain parameters.

About

Implementation of a SSM for a two-leg motion model. State variables are position of the hip and angles between the limbs. Observations are given by inertial measurement units at limbs and pressure senors at the feet.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages