Schedule creation utility
Moderator: TFF Mods
- christer
- Star Player
- Posts: 565
- Joined: Sat Jun 08, 2002 8:54 am
- Location: Stockholm, Sweden
- Contact:
Schedule creation utility
Heh.. I can't find the thread I promised to make this available..
Anyway, Here's a link to my small schedule creation utility. It's nowhere near finished or anything.. Mostly just a small hack...
http://trollcave.no-ip.org/Schedule.zip
This is Java, so you need a java runtime environment (JRE or JDK)..
Also, I included the sourcecode if anyone's interested in how I did it.
Some notes about the program:
* All references to graphs, colours, edges and vertices come from the fact that the scheduling problem is equivalent to a well-known class of problems which can be derived from "graph colouring". For you who don't care about math: Graph = Schedule, Colour = Round, Edge = Match and Vertex = Team
* This program uses an iterative algorithm (iterated greedy graph colouring), which means that it can take quite a while to generate some schedules. On my system (athlon 500MHz), it normally takes less than 10 seconds to generate a 16-team schedule. 17 teams should be possible within a reasonable amount of time. 18 or more will probably take quite a bit of time. One thing to remember though. There is a random element to the algorithm so if you're lucky, you could generate a 30 team schedule instantly (No, don't try.. It's very unlikely)
* You run the program by typing "java Schedule 12", where the 12 is the number of teams you have. You exit the program by pressing ctrl-c in the console window. I haven't bothered to add the three-line quit code into the program. Remember, this is a hack..
* When you run it, you'll get a window with lots and lots of checkboxes. Basically, this is a table of which matches you want to schedule, with the teams being on both the x and the y axis. You check the boxes you want to prevent from being scheduled. When you're done selecting you press the "Create" button.
* The output will be displayed in the console window, looking something like this:
Colour 1:
1 - 2
3 - 4
Colour 2:
1 - 3
2 - 4
Colour 3:
1 - 4
2 - 3
Again, replace colour with round, and you'll have a table of matches to be played for every round.
* There is no way to "stop" searching and display the current "best" solution. The program will continue to run until it finds an optimal (or what the program considers optimal. Read the source if you're interested) solution.
Questions, comments, ideas.. feel free to vent. I can't guarantee I'll modify the program though.. But if enough people think it would be useful, I might consider polishing it a bit...
-- Christer
Anyway, Here's a link to my small schedule creation utility. It's nowhere near finished or anything.. Mostly just a small hack...
http://trollcave.no-ip.org/Schedule.zip
This is Java, so you need a java runtime environment (JRE or JDK)..
Also, I included the sourcecode if anyone's interested in how I did it.
Some notes about the program:
* All references to graphs, colours, edges and vertices come from the fact that the scheduling problem is equivalent to a well-known class of problems which can be derived from "graph colouring". For you who don't care about math: Graph = Schedule, Colour = Round, Edge = Match and Vertex = Team
* This program uses an iterative algorithm (iterated greedy graph colouring), which means that it can take quite a while to generate some schedules. On my system (athlon 500MHz), it normally takes less than 10 seconds to generate a 16-team schedule. 17 teams should be possible within a reasonable amount of time. 18 or more will probably take quite a bit of time. One thing to remember though. There is a random element to the algorithm so if you're lucky, you could generate a 30 team schedule instantly (No, don't try.. It's very unlikely)
* You run the program by typing "java Schedule 12", where the 12 is the number of teams you have. You exit the program by pressing ctrl-c in the console window. I haven't bothered to add the three-line quit code into the program. Remember, this is a hack..
* When you run it, you'll get a window with lots and lots of checkboxes. Basically, this is a table of which matches you want to schedule, with the teams being on both the x and the y axis. You check the boxes you want to prevent from being scheduled. When you're done selecting you press the "Create" button.
* The output will be displayed in the console window, looking something like this:
Colour 1:
1 - 2
3 - 4
Colour 2:
1 - 3
2 - 4
Colour 3:
1 - 4
2 - 3
Again, replace colour with round, and you'll have a table of matches to be played for every round.
* There is no way to "stop" searching and display the current "best" solution. The program will continue to run until it finds an optimal (or what the program considers optimal. Read the source if you're interested) solution.
Questions, comments, ideas.. feel free to vent. I can't guarantee I'll modify the program though.. But if enough people think it would be useful, I might consider polishing it a bit...
-- Christer
Reason: ''
- neoliminal
- Ex-Mega Star, now just a Super Star
- Posts: 1472
- Joined: Thu Jan 01, 1970 12:00 am
- Location: Utrecht
- Contact:
- christer
- Star Player
- Posts: 565
- Joined: Sat Jun 08, 2002 8:54 am
- Location: Stockholm, Sweden
- Contact:
-
- Legendz Bedo Legend
- Posts: 1822
- Joined: Wed Jun 27, 2001 12:00 am
- Location: T5
- Contact:
-
- The Voice of Reason
- Posts: 6449
- Joined: Tue Jun 26, 2001 12:00 am
- Contact:
-
- Legendz Bedo Legend
- Posts: 1822
- Joined: Wed Jun 27, 2001 12:00 am
- Location: T5
- Contact:
- christer
- Star Player
- Posts: 565
- Joined: Sat Jun 08, 2002 8:54 am
- Location: Stockholm, Sweden
- Contact:
- Anthony_TBBF
- Da Painta
- Posts: 1822
- Joined: Mon Jun 25, 2001 12:00 am
- Location: Toronto, Canada
If you can get it to do Swiss format scheduling that would rock. Doing it by hand at the Orion tournament was a pain in the a**. In fact, a good tournament manager would be amazing. *hint*
Reason: ''
The TBBf is back! http://tbbf.obblm.com/
- christer
- Star Player
- Posts: 565
- Joined: Sat Jun 08, 2002 8:54 am
- Location: Stockholm, Sweden
- Contact:
- christer
- Star Player
- Posts: 565
- Joined: Sat Jun 08, 2002 8:54 am
- Location: Stockholm, Sweden
- Contact:
Created a new thread for league manager issues.
http://www.talkbloodbowl.com/phpBB2/vie ... hp?p=13569
-- Christer
http://www.talkbloodbowl.com/phpBB2/vie ... hp?p=13569
-- Christer
Reason: ''
- Anthony_TBBF
- Da Painta
- Posts: 1822
- Joined: Mon Jun 25, 2001 12:00 am
- Location: Toronto, Canada
Hmm for tournament management, my wish list would be:
- automatic pairings based on format (Swiss, round robin etc.)
- calculation of rankings from round to round
- summary of different stats (most TDs etc)
That's off the top of my head.
- automatic pairings based on format (Swiss, round robin etc.)
- calculation of rankings from round to round
- summary of different stats (most TDs etc)
That's off the top of my head.
Reason: ''
The TBBf is back! http://tbbf.obblm.com/