Page 1 of 1
Has BGA solved the "Social Golfer" problem?
Posted: 14 May 2022, 00:03
by CHatDad
I'm running small tournaments of friends and family, 9 people total, so we're splitting into groups of 3 and playing 3-player games using the Swiss system.
If I choose the "don't try and match to the same opponent" option, and I only do 4 rounds of matches, then technically each player should be able to play every other player exactly one time, effectively creating a 3-player round robin of sorts.
What are the chances of this actually working, though? This is actually a difficult math problem called the "Social Golfer problem"
https://en.wikipedia.org/wiki/Social_golfer_problem. It has been solved for up to 10 rounds (with 4 player games), so I would propose we are given an option to choose one of these configurations ahead of time.
Pie in the sky, I'm sure, but come on, we're board gamers here. These are exactly the puzzles we like to figure out.
Re: Has BGA solved the "Social Golfer" problem?
Posted: 14 May 2022, 03:09
by dgjxqz
What if I want to continue creating new tables with different combinations after they meet once, making them only meet twice, then thrice, and so on?
My not so successful attempt
https://boardgamearena.com/forum/viewtopic.php?t=23483
Re: Has BGA solved the "Social Golfer" problem?
Posted: 15 May 2022, 00:05
by FSKFSK
The tournament engine generally sucks. Your options are:
- manually set up the games without a tournament
- set the tournament to "may play the same player twice" and accept partial repeats
Re: Has BGA solved the "Social Golfer" problem?
Posted: 16 May 2022, 19:33
by CHatDad
FSKFSK wrote: ↑15 May 2022, 00:05
- set the tournament to "may play the same player twice" and accept partial repeats
Our problem so far is that because there are not that many people in the tournament, repeats are fairly frequent. In fact, after the first round, the winners of each 3 games play each other, and it's basically guaranteed that the first and second place of that game play each other again, and basically the 1st and second place players repeat every time. Same thing happens with the bottom 3 game in a sense.
I guess I'm just trying to figure out how well the "try to prevent same players to be opponents twice works", and whether it will still allow repeats if necessary.
Re: Has BGA solved the "Social Golfer" problem?
Posted: 16 May 2022, 20:30
by FSKFSK
"Prevent to play the same player twice" will fail if you have too many rounds. It doesn't implement any advanced algorithms like "Social Golfer".
Re: Has BGA solved the "Social Golfer" problem?
Posted: 10 June 2022, 19:52
by CHatDad
Well, I have some results if anyone is interested. The short answer is, no, BGA has not solved the Social Golfer problem. I was a bit facetious in assuming so, but I was curious how close it would get. Again for context:
- Tournament had 9 players
- We played 4 rounds of 3-player games
- In one case I set the "Players pairing policy" to try not to pair opponents multiple times, and one time to just use pure ranking, no matter how many duplicate opponents.
- In both cases, the first and second round never had duplicates, because all of the winners would play each other, 2nd place players, and 3rd place players.
When I set the pairing policy to
avoid duplicates:
- In the 3rd Round, only 2 players had a repeat opponent
- In the 4th Round, 5 players had 1 repeat opponent, and 2 players had 2 repeat opponents
- No player played an opponent more than 2 times.
- Only one person never had a repeat opponent
When I set the pairing policy to be okay with duplicates
- In the 3rd Round, 8 players had a 1 repeat opponent
- In the 4th Round, 5 players had 1 repeat opponent and 3 players had 2 repeat opponents
- 4 players played an opponent 3 times out of the 4 rounds
- Zero players never had a repeat opponent
So, while it's not perfect, trying to avoid duplicates provides much more variety in opponent selection and gets us closer to the Round Robin style we were looking for. Especially important is not playing a player more than 2 times out of 4 rounds, which avoiding duplicates did prevent.