Skip to content

Preparing Development Environment

To participate in ANL2025 2025, you need to prepare a local development environment in your machine, download the skeleton, and start hacking. This section of the documentation describes two ways to do that.

This is the recommended method. It requires you to use an installation of python 3.11 or later on your machine.

0. Installing Python

If -- for some reason -- you do not have python installed in your machine, start by installing it from python.org. You can also use any other method to install python 3.11 or later.

1. Creating and activating a virtual environment

Info

optional but highly recommended

As always recommended, you should create a virtual environment for your development. You can use your IDE to do that or simply run the following command:

python -m venv .venv
You should always activate your virtual environment using:

"venv\Scripts\activate"
source .venv/bin/activate

Of course, you can use any other method for creating your virtual environment (e.g. anaconda, hatch, poetry, pyenv, virtualenv or any similar method). Whatever method you use, it is highly recommended not to install packages (anl2025 or otherwise) directly on your base python system.

2. Installing the ANL2025 package

The second step is to install the anl2025 package using:

python -m pip install anl2025

You can run the following command to check the versions of ANL and NegMAS on your machine:

anl2025 version

You should get at least these versions:

anl: 0.1.2 (NegMAS: 0.11.3)

For a test tournament, you can use the command line interface (CLI):

anl2025 tournament run --generate=5

If no errors are shown, you have successfully installed ANL! You can now start developing your agent.

3. Development

The next step is to download the template from here. Please familiarize yourself with the competition rules available at the competition website. After downloading and unpacking the template, you should do the following steps:

  1. Modify the name of the single class in myagent.py (currently called NewNegotiator) to a representative name for your agent. We will use NewNegotiator here. You should then implement your agent logic by modifying this class.
    • Remember to change the name of the agent in the last line of the file to match your new class name (NewNegotiator).
  2. Start developing your agent as will be explained later in the tutorial.
  3. You can use the following ways to test your agent:

    • Run the following command to test your agent from the root folder of the extracted skeleton:
      python -m myagent.myagent
      
    • You can also use your favorite IDE, and run the myagent.py file directly.
    • You can directly call anl2025_tournament() passing your agent as one of the competitors. This is the most flexible method and will be used in the tutorial. Check out the tutorials for more details!
  4. Submit your agent to the official submission website:

    • Remember to update the Class Name (NewNegotiator in our case) and Agent Module (myagent.myagent in our case) in the submission form on the competition website to your own name.
    • If you need any libraries that are not already provided by anl2025, please include them in the Dependencies in a semi-colon separated list when submitting your agent.