Giter Club home page Giter Club logo

gail-pytorch's Introduction

Generative Adversarial Imitation Learning with PyTorch

This repository is for a simple implementation of Generative Adversarial Imitation Learning (GAIL) with PyTorch. This implementation is based on the original GAIL paper (link), and my Reinforcement Learning Collection repository (link).

In this repository, OpenAI Gym environments such as CartPole-v0, Pendulum-v0, and BipedalWalker-v3 are used. You need to install them before running this repository.

Note: The environment's names could be different depending on the version of OpenAI Gym.

Install Dependencies

  1. Install Python 3.

  2. Install the Python packages in requirements.txt. If you are using a virtual environment for Python package management, you can install all python packages needed by using the following bash command:

    $ pip install -r requirements.txt
  3. Install other packages to run OpenAI Gym environments. These are dependent on the development setting of your machine.

  4. Install PyTorch. The version of PyTorch should be greater or equal than 1.7.0.

Training and Running

  1. Modify config.json as your machine setting.

  2. Execute training process by train.py. An example of usage for train.py are following:

    $ python train.py --env_name=BipedalWalker-v3

    The following bash command will help you:

    $ python train.py -h

The results of CartPole environment

The results of Pendulum environment

The results of BipedalWalker environment

  • This result suggests that the causal entropy has little effect on the performance.

Recent Works

  • The CUDA usage is provided now.
  • Modified some errors in GAE.
  • Modified some errors about horizon was corrected.

Future Works

  • Search other environments to running the algorithms

References

  • The original GAIL paper: link
  • Reinforcement Learning Collection with PyTorch: link

gail-pytorch's People

Contributors

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