The bus driver scheduling problem consists of assigning bus work to drivers so that all the bus work is covered and a combination of the number of drivers and associated costs is minimised.
Restrictions imposed by logistic, legal and union agreements complicate the problem.
Successful present day systems for computerised driver scheduling often use mathematical programming combined with heuristics. Purely heuristic approaches have found it very difficult to produce efficient driver schedules for large scheduling problems. Furthermore, some of these approaches may not be easily adaptable to different conditions. This thesis presents two new ways of using constraint satisfaction to form driver schedules. The constraint programming approach uses a similar approach to mathematical programming systems in selecting the schedule from a large number of possible shifts, to allow adaptation to different regulations.