Skip to content
Advertisement

League Scheduling without RoundRobin

currently I am actually looking for a term specific for my problem:

I’ve created a league of >4 Teams The League lasts 3 Rounds (Numbers for the sake of simplicity) Matchups shall be assigned randomly out of Teams a Team has not yet played against.

I am struggling to get my current code running with each fringe case so I’d like to look up ‘standard’ algorythm developed for such cases, but I cannot come up with the term I am looking for.

One Schedule Example would be:

JavaScript

I couldn’t find anything in that regard, as it seems to be a very, very unlikely thing to be used in leagues/tournaments – however that’s my requirement.

This is my current code which creates ONE Round. It may happen, that this code won’t give each a team an opponent in round 3 as their possible opponents have a matchup already assigned this round (tested with 6 teams, may occur in Round3)

JavaScript

Any help for what I shall google would be appreciated

Advertisement

Answer

A Swiss system “is a non-eliminating tournament format which features a predetermined number of rounds of competition, but considerably fewer than in a round-robin tournament”.

It’s widely used in chess and other games. According to Wikipedia:

Swiss systems are commonly used in chess, bridge, eSports, Morabaraba, Scrabble, Backgammon, squash, Pétanque (boules), Quiz bowl, Magic: The Gathering, Policy Debate, Warhammer, eight-ball, Reversi, Dominion, Pokémon TCG, Yu-Gi-Oh, Blood Bowl, Guild Wars 2, Star Wars: X-Wing Miniatures Game, Path of Exile and Android: Netrunner.

It may fit your needs, and you can find some ready-to-use implementation.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement