Skip to content

CogitoNTNU/deeptactics-arena

Repository files navigation

DeepTactics Arena

GitHub Workflow Status (with event) GitHub top language GitHub language count License: MIT Project Version

Cogito Project Logo
📋 Table of contents

Description

🛠️ Prerequisites

Getting started

  1. Clone the repository:

    git clone https://github.com/CogitoNTNU/deeptactics-arena.git
    cd deeptactics-arena
  2. Install dependencies:

    uv sync
  3. Configure environment variables:

    This project uses environment variables for configuration. Copy the example environment file to create your own:

    cp .env.example .env

    Then edit the .env file to include your specific configuration settings.

  4. Set up pre commit (only for development):

    uv run pre-commit install

Usage

Run training with the default configuration (configs/config.yaml):

uv run python main.py

To use a specific config, pass it as a positional argument or with --config:

uv run python main.py connect_four.yaml
uv run python main.py --config chess.yaml

Available configurations in configs/: config.yaml, chess.yaml, connect_four.yaml, tic-tac-toe.yaml. You can also create your own by using any of these as a template.

Training progress is logged to Weights & Biases under the deeptactics-arena entity. To disable W&B logging, uncomment the mode="disabled" line in main.py.

📖 Generate Documentation Site

To build and preview the documentation site locally:

uv run mkdocs build
uv run mkdocs serve

This will build the documentation and start a local server at http://127.0.0.1:8000/ where you can browse the docs and API reference. Get the documentation according to the lastes commit on main by viewing the gh-pages branch on GitHub: https://cogitontnu.github.io/deeptactics-arena/.

Testing

To run the test suite, run the following command from the root directory of the project:

uv run pytest --doctest-modules --cov=src --cov-report=html

Team

This project would not have been possible without the hard work and dedication of all of the contributors. Thank you for the time and effort you have put into making this project a reality.

Sverre Nystad
Sverre Nystad
Kristoffer Nohr Olaisen
Kristoffer Nohr Olaisen
Ludvig Øvrevik
Ludvig Øvrevik
Håkon Støren
Håkon Støren
Parleen Brar
Parleen Brar
Vetle Støren
Vetle Støren
Jacob Gullesen Hagen
Jacob Gullesen Hagen
Jessica Liu
Jessica Liu
Kristian Flatval
Kristian Flatval

License


Distributed under the MIT License. See LICENSE for more information.