



Updated on 2024.12.23 DI-engine-v0.5.3
Introduction to DI-engine
Documentation | 中文文档 | Tutorials | Feature | Task & Middleware | TreeTensor | Roadmap
DI-engine is a generalized decision intelligence engine for PyTorch and JAX.
It provides python-first and asynchronous-native task and middleware abstractions, and modularly integrates several of the most important decision-making concepts: Env, Policy and Model. Based on the above mechanisms, DI-engine supports various deep reinforcement learning algorithms with superior performance, high efficiency, well-organized documentation and unittest:
- Most basic DRL algorithms: such as DQN, Rainbow, PPO, TD3, SAC, R2D2, IMPALA
- Multi-agent RL algorithms: such as QMIX, WQMIX, MAPPO, HAPPO, ACE
- Imitation learning algorithms (BC/IRL/GAIL): such as GAIL, SQIL, Guided Cost Learning, Implicit BC
- Offline RL algorithms: BCQ, CQL, TD3BC, Decision Transformer, EDAC, Diffuser, Decision Diffuser, SO2
- Model-based RL algorithms: SVG, STEVE, MBPO, DDPPO, DreamerV3
- Exploration algorithms: HER, RND, ICM, NGU
- LLM + RL Algorithms: PPO-max, DPO, PromptPG, PromptAWR
- Other algorithms: such as PER, PLR, PCGrad
- MCTS + RL algorithms: AlphaZero, MuZero, please refer to LightZero
- Generative Model + RL algorithms: Diffusion-QL, QGPO, SRPO, please refer to GenerativeRL
DI-engine aims to standardize different Decision Intelligence environments and applications, supporting both academic research and prototype applications. Various training pipelines and customized decision AI applications are also supported:
(Click to Collapse)
On the low-level end, DI-engine comes with a set of highly re-usable modules, including RL optimization functions, PyTorch utilities and auxiliary tools.
BTW, DI-engine also has some special system optimization and design for efficient and robust large-scale RL training:
(Click for Details)
Have fun with exploration and exploitation.
Outline
Installation
You can simply install DI-engine from PyPI with the following command:
pip install DI-engine
For more information about installation, you can refer to installation.
And our dockerhub repo can be found here,we prepare base image and env image with common RL environments.
(Click for Details)
- base: opendilab/ding:nightly
- rpc: opendilab/ding:nightly-rpc
- atari: opendilab/ding:nightly-atari
- mujoco: opendilab/ding:nightly-mujoco
- dmc: opendilab/ding:nightly-dmc2gym
- metaworld: opendilab/ding:nightly-metaworld
- smac: opendilab/ding:nightly-smac
- grf: opendilab/ding:nightly-grf
- cityflow: opendilab/ding:nightly-cityflow
- evogym: opendilab/ding:nightly-evogym
- d4rl: opendilab/ding:nightly-d4rl
The detailed documentation are hosted on doc | 中文文档.
Quick Start
3 Minutes Kickoff
3 Minutes Kickoff (colab)
DI-engine Huggingface Kickoff (colab)
How to migrate a new RL Env | 如何迁移一个新的强化学习环境
How to customize the neural network model | 如何定制策略使用的神经网络模型
测试/部署 强化学习策略 的样例
新老 pipeline 的异同对比
Feature
Algorithm Versatility
(Click to Collapse)
discrete means discrete action space, which is only label in normal DRL algorithms (1-23)
means continuous action space, which is only label in normal DRL algorithms (1-23)
means hybrid (discrete + continuous) action space (1-23)
Distributed Reinforcement Learning|分布式强化学习
Multi-Agent Reinforcement Learning|多智能体强化学习
Exploration Mechanisms in Reinforcement Learning|强化学习中的探索机制
Imitation Learning|模仿学习
Offiline Reinforcement Learning|离线强化学习
Model-Based Reinforcement Learning|基于模型的强化学习
means other sub-direction algorithms, usually as plugin-in in the whole pipeline
P.S: The .py file in Runnable Demo can be found in dizoo
Environment Versatility
(Click to Collapse)
README 内容过长,已截取前 64 KB。完整内容请前往 GitHub 仓库查看。
评论