Skip to content

Create better pairings algorithm #43

@alanzhu0

Description

@alanzhu0
  • The algorithm should first play every player against random to assess each player's relative strength to seed the tournament prior to beginning the first round

for j in range(i + 1, len(players)):

The pairings algorithm should be improved. Right now, if the Swiss algorithm fails on one pass over all the players, i.e. not all players can be matched with someone they haven't played before, it will go straight to the Danish pairing (the stuff inside the else on line 50 is running). This probably happens when pairing the last players left (the lowest-ranked ones at the end of the for loop). This happened for 14 rounds in the 2025 tournament. Instead, the Swiss algorithm should try more passes to resolve the pairings incompatibility. Look into a Swiss pairings algorithm.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions