multi scheduler
_____

Multi scheduler

What does it do?

This program, running in a web browser, generates a schedule for playing a game, tennis, for example.

Example

6 people want to play tennis weekly. On any play day, 4 players are needed, so there is a need for a schedule to determine who plays when. And, to avoid embarrassing non-discussions, it is also nice if the schedule determines who pays for the coffee.

Features of the program

Input

  • The language (English, Dutch, ...)
  • Start and end dates of the schedule and the weekdays you want to play.
  • The dates that a player is not available (vacation, for example).
  • The dates are not playable at all (Xmas, for example).
  • Should the program generate teams or not.
  • Which players should not go in the same team (e.g: some couples do not want to play in the same team).
  • Emails, telephone numbers, ratings and gender of the players.
  • A list of reserve players: not in the schedule itself but available if there not enough players on a particular date.
  • Extra information: Location, time, etc.
  • Override the decisions made by the program (e.g: you really want somebody to play at some date).

Output

  • The output is a scheme in the form of a PDF file, which you can sent to your mates.
  • In this scheme teams are defined for every playing day.
  • A suggestion is made who pays for the drinks.

The program tries to achieve the following goals

  • Every player plays the same number of games.
  • Teams are different on each playing day.
  • The number of not-playing days in a row is minimized for each player.
  • Competing teams are equal in strength.
  • Teams are composed of a male and a female.

Saving of input data

  • The data used to compute the schedule can be saved and retrieved later on.
  • The data is saved on the computer where the web browser is running, typically in the folder Downloads.
  • No information is stored on the server.
  • Cookies are not used.

Printable version of the computed scheme

  • In general, the program is to be used by one person who generates a schedule, prints the schedule on paper or to a PDF file and shares this with her playing mates.

Languages

  • The program speaks Dutch, English, French, German, Spanish and Ukrainian (thanks to google translate).
  • If there is interest for other languages, let me know and I'll see what is possible.

Limitations

  • The program handles schemes with up to about 50 dates well.
  • Above 50 dates, the program has difficulties to find an optimal solution.
  • If you have 50 or more dates, it is best to split the scheme into 2 or more shorter ones.
  • Computing time is limited to 20 seconds. This limit can be hit when dealing with more than 50 dates, depending of the speed of your computer.

See also

  • Another tennis related program which generates a schedule for a tennis tournament is available here.