Tournament blocks: Difference between revisions

From Japanese Mahjong Wiki
Jump to navigation Jump to search
(I'm working on this to include more matchups, and what to do with some that may end up deleted. WIP, comment to me but don't muck the tables.)
mNo edit summary
Line 24: Line 24:


==== Simplest solution: Dutch cycles ====
==== Simplest solution: Dutch cycles ====
{| class="wikitable" style="float:right; margin-left: 10px; width: 30%;"
|-
! Round !! Table !! East !! South !! West !! North
|-
| 1 || 1 || 01 || 12 || 23 || 34
|-
| 2 || 2 || 13 || 01 || 25 || 37
|-
| 3 || 3 || 27 || 40 || 01 || 14
|-
| 4 || 4 || 43 || 29 || 15 || 01
|-
| 5 || 5 || 01 || 16 || 31 || 35
|-
|colspan=6| '''Notes:''' This is a sample of the table matching for a 44-person tournament. As players are evenly divided in 4 blocks of shifting players, when a block exceeds the size allotted, players shuffle back. E.g.: On table 5 above, the 4th block comprises of playres 34 to 44. One group is moving forward in steps of 3, and 43+3 is 46. Naturally, there is no player 46 to take that seat and is filled with the 2nd player (44+2) of that block, player 35.<br/>
'''Balances achieved:''' Opponent, Wind, Table. This match-up is solved '''if''' the number of players is sufficiently large or prime. Works for 7 (maybe more) hanchan for 28, 44, 52, 56, 64, 68, 76++. Works for 6 hanchan with 72. Works for 5 hanchan with 20, 40, 60. Do not use with 24, 32, 36, 48.<br/>
'''Source:''' [[User:Senechal]].
|}
Dutch cycles (also called ____) serve a purpose of fairly distributing players across a set number of games, all while reducing/preventing repeats between pairs of players. This system works best when prime factors are in play, but breaks down when composite factors are used. Large player bases can mitigate some issues.
Dutch cycles (also called ____) serve a purpose of fairly distributing players across a set number of games, all while reducing/preventing repeats between pairs of players. This system works best when prime factors are in play, but breaks down when composite factors are used. Large player bases can mitigate some issues.



Revision as of 03:10, 12 October 2015

This article is meant as a repository for tournament and competitive blocks used for seating arragements. The content is mainly present in tabular form: reading it for the sake of reading is not recommended.

Ideal blocks

Ideal blocks require the organizer to plan according to the situation hey are planning for. Block sizes of 4 and of 5 change the dynamic completely.

Tournament

Tournaments often require a single hanchan between 4 players and then a shuffling of new opponents, aiming to complete a maximum or a set number of hanchan with minimal or no repeats between players.

League play

Leagues may require being able to shift between blocks of 4 and 5 players who end up playing 4 hanchan among each other per session.

Pitfalls and criticism of tournament blocks used for mahjong

Tournament blocks could be used to impose a fair distribution of winds, balancing out variables such as how many times has a player started as East/South/West/North, when players have a degree of control regarding such assignments. However, they have also been used to segregate players, guaranteeing a zero-opportunity between people for a variety of reasons (not wanting to play a spouse, a club member, or someone from the same country), effectively manipulating the random chance everyone has to a more skewed probablility of meeting certain choice players even before drawing in a manner more restrictive than simply knowing who drawed beforehand.

The other mathematically unobservable fact resides in the truth that mahjong tiles can develop scratches and other identifying marks. Simply rotating players by [x,x,x,x]:->[x,x+1,x+2,x+3] will leave a quarter of the table with a potential opportunity to learn and exploit the tile markings. Luckily, the easiest way to minimize that impact is to change the transformation posited above to [x,x,x,x]:->[x+1,x+2,x+3,x+4].

EMA tournaments have tried implementing in some of their events a "final round" where players are then re-ranked 1,2,3,4; 5,6,7,8; et cetera, enabling them to have 8 hanchan in an event where 24 or 48 people show up, as it is mathematically difficult or impossible to satisfy for more than 7. Otherwise, most of their tournament seating arrangements occur though Dutch cycles (transparent but with risks), or through software which may or may not be easily verifiable or reproducible (trusting the black box, security through obscurity). However, they have not statuated on a method for running tournaments. The two main software solutions have benefits but have significant drawbacks. Criticism for these kinds of points in participative tournaments is not generally a thing in Japan, as most tournaments there are knock-out events or small groups that accept duplication of pairings.


Block repository

Tournament blocks

Simplest solution: Dutch cycles

Round Table East South West North
1 1 01 12 23 34
2 2 13 01 25 37
3 3 27 40 01 14
4 4 43 29 15 01
5 5 01 16 31 35
Notes: This is a sample of the table matching for a 44-person tournament. As players are evenly divided in 4 blocks of shifting players, when a block exceeds the size allotted, players shuffle back. E.g.: On table 5 above, the 4th block comprises of playres 34 to 44. One group is moving forward in steps of 3, and 43+3 is 46. Naturally, there is no player 46 to take that seat and is filled with the 2nd player (44+2) of that block, player 35.

Balances achieved: Opponent, Wind, Table. This match-up is solved if the number of players is sufficiently large or prime. Works for 7 (maybe more) hanchan for 28, 44, 52, 56, 64, 68, 76++. Works for 6 hanchan with 72. Works for 5 hanchan with 20, 40, 60. Do not use with 24, 32, 36, 48.
Source: User:Senechal.

Dutch cycles (also called ____) serve a purpose of fairly distributing players across a set number of games, all while reducing/preventing repeats between pairs of players. This system works best when prime factors are in play, but breaks down when composite factors are used. Large player bases can mitigate some issues.

The obvious flaw with this solution is that players are segregated into blocks. The method is fair as long as players draw from one pool with all entries mixed AND that the draw occurs fairly, in the presence of all players, or failing that, that the location and time of draw be published beforehand with a fair chance for all to attend. Both NMB tournaments (2011 in Utrecht) and the 2014 WRC used this method, however they both had flaws in their implementation.

The general formula is that table t consists of players [t, t + n/4, t + 2n/4, t + 3n/4] in hanchan 0 {mathematically speaking so the formula works}, and for future hanchan h, tables consist of [t, ((t + 1*h) % n/4) + n/4, ((t + 2*h) % n/4) + 2n/4, ((t + 3*h) % n/4) + 3n/4]. Its usefulness can be demonstrated as soon as there are 44 or more participants, and preferably not a multiple of 3. Heavily composite numbers of players will lead to collisions when tables = h * factor. The 2014 WRC had 120 players over 30 tables: as 120 (as well as 30) is divisible by 10, it would lead to a collision when h = 10, making the 11th hanchan place naively two players who met before across all 30 tables. It is also divisible by 5, but for larger events, a collision cannot occur if 1*factor, 2*factor or 3*factor does not equal or surpass the number of tables.

Tested blocks of 4

These blocks should be as close to optimal as humanly possible. Tournaments aiming to run only 4 rounds may require using a different set of tables as balancing may require different pairings to obtain a specific goal at 4 rounds which is potentially unattainable in a solution aimed for 5 or more rounds. Comments and sources included when possible.

Format is in CSV with extra spaces between tables when possible.

16 Players Round Out of Raw data Balanced data
16 1 4/5 01,05,09,13, 02,06,10,14, 03,07,11,15, 04,08,12,16 AEIM BFJN CGKO DHLP
16 2 4/5 07,04,13,10, 06,01,16,11, 05,02,15,12, 08,03,14,09 GDMJ FAPK EBOL HCNI
16 3 4/5 09,15,06,04, 10,16,05,03, 13,11,02,08, 14,12,01,07 IOFD JPEC MKBH NLAG
16 4 4/5 12,13,03,06, 11,14,04,05, 15,10,08,01, 16,09,07,02 LMCF KNDE OJHA PIGB
16 5 5 01,02,03,04, 05,06,07,08, 09,10,11,12, 13,14,15,16 ABCD EFGH IJKL MNOP
Notes: In 4 rounds, players 13 and 15 will have to play the same table 3 times. In 5 rounds, add players 4, 6, 11 and 14. This is unavoidable, the alternative being that players will play 4 times on a table.

Balances achieved: Opponent, Wind, Table. This match-up is solved.
Source: Pegg, adapted by User:Senechal.

20 Players A Round Out of Raw data
20 1 6/7 01,02,03,04, 05,06,07,08, 09,10,11,12, 13,14,15,16, 17,18,19,20
20 2 6/7 14,03,06,17, 18,04,10,13, 16,05,09,19, 15,08,01,11, 20,07,12,02
20 3 6/7 12,17,16,01, 03,11,13,05, 08,20,14,10, 19,15,04,07, 06,09,02,18
20 4 6/7 18,11,07,03, 04,12,20,06, 17,13,02,15, 14,01,05,09, 10,16,08,19
20 5 6/7 08,19,12,13, 20,15,09,03, 07,01,18,14, 11,06,04,16, 02,05,17,10
20 6 6/7 07,09,13,01, 15,19,10,06, 02,08,16,18, 05,20,11,17, 03,04,14,12
20 7 7/7 04,17,08,09, 12,18,05,15, 11,14,19,02, 06,13,01,20, 10,16,03,07
Notes: This is not a solution to the Social Golfer Problem but it does balance out fairly well to get players to play against almost everyone.

Balances achieved: Wind, Table. This match-up is imperfect. 20 Players B is a simple Dutch cycle of players, more suitable for 4 or 5 rounds.
Source: User:Yazphier, balanced by User:Senechal.

Players Block Of Raw data Balanced data
20 1 5 ABCD EFGH IJKL MNOP QRST
20 2 5 AEIM BFJQ CGNR DKOS HLPT
20 3 5 AFOT BELR CIPS DGJM HKNQ
20 4 5 AJPR BHMS CEKT DFIN GLOQ
20 5 5 ALNS BGIT CHJO DEPQ FKMR
24 1 7 ABKU IJSE QRCM DGFX HLNO PTVW
24 2 7 ACLV IKTF QSDN EHGR BMOP JUWX
24 3 7 ADMW ILUG QTEO FBHS CJNP KRVX
24 4 7 AENX IMVH QUFP GCBT DJKO LRSW
24 5 7 AFOR INWB QVGJ HDCU EKLP MSTX
24 6 7 AEPS IOXC QWHK BEDV FJLM NRTU
24 7 7 AHJT IPRD QXBL CFEW GKMN OSUV
28 1 9 ABCD EFGH IJKL MNab cdef ghij klmn ABCD EFGH IJKL MNab cdef ghij klmn
28 2 9 AEgk BFMc Ndhl GIem HJai CKbn DLfj AEgk cBMF hNld eIGm JaHi bKnC LfDj
28 3 9 AFjn BEae bfim HKcl GLMh CINk DJdg FAjn aeBE fimb HlKc MhLG CkNI DgdJ
28 4 9 AIci BJNn EKMj FLdm begl CGaf DHhk iIAc NnJB KjEM mdFL gbel GCaf HDkh
28 5 9 AGbd BHgm ELNi achn FKfk CJej DIMl dGbA BmHg ELiN ncha kFfK jJCe lMID (c and H wind-imbalanced)
28 6 9 AKeh BLbk FIag EJfl Ncjm CHMd DGin A... .B.. .N.. ..G. ..c. .H.. ...D
28 7 9 AHNf BGjl FJbh Meik EIdn CLcg DKam .A.. ..B. ..N. ...G .... .... D...
28 8 9 ALal BKdi GJck Mfgn HIbj CEhm DFNe ..A. ...B ...N G... .... .... .D..
28 9 9 AJMm BIfh CFil DEbc GKNg HLen adjk ...A B... N... .G.. .... .... ..D.
32 1 10 ABCD EFGH IJKL MNPO abcd efgh ijkl mnop
32 2 10 AEIm BgcH DFKp kPdf Maei ChbG jNoL lJnO
32 3 10 Alof Bhkm DNGi FaLO MbHK CPeJ Ejcp gIdn
32 4 10 AciL BjdK DkbJ FgoP fGOp CIla EhMn NeHm
32 5 10 AgNK BElP DIoH hdiO beLp Cjfm FMcJ kaGn
32 6 10 AhJp BFin DcmO INbf leGK CMod EgkL jPaH
32 7 10 AFde BoGJ DEaf hlNc PiKm CHLn gjbO IkMp
32 8 10 APbn BNap DglM koce fHiJ CEKO FhIj dGLm
32 9 10 AjMG BIeO DhPL gaJm cfKn CFkN Eobi ldHp
32 10 10 AkHO BMfL Djen Flbm IPcG Cgip ENdJ hoaK.
36 1 8 [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16], [17, 18, 19, 20], [21, 22, 23, 24], [25, 26, 27, 28], [29, 30, 31, 32], [33, 34, 35, 36] ]
36 2 8 [ [1, 5, 9, 13], [2, 6, 10, 17], [3, 7, 11, 21], [4, 8, 12, 25], [14, 18, 22, 29], [15, 19, 23, 33], [16, 26, 30, 34], [20, 27, 31, 35], [24, 28, 32, 36] ]
36 3 8 [ [1, 6, 11, 25], [2, 7, 9, 16], [3, 5, 10, 20], [4, 14, 21, 33], [8, 15, 18, 32], [12, 13, 17, 22], [19, 27, 30, 36], [23, 28, 31, 34], [24, 26, 29, 35] ]
36 4 8 [ [1, 10, 18, 21], [2, 8, 13, 29], [3, 14, 31, 36], [4, 9, 20, 23], [5, 15, 17, 28], [6, 12, 16, 19], [7, 26, 32, 33], [11, 24, 27, 34], [22, 25, 30, 35] ]
36 5 8 [ [1, 14, 24, 30], [2, 12, 18, 34], [3, 9, 17, 32], [4, 6, 28, 35], [5, 21, 29, 36], [7, 10, 19, 25], [8, 16, 23, 27], [11, 13, 20, 33], [15, 22, 26, 31] ]
36 6 8 [ [1, 12, 23, 26], [2, 11, 22, 36], [3, 6, 13, 24], [4, 10, 16, 32], [5, 18, 27, 33], [7, 20, 28, 30], [8, 14, 19, 35], [9, 15, 29, 34], [17, 21, 25, 31] ]
36 7 8 [ [1, 19, 28, 29], [2, 5, 23, 30], [3, 12, 15, 27], [4, 11, 18, 31], [6, 9, 26, 36], [7, 14, 17, 34], [8, 10, 22, 33], [13, 21, 32, 35], [16, 20, 24, 25] ]
36 8 8 [ [1, 7, 15, 35], [2, 14, 25, 32], [3, 16, 18, 28], [4, 17, 27, 29], [5, 11, 19, 26], [6, 20, 22, 34], [8, 9, 21, 30], [10, 13, 23, 36], [12, 24, 31, 33] ]
40 all of 5/6ND Dutch cycles break after 5.
40 1 9 [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16], [17, 18, 19, 20], [21, 22, 23, 24], [25, 26, 27, 28], [29, 30, 31, 32], [33, 34, 35, 36], [37, 38, 39, 40] ]
40 2 9 [ [1, 5, 9, 13], [2, 6, 10, 17], [3, 7, 11, 21], [4, 8, 12, 25], [14, 18, 22, 29], [15, 19, 23, 33], [16, 20, 24, 37], [26, 30, 34, 38], [27, 31, 35, 39], [28, 32, 36, 40] ]
40 3 9 [ [1, 6, 11, 25], [2, 7, 9, 29], [3, 5, 10, 15], [4, 13, 17, 24], [8, 14, 21, 34], [12, 16, 22, 39], [18, 23, 28, 37], [19, 26, 31, 36], [20, 32, 35, 38], [27, 30, 33, 40] ]
40 4 9 [ [1, 12, 15, 29], [2, 22, 28, 34], [3, 6, 30, 35], [4, 9, 14, 36], [5, 25, 33, 37], [7, 10, 24, 32], [8, 13, 19, 27], [11, 17, 23, 40], [16, 18, 31, 38], [20, 21, 26, 39] ]
40 5 9 [ [1, 8, 24, 28], [2, 5, 11, 39], [3, 19, 22, 25], [4, 15, 21, 38], [6, 14, 26, 32], [7, 18, 35, 40], [9, 20, 23, 27], [10, 30, 36, 37], [12, 13, 31, 34], [16, 17, 29, 33] ]
40 6 9 [ [1, 14, 17, 39], [2, 8, 35, 37], [3, 18, 27, 32], [4, 22, 31, 33], [5, 16, 23, 26], [6, 12, 21, 36], [7, 13, 28, 38], [9, 15, 24, 30], [10, 20, 25, 40], [11, 19, 29, 34] ]
40 7 9 [ [1, 22, 36, 38], [2, 23, 25, 32], [3, 26, 29, 37], [4, 5, 18, 34], [6, 13, 33, 39], [7, 15, 17, 27], [8, 11, 20, 30], [9, 21, 28, 31], [10, 16, 19, 35], [12, 14, 24, 40] ]
40 8 9 [ [1, 19, 21, 40], [2, 12, 18, 33], [3, 8, 17, 31], [4, 7, 16, 30], [5, 20, 28, 29], [6, 24, 27, 34], [9, 22, 26, 35], [10, 14, 23, 38], [11, 13, 32, 37], [15, 25, 36, 39] ]
40 9 9 [ [1, 7, 23, 31], [2, 13, 20, 36], [3, 16, 34, 40], [4, 10, 29, 39], [5, 12, 27, 38], [6, 15, 22, 37], [8, 9, 32, 33], [11, 18, 24, 26], [14, 19, 28, 30], [17, 21, 25, 35] ]
44 (11*4) Dutch 11
52 (13*4) Dutch 13
68 (17*4) Dutch 17
(prime*4) Dutch prime

League play blocks

Considering that league blocks contain 5 players, the counting mechanism has to be recalculated almost from scratch. These numbers are to satisfy 6-session events or seasons. For all Dutch cycles, as well as some non-Dutch SGP blocks can drop the last fifth in order to make groups of 4, expanding the solved ranges of players from as low as 80% to 100% of the maximal solutions. Considering all our solutions for 25+ are good for 6+ sessions, solutions for larger numbers can concatenate smaller groups with the minimum amount of sessions needed to make a larger group that satisfies that lower bound. The solution for 25 players in 6 sessions can drop one player, the solution for 40 present below can drop 5, although it may be possible that a solution allowing to drop 8 exists.

Players Round Of Match-ups
25 1st of 6 [ [1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25] ]
25 2nd of 6 [ [1, 6, 11, 16, 21], [2, 7, 12, 17, 22], [3, 8, 13, 18, 23], [4, 9, 14, 19, 24], [5, 10, 15, 20, 25] ]
25 3rd of 6 [ [1, 7, 13, 19, 25], [2, 8, 14, 20, 21], [3, 9, 15, 16, 22], [4, 10, 11, 17, 23], [5, 6, 12, 18, 24] ]
25 4th of 6 [ [1, 8, 15, 17, 24], [2, 9, 11, 18, 25], [3, 10, 12, 19, 21], [4, 6, 13, 20, 22], [5, 7, 14, 16, 23] ]
25 5th of 6 [ [1, 9, 12, 20, 23], [2, 10, 13, 16, 24], [3, 6, 14, 17, 25], [4, 7, 15, 18, 21], [5, 8, 11, 19, 22] ]
25 6th of 6 [ [1, 10, 14, 18, 22], [2, 6, 15, 19, 23], [3, 7, 11, 20, 24], [4, 8, 12, 16, 25], [5, 9, 13, 17, 21] ]
30 1st of 6 [ [1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25], [26, 27, 28, 29, 30] ]
30 2nd of 6 [ [1, 6, 11, 16, 21], [2, 7, 13, 19, 30], [3, 8, 14, 24, 29], [4, 9, 20, 25, 28], [5, 15, 18, 23, 27], [10, 12, 17, 22, 26] ]
30 3rd of 6 [ [1, 8, 13, 20, 22], [2, 6, 12, 23, 28], [3, 9, 11, 18, 30], [4, 15, 16, 24, 26], [5, 7, 17, 25, 29], [10, 14, 19, 21, 27] ]
30 4th of 6 [ [1, 7, 18, 24, 28], [2, 10, 11, 20, 29], [3, 6, 15, 19, 22], [4, 14, 17, 23, 30], [5, 9, 13, 21, 26], [8, 12, 16, 25, 27] ]
30 5th of 6 [ [1, 10, 15, 25, 30], [2, 9, 17, 24, 27], [3, 7, 12, 20, 21], [4, 6, 13, 18, 29], [5, 14, 16, 22, 28], [8, 11, 19, 23, 26] ]
30 6th of 6 [ [1, 9, 12, 19, 29], [5, 6, 20, 24, 30], [4, 7, 11, 22, 27], [8, 15, 17, 21, 28], [3, 10, 13, 16, 23], [2, 14, 18, 25, 26] ]
35 all of 7 Dutch cycles. {28P-35P}
40 1st of 6 [ [1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25], [26, 27, 28, 29, 30], [31, 32, 33, 34, 35], [36, 37, 38, 39, 40] ]
40 2nd of 6 [ [1, 6, 11, 16, 21], [2, 7, 12, 26, 31], [3, 8, 13, 17, 36], [4, 9, 14, 27, 32], [5, 10, 15, 22, 37], [18, 23, 28, 33, 38], [19, 24, 29, 34, 39], [20, 25, 30, 35, 40] ]
40 3rd of 6 [ [1, 7, 14, 17, 22], [2, 6, 13, 28, 34], [3, 10, 11, 27, 40], [4, 8, 12, 20, 33], [5, 9, 16, 25, 39], [15, 21, 29, 31, 38], [18, 24, 26, 35, 36], [19, 23, 30, 32, 37] ]
40 4th of 6 [ [1, 8, 15, 19, 35], [2, 16, 22, 27, 33], [3, 9, 12, 24, 38], [4, 6, 30, 31, 36], [5, 14, 23, 34, 40], [7, 11, 20, 28, 39], [10, 17, 21, 26, 32], [13, 18, 25, 29, 37] ]
40 5th of 6 [ [1, 9, 13, 31, 40], [2, 15, 20, 24, 32], [3, 14, 21, 33, 39], [4, 16, 26, 34, 37], [5, 7, 27, 35, 38], [6, 12, 17, 23, 29], [8, 11, 18, 22, 30], [10, 19, 25, 28, 36] ]
40 6th of 6 [ [1, 10, 12, 18, 39], [2, 9, 11, 23, 35], [3, 6, 15, 25, 26], [4, 13, 19, 22, 38], [5, 17, 24, 30, 33], [7, 16, 29, 32, 40], [8, 14, 28, 31, 37], [20, 21, 27, 34, 36] ]
45 1st of 6 [ [20, 24, 32, 39, 43], [6, 29, 31, 33, 42], [7, 11, 17, 34, 45], [12, 14, 15, 18, 25], [2, 5, 8, 9, 19], [1, 4, 16, 27, 28], [3, 13, 23, 30, 35], [10, 22, 26, 38, 40], [21, 36, 37, 41, 44] ]
45 2nd of 6 [ [5, 17, 28, 40, 41], [11, 13, 22, 24, 27], [8, 25, 32, 33, 37], [9, 10, 20, 30, 45], [2, 12, 16, 29, 44], [3, 15, 36, 42, 43], [4, 6, 18, 23, 26], [1, 14, 19, 21, 34], [7, 31, 35, 38, 39] ]
45 3rd of 6 [ [4, 21, 25, 31, 40], [13, 16, 41, 43, 45], [2, 20, 22, 33, 34], [9, 14, 23, 27, 38], [17, 18, 19, 29, 32], [7, 8, 12, 30, 36], [1, 15, 26, 37, 39], [3, 5, 6, 24, 44], [10, 11, 28, 35, 42] ]
45 4th of 6 [ [19, 27, 40, 42, 45], [4, 12, 17, 22, 39], [8, 13, 20, 26, 44], [18, 24, 30, 37, 38], [7, 23, 28, 29, 43], [6, 11, 15, 21, 32], [3, 9, 16, 25, 34], [1, 5, 33, 35, 36], [2, 10, 14, 31, 41] ]
45 5th of 6 [ [4, 7, 9, 15, 41], [11, 25, 26, 29, 36], [8, 16, 18, 39, 40], [27, 30, 31, 34, 44], [14, 22, 35, 37, 43], [5, 12, 13, 21, 42], [6, 19, 20, 28, 38], [1, 2, 3, 32, 45], [10, 17, 23, 24, 33] ]
45 6th of 6 [ [4, 8, 24, 29, 45], [6, 13, 14, 36, 40], [15, 16, 19, 22, 23], [5, 7, 10, 18, 27], [3, 17, 20, 31, 37], [1, 11, 38, 43, 44], [9, 21, 26, 28, 33], [12, 32, 34, 35, 41], [2, 25, 30, 39, 42] ]
50 all of 5 Dutch cycles work for 5 sessions only.
50 1st of 7 [ [5, 16, 18, 25, 29], [1, 7, 27, 42, 46], [4, 6, 15, 21, 41], [3, 11, 26, 30, 32], [9, 19, 24, 37, 38], [8, 13, 33, 43, 45], [35, 40, 47, 48, 49], [17, 23, 31, 34, 50], [2, 12, 14, 20, 36], [10, 22, 28, 39, 44] ]
50 2nd of 7 [ [8, 20, 40, 42, 44], [15, 16, 17, 22, 47], [1, 10, 23, 29, 38], [3, 6, 28, 36, 48], [2, 24, 27, 33, 39], [7, 11, 13, 21, 31], [4, 32, 35, 45, 46], [9, 14, 18, 34, 41], [25, 30, 37, 43, 50], [5, 12, 19, 26, 49] ]
50 3rd of 7 [ [19, 21, 29, 32, 47], [8, 24, 25, 28, 34], [3, 18, 31, 44, 46], [4, 14, 39, 43, 49], [2, 10, 15, 42, 45], [9, 11, 16, 20, 50], [5, 7, 23, 37, 40], [1, 13, 26, 41, 48], [22, 33, 35, 36, 38], [6, 12, 17, 27, 30] ]
50 4th of 7 [ [10, 14, 16, 21, 26], [23, 25, 36, 39, 42], [9, 13, 32, 44, 49], [3, 5, 8, 22, 27], [4, 11, 17, 38, 40], [12, 24, 43, 46, 48], [2, 7, 19, 41, 50], [1, 18, 28, 30, 33], [6, 34, 37, 45, 47], [15, 20, 29, 31, 35] ]
50 5th of 7 [ [13, 20, 22, 30, 34], [26, 27, 38, 45, 50], [1, 11, 36, 43, 44], [16, 32, 33, 37, 41], [4, 9, 12, 31, 47], [14, 28, 29, 40, 46], [5, 6, 24, 35, 42], [7, 15, 18, 39, 48], [2, 8, 21, 23, 49], [3, 10, 17, 19, 25] ]
50 6th of 7 [ [6, 26, 31, 39, 40], [11, 14, 22, 37, 42], [2, 5, 9, 17, 48], [4, 24, 29, 44, 50], [15, 19, 34, 36, 46], [3, 7, 20, 33, 49], [10, 18, 27, 32, 43], [13, 16, 23, 28, 35], [1, 12, 21, 25, 45], [8, 30, 38, 41, 47] ]
50 7th of 7 [ [11, 18, 23, 24, 47], [22, 31, 41, 45, 49], [3, 9, 21, 40, 43], [2, 6, 13, 38, 46], [14, 25, 27, 35, 44], [12, 15, 28, 32, 50], [4, 5, 10, 33, 34], [7, 8, 26, 29, 36], [1, 17, 20, 37, 39], [16, 19, 30, 42, 48] ]
55 all of 11 Dutch cycles. {44P-55P}
60 all of 6 G(25+35) or G(30+30).
65 all of 13 Dutch cycles. {52P-65P}
70 all of 7 G(35+35).
75 all of 6 G(35+40), G(30+45) {both 60P-75P}; G(25+25+25) {72P-75P}.
{5*prime} all of {prime} Dutch cycles. {{4*prime}P-{5*prime}P}; prime>=5. (25 is the special case, where it gets the sixth extra session by virtue of being 25 = 5^2.)

Trying to group a league with a variable amount of entries poses its own challenges. In order to start a league asymmetrically, it is possible to start seeding groups from 17 members and every 5 onward. However, this alone will guarantee that groups can be made but not that no rematches will occur. For an ideal solution like 35, in theory, 7 groups of 4 can use the same solution, however, with 3 groups pre-formed at 27 members, the minimum requirement would be to end up with 31 players [31, 35]. Likewise, for the 55 solution, overloading groups of 5 may render the ability to make 11 groups but with more groups of 4. If [48, 50] players are present, two separate blocks of 24/25 are usable for 6-session seasons.

Min Groups of 5 Groups of 4 Spare Max Comment
27 3 0 12 35 <=30 : 6 groups, >=31 : 7 groups.
32 4 0 12 40 <=35 : 7 groups, >=36 : 8 groups.
37 5 0 12 45 <=40 : 8 groups, >=41 : 9 groups.
42 5 0 17 50 <=45 : 9 groups, >=46 : 10 groups.
48 7 0 12 50 <=50 : 10 groups in 25s, >=51 : 11 groups in 55.
52 7 0 17 60 <=55 : 11 groups in 55, >=56 : 12 groups in 25 and 35.
57 8 0 17 60 <=60 : 12 groups in 25 and 35, >=61 : 14 groups in 35s (5*8 + 4*4 + 5*1).
62 10 0 12 60 <=65 : 13 groups, >=66 : 14 groups.
67 11 0 12 60 <=70 : 14 groups, >=71 : 15 groups.
72 12 0 12 60 <=75 : 15 groups, >=76 : 16 groups.


X-player season

Min. Players Max Players Mechanism Comment
10 10 5P randomize Repeats will forcibly occur.
11 12 Not possible With thirds promotion, 10 in top group, 18 in next, top group gets 13+.
13 15 Mix and randomize Repeats will forcibly occur.
16 16 4P perfect + Siberian or Random (6th) 5 sessions covered, 6th pairing could be done randomly at the start or drawn later (at a pre-announced time) relative to current ranking.
17 23 Mix and randomize Repeats will most likely occur.
24 25 5P perfect For 24 players, ignore 25th player in grid, those sessions are 4P
26 27 Mix and randomize {TBD.}
28 28 Use 4P
29 30 Use 5P For 29 players, ignore 30th player in grid, those sessions are 4P
31 35 Use 5P grid for 35
36 40 Use 5P grid for 40 Grid can ignore last 5 players.


WAML-relevant summary

If we can get player blocks of 25♥, 30♥, 35, 40♥, 45♥, 50♥, 55 or sums of their multiples (60♥ = 25♥ + 35; 65 = 25♥ + 40; 70 = 35 + 35; 75yes; 80yes; 85♥♥yes; 90yes; 95yes; 100♥yes; ...) or a number significantly close, with 80%-100% range (or 100% -1 per heart), then we can cover the whole span from 48+ if we stop forming asymmetrical groups after 4 are made. A fifth group can be drawn at 57 with no dificulty.

External links

  • Mathpuzzle.com has a few non-Dutch solutions for the "Social Golfer Problem".
  • Warwick Harvey (web.archive.org) had also published many solutions for groups with 10 or fewer groups and players of sizes in a simple to understand manner.