This is an official code of "Keisuke Izumiya and Edgar Simo-Serra, Inventory Management with Attention-Based Meta Actions, IEEE Conference on Games (CoG), 2021."
Our research and source codes are based on the NLE (Küttler et al., The NetHack Learning Environment, NeurIPS, 2021), distributed in the Apache License 2.0.
The changes are shown in CHANGELOG.md.
- Ubuntu
- Python3 (
3.6or later) - CMake (
3.14or later) - Some packages, installed by:
$ sudo apt-get install -y build-essential autoconf libtool pkg-config git flex bison libbz2-dev
Installation with poetry:
$ poetry add git+ssh://git@github.com/izumiya-keisuke/inventory-management.git#main
$ pip install git+ssh://git@github.com/izumiya-keisuke/nest.git $ git clone --recursive git+ssh://git@github.com/izumiya-keisuke/inventory-management.git $ cd inventory-management $ pip install .
If you installed this repo with poetry:
$ python -m nle.agent.polyhydra
Otherwise:
$ python inventory-management/nle/agent/polyhydra.py
In both cases, an output directory (contains learned model weights, a tensorboard log, etc.) is generated in the current working directory.
You can adjust configurations from CLI, like:
$ python -m nle.agent.polyhydra batch_size=16 model.hidden_dim=128
The configuration list is shown in nle/agent/config.yaml.
If you installed this repo with poetry:
$ python -m nle.agent.test outputs/YYYY-MM-DD/hh-mm-ss
Otherwise:
$ python inventory-management/nle/agent/test.py outputs/YYYY-MM-DD/hh-mm-ss
By default, the agent's behavior is not displayed; specify the --render option to show it.
You can see other options by specifing -h.
Run cog2021.sh.
@inproceedings{izumiya2021cog,
author = "Keisuke Izumiya and Edgar Simo-Serra",
title = "Inventory Management with Attention-Based Meta Actions",
booktitle = "IEEE Conference on Games (CoG)",
year = 2021,
}
The unmodified files are provided under Apache License 2.0, and the modified files are provided under GPLv3+.
Details of the changes are shown in the CHANGELOG.md.