Simulusion: World Models in PyTorch#

Simulusion is a modular PyTorch library for world models: agents that learn how their environment works, then plan, act or generate inside that learned model. Dreamer, PlaNet, DIAMOND, IRIS, Genie, DiT and I-JEPA share one API, and their encoders, dynamics backbones and decoders are reusable parts.

Every model has a demo you can run on a laptop GPU. See the Gallery for all of them.

Install#

pip install "simulusion[gym]"

Train an agent#

import simulusion

# Dreamer from pixels on Pendulum; runs on ``pip install simulusion[gym]``.
agent = simulusion.create_model(
    "dreamer", env="Pendulum-v1", env_backend="gym", total_steps=5_000
)
agent.train()

print(simulusion.list_models())  # every model create_model() can build

Continue with Getting Started for a guided first run, or jump to a model under Algorithms in the sidebar.