Giter Site home page Giter Site logo

coincartel / mc-controller Goto Github PK

View Code? Open in Web Editor NEW

This project forked from craftjarvis/mc-controller

0.0 0.0 0.0 738 KB

Implementation of "Open-World Multi-Task Control Through Goal-Aware Representation Learning and Adaptive Horizon Prediction"

Python 100.00%

mc-controller's Introduction

Open-World Multi-Task Control Through Goal-Aware Representation Learning and Adaptive Horizon Prediction

Preparation

Our codebase require Python โ‰ฅ 3.9. It also requires a modified version of MineDojo as the simulator and MineCLIP as the goal text encoder. Please run the following commands to prepare the environments.

conda create -n controller python=3.9 
conda activate controller
python -m pip install numpy torch==2.0.0.dev20230208+cu117 --index-url https://download.pytorch.org/whl/nightly/cu117
python -m pip install -r requirements.txt
python -m pip install git+https://github.com/MineDojo/MineCLIP
python -m pip install git+https://github.com/CraftJarvis/MC-Simulator.git

Dataset

Biome Download
Plains url
Flat to be uploaded
Forests to be uploaded

Train agent

Run the following commands to train the agent.

python main.py data=multi_plains eval=multi_plains

We have provided three configure files for three biomes (multi_plains, multi_forests, and multi_flat).

Running agent models

To run the code, call

python main.py eval=multi_plains eval.only=True model.load_ckpt_path=<path/to/ckpt>

After loading, you should see som windows where agents are playing Minecraft.

Model checkpoints

Below are the configures and weights of models.

Configure Download Biome Number of goals
Transformer here Plains 4
Transformer + Extra Observation here Plains 4

For example, if we want to use the "Transformer+Extra Observation" checkpoint, we should specify model=transformer_w_extra in the command.

python main.py eval=multi_plains eval.only=True model=transformer_w_extra model.load_ckpt_path=<path/to/ckpt>

Paper and Citation

Our paper is posted on Arxiv. If it helps you, please consider citing us!

@article{cai2023open,
  title={Open-World Multi-Task Control Through Goal-Aware Representation Learning and Adaptive Horizon Prediction},
  author={Cai, Shaofei and Wang, Zihao and Ma, Xiaojian and Liu, Anji and Liang, Yitao},
  journal={arXiv preprint arXiv:2301.10034},
  year={2023}
}

mc-controller's People

Contributors

phython96 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.