Home

Awesome

dreamerv3-torch

Pytorch implementation of Mastering Diverse Domains through World Models. DreamerV3 is a scalable algorithm that outperforms previous approaches across various domains with fixed hyperparameters.

Instructions

Method 1: Manual

Get dependencies with python 3.11:

pip install -r requirements.txt

Run training on DMC Vision:

python3 dreamer.py --configs dmc_vision --task dmc_walker_walk --logdir ./logdir/dmc_walker_walk

Monitor results:

tensorboard --logdir ./logdir

To set up Atari or Minecraft environments, please check the scripts located in env/setup_scripts.

Method 2: Docker

Please refer to the Dockerfile for the instructions, as they are included within.

Benchmarks

So far, the following benchmarks can be used for testing.

EnvironmentObservationActionBudgetDescription
DMC ProprioStateContinuous500KDeepMind Control Suite with low-dimensional inputs.
DMC VisionImageContinuous1MDeepMind Control Suite with high-dimensional images inputs.
Atari 100kImageDiscrete400K26 Atari games.
CrafterImageDiscrete1MSurvival environment to evaluates diverse agent abilities.
MinecraftImage and StateDiscrete100MVast 3D open world.
Memory MazeImageDiscrete100M3D mazes to evaluate RL agents' long-term memory.

Results

DMC Proprio

dmcproprio

DMC Vision

dmcvision

Atari 100k

atari100k

Crafter

<img src="https://github.com/NM512/dreamerv3-torch/assets/70328564/a0626038-53f6-4300-a622-7ac257f4c290" width="300" height="150" />

Acknowledgments

This code is heavily inspired by the following works: