Skip to content

This project is a pipeline that connects a Matlab simulation (Simulink) to an OpenAI Gym wrapper for PyTorch Reinforcement Learning using the DQN algorithm.

License

Notifications You must be signed in to change notification settings

Spinkoo/Matlab2TorchRL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Matlab2PyTorchRL

This project is a pipeline that connects a Matlab simulation (Simulink) to an OpenAI Gym wrapper for PyTorch Reinforcement Learning using DQN algorithm (and various ML/DL algorithms eventually).

General pipeline

Matlab implementation

Matlab simulations offer an excellent way to model real-world scenarios. This project aims to establish a connection between Matlab simulations and third-party libraries and open-source AI solutions. As such, we have chosen to develop an interface that bridges a Matlab simulation with Python AI libraries

The simulation that we used to test the interface is based on a Robot (Thymio) navigating through a maze, the robot has multiple sensors to measure the distance to nearby walls with the goal of learning how to efficiently navigate throught the maze and exit it safely.

Prerequisites

What things you need to install the software and how to install them:

  • Matlab
  • Simulink
  • OpenAI Gym
  • PyTorch

Installing

  1. Clone the repo : git clone --recursive https://github.com/Spinkoo/Matlab2TorchRL (to get the Matlab2Py submodule)
  2. Navigate to the project directory
  3. Install requirements.txt pip install -r requirements.txt
  4. Install Matlab engine for Python

Running the tests

The trainig process of thymio

Reward graph while training the model

Built With

Authors

Initial work - Spinkoo

License

see the LICENSE.md file for details

Acknowledgments

  • This work was supported by the French National Research Agency under the France 2030 program project IRT Nanoelec (ANR-10-AIRT-05).

About

This project is a pipeline that connects a Matlab simulation (Simulink) to an OpenAI Gym wrapper for PyTorch Reinforcement Learning using the DQN algorithm.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published