hany606 / PMLDL-Project

This repository is for Practical Machine Learning and Deep Learning course project at Innopolis University Fall 2021

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PMLDL-Project

This repository is for Practical Machine Learning and Deep Learning course project at Innopolis University Fall 2021

Project directory structure

├── media: photos and gifs

├── algorithms: different algorithms

└── zoo: trained agents

How to Run it?

In order to train

python3 train.py --algo <algo> --env <env>
  • replace <algo> with (ppo, sac, or dqn)

  • replace <env> with (cartpole, mountaincar, acrobot)

In order to evaluate and render the episode of the agent with the trained model. The default directory is good_zoo directory, to change it you need to change the code. Later, we will make it through cli

python3 run_agent.py --algo <algo> --env <env>
  • replace <algo> with (ppo, sac, or dqn)

  • replace <env> with (cartpole, mountaincar, acrobot)

A demo for DQN:

Trained Agent for MountainCar:

Trained Agent

A demo for PPO:

Trained Agent for cartpole:

Trained Agent

Rewards:

Training reward:

Best model training

Testing reward:

Best model training

TODO:

  • Implement DQN
  • Change the implementation of DQN to be more generalized for any environment
  • Add support for wandb or Tensorboard
  • Create cli interface for run_agent.py
  • Implement PPO
  • Implement SAC
  • Create Benchmark using different envs and between different agorithms

About

This repository is for Practical Machine Learning and Deep Learning course project at Innopolis University Fall 2021

License:MIT License


Languages

Language:Python 99.2%Language:Shell 0.8%