Tournament blocks
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
Block repository
Tournament blocks
Simplest solution: Dutch cycles
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 1, 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 6.
Players | 4H | 6H | 8H | 10H | 12H | Comment |
---|---|---|---|---|---|---|
16 (4*4) | 3 / Other | Other (5) | no | no | no | Different block solution for 5 hanchan. |
20 (5*4) | Yes | Other (5) | no | no | no | |
24 (6*4) | 3 / Other | Other | Other (7) | no | no | |
28 (7*4) | Yes | Yes | 7 | Other (9) | no | |
40 (10*4) | Yes | 5 / unkn. | unkn. | unkn. | no | |
44 (11*4) | Yes | Yes | Yes | Yes | 11 | |
52 (13*4) | Yes | Yes | Yes | 13 | ||
68 (17*4) | Yes | Yes | Yes | Yes | 17 |
Notes:
Mathpuzzle.com has a few non-Dutch solutions for the "Social Golfer Problem".
1. For 16P in 5H: ABCD EFGH IJKL MNOP, AEIM BFJN CGKO DHLP, AFKP BELO CHIN DGJM, AGLN BHKM CEJP DFIO, AHJO BGIP CFLM DEKN.
2. For 20P in 5H: ABCD EFGH IJKL MNOP QRST, AEIM BFJQ CGNR DKOS HLPT, AFOT BELR CIPS DGJM HKNQ, AJPR BHMS CEKT DFIN GLOQ, ALNS BGIT CHJO DEPQ FKMR.
3. For 24P in 7H: ABKU IJSE QRCM DGFX HLNO PTVW, ACLV IKTF QSDN EHGR BMOP JUWX, ADMW ILUG QTEO FBHS CJNP KRVX, AENX IMVH QUFP GCBT DJKO LRSW, AFOR INWB QVGJ HDCU EKLP MSTX, AEPS IOXC QWHK BEDV FJLM NRTU, AHJT IPRD QXBL CFEW GKMN OSUV.
4. For 28P in 9H: ABCD EFGH IJKL MNab cdef ghij klmn, AEgk BFMc Ndhl GIem HJai CKbn DLfj, AFjn BEae bfim HKcl GLMh CINk DJdg, AIci BJNn EKMj FLdm begl CGaf DHhk, AGbd BHgm ELNi achn FKfk CJej DIMl, AKeh BLbk FIag EJfl Ncjm CHMd DGin, AHNf BGjl FJbh Meik EIdn CLcg DKam, ALal BKdi GJck Mfgn HIbj CEhm DFNe, AJMm BIfh CFil DEbc GKNg HLen adjk.
5. For 32P in 10H: ABCD EFGH IJKL MNPO abcd efgh ijkl mnop, AEIm BgcH DFKp kPdf Maei ChbG jNoL lJnO, Alof Bhkm DNGi FaLO MbHK CPeJ Ejcp gIdn, AciL BjdK DkbJ FgoP fGOp CIla EhMn NeHm, AgNK BElP DIoH hdiO beLp Cjfm FMcJ kaGn, AhJp BFin DcmO INbf leGK CMod EgkL jPaH, AFde BoGJ DEaf hlNc PiKm CHLn gjbO IkMp, APbn BNap DglM koce fHiJ CEKO FhIj dGLm, AjMG BIeO DhPL gaJm cfKn CFkN Eobi ldHp, AkHO BMfL Djen Flbm IPcG Cgip ENdJ hoaK. This solution also has the property that there is a pairwise exclusion: Two pots could be used to guarantee that any two players will play with everone else but not with each other.
League play blocks
Considering that league blocks contain 5 players, the counting mechanism has to be recalculated for Dutch cycles. These numbers are for 6-session events or seasons. These Dutch cycle blocks can drop the last fifth in order to make groups of 4, expanding the solved ranges of players from 80% to 100% of the maximal solutions. For 40, using the social golfer solution below will work for 32 to 40 players. Given the distribution of primes, there is a solution within that 20% range except for 66 and 67 players.
Players | P1 | P2 | P3 | P4 | P5 | Comment |
---|---|---|---|---|---|---|
30 | 0 | 0 | 0 | 0 | 0 | 2 sessions. |
30 | 0 | 1 | 2 | 3 | 4 | |
35 | 0 | 0 | 0 | 0 | 0 | 7 sessions (28P-35P) |
35 | 0 | 1 | 2 | 3 | 4 | |
35 | 0 | 2 | 4 | 6 | 1 | |
35 | 0 | 3 | 6 | 2 | 5 | |
35 | 0 | 4 | 1 | 5 | 2 | |
35 | 0 | 5 | 3 | 1 | 6 | |
35 | 0 | 6 | 5 | 4 | 3 | |
45 | 0 | 0 | 0 | 0 | 0 | 3 sessions |
45 | 0 | 1 | 2 | 3 | 4 | |
45 | 0 | 2 | 4 | 6 | 8 | |
50 | 0 | 0 | 0 | 0 | 0 | 5/6 sessions (40P-50P) |
50 | 0 | 1 | 2 | 3 | 4 | |
50 | 0 | 2 | 4 | 6 | 8 | |
50 | 0 | 3 | 6 | 9 | 2 | |
50 | 0 | 4 | 8 | 2 | 6 | |
50 | 0 | 5 | 3 | 1 | 9 | (non-Dutch) |
55 | 0 | 0 | 0 | 0 | 0 | 11 sessions (44P-55P) |
55 | 0 | 1 | 2 | 3 | 4 | |
55 | 0 | 2 | 4 | 6 | 8 | |
55 | 0 | 3 | 6 | 9 | 1 | |
55 | 0 | 4 | 8 | 1 | 5 | |
55 | 0 | 5 | 10 | 4 | 9 | |
55 | 0 | 6 | 1 | 7 | 2 | |
55 | 0 | 7 | 3 | 10 | 6 | |
55 | 0 | 8 | 5 | 2 | 10 | |
55 | 0 | 9 | 7 | 5 | 3 | |
55 | 0 | 10 | 9 | 8 | 7 |
15-player season
Session and Table | Player 1 | Player 2 | Player 3 | Player 4 | Player 5 | Deadline |
---|---|---|---|---|---|---|
Session 1 - Table 1 (+1) | P1 | P2 | P3 | P4 | P5 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 2 | P6 | P7 | P8 | P9 | P10 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 3 | P11 | P12 | P13 | P14 | P15 | Saturday 2015-04-04 23:59 UTC |
Session 2 - Table 1 (+3) | P1 | P4 | P7 | P10 | P13 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 2 | P2 | P5 | P8 | P11 | P14 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 3 | P3 | P6 | P9 | P12 | P15 | Saturday 2015-04-18 23:59 UTC |
Session 3 - Table 1 (+8) | P1 | P9 | P2 | P10 | P3 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 2 | P11 | P4 | P12 | P5 | P13 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 3 | P6 | P14 | P7 | P15 | P8 | Saturday 2015-05-02 23:59 UTC |
Session 4 - Table 1 (+11) | P1 | P12 | P8 | P4 | P15 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 2 | P11 | P7 | P3 | P14 | P10 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 3 | P6 | P2 | P13 | P9 | P5 | Saturday 2015-05-16 23:59 UTC |
Session 5 - Table 1 (+5) | P1 | P6 | P11 | P5 | P10 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 2 | P15 | P4 | P9 | P14 | P3 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 3 | P8 | P13 | P2 | P7 | P12 | Saturday 2015-05-30 23:59 UTC |
Session 6 - Table 1 (+7) | P1 | P8 | P15 | P7 | P14 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 2 | P6 | P13 | P5 | P12 | P4 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 3 | P11 | P3 | P10 | P2 | P9 | Saturday 2015-06-13 23:59 UTC |
25-player season
An ideal number of participants would be 25. 24 is easy, 21 to 23 require a minor adjustment.
Session and Table | Player 1 | Player 2 | Player 3 | Player 4 | Player 5 | Deadline |
---|---|---|---|---|---|---|
Session 1 - Table 1 (+1) | P1 | P2 | P3 | P4 | P5 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 2 | P6 | P7 | P8 | P9 | P10 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 3 | P11 | P12 | P13 | P14 | P15 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 4 | P16 | P17 | P18 | P19 | P20 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 5 | P21 | P22 | P23 | P24 | P25 | Saturday 2015-04-04 23:59 UTC |
Session 2 - Table 1 (-4) | P1 | P22 | P18 | P14 | P10 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 2 | P6 | P2 | P23 | P19 | P15 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 3 | P11 | P7 | P3 | P24 | P20 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 4 | P16 | P12 | P8 | P4 | P25 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 5 | P21 | P17 | P13 | P9 | P5 | Saturday 2015-04-18 23:59 UTC |
Session 3 - Table 1 (+7) | P1 | P17 | P8 | P24 | P15 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 2 | P6 | P22 | P13 | P4 | P20 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 3 | P11 | P2 | P18 | P9 | P25 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 4 | P16 | P7 | P23 | P14 | P5 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 5 | P21 | P12 | P3 | P19 | P10 | Saturday 2015-05-02 23:59 UTC |
Session 4 - Table 1 (+11) | P1 | P12 | P23 | P9 | P20 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 2 | P6 | P17 | P3 | P14 | P25 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 3 | P11 | P22 | P8 | P19 | P5 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 4 | P16 | P2 | P13 | P24 | P10 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 5 | P21 | P7 | P18 | P4 | P15 | Saturday 2015-05-16 23:59 UTC |
Session 5 - Table 1 (+6) | P1 | P7 | P13 | P19 | P25 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 2 | P6 | P12 | P18 | P24 | P5 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 3 | P11 | P17 | P23 | P4 | P10 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 4 | P16 | P22 | P3 | P9 | P15 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 5 | P21 | P2 | P8 | P14 | P20 | Saturday 2015-05-30 23:59 UTC |
Session 6 - Table 1 (+5) | P1 | P6 | P11 | P16 | P21 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 2 | P2 | P7 | P12 | P17 | P22 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 3 | P3 | P8 | P13 | P18 | P23 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 4 | P4 | P9 | P14 | P19 | P24 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 5 | P5 | P10 | P15 | P20 | P25 | Saturday 2015-06-13 23:59 UTC |
35-player season
Solved via Dutch cycles up to 7 sessions.
40-player season
With 40, it has been a problem optimally solved with the "social golfer problem", up to 8 sessions.
Session and Table | Player 1 | Player 2 | Player 3 | Player 4 | Player 5 | Deadline |
---|---|---|---|---|---|---|
Session 1 - Table 1 (+8) | P1 | P9 | P17 | P25 | P33 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 2 | P2 | P10 | P18 | P26 | P34 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 3 | P3 | P11 | P19 | P27 | P35 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 4 | P4 | P12 | P20 | P28 | P36 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 5 | P5 | P13 | P21 | P29 | P37 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 6 | P6 | P14 | P22 | P30 | P38 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 7 | P7 | P15 | P23 | P31 | P39 | Saturday 2015-04-04 23:59 UTC |
Session 1 - Table 8 | P8 | P16 | P24 | P32 | P40 | Saturday 2015-04-04 23:59 UTC |
Session 2 - Table 1 | P1 | P10 | P19 | P28 | P37 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 2 | P2 | P9 | P20 | P27 | P38 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 3 | P3 | P12 | P17 | P26 | P39 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 4 | P4 | P11 | P18 | P25 | P40 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 5 | P5 | P14 | P23 | P32 | P33 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 6 | P6 | P13 | P24 | P31 | P34 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 7 | P7 | P16 | P21 | P30 | P35 | Saturday 2015-04-18 23:59 UTC |
Session 2 - Table 8 | P8 | P15 | P22 | P29 | P36 | Saturday 2015-04-18 23:59 UTC |
Session 3 - Table 1 | P1 | P11 | P21 | P31 | P36 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 2 | P2 | P12 | P22 | P32 | P35 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 3 | P3 | P9 | P23 | P29 | P34 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 4 | P4 | P10 | P24 | P30 | P33 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 5 | P5 | P15 | P17 | P27 | P40 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 6 | P6 | P16 | P18 | P28 | P39 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 7 | P7 | P13 | P19 | P25 | P38 | Saturday 2015-05-02 23:59 UTC |
Session 3 - Table 8 | P8 | P14 | P20 | P26 | P37 | Saturday 2015-05-02 23:59 UTC |
Session 4 - Table 1 | P1 | P12 | P23 | P30 | P40 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 2 | P2 | P11 | P24 | P29 | P39 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 3 | P3 | P10 | P21 | P32 | P38 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 4 | P4 | P9 | P22 | P31 | P37 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 5 | P5 | P16 | P19 | P26 | P36 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 6 | P6 | P15 | P20 | P25 | P35 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 7 | P7 | P14 | P17 | P28 | P34 | Saturday 2015-05-16 23:59 UTC |
Session 4 - Table 8 | P8 | P13 | P18 | P27 | P33 | Saturday 2015-05-16 23:59 UTC |
Session 5 - Table 1 | P1 | P13 | P20 | P32 | P39 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 2 | P2 | P14 | P19 | P31 | P40 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 3 | P3 | P15 | P18 | P30 | P37 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 4 | P4 | P16 | P17 | P29 | P38 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 5 | P5 | P9 | P24 | P28 | P35 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 6 | P6 | P10 | P23 | P27 | P36 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 7 | P7 | P11 | P22 | P26 | P33 | Saturday 2015-05-30 23:59 UTC |
Session 5 - Table 8 | P8 | P12 | P21 | P25 | P34 | Saturday 2015-05-30 23:59 UTC |
Session 6 - Table 1 | P1 | P14 | P18 | P29 | P35 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 2 | P2 | P13 | P17 | P30 | P36 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 3 | P3 | P16 | P20 | P31 | P33 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 4 | P4 | P15 | P19 | P32 | P34 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 5 | P5 | P10 | P22 | P25 | P39 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 6 | P6 | P9 | P21 | P26 | P40 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 7 | P7 | P12 | P24 | P27 | P37 | Saturday 2015-06-13 23:59 UTC |
Session 6 - Table 8 | P8 | P11 | P23 | P28 | P38 | Saturday 2015-06-13 23:59 UTC |
Session 7 - Table 1 | P1 | P15 | P24 | P26 | P38 | (not played) |
Session 7 - Table 2 | P2 | P16 | P23 | P25 | P37 | (not played) |
Session 7 - Table 3 | P3 | P13 | P22 | P28 | P40 | (not played) |
Session 7 - Table 4 | P4 | P14 | P21 | P27 | P39 | (not played) |
Session 7 - Table 5 | P5 | P11 | P20 | P30 | P34 | (not played) |
Session 7 - Table 6 | P6 | P12 | P19 | P29 | P33 | (not played) |
Session 7 - Table 7 | P7 | P9 | P18 | P32 | P36 | (not played) |
Session 7 - Table 8 | P8 | P10 | P17 | P31 | P35 | (not played) |
Session 8 - Table 1 | P1 | P16 | P22 | P27 | P34 | (not played) |
Session 8 - Table 2 | P2 | P15 | P21 | P28 | P33 | (not played) |
Session 8 - Table 3 | P3 | P14 | P24 | P25 | P36 | (not played) |
Session 8 - Table 4 | P4 | P13 | P23 | P26 | P35 | (not played) |
Session 8 - Table 5 | P5 | P12 | P18 | P31 | P38 | (not played) |
Session 8 - Table 6 | P6 | P11 | P17 | P32 | P37 | (not played) |
Session 8 - Table 7 | P7 | P10 | P20 | P29 | P40 | (not played) |
Session 8 - Table 8 | P8 | P9 | P19 | P30 | P39 | (not played) |