Abdul Samad Shibghatullah
24
30052008
one at a time, for early buses, and then for late buses. Any pieces of works that cannot fit into the initial schedules are formed into partial duties, which are then combined into
full duties by a variant of the Hungarian Algorithm Taha, 1997. Little improvement can be achieved to the schedule once it is constructed, and sometimes it may even leave
unassigned pieces of work Wren and Rousseau, 1995. COMPACS COMPuter Assisted Crew Scheduling is an interactive system developed
in the early 1980s Wren et al., 1985, and later incorporated into the BUSMAN scheduling package Chamberlain and Wren, 1992. According to Wren et al. 1985
COMPACS is designed to operate in two different ways. One way is to produce an entire duty schedule automatically using heuristics similar to those used in TRACS. The
schedule is then created quickly with no interaction from the user. The second produces a duty schedule in an interactive fashion. Users can create their own duties to add to the
schedule or ask COMPACS to form duties, which can then be accepted or rejected as seen by the scheduler. At any point the scheduler can have COMPACS finish the
partially created schedule automatically. The scheduler also has complete control over the schedule through facilities to edit or delete duties, which are already present in the
schedule.
2.3.3 Mathematical Programming
Mathematical programming approaches usually formulate a crew-scheduling problem as a set-covering problem. A set-covering model is established to find a set of feasible
duties covering all pieces of work and minimising the total costs of the operation Smith and Wren, 1988; Wren and Rousseau, 1995; Fores et al., 2002. If the objective is to
cover each piece of work with exactly one duty, then it is called a set-partitioning model. Mitra and Darby-Dowman 1985 proposed a “generalized set partitioning”
formulation that allows the algorithm to choose a solution that does not cover all of the work pieces if there is no solution covering all the work pieces.
There are three different approaches for solving the problem Banihashemi and Haghani, 2001. First, formulating the problem as an integer linear programming model
then finding the best combination of the feasible duties. Smith and Wren 1988; Paix āo
1990; and Paias and Paix āo 1993 followed this approach. Second, a column
Abdul Samad Shibghatullah
25
30052008
generation approach is used but within a limited number of feasible duties. Carraresi et al. 1995 and Fores et al. 1999 adopted this approach. Third, the solution procedure
starts from a set of feasible pre-constructed duties but it continues to produce other feasible duties if they could improve the solution. Desrochers and Soumis 1989 have
implemented this approach. IMPACS Integer Mathematical Programming for Automatic Crew Scheduling is a
crew scheduling software package developed by the Operational Research Unit at the University of Leeds in the late 1970s Parker and Smith, 1981; Smith, 1988; Smith and
Wren, 1988. This system was installed in London Transport in 1984 and in Greater Manchester Buses in 1985. A large number of possible duties with associated costs are
first generated; a subset is then selected to cover all the pieces of work at minimum cost. As the number of variables and constraints could be too enormous to be handled
for the computer power at that time, IMPACS employed a number of heuristics to reduce the number of variables and constraints. IMPACS also used the branch-and-
bound algorithm to obtain the integer solution for the constructed set covering problem. TRACS II Techniques for Running Automatic Crew Scheduling, Mark II was
developed in 1994 also by the Operational Research Unit at the University of Leeds and is being used by many bus and train companies in UK Willers et al., 1995; Fores et al.,
1999; Fores et al., 2001. TRACS II has shown significant savings when compared with standard methods for scheduling drivers of railways and buses, and has helped to
negotiate more flexible working rules with the trade unions. TRACS II follows almost the same approach as IMPACS, but the components have been considerably redesigned
to cope with the complexity of rail operations and to incorporate new algorithmic advances. Generally, it consists of seven modules i.e., VALIDATE, TRAVEL,
BUILD, SIEVE, SCHEDULE, REDUCE, and DISPLAY. Fores et al. 1999; 2001 explain details of all these modules.
HASTUS Lessard et al., 1981; Rousseau and Blais, 1985; Blais and Rousseau, 1988 is a widely used commercial package with a graphical user interface that deals with crew
scheduling, vehicle scheduling, and rostering. The HASTUS crew scheduling component is divided into two parts, HASTUS-micro and HASTUS-macro. HASTUS-
Abdul Samad Shibghatullah
26
30052008
macro constructs an initial schedule and HASTUS-micro produces the final schedule. HASTUS-macro uses linear programming to generate a pseudo-schedule that provides
an estimate of the number of crews needed. The pseudo-schedule is built by pseudo- shifts, which are generated using simplified relief points by simply cutting the day into
user-defined time slots. Then HASTUS-micro uses the pseudo-schedule to create a final schedule by producing real duties that relate to those in the HASTUS-macro solution as
closely as possible. EXPRESS Falkner and Ryan, 1992 is a bus crew scheduling system based on a set
partition model specially developed for Christchurch Transport, New Zealand. Its earlier version and a study of the use of set partition are presented in Falkner and Ryan,
1988. During the search process, the strictness of the model is diminished by the addition of slack variables. It then uses a ZIP package Zero One Integer Programming
Package for Scheduling by Ryan, 1980 similar to those being used in IMPACS and TRACS II. However, its branching model is slightly different. In this system, the branch
and bound algorithm branches on the pieces of work constraint branching rather than the relief points.
Freling et al. 2001, 2003 use Lagrangean relaxation with column generation to find solutions for a set partitioning based model and solve integrated vehicle and crew
scheduling problems. Huisman et al. 2003 extend the work of Freling et al. 2003 to the multiple depot case. They present two similar formulations for the multiple depot
vehicles and crew scheduling problem, incorporating variables for both crew schedules and vehicle arcs. The problems were solved using Lagrangean relaxation with column
generation with the extra restrictions that: drivers are only allowed to operate vehicles stationed at their home depot; a maximum of only one vehicle change is permitted in a
crew schedule, significantly simplifying the column generation sub algorithm; and not all trips can be driven by a vehicle operated out of any depot. Huisman and Wagelmans
2006 extended their works on a dynamic integrated vehicle and crew-scheduling problem that will reschedule the crew and bus simultaneously, whenever lateness
occurs. Several reschedulings could occur in a single day. The method produced good results but they have still not been tested in a real life setting.
Abdul Samad Shibghatullah
27
30052008
2.3.4 Other Approaches