Minimalistic Gridworld Environment (MiniGrid)

Maxime Chevalier-Boisvert f28a1ba73f Updated README hace 7 años
basicrl 8fc72cda9f Fixed basicrl code hace 7 años
gym_minigrid a7a56cdfe2 Added keyboard handling to standalone.py hace 7 años
.gitignore 8fc72cda9f Fixed basicrl code hace 7 años
LICENSE 51a5d9079d Initial commit hace 7 años
README.md f28a1ba73f Updated README hace 7 años
setup.py f28a1ba73f Updated README hace 7 años
standalone.py a7a56cdfe2 Added keyboard handling to standalone.py hace 7 años

README.md

Minimalistic Grid World Environment (MiniGrid)

Simple and minimailistic grid world environment for OpenAI Gym.

Installation

Clone this repository and install the other dependencies with pip3:

git clone https://github.com/maximecb/gym-minigrid.git
cd gym-minigrid
pip3 install -e .

Optionally, if you wish use the reinforcement learning code included under /basicrl, you can install its dependencies as follows:

cd basicrl

# PyTorch
conda install pytorch torchvision -c soumith

# OpenAI baselines
git clone https://github.com/openai/baselines.git
cd baselines
pip install -e .

# Other requirements
pip install -r requirements.txt

Note: the basicrl code is a custom fork of this repository, which was modified to work with this environment.

Usage

To run the standalone UI application, which allows you to manually control the agent with the arrow keys:

./standalone.py

The environment being run can be selected with the --env-name option, eg:

./standalone.py --env-name MiniGrid-Fetch-8x8-v0

To see available environments and their implementation, look at simple_envs.py.

Basic reinforcement learning code is provided in the basicrl subdirectory. You can perform training using the ACKTR algorithm with:

python3 basicrl/main.py --env-name MiniGrid-Empty-8x8-v0 --no-vis --num-processes 32 --algo acktr

You can view the result of training using the enjoy.py script:

python3 basicrl/enjoy.py --env-name MiniGrid-Empty-8x8-v0 --load-dir ./trained_models/acktr