Tuesday, August 11, 2009

Balanced Round Robin Schedule Generator with Location Conflict Manager

Balanced Round Robin Schedule Generator
with Location Conflict Manager
A round-robin tournament is a type of group tournament in which each participant plays every other participant. This is sometimes called a single round robin schedule. If each participant meets twice it is called a double round robin.
A balanced schedule means that the number of home and away games for a team will be as balanced as possible and the number of runs of consecutive home or away games will be as low as possible. No one participant will have an unfair advantage due to repeated placement at a specific game location.
Each location has its own calendar, and when a time slot is booked for that location it should used when generating schedules. A balanced round robin schedule should take into account the location component, and ensure that the location is not booked at that time. If it is booked, the schedule generator should be aware of this and try to re-book the game in the next available time slot, or move it to another location.

PlayerStreak seamlessly combines the single round robin strategy with team balancing and a location-aware conflict system to generate schedules.

Wizard Walkthrough
Schedule generation is not an easy task and usually requires multiple attempts to obtain a satisfactory schedule. The PlayerStreak approach uses a set of wizard screens to guide the user through the process, which serves to simplify the overall workflow.
Step 1 : Pick Your Teams
In the first step, you will need to select the teams that will be part of the schedule. You can choose to select all teams in a given season and division, or you can select the teams manually. You must have at least 4 teams to continue to the next screen.
Step 2 : Select Your Date and Time Slots
The next step is to select which days of the week your games will be played on. Also, you must select the start and end dates for your schedule. Don’t worry about matching up the days of the week with your start date, as this is calculated automatically. Remember, you can always re-generate your schedule before importing it. The next step is to select your start and end times for your locations. These are the available times slots that the games will be scheduled within. The last item to define is the game length. The generator is also smart enough to calculate if your game lengths exceed the available start and end times for your locations.
Step 3 : Select Your Locations
The next step is to select which locations your games will be played at.
Manually Select Locations
This option will ensure that all games for a given round of the schedule will all be played at the same location, barring any conflicts. Each round will select a new location. The order in which you select the locations will determine the order in which they are cycled through.
Use Each Team’s Home Location
This format is used when each team has their own home location. Each game in a given round will be played at the team’s home location. To select a team’s home location, click on the Location Name column next to the team name and a drop down box should appear with a complete list of locations. It is okay if more than one team shares a home location. The schedule generator will take this into account when determining conflicts at a given location and bump the timeslot accordingly.
Step 4 : Generate Your Schedule
In the last step, you are now ready to create your schedule. When the number of teams is odd, there will be one team who has a bye in each round. This game is not shown as it does not need to be scheduled. Each time the Create Schedule button is pressed a new schedule will be generated. To randomize the teams, click the Randomize Schedule checkbox first. This feature is useful if you create more than one schedule for the same group of teams or if the teams share locations, since the teams will come in a different order each time. A status message will also appear above the grid which will show you how many games could be scheduled with a corresponding percentage as well.
Pay special attention to the comment column. When a game has been successfully scheduled, you will see a green comment with the corresponding round number.
For example, a round 1 message will display as : ok. round 1
There are also other messages displayed in red.
  1. Existing Calendar Entry
    1. On a given day at a given location, there may be an existing appointment or game booked, and you will see this message, whether or not your entry conflicts. If your entry does conflict, the scheduled game will be automatically re-booked.
  1. No more times slots available for location
    1. This message means that you should try increasing your available start and end date times for locations. For example, if you have 4 games per round being played and each game is 1 hour long and your location is only available from 8:00 am to 11:00 am, you will see this message for the fourth game, which should really be scheduled for 11:00 am to 12:00 pm. You can go back and do this in Step 2 of the wizard.
  1. No available locations. Try increasing your end game date.
    1. This message means that the generator ran out of available dates, probably because your end game date is too short.
You can also now tweak your schedules after you have imported them. Check this link out to see how!