Skip to content

Latest commit

 

History

History
63 lines (43 loc) · 2.64 KB

README.md

File metadata and controls

63 lines (43 loc) · 2.64 KB

Discovering and Achieving Goals via World Models

Russell Mendonca*1, Oleh Rybkin*2, Kostas Daniilidis2, Danijar Hafner3,4, Deepak Pathak1
(* equal contribution, random order)

1Carnegie Mellon University
2University of Pennsylvania
3Google Research, Brain Team
4University of Toronto

Official implementation of the Lexa agent from the paper Discovering and Achieving Goals via World Models.

Setup

Create the conda environment by running :

conda env create -f environment.yml

Clone the lexa-benchmark repo, and modify the python path
export PYTHONPATH=<path to lexa-training>/lexa:<path to lexa-benchmark>

Export the following variables for rendering
export MUJOCO_RENDERER=egl; export MUJOCO_GL=egl

WARNING! Make sure to use the right python and mujoco version. The robobin environment code is known to break with other versions. Other environments might or might not work.

Training

First source the environment : source activate lexa

For training, run :

export CUDA_VISIBLE_DEVICES=<gpu_id>  
python train.py --configs defaults <method> --task <task> --logdir <log path> --time_limit <time limit>

where method can be lexa_temporal, lexa_cosine, ddl, diayn or gcsl
Supported tasks are dmc_walker_walk, dmc_quadruped_run, robobin, kitchen, joint. The time limit should be 1000 for DMC and default otherwise.

To view the graphs and gifs during training, run tensorboard --logdir <log path>

Bibtex

If you find this code useful, please cite:

@misc{lexa2021,
    title={Discovering and Achieving Goals via World Models},
    author={Mendonca, Russell and Rybkin, Oleh and
    Daniilidis, Kostas and Hafner, Danijar and Pathak, Deepak},
    year={2021},
    Booktitle={NeurIPS}
}

Acknowledgements

This code was developed using Dreamer V2 and Plan2Explore.