Giter Club home page Giter Club logo

mujoco-dynamics-with-ode_nn's Introduction

Mujoco-Dynamics-with-ODE_NN

ODE-Enhanced Neural Network Modeling for Irregularly Sampled Mujoco Dynamics.

Introduction

This project explores the integration of Ordinary Differential Equations (ODEs) with neural networks to model the dynamics of multi-joint systems using the Mujoco dataset. Our focus is on interpolating irregularly sampled data to predict and analyze joint movements accurately.

Dataset

We use the Mujoco simulation to generate a trajectory dataset, which serves as a rich benchmark for simulating multi-joint dynamics. This dataset was then processed to create subsets with irregular sampling intervals, presenting a challenge for our ODE-integrated neural network models.

  • Dataset for the Hopper and Walker can be found in the below link
    https://drive.google.com/drive/folders/1Lqv9svglAOKeX3dWkJ88cxsvY4vZkyT9?usp=sharing
    

Algorithm

In this project, we adapted the methodology from this paper to integrate ODE solvers into our neural network architecture, allowing us to effectively handle the irregularly sampled data in the Mujoco dataset. The core idea involves using ODEs to model the continuous dynamics of the system, which provides a flexible framework for dealing with non-uniform time steps in our dataset.

Yulia Rubanova, Ricky Chen, David Duvenaud. "Latent ODEs for Irregularly-Sampled Time Series" (2019) [arxiv]

Installation

To set up the project locally, follow these steps:

  1. Clone the repository:
git clone https://github.com/your-username/Mujoco-Dynamics-with-ODE_NN.git
cd Mujoco-Dynamics-with-ODE_NN
  1. Create a virtual environment and activate it:
python -m venv venv
source venv/bin/activate
  1. Install the required dependencies:
pip install -r requirements.txt

Important Files:

  • Main Training File for all models and rendering Hopper Trajectories (DM Control Suite):
    src/final_project.ipynb
    
  • Dataset generation script using Mujoco for Walker -
    notebooks/Walker_data_collection.ipynb
    
  • For rendering Walker: (Open Ai Gym environment trajectories)
    src/Final_Render_Walker_Gym_env.ipynb
    

Visualizing the trajectories before and after training in Hopper:

Visualizing the trajectories before and after training in Walker:

Input trajectory

Output trajectory of Latent ODE with 50% subsampling

Output trajectory of Latent ODE with 20% subsampling

References:

RNN- VAE
Latent ODE main repo

mujoco-dynamics-with-ode_nn's People

Contributors

akucsd avatar apekshagaonkar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.