Hello, I am having a competition with up to 60 teams. My idea was to break the 60 teams into 10 groups of 6 teams each and run a Round Robin tournament for each individual group. Simple. Here is my problem: What if less than 60 teams show up to the competition (i.e. 58 teams)? An idea I am exploring for fairness is to pair up X opponents to each team from the entire pool of N teams, without pairing the same teams twice. Is this possible and if so, is there an algorithm that can do this? Thanks,
I think some teams with 6 and some with 5 (selected randomly) are not significantly less fair than 10 teams with 6 (again, selected randomly - you can get harder and easier groups there anyway). If you want to keep the number of matches for each team the same, let the teams in the smaller groups make matches against (random?) teams in other groups.
Yes, it's possible. Just take your favorite round-robin schedule generator (these are available online). Have it generate a complete round-robin schedule for all 58 teams. Don't worry, you won't use the whole thing. Now, randomly select 5 of the 57 rounds from the schedule. Play only those rounds. Voila! You have a tournament where each team plays exactly 5 others and no two teams play each other twice. Alternatively, you could use the Swiss system, which has the property that most teams will be paired against other teams with similar records. Whether that is desirable or undesirable depends on the nature of your tournament, I suppose.