ANL Documentation
This repository is the official platform for running ANAC Automated Negotiation Leagues (starting 2024). It will contain a module
called anlXXXX
for the competition run in year XXXX. For example anl2024 will contain all files related to the
2024's version of the competition.
This package is a thin-wrapper around the NegMAS library for automated negotiation. Its main goal is to provide the following functionalities:
- A method for generating scenarios to run tournaments in the same settings as in the ANL competition. These functions are always called
anl20XX_tournament
for year20XX
. - A CLI for running tournaments called
anl
. - A visualizer for inspecting tournament results and negotiations in details called
anlv
. - A place to hold the official implementation of every strategy submitted to the ANL competition after each year. These can be found in the module
anl.anl20XX.negotiators
for year20XX
.
The official website for the ANL competition is: https://scml.cs.brown.edu/anl
Quick start
You can also install the in-development version with::
CLI
After installation, you can try running a tournament using the CLI:
To find all the parameters you can customize for running tournaments run:
You can run the following command to check the versions of ANL and NegMAS on your machine:
You should get at least these versions:
Other than the two commands mentioned above (tournament2024, version), you can use the CLI to generate and save scenarios which you can later reuse with the tournament2024 command using --scenarios-path. As an example:
anl make-scenarios myscenarios --scenarios=5
anl tournament2024 --scenarios-path=myscenarios --scenarios=0
The first command will create 5 scenarios and save them under myscenarios
. The second command will use these scenarios without generating any new scenarios to run a tournament.
Visualizer
ANL comes with a simple visualizer that can be used to visualize logs from tournaments after the fact.
To start the visualizer type:
This will allow you to select any tournament that is stored in the default location (~/negmas/anl2024/tournaments). You can also show the tournament stored in a specific location 'your-tournament-path' using:
Contributing
Info
This is not required to participate in the ANL competition
If you would like to contribute to ANL, please clone the repo, then run:
python -m pip install -r requirements.txt
python -m pip install -r requirements-dev.txt
python -m pip install -r docs/requirements.txt
python -m pip install -e .
You can then submit Pull Requests which will be carefully reviewed.
If you have an issue, please report it here. If you have something to discuss, please report it here.