iglu-contest / iglu

gym environment for NeurIPS 21' IGLU competition (Should NOT be used for IGLU 2022!)
https://www.iglu-contest.net/
5 stars 8 forks source link
nlp reinforcement-learning

Iglu Environment

THIS ENVIRONMENT IS NO LONGER SUPPORTED FOR THE IGLU COMPETITION, FOR IGLU 2022, PLEASE USE THE GRIDWORLD ENVIRONMENT

Downloads PyPI version

IGLU is a research project aimed at bridging the gap between reinforcement learning and natural language understanding in Minecraft as a collaborative environment. It provides the RL environment where the goal of an agent is to build structures within a dedicated zone. The structures are described by natural language in the game’s chat.

The main documentation is available here.

Installation

1. JDK 1.8 installation

On Ubuntu/Debian:

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk

On Mac:

brew tap AdoptOpenJDK/openjdk
brew install --cask adoptopenjdk8 #or `brew cask install adoptopenjdk8` for brew version < 3.

On Windows:

Please use Windows installer.

3. Install xvfb

By default iglu renders using virtual display using xvfb software renderer.

Debian and Ubuntu

sudo apt-get install xvfb

4. IgluEnv installation

iglu env requires python version 3.7 or newer. If you are using conda you can easily install that in local conda env:

conda create -n iglu_env python=3.7
conda activate iglu_env

You can install using pip: TODO

To install the package manually, do the following:

git clone git@github.com:iglu-contest/iglu_env.git && cd iglu_env
python setup.py install

And then test your installation

cd test && python test_env.py

You can change the download directory for the The Minecraft Dialogue Corpus by setting the IGLU_DATA_PATH environment variable to the directory of your liking.

Suggested requirements for RL solution

conda env update --file conda_env.yml

Docker installation

To use iglu environment inside the docker container proceed to Docker installation section.

Known Issues

Java versions

You might have another java version installed (e.g. openjdk-11), rather than openjdk-8-jdk. Check the version by running java --version or java -version.

To update default java runtime it's either update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java or update-alternatives --config java. The second one is preferable since it isn't conditioned on a particular path.