Deep-reinforcement-learning-with-pytorch  by sweetice

PyTorch library for deep reinforcement learning algorithms

created 7 years ago
4,398 stars

Top 11.4% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

This repository provides PyTorch implementations of classic and state-of-the-art deep reinforcement learning algorithms, targeting researchers and practitioners seeking clear code examples for learning and experimentation. It aims to offer a comprehensive collection of algorithms, including DQN, AC, A2C, A3C, PG, DDPG, TRPO, PPO, SAC, and TD3, with ongoing development and additions of new methods.

How It Works

The project implements various deep reinforcement learning algorithms using PyTorch, a popular deep learning framework. It focuses on providing clear, understandable code for each algorithm, facilitating learning and modification. The implementations cover a range of approaches, from value-based methods like DQN to policy-based methods like REINFORCE and actor-critic methods, offering a broad spectrum of RL techniques.

Quick Start & Requirements

  • Installation: pip install -r requirements.txt (after installing PyTorch and gym separately).
  • Prerequisites: Python <= 3.6, tensorboardX, gym >= 0.10, PyTorch >= 0.4. Note: Python 3.7 is not supported due to TensorFlow compatibility.
  • Testing: python TD3_BipedalWalker-v2.py --mode test
  • Resources: Requires installation of PyTorch from its official website. Anaconda is recommended for environment management. Links to official PyTorch installation: https://pytorch.org/

Highlighted Details

  • Implements a wide array of RL algorithms: DQN, AC, ACER, A2C, A3C, PG, DDPG, TRPO, PPO, SAC, TD3.
  • Includes implementations for sparse reward tasks like MountainCar-v0, with tips for handling them.
  • Provides example usage for training and testing models, such as pytorch_MountainCar-v0.py and TD3_BipedalWalker-v2.py.
  • References numerous seminal papers related to the implemented algorithms.

Maintenance & Community

The repository is marked as "Active (under active development, breaking changes may occur)". No specific community links (Discord, Slack) or notable contributors are mentioned in the README.

Licensing & Compatibility

The README does not explicitly state a license. Given the nature of open-source projects and the lack of explicit mention, users should assume standard open-source licensing or inquire with the maintainer. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The project is under active development, meaning breaking changes may occur. It requires older Python versions (<= 3.6) and PyTorch versions (>= 0.4), which might pose compatibility challenges with newer environments. Some implementations (SAC, TD3) are noted as not being from the original paper authors.

Health Check
Last commit

2 years ago

Responsiveness

1+ week

Pull Requests (30d)
0
Issues (30d)
0
Star History
145 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.