Round Robin Tournament Scheduling

Chess Berger tables

Chess Player · 6 · 14739

Chess Player

  • Newbie
  • *
    • Posts: 3
on: July 06, 2006, 03:31:09 PM
i would like to get a js script (cyclic 2 or 3) which would make classical chess pairing (Berger tables).
Here is link to see the pairing system: http://www.tournamentdirector.co.uk/bergerpairingtables.htm
I wrote also some pairing here to show tables:

3 & 4 Players
Round    
1 1:4 2:3
2 4:3 1:2
3 2:4 3:1

 

5 & 6 Players
Round      
1 1:6 2:5 3:4
2 6:4 5:3 1:2
3 2:6 3:1 4:5
4 6:5 1:4 2:3
5 3:6 4:2 5:1

 

7 & 8 Players
Round        
1 1:8 2:7 3:6 4:5
2 8:5 6:4 7:3 1:2
3 2:8 3:1 4:7 5:6
4 8:6 7:5 1:4 2:3
5 3:8 4:2 5:1 6:7
6 8:7 1:6 2:5 3:4
7 4:8 5:3 6:2 7:1

9 & 10 Players
Round          
1 1:10 2:9 3:8 4:7 5:6
2 10:6 7:5 8:4 9:3 1:2
3 2:10 3:1 4:9 5:8 6:7
4 10:7 8:6 9:5 1:4 2:3
5 3:10 4:2 5:1 6:9 7:8
6 10:8 9:7 1:6 2:5 3:4
7 4:10 5:3 6:2 7:1 8:9
8 10:9 1:8 2:7 3:6 4:5
9 5:10 6:4 7:3 8:2 9:1

 

11 & 12 Players
Round            
1 1:12 2:11 3:10 4:9 5:8 6:7
2 12:7 8:6 9:5 10:4 11:3 1:2
3 2:12 3:1 4:11 5:10 6:9 7:8
4 12:8 9:7 10:6 11:5 1:4 2:3
5 3:12 4:2 5:1 6:11 7:10 8:9
6 12:9 10:8 11:7 1:6 2:5 3:4
7 4:12 5:3 6:2 7:1 8:11 9:10
8 12:10 11:9 1:8 2:7 3:6 4:5
9 5:12 6:4 7:3 8:2 9:1 10:11
10 12:11 1:10 2:9 3:8 4:7 5:6
11 6:12 7:5 8:4 9:3 10:2 11:1

13 & 14 Players
Round              
1 1:14 2:13 3:12 4:11 5:10 6:9 7:8
2 14:8 9:7 10:6 11:5 12:4 13:3 1:2
3 2:14 3:1 4:13 5:12 6:11 7:10 8:9
4 14:9 10:8 11:7 12:6 13:5 1:4 2:3
5 3:14 4:2 5:1 6:13 7:12 8:11 9:10
6 14:10 11:9 12:8 13:7 1:6 2:5 3:4
7 4:14 5:3 6:2 7:1 8:13 9:12 10:11
8 14:11 12:10 13:9 1:8 2:7 3:6 4:5
9 5:14 6:4 7:3 8:2 9:1 10:13 11:12
10 14:12 13:11 1:10 2:9 3:8 4:7 5:6
11 6:14 7:5 8:4 9:3 10:2 11:1 12:13
12 14:13 1:12 2:11 3:10 4:9 5:8 6:7
13 7:14 8:6 9:5 10:4 11:3 12:2 13:1


Many thanks for your help. This will not help just me  :D

Berger tables are standard round robin chess system!!

Best regards to all on this excellent site!
Danilo


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1141
Reply #1 on: July 07, 2006, 02:23:01 AM
Danilo,

I don't use JScript, so there is no canned solution that I can offer.  As I am not familiar with these Berger tables, is there any special property that would make them different from an ordinary all-plays-all round robin schedule?  If not you could take the VBA code in my Excel file which you can find here and translate it into JScript.  You could cut out the code for home/away format as you don't need that, also I think you could remove the code for court balance as the tables above don't have this property.  Or may be the court balance, which would be board balance in you case, would be useful.

Ian.


Chess Player

  • Newbie
  • *
    • Posts: 3
Reply #2 on: July 07, 2006, 04:19:29 AM
Well, if I could get script in vb for asp page, I would be very happy :D
I just wrote JS, because of cyclic script!

About pairing: yes, I need just pairing just as you can see in examples!!
This is different from cyclic script - and I thought this is your job, as I would not write here,
if I would know how to make all ;)

I think this is challenge also for homepage author - as chess I very much played !
Football, card games - and then chess!!

So with solution you will make probably much people very happy! ;D


Chess Player

  • Newbie
  • *
    • Posts: 3
Reply #3 on: July 07, 2006, 04:23:47 AM
Quote
Danilo,

I don't use JScript, so there is no canned solution that I can offer.  As I am not familiar with these Berger tables, is there any special property that would make them different from an ordinary all-plays-all round robin schedule?  If not you could take the VBA code in my Excel file which you can find here and translate it into JScript.  You could cut out the code for home/away format as you don't need that, also I think you could remove the code for court balance as the tables above don't have this property.  Or may be the court balance, which would be board balance in you case, would be useful.

Ian.

Please, just verify link or see examples - you will easy determine that pairing is much different from cyclic script - NAD IT MUST BE DONE THIS WAY.

As I said before-if I would know how to make script (EXCEL, VB or JS) I would not write here in requests.
This is standard pairing chess system - used all over the world! ;)


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1141
Reply #4 on: July 07, 2006, 10:56:20 AM
Looking more closely at the examples you posted they can easily be transformed to be cyclic.

For example take the 9/10 players version and order the rows so that the odd rounds come first, followed by the even rounds.  I have also switched what I presume to be black and white for the even rounds.  This gives me

1 1:10 2:9 3:8 4:7 5:6  
3 2:10 3:1 4:9 5:8 6:7  
5 3:10 4:2 5:1 6:9 7:8  
7 4:10 5:3 6:2 7:1 8:9  
9 5:10 6:4 7:3 8:2 9:1  
2 6:10 7:5 8:4 9:3 1:2  
4 7:10 8:6 9:5 1:4 2:3  
6 8:10 9:7 1:6 2:5 3:4  
8 9:10 1:8 2:7 3:6 4:5  

which is the familar cyclic construction.

Ian.

-------------

Note added 9th July 2006:

This web page explains the process of how the Berger tables are formed by interleaving the rows of the cyclic round-robin. The reverse of the process that I described above.

It seems the aim of the Berger table is to alternate between playing home/away or playing black/white as much as possible.  For schedules with an even number of teams or players, like those above, it's only possible to achieve perfect alternation for two of the teams/players, other players will at some point either play twice in succession with either the white or black pieces.  So this type of chess tournament can be generated by my Excel spreadsheet using the home/away option and will work for both an even or odd number of teams.
« Last Edit: July 09, 2006, 03:31:49 AM by Ian »


wbport

  • Senior Member
  • ****
    • Posts: 129
Reply #5 on: September 17, 2008, 07:41:53 AM
I realize this thread has been inactive for quite a while, but it was one of the first things I found when checking keywords used to find my site.

At any rate, my javascript page to generate round robins is here.