machina  by DeepX-inc

PyTorch library for real-world deep reinforcement learning

created 8 years ago
277 stars

Top 94.5% on sourcepulse

GitHubView on GitHub
Project Summary

Machina is a PyTorch-based Deep Reinforcement Learning framework designed for real-world applications, emphasizing high composability and flexibility. It targets researchers and practitioners needing to integrate diverse RL algorithms, handle mixed simulated and real-world environments, or dynamically adjust hyperparameters. Its core benefit is simplifying complex RL setups through an episode-based trajectory interaction model.

How It Works

Machina's design centers on "composability," allowing components like environments or algorithms to be swapped dynamically during execution. This is achieved by abstracting interactions through generated trajectories, making it easy to switch between, for instance, a simulated and a real-world environment or combine on-policy and off-policy algorithms. This approach facilitates complex configurations like meta-learning or hybrid algorithm implementations that are challenging in other libraries.

Quick Start & Requirements

  • Install: pip install machina-rl or from source.
  • Prerequisites: Python 3.5-3.7, PyTorch 1.0.0+.
  • Resources: Quickstart and examples are available.

Highlighted Details

  • Supports mixed on-policy/off-policy algorithm combinations (e.g., PPO + SAC).
  • Facilitates meta-RL by easily sampling from multiple environments.
  • Implemented algorithms include PPO, TRPO, SAC, DDPG, Behavior Cloning, and more.
  • Designed for episode-based sampling, suitable for real-world scenarios.

Maintenance & Community

  • Official web page and documentation are available.

Licensing & Compatibility

  • License not specified in the README.

Limitations & Caveats

  • The README does not specify the license, which is critical for commercial use.
  • Algorithms requiring step-by-step updates (e.g., DQN, DDPG) are not reproduced.
Health Check
Last commit

5 years ago

Responsiveness

1 day

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

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), Nathan Lambert Nathan Lambert(AI Researcher at AI2), and
1 more.

tianshou by thu-ml

0.1%
9k
PyTorch RL library for algorithm development and application
created 7 years ago
updated 1 day ago
Feedback? Help us improve.