A unified framework for deterministic time constrained vehicle routing and crew scheduling problems
-
Upload
independent -
Category
Documents
-
view
3 -
download
0
Transcript of A unified framework for deterministic time constrained vehicle routing and crew scheduling problems
1 A UNIFIED FRAMEWORK FOR
DETERMINISTIC TIME CONSTRAINED VEHICLE
ROUTING AND CREW SCHEDULING PROBLEMS
Guy Desaulniers1;5, Jacques Desrosiers2;5, Irina Ioachim3;5
Marius M. Solomon4;5, Francois Soumis1;5, and Daniel Villeneuve1;5
1�Ecole Polytechnique, P.O. Box 6079
Station \Centre-Ville", Montr�eal, Canada, H3C 3A72�Ecole des Hautes �Etudes Commerciales
3000 Chemin de la Cote-Ste-Catherine, Montr�eal, Canada, H3T 2A73Universit�e Laval, Qu�ebec, Canada, G1K 7P4
4Northeastern University Boston, U.S.A., 021155GERAD
Abstract: The need for an integrating framework for vehicle routing and crew scheduling
problems has been apparent for some time. While several attempts have been made in this
direction, they have stopped short of formally modeling several important practical complex-
ities.
This paper presents a more general model than previously considered which integrates all
the di�erent time constrained vehicle routing and crew scheduling problem types examined
so far in the literature. This enables the reader to understand the common structure of these
problems. It also allows to perceive the relations between the various problems, the di�erent
forms of the model used previously in the literature, and assorted applications across a uni�ed
formulation.
To solve the multi-commodity problems in this class, the paper presents a branch-and-
bound framework where the lower bounds are derived by using a decomposition approach.
We focus on an extension of the Dantzig-Wolfe decomposition principle and establish that
this is valid even for nonlinear objective functions and constraints. We also illustrate that
it embeds the column generation-based methods previously suggested in the literature as
special cases. The branching module used to obtain integer solutions compatible with column
generation is more general, but yet simpler than other prior strategies. Finally, we examine the
constrained Shortest Path Problems that appear at the subproblem level of the decomposition.
The paper permits to see the variety of specialized dynamic programming algorithms that
have been developed to solve these and more general single commodity problems and the
aspects which have not yet received attention.
1
2
1.1 INTRODUCTION
Time constrained routing and scheduling is of signi�cant importance across land, air and
water transportation. These problems are also encountered in a variety of manufacturing,
warehousing and service sector environments. Their mathematical complexity and the mag-
nitude of the potential cost savings to be achieved by utilizing O.R. methodologies have
attracted researchers since the early days of the �eld. Witness to this are the pioneering
e�orts of Dantzig and Fulkerson (1954), Ford and Fulkerson (1962), Appelgren (1969, 1971),
Levin (1971), Madsen (1976) and Orlo� (1976). Much of the methodology developed has
made extensive use of network models and algorithms.
The eighties mark a turning point in this �eld, as important new developments have lead
to the solution of more general and realistic problems. These advances were captured in a
number of extensive and insightful surveys. Beginning with Magnanti (1981), several authors
including Bodin et al. (1983), Carraresi and Gallo (1984), Solomon and Desrosiers (1988),
Desrochers et al. (1988), Laporte (1992) and Fisher (1995) have provided timely reviews
of the �eld. Two areas that have greatly bene�ted from these developments are urban
mass transit and the airline industry. The proceedings of the workshops on computer-aided
transit scheduling (see, for example, Desrochers and Rousseau 1992 and Daduna, Branco and
Paix~ao 1995), those of the AGIFORS meetings, and the surveys conducted by Etschmaier
and Mathaisel (1984, 1985) highlight the spectacular progress made in these contexts.
These achievements have fueled an even stronger interest in vehicle eet planning and
crew scheduling problems in the nineties. This has been re ected by a large number of
articles dedicated to the subject. While most of them have been covered in the recent
comprehensive survey conducted by Desrosiers et al. (1995), several notable advances have
since been reported in the airline context. These concern eet applications - Hane et al.
(1995), Desaulniers et al. (1997b) and Gu et al. (1994); crew applications - Barnhart, Hatay
and Johnson (1995), Barnhart et al. (1994a), Ho�man and Padberg (1993), Graves et al.
(1993), Wedelin (1995) and Desaulniers et al. (1997a); rostering applications - Gamache
and Soumis (1997), Gamache et al. (1997a), Gamache et al. (1997b) and Ryan (1992); and
day-to-day operations - Stojkovi�c, Soumis and Desrosiers (1997). Additional very recent
developments will be presented in later sections.
The need for an integrating framework for vehicle routing and crew scheduling prob-
lems has been apparent for some time. Several attempts have been made in this direction.
The �rst descriptive taxonomy has been proposed by Bodin and Golden (1981). Later,
Desrochers, Lenstra and Savelsbergh (1990) have suggested a formal classi�cation scheme.
Recently, Desrosiers et al. (1995) have introduced the �rst general model for vehicle routing
and crew scheduling problems. While it encompasses a variety of real-world environments,
it stops short of modeling several important practical complexities.
This paper provides important contributions on both the modeling and algorithmic di-
mensions. On the modeling level, it presents a more general model than Desrosiers et al.
(1995) which integrates all the di�erent time constrained vehicle routing and crew schedul-
ing problem types examined so far. In particular, it includes all the deterministic problems
classi�ed by Desrochers, Lenstra and Savelsbergh (1990). The model extends well-known
generic formulations to allow the modeling of all real-world circumstances encountered to
date in this environment. In addition, it enables the reader to understand the common
structure of time constrained problems. It also allows to perceive the relations between
the various problems, the di�erent forms of the model used previously in the literature,
and assorted applications across a uni�ed formulation. This �nally permits the reader to
remark the diversity of specialized algorithms which have been designed to solve these, and
especially to comprehend the di�culties inherent in certain modeling aspects.
A UNIFIED FRAMEWORK... 3
At the algorithmic level, the paper presents a branch-and-bound framework to solve the
nonlinear multi-commodity network ow models in this class. It shows that a variety of
strategies and algorithms can be utilized for the computation of lower bounds and for devis-
ing branching schemes. The lower bounds are derived by using a decomposition approach.
We focus on an extension of the Dantzig-Wolfe decomposition principle and establish that
this is valid even for nonlinear objective functions and constraints. We also illustrate that
it embeds, as special cases, the column generation-based methods using Set Partitioning
formulations previously suggested in the literature. The branching module used to obtain
integer solutions compatible with column generation is more general, but yet simpler than
other prior strategies. Finally, we examine the constrained Shortest Path Problems that
appear at the subproblem level of the decomposition. The paper permits to see the variety
of specialized dynamic programming algorithms that have been developed to solve these
and more general single commodity problems and some of the aspects which have not yet
received attention.
1.2 RELATIONS BETWEEN TIME CONSTRAINED PROBLEMS
The formulations presented in this section model various types of vehicle routing and crew
scheduling problems. They all have an underlying time-space network structure. The tasks
to be covered are associated with nodes, which in turn represent customers to service, sites
to visit or activities to perform (e.g., ight legs). The arcs represent inter-task activities such
as traveling and deadheading. Starting from the Shortest Path Problem with time windows,
we gradually add practically important constraints to model more complex problems such
as the Vehicle Routing Problem with Time Windows (VRPTW) and its extensions involv-
ing pickup and delivery requests, precedence constraints and nonlinear objective functions.
This hierarchical model construction establishes clear relations among the various time con-
strained routing and scheduling problems. It also leads to a uni�ed formulation given in
Section 1.3.
1.2.1 The VRPTW and Related Problems
Let G = (V;A) be a directed graph, where V is the node set and A is the arc set. A time
window [ai; bi], i 2 V is associated with each node. Each arc (i; j) 2 A is characterized by a
real cost cijand a positive duration t
ij, and it satis�es the feasibility condition a
i+ t
ij� b
j.
We assume that the service time at node i is included in the time value tijand that waiting
is allowed before the start of a time window. The set of nodes V is composed of N [ fo; dg,where N consists of nodes that can be visited on paths originating at the source node o and�nishing at the sink node d.
Shortest Path Problems with Time Windows: They constitute the backbone of the
problem structures to be discussed as they are embedded in all time window constrained
routing and scheduling problems. We begin by providing a nonlinear formulation for the El-
ementary Shortest Path Problem with Time Windows (ESPTW). Recall that an elementary
path is a path without cycles. This problem involves binary ow variables Xij, (i; j) 2 A
which are equal to 1 for the arcs in the solution path and 0 otherwise, and time variables
Ti, i 2 V which represent the start of service at node i. Formally, ESPTW seeks to
MinimizeX
(i;j)2A
cijXij
(1)
4
subject to:Xj:(o;j)2A
Xoj=X
i:(i;d)2A
Xid= 1 ; (2)
Xj:(i;j)2A
Xij�X
j:(j;i)2A
Xji= 0 ; 8 i 2 N (3)
Xij(Ti+ t
ij� T
j) � 0 ; 8 (i; j) 2 A (4)
ai� T
i� b
i; 8 i 2 V (5)
Xijbinary; 8 (i; j) 2 A : (6)
The objective function (1) minimizes the sum of the arc costs. Constraints (2){(3) de�ne
the classical network ow constraints for a path originating at source node o and ending at
sink node d. The nonlinear constraints (4) express the compatibility requirements between
ow and time variables. Their structure is very close to the usual complementary slackness
conditions for linear programs. Finally, the time window constraints are given by (5), while
constraints (6) impose binary values for the ow variables.
The ESPTW is NP-hard as it includes the binary and the classical Knapsack Problems
as special cases. Negative cost cycles render the ESPTW NP-hard in the strong sense (Dror
1994). Hence, the literature has focused on its relaxation, the Shortest Path Problem with
Time Windows (SPTW), which allows for multiple visits at the same node. Even though
a node may be visited several times, the time window constraints and the positive arc
durations tij
guarantee the �niteness of paths. Indeed, as any cycle will have a positive
duration, the network can be transformed into an acyclic time-oriented network by creating
multiple copies of each original node that have disjoint time windows. Hence, a path in the
new network may visit several copies of an original node, but at di�erent times. The node
copies are formally described in Section 1.2.2. Therefore, the SPTW is an ESPTW on an
acyclic underlying network, as is the case for Knapsack Problems. Several e�cient pseudo-
polynomial dynamic programming algorithms have been proposed to solve this NP-hard
problem in Desrosiers, Pelletier and Soumis (1983) and in Desrochers and Soumis (1988a,
1988b). These algorithms can be accelerated through data preprocessing (i.e., a priori time
window reduction) as described in Desrosiers et al. (1995). When ai= b
ifor all i 2 V ,
both the ESPTW and the SPTW reduce to a classical Shortest Path Problem on an acyclic
graph, denoted SPA, which can be solved in polynomial time (Fulkerson 1972) for any real
arc cost values.
We consider next the inclusion of vehicle capacity constraints in the ESPTW and the
SPTW and denote the resulting Shortest Path Problems with time windows and capacity
restrictions by ESPTWQ and SPTWQ, respectively. In order to formulate the vehicle ca-
pacity constraints, let Q denote the capacity, li, i 2 V the demand at node i and L
i, i 2 V
the load variables representing the accumulated vehicle load at node i. Without loss of
generality, let lo= l
d= 0. Given that the arcs (i; j) with l
i+ l
j> Q have been removed
from the arc set A, the additional capacity constraints can be written as:
Xij(L
i+ l
j� L
j) � 0 ; 8 (i; j) 2 A ; (7)
li� L
i� Q ; 8 i 2 V : (8)
Even though relations (7) can be written as equalities, we present them in inequality format
to emphasize their similarity to relations (4). As previously, the elementary path version
ESPTWQ is NP-hard in the strong sense, while a pseudo-polynomial dynamic programming
algorithm for SPTWQ is described in Desrochers (1986).
A UNIFIED FRAMEWORK... 5
The Traveling Salesman Problem with Time Windows (TSPTW): The ESPTW is
a relaxation of the TSPTW. Indeed, by imposing the additional constraints:
Xj:(i;j)2A
Xij= 1 ; 8 i 2 N (9)
on the ESPTW model (1){(6), the resulting model is a TSPTW. It represents �nding a least
cost path satisfying the time windows and visiting each node of the network exactly once.
Solution techniques based on dynamic programming have been proposed for this type of
problem by Baker (1983), Mingozzi, Bianco and Ricciardelli (1993), Christo�des, Mingozzi
and Toth (1981), Dumas et al. (1995) and Psaraftis (1980, 1983). These have performed well
whenever the time windows were relatively narrow. An easy case of this problem is obtained
when the width of the time windows is bounded by a constant value which is independent
of the problem size; for this case, G�elinas and Soumis (1997) has proposed a dynamic pro-
gramming algorithm of polynomial complexity. Additionally, if all time windows reduce to
a �xed time-tabled schedule, i.e., ai= b
ifor all i 2 V , and if the problem is feasible, then
the unique solution path simply visits all nodes in increasing time order. Finally, in the
presence of capacity constraints, there is no need to introduce a TSP type model since the
capacity requirements will be satis�ed ifP
i2Vli� Q and this can be veri�ed a priori.
The Vehicle Routing Problem with Time Windows (VRPTW): The TSPTW for-
mulation given by (1){(6) and (9) can be extended to the Multiple Traveling Salesman
Problem with Time Windows, usually denoted m-TSPTW. The aim of the m-TSPTW is to
cover a set of tasks exactly once using at most m minimum cost itineraries. To formulate
this problem, constraints (2) are replaced by:
Xj:(o;j)2A
Xoj=X
i:(i;d)2A
Xid� m : (10)
The single depot, homogeneous vehicle eet VRPTW model is further obtained by adding
the capacity constraints (7){(8) to thism-TSPTW formulation (see Kolen, Rinnooy Kan and
Trienekens 1987, Desrochers, Desrosiers and Solomon 1992, Fisher, J�ornsten and Madsen
1997, Kohl and Madsen 1997).
For the multiple-depot, heterogeneous vehicle eet version of the VRPTW, we present
a multi-commodity type model. To account for vehicles of di�erent types and di�erent
depot locations, each vehicle de�nes a speci�c commodity. Let K be the set of vehicles,
with jKj = m, and associate with each of them a graph Gk = (V k; Ak). Let V k = Nk [
fo(k), d(k)g, where o(k) and d(k) denote the source and sink depots corresponding to
the initial and �nal locations of vehicle k, and Nk its restricted set of nodes such that
N = [k2KN
k. Assume next that arcs (o(k); d(k)) with zero cost and duration are included
in Ak to account for unused vehicles. Finally, to consider the individual commodities, all
variables and parameters of the previous formulation are indexed by k, except for the nodedemand parameters l
i, for i 2 V k, k 2 K.
Then, the formulation is as follows:
MinimizeXk2K
X(i;j)2Ak
ckijXk
ij(11)
subject to:
Xk2K
Xj:(i;j)2Ak
Xk
ij= 1 ; 8 i 2 N (12)
6
Xj:(o(k);j)2Ak
Xk
o(k);j =X
i:(i;d(k))2Ak
Xk
i;d(k) = 1 ; 8 k 2 K (13)
Xj:(i;j)2Ak
Xk
ij�
Xj:(j;i)2Ak
Xk
ji= 0 ; 8 k 2 K; 8 i 2 Nk (14)
Xk
ij(T ki+ tk
ij� T k
j) � 0 ; 8 k 2 K; 8 (i; j) 2 Ak (15)
aki� T k
i� bk
i; 8 k 2 K; 8 i 2 V k (16)
Xk
ij(Lk
i+ l
j� Lk
j) � 0 ; 8 k 2 K; 8 (i; j) 2 Ak (17)
li� Lk
i� Qk ; 8 k 2 K; 8 i 2 V k (18)
Xk
ijbinary; 8 k 2 K; 8 (i; j) 2 Ak : (19)
Constraints (13){(19) are separable by vehicle and de�ne a SPTWQ structure for each
index k 2 K. Linking constraints (12) ensure that each node is visited exactly once, and
hence assigned to a single vehicle, while the objective function (11) minimizes the total arc
cost. Note that if several vehicles of the same type are located at the same depot, it is
more convenient to use a single commodity for all these vehicles. Nevertheless, the above
formulation is general enough for practical applications requiring speci�c initial and �nal
conditions for each vehicle, situations that may occur in an operating rather than a planning
mode (for example, see Stojkovi�c, Soumis and Desrosiers 1997).
Other formulations can be given for the VRPTW. For example, Fisher (1994) exploits a
tree structure for the classical Vehicle Routing Problem and extends it to time constrained
routing problems. The capacity, the time windows and the constraints requiring that each
customer be visited once are dualized to obtain a Lagrangean problem that provides lower
bounds in a branch-and-bound algorithm.
Consider now some special cases of formulation (11){(19). First, the multiple-depot,
heterogeneous vehicle eet m-TSPTW is obtained by eliminating the capacity constraints
(17){(18). Second, the Multiple Depot Vehicle Scheduling Problem (see Fischetti and Toth
1989, Ribeiro and Soumis 1994), denoted by MDVSP, where the vehicles have to be assigned
to a set of �xed time-tabled tasks, is obtained by removing the time and capacity constraints
(15){(18). Even though the resulting commodity networks are acyclic for all k 2 K and
a SPA structure is embedded into the MDVSP formulation, the MDVSP remains an NP-
hard problem (Carraresi and Gallo 1984). However, its corresponding single depot version,
namely the SDVSP, turns out to be a classical transportation problem solvable in polynomial
time. For a specialized quasi-assignment algorithm, see also Paix~ao and Branco (1987).
The simpli�ed MDVSP version requiring only the minimization of the number of routed
vehicles reduces to the SDVSP since the costs are independent of the depot locations. For
a complexity analysis of these types of models in the context of aircraft eet assignment
problems, the reader is referred to the work of Gu et al. (1994).
1.2.2 Extensions
In this section we present �ve extensions to the previous formulations which model addi-
tional problem features. Time and capacity are often referred to as constrained resources
(see Desrosiers et al. 1995) and the �rst extension concerns models which require more than
two resources. The second introduces new types of single path constraints, while the third
is used to model multiple path linking constraints in terms of ow and resource variables.
The fourth extension concerns new forms of the objective function while soft time windows
are examined in the last one.
A UNIFIED FRAMEWORK... 7
Multiple Resource Problems: Several resources, other than time and capacity, may be
speci�ed for a given problem. For example, crew scheduling problems in urban transit, rail
or airline contexts involve many other resource restrictions stemming from the respective
collective agreement speci�cations. Let Rk represent the resource set for commodity k,k 2 K. Several parameters and problem variables are resource dependent. Thus, let T kr
i2
[akri; bkri] denote the resource variable specifying the value of resource r 2 Rk accumulated
at node i 2 V k on commodity network k and let tkrij
be the consumption of that resource on
the arc (i; j) 2 Ak. When replacing the time and capacity constraints (15){(18) by the set
of resource constraints:
Xk
ij(T kri
+ tkrij� T kr
j) � 0 ; 8 k 2 K; 8 r 2 Rk; 8 (i; j) 2 Ak (20)
akri� T kr
i� bkr
i; 8 k 2 K; 8 r 2 Rk; 8 i 2 V k; (21)
we obtain a formulation of the Multiple Traveling Salesman Problem with Resource Con-
straints (m-TSPR). For m = 1, one can easily derive the Traveling Salesman Problem
with Resource Constraints (TSPR). Similarly, the resource constrained Shortest Path Prob-
lems ESPR and SPR can be obtained as extensions of the ESPTWQ and SPTWQ. The
SPR is NP-hard and the pseudo-polynomial dynamic programming algorithm described in
Desrochers (1986) can be used for its solution. Note that in most crew scheduling appli-
cations, the underlying networks Gk are acyclic, since the schedules are requested for �xed
time-tabled tasks. In such cases, the ESPR and SPR are equivalent as the solution of the
latter problem directly provides an elementary path.
The relations between all previous problem types are illustrated in Figure 1.1. The �rst
row depicts time constrained Shortest Path Problems. The second row contains only two
single-vehicle TSP type problems. Finally, the last two rows illustrate multi-vehicle traveling
salesman problems with side constraints involving single/multiple depots and a homoge-
neous/
heterogeneous vehicle eet. Acronyms in italics denote problems solvable in polynomial time
(the SPA and SDVSP), while the problems ESPTW, ESPTWQ, ESPR, TSPTW, TSPR,
MDVSP, m-TSPTW, VRPTW and m-TSPR are NP-hard in the strong sense. Pseudo-
polynomial algorithms have been developed for three NP-hard time constrained Shortest
Path Problems on acyclic graphs, namely the SPTW, SPTWQ and SPR, which are written
in parenthesis in Figure 1.1. Arrows from left to right and from top to bottom portray an
increasing set of constraints.
Single Path Constraints: The resource constraints (20){(21) are called single path con-
straints because they are related to the feasibility of a single path, i.e., to a single commodity
k 2 K. Other types of single path constraints have been utilized in the literature and we
chose two important examples to discuss next. The �rst arises in pickup and delivery prob-
lems. The second is introduced to partially, or completely, eliminate cycles in non-elementary
shortest path problems. Finally, drawing from these examples, we propose a general form
of such single path constraints.
Consider the following pickup and delivery problem for which a set of transportation
requests has been speci�ed in advance. Each transportation request has two associated
nodes, one for the pickup and the other for the delivery. Without loss of generality, we
can assume that pickup and delivery nodes are di�erent from the depot nodes. Let N =
NP [ ND, where NP denotes the set of pickup nodes and ND denotes the set of delivery
nodes, with jNP j = jNDj = n. Next, for i 2 NP , let n + i 2 ND denote the associated
delivery node. Time windows and demands are speci�ed for all the nodes. Pickup nodes
have positive demands li, delivery nodes have negative demands l
n+i = �li, i 2 NP and,
8
SPAESPTWQ
( SPTWQ )
SDVSP
Homogeneous fleet
VRPTWSingle depot
VRPTWMultiple depots
Heterogeneous fleet
MDVSP
ESPTW
( SPTW )
TSPTW
ESPR
( SPR )
TSPR
Homogeneous fleet
Multiple depots
Heterogeneous fleet
Homogeneous fleet
Single depot
Multiple depots
Heterogeneous fleet
Single depot
m - TSPTW
m - TSPTW
m - TSPR
m - TSPR
Figure 1.1 Relations between Time Constrained Problems
without loss of generality, we assume that lo= l
d= 0. Vehicles have limited capacities, Qk,
k 2 K. Finally, let Nk = NPk [ NDk and let V k = Nk [ fo(k); d(k)g be the node set of
vehicle (i.e. commodity) k.The aim of the problem is to �nd a minimum cost assignment for the vehicles in set
K which respects the time windows, the vehicle capacities and services all requests. In
addition to the time window and capacity constraints of the VRPTW formulation (11){
(19), two additional single path constraints characterize this pickup and delivery problem:
the coupling of and the precedence relation between the pickup and delivery nodes i and n+iof the same request. These constraints can be written as follows (Solomon and Desrosiers
1988):
Xj:(i;j)2Ak
Xk
ij�
Xj:(j;n+i)2Ak
Xk
j;n+i = 0 ; 8 k 2 K; 8 i 2 NPk (22)
T ki+ tk
i;n+i � T kn+i � 0 ; 8 k 2 K; 8 i 2 NPk : (23)
The coupling constraints (22) ensure that the pickup and delivery nodes corresponding to
each request are both visited by the same vehicle, while the precedence constraints forcing
each pickup to occur before the respective delivery are expressed by (23).
Relations (22){(23) together with the VRPTW formulation (11){(19) provide a for-
mulation for the Vehicle Routing Problem with Time Windows, Pickups and Deliveries
(VRPTWPD). To eliminate redundancy, the covering constraints (12) and the capacity lim-
its (18) need only be imposed for pickup nodes i 2 NP and i 2 NPk, respectively. Form = 1,
we derive the single vehicle version (TSPTWPD) which can be e�ciently solved optimally
A UNIFIED FRAMEWORK... 9
by dynamic programming whenever the time or capacity windows are relatively narrow
(Desrosiers, Dumas and Soumis 1986). Obviously, the Shortest Path Problems ESPTWPD
and SPTWPD can be similarly obtained as extensions of the ESPTWQ and SPTWQ, re-
spectively. An optimal dynamic programming algorithm for the SPTWPD is provided in
Dumas, Desrosiers and Soumis (1991).
The second example of additional single path constraints are the cycle elimination con-
straints. When negative cost cycles are present in the network, several copies of a task node
can be created in order to eliminate the cycles. These copies have disjoint time windows
obtained by partitioning the original time windows. Let now w 2 N represent a task to be
covered, and COPY k(w) denote the set of copy nodes of task w in Gk. There are at most
bkw� ak
w+ 1 such copies if the time related problem data is integer. To eliminate 2-cycles,
that is, path segments of the form i1 ! j ! i2 with i1; i2 2 COPY k(w), we must add the
following constraints to the path structure (13){(19):
Xi2COPY k(w)
(Xk
ij+Xk
ji) � 1 ; 8 k 2 K; 8 w; j 2 Nk : (24)
Appending these constraints to a resource constrained shortest path problem formulation
will help reduce the gap between the solution of the respective Shortest Path Problem and the
corresponding elementary Shortest Path Problem. Several papers report on algorithms and
results obtained by using this type of relations, such as Kolen, Rinnooy Kan and Trienekens
(1987), Desrochers, Desrosiers and Solomon (1992) and Kohl and Madsen (1997) for the
SPTWQ and Houck et al. (1980) for the classical Traveling Salesman Problem.
To achieve complete cycle elimination and to provide a formulation for the ESPTW on
the augmented network, created by adding all necessary node copies, the following stronger
constraint set must be satis�ed:Xi2COPY k(w)
Xj:(i;j)2Ak
Xk
ij� 1 ; 8 k 2 K; 8w 2 Nk : (25)
The use of the augmented network forces other constraints to be modi�ed accordingly. For
example, for the task covering constraints, relations (12) must be replaced by bundle type
constraints over the copies of an original task-node:
Xk2K
Xi2COPY k(w)
Xj:(i;j)2Ak
Xk
ij= 1 ; 8 w 2 N : (26)
Note that due to the computational burden involved, no e�cient algorithms using this type
of cycle elimination constraints have been developed to date.
From the above examples we can develop a general form of these single path constraints
that we give next. Let Lk, indexed by l, denote the set of single path constraints other than
the resource constraints (20){(21) and the usual ow conservation equations (13){(14). Let
dkrli
and dkl;ij
denote the coe�cients of the resource and ow variables, respectively, and dl
the right hand side value. General single path constraints can then be expressed as:
X(i;j)2Ak
dkl;ij
Xk
ij+Xi2V k
Xr2Rk
dkrliT kri
� dl; 8 k 2 K; 8 l 2 Lk : (27)
The ow variables permit these constraints to embed the cycle elimination constraints (24),
(25) and the coupling constraints (22), while the time variables allow constraints (27) to con-
tain the precedence constraints (23) as a special case. Other types of precedence relations
such as those required in Mingozzi, Bianco and Ricciardelli (1993) for TSP type problems
10
can be modelled using these general single path constraints. Finally, note that constraints of
the same form as (27) were obtained by several authors when linearizing the compatibility
constraints between the ow and resource variables (20).
Multiple Path Linking Constraints: The third extension focuses on constraints involv-
ing several commodities k 2 K, called linking constraints. Let H , indexed by h, denote theset of these additional constraints other than the usual covering constraints (12). Further
letting bkh;ij
denote the coe�cient of variable Xk
ijin constraint h and b
hits right hand side
value, a special case of these constraints can be formulated as:
Xk2K
X(i;j)2Ak
bkh;ij
Xk
ij� b
h; 8 h 2 H : (28)
This type of constraint is needed to model multiple path ow requirements. For example, if
cycle elimination constraints (24) or (25) are not imposed in the path structure corresponding
to each commodity k, then the classical subtour elimination constraints:
Xk2K
Xi2N 0
Xj2NnN 0
Xk
ij� 1 ; 8N 0
� N; 2 � jN 0j � jN j � 1 (29)
can be used. Such constraints have been used by Langevin et al. (1993) for the TSPTW
and by Fisher (1994) and Kohl et al. (1997) for the VRPTW. Additionally, such multiple
path constraints are used to restrict the eet size (see Desrosiers et al. 1995) or the eet
composition in vehicle routing problems, and as base constraints related to the number of
available crews in the airline context.
A more general form of constraints (28) links together the ow and resource variables.
Given that bkrhi
denotes the coe�cient of variable T kri
in constraint h, these constraints canbe written as:
Xk2K
X(i;j)2Ak
bkh;ij
Xk
ij+Xk2K
Xi2V k
Xr2Rk
bkrhiT kri
� bh; 8 h 2 H : (30)
Such constraints are useful in periodic aircraft routing and scheduling with time windows
(Desaulniers et al. 1997b), in airline schedule synchronization (Ioachim et al. 1994) and in
applications with sliding time windows (Ferland and Fortin 1989). The use of constraints
(30) forces the resource window restrictions (21) to be replaced by relations:
akri� T kr
i� bkr
i; 8k 2 K;8r 2 Rk;8i 2 fo(k); d(k)g (31)
akri(X
j:(i;j)2Ak
Xk
ij) � T kr
i� bkr
i(X
j:(i;j)2Ak
Xk
ij) ; 8k 2 K;8r 2 Rk;8i 2 Nk : (32)
For a given k, constraints (32) impose that T kri
= 0, 8 r 2 Rk wheneverP
j:(i;j)2Ak Xk
ij= 0,
k 2 K and i 2 Nk, that is, only the nodes within a single solution path in Gk contribute to
resource coe�cients in the constraint set (30).
Objective Functions: More general objective functions have been reported in the lit-
erature, especially for Shortest Path Problems. Several examples include (33){(36) given
below. Xr2Rk
X(i;j)2Ak
g(T kri)ckijXk
ij; (33)
A UNIFIED FRAMEWORK... 11
where ckijare real parameters, g is a positive non-decreasing function and T kr
iare resource
variables; for example, g(Lki) denotes a function of the total load transported in a vehicle k
when it leaves node i in a VRPTWPD model (Dumas, Desrosiers and Soumis 1991).
X(i;j)2Ak
ckijXk
ij+Xi2V k
Xr2Rk
ckriT kri; (34)
where ckijand ckr
iare real parameters and T kr
iare resource variables. Such an objective func-
tion may be encountered when linking constraints (30) together with (12) are Lagrangean
relaxed. See Desaulniers et al. (1997b) for applications in periodic aircraft routing and
scheduling problems with time windows. When a single resource is used, namely time, an
optimal dynamic programming algorithm for the Shortest Path Problem with Time Win-
dows and Time Costs has been proposed in Ioachim et al. (1997). For the special case of
this problem where the path is �xed, several polynomial algorithms have been suggested to
�nd the optimal schedule by Sexton and Bodin (1985), Sexton and Choi (1986) and Dumas,
Desrosiers and Soumis (1990). Finally, using this type of objective function for the TSPTW,
G�elinas (1997) presents an application to job-shop scheduling.
X(i;j)2Ak
ckijXk
ij+ g(T k1
d(k); : : : ; TkjR
kj
d(k)); (35)
where ckijare real parameters and g is a non-decreasing function of the resource variables
T krd(k)
, r 2 Rk, at the sink node d(k). The cost of a crew duty in bus driver scheduling
problems falls in this category (Desrochers et al. 1992).
X(i;j)2Ak
ckijXk
ij+Xi2V k
Xr2Rk
gkri(T kri)X
j:(i;j)2Ak
Xk
ij; (36)
where ckijare real parameters, gkr
iare non-decreasing functions and T kr
iare resource vari-
ables. An example is provided by cost functions in airline crew pairing problems. Since a
pairing involves several duty periods, the cost may depend on resource values at the end of
each duty period, in addition to depending on resource values at the end of the pairing.
Soft Time Windows: Several papers (Koskosidis, Powell and Solomon 1992, Sexton and
Choi 1986) have considered soft time windows to derive feasible solutions to problems where
hard time windows are too restrictive. In such cases the �xed interval for a given resource
variable T kri
is replaced by a penalty function gkri
which determines the penalty to be
incurred whenever the resource variable is not within a target value range at node i 2 Nk.
For shortest path type problems, if the penalty functions are piecewise linear, an optimal
solution can be found using the algorithm presented in Ioachim et al. (1997). Nondecreasing
functions on nodes and arcs constitute another simple case since the solution is given by the
smallest feasible resource values at each node on a path (see Section 1.4.2). Hence, for an
arbitrary nonlinear penalty function, only the intervals where the function is decreasing pose
a problem. If they are reasonably narrow, these can be approximated by linear functions or
discretized for optimal solutions.
1.3 A UNIFIED FORMULATION
In the previous section, starting from simple scheduling problems we gradually introduced
additional constraints to model more complex situations. In this section we present a for-
mulation which encompasses all these constraints. To describe this model we consider a
12
di�erent type of time-space network where the tasks to be covered are positioned on the
arcs. An arc may represent a single activity or a series of activities. Furthermore, the
same task can appear on several arcs. As examples, consider network representations of
crew pairing problems appearing in airline and urban transit contexts where a task ( ight
leg/trip leg) can be found on several duty arcs (Lavoie, Minoux and Odier 1988, Desrochers
et al. 1992, Desaulniers et al. 1997a). The nodes represent sites at di�erent moments in
time such as the beginning and the end of any activity. The task-on-node problem formula-
tions introduced in Section 1.2 can be transformed into task-on-arc formulations by simply
associating a given task with all the arcs entering the respective task node.
On the one hand, the more general task-on-arc formulation presented next permits to
include in the network model some constraints on the path structure required by an appli-
cation. To do so, it is su�cient to include in the network all the arcs corresponding to the
task sequences satisfying these constraints and to exclude all other arcs covering these same
tasks. On the other hand, in some cases, a large subnetwork derived from path enumeration
can be replaced by an aggregated subnetwork of smaller size which uses less activities by arc
and less intermediate nodes. Examples are provided by the time-line networks used for crew
pairing and aircraft routing applications where the number of arcs becomes linear in terms
of the number of tasks to cover (Levin 1971, Soumis, Ferland and Rousseau 1980, Barnhart
et al. 1994a, and Desrosiers et al. 1995). For each application, the trade o� between path
enumeration and network aggregation is the determining factor for the computational e�-
ciency of the solution algorithms.
Notation and Formulation: Let N , indexed by w, represent the set of tasks to cover andnwthe number of times that task w must be covered. Applications where a task has to be
covered more than once are encountered, for example, in rostering, bidline and locomotive
assignment contexts (see Gamache et al. 1997a, Ziarati et al. 1997). Let again K represent
the set of commodities and Gk = (V k; Ak) be an acyclic network associated with k 2 K,
where V k = Nk [ fo(k); d(k)g is the node set and Ak is the arc set. Note that with the
task-on-arc network representation, nodes in Nk no longer represent tasks to cover, but only
time-space sites. Let further Rk be the set of resources speci�c to commodity k. Using thepreviously introduced ow and resource variables, let Xk = (Xk
ijj (i; j) 2 Ak) denote the
ow variable array, and T k
i= (T kr
ij r 2 Rk), i 2 V k the resource variable arrays. Next, let
akw;ij
designate the binary coe�cient of the ow variable Xk
ij, 1 if arc (i; j) 2 Ak covers task
w and 0 otherwise, for k 2 K. Finally, let S denote a set of additional variables Ystaking
values in [as; bs], for s 2 S. In addition to the notation used in the previous section, new
de�nitions are needed to model the more general constraints of the uni�ed model: T k0d(k)
is
the cost function for commodity k evaluated by using a resource indexed r = 0 in network
Gk, k 2 K; aws, b
hsare the coe�cients of the variable Y
s, s 2 S in the task covering
constraint w 2 N and in the linking constraint h 2 H , respectively; fkrij
is a function used
for the resource extension from node i to node j, (i; j) 2 Ak for resource r 2 Rk and ow of
type k 2 K. The importance and utilization of this type of function is given below.
With this notation, the uni�ed model can be presented as a nonlinear mixed-integer
program:
MinimizeXk2K
T k0d(k) +
Xs2S
csYs
(37)
subject to:
Xk2K
X(i;j)2Ak
akw;ij
Xk
ij+Xs2S
awsYs= n
w; 8 w 2 N (38)
A UNIFIED FRAMEWORK... 13
Xk2K
X(i;j)2Ak
bkh;ij
Xk
ij+Xk2K
Xi2V k
Xr2Rk
bkrhiT kri+Xs2S
bhsYs= b
h; 8 h 2 H (39)
as� Y
s� b
s; 8s 2 S (40)X
j:(o(k);j)2Ak
Xk
o(k);j = 1; 8 k 2 K (41)
Xj:(i;j)2Ak
Xk
ij�
Xj:(j;i)2Ak
Xk
ji= 0; 8 k 2 K; 8 i 2 Nk (42)
Xj:(j;d(k))2Ak
Xk
j;d(k) = 1; 8 k 2 K (43)
Xk
ij(fkrij(T k
i;T k
j)� T kr
j) � 0; 8 k 2 K; 8 r 2 Rk; 8 (i; j) 2 Ak (44)
akri� T kr
i� bkr
i; 8 k 2 K; 8 r 2 Rk; 8 i 2 fo(k); d(k)g (45)
akri(X
j:(i;j)2Ak
Xk
ij) � T kr
i� bkr
i(X
j:(i;j)2Ak
Xk
ij); 8 k 2 K; 8 r 2 Rk; 8 i 2 Nk (46)
X(i;j)2Ak
dkl;ij
Xk
ij+Xi2V k
Xr2Rk
dkrliT kri
� dl; 8 k 2 K; 8 l 2 L (47)
Xk
ijbinary; 8 k 2 K; 8 (i; j) 2 Ak : (48)
The analysis of this formulation focuses on three new aspects: the objective function,
the new variables and the resource extension functions. The objective function (37) seeks
to minimize the total cost incurred. Examples of both linear and nonlinear functions have
been presented in Section 1.2.2. Given the above de�nition of the cost function, its value is
completely computed at the sink node d(k). Therefore, all nonlinearities are moved into the
subproblem structure and are now part of the resource extension functions fk0ij. Additional
aspects of the cost function are discussed in Section 1.4.2.
Several applications use the additional variables Ys, s 2 S, appearing in constraints
(38){(40). In constraint set (38), these may represent slack variables used for task under
or over covering (Barnhart et al. 1994a, Graves et al. 1993, Desaulniers et al. 1997a,
Ziarati et al. 1997) and associated penalty costs may be speci�ed in the objective function.
Constraints of type (39) are a more general version of constraints (28) and (30) which also
involve the additional variables Ys. Consider an example where constraints (28) are used
to control the eet size; one additional variable Yscan be used to represent the number
of vehicles required in a solution. Thus, this variable Yscan be used during the solution
process to impose lower and upper integer bounds on the eet size. As another example,
constraints linking time variables and additional variables Yswere introduced for a weekly
eet assignment problem with ight synchronization constraints in Ioachim et al. (1994).
These variables were used to model special time restrictions stating that each occurrence
of a given origin-destination ight leg had to start at the same time, within a certain time
window, each day of the week. Note that constraints (39) are a more general form of the
covering constraints (38) and, depending on the application, only one of these two sets may
be needed. Finally, constraints (40) give the set of admissible values for the additional
variables for which integrality requirements may also be imposed.
The resource extension function introduced in this formulation leads to a new expression
(44) of the previous resource constraints (20). This function, fkrij(T k
i;T k
j), may be linear
or nonlinear and it may depend of several resources. The particular case involving a single
14
resource variable, that is, fkrij(T kri) = T kr
i+ tkr
ijfor all r 2 Rk, has been discussed in Section
1.2.2. An example of a nonlinear resource extension function is presented next. Other than
(44), the remainder of the constraints were discussed in Section 1.2.
The VRPTW with Simultaneous Pickups and Deliveries: We consider the simulta-
neous pickup and delivery problem (Min 1989) to describe a nonlinear form of a resource
extension function fkrij
dependent of resource vector T k
i. In this problem, vehicles starting
with an unknown load at the source depot must visit nodes having both pickup and delivery
requests. We focus our analysis on the capacity constraints. For this, we de�ne non-negative
load values lPifor pickups and lD
ifor deliveries, for all nodes i 2 N . Two types of resource
variables can be associated with the capacity constraints (see G�elinas 1990 and Halse 1992):
Lki, which denotes the usual load accumulated at the visited pickup nodes from the source
node o(k) up to node i, and MaxLki, which denotes the maximum load carried at some
point by the vehicle since its departure from the source depot up to node i, for all k 2 Kand i 2 Nk. These variables have the following bounds:
lPi� Lk
i� Qk ; 8k 2 K; 8 i 2 Nk (49)
max(lPi; lDi) �MaxLk
i� Qk ; 8 k 2 K; 8 i 2 Nk : (50)
Let fk1ij
and fk2ij
denote the resource extension functions, for the two resources, respec-
tively. The load accumulated in the vehicle at node j is computed using solely the �rst
resource variable:
fk1ij(Lk
i;MaxLk
i) = fk1
ij(Lk
i) = Lk
i+ lP
j; 8 k 2 K ; 8 (i; j) 2 Ak : (51)
However, the maximal load ever accumulated in the vehicle must also account for deliveries.
Hence its resource extension function must depend on both capacity resource variables:
fk2ij(Lk
i;MaxLk
i) = max fLk
i+ lP
j;MaxLk
i+ lD
jg; 8 k 2 K ; 8 (i; j) 2 Ak : (52)
A special case of this problem is the VRPTW with backhauls. Its associated resource
extension function can be easily derived from (51){(52) since the nodes are either pickups
or deliveries. In addition, for simple backhauling where a vehicle �rst performs all the
deliveries before starting to visit the pickup nodes, only one capacity variable is required as
the problem can be modeled as a VRPTW (G�elinas et al. 1995).
For simplicity, we have used the simultaneous pickup and delivery problem to illustrate
the use of resource extension functions dependent of multiple resource variables. However,
these are often encountered for crew scheduling problems arising in airline, urban and rail
transit situations where the cost function depends on several resources. In such cases, the
cost itself can be de�ned as a resource and the incurred cost of a path is evaluated using
resource extension functions.
The above uni�ed model is general enough to include all the deterministic problem types
presented in the classi�cation scheme of Desrochers, Lenstra and Savelsbergh (1990) as spe-
cial cases. It also includes problems for which the solution can be represented as a set of
paths on a graph of all possible states of the commodities. Therefore, applications involving
a Knapsack Problem structure can be modelled by using this uni�ed formulation. Such ap-
plications include the Bin Packing Problem, i.e., the binary Cutting-Stock Problem (Vance
et al. 1994), the Generalized Assignment Problem (Savelsbergh 1993), graph coloring prob-
lems (Mehrorta and Trick 1993), and even the classical Cutting-Stock Problem (Gilmore
and Gomory 1961). This last problem can also be formulated as a Vehicle Routing Problem
in which the vehicles and their capacities correspond to the large rolls to be cut into smaller
A UNIFIED FRAMEWORK... 15
rolls (called items) and their widths, respectively; the customers and their demands corre-
spond to the items and their widths, respectively; and the vehicle routes are the cutting
patterns. These patterns are obtained by solving a Knapsack Problem which is formulated
as a constrained Shortest Path Problem on an acyclic graph with a capacity window on the
sink node. As a further illustration, we next show how a formulation for the VRPTW with
split deliveries can be derived from our model.
The VRPTW with Split Deliveries: In this problem, each node's demand may be sat-
is�ed by one or several partial deliveries performed by di�erent vehicles (Dror and Trudeau
1989). To formulate the problem, consider a set K of vehicles that start at the depot node,
and let again lidenote the demand at node i. Further let resource variable Lk
irepresent the
total load delivered using vehicle k from the depot node up to node i. Additional resourcevariables Dk
iare also needed to designate the quantity (i.e., partial or full delivery) deliv-
ered by vehicle k at node i. The VRPTW formulation (11){(19) can then be modi�ed to
account for split deliveries as follows. The capacity limits (18) need to be replaced by the
two following constraint sets:
0 � Dk
i� l
i(X
j:(i;j)2Ak
Xk
ij) � Lk
i� Qk(
Xj:(i;j)2Ak
Xk
ij) ; 8k 2 K; 8i 2 Nk (53)
0 � Dk
i� l
i� Lk
i� Qk ; 8k 2 K; 8i 2 fo(k); d(k)g; (54)
where, without loss of generality, lo(k) = l
d(k) = 0. Furthermore, the covering constraints
(12) have to be replaced by: Xk2K
Dk
i= l
i; 8 i 2 N : (55)
These constraints ensure that the node demand is completely satis�ed by the sum of the
partial deliveries. Note that constraints (55) are a special case of constraints (39) and that
for this formulation they replace both constraints (38) and (39). Finally, the compatibility
requirements (17) between the ow and resource variables are expressed as:
Xk
ij(Lk
i+Dk
j� Lk
j) � 0 ; 8 k 2 K; 8 (i; j) 2 Ak : (56)
Observe that no such compatibility constraints are necessary between the ow and the
resource representing the quantity Dk
jdelivered by vehicle k at node j since they are given
by Xk
ij(0 �Dk
j) � 0, 8 k 2 K, 8 (i; j) 2 Ak . That is, non-negativity requirements Dk
j� 0
which are already given in the capacity limit constraint set (53){(54). For this problem,
the resource extension functions fkLij
and fkDij
for the total load and the quantity delivered,
respectively, are given by:
fkLij
(Lki; Dk
j) = Lk
i+Dk
j; 8 k 2 K; 8 (i; j) 2 Ak (57)
fkDij
(Dk
i) = 0; 8 k 2 K; 8 (i; j) 2 Ak: (58)
1.4 SOLUTION METHODOLOGY
In this section, we present an approach to solve the uni�ed model (37){(48) for a number
of commodities greater than one. Otherwise, the problem reduces to a TSP type problem
and can be solved using dynamic programming whenever the resource window constraints
are tight enough.
Since the objective function (37) and the constraint sets (41){(48) are separable by com-
modity, the uni�ed model has a block-angular structure with linking constraints (38){(40).
16
Therefore a natural way to solve it is to use a decomposition approach such as Dantzig-Wolfe
decomposition (Dantzig and Wolfe 1960) or Lagrangean Relaxation (see Geo�rion 1974) to
obtain lower bounds to be used within a branch-and-bound framework. Even though these
are equivalent primal and dual decomposition approaches, we have chosen to present an
extension of the former. This is because this column generation type approach is the most
widely encountered methodology in the time constrained vehicle routing and scheduling
literature.
1.4.1 An Extension of the Dantzig-Wolfe Decomposition Principle
In the spirit of the linear programming Dantzig-Wolfe decomposition principle, formulation
(37){(48) is divided into a master problem and a subproblem. The master problem consists
of (37){(40), i.e., the objective function, the covering constraints, the additional multiple
path linking constraints and the constraint sets on the supplementary variables. Note that
the master problem retains all constraints involving more than one commodity. On the other
hand, the subproblem considers a marginal cost function presented later and the remaining
constraints (41){(48). The subproblem is separable by commodity k 2 K and can therefore
be seen as jKj subproblems, one for each commodity. Each of these subproblems is a con-
strained Shortest Path Problem.
Extreme Points of the Subproblem: Since the subproblem's constraints (41){(48) de�ne
a path structure (on an acyclic graph) used to send one ow unit between o(k) and d(k), itsextreme points correspond to elementary paths in Gk and are described by ow and resource
vectors:
(xkp; � k
p) = (xk
ijp; �krip); k 2 K; p 2 k; (i; j) 2 Ak; r 2 Rk ;
where k, indexed by p, de�nes the set of extreme points. Any solution Xk
ijand T kr
isatis-
fying the constraints (41){(48) can then be expressed as a non-negative convex combination
of these extreme points and must consist of binary Xk
ijvalues, i.e.,
Xk
ij=Xp2k
xkijp�kp; 8 k 2 K; 8 (i; j) 2 Ak (59)
Xk
ijbinary; 8 k 2 K; 8 (i; j) 2 Ak (60)
T kri
=Xp2k
�krip�kp; 8 k 2 K; 8 r 2 Rk; 8 i 2 V k (61)
Xp2k
�kp= 1; 8 k 2 K (62)
�kp� 0; 8 k 2 K; 8 p 2 k: (63)
The new variables �kp, k 2 K, p 2 k, are said to be path variables since each of them is asso-
ciated with a path in Gk . Note that, for each k 2 K, there is a path variable corresponding to
the one-arc path between o(k) and d(k) that allows the commodity to be idle. If these emptypath variables were removed, the constraints in set (62) could then be written as inequalities.
Extreme Point Substitution: Substituting (59){(63) in (37){(40) and rearranging the
summation order, the integer master problem is transformed into:
MinimizeXk2K
�k0d(k)p�
k
p+Xs2S
csYs
(64)
A UNIFIED FRAMEWORK... 17
subject to:Xk2K
Xp2k
(X
(i;j)2Ak
akw;ij
xkijp)�kp+Xs2S
awsYs= n
w; 8 w 2 N (65)
Xk2K
Xp2k
(X
(i;j)2Ak
bkh;ij
xkijp+Xi2V k
Xr2Rk
bkrhi�krip)�kp+Xs2S
bhsYs= b
h; 8 h 2 H (66)
as� Y
s� b
s; 8s 2 S (67)X
p2k
�kp= 1; 8 k 2 K (68)
�kp� 0; 8 k 2 K; 8 p 2 k (69)
Xk
ij=Xp2k
xkijp�kp; 8 k 2 K; 8 (i; j) 2 Ak (70)
Xk
ijbinary; 8 k 2 K; 8 (i; j) 2 Ak: (71)
The Master Problem: De�ning new coe�cients as:
ckp= �k0
d(k)p; 8 k 2 K; 8 p 2 k (72)
akwp
=X
(i;j)2Ak
akw;ij
xkijp; 8 k 2 K; 8 p 2 k; 8w 2 N; (73)
bkhp
=X
(i;j)2Ak
bkh;ij
xkijp
+Xi2V k
Xr2Rk
bkrhi�krip; 8 k 2 K; 8 p 2 k; 8 h 2 H; (74)
and substituting them in (64){(66), the master problem can be written as:
MinimizeXk2K
Xp2k
ckp�kp+Xs2S
csYs
(75)
subject to:Xk2K
Xp2k
akwp�kp+Xs2S
awsYs= n
w; 8 w 2 N (76)
Xk2K
Xp2k
bkhp�kp+Xs2S
bhsYs= b
h; 8 h 2 H (77)
as� Y
s� b
s; 8s 2 S (78)
Xp2k
�kp= 1; 8 k 2 K (79)
�kp� 0; 8 k 2 K; 8 p 2 k (80)
Xk
ij=Xp2k
xkijp�kp; 8 k 2 K; 8 (i; j) 2 Ak (81)
Xk
ijbinary; 8 k 2 K; 8 (i; j) 2 Ak: (82)
18
In general, it is not true that binary restrictions on the Xk
ijarc variables can be replaced
by binary restrictions on the �kppath variables. However this statement holds when the coe�-
cients bkhp
are expressed solely in terms of the arc variable values, i.e., bkhp
=P
(i;j)2Ak
bkh;ij
xkijp.
In this case, since the de�nition of the original master problem solution space (37){(40) in-
volves only arc variables, binary requirements on these variables are equivalent to binary
requirements on path variables. Constraints (81) and (82) can therefore be removed.
In the general case, that is, when some coe�cients bkrhi
in (74) are di�erent from zero, the
solution part associated with commodity k may actually be fractional in terms of the path
variables while it corresponds to the same path with di�erent resource values. Hence, the arc
variables take binary values equal to 1 for all arcs in the selected path and 0 otherwise, and
no branching decisions are necessary. The optimal solution in terms of the resource variables
can therefore be computed as a non binary convex combination of the path variables using
relations (61).
An example of this situation is presented in Ioachim et al. (1994) for an aircraft rout-
ing problem that considers the synchronization of ight departures within their respective
time window. The branch-and-bound process is stopped as soon as the arc variables take
binary values even though there still remain fractional-valued path variables. Time variable
optimal values are then derived from (61). It appears that the optimal solutions for some
commodities cannot be obtained as subproblem extreme points.
Objective Function of the Subproblem: To describe the objective function of subprob-
lem k 2 K, let � = f�wj w 2 Ng, � = f�
hj h 2 Hg and = f k j k 2 Kg, be the vectors
of the dual variables associated with constraint sets (76), (77) and (79), respectively. The
reduced cost �ckp(�;�; ) of any path variable �k
pin function of vectors �, � and is given
by:
�ckp(�; �; ) = ck
p�Xw2N
akwp�w�Xh2H
bkhp�h� k
= �k0d(k)p �
X(i;j)2Ak
(Xw2N
akw;ij
�w+Xh2H
bkh;ij
�h)xkijp
�Xi2V k
Xr2Rk
(Xh2H
bkrhi�h)�krip� k:
This relation can then be used to write the objective function of subproblem k in terms
of the original ow and resource variables satisfying (41){(48):
Minimize T k0d(k) �
X(i;j)2Ak
(Xw2N
akw;ij
�w+Xh2H
bkh;ij
�h)Xk
ij�Xi2V k
Xr2Rk
(Xh2H
bkrh;i�h)T kri� k:
(83)
1.4.2 Algorithmic Issues
As described above, the uni�ed model (37){(48) can be transformed into the master problem
(75){(82) and the subproblem (41){(48) and (83). This transformation permits instead of
directly solving the former model, to solve the latter using a branch-and-bound algorithm.
The two key elements in the master problem solution process are the computation of lower
bounds and the selection of branching strategies. Regarding the subproblem solution, we
address special structures for the cost and resource extension functions. Finally, commodity
aggregation for identical subproblems is examined.
A UNIFIED FRAMEWORK... 19
Master Problem Lower Bounds: At each branching node, a lower bound can be found
by solving the linear relaxation (75){(80) of the master problem (75){(82) using a column
generation technique. This consists of alternately solving a restricted linear master problem
and the subproblems until the solution of the latter proves that optimality has been reached
for the former. The role of the restricted linear master problem is to �nd the best solution
to the master problem while considering a relatively small number of variables. Hence, path
variables to be introduced in the restricted master problem are generated as needed. The
dual variables corresponding to this solution are then transferred to the subproblems. The
role of the subproblems is to �nd new path variables with negative reduced costs taking into
account the dual variables provided by the restricted linear master problem. If these exist,
the coe�cient columns associated with a subset of them are generated and transferred to
the restricted linear master problem that will be solved again. If no such path variables
exist, the solution process stops.
The restricted linear master problem is often degenerate in some applications and the
dual simplex method could be used in place of the primal simplex algorithm to accelerate
the solution process. Alternatively, a right hand side perturbation and other anti-cycling
techniques can be used to avoid degeneracy di�culties (see Wolfe 1963, Desrosiers, Soumis
and Desrochers 1984, and Falkner and Ryan 1988). Recent stabilization techniques involving
both perturbation and penalization strategies are described in du Merle et al. (1997) and
Hansen et al. (1997). Interior point methods can also be used to solve the restricted
linear master problem. The analytic center cutting plane method developed by (Go�n and
Vial 1996, Go�n et al.) is compatible with column generation approaches in the sense
that a warm start is possible when new variables are added. This method provides more
stable dual variables than the simplex algorithm (see also du Merle 1995). These methods
have a tendency to provide more stable dual variables. Since the master problem has a
block-angular structure, it can also be solved using specialized solution procedures such as
the generalized upper bounding procedure of Dantzig and Van Slyke (1967). This method
performs all the iterations of the simplex method on a working basis of reduced size. A
detailed description of it, in the context of multi-commodity ow models, is given in Barnhart
et al. (1991).
A lower bound can also be found using Lagrangean Relaxation. In this context, the
Lagrangean relaxed problem corresponds to the subproblem, while the Lagrangean Dual
problem has the same role as the restricted linear master problem in the Dantzig-Wolfe
decomposition. Their essential purpose is to provide dual multipliers for the subproblems. In
a Lagrangean Relaxation approach, the Lagrangean dual can be solved by either subgradient
optimization or by a bundle method. See LeMar�echal (1989) for a general description of the
method, and Kohl and Madsen (1997) for an application of it to the VRPTW. In the latter
case the dual variables are adjusted by quadratic programming. When they are solved to
optimality, these two dual methods produce the same lower bound on the master problem
as the Dantzig-Wolfe decomposition scheme. However, in practice, these dual methods are
stopped early to avoid expensive tailing-o� behavior.
To reduce the tailing-o� e�ect that can occur when using a Dantzig-Wolfe decomposition
or a Lagrangean Relaxation approach, one may want to stop the iterative process before
reaching the optimality criteria. In both cases, given a set of multipliers (�; �; ), a lower
bound for the current branching node is computed as follows (see Lasdon 1970):
LB(�;�; ) =Xw2N
nw�w+Xh2H
bh�h+Xk2K
k +Xk2K
minp2k
�ckp(�; �; )
+X
s2S:�cs>0
as�cs+
Xs2S:�cs<0
bs�cs; (84)
20
where �csdenotes the reduced cost of supplementary variable Y
s. The last two components
of (84) account for the contribution of the supplementary variables to the lower bound. The
reader can also observe that the sum of the �rst two components is equal to the value of
the objective function for the current restricted master problem. Note that this is the usual
lower bound computed in a Lagrangean Relaxation approach since the multipliers will
cancel out between the third and fourth components of (84). At a given branching node,
the best lower bound is computed as the maximum over all the lower bounds obtained at
this node.
When the objective function consists solely in minimizing the number of commodities
used and no supplementary variables are involved in the formulation, the expression of the
lower bound takes a very simple form. Let n be the number of commodities used, zLP
the
objective value of the current restricted master problem and �cmin
the minimum path reduced
cost. Therefore, relation n � zLP
+ jKj�cmin
can be favorably replaced by n � zLP
+ n�cmin
to yield a better valid lower bound:
n � dzLP
=(1� �cmin
)e : (85)
This bounding procedure has been used successfully by Farley (1990) and Vance et al. (1994)
for various cutting stock problems.
A result on the quality of the master problem lower bound has been obtained when the
model reduces to a Set Partitioning Problem. In this case, Bramel and Simchi-Levi (1997)
showed that the relative gap between fractional and integer solutions becomes arbitrarily
small as the number of tasks to cover increases. This could make the branch-and-bound
process more e�cient.
Finally, we emphasize that the solution of a relaxed version of a constrained Shortest Path
Problem does not invalidate the solution process. For example, using the SPTW instead of
the ESPTW as a subproblem (or equivalently, using an expanded acyclic graph) only results
in a deterioration of the master problem lower bound. Columns which contain several copies
of the same tasks may appear in the master problem structure, but the branch-and-bound
decisions and the cutting strategies must eliminate them, as they cannot be part of any
optimal solution.
Branching and Cutting Strategies: Several papers report on the use of column genera-
tion techniques to optimally solve integer programs. Methods �nding k-best solutions wereproposed by Sweeney and Murphy (1979), Hansen, Minoux and Labb�e (1987), Hansen, Jau-
mard and Poggi de Arag~ao (1991, 1992) and Maculan, Michelon and Plateau (1992). The
paper of Holm and Tind (1988) looks in another direction and generalizes the Dantzig-Wolfe
decomposition principle to linear integer programs by means of concave, polyhedral price
functions. This method however requires to solve an integer restricted master program at
each main iteration.
Branch-and-bound, cuts and column generation have been combined several times in
various vehicle routing applications: Desrosiers, Soumis and Desrochers (1984) for the m-
TSPTW, Dumas, Desrosiers and Soumis (1991) for the VRPTWPD, Desrochers, Desrosiers
and Solomon (1992) for the VRPTW, and G�elinas et al. (1995) for the simple backhauling
problem with time windows. Other applications include bus drivers assignment (Desrochers
and Soumis 1989), frame decomposition for telecommunication by satellite (Ribeiro, Minoux
and Penna 1989), urban bus assignment (Ribeiro and Soumis 1994). Recent papers are those
on the binary cutting-stock problems (Vance et al. 1994), the generalized assignment prob-
lem (Savelsbergh 1993), graph coloring problems (Mehrorta and Trick 1993), the airline
crew pairing problem (Desaulniers et al. 1997a), the aircraft routing problem (Desaulniers
et al. 1997b) and the locomotive assignment problem (Ziarati et al. 1997). Vanderbeck and
A UNIFIED FRAMEWORK... 21
Wolsey (1996) presents a general framework which extends a branching scheme proposed by
Ryan and Foster (1981) for the Set Partitioning Problem and additional results reported in
Barnhart et al. (1994b). In this paper, Vanderbeck and Wolsey develop a combined branch-
ing and subproblem modi�cation scheme: branching decisions are taken on the variables of
the column generation master problem while the subproblem necessitates the addition of
new variables and constraints to account for these decisions.
We propose a general and yet simple branching and cutting framework based on ow,
resource or supplementary variables, or on any weighted sum of these variables. When the
uni�ed model (37){(48) is solved by Lagrangean Relaxation (a dual approach), branching
decisions are naturally taken on ow Xk
ij, and when integrality is required, on resource T kr
i
or on supplementary Ysvariables. Flow-based branching decisions occur, for example, in
Fisher (1994) for the classical Vehicle Routing Problem and in Kohl and Madsen (1997) for
the VRPTW. When a Dantzig-Wolfe decomposition approach is applied, i.e., an equivalent
primal approach, the same branching and cutting strategies can be utilized. Furthermore,
designing branching decisions and cutting planes which are based on the original problem
variables becomes crucially important when general integer problems are solved using a
Dantzig-Wolfe decomposition scheme. As shown in Desrosiers et al. (1994), imposing in-
tegrality requirements on the master problem variables does not always result in a valid
formulation.
In our uni�ed model, general strategies based on the original variables are as follows.
On the one hand, if a decision involves more than one commodity, then this multiple path
decision can be written in the form of the linking constraints (39). As previously described,
such a constraint is transferred to constraint set (77) of the master problem, using substi-
tution equations (59) and (61). Through relation (77), the multiplier associated with this
constraint is adequately transferred to the arcs and nodes of the relevant subproblem net-
works as coe�cient for the ow and resource variables. On the other hand, if a decision
involves a single commodity, then it is a single path decision. Such a decision can be re-
stricted to a single subproblem. However, if it modi�es the subproblem structure, a new
specialized algorithm has to be used for solving it. This new algorithm may be one of the
several algorithms presented in Section 1.2 or may yet have to be designed. Alternatively,
any cumbersome single path constraint in set (47) may be left at the master problem level
since it is a special case of a constraint in set (39).
Next, we present several examples of branching and cutting decisions compatible with
the column generation approach proposed to solve the uni�ed model. We �rst present some
special multiple path linking decisions that can be treated at the subproblem level. We then
provide examples of branching decisions and cutting planes to be inserted at the master
problem level. We also give an example of a very strong cutting plane that acts locally at
the subproblem level. Finally, decisions involving resource and supplementary variables are
discussed.
Consider the case where the tasks are represented by nodes and must be covered ex-
actly once. While several other possibilities exist, branching decisions can be taken on the
following linear combinations of ow variables:
Xk
ij; 8 k 2 K and 8 i; j 2 N
Xi;J
=Xk2K
Xj2J:(i;j)2Ak
Xk
ij; 8 i 2 N and 8 J � N
XK
0
i=Xk2K0
Xj:(i;j)2Ak
Xk
ij; 8 i 2 N and 8K 0
� K:
22
Variables Xk
ijand the linear combinations X
i;Jand XK
0
imust take binary values at opti-
mality since the tasks must be covered exactly once. Therefore, any such fractional-valued
binary variable can be set to 0 on one branch and to 1 on the other branch. Fixing Xk
ijat 1
corresponds to consecutively assigning tasks i and j to commodity k. Setting Xi;J
to 1 spec-
i�es that a task of subset J must be performed immediately after task i without identifyingthe commodity. In particular, if J contains a single task, then this task must immediately
follow task i. Finally, �xing XK
0
iat 1 implies that task i must be covered by a commodity of
subset K 0. In particular, if K 0 contains a single commodity, then this commodity must carry
out task i. Branching decisions on these multiple path linking constraints can be taken into
account in the subproblems without changing their mathematical structure. For example,
if variable Xi;fjg is �xed at 1, arcs (i; j0) 2 Ak, such as j0 6= j and (i0; j) 2 Ak such as i0 6= i
are removed from network Gk, 8k 2 K. If variable Xi;fjg is �xed at 0, the arc (i; j) 2 Ak is
removed from network Gk, 8k 2 K.
Branching strategies and cuts involving ow variables cannot always be taken into account
at the subproblem level. For example, the linear combination
XK
0
=Xk2K0
Xj:(o(k);j)2Ak
j 6=d(k)
Xk
o(k);j ; 8K 0� K;
computes the number of commodities used in subset K 0 and must take an integer value at
optimality. When such a variable takes a fractional value xK0
, it can be restricted to take
a value less than or equal to bxK0
c on one branch and greater than or equal to dxK0
e on
the other branch. Alternatively, if the objective function primarily minimizes the number
of commodities used, a cut on this number can be imposed. These decisions are integrated
in constraint set (39). Another example can occur when the objective function consists of
a linear combination of ow variables and the cost coe�cients are integer. In this case, the
following cut can be added to constraint set (39) whenever the objective function takes a
fractional value z: Xk2K
X(i;j)2Ak
ckijXk
ij� dze: (86)
When a lower bound on the cost of paths associated with a single commodity k can be com-puted, then a resulting cut of the same type as (86) can be imposed locally in subproblem k(Gamache et al. 1997b). Even though the previous cut (86) may appear simple, in fact it
possesses the general structure of any cut written as a weighted sum of the ow variables.
Special cases of it are the classical subtour elimination constraints mentioned in Section
1.2.2 and the generalized subtour elimination constraints
Xk2K
Xi2N 0
Xj2NnN 0
Xk
ij� v(N 0) ; 8N 0 � N; 2 � jN 0j � jN j � 1 ; (87)
where v(N 0) is a lower bound on the number of paths required to visit all nodes of N 0. Such
cuts have been used by several authors to solve the VRP (see Laporte 1992 and Fisher 1994)
and its extension involving time windows (see Kontoravdis and Bard 1992 and Kohl et al.
1997).
Branching decisions on resource variables can also be devised when appropriate. For
instance, if an integer resource variable T kri
takes a fractional value �kri, then one may
restrict this variable to be less than or equal to b�kric on one branch and greater than or
equal to d�krie on the other. These decisions can be easily treated in the subproblems. The
application of such strategies to the simple backhauling problem with time windows are
A UNIFIED FRAMEWORK... 23
presented in G�elinas et al. (1995). A stronger type of resource branching decision is derived
for the aircraft schedule synchronization problem described in Ioachim et al. (1994). In this
case, supplementary variables are de�ned as Y r
i=Pk2K
T kri
and when such a variable Y r
i
takes a fractional value yri, then two branches are created as above using byr
ic and dyr
ie.
Since variable Y r
iis linked with a speci�c resource variable r, these decisions are locally
transferred at the subproblem level to all the corresponding T kri
variables, i.e., T kri
� byric
on one branch and T kri
� dyrie on the other. Moreover, this type of decision also applies
for an integer value of Y r
iif yr
iis obtained as a convex combination of several columns with
di�erent �krip
values: the two branches are then given by Y r
i� yr
i� 1 and Y r
i� yr
i.
Branching decisions involving resource variables which cannot be taken into account in the
subproblems can also be devised, since these decisions have the general form of constraints
(39). However, if the objective function of the subproblem did not contain any resource
variable before the addition of this type of constraint, the subproblem structure will be
modi�ed since its objective function will now contain resource variables (see Subproblem
Solution below).
In the uni�ed model (37){(48) where the tasks are represented by arcs on time-space
networks, most of the branching decisions and cuts described above are directly applicable
or need simple adaptations. Taking into account the speci�cs of each application, one can
devise other e�cient branching rules and cuts.
Cost and Resource Extension Functions: In formulation (37)-(48), a resource is used
to compute the cost of a path, hence transferring all the inherent non linearity of the cost
function to the subproblem structure. This paragraph states some desirable properties for
cost functions ck(Xk;T k), k 2 K, expressed in terms of ow and resource arrays Xk =
(Xk
ijj (i; j) 2 Ak) and T k = (T kr
ij i 2 V k; r 2 Rk), as well as for all other resource extension
functions.
For a commodity k 2 K, de�ne the cost function as:
ck(Xk;T k) =X
(i;j)2Ak
gkij(T k
i)Xk
ij+Xi2V k
gki(T k
i)X
j:(i;j)2Ak
Xk
ij; (88)
where we assume, for the next paragraphs, that T k
idoes not include the cost resource
variable T k0i. The function ck(Xk;T k) separates into two parts: the arc and the node
components. If arc (i; j) 2 Akis used on a path (i.e., if Xk
ij= 1), the cost of this arc is
given by gkij(T k
i), a function of the resource vector T k
i. If node i 2 V k is visited on a path
(i.e., ifP
j:(i;j)2Ak
Xk
ij= 1), the cost incurred at this node is evaluated by the function gk
i(T k
i).
Therefore, the cost extension function fk0ij(T k
i;T k
j) on arc (i; j) 2 A
k, can be de�ned as:
fk0ij(T k
i;T k
j) = gk
ij(T k
i) + gk
j(T k
j) (89)
and T k0o(k)
, the cost resource variable, can be set to gko(k)
(T k
o(k)) at the source node o(k) when
the value of all resource variables T kro(k)
have been initialized.
Like the cost extension functions, other resource extension functions fkrij, r 2 Rk, have
been de�ned as functions of the resource variables at both nodes i and j. However, to facil-itate the design of e�cient algorithms for the subproblem solution, all extension functions
should possess the following two desirable properties: all resource extension functions on
arc (i; j) depend solely on the resource vector T k
iand all cost and resource extension func-
tions are non-decreasing. The �rst property permits the computation of intermediate values
24
fkrij(T k
i; �), r 2 Rk, at node j. These values provide lower bounds on the resource variables
T krj. From the second property, it follows that, if the extension on arc (i; j) is feasible (i.e.,
if fkrij(T k
i; �) � bkr
j, 8r 2 Rk), the lowest cost at node j is always attained at the lowest
feasible resource values. Consequently, the values of the resource variables can be computed
as:
T krj
= max fakrij; fkrij(T k
i; �)g; 8r 2 Rk: (90)
The reader can observe that the maximum function of (90) is a composition of two non-
decreasing functions and hence, it is also a non-decreasing function. The resource extension
functions can therefore be directly de�ned as the above right-hand side function. Finally,
note that non-decreasing cost functions are very common in practice and that it su�ces that
this property be shared by the functions gkijand gk
i.
Let � kiand � 0k
ibe two vectors of cost and resource variable values at node i such that
� ki� � 0k
i. When all extension functions fkr
ijpossess the above properties, extending � k
iand
� 0kion arc (i; j) yields two vectors of resource variable values � k
jand � 0k
jat node j (when
both extensions are feasible) that satisfy � kj� � 0k
j. This obvious result is useful in the
subproblem solution process considered in the next paragraph.
Subproblem Solution: In the following, we assume that all extension functions satisfy the
previous two properties and we denote by �ckij(�;�; ) the reduced cost of an arc (i; j) 2 Ak
which is calculated as:
�ckij(�; �; ) = T k0
d(k)I(j) � (
Xw2N
akw;ij
�w+Xh2H
bkh;ij
�h)�Xr2Rk
(Xh2H
bkrhi�h)T kri; (91)
where the indicator function I(j) = 1 if j = d(k), and 0 otherwise. To solve a subproblem
on graph Gk, de�ne additional resource variables �Zki, i 2 V k, each of them representing
the accumulated reduced cost from the source node o(k) up to node i. The reduced cost
extension function �zkij(�) on arc (i; j) 2 Ak is de�ned by:
�zkij( �Zk
i;T k
i;T k
j) = �Zk
i+ �ck
ij(�;�; ); (92)
where �Zko(k)
is initialized at � k.
With this new notation, two features of the subproblem's formulation on Gk are modi�ed.
First, the objective function simply becomes:
Minimize �Zkd(k) (93)
and second, the following set of constraints is added to the initial structure (41){(48):
Xk
ij(zkij( �Zk
i;T k
i;T k
j)� �Zk
j) � 0; 8 (i; j) 2 Ak (94)
�Zko(k) = � k : (95)
In (93), the reduced cost of the shortest path for subproblem k is computed by minimizing
the resource variable �Zkd(k)
at the sink node. Compatibility requirements between ow and
resource variables are given in (94) in a form similar to (44), except that the reduced cost
extension function �zkij
depends on the new resource variables �Zkias well as the original
resource variable vectors T k
iand T k
jat both nodes i and j, respectively. No bounds are
imposed on the reduced cost resource except for the value of �Zko(k)
at the source node which
A UNIFIED FRAMEWORK... 25
is given by (95). Note however that an upper bound of zero can be imposed on �Zkd(k)
since
the subproblem searches for negative reduced cost paths.
Even though the original cost function T kd(k)
and the subproblem objective function �Zkd(k)
are obviously non-decreasing, the reduced cost extension functions �zkijare not necessarily
non-decreasing. Indeed, it depends on the sign of the coe�cients (�Ph2H
bkrhi�h) of the
resource variables appearing in the last term de�ning the reduced cost of an arc (91). If
these coe�cients are all non negative, then the reduced cost extension functions are also non-
decreasing. This condition is satis�ed when no resource variables appear in the multiple path
constraints (39), i.e., bkrhi
= 0, 8 k 2 K; 8 i 2 V k; 8 r 2 Rk and 8 h 2 H .
When labelling algorithms are used to solve resource constrained problems, the labels
require the reduced cost component and an additional component for each resource. Hence,
the SPTW and the TSPTW use two-dimensional labels involving the reduced cost and the
time, while the SPTWQ involves three-dimensional labels. Starting at the sink node, these
algorithms iteratively construct paths in Gk which are stored as labels. Thus, each label
corresponds to a partial path from the origin node o(k) to the current node. It is representedby a vector containing a reduced cost component and jRkj components for the resources.
Let Ek
i= (��k
i; � k
i) denote such a (reduced cost, resource vector)-label corresponding to a
partial path ending at node i. Unlike classical labelling algorithms for unconstrained short-
est path problems, the resource constrained algorithms require to keep at each node all
multi-dimensional labels that are not dominated according to the following de�nition.
De�nition. Label Eidominates label E0
i, denoted E
i� E0
i, if and only if E
i� E0
i.
Under the three above conditions, the label dominance de�nition permits the elimination
of those labels that cannot be present in any optimal shortest path solution.
Proposition. Let Ek
iand E0k
ibe the labels associated with two partial paths from o(k) up
to node i in Gk. Let also Ek
jand E0k
jbe two feasible labels obtained from Ek
iand E0k
i,
respectively, by adding arc (i; j) 2 Ak. If all extension functions fkrij
are non-decreasing and
depend solely on the resource vector T k
i, and all coe�cients bkr
hi
= 0, then Ek
i� E0k
iyields
Ek
j� E0k
j.
Proof: On the one hand, the relation � ki� � 0k
iimplies that:
fkrij(� k
i; �) � fkr
ij(� 0k
i; �) (96)
and
�krj
= max(akrj; fkrij(� k
i; �)) � max(akr
j; fkrij(� 0k
i; �)) = �kr
j; 8 r 2 Rk: (97)
Hence, � kj� � 0k
j. On the other hand, the relation ��k
i� �� 0k
iimplies that:
��kj= �zk
ij(��ki; � k
i; � k
j) � �zk
ij(�� 0ki; � 0k
i; � 0k
j) = �� 0k
j: (98)
Relations (96) and (98) are direct consequences of the non-decreasing property of functions
fkrij, 8 r 2 Rk and �zk
ij, respectively. The second relation (97) also follows from the fact
that all of the reduced cost functions are non-decreasing: therefore, the lowest cost value is
attained for the smallest feasible resource values, i.e., either akrj
or the value computed by
using fkrij(�). Hence, (��k
j; � k
j) � (�� 0k
j; � 0k
j) and the result follows from the label dominance
de�nition.
For decreasing subproblem cost functions such as the ones encountered in applications
involving soft time windows (Koskosidis, Powell and Solomon 1992), ight departure syn-
chronization (Ioachim et al. 1994) or combined inventory and ship routing (Christiansen
26
1996), the label elimination process is more complex. As opposed to the previous case where
a label at node i is extended to at most one label at a successor node j (the new label may
be infeasible), several non-comparable new labels may need to be created when the cost ex-
tension function is decreasing in terms of (increasing) resource values. Ioachim et al. (1997)
provides an optimal algorithm when the �gki, i 2 V k, k 2 K are linear functions. As an
example of a relatively di�cult objective function in (37), consider the minimization of the
total duration (makespan) of all solution pathsXk2K
(T kd(k) � T k
o(k)) : (99)
For each subproblem k 2 K, the cost function involves a decreasing component in terms of
variable T ko(k) within the interval [ak
o(k); bk
o(k)]. However, this objective function is increasing
if the starting time T ko(k) is restricted to be equal to a single time-tabled value ak
o(k) = bko(k).
Alternatively to the method presented in Ioachim et al. (1997) for the case ako(k) 6= bk
o(k),
one can modify the initial network by discretizing the time window at node o(k). Hence,
the decreasing cost component is removed by creating several copies of the source node and
by assigning the resulting �xed cost directly to the new nodes.
Commodity Aggregation: When several commodities are identical, the variables corre-
sponding to these commodities can be aggregated to reduce the number of subproblems as
well as the number of variables and constraints in the master problem. To illustrate this
aggregation process, consider the linear relaxation (75){(80) of the master problem (75){
(82) and assume that all commodities are identical (otherwise, the aggregation process can
be performed separately on the various subsets of identical commodities). In this case, all
networks Gk, k 2 K, are identical and so are all sets of subproblem's extreme points k,
k 2 K. Denote this common set of extreme points by and the column coe�cients by cp
and awp
(i.e., = k, cp= ck
pand a
wp= ak
wp, 8 k 2 K). De�ne also new variables as:
�p=Xk2K
�kp; 8 p 2 :
Since the variables �kpare non-negative, the variables �
pcan only take non-negative values.
Furthermore, summing the constraints in set (79), we have:Xk2K
Xp2
�kp=Xk2K
1,Xp2
Xk2K
�kp= jKj ,
Xp2
�p= jKj : (100)
The linear relaxation (75){(80) is therefore equivalent to:
MinimizeXp2
cp�p+Xs2S
csYs
(101)
subject to:Xp2
awp�p+Xs2S
awsYs= n
w; 8 w 2 N (102)
Xp2
bhp�p+Xs2S
bhsYs= b
h; 8 h 2 H (103)
as� Y
s� b
s; 8s 2 S (104)
�p� 0; 8 p 2 (105)
A UNIFIED FRAMEWORK... 27
�p=Xk2K
�kp; 8 p 2 (106)
Xp2
�kp= 1; 8 k 2 K (107)
�kp� 0; 8 k 2 K; 8 p 2 : (108)
For a solution to (101){(105) fractional in �p, there exists a solution in �k
pthat satis�es
(106){(108). Indeed, assume that �p, p 2 , is a solution to (101){(105) and assign to �k
p,
k 2 K, p 2 , the values:
�kp=
�p
jKj; 8 k 2 K; 8 p 2 :
By using (100), it is then easy to verify that this solution also satis�es (106){(108). Since
any solution consisting of the aggregated variables �p, p 2
p, can be converted into a
solution in terms of the disaggregated variables �kp, k 2 K, p 2 , the problem (101){(105)
can be used as the linear master problem. This aggregated linear master problem contains
jKj times less variables and has fewer constraints than the original one.
In the case where the solution of the aggregated linear master problem is integer, it is
possible to convert it to a binary solution in terms of the variables �kp. Indeed, assume
that �p, p 2 , is an integer solution to (101){(105). By (100), at most jKj variables �
p
are positive. Let �p1; �p2; : : : ; �
pnbe these variables. Next, assign path p1 to the �rst �
p1
commodities, path p2 to the next �p2, ..., and path p
nto the last �
pncommodities. These
assignments translate into the following mathematical expressions:
�kp1
=
�1 if 1 � k � �
p1
0 otherwise,
�kp2
=
�1 if �
p1+ 1 � k � �
p1+ �
p2
0 otherwise,
...
�kpn
=
8<:
1 ifn�1Pi=1
�pi+ 1 � k � jKj
0 otherwise,
�kp
= 0 if p 62 fp1; p2; : : : ; png and 1 � k � jKj.
One can verify that this solution also satis�es (106){(108). Finally, if the aggregated solution
is mixed integer, both of the above conversion processes need to be applied accordingly.
1.5 CONCLUSION
This paper has developed a much needed integrating framework for deterministic time con-
strained vehicle routing and crew scheduling problems. It consists of a more general model
than previously considered which encompasses all the important practical complexities ex-
amined to date in the literature. Each distinct type of problem explored so far in this
environment can be cast as a special instance of this uni�ed formulation. A number of prior
research e�orts have involved the direct application of di�erent forms of this model to solve
speci�c problem types in this class. Furthermore, approaches that have been based on a
Set Partitioning/Covering formulation and additional constraints customizing each unique
application represent indirect uses of the uni�ed model. In addition to consolidating the
most widely utilized time constrained vehicle routing and crew scheduling problem models,
28
this framework extends beyond this environment. Any problem for which the solution can
be expressed as a set of paths in a deterministic state-space graph can be formulated as a
special case of the proposed uni�ed model. As an example, this formulation can be used
to model one of the earliest application of column generation, namely the Cutting-Stock
Problem.
To solve the multi-commodity problems in this class, we have proposed a branch-and-
bound framework. The lower bounds are obtained by using a decomposition approach. This
exploits the special structure of these problems involving an objective function and many of
the constraints separable by commodity. While the framework leads to a number of algo-
rithmic choices for each module, we have concentrated on an extension of the Dantzig-Wolfe
decomposition principle. We have proved that it remains valid even when nonlinear objec-
tive functions and constraints are present. We have also shown that it is more general than
the prior column generation-based methods as is the compatible branching module used.
Finally, we have scanned the dynamic programming algorithms designed for the di�erent
constrained shortest path subproblems or the more general single commodity problems and
determined some needs for future research.
We believe that the framework proposed in this paper has uni�ed much of the previ-
ous research directed at deterministic time constrained vehicle routing and crew scheduling
problems. It is our hope that it will also constitute the basis for future approaches directed
at problems of larger size and at new application areas.
Acknowledgments
This research was supported by the Quebec Government (Programme Synergie du Fonds de D�evelop-
pement Technologique) and by the Natural Sciences and Engineering Council of Canada. Marius
M. Solomon was partially supported by the Patrick F. and Helen C. Walsh Research Professorship.
We would also like to thank Andreas N�ou from the Royal Institute of Technology, Stockholm, for
fruitful discussions regarding the paper.
References
Appelgren, L.H. A Column Generation Algorithm for a Ship Scheduling Problem. Trans-
portation Science, 3:53{98, 1969.
Appelgren, L.H. Integer Programming Methods for a Vessel Scheduling Problem. Trans-
portation Science, 5:64{78, 1971.
Baker, E. An Exact Algorithm for the Time Constrained Traveling Salesman Problem.
Operations Research, 31:938{945, 1983.
Barnhart, C., C.A. Hane, E.L. Johnson, and G. Sigismondi. An Alternative Formulation
and Solution Strategy for Multi-Commodity Network Flow Problems. Report COC-9102,
Georgia Institute of Technology, Atlanta, Georgia, 1991.
Barnhart, C., L. Hatay, and E.L. Johnson. Deadhead Selection for the Long-Haul Crew
Pairing Problem. Operations Research, 43:491{499, 1995.
Barnhart, C., E.L. Johnson, R. Anbil, and L. Hatay. A Column Generation Technique for the
Long-Haul Crew Assignment Problem. In T.A. Ciriani and R. Leachman (eds.), Mathe-
matical Programming and Modeling Techniques in Practice, Optimization in Industry 2.
John Wiley and Sons, New-York, 7{22, 1994a.
Barnhart, C., E.L. Johnson, G.L. Nemhauser and, M.W.P. Savelsbergh. Branch and Price:
Column Generation for Solving Huge Integer Programs. Computational Optimization
Center, COC{94{03, Georgia Institute of Technology, Atlanta, 1994b.
Bodin, L. and B. Golden. Classi�cation in Vehicle Routing and Scheduling. Networks, 11:97{
108, 1981.
A UNIFIED FRAMEWORK... 29
Bodin, L., B. Golden, A. Assad, and M. Ball. Routing and Scheduling of Vehicles and Crews:
The State of the Art. Computers and Operations Research, 10:62{212, 1983.
Bramel, J. and D. Simchi-Levi. On the E�ectiveness of Set Coveringing Formulations for the
Vehicle Routing Problem with Time Windows. Operations Research, 45:295{301, 1997.
Carraresi, P. and G. Gallo. Network Models for Vehicle and Crew Scheduling. European
Journal of Operations Research, 16:139{151, 1984.
Christiansen, M. Inventory and Time Constrained Ship Routing - A Mathematical Approach.
Ph.D. Dissertation, Norvegian University of Science and Technology, Trondheim, Norway,
1996.
Christo�des, N., A. Mingozzi, and P. Toth. Space-State Relaxation Procedures for the Com-
putation of Bounds to Routing Problems. Networks, 11:145{164, 1981.
Daduna, J.R., I. Branco, and J. Paix~ao. (eds.) Computer-Aided Transit Scheduling. Lecture
Notes in Economics and Mathematical Systems 430. Springer Verlag, Berlin, 1995.
Dantzig, G. and D. Fulkerson. Minimizing the Numbers of Tankers to Meet a Fixed Schedule.
Naval Research Logistics Quarterly, 1:217{222, 1954.
Dantzig, G.B. and R.M. Van Slyke. Generalized Upper Bounding Techniques. Journal of
Computer and System Sciences, 1:213{226, 1967.
Dantzig, G.B. and P. Wolfe. Decomposition Principle for Linear Programs. Operations Re-
search, 8:101{111, 1960.
Desaulniers, G., J. Desrosiers, Y. Dumas, S. Marc, B. Rioux, M.M. Solomon, and F. Soumis.
Crew Pairing at Air France. European Journal of Operational Research, 97:245{259,
1997a.
Desaulniers, G., J. Desrosiers, M.M. Solomon, and F. Soumis. Daily Aircraft Routing and
Scheduling. Management Science, 43:841{855, 1997b.
Desrochers, M. 1986. La Fabrication d'Horaires de Travail pour les Conducteurs d'Autobus
par une M�ethode de G�en�eration de Colonnes. Universit�e de Montr�eal, Centre de recherche
sur les Transports, Publication #470. CP 6128, Succursale A, Montr�eal, Qu�ebec, H3C
3J7. (In French)
Desrochers, M., J. Desrosiers, and M. Solomon. A New Optimization Algorithm for the
Vehicle Routing Problem with Time Windows. Operations Research, 40:342{354, 1992.
Desrochers, M., J. Gilbert, M. Sauv�e, and F. Soumis. CREW-OPT: Subproblem Modeling in
a Column Generation Approach to Urban Crew Scheduling. In M. Desrochers and J.-M.
Rousseau, (eds.), Computer-Aided Transit Scheduling, Lecture Notes in Economics and
Mathematical Systems 386. Springer Verlag, Berlin, 395{406, 1992.
Desrochers, M., J.K. Lenstra, and M.W.P. Savelsbergh. Classi�cation of Vehicle Routing
and Scheduling Problems. European Journal of Operational Research, 46:322{332, 1990.
Desrochers, M., J.K. Lenstra, M.W.P. Savelsbergh, and F. Soumis. Vehicle Routing with
Time Windows: Optimization and Approximation. In B. Golden and A.A. Assad (eds.),
Vehicle Routing: Methods and Studies. North-Holland, Amsterdam, 65{84, 1988.
Desrochers, M. and J.-M. Rousseau (eds.). Computer-Aided Transit Scheduling. Lecture
Notes in Economics and Mathematical Systems 386. Springer Verlag, Berlin, 1992.
Desrochers, M. and F. Soumis. A Generalized Permanent Labeling Algorithm for the Short-
est Path Problem with Time Windows. INFOR, 26:191{212, 1988a.
Desrochers, M. and F. Soumis. A Reoptimization Algorithm for the Shortest Path Problem
with Time Windows. European Journal of Operational Research, 35:242{254, 1988b.
Desrochers, M. and F. Soumis. A Column Generation Approach to the Urban Transit Crew
Scheduling Problem. Transportation Science, 23:1{13, 1989.
Desrosiers, J., Y. Dumas, M.M. Solomon, and F. Soumis. Time Constrained Routing and
Scheduling. In M.O. Ball et al. (eds.), Network Routing, Handbooks in Operations Re-
search and Management Science 8. Elsevier Science, Amsterdam, 35{139, 1995.
30
Desrosiers, J., Y. Dumas and F. Soumis. A Dynamic Programming Solution of the Large-
Scale Single-Vehicle Dial-a-Ride Problem with Time Windows. The American Journal of
Mathematical and Management Sciences, 6:301{325, 1986.
Desrosiers, J., P. Hansen, B. Jaumard, F. Soumis, and D. Villeneuve. Dantzig-Wolfe Decom-
position and Column Generation for Linear and Nonlinear Integer Programs. Working
paper. GERAD, �Ecole des HEC, Montr�eal, Canada, H3T 2A7, 1994.
Desrosiers, J., P. Pelletier, and F. Soumis. Plus Court Chemin avec Contraintes d'Horaires,
RAIRO, 17:357{377, (in French) 1983.
Desrosiers, J., F. Soumis, and M. Desrochers. Routing with Time Windows by Column
Generation. Networks, 14:545{565, 1984.
Dror, M. Note on the Complexity of the Shortest Path Models for Column Generation in
VRPTW. Operations Research, 42:977{978, 1994.
Dror, M. and P. Trudeau. Savings by Split Delivery Routing. Transportation Science, 23:141{
145, 1989.
Dumas, Y., J. Desrosiers, E. G�elinas, and M.M. Solomon. An Optimal Algorithm for the
Traveling Salesman Problem with Time Windows. Operations Research, 43:367{371, 1995.
Dumas, Y., J. Desrosiers, and F. Soumis. Optimizing the Schedule for a Fixed Vehicle Path
with Convex Inconvenience Costs. Transportation Science, 24:145{151, 1990.
Dumas, Y., J. Desrosiers and F. Soumis. The Pickup and Delivery Problem with Time
Windows. European Journal of Operational Research, 54:7{22, 1991.
Du Merle, O. Points Int�erieurs et Plans Coupants: Mise en Oeuvre et D�eveloppement
d'une M�ethode pour l'Optimisation Convexe et la Programmation Lin�eaire Structur�ee
de Grande Taille. Ph.D. Dissertation, Universit�e de Gen�eve, Switzerland, (in French)
1995.
Du Merle, O., D. Villeneuve, J. Desrosiers, and P. Hansen. Stabilisation dans le Cadre de la
G�en�eration de Colonnes. Les Cahiers du GERAD, G{97{08, �Ecole des HEC, Montr�eal,
Canada, H3T 2A7, (in French) 1997.
Etschmaier, M.M. and D.F.X. Mathaisel. Aircraft Scheduling: The State of the Art. AGI-
FORS Proceedings XXIV, 181{225, 1984.
Etschmaier, M.M. and D.F.X. Mathaisel. Airline Scheduling: an Overview. Transportation
Science, 19:127{138, 1985.
Falkner, J.C. and D.M. Ryan. Aspects of Bus Crew Scheduling Using a Set Partitioning
Model. In J.R. Daduna and A. Wren (eds.), Computer-Aided Transit Scheduling, Lecture
Notes in Economics and Mathematical Systems 308. Springer-Verlag, Berlin, 91{103,
1988.
Farley, A.A. A Note on Bounding a Class of Linear Programming Problems, including Cut-
ting Stock Problems. Operations Research, 38:922{923, 1990.
Ferland, J.A. and L. Fortin. Vehicle Routing with Sliding Time-Windows. European Journal
of Operational Research, 38:359{378, 1989.
Fischetti, M. and P. Toth. An Additive Bounding Procedure for Combinatorial Optimization
Problems. Operations Research 37:319{328, 1989.
Fisher, M.L. Optimal Solution of Vehicle Routing Problems Using Minimum
k-Trees. Operations Research, 42:626{642, 1994.Fisher, M.L. Vehicle Routing. In M.O. Ball et al. (eds.), Network Routing, Handbooks in
Operations Research and Management Science 8. Elsevier Science, Amsterdam, 1{33,
1995.
Fisher, M.L., K.O. J�ornsten, and O.B.G. Madsen. Vehicle Routing with Time Windows {
Two Optimization Algorithms. Operations Research, 45:488{498, 1997.
Ford, L. and D.R. Fulkerson. Flows in Networks. Princeton University Press, Princeton,
N.J., 1962.
A UNIFIED FRAMEWORK... 31
Fulkerson, D.R. Flow Networks and Combinatorial Operations Research. In A.M. Geo�rion
(ed.), Perspectives on Optimization. Addison-Wesley, Reading, Mass., 139{171, 1972.
Gamache, M. and F. Soumis. A Method for Optimally Solving the Rostering Problem.
Operations Research in Airline Industry, 1997. Forthcoming.
Gamache, M., F. Soumis, G. Marquis, and J. Desrosiers. A Column Generation Approach
for Large Scale Aircrew Rostering Problem. Operations Research, 1997a. Forthcoming.
Gamache, M., F. Soumis, D. Villeneuve, J. Desrosiers, and E. G�elinas. The Preferential
Bidding System at Air Canada. Transportation Science, 1997b. Forthcoming.
G�elinas, S. Fabrication de Tourn�ees avec Rechargement. Master Thesis, �Ecole Polytechnique
de Montr�eal, Canada, (in French) 1990.
G�elinas, S. Probl�emes d'ordonnancement. Ph.D. Dissertation, �Ecole Polytechnique de Montr�eal,
Canada, (in French) 1997. In preparation.
G�elinas, S., M. Desrochers, J. Desrosiers, and M.M. Solomon. A New Branching Strategy
for Time Constrained Routing Problems with Application to Backhauling. Annals of
Operations Research, 61:91{109, 1995.
G�elinas, S. and F. Soumis. A Dynamic Programming Algorithm for Single Machine Schedul-
ing with Ready Times and Deadlines to Minimize Total Weighted Completion. MIS Col-
lection in The Annals of Operations Research, 1997. Forthcoming.
Geo�rion, A.M. Lagrangian Relaxation and its Uses in Linear Programming. Mathematical
Programming Study, 2:82{112, 1974.
Gilmore, P.C. and R.E. Gomory. A Linear Programming Approach to the Cutting-Stock
Problem. Operations Research, 9:849{859, 1961.
Go�n, J.-L., J. Gondzio, K. Sarkissian, and J.-P. Vial. Solving Nonlinear Multicommodity
Flow Problems by the Analytic Center Cutting Plane Method. Mathematical Program-
ming, 76:131{154, 1997.
Go�n, J.-L. and J.-P. Vial. Shallow, Deep and Very Deep Cuts in the Analytic Center
Cutting Plane Method. Les Cahiers de GERAD, G{96{20, �Ecole des HEC, Montr�eal,
Canada, H3T 2A7, 1996.
Graves, G.W., R.D. McBride, I.Gershko�, D.Anderson, and D. Mahidhara. Flight Crew
Scheduling. Management Science, 39:736{745, 1993.
Gu, Z., E.L. Johnson, G.L. Nemhauser, and Y. Wang. Some Properties of the Fleet Assign-
ment Problem. Operations Research Letters, 15:59{71, 1994.
Halse, K. Modeling and Solving Complex Vehicle Routing Problems. Ph.D. Dissertation no.
60, IMSOR, Technical University of Denmark, Lyngby, 1992.
Hane, C., C. Barnhart, E.L. Johnson, R. Marsten, G.L. Nemhauser, and G. Sigismondi.
The Fleet Assignment Problem: Solving a Large-Scale Integer Program. Mathematical
Programming, 70:211{232, 1995.
Hansen, P., B. Jaumard, S. Krau, and O. du Merle. An l1-norm Bundle Method for the
Multisource Weber Problem. Les Cahiers de GERAD, �Ecole des Hautes �Etudes Commer-
ciales, Montr�eal, Canada, H3T 2A7, 1997. Forthcoming.
Hansen, P., B. Jaumard and M. Poggi de Arag~ao. Un Algorithme Primal de Programmation
Lin�eaire G�en�eralis�ee pour les Programmes Mixtes. Comptes Rendus de l'Acad�emie des
Sciences de Paris, 313:557{560, 1991. In French.
Hansen, P., B. Jaumard and M. Poggi de Arrag~ao. Mixed Integer Column Generation and the
Probabilistic Maximum Satis�ability Problem. Proceedings of IPCO2, Carnegie-Mellon
University, Pittsburgh, 165{180, 1992.
Ho�man, K.L. and M. Padberg. Solving Airline Crew Scheduling Problems by Branch-and-
Cut. Management Science, 39:657{682, 1993.
Holm, S. and J. Tind. A Uni�ed Approach for Price Directive Decomposition Procedures in
Integer Programming. Discrete Applied Mathematics, 20:205{219, 1988.
32
Houck Jr., D.J., J-C. Picard, M. Queyranne, and R.R. Vemuganti. The Traveling Salesman
Problem as a Constrained Shortest Path Problem: Theory and Computational Experi-
ence. Opsearch, 17:93{109, 1980.
Ioachim, I., J. Desrosiers, F. Soumis, and N. B�elanger. Fleet Routing with Schedule Syn-
chronization Constraints. Les Cahiers du GERAD, G{94{48, �Ecole des HEC, Montr�eal,
Canada, H3T 2A7, 1994.
Ioachim, I., S. G�elinas, J. Desrosiers, and F. Soumis. A Dynamic Programming Algorithm
for the Shortest Path Problem with Time Windows and Linear Node Costs. Networks,
1997. Forthcoming.
Kohl, N. and O.B.G. Madsen. An Optimization Algorithm for the Vehicle Routing Problem
with Time Windows Based on Lagrangean Relaxation. Operations Research, 45:395{406.
1997.
Kohl, N., J. Desrosiers, O.B.G. Madsen, M.M. Solomon, and F. Soumis. 2-Path Cuts for the
Vehicle Routing Problem with Time Windows. Transportation Science, 1997. Forthcom-
ing.
Kolen, A.W.J., A.H.G. Rinnooy Kan, and H.W.J.M. Trienekens. Vehicle Routing with Time
Windows. Operations Research, 35:266{273, 1987.
Kontoravdis, G. and J.F. Bard. Improved Heuristics for the Vehicle Routing Problem with
Time Windows. Working paper. Department of Mechanical Engineering, The University
of Texas, Austin, TX 78712{1063, 1992.
Koskosidis, Y.A., W.B. Powell, and M.M. Solomon. An Optimization Based Heuristic for
Vehicle Routing and Scheduling with Soft Time Window Constraints. Transportation
Science, 26:69{85, 1992.
Langevin, A., M. Desrochers, J. Desrosiers, and F. Soumis. A Two-Commodity Flow Formu-
lation for the Traveling Salesman and Makespan Problems with Time Windows. Networks,
23:631{640, 1993.
Laporte, G. The Vehicle Routing Problem: An Overview of Exact and Approximate Algo-
rithms. European Journal of Operational Research, 59:345{358, 1992.
Lasdon, L.S. Optimization Theory for Large Systems. Collier-MacMillan, New-York, 1970.
Lavoie, S., M. Minoux, and E. Odier. A New Approach of Crew Pairing Problems by Column
Generation and Application to Air Transport. European Journal of Operational Research
35, 45{58, 1988.
LeMar�echal, C.. Non Di�erentiable Optimization. In G.L. Nemhauser, A.G.H. Rinnooy Kan
and M.J. Todol (eds.), Optimization, Handbooks in Operations Research and Manage-
ment Science 1. Elsevier Science, Amsterdam, 529{572, 1989.
Levin, A. Scheduling and Fleet Routing Models for Transportations Systems. Transportation
Science, 5:232{255, 1971.
Maculan, N., P. Michelon, and G. Plateau. Column-Generation in Linear Programming with
Bounding Variable Constraints and its Application in Integer Programming. Working
Paper ES{268/92, Federal University of Rio de Janeiro, P.O. Box 68511, 21945 Rio de
Janeiro, Brazil, 1992.
Madsen, O.B.G. Optimal Scheduling of Trucks | A Routing Problem with Tight Due Times
for Delivery. In H. Strobel, R. Genser and M. Etschmaier (eds.), Optimization Applied
to Transportation Systems. International Institute for Applied System Analysis (IIASA),
CP{77{7, Laxenburgh, Austria, 126{136, 1976.
Magnanti, T. Combinatorial Optimization and Vehicle Fleet Planning: Perspectives and
Prospects. Networks, 11:179{214, 1981.
Mehrorta, A. and M.A. Trick. A Column Generation Approach to Graph Coloring. Graduate
School of Industrial Administration, Carnegie Mellon University, Pittsburgh, 1993.
A UNIFIED FRAMEWORK... 33
Min, H. The Multiple Vehicle Routing Problem with Simultaneous Delivery and Pickup
Points. Transportation Research, 23A:377{386, 1989.
Mingozzi, A., L. Bianco, and S. Ricciardelli. Dynamic Programming Strategies for the Trav-
eling Salesman Problem with Time Window and Precedence Constraints. Operations Re-
search, 45:365{377. 1997.
Orlo�, C. Route Constrained Fleet Scheduling. Transportation Science, 10:149{168, 1976.
Paix~ao, J. and I.M. Branco. A Quasi-Assignment Algorithm for Bus Scheduling. Networks
17:249{270, 1987.
Psaraftis, H. A Dynamic Programming Solution to the Single-Vehicle, Many-to-Many, Im-
mediate Request Dial-a-ride Problem. Transportation Science, 14:130{154, 1980.
Psaraftis, H. An Exact Algorithm for the Single-Vehicle Many-to-Many Dial-a-ride Problem
with Time Windows. Transportation Science, 17:351{357, 1983.
Ribeiro, C., M. Minoux, and C. Penna. An Optimal Column-Generation-with-Ranking Al-
gorithm for Very Large Scale Set Partitioning Problems in Tra�c Assignment. European
Journal of Operational Research, 41:232{239, 1989.
Ribeiro, C. and F. Soumis. A Column Generation Approach to the Multiple Depot Vehicle
Scheduling Problem. Operations Research, 42:41{52, 1994.
Ryan, D.M. and B.A. Forster. An Integer Programming Approach to Scheduling. In A.
Wren (ed.), Computer Scheduling of Public Transport Urban Passenger Vehicle and Crew
Scheduling. North-Holland, Amsterdam, 269{280, 1981.
Ryan, D.M. The Solution of Massive Generalized Set Partitioning Problems in Air Crew
Rostering. Journal of the Operational Research Society, 43:459{467, 1992.
Savelsbergh, M.W.P. A Branch-and-Price Algorithm for the Generalized Assignment Prob-
lem. Computational Optimization Center COC{93{03, Georgia Institute of Technology,
Atlanta, Georgia, 1993.
Sexton, T. and L. Bodin. Optimizing Single Vehicle Many-to-Many Operations with Desired
Delivery Times: I. Scheduling. Transportation Science, 19:378{410, 1985.
Sexton, T. and Y. Choi. Pickup and Delivery of Partial Loads with TimeWindows. American
Journal of Mathematical and Management Sciences, 6:369{398, 1986.
Solomon M.M. and J. Desrosiers. Time Window Constrained Routing and Scheduling Prob-
lems. Transportation Science, 22:1{13, 1988.
Soumis, F., J. Ferland, and J.-M. Rousseau. A Large Scale Model for Airline Fleet Planning
and Scheduling Problem. Transportation Research, 14B:191{201, 1980.
Stojkovi�c, M., F. Soumis, and J. Desrosiers. The Operational Airline Crew Scheduling Prob-
lem. Les Cahiers du GERAD, G{97{15, �Ecole des HEC, Montr�eal, Canada, H3T 2A7,
1997.
Sweeney, D.J. and R.A. Murphy. A Method of Decomposition for Integer Programs. Oper-
ations Research, 27:1128{1141, 1979.
Vance, P.H., C. Barnhart, E.L. Johnson, and G.L. Nemhauser. Solving Binary Cutting Stock
Problems by Column Generation and Branch-and-Bound. Computational Optimization
and Applications, 3:111{130, 1994.
Vanderbeck, F. and L.A. Wolsey. An Exact Algorithm for IP Column Generation.Operations
Research Letters, 19:151{159, 1996.
Wedelin, D. An Algorithm for Large Scale 0-1 Integer Programming with Applications to
Airline Crew Scheduling. Annals of Operations Research, 57:283{301, 1995.
Wolfe, P. A Technique for Resolving Degeneracy in Linear Programming. Journal of the
Society for Industrial and Applied Mathematics, 11:205{211, 1963.
Ziarati, K., F. Soumis, J. Desrosiers, S. G�elinas, and A. Saintonge. Locomotive Assignment
with Heterogeneous Consists at CN North America. European Journal of Operational
Research, 97:281{292, 1997.