0% found this document useful (0 votes)
129 views9 pages

(2012) A School Bus Scheduling Problem

This document summarizes a research paper about a school bus scheduling problem. The problem involves scheduling bus routes to serve multiple school trips within the time windows of each school. The researchers first model the problem as a vehicle routing problem with time windows (VRPTW) by treating each trip as a virtual stop. They then propose two exact approaches - an assignment problem model for special cases and a branch-and-bound method for more general cases, both assuming a homogeneous fleet. Finally, they present a heuristic algorithm for the general case with a heterogeneous fleet. Computational experiments show the effectiveness of the proposed approaches.

Uploaded by

Richard Riffo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
129 views9 pages

(2012) A School Bus Scheduling Problem

This document summarizes a research paper about a school bus scheduling problem. The problem involves scheduling bus routes to serve multiple school trips within the time windows of each school. The researchers first model the problem as a vehicle routing problem with time windows (VRPTW) by treating each trip as a virtual stop. They then propose two exact approaches - an assignment problem model for special cases and a branch-and-bound method for more general cases, both assuming a homogeneous fleet. Finally, they present a heuristic algorithm for the general case with a heterogeneous fleet. Computational experiments show the effectiveness of the proposed approaches.

Uploaded by

Richard Riffo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

European Journal of Operational Research 218 (2012) 577–585

Contents lists available at SciVerse ScienceDirect

European Journal of Operational Research


journal homepage: www.elsevier.com/locate/ejor

Innovative Applications of O.R.

A school bus scheduling problem


Byung-In Kim a,⇑, Seongbae Kim b, Junhyuk Park b
a
Department of Industrial and Management Engineering, Pohang University of Science and Technology (POSTECH), Pohang, Kyungbuk 790-784, Republic of Korea
b
Institute of Information Technology, Inc., Magnolia, TX 77354, USA

a r t i c l e i n f o a b s t r a c t

Article history: This paper introduces a school bus scheduling problem wherein trips for each school are given. A trip con-
Received 21 February 2011 sists of a sequence of bus stops and their designated school. Each school has its fixed time window within
Accepted 24 November 2011 which trips should be completed. A school bus can serve multiple trips for multiple schools. The school
Available online 1 December 2011
bus scheduling problem seeks to optimize bus schedules to serve all the given trips considering the
school time windows. We first model the problem as a vehicle routing problem with time windows
Keywords: (VRPTW) by treating a trip as a virtual stop. Two assignment problem based exact approaches are then
Heuristics
proposed for special cases and a heuristic algorithm is proposed for more general cases. Benchmark prob-
School bus routing problem
Bus scheduling problem
lems and computational experiments are presented. Computational experiments show the effectiveness
Vehicle routing problem of the proposed approaches.
Assignment problem Ó 2011 Elsevier B.V. All rights reserved.

1. Introduction not wide compared to the service times of the trips, it is assumed
that when two trips can be served by the same bus, their sequence
This paper considers a school bus scheduling problem wherein is fixed. Thus, when a trip can be followed by another trip by the
trips for each school are given. A trip consists of a sequence of bus same bus, the other sequence is not possible.
stops and their designated school. The trip’s required service time We show that a special case, wherein the start and end times of
is based on the bus stops, the number of students, and the school in the trips are fixed and a homogeneous fleet of buses is given, can
a trip. Each school has its fixed time window within which trips be modeled as an assignment problem and be easily solved. Then
should be completed. A school bus can serve multiple trips for mul- we propose an assignment problem based branch-and-bound
tiple schools. The school bus scheduling problem presented in this approach for the general case with an assumption of a homoge-
paper seeks to optimize bus schedules to serve all the given trips neous fleet of buses. Finally, a heuristic algorithm is presented
considering the school time windows. for the general case with the assumption of a heterogeneous fleet
Fig. 1 shows an example of the school bus scheduling problem. of buses. Computational experiments show the effectiveness of
Let ti be a trip consisting of a sequence of bus stops and their desti- the proposed approaches.
nation school, and sm be a school. In the figure, there are three, three, The rest of this paper is organized as follows: a brief review of
and four trips for school sa, sb, and sc, respectively. Let [sm_st, sm_et] be existing literature is presented in Section 2. Two mixed integer pro-
the time window for school m. All the students attending a school gramming models and proposed algorithms for the problem are
should arrive at the school within the bell time window. When presented in Sections 3 and 4, respectively. Section 5 shows the
two trips can be served by the same bus without violating the bus computational results and concluding remarks follow in Section 6.
capacity constraint and the time window of their designated
schools, they can be scheduled to the same bus. Fig. 2 shows a sam-
2. Literature review
ple solution to the problem of Fig. 1. {t2, t6, t9}, {t1, t4, t8}, {t3, t7}, and
{t5, t10} are served by buses 1, 2, 3, and 4, respectively. It is assumed
The school bus routing problem includes three main sub prob-
that sa_et 6 sb_st and sb_et 6 sc_st.
lems, namely – bus stop selection, route (or trip) generation for
In this paper, we first model the problem as a vehicle routing
each school, and bus scheduling problems. This section focuses on
problem with time windows (VRPTW) by treating a trip as a virtual
the review of the bus scheduling problem. Detailed descriptions
stop. However, the modeled VRPTW has a special characteristic
of the general school bus routing problem and a survey of related
due to the asymmetric nature of the original problem. Since the
literature can be found in Park and Kim (2010). Bus scheduling
time windows of the schools are distant from each other and are
specifies the exact starting and ending time of each route and forms
a chain of trips that can be executed successively by the same bus.
⇑ Corresponding author. Tel.: +82 54 279 2371; fax: +82 54 279 2870. Gavish et al. (1978) solved a bus scheduling problem in which
E-mail address: [email protected] (B.-I. Kim). time tables (i.e., the starting and ending time) of trips are given.

0377-2217/$ - see front matter Ó 2011 Elsevier B.V. All rights reserved.
doi:10.1016/j.ejor.2011.11.035
578 B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585

Bus 1
Bus 2
Bus 3
Bus 4

Fig. 2. A sample solution.


Fig. 1. A sample problem.

Braca et al. (1997) described the New York City school bus rout-
The problem was formulated as a transportation problem (TP). Orloff ing problem. While most literature solved the separate problem for
(1976), and Carraresi and Gallo (1984) handled the same bus sched- each school, and determined the route schedule for each bus, they
uling problem but formulated it as an assignment problem (AP). solved the whole problem of all schools in one stage using a ran-
Löbel (1998a,b) considered the multiple depot vehicle schedul- domized insertion-based heuristic.
ing problem (MDVSP) in public transit, which is a similar problem Spada et al. (2005) considered a multiple school routing prob-
to the heterogeneous fleet school bus scheduling problem, formu- lem and proposed heuristic approaches. Schools are considered
lated it as a multi-commodity flow problem, showed that it is in increasing order of their starting times, and the routes for each
NP-Complete even when the time tables of trips are given, and pro- school are built using a greedy method that considers the mini-
posed a column generation approach as a solution method. While mum vehicle capacity. Thereafter, the routes are merged if possi-
in the MDVSP, there are multiple depots, each vehicle belongs to ble. Afterwards, the merged routes are improved by simulated
one of the depots, and it should start from and end at its own de- annealing or a tabu search.
pot, our problem does not have that constraint. Hadjar et al. (2006) Desrosiers et al. (1981, 1986a) described a computerized school
proposed a branch-and-price-and-cut algorithm for the MDVSP. bus routing system consisting of student stop assignment, route
Pepin et al. (2009) compared five decomposition-technique-based generation, school start-time scheduling, and route scheduling
heuristic methods and metaheuristics for the MDVSP. Desaulniers modules. They assumed that the starting time of a school can be se-
et al. (1998) developed an integer nonlinear mathematical model lected from a candidate list to reduce the number of buses required.
and a column generation embedded branch-and-bound algorithm With regard to the route scheduling module, which is a subject of
for MDVRP with time windows (MDVRPTW). Hadjar and Soumis this paper, they formulated and solved a series of TPs. Desrosiers
(2009) also proposed a branch-and-price algorithm with dynamic et al. (1986b) developed three algorithms and tested them on eight
window reduction methods for the MDVRPTW. school-transportation problems. They considered various settings,
Orloff (1976) proved that the homogeneous fleet school bus such as whether the problem occurred in the morning or in the
scheduling problem is NP-Complete when the arrival times of the afternoon, as well as the different interval lengths of time windows.
trips are not fixed and the time windows of schools are given. He Fügenschuh (2009) also considered a school bus scheduling
proposed a matching-based construction algorithm and a 3-opt problem that permit the adjustment of school starting times and
improvement method for the problem. transshipment of students among trips. He formulated the prob-
Newton and Thomas (1974), Bodin (1975), and Bodin and lem as an integer programming model based on VRPTW, and the
Berman (1979) assumed that there are distinguished time periods, model was solved by a branch-and-cut approach with several
such that at the beginning of a period, buses would complete the pre-processing mechanisms and valid cuts. However, homoge-
duty of their previous period and would be located at their previ- neous fleet is assumed to be given and even a few small problems
ous period destination schools. In each time period, each bus trans- could not be optimally solved within the computation time limit
ports students for only a single school and makes one trip at most. (e.g., one hour) due to the complexity of the problem. Furthermore,
The scheduling problem was solved by applying a series of TP solu- the school start and trip start times are assumed fixed in their
tions. However, their assumptions were overly simplified. experiments for real-world problem sets.
Swersey and Ballard (1984) proposed a nonlinear programming In summary, the bus scheduling problem for homogeneous buses
model for the school bus scheduling problem and its discretized with fixed start and ending times can be solved by AP or TP. An AP
approximation MIP models by dividing each school time window formulation is also used for the problem in this paper. However,
into a fixed number of arrival times. They solved the models using the bus scheduling problems with time windows are difficult, and
a linear relaxation and adjusted the solution manually when a there is no widely-used method yet. While some have attempted
solution had non-integer values. to solve the integrated routing and scheduling problem (Braca
Graham and Nuttle (1986) tested the algorithms of Orloff et al., 1997; Spada et al., 2005; Newton and Thomas, 1974; Bodin
(1976), and Swersey and Ballard (1984). An AP-based algorithm and Berman, 1979), some have separately focused on the scheduling
was also tested, in which an initial solution was obtained by using problem (Swersey and Ballard, 1984; Desrosiers et al., 1981,
AP formulation without considering time window constraints, and 1986a,b; Fügenschuh, 2009). This paper is categorized in the latter
then its feasibility was handled manually. The study concluded case. Except Spada et al. (2005) and Fügenschuh (2009), all of the
that alternative heuristics that guarantee solution feasibility and previous works studied the homogeneous vehicle problems. We will
short computation time are desired. handle both homogeneous and heterogeneous fleet problems. To the
B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585 579

best of our knowledge, there are no publicly available benchmark Objective function (1) is to minimize the number of vehicles re-
problem sets for the school bus scheduling problems, which makes quired and the total travel distance in a lexicographic manner.
it difficult to measure the efficiency of algorithms. This paper pre- Constraints (2) assure that an eligible bus should be assigned to
sents a number of benchmark problem instances. each virtual stop. Constraints (3) are the flow balance constraints,
which ensure that the number of arrivals of a bus at a stop matches
3. Formulation of the bus scheduling problem the number of departures of the bus from the stop. Constraints (4)
state that when a bus k serves stop i followed by stop j, the service
The bus scheduling problem can be modeled to a VRPTW as fol- start time at stop j is greater than or equal to the departure time
lows. Let vi be a virtual stop corresponding to trip, ti, consisting of a from stop i plus the travel time between the stops. Constraints
sequence of bus stops and their destination school. Let pi be the (5) are the time window constraints. Constraints (6) and (7) assure
service time for trip, ti, and its corresponding virtual stop, vi. Then that all the buses start from and end at the depot.
the time window [ai, bi] of vi, which is the possible time range of Note that the model has two different characteristics from a
service start, can be determined as [sm_st  pi, sm_et  pi], where general VRPTW. First, there is eligibility between buses and stops.
[sm_st, sm_et] is the time window of the trip’s designated school While it is assumed that all the vehicles are eligible to serve any
(sm). The travel time, dij, from virtual stop, vi, to virtual stop, vj, stops in a general VRPTW, a bus can serve a virtual stop only if
can be determined easily by the travel time from the designated the bus has enough capacity for the stop, i.e., Eik = 1, in our prob-
school of trip, ti, to the first stop of trip tj. lem. For example, a trip handling 60 students cannot be served
In the model, the following indices are used: by a 50-seat school bus. Second, our problem does not consider
the accumulation of students along a bus schedule. While the accu-
i, j = virtual stop index (0, n + 1 = depot index) mulation of loads cannot be over a vehicle capacity in a general
N = set of virtual stops VRPTW, the accumulation of students need not be checked in our
N0 = N [ depot (0) problem since each virtual stop contains the designated school of
Nn+1 = N [ depot (n + 1) its student-passengers. The bus capacity can be renewed after a
k = bus index visit to the school. This characteristic makes the problem similar
K = set of buses to a full truck load problem.
The MIP model for the homogeneous fleet problem is simpler
because only the sequencing of the stops as groups is required,
The following constants are used to facilitate the presentation
and the assignment of specific vehicles to the sequences is not re-
of the formulation:
quired. The decision variables are slightly changed as follows:
Eik = 1, if bus k is eligible to serve trip ti; 0, otherwise
xij = 1, if vj is served immediately after vi by the same bus; 0,
D+(i) = set of virtual stop indices that can be directly
otherwise
connected from stop i without violating the time window
wi = service start time at vi
constraints plus the depot index (n + 1)
D(j) = set of virtual stop indices that can be directly preceded
to stop j without violating the time window constraints Our MIP model for a homogeneous fleet problem (MIPHO) is as
plus the depot index (0) follows:
M0 = a sufficiently large number
M = big M (M  M0) MIPHO :
XX X
Minimize Z ¼ t ij xij þ M 0 x0j ð9Þ
i2N 0 j2N j2N
The decision variables are as follows: X
subject to xij ¼ 1; 8j 2 N ð10Þ
xijk = 1, if vj is served immediately after vi by bus k; 0, i2D ðjÞ
X X
otherwise xij ¼ xji ; 8j 2 N; ð11Þ
wik = service start time at vi by bus k i2D ðjÞ i2Dþ ðjÞ

wi þ pi þ t ij  wj 6 ð1  xij ÞM; 8i 2 N; j 2 N ð12Þ


Our mixed integer programming (MIP) model for the heteroge- ai 6 wi 6 bi ; 8i 2 N ð13Þ
neous fleet problem (MIPHE) is as follows: xij ¼ binary; 8i 2 N0 ; j 2 Nnþ1 ð14Þ
MIPHE : The meanings of the constraints are the same with the corre-
XXX XX
Minimize Z ¼ tij xijk þ M 0 x0jk ð1Þ sponding constraints of MIPHE.
k2K i2N 0 j2N k2K j2N
X X
subject to Ejk xijk ¼ 1; 8j 2 N ð2Þ 4. Solution approaches
k2K i2D ðjÞ
X X In the following sections, we propose solution methods for the
xijk ¼ xjik ; 8j 2 N; k 2 K ð3Þ

i2D ðjÞ þ
i2D ðjÞ
problem with different assumptions.

wik þ pi þ tij  wjk 6 ð1  xijk ÞM; 8i 2 N; j 2 N; k 2 K ð4Þ


X X 4.1. Problem with an assumption of homogeneous buses and fixed start
aj xijk 6 wjk 6 bj xijk ; 8j 2 N; k 2 K ð5Þ time
i2D ðjÞ i2D ðjÞ
X
x0jk ¼ 1; 8k 2 K ð6Þ In this subsection, a special case of the problem is handled. If we
j2Dþ ð0Þ assume that the start and end service time of the virtual stops are
X fixed and a homogeneous fleet of buses is given, i.e., all the vehicles
xi;nþ1;k ¼ 1; 8k 2 K ð7Þ
i2Dþ ðnþ1Þ
can serve any trips, the problem can be modeled as an AP. We
encountered these kinds of problems in a recent industrial re-
xijk ¼ binary; 8i 2 N0 ; j 2 Nnþ1 ; k 2 K ð8Þ
search project.
580 B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585

The problem with the assumptions can be modeled as an AP


(shown in Fig. 3). The cost between node i and node j, cij, is defined
as follows: when virtual stop i can be followed by virtual stop j
without violating the given start and end service times, cij is set
to dij. In other words, when the arrival time of a bus at stop j after
serving stop i (i.e., the service end time of stop i plus the travel time
from stop i to stop j) is no later than the service start time of stop j,
cij is set to dij. If the arrival time is later than the start service time,
cij is set to M0 + 1. Note that when cij has a small value, cji should be
M0 + 1 due to the asymmetric nature of the problem explained in Fig. 3. An assignment problem formulation.

the previous section. Finally, cii is set to M0.


Let the decision variables be defined as follows: also feasible, we can get a solution by using the assignment prob-
lem based approach. The assumption is a kind of relaxation, and
yij = 1, if node i is assigned to node j; 0, otherwise.
the solution provides a lower bound to the original problem.
The assignment model is as follows: Based on these observations, a branch-and-bound algorithm is
proposed. Let APU and APL be the upper bound and lower bound
X
n X
n
Minimize cij yij ð15Þ problem, respectively. At the beginning, APU and APL are formu-
i¼1 j¼1 lated and solved. If the solution of APU is not optimal, i.e., the solu-
X
n tion value is not the same to the one of APL, branching occurs. For
subject to yij ¼ 1; 8j ð16Þ branching from the node, an infeasible bus schedule from the solu-
i¼1 tion of APL and its problematic link will be found. When the link
Xn
A ? B is infeasible due to their time window constraints, the cur-
yij ¼ 1; 8i ð17Þ
rent node will be branched into two nodes: one with ‘prohibit
j¼1
A ? B’ and the other one with ‘combine A ? B’. To prohibit link
The assignment problem can be easily solved using the Hungar- A ? B, the cost cAB will be set to infinite. Link A ? B can be com-
ian method (which is a O(n3) algorithm), where n is the number of bined to a virtual stop and the service time of the virtual stop is
nodes (Papadimitriou and Steiglitz, 1998). With a sufficiently large set to the total time of both stops’ service times, the travel time
value of M0, the model attempts to minimize the number of buses. from A to B, and the possible waiting time at stop B. Its time win-
A solution of the model can be converted to a solution to the bus dow also needs to be adjusted. Usual bounding procedures are per-
scheduling problem. When an optimal solution has yij = 1, trip j is formed. The branch-and-bound procedures are repeated until an
served right after trip i by the same bus if cij < M0. If an optimal optimal solution is found or until the given computation time is
solution has yii = 1, the bus serving trip i does not serve any other reached. Detailed steps of the branch and bound algorithm are as
trips. When a solution is constructed, only the decision variables follows:
yij with cij 6 M0 are considered. For example, when n = 6, and the [AP Based B&B Algorithm]
optimal solution is y13 = y25 = y34 = y41 = y52 = y66 = 1 (all the other
variables are zero) and c13 < M0, c25 < M0, y34 < M0, y41 = M0 + 1, Step 0: Initialization.
y52 = M0 + 1, and y66 = M0, trips 1-3-4, 2-5, and 6 are served by Set initial APU and APL, and solve them using the Hungarian
three buses. method.
If the lower bound solution for APL is feasible to the original
4.2. Problem with an assumption of homogeneous buses problem, it is optimal so stop the procedure.
Otherwise, set upper bound VU = f(APU) and lower bound
When the start and end service times of the virtual stops are not VL = f(APL), where f(x) = optimal objective value of problem
fixed but can be determined based on the given time window, the x. Add APL to the partial problem list. Proceed to Step 1.
problem is more challenging even with an assumption of homoge- Step 1: Stopping.
neous fleet of buses. When the start times of the virtual stops are If the partial problem list is empty (or the allowed computa-
assumed to be fixed, and if links from stop A to B and from B to tion time is reached), stop the procedure. VU is the optimal
C are feasible, then the link from A to B to C is guaranteed to be fea- (best) objective value.
sible. However, this relationship may not hold in a time window Otherwise, retrieve first one (call it RAPL) from the list and
problem. Fig. 4 shows an example. In the figure, the length of each proceed to Step 2.
horizontal line shows the total time needed for service and travel Step 2: Branching.
between virtual stops. The vertical lines show the time windows Find an infeasible link A ? B from RAPL.
of the designated schools. Although trips A and B together, and B Branch RAPL into two problems: one with ‘prohibit A ? B’
and C together can be served by a single bus, all the trips cannot (call it PAP) and the other one with ‘combine A ? B’ (call it
be served by the same bus due to the time window violation. Thus, CAP)
the assignment problem based approach described above cannot Proceed to Step 3.
be used directly for the time window problem. Step 3: Bounding 1.
However, when we assume that each trip is served at the latest Set PAPU and PAPL, and solve them using the Hungarian
possible time window as shown in Fig. 5, and if links from stop A to method.
B and from B to C are feasible, then link from A to B to C is guaran- If the lower bound solution for PAPL is feasible to the original
teed to be feasible. When the service start time of each trip is fixed, problem,
the assignment problem based approach of the previous subsec- If VU > f(PAPL), set VU = f(PAPL) & proceed to Step 4.
tion can be used. Thus, we can get an upper bound solution if we Otherwise (the solution of PAPL is infeasible to the original
set the service start time to the latest possible time and use the problem),
assignment problem based approach. If VU < f(PAPL), proceed to Step 4 (fathom).
On the other hand, when we assume that if the links from stop A Otherwise, add PAPL to the partial problem list & proceed
to B, and from B to C are feasible, then the link from A to B to C is to Step 4.
B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585 581

Fig. 4. Difficulty of a time window problem.

Fig. 5. Always feasible case (upper bound).

Step 4: Bounding 2. After solving the AP, trips belonging to the current target school
Set CAPU and CAPL, and solve them using the Hungarian that are assigned to the existing buses by the AP are scheduled to
method. the buses. The bus schedules are extended using the trips to a
If the lower bound solution for CAPL is feasible to the original school in an iteration. For example, in Fig. 6, if trips 1, 2, 3, 4, 5,
problem, and 11 cannot be serviced after another trip, they are scheduled
If VU > f(CAPL), set VU = f(CAPL) & proceed to Step 5. to different buses. The solid lines from the buses show the bus
Otherwise (the solution of CAPL is infeasible to the original schedules created. As all the trips of school 1 are scheduled, school
problem), 2 becomes the current target school. If the dashed lines show the
If VU < f(CAPL), proceed to Step 5 (fathom). optimal solution of the AP, then, only the top three assignments
Otherwise, add CAPL to the partial problem list & proceed (i.e., 1–6, 2–7, 3–8) are confirmed and are appended to buses 1,
to Step 5. 2, and 3, because they are related to the current target school. Note
Step 5: Bounding 3. that although the remaining trips 9, 10, and 12 are assigned to
Delete problems(nodes) whose lower bound value is greater buses 4, 5, and 7, respectively, they are momentarily excluded from
than VU from the partial problem list. the schedules and will be reconsidered in the next iteration.
Proceed to Step 1. Detailed steps of the construction algorithm are as follows:
[Construction Algorithm]
4.3. Problem with an assumption of heterogeneous buses
Step 0. Sort the trips in ascending order of their time windows
Although the branch-and-bound approach of Section 4.2 can (i = 1, 2, . . . , n).
generate optimal solutions for small problems, it cannot be used Sort the schools in ascending order of their time windows
for large problems due to its long computation time. Also, it cannot (s = 1, 2, . . . , S).
handle heterogeneous fleet problems. For more general problems, Step 1. Set all the trips to unrouted.
we propose a heuristic approach consisting of an iterative AP based Step 2. Generate random weight factors WD, WT, and WV from 0, 1,
construction algorithm and an improvement algorithm. 2, 3, and 4.
For the construction algorithm, three weight values are used: Step 3. Set s = 1.
WD, WT, and WV. They are weight factors for distance, time, and Step 4. If all the trips are routed, go to Step 10.
vehicle capacity fitness, respectively. The values are generated ran- Step 5. For each trip i that has not yet been routed, if the trip can-
domly with given ranges. not be included in any existing bus schedules, select an
The construction algorithm generates an initial solution by solv- unused vehicle B that has an equal or bigger capacity than
ing a series of AP problems as follows. Arrange the trips in ascend- the number of students of trip i and has the minimum
ing order based on the time windows of the schools. Determine the Value1 among such buses.
subset of trips that the scheduled buses cannot service after an- Value1 = WD⁄Dist(Initial location of B, i) + WV⁄(Capacity of B –
other trip. Find appropriate buses for those trips using the weight number of students of i), where Dist(L1, L2) is the distance
values and initialize them with the trips. When a bus schedule is from L1 to L2.
initialized with a trip, its arrival time to the designated school of Generate a bus schedule for B with trip i. Set trip i to routed.
the trip is set to the earliest. Afterwards, an AP is formulated be- Step 6. If all the trips are routed, go to Step 10.
tween the scheduled buses and the unscheduled trips. When the Step 7. Set and solve an AP with the bus schedules and the unro-
number of buses and the number of unscheduled trips do not uted trips. The cost between bus b and remaining trip r is
match, dummy nodes are introduced. If a bus can serve a trip, set as follows:
the cost between a bus and a trip will be set with the consideration If bus b can serve trip r, Cost = WD⁄Dist(Current location of b,
of the bus waiting time, and the distance between the last position r) + WT⁄Wait time of b at r due to time window + WV⁄(Capac-
of the bus and the first position of the trip. Otherwise, the cost will ity of b – number of students of r).
be set to M0. Otherwise, Cost = M0.
582 B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585

Fig. 6. AP based construction algorithm.

Step 8. From the optimal solution of AP, take the trips that belong to on Stachniss’ C-language implementation (Stachniss, 2006). The
school s and are assigned to the existing buses. Assign those experiments were run on a 3.46 GHz Intel Xeon computer with
trips to the existing bus schedules and set them to routed. 3.25GB RAM.
Step 9. Set s = s + 1. Go to Step 4. As there are no publicly available benchmark problems for the
Step 10.Repeat Steps 1–9 for the given number, max_iteration, and bus scheduling problem, several problems were generated as
return the best solution that requires the minimum num- benchmark problems and were uploaded to http://logistics.
ber of buses and minimum bus travel time in a lexico- postech.ac.kr/Bus_Scheduling_benchmark.html for the reference
graphic manner. of other researchers. The summary statistics of the problems are
shown in Table 1. The data set is comprised of 15 homogeneous fleet
After the best solution is obtained, the solution will be im- problems and 15 heterogeneous fleet problems. Each file has Route#
proved by some inter route improvement algorithms. One-to-zero, number of records, with each record having the following attributes:
one-to-one, one-to-two, and two-to-two improvement algorithms
are used in this research. The first one moves a stop from a bus ID: trip identity index
schedule to the best position in another bus schedule, the second start_x, start_y: coordinates of the first stop of the trip
attempts to exchange two stops from two bus schedules (remove student_num: number of students served by the trip
one stop from a bus route and insert it into the best position in service_duration: service time of the trip. It includes students’
the counterpart route), the third attempts to exchange one stop pick-up time, traveling time, and unloading time at the
from a bus schedule and two stops from another schedule (remove destination
one stop from a route and two stops from another route, and insert school_x, school_y: coordinates of the destination school of the
the first stop into the second route and the second stops to the first trip
route), and the last one attempts to exchange two stops from a bus school_tw_st, school_tw_end: time window of the school. Service
schedule and two from another (remove two stops from two routes of the trip should be completed within the time window.
and insert them into the best positions in the counterpart routes).
We use the improvement algorithms in a serial manner with The coordinates of schools (school_x, school_y) were randomly
the sequence of one-to-zero, one-to-one, one-to-two, and two-to- generated from a rectangular (0, 0, 100, 100). The time window
two. However, the whole procedure is iterated until no more (school_tw_st, school_tw_end) of a school was set using two ran-
improvement is achieved. All the four improvement algorithms dom numbers: a starting time from [50, 250] and a window range
themselves are also iterative. In each algorithm, all possible combi- from [15, 30]. For example, if the drawn numbers were 150 and
nations of routes and stops are considered and the most improving 20, the time window would be set to (150, 170). The number of
exchange is accepted at each iteration and the improvement pro- trips that belong to a school was randomly generated from
cess is repeated until there is no more improvement. Through [1, 30]. The start location of a trip was randomly generated from
the improvement procedure, we attempt to reduce the number a rectangular (school_x  offset_x, school_y  offset_y, school_x + off-
of buses, as well as the total bus travel time. set_ x, school_y + offset_y), where offset_x and offset_y were ran-
domly generated from [10, 100]. The service duration and the
5. Computational results number of students for a trip were randomly generated from
[20, 40] and [30, 70], respectively. Travel time between two loca-
The algorithms described in the previous sections were imple- tions (stop or school) is assumed to be an integer number calcu-
mented in C++ language. The Hungarian algorithm to solve the lated by Euclidean distance between their coordinates with a
assignment problems for this research was implemented based truncated fraction.
B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585 583

Table 1
Experimental benchmark problems.

File name School# Trip# Student# File name School# Trip# Student#
homo_test_file1.txt 1 3 143 hetero_test_file1.txt 1 7 335
homo_test_file2.txt 2 13 611 hetero_test_file2.txt 2 13 596
homo_test_file3.txt 3 20 975 hetero_test_file3.txt 3 21 1012
homo_test_file4.txt 4 23 1154 hetero_test_file4.txt 4 24 1199
homo_test_file5.txt 5 29 1448 hetero_test_file5.txt 5 32 1610
homo_test_file10.txt 10 49 2405 hetero_test_file10.txt 10 58 3002
homo_test_file20.txt 20 106 5097 hetero_test_file20.txt 20 120 6012
homo_test_file30.txt 30 161 8155 hetero_test_file30.txt 30 187 9415
homo_test_file40.txt 40 234 11528 hetero_test_file40.txt 40 239 12136
homo_test_file50.txt 50 309 15238 hetero_test_file50.txt 50 286 14352
homo_test_file60.txt 60 372 18551 hetero_test_file60.txt 60 345 17350
homo_test_file70.txt 70 430 21554 hetero_test_file70.txt 70 408 20723
homo_test_file80.txt 80 461 23066 hetero_test_file80.txt 80 469 23686
homo_test_file90.txt 90 514 25736 hetero_test_file90.txt 90 514 25736
homo_test_file100.txt 100 562 28175 hetero_test_file100.txt 100 562 28175

Table 2
Results on the homogeneous fleet problems.

File name MIPHO AP B&B AP LB Heuristic


No. buses Distance Time No. Distance Time No. buses No. buses Distance Time
(millisecond) buses (millisecond) (millisecond)
homo_test_file1.txt 3 0 328 3 0 <1 3 3 0 <1
homo_test_file2.txt 10 119 63 10 119 <1 10 10 119 <1
homo_test_file3.txt 10 418 78 10 418 <1 10 10 418 <1
homo_test_file4.txt 10 441 78 10 441 <1 10 10 441 15
homo_test_file5.txt 15 380 78 15 380 15 15 15 394 <1
homo_test_file10.txt 17 806 171 17 806 1 hour 17 17 838 46
homo_test_file20.txt 45 1265 375 45 1265 47 45 45 1393 265
homo_test_file30.txt 57 2132 25718 73 1728 1 hour 56 57 2445 1688
homo_test_file40.txt 63 3091 91313 78 3053 1 hour 63 65 3320 5859
homo_test_file50.txt 88 3421 241313 107 3526 1 hour 88 88 3757 16531
homo_test_file60.txt 90 4260 1303547 117 4512 1 hour 90 94 4266 28781
homo_test_file70.txt 101 4962 1 hour 140 4049 1 hour 98 106 4565 48687
homo_test_file80.txt 109 5296 1 hour 149 4190 1 hour 99 111 5023 65687
homo_test_file90.txt 124 5212 1 hour 155 5066 1 hour 101 117 5466 98734
homo_test_file100.txt 135 5425 1 hour 165 5652 1 hour 108 126 5902 132813

Each problem also has its corresponding vehicle file that has the the best ones obtained within the time. While the MIPHO model re-
Route# number of vehicles. For example, homo_test_file2.txt has its quires a commercial solver, the assignment problem based branch-
corresponding vehicle file, homo_vehicle_file2.txt, which possesses and-bound method can be used without a commercial solver.
the information of 13 vehicles. All the vehicles are assumed to start The column under the heading AP LB (assignment problem
from the same location (i.e., depot). For homogeneous fleet prob- based lower bound) shows the results of APLof Section 4.2. In terms
lems, the capacity of all vehicles is assumed to be 70. For heteroge- of the number of buses, the lower bound was calculated by the
neous fleet problems, the capacity of each vehicle is randomly Hungarian method with a special setting of cost between two trips
chosen from 40, 50, or 70. as described in Section 4.2. Note that this corresponds to the result
Table 2 shows the experimental results of the algorithms on the at the root node of AP B&B. These lower bounds can provide refer-
homogeneous fleet problems. The columns under the heading MI- ence to evaluate the solution quality of the heuristic method. Based
PHO show the results of applying the mathematical model pre- on the experimental results, the lower bound provides tight
sented in Section 3, using the callable library (ILOG Concert bounds for the small problems. However, its tightness for large
technology) of CPLEX 11.1 (ILOG Inc, 2007). The MIP model could problems has not been fully evaluated yet.
generate optimal solutions for small problems, but it could not fin- The last columns show the results of the heuristic algorithm de-
ish its search for homo_test_file70.txt within one hour of computa- scribed in Section 4.3. We set max_iteration = 20 for the algorithm.
tion. Note that the travel distances from the bus depot to the first This algorithm could generate solutions rapidly in comparison
trip and from the last trip to the depot were not considered in the with the other algorithms. It could find optimal or near optimal
total distance traveled by all the buses, which is reported in the solutions for small problems. The gap between the lower bound
‘‘Distance’’ column. Some columns of this algorithm and others and the solution of the heuristic method increases as the problem
have a 0 value because of this reason. size increases. However, it could generate better solutions than MI-
The columns under head AP B&B show the results of the assign- PHO and AP B&B methods for large problems.
ment problem based branch-and-bound method described in Sec- Table 3 shows the experimental results of the algorithms on the
tion 4.2. The branch-and-bound method could find optimal heterogeneous fleet problems. The columns under the heading
solutions quicker than the MIP methods for small problems. How- MIPHE show the results of applying the mathematical model pre-
ever, its computation times were larger than those of the MIPHO sented in Section 3, MIPHE. The model could not be used for large
method and it could not find optimal solutions for larger problems problems (from hetero_test_file20.txt) because of the out-of-memory
in a given time (e.g., one hour). The results shown in the columns error. The column under the heading AP LB shows the results of APL
with one-hour computation time are not the optimal solutions but of Section 4.2. Although APL was designed for homogeneous fleet
584 B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585

Table 3
Results on the heterogeneous fleet problems.

File name MIPHE AP LB Heuristic


No. buses Distance Time (millisecond) No. buses No. buses Distance Time (millisecond)
hetero_test_file1.txt 7 0 15 7 7 0 <1
hetero_test_file2.txt 7 231 78 7 7 231 <1
hetero_test_file3.txt 9 377 235 9 9 377 <1
hetero_test_file4.txt 11 359 281 11 11 369 <1
hetero_test_file5.txt 17 402 1266 17 17 402 15
hetero_test_file10.txt 24 924 7703 24 24 991 78
hetero_test_file20.txt 50 50 1768 735
hetero_test_file30.txt 56 60 2620 3235
hetero_test_file40.txt 67 67 3201 8422
hetero_test_file50.txt 76 77 3313 16297
hetero_test_file60.txt 86 89 4162 27641
hetero_test_file70.txt 100 104 4557 47031
hetero_test_file80.txt 115 117 4850 71672
hetero_test_file90.txt 101 116 5618 94906
hetero_test_file100.txt 108 126 5995 131672

Table 4
Results on real-world problems.

Problem School# Route# Student# Current practice Proposed algorithm Reduction


No. buses Distance (miles) No. buses Distance (miles) No. buses Distance (miles)
Case 1 110 515 13817 245 5463.7 202 4765.2 43 698.5
Case 2 105 493 12810 242 5542.9 208 4649.9 34 893.0

problems, we also used it for heterogeneous fleet problems. For the of service, the number of students it serves, and its designated
heterogeneous fleet problem, the capacity of the vehicles was ignored school. Each school has its fixed time window within which all
and all the vehicles were assumed to be capable of serving any trip. the trips should be completed. The school bus scheduling problem
The columns under the heading Heuristic show the results of the intends to optimize bus schedules to serve all the given trips with
heuristic algorithm described in Section 4.3. Again, the heuristic consideration of the school time windows.
algorithm could find optimal solutions for small problems with re- We first modeled the problem as a VRPTW by treating a trip as a
gard to the number of buses. The gap between the lower bound virtual stop. The two assignment problem based exact approaches
and the solution of the heuristic method increases as the problem were then proposed for special cases and an assignment problem
size increases. based heuristic algorithm was proposed for more general cases.
We have also solved several real-world problems for school dis- Benchmark problems were developed and were posted on the Inter-
tricts in the US using the proposed heuristic algorithm. Table 4 net for the reference of other researchers. The computational experi-
shows the results of two cases from the same city. Case 1 is the ments showed the correctness and effectiveness of the algorithms. In
morning problem and Case 2 is the afternoon problem. The schools summary, the MIP models and the assignment problem based
in the cases have various time window ranges. Some examples in branch-and-bound algorithm can be used for small homogeneous
the morning problem are (6:30AM, 7:00AM), (7:00, 7:40), fleet problems and the heuristic algorithm for large problems and het-
(7:30, 8:05), and (8:00, 8:30). The number of trips for schools erogeneous problems. Some state-of-the-art meta heuristic ap-
ranges from 1 to 32, averaging in 4.7 trips per school, and the aver- proaches may be applied for the problems of this paper.
age duration (including loading, unloading, and travel time) of the Combination of the exact methods and the heuristics can be a another
trips is 48.0 minutes. The bus fleet of the cases is heterogeneous future research direction. In order to evaluate the performance of the
and the available bus capacities are 33, 45, 65, 71, and 78. proposed approaches for large size problems, a much tighter lower
Compared with the current practice, the proposed algorithm bound method or an efficient exact method also need to be developed.
could reduce 43 (17.6%) and 34 (14.0%) buses for Case 1 and Case
2, respectively. At the same time, it could also reduce the total tra-
vel distances by 12.8% and 16.1%, for Case 1 and Case 2, respec- Acknowledgement
tively. The computation time for Case 1 and Case2 were
34 seconds and 59 seconds, respectively, on an Intel CPU E5440 We thank the anonymous referees for useful comments and
with 2.83 GHz, 16 GB RAM running Windows Server 2003. This suggestions. This work was supported by a Korea Science and Engi-
demonstrates the effectiveness of the proposed algorithm. Notice neering Foundation (KOSEF) Grant funded by the Korean Govern-
that there are many real-world considerations in school bus rout- ment (MEST) (No. 2010-0015611).
ing and scheduling problems that are not considered in this paper
such as person-minutes on the bus (which can be determined
when a bus trip is constructed) and work-load balancing among References
the buses. Thus, our claim should be interpreted with caution.
Bodin, L.D., 1975. A taxonomic structure for vehicle routing and scheduling
problems. Computers and Urban Society 1, 11–29.
Bodin, L.D., Berman, L., 1979. Routing and scheduling of school buses by computer.
6. Conclusions Transportation Science 13 (2), 113–129.
Braca, J., Bramel, J., Posner, B., Simchi-Levi, D., 1997. A computerized approach to the
New York City school bus routing problem. IIE Transactions 29, 693–702.
This paper introduced a school bus scheduling problem wherein Carraresi, P., Gallo, G., 1984. Network models for vehicle and crew scheduling.
trips for each school are given. A trip has its start bus stop, duration European Journal of Operational Research 16, 139–151.
B.-I. Kim et al. / European Journal of Operational Research 218 (2012) 577–585 585

Desaulniers, G., Lavigne, J., Soumis, F., 1998. Multi-depot vehicle scheduling Löbel, A., 1998a. Optimal Vehicle Scheduling in Public Transit. Shaker Verlag,
problems with time windows and waiting costs. European Journal of Aachen.
Operational Research 111, 479–494. Löbel, A., 1998b. Vehicle scheduling in public transit and Lagrangean pricing.
Desrosiers, J., Ferland, J.A., Rousseau, J.M., Lapalme, G., Chapleau, L., 1981. An Management Science 44, 1637–1649.
overview of a school busing system. In: Jaiswal, N.K. (Ed.), Scientific Newton, R.M., Thomas, W.H., 1974. Bus routing in a multi-school system.
Management of Transport Systems. North-Holland, Amsterdam, pp. 235–243. Computers and Operations Research 1 (2), 213–222.
Desrosiers, J., Ferland, J.A., Rousseau, J.M., Lapalme, G., Chapleau, L., 1986a. Orloff, C.S., 1976. Route constrained fleet scheduling. Transportation Science 10 (2),
TRANSCOL: A multi-period school bus routing and scheduling system. TIMS 149–168.
Studies in the Management Sciences 22, 47–71. Papadimitriou, C.H., Steiglitz, K., 1998. Combinatorial Optimization: Algorithms and
Desrosiers, J., Soumis, F., Desrochers, M., Sauvé, M., 1986b. Methods for routing with Complexity. Dover, New York.
time windows. European Journal of Operational Research 23 (2), 236–245. Park, J., Kim, B., 2010. The school bus routing problem: A review. European Journal
Fügenschuh, A., 2009. Solving a school bus scheduling problem with integer of Operational Research 202 (2), 311–319.
programming. European Journal of Operational Research 193 (3), 867–884. Pepin, A.-S., Desaulniers, G., Hertz, A., Huisman, D., 2009. A comparison of five
Gavish, B., Schweitzer, P., Shlifer, E., 1978. Assigning buses to schedules in a heuristics for the multiple depot vehicle scheduling problem. Journal of
metropolitan area. Computers and Operations Research 5, 129–138. Scheduling 12, 17–30.
Graham, D., Nuttle, H.L.W., 1986. A comparison of heuristics for a school bus Spada, M., Bierlaire, M., Liebling, T.M., 2005. Decision-aiding methodology for the
scheduling problem. Transportation Research B 20 (2), 175–182. school bus routing and scheduling problem. Transportation Science 39, 477–
Hadjar, A., Soumis, F., 2009. Dynamic window reduction for the multiple depot 490.
vehicle scheduling problem with time windows. Computers and Operations Stachniss C. C-implementation of the Hungarian Method. Available online at:
Research 36, 2160–2172. <http://www.informatik.uni-freiburg.de/stachnis/misc.html> (accessed 1
Hadjar, A., Marcotte, O., Soumis, F., 2006. A branch-and-cut algorithm for the March 2006).
multiple depot vehicle scheduling problem. Operations Research 54 (1), 130– Swersey, A.J., Ballard, W., 1984. Scheduling school buses. Management Science 30
149. (7), 844–853.
ILOG Inc. ILOG CPLEX 11.0 Documentation, 2007.

You might also like