Skip to content

josealeixopc/gym-diplomacy

Repository files navigation

gym-diplomacy

This repository contains the source code for a Diplomacy Open AI Gym that uses BANDANA as game engine.

It is the code used for my Master's thesis for the Software Engineering and Computer Science degree at FEUP. The state and action structure used were also published as a paper.

The agent is capable only of negotiating. The tactical plays are made by the D-Brane player.

Arquitecture

The conceptual diagram of this project:

Conceptual Diagram

Directory structure

agents

This directory contains the code for custom RL agents that were created for training.

java-modules

This directory contains all the Java modules. At the moment only BANDANA and the OpenAIAgent are in it.

protobuf

This directory contains the Protobuf messages that are exchanged between modules.

python-modules

This directory contains all the Python modules for developing the environment.

Running

The recommended way to install and run this environment is using Docker, as it contains a lot of depencies.

To run with Docker, you must first build the Java artifacts using mvn package. Then simply build the Dockerfile in the root of this directory:

docker build --rm -f "Dockerfile" -t dip-q:latest .

This will create an image with every dependency needed to execute the project. The default environment for the image is development, which means you are able to compile Java code and run Maven inside the container.

To run a container and navigate inside:

docker run --rm -it dip-q:latest

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published