GithubHelp home page GithubHelp logo

jatinarora2702 / gail-pytorch Goto Github PK

View Code? Open in Web Editor NEW
17.0 2.0 5.0 1.52 MB

PyTorch implementation of GAIL and PPO reinforcement learning algorithms

Python 100.00%
reinforcement-learning imitation-learning policy-gradient gail pytorch ppo-pytorch cartpole-v0 openai-gym

gail-pytorch's Introduction

Generative Adversarial Imitation Learning

PyTorch implementation of the paper:

Ho, Jonathan, and Stefano Ermon. "Generative adversarial imitation learning." Proceedings of the 30th International Conference on Neural Information Processing Systems. 2016.

We also present a report with theoretical and empirical studies based on our understanding of the paper and other related works.

Installation

pip install -r requirements.txt
pip install -e .

[optional] conda install swig
[optional] pip install box2d-py

Note: swig and box2d-py are required only by LunarLander-v2 environment.

Run Setup

Have a look at the parameters set in the corresponding run config files before executing these commands. We provide some example pretrained models and sampled expert trajectories to directly work with as well.

Train PPO to learn expert policy

python ppo.py --config config/CartPole-v0/config_ppo.json

Sample expert trajectories

python traj.py --config config/CartPole-v0/config_traj.json

Train GAIL for imitation learning

python main.py --config config/CartPole-v0/config_gail.json

Generate training graphs

python visualize.py --env_id CartPole-v0 --out_dir ../pretrained --model_name ppo
python visualize.py --env_id CartPole-v0 --out_dir ../pretrained --model_name gail

Cartpole-v0 Experiment

References

  1. GitHub: nav74neet/gail_gym
  2. GitHub: nikhilbarhate99/PPO-PyTorch
  3. Medium: Article on GAIL
  4. Blog post on PPO algorithm
  5. White Paper on MCE IRL
  6. Blog post on PPO
  7. Blog post on TRPO

Acknowledgements

This work has been completed as a course project for CS498: Reinforcement Learning course taught by Professor Nan Jiang. I thank our instructor and course teaching assistants for their guidance and support throughout the course.

Contact

Jatin Arora

University Mail: [email protected]

External Mail: [email protected]

LinkedIn: linkedin.com/in/jatinarora2702

gail-pytorch's People

Contributors

jatinarora2702 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.