Presentation

At the end of the PyRat course, we organize a tournament between the programs developed by the students.

This tournament is an opportunity for you to see if you have made the right choices, but also to have a good time!

Snapshot of the 2019-2020 PyRat tournament.

Participating

We will ask you some time before the tournament to send us your AIs, and we will make one pool per group of students. Deadline for tournament submission is on October 23th, 2023.

In order to participate, you should send an archive containing your AI. Make sure that all its dependencies (i.e., the functions you wrote across the course) are available. Additionally, write a short .txt document indicating:

  • The name of the students of the team;
  • The name of your character;
  • Your campus;
  • The name of your team;
  • The number of your group;
  • Which program to run (especially if you have multiple Python files in the archive).

Then go to Moodle at this link and submit an archive containing both files!

Tournament procedure

Unfortunately, we won’t have time to get everyone to compete in the final tournament. Consequently, we will proceed in the form of pools in which all players will compete against each other, in two winning rounds.

In each pool, we will keep the best program, i.e., the one with the highest number of points in the pool matches (1 point for a win, 0.5 for a tie). In the event of a tie after all matches, we will consider as best program the program with lower total execution time.

Once the winners of the pools have been determined (16 AIs), the tournament itself will take place in an amphitheater. The matches will be randomly determined.

The tournament tree. Only one program will reach the top!

The winner of the tournament will win a trophy, and their AI will serve as the final boss for next year’s students!

The prize for the tournament winners.

PyRat parameters used

  • maze_width: 31;
  • maze_height: 29;
  • cell_percentage: 80.0;
  • wall_percentage: 60.0;
  • mud_percentage: 20.0;
  • mud_range: [4, 9];
  • nb_cheese: 41;
  • preprocessing_time: 3.0;
  • turn_time: 0.1.

Some advice

Here are a few things you should keep in mind before submitting your code:

  • Make sure your program works both in the tournament settings, for multiple random games;
  • Take some margins on computations time, as the computer on which the tournament is run may be less powerful than your personal computer.

Previous years videos

Here are a few videos that were taken since the PyRat course was created! Some are more commercial than others, but that’s a cool overview of the atmosphere during the tournament, as well as a glimpse on the various versions of the game!