Using dark magic to approximate perfect schedules.

Pick a Situation

A "Situation" is usually a season - a full set of games to be played by one or more leagues of teams on one or more fields, over a series of rounds and time slots.

A "Schedule" is a combination of games to be played in that situation. You create a Schedule by picking a Situation, selecting one or more constraints (and weighting them), and then invoking the robin.