Constraints are a PRO feature – PRO Features and how to upgrade

Note: In order to apply new or changed constraints, you will need to regenerate/reallocate your schedule (click 'retry allocation' or 'erase games' and then 'generate schedule').


Team Constraints

Team constraints are negative constraints – i.e. you're telling the scheduler what not to do.

e.g. you can say do not schedule Honey Badgers on Saturday before 2pm; or do not schedule Neon Ninjaz at the Field 2 after 10pm.

Generally speaking you want to keep your constraints as simple as possible

e.g. if you're looking to keep a team from playing on Fridays, simply select the team and Friday and click save, leaving all other fields as their default values. 

You don't have to select all the fields and put in from 6pm to 10pm for instance. In fact, if you did that and then added another time slot at 5pm, the team might get scheduled there. 

The same applies to blocking a field for a team in general or blocking a time period, e.g. never schedule this team after 9pm.

You will see a more verbal description of your constraint once you've saved it:

Coach Constraints

If a constraint applies to multiple teams, you currently need to create a separate one for each team. If you select multiple teams, you will create a Coach Constraint, meaning those teams will not be scheduled at the same time (presumably because they share the same coach).

Note: In order to apply new or changed constraints, you will need to regenerate/reallocate your schedule.

  


Division Constraints

Division constraints are positive constraints – i.e. you're telling the scheduler for Division 1, only do this. 

Examples:

  • only use Field 1; or

  • only schedule before 8pm; or

  • only schedule on Fridays and Saturdays; or 

  • on Fridays, only schedule at Field 1, and only from 6-8pm.

Again, you want to only enter what's needed. For the first example (only use Field 1), you only want to select the division and Field 1 and click save

A common mistake with constraints is combining too many things in one constraint.
E.g. if you want to schedule a division ONLY FRIDAY and at a certain time/venue, you'll want to create one constraint that says ONLY FRIDAY, and a separate constraint for the time/venue. If you put FRIDAY, 6pm-8pm, Field 1, that tells the scheduler 'on the other days, do what you want'.

 

You can also apply a constraint only to a specific pool(s) within a division – just select the pool(s) instead of (or in addition to) the division.
 

Note: In order to apply new or changed constraints, you will need to regenerate/reallocate your schedule.


Wait Time – Min/max time between games

This lets you set a minimum rest period between each team's games (i.e. you can prevent back-to-back games with this); or a maximum wait time – to avoid having teams sitting around for hours on end (mostly useful for tournaments). 

Adjust the minimum by moving the left side of the slider, and the maximum by moving the right side of the slider.

You can also type into the fields below the slider to get more granular control.

A maximum of up to 18 hours applies only to games within the same day, i.e. a game 24 hours later would pass this constraint – it's meant to limit wait time between games within the same day. 

Setting a maximum greater than 18 hours will apply it to games across multiple days, e.g. 20 hours max would mean, if a team finished their last game today at 12pm, their next game would need to start by 8am tomorrow (within 20 hours).

If you put the maximum at 0 minutes (or something small), prepare for the schedule generation to end up with some unscheduled games – the constraint is enforced strictly, so if it isn't possible to create a schedule with strictly the maximum wait time you specify, you will get unscheduled games. Try being a little more generous (at least 1 or 2 time slots' worth) and regenerating your schedule.

The skip for playoffs checkbox turns the constraint off for knockout games to allow those to proceed without too much delay.


Note: in league schedules, constraints do not apply across weeks, i.e. setting a max of 7 days does not ensure that each team plays every week. In fact, the league scheduler treats weeks as entirely isolated and does not move games between weeks.

Give us a shout if you're running into trouble with this and we can see if switching to tournament mode would be the better route for your situation.


Max back-to-back games

Fairly self-explanatory. This determines how many back-to-back games a team is allowed to play before needing at least 1 game's worth of rest.

If you want to completely disallow back-to-back games, simply set a min time between games (see above).

The skip for playoffs checkbox turns the constraint off for knockout games to allow those to proceed without too much delay.
 


Note: In order to apply new or changed constraints, you will need to regenerate/reallocate your schedule.

 


Max Games Per Day

With the max games per day constraint, you can set a limit on how many games a team can play in a day.

You can set a general limit that applies to the entire schedule:

Under advanced options, you can also set a different number for any division, pool, or team as well set different limits for different days of the week:

 
Note: In order to apply new or changed constraints, you will need to regenerate/reallocate your schedule.

Constraints are a PRO feature – PRO Features and how to upgrade


General Notes About The Process

Constraints are how you tell the schedule maker what rules to take into account when generating your schedule.

Once you introduce constraints, you're making it harder to generate your schedule and you might see unscheduled games. You'll want to approach this as an iterative process.

Unscheduled games come in 2 variants that will be shown in red font in the venue slot of each game (above left-hand team):

  1. NO POSSIBLE TIME SLOTS – this indicates that your constraints blocked all time slots (for that week) so you want to either move that game to another week (if applicable, i.e. in league mode) or revise your constraints or schedule the game manually

  2. NOT YET SCHEDULED – this indicates that there were eligible time slots, but they are occupied by other games that it wasn't able to move elsewhere. This can sometimes be resolved by simply running the allocation again (click retry allocating games) or by regenerating the schedule (erase games > generate schedule) – the latter also regenerates pairings, so it changes the actual puzzle pieces, whereas the former just takes the same games / puzzle pieces and tries again to fit them together.

Note that the league (as opposed to tournament) scheduler is limited to moving games within the weeks they were generated for. If your league plays every Thursday and a team cannot play on a given date, for instance, their game that week will show as NO POSSIBLE TIME SLOTS and you will need to move it to a different week manually. In some of these cases the tournament scheduler might work better, as it is not limited to weeks. If you think this may be the case, please reach out and we can try that (without having to start from scratch).

Did this answer your question?