Skip to main content

Algorithmic Battle

The lab course "Algorithmic Battle" is offered by the Computer Science Theory group of RWTH Aachen University since 2019. This repository contains the necessary code and documentation to set up the lab course yourself.

In an Algorithmic Battle, pairs of teams compete against one another in order to solve a problem of your choice, e.g. a problem from the class NP. The teams each design a generator, that outputs hard-to-solve instances for a given instance size, as well as a solver that accepts an instance and outputs a solution to it as quickly as possible.

The framework is written to be completely language-agnostic regarding the code of the generator and the solver, as each is wrapped in a docker container that only needs to adhere to an I/O structure of your choice (by default, in the form of json-files.)

If you are interested in how to use the framework for a lab course of your own, please consult the teaching concept in the documentation.

Installation and Usage

This project is developed and tested on all major operating systems.

Please consult the official documentation for detailed instructions on installation and usage.

Related projects

This repository only includes the core framework for executing an Algorithmic Battle. For a selection of concrete problems that you can use to play around with the framework, have a look at the algobattle-problems repository. These are problems that have been posed to students in some form over the past years.

While the framework provides all essential tools to host a tournament yourself, e.g. in the form of a lab course, you may be interested in the algobattle-web project. The algobattle-web project implements a webframework with which you are able to comfortably manage your students teams and their code, your problem files and their documentation as well as schedule matches to be fought between registered student teams, using the algobattle API.

Contributing

We welcome any input on how to make this project accessible to as many people as possible. If you have feedback regarding the usage of the framework, the documentation or would even like to help us out with corrections, new features, or translations, feel free to open an issue or pull request. We have developed this project on the basis of practical experience inside our lab courses, thus some design elements may be unintuitive to you. Feel free to point out anything that appears odd to you.

Funding

The development of version 4.0.0 was funded by Stiftung Innovation in der Hochschullehre (Project FRFMM-106/2022 Algobattle) and by the Department of Computer Science of RWTH Aachen University.

Metadata

Release files for algobattle-base 4.3.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for algobattle-base 4.3.5
File Size Uploaded
algobattle_base-4.3.5.tar.gz 55.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for algobattle-base 4.3.5
File Interpreter ABI Platform
algobattle_base-4.3.5-py3-none-any.whl Python 3 none any Details

Total release size: 127.3 kB

Release files / algobattle_base-4.3.5.tar.gz

Download URL algobattle_base-4.3.5.tar.gz
Size 55.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2293ce0621c6a88c00aa8fd41645101df09ede348dc64a022083ea3e020120f2
BLAKE2b-256 checksum
How to use checksums
dac186ac607661dda37ef409426741ac7c613d287bb0a059b40b4b7553dbc193
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / algobattle_base-4.3.5-py3-none-any.whl

Download URL algobattle_base-4.3.5-py3-none-any.whl
Size 72.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
307443859969a367ab26dc6b12fcbcbc5ed8b94a9bd5ea242e4e68ff5ed5aa1e
BLAKE2b-256 checksum
How to use checksums
9b2adc4663be71cd6d2f888f1447b1a7bda4b5d32e9c853052268b2b5079fe54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

4.4.2

2 release files

4.4.1

2 release files

4.4.0

2 release files

This release

4.3.5 This release

2 release files

4.3.4

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.2

2 release files

4.0.1

2 release files

4.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page