An Exploration of Count-Based Exploration Methods in Text-Based Games
Framework and model code for the paper "An Exploration of Count-Based Exploration Methods in Text-Based Games", which was also used as a submission for Microsoft TextWorld competition.
Paper is added to the repository under the name report.pdf
Follow these steps to set up TextWorld. Adapted from the TextWorld repo.
Get required system libraries. For macOS:
brew install libffi curl git
Create and activate a Conda environment:
conda create --name textworld python=3.7 conda activate textworld
Make sure the environment is activated by checking that the terminal input says
(textworld) before continuing. Install Python packages using pip:
pip install https://github.com/Microsoft/TextWorld/archive/master.zip
To create a game:
tw-make custom --world-size 5 --nb-objects 10 --quest-length 5 --seed 1234 --output tw_games/custom_game.ulx
To play the game:
Get the data from the CodaLab Competition at: Participate tab > Files > Public Data.
Unzip it into the repo's root directory (where this file is) and name the folder
train so that it gets ignored by git.
textworld conda environment activated, and making sure that
which pip points to the pip inside conda:
pip install spacy torch
Download the English language model:
python -m spacy download en
Make sure to edit
config.yaml; use the following naming convention for experiments:
To train on all games:
python train.py ../../train
train.py ../../train/some-game.ulx -c config.yaml
This should train on multiple games (needs to be tested). (Make a different folder with a subset of games to test?)