Content uploaded by Denise Tönissen

Author content

All content in this area was uploaded by Denise Tönissen on May 31, 2020

Content may be subject to copyright.

Maintenance location routing for rolling stock under line and

ﬂeet planning uncertainty

Denise D. T¨onissen

School of Business and Economics, Vrije Universiteit Amsterdam, Amsterdam, The Netherlands

d.d.tonissen@vu.nl

Joachim J. Arts

Luxembourg Centre for Logistics and Supply Chain Management, University of Luxembourg, Luxembourg City, Luxembourg;

and School of Industrial Engineering, Eindhoven University of Technology, Eindhoven, The Netherlands,

joachim.arts@uni.lu

Zuo-Jun (Max) Shen

Department of Industrial Engineering and Operations Research, Department of Civil and Environmental Engineering,

Tsinghua-Berkeley Shenzhen Institute, University of California, Berkeley, Berkeley, California 94720, USA,

maxshen@berkeley.edu

August 4, 2018

Abstract

Rolling stock needs regular maintenance in a maintenance facility. Rolling stock from diﬀerent

ﬂeets are routed to maintenance facilities by interchanging the destinations of trains at common

stations and by using empty drives. We consider the problem of locating maintenance facilities in

a railway network under uncertain or changing line planning, ﬂeet planning and other uncertain

factors. These uncertainties and changes are modeled by a discrete set of scenarios. We show that

this new problem is NP-hard and provide a two-stage stochastic programming and a two-stage robust

optimization formulation. The second-stage decision is a maintenance routing problem with similarity

to a minimum cost-ﬂow problem. We prove that the facility location decisions remain unchanged

under a simpliﬁed routing problem and this gives rise to an eﬃcient mixed integer programming

(MIP) formulation. This result also allows us to ﬁnd an eﬃcient decomposition algorithm for the

robust formulation based on scenario addition (SA). Computational work shows that our improved

MIP formulation can eﬃciently solve instances of industrial size. SA improves the computational

time for the robust formulation even further and can handle larger instances due to more eﬃcient

memory usage. Finally, we apply our algorithms on practical instances of the Netherlands Railways

and give managerial insights.

1

Keywords: Two-stage optimization, column-and-constraint generation, facility location, rolling

stock, maintenance routing

1 Introduction

We study the optimal location of maintenance facilities for rolling stock in a railway network. This

new problem came to us through a 4 year collaboration with the Netherlands railways (NS). Like most

facility location problems, there is a set of candidate facilities and their annual costs, and we have to

decide which facilities to open. However, the maintenance location routing problem has essential features

that make it substantially diﬀerent from other facility location problems. In particular, the customers

of facilities (train units) have to travel over a rigid railway network. The transportation costs of these

train units are more intricate than can be modeled by ﬁxed allocation costs. The problem of routing

these train units to the maintenance facilities is called the maintenance routing problem (MRP). The

MRP cannot be separated from the facility location problem because the ease with which a facility can

be reached depends intricately on the railway infrastructure and the line plan.

A line plan consists of a set of train lines, where each line is a path in the railway network that is

operated with a certain frequency by one rolling stock type. The line and ﬂeet plan within a railway

network change regularly to accommodate changing travel demands. As a consequence, any reasonable

facility location plan must work well under a wide variety of line and ﬂeet plan scenarios. This includes

changes in how lines run, up and down-scaling of service frequencies on any given line, the rolling stock

types assigned to the lines, and the introduction of new rolling stock types.

To deal with the features we outline above (maintenance location routing, line planning, and ﬂeet

planning), we provide two novel models to help managers decide where to locate maintenance facilities.

These two models reﬂect diﬀerent attitudes to risk that the decision maker may hold. The ﬁrst model is

a two-stage stochastic programming model that seeks to minimize the annual cost of the facilities and

the annual maintenance routing cost averaged over a set of line plan scenarios. We call this the stochastic

maintenance location routing problem (SMLRP). This model is appropriate for decision makers that are

risk neutral. The second model is similar to the ﬁrst, however it seeks to minimize the performance of

the worst-case situation. Such an objective is often called a minimax or an absolute robust objective

(Kouvelis and Yu, 2013). This model is therefore called the robust maintenance location routing problem

(RMLRP) and can be seen as a two-stage robust optimization model (Ben-Tal et al., 2004). This model

is appropriate for risk averse decision makers. The attitude of the NS towards risk is neither entirely

risk neutral nor entirely risk averse. Therefore, they would like to study the solutions of both models.

The ﬁrst-stage decision for the SMLRP and RMLRP is to open a facility, given a set of candidate

facilities, annual facility depreciation costs, and a discrete set of line planning scenarios. In the second-

stage the annual maintenance routing costs for a ﬁrst-stage location decision are determined for each

line plan scenario. The second-stage problem corresponds with the MRP. We give the deterministic

2

equivalents of the two-stage models. The deterministic equivalents are multi-commodity ﬂow models and

we prove that exactly the same facilities are opened when we simplify these models to single-commodity

ﬂow models. This simpliﬁcation decreases the number of variables and constraints for practical sized

instances by millions. We call this formulation the improved mixed integer program (IMIP). The IMIP

makes it possible to ﬁt practical sized instances into memory and to solve them with CPLEX within

reasonable time. Furthermore, we improve the computational time for the RMLRP further, by providing

a scenario addition (SA) method. The SA method is a column-and-constraint (also called row-and-

column) generation method that is speciﬁcally developed for problems with discrete scenario sets. SA

adds the scenario constraints iteratively to the IMIP until an optimal solution is found, which improves

the computational time and memory requirements for most instances. A similar idea is presented in

Zeng and Zhao (2013) and Chan et al. (2017) for polyhedral uncertainty sets.

The main contributions of this paper are as follows.

1. We are the ﬁrst to study a maintenance location problem on a railway network. In this setting it

is necessary to incorporate the annual maintenance routing cost in the facility location decision.

This leads to a new class of problems that we call maintenance location routing problems.

2. We provide a two-stage stochastic programming formulation and a two-stage robust optimization

formulation for the maintenance location routing problem that can deal with uncertainties that are

inherent in any application. In particular, our model can deal with uncertainties in line and ﬂeet

planning.

3. We provide a mixed integer formulation and an even more eﬃcient SA algorithm that can solve

instances of practical size.

4. We perform a case study for the Netherlands Railways (NS) and give managerial insights.

The paper starts with a literature review, followed by a detailed description of the MRP. In Section 4,

we model the RMLRP and the SMLRP as two-stage problems and in Section 5.1 we provide our solution

methodology. In Section 6, we perform computational experiments on randomly generated instances.

We study the inﬂuence of the number of scenarios and facilities on the solution time and compare the

algorithms. In Section 7, we present our case study for the NS and provide managerial insights.

2 Literature review

Facility location models have been studied extensively in the literature (Drezner and Hamacher, 2001;

Laporte et al., 2016). The combination with operational supply chain decisions (Melo et al., 2009),

vehicle routing (Nagy and Salhi, 2007), and uncertainty have also been studied in the literature (Snyder,

2006). However, the combination of facility location with maintenance routing has only been studied

in the context of aviation applications (Feo and Bard, 1989; Gopalan, 2014). Furthermore, to the best

3

of our knowledge, there are only four papers that combine maintenance with facility location (Lieckens

et al., 2013; Rappold and Van Roo, 2009; van Ommeren and Bumb, 2006; Xie et al., 2016). However, the

settings of these papers diﬀer considerably from ours, and the authors use heuristics while we seek exact

optimal solutions. We ﬁrst describe the maintenance routing literature and we continue to the two-stage

robust and stochastic facility location literature.

2.1 Maintenance routing

Many papers have been written about maintenance routing for railway applications. Anderegg et al.

(2003), consider the situation in the German and Swiss Federal Railways where maintenance routing is

part of the long-term vehicle scheduling problem. The authors use a minimum cost ﬂow formulation that

is often used for vehicle routing. Maintenance cannot be adapted into the ﬂow model and a heuristic

modiﬁcation is used to satisfy the maintenance constraints. Mar´oti and Kroon (2005, 2007) consider

maintenance routing for the NS, where maintenance routing is not part of the vehicle scheduling problem.

They use a two- to ﬁve-day time window during which a train unit is routed to the maintenance facility.

The main reason for this is that timetables and rolling stock schedules are dense, and that there are many

disturbances. Consequently, long-term models cannot take shunting issues and disturbances into account.

The authors formulate this NP-hard problem as two diﬀerent multicommodity ﬂow problems, and they

solve the models with CPLEX. Other papers consider variants of the locomotive planning problem. The

locomotive planning problem assigns locomotives to a set of train units in such a way that it minimizes

the cost and satisﬁes a number of business and operational constraints. For a recent survey on the

locomotive assignment problem, that also includes variants with some maintenance constraints, see Piu

and Speranza (2014). Furthermore, there are many papers about maintenance routing for aviation such

as those of Clarke et al. (1997), Talluri (1998), and Sarac et al. (2006).

2.2 Two-stage robust and stochastic facility location

Uncertainty for facility location models can be classiﬁed into three categories (Shen et al., 2011): receiver-

side uncertainty; in-between uncertainty; and provider-side uncertainty. Like most stochastic facility

location models (see the references in Snyder (2006) and Swamy and Shmoys (2006)), our paper focuses

on the ﬁrst two uncertainties. These uncertainties are related to customer uncertainty (for example,

customer demand or customer location) and incomplete knowledge about the transportation network

topology, transportation times, or costs between facilities and customers. A common feature of the

receiver-side and in-between uncertainties is that the uncertainty does not change the topology of the

provider-receiver network once the facilities have been built. Our problem does not share this feature

as the diﬀerent line plans do change the topology of the provider-receiver network; a diﬀerent line plan

changes the network over which rolling stock are routed to a maintenance facility.

The SMLRP bears some resemblance to supply chain network design under uncertainty, which in-

cludes the location of facilities within a supply chain. Santoso et al. (2005) design a supply chain network

4

consisting of suppliers, processing facilities, and customers under cost, demand, supply and capacity un-

certainty. A sample average approximation is used to generate a discrete set of scenarios and the model is

solved with Benders decomposition. Santoso et al. (2005) describe and test many acceleration techniques,

that we also implement in the online appendix of this paper. The accelerated Benders decomposition

method works well for their problem, but is less successful for our model as compared with the IMIP.

Other examples of Benders decomposition for supply chain network design include ﬁxed charge network

design (Costa, 2005), freight-forwarding network design (¨

Uster and Agrahari, 2011), reverse supply chain

design (Santibanez-Gonzalez and Diabat, 2013), and closed loop supply chain network design (Khatami

et al., 2015).

Two types of methods are generally used for two-stage robust problems. The ﬁrst method is similar to

Benders decomposition and uses constraint generation based on the dual information of the slave problem.

´

Alvarez-Miranda et al. (2015), use Benders decomposition accelerated with additional cuts and a primal

heuristic on a two-stage robust facility location problem with a discrete set of scenarios. An important

diﬀerence to our paper is that their allocation of customers to facilities does not include the routing of

customers (rolling stock) to (maintenance) facilities. Another diﬀerence is the considered uncertainty

and recoverability of the model. In our model, we open facilities in the ﬁrst-stage and allocate customers

to these facilities in the second-stage. ´

Alvarez-Miranda et al. (2015) open facilities and assign customers

in the ﬁrst-stage and the second-stage is used to recover the facilities and customer assignment to the

revealed scenario. Gabrel et al. (2014) solve a non-linear convex two-stage robust location transportation

problem. In this problem a commodity has to be transported from each of the mpotential sources to

each of the ndestinations. The demand of the destinations is uncertain. The authors use a cutting plane

algorithm based on Benders decomposition, where the slave problem is NP-hard. Furthermore, Benders

decomposition has been applied to two-stage robust unit commitment problems (Bertsimas et al., 2013;

Jiang et al., 2011).

The second method consists of column-and-constraint generation procedures. Zeng and Zhao (2013)

show that a column-and-constraint generation procedure solves a two-stage robust location transporta-

tion problem with demand levels in a polyhedral uncertainty set an order of magnitude faster than

Benders decomposition. Chan et al. (2017) apply a column-and-constraint generation procedure to a

robust facility location problem where the demand points are uncertain and An et al. (2014) apply it

to the reliable p-median facility location problem. The strategy is also used for two-stage robust unit

commitment (An and Zeng, 2015; Zhao and Zeng, 2012) and a two-stage robust distribution network

reconﬁguration problem (Lee et al., 2015).

3 Maintenance routing

The goal of the MRP is to determine the annual routing costs for train units to enter given maintenance

facilities with given capacities. A maintenance facility is a facility that is responsible for the planned

5

inspections and maintenance of rolling stock. The frequency of inspections and maintenance is dependent

on the rolling stock type and typically occurs once every half year up to every month. The maintenance

routing is inﬂuenced by the current line plan, a set of routes (paths) in a rail network, operated with a

certain frequency by a speciﬁc rolling stock type. The stations where a line starts or ends are called end

stations. At an end station, all passengers leave the train and the train unit drives back or continues on

another line after a break. Between the end stations, a line often has many other regular train stations

where passengers can leave or enter the train. The transport from the train lines to the maintenance

facilities is done with help of interchanges. An interchange swaps the destinations of two train units of

the same rolling stock type that are on connecting train lines. Connecting train lines share an end station

and at that end station the train unit can be interchanged. The train units continue on each other’s

train line after such an interchange. A train that requires maintenance is interchanged with another

train unit until it reaches a train line connected to a maintenance facility. When a maintenance facility

cannot be reached by a speciﬁc train unit via these interchanges, deadheading is used for the remaining

trip. Deadheading is driving with an empty train (no passengers), and is undesirable. Deadheading gives

additional driving cost and the train unit is not available for public transport, which can result in shorter

trains and passenger discomfort.

The operational problem of routing speciﬁc train units to their maintenance facilities is studied by

Mar´oti and Kroon (2005, 2007). The operational maintenance routing problem is solved daily and its

decisions are based on operational information such as the arrival and departure time of train units and

the shunting possibilities of the end stations. In this section, we introduce a new maintenance routing

model that determines the annual operational maintenance routing cost by taking maintenance routing

decisions on an aggregate level. This enables us to combine the maintenance routing model with facility

location decisions in Section 4. Our objective is to minimize the annual interchange and deadheading

cost. Consequently, we do not consider separate train units, but work with the average number of

maintenance visits departing from each line per year, the routes for each visit, and the annual number

of interchanges.

3.1 Problem description

Given is a physical rail network GP= (NP, EP), consisting of nodes (stations) NPand edges (railway

tracks) EP, a set of end stations E⊆NP, and a set with opened facilities O⊆E, where every opened

facility has a capacity that represents the maximum number of maintenance visits the location can handle

per year. Furthermore, we are given a line plan that consists of a set of lines L, with for each line the type

of rolling stock, the maintenance frequency per year, its end stations and the deadheading cost to each

maintenance facility. The line plan also speciﬁes the set of possible interchanges, with a coordination

cost for each interchange, end station interchange capacities, and a network interchange budget.

The network interchange budget Grestricts the annual number of interchanges in the network. The

interchange budget is highly dependent on the frequently changing rolling stock schedule and it is possible

6

to improve certain interchanges by making small changes to the rolling stock schedule. Modeling this

interchange budget allows us to gain insight into which interchanges should be made possible or improved,

while also constraining the number of interchanges that can be used. Furthermore, we constrain the

annual number of interchanges at each end station.

In the left-hand side of Figure 1, we show an example of a physical railway network. Here we exclude

all stations that are not an end station in at least one of the line plans shown in the middle and on the

right of Figure 1. For the MRP, only one line plan for the network GPis given. However, in Section

4, the diﬀerent line plans for network GPplay an important role. Each line (edge) connects two end

stations (nodes). The number of end stations can diﬀer between the line plans; e.g. station Wis an end

station in the middle of Figure 1, while it is an in-between station of the line (X, V ) on the right-hand

side. Furthermore, there are two rolling stock types in this example. Rolling stock type a, is a regional

train, stopping at every small station, while type bis an intercity train that only stops at the large cities.

An example of an interchange for the middle picture is line (U, V ) to line (V, W ), while an interchange

from (U, V ) to line (U, W ) is not possible because the rolling stock types do not match.

U V

W

XY

Z

U V

W

XY

a

a

b

b

b

a

b

b

a

U V

XY

Z

b

b

b

b

a

a

a

a

Figure 1: The physical rail network on the left and two line plan possibilities.

3.2 Maintenance routing model

We model the MRP as a ﬂow-based model. We only allow interchanges followed by deadheading directly

to the already opened maintenance facilities. The reason for this is practical, and not a restriction of

the model. Routes with deadheading followed by interchanges are not often used in practice, can be

very expensive, and cause imbalances in the number of train units per line, which need to be solved.

Consequently, we do not include these kinds of routes in our model. We use the line plan and physical

railway network to create a directed maintenance routing ﬂow graph GF= (NF, AF).

•For every line, we make a node; the set with these nodes is denoted by NL⊂NF.

•We create one source Sthat is connected with a directed arc to each node in NL.

•We create an arc between lines where an interchange is possible. The cost of this arc are the

interchange coordination cost. The set of these interchange arcs is denoted by AI⊂AF.

•We create a node for every open facility and denote the set of open facilities by NO⊂NF. Each

node in NOis connected with an arc to the sink T.

7

•For each node n∈NL, we make an arc to each facility. The cost of the arc is 0 when a line is

connected to the facility and it is the deadheading costs from a line to a facility when it is not

connected. The set of these incoming facility arcs is denoted by AO⊂AF.

In Figure 2, we demonstrate how to apply this transformation. The left-hand side depicts a line plan

for the physical railway network in Figure 1, where aand bare the rolling stock types and 0-8 are the

line numbers. The right-hand side depicts the maintenance routing ﬂow graph GF= (NF, AF) for the

line plan on the left when facilities NO={U, W, Y }are opened.

U V

W

XY

1a

0a

2b

3b

4b

5a

6b

7b

8a

S2

1

0

3

4

5

6

7

8

U

W

Y

T

Figure 2: Left a possible line plan for the physical railway network in Figure 1. Right the resulting

maintenance routing ﬂow graph (GF= (NF, AF)). The arcs from and to the source Sand sink Tare

dashed blue, the interchange arcs (AI) solid red, and the arcs to the facilities (AO) are dotted black.

The aforementioned additional combinations of interchanges and deadheading can easily be allowed by

creating an additional arc from every line node to every other line node, which represents the deadheading

from one line to another.

Proposition 1. The number of nodes and arcs in the maintenance routing ﬂow graph is polynomial in

the number of lines and end stations.

Proof. The number of nodes in the maintenance routing ﬂow graph is equal to |L|+|NO|+ 2. The

number of arcs is equal to |L|+|L||NO|+|AI|+|NO|, where |AI|is bounded by |L|(|L| − 1).

The maintenance frequency of a line lis the annual number of train units originating from that line

that require maintenance. The maintenance frequency for line l∈Lis deﬁned by the parameter ml,

and nl∈NLis the node associated with line l. The ﬂow through arc a∈AFthat is associated with the

yearly maintenance frequency originating from line l∈Lis represented by the decision variable zl(a).

For example, z4(2,7) represents the frequency of interchanges from line 2 to line 7 for a maintenance

8

visit originating from line 4, and z1(8, y) represents the frequency of maintenance visits originating from

line 1 that reach maintenance facility yvia line 8.

We deﬁne δin(n) and δout (n) as the set of ingoing and outgoing arcs of node n∈NF, and the set

of arcs representing the interchanges going through end station eis deﬁned as Ae⊂AI. The cost of

arc afor ﬂow of type lis cl(a), and is only deﬁned for the arcs that represent the interchanges and

the deadheading (AI∪AO). The capacity for the facilities, qn∀n∈NO, is measured by the yearly

maintenance frequency that the facility can handle. Furthermore, the number of interchanges at end

station e∈Eis restricted by the parameter ge, and the annual number of maintenance visits over the

entire network by G.

We summarize the notation in Table 1 and formulate the following linear program:

(MRP) min X

a∈AI∪AOX

l∈L

cl(a)zl(a)

s.t. X

a∈δin(n)X

l∈L

zl(a)≤qn∀n∈NO,(1)

X

a∈δin(n)

zl(a) = X

a∈δout(n)

zl(a)∀n∈NF\ {S,T },∀l∈L, (2)

zl(a) = ml∀l∈L, a ∈δin(nl)\AI,(3)

X

a∈δin(T)X

l∈L

zl(a) = X

l∈L

ml,(4)

X

a∈AeX

l∈L

zl(a)≤ge∀e∈E, (5)

X

a∈AIX

l∈L

zl(a)≤G, (6)

zl(a)≥0∀a∈AF,∀l∈L. (7)

Constraints (1) restrict the number of yearly maintenance visits that can be assigned to opened facility

nto its capacity. Constraints (2) are the ﬂow conservation constraints, while Constraints (3) and (4)

guarantee that every maintenance visit is assigned to a facility. Constraints (4) are necessary to exclude

alternative solutions with more ﬂow than the number of yearly maintenance visits; these solutions are

possible because some of the routes to the facilities have zero costs. Constraints (5) and (6) are the end

station and interchange budget constraints.

We can solve the MRP in polynomial time because it is a linear program. Furthermore, the problem

is similar to the minimum cost ﬂow problem with the exception of the multiple commodities l∈Land

Constraints (1), (5), and (6). We show that even with these additional constraints the MRP has an

optimal integer solution zl(a) if ge(∀e∈E), G,ml(∀l∈L), and qn(∀n∈NF) are integers.

Proposition 2. If ge(∀e∈E),G,ml(∀l∈L), and qn(∀n∈NF)are integers, then for any basic

feasible solution of the MRP each ﬂow zl(a) (∀a∈AF,∀l∈L)is an integer.

The proof of Proposition 2 can be found in online Appendix A.

9

Graph notation and sets:

GP= (NP, EP) physical railway network consisting of nodes NPand edges EP

Eset with end stations (E⊆NP)

Oset with opened locations (O⊆E)

GF= (NF, AF) maintenance routing ﬂow graph consisting of nodes NFand arcs AF

Ssource node

Tsink node

NOset of nodes associated with the opened facilities O(NO⊂NF)

Lset with all train lines

NLset of nodes associated with the lines L(NL⊂NF)

nlthe node associated with line l

AOset of arcs that go to the opened facility nodes (AO⊂AF)

AIset of interchange arcs (AI⊂AF)

Aeset of interchange arcs for end station e(Ae⊂AI)

δin(n) set containing the incoming arcs of node n(δin(n)⊂AF)

δout(n) set containing the outcoming arcs of node n(δout(n)⊂AF)

Parameters:

mlmaintenance frequency for line l∈L

cl(a) cost for using arc afor a maintenance visit originating from line l∈L

qncapacity of facility n∈NO

geinterchange budget of end station e∈E

Gnetwork interchange budget

Decision variables:

zl(a) maintenance frequency decision variable for arc aand line l

Table 1: Graph notation, sets, parameters, and decision variables for the MRP.

4 Maintenance location routing

In this section, we introduce the SMRLP and RMRLP. We model both problems as two-stage models.

We use a discrete scenario set D, in which every scenario deﬁnes a line plan (see also Figure 1). The

ﬁrst-stage decision is the decision to open a facility, given a set of candidate facilities, annual facility

depreciation costs, and a discrete set of scenarios. The second-stage decision is taken for each scenario

and corresponds to the MRP discussed in Section 3. The RMLRP optimizes the cost for the worst-case

scenario d∈D, and the SMLRP optimizes the cost for the average case.

10

The SMLRP and RMLRP are NP-hard because the capacitated facility location problem (CFLP) is

a special case of these problems. In the CFLP, a set of demand points, a set of facilities, the capacities

of the locations and their cost, and the cost of assigning a demand point to a facility are given. The

objective is to open a set of facilities and to assign each demand point to a facility, while not exceeding the

capacity of each facility and minimizing the cost. When our model has only one scenario and the network

interchange budget for this scenario is 0, then only deadheading from the lines to the locations is possible.

When we interpret the lines as demand points, with the required maintenance visit frequency as demand,

then the deadheading cost is exactly the same as the assignment costs, and the SMLRP/RMLRP can

be used to solve the CFLP.

4.1 The two-stage models

As in Section 3, we are given a physical rail network GP= (NP, EP), consisting of nodes (stations) NP

and edges (railway tracks) EP. Furthermore, we are given a set of discrete scenarios d∈D, in which each

scenario deﬁnes a line plan: a set of lines Ld∀d∈D, with for each line the type of rolling stock and the

maintenance frequency per year, the end stations Ed⊆NP∀d∈D, and their location in the physical

rail network. A line plan for a scenario speciﬁes the set of possible interchanges, with a coordination cost

for each interchange, the deadheading cost from each line to each facility, the end station interchange

capacities, and the interchange network budget. Finally, we are given a set of candidate facilities C, with

for every candidate facility a capacity qn∀n∈NC, that represents the maximum annual maintenance

frequency the location can handle. The ﬁrst-stage decision is represented by the binary decision variable

y∈ {0,1}|C|, which is 1 when a facility is opened and 0 otherwise.

For every ﬁrst-stage decision y∈ {0,1}|C|and scenario d∈D, there is a directed maintenance

location routing ﬂow graph Gdy

F= (Ndy

F, Ady

F). The notation of the variables and parameters is similar

to those in Section 3. The maintenance frequency for line ∀l∈Land scenario d∈Dis deﬁned by

the parameter md

l, and nd

lis the node associated with line land scenario d. The ﬂow through arc a

associated with the annual maintenance frequency from line l∈Ld, in scenario d∈D, is represented

by the decision variable zd

l(a). We deﬁne δd

in(n) and δd

out(n) as the set of ingoing and outgoing arcs of

node nfor scenario d. Here Ad

Iis the set of interchange arcs and Ad

C=Sn∈NCδd

in(n), the set of arcs

going to the candidate facilities. The cost of arc afor line land scenario dis cd

l(a). The arc costs are

only deﬁned for arcs in the set Sd∈D(Ad

I∪Ad

C). The end station interchange budget gd

eis a capacity

on the interchange frequency at end station e∈Edfor scenario d∈D. The set of arcs representing the

interchanges going through end station efor scenario dis denoted by Ad

e. Furthermore, the number of

annual interchanges in the entire network for each scenario d∈Dis restricted by the parameter Gd. The

weights wd∀d∈Ddenote the expected fraction of time that a line plan is used during the life time of

the facilities and is only relevant for the SMLRP. We formulate the following two-stage models:

11

(SMLRP-2SSP) min X

n∈NC

cnyn+X

d∈D

wdMRPd(y)

(RMLRP-2SRO) min X

n∈NC

cnyn+ max

d∈DMRPd(y)

s.t. X

n∈NF

ynqn≥max

d∈DX

l∈Ld

md

l,(8)

yn∈ {0,1} ∀n∈NC,(9)

where

MRPd(y) = min X

a∈Ad

I∪Ad

CX

l∈Ld

cd

l(a)zd

l(a)

s.t. X

a∈δd

in(n)X

l∈Ld

zd

l(a)≤ynqn∀n∈NC,(10)

X

a∈δd

in(n)

zd

l(a) = X

a∈δd

out(n)

zd

l(a)∀n∈Ndy

F\ {S,T },∀l∈Ld,(11)

zd

l(a) = md

l∀l∈Ld, a ∈δd

in(nd

l)\AI,(12)

X

a∈δd

in(T)X

l∈Ld

zd

l(a) = X

l∈L

md

l,(13)

X

a∈Ad

eX

l∈Ld

zd

l(a)≤gd

e∀e∈Ed,(14)

X

a∈Ad

IX

l∈Ld

zd

l(a)≤Gd,(15)

zd

l(a)≥0∀a∈Ady

F,∀l∈Ld.(16)

The objectives of the SMLRP-2SSP and RMLRP-2SRO formulations optimize the annual facility cost

in combination with the average/worst-case maintenance routing cost, under Constraint (8). Constraint

(8) guarantees that the opened facilities have suﬃcient combined capacity to handle all maintenance

visits, so that the second-stage problem has a feasible solution. Here MRPd(y) optimizes the maintenance

routing cost for scenario dand ﬁrst-stage decision y. Constraints (10) guarantee that maintenance visits

can only be assigned to opened facilities up to their capacity. Constraints (11) are the ﬂow conservation

constraints, while Constraints (12) and (13) guarantee that every maintenance visit is assigned to a

facility. Constraints (14) and (15) are the end station and network interchange budgets constraints.

The recourse matrices of the SMLRP-2SSP and RMLRP-2SRO do not have a ﬁxed size which is

diﬀerent from most two-stage problems. The network topology for each MRPd(y) is diﬀerent and as a

consequence the values and dimensions of the recourse matrices are diﬀerent for each scenario. Further-

more, Constraint (8) guarantees that each feasible ﬁrst-stage solution is feasible for the MRPd(y) for any

scenario d∈D. Consequently, we have relatively complete recourse.

12

5 Solution methodology

The two-stage formulations of Section 4 are not practical in terms of computation. In this section, we

reformulate these problems into a mixed integer programming formulation, that is also known as the

deterministic equivalent or extensive form (Birge and Louveaux, 1997). Then we provide an improved

mixed integer programming formulation (IMIP) that is equivalent in terms of the optimal objective and

optimal facility decisions, but not with respect to the second-stage decisions. This improved formulation

is very eﬃcient in ﬁnding the optimal facility location decisions.

In addition, we design a column-and-constraint generation algorithm (similar to Zeng and Zhao, 2013;

Chan et al., 2017) for the RMLRP. Our method, called scenario addition (SA), solves the IMIP with a

subset of scenarios and adds an additional scenario in each iteration. The algorithm reaches optimality

in a ﬁnite number of iterations. SA uses the fact that for the RMLRP only the facility solution y∗and

the worst-case scenario are required for the solution.

We also applied accelerated Benders decomposition to the SMLRP and RMLRP. However, accelerated

Benders decomposition performed very poorly in the computational experiments and therefore the details

of this approach are reported in online Appendix B.

5.1 Mixed integer programming formulation

The ﬁrst step to reformulate the two-stage models SMLRP-2SSP and RMLRP-2SRO to mixed integer

programming formulations is to make one large directed maintenance location routing ﬂow graph. This

graph contains all scenarios, instead of one graph for every scenario. The steps used in Section 3 are

adapted to generate the directed graph GM= (NM, AM) as follows.

•For every scenario and line, we make a node. The set with all line nodes belonging to a scenario

d∈Dis denoted by Nd

L.

•We make one source Sthat is shared for all scenarios. The source is connected with an arc to each

node in Sd∈DNd

L.

•We make an arc between every line where an interchange is possible (connected, same rolling stock

type, same scenario), and the cost is the interchange coordination cost.

•We make a node for every candidate facility, and each of these nodes is connected with an arc to

the sink T. The set of candidate facility nodes is denoted by NC.

•For each node n∈Sd∈DNd

L, we make an arc to each facility. The cost of this arc is the deadheading

cost of the line to the facility. The cost of the arc is zero when deadheading is not necessary because

the line associated with the node is connected to the facility.

The sets Nd

Mand Ad

Mcontain all nodes or arcs that can be reached by ﬂow from scenario d∈D.

Furthermore, by Proposition 2, the ﬂow zd

l(a) will be integer when ge(∀e∈E), G,ml(∀l∈L), and qn

13

(∀n∈NF) are integers. The two-stage models SMLRP-2SSP and RMLRP-2SRO can be reformulated

to the following mixed integer programming formulations:

(SMLRP-MIP) min X

n∈NC

cnyn+X

d∈D

wdX

a∈Ad

I∪Ad

CX

l∈Ld

cd

l(a)zd

l(a)

(RMLRP-MIP) min X

n∈NC

cnyn+zmax

s.t. X

a∈δd

in(n)X

l∈Ld

zd

l(a)≤ynqn∀d∈D, ∀n∈NC,(17)

X

a∈δd

in(n)

zd

l(a) = X

a∈δout(n)

zd

l(a)∀d∈D, ∀n∈Nd

M\ {S,T },∀l∈Ld,(18)

zd

l(a) = md

l∀d∈D, ∀l∈Ld,∀a∈δd

in(nd

l)\AI,(19)

X

d∈DX

a∈δd

in(T)X

l∈Ld

zd

l(a) = X

d∈DX

l∈Ld

md

l,(20)

X

a∈Ad

eX

l∈Ld

zd

l(a)≤gd

e∀d∈D, ∀e∈Ed,(21)

X

a∈Ad

IX

l∈Ld

zd

l(a)≤Gd∀d∈D, (22)

zd

l(a)≥0∀d∈D, ∀a∈Ad

M,∀l∈Ld,(23)

yn∈ {0,1} ∀n∈NC,(24)

with the following additional constraints for the RMLRP-MIP:

zmax ≥X

a∈Ad

I∪Ad

CX

l∈Ld

cd

l(a)zd

l(a)∀d∈D. (25)

Constraints (17)-(23) are comparable to (10)-(16) from Section 4, however now deﬁned for the graph

GM= (NM, AM) and for all scenarios. Note that in the maintenance location routing ﬂow graph GM,

all arcs besides those going to the sink can only be traversed by ﬂow from one scenario. Consequently,

by the use of Ad

Mand Nd

Min place of AMand NM, we have removed many unnecessary constraints

in Constraints (18) and (23). Constraints (25), which are only used for the RMLRP-MIP, guarantee

that zmax equals the routing cost of the worst-case scenario. The SMLRP-2SSP and SMLRP-MIP are

equivalent. However, for the RMLRP-2SRO and RMLRP-MIP only the opened and closed facilities y∗

and the objective value are equivalent. Because we are not interested in the second-stage decisions, the

RMLRP-MIP can be used as if it is equivalent to the RMLRP-2SRO.

5.2 Improved mixed integer programming formulation

The RMLRP-MIP and SMLRP-MIP require so much available memory that only very small instances

can be solved. However, the required memory can be signiﬁcantly reduced by two observations. The

ﬁrst observation is that we do not need to distinguish the scenario for each ﬂow. Without the index d,

14

we can still determine to which scenario a ﬂow belongs based on the incoming arcs of the facility nodes

as they always belong to only one scenario. For the second observation, we use practical knowledge of

the cost structure of the problem. For practical instances the cost of an interchange or deadheading

(cd

l(a)∀a∈Ad

I∪Ad

C) depends on the rolling stock type and the scenario, and not on the originating

line. As a consequence cd

m(a) = cd

n(a)∀m, n ∈L, when the rolling stock type assigned to line mand

nare the same. Because it is not allowed to interchange train units with diﬀerent rolling stock types,

dropping the lindex will not change the cost. Consequently, the incoming ﬂow per facility will be the

same, resulting in the same facility decisions and the same optimal objective value.

Furthermore, Constraints (20) can be omitted, because without the lindices, all ﬂow is already

restricted by Constraints (19). Additionally, in Constraints (17) qncan be much higher than the total

number of maintenance visits (Pl∈Ldmd

l) for a scenario d∈D. Tightening Constraints (17), by replacing

qnby ˆ

qd

n= min(qn,Pl∈Ldmd

l) for every scenario dimproves the initial LP bound. Finally, we denote

Sd∈Dδd

in(n) and Sd∈Dδd

out(n) as δin (n) and δout(n) respectively. This gives the following improved mixed

integer programming (IMIP) formulations:

(SMLRP-IMIP) min X

n∈NC

cnyn+X

d∈D

wdX

a∈Ad

I∪Ad

C

c(a)z(a)

(RMLRP-IMIP) min X

n∈NC

cnyn+zmax

s.t. X

a∈δd

in(n)

z(a)≤ynˆ

qd

n∀d∈D, ∀n∈NC,(26)

X

a∈δin(n)

z(a) = X

a∈δout(n)

z(a)∀n∈NM\ {S,T },(27)

z(a) = md

l∀d∈D, ∀l∈Ld,∀a∈δd

in(nd

l)\AI,(28)

X

a∈Ad

e

z(a)≤gd

e∀d∈D, ∀e∈Ed,(29)

X

a∈Ad

I

z(a)≤Gd∀d∈D, (30)

z(a)≥0∀a∈AM,(31)

yn∈ {0,1} ∀n∈NC,(32)

with the following additional constraints for the (RMLRP-IMIP):

zmax ≥X

a∈Ad

I∪Ad

C

c(a)z(a)∀d∈D. (33)

Note that the lindex is still required for Constraints (28). The reason for this is that although during

routing we need not be concerned with the origin of the ﬂow, we still need to make sure that the right

amount of ﬂow starts from each origin. As a consequence, the parameter md

lis needed to specify the

amount of ﬂow that originates from each line.

15

Theorem 1. The SMLRP-IMIP and RMLRP-IMIP have identical optimal costs and facility decisions

y∗as the SMLRP-MIP and RMLRP-MIP, respectively, when cd

m(a) = cd

n(a)∀m, n ∈Lif the rolling

stock types assigned to line mand nare the same.

Proof. For every a∈δout(S), zd

l(a)≥0 for only one scenario dand line l, and for all other scenarios

and lines zd

l(a) = 0. This is the case because of Constraints (19) and (20) that guarantee that every

line node receives only md

lﬂow for one land dand 0 for all other lines and scenarios. These line nodes

are only connected to the line nodes of the same scenario and the facility nodes. Consequently, the line

nodes can only receive ﬂow of one scenario type, and the scenario of the incoming ﬂow of the facilities, is

equal to the scenario to which the line node from that the incoming facility ﬂow originates from belongs

to. Furthermore, dropping the indices will not inﬂuence the amount of ﬂow and cost for every arc. The

amount of ﬂow for each arc z(a) will become equal to Pd∈DPl∈Ldzd

l(a). Furthermore, the cost of the

ﬂow remains the same because every arc a∈Ad

I∪Ad

Ccan only be reached by maintenance visits of

exactly one rolling stock type and scenario. Consequently, the same facilities will be opened and the

objective value will be the same.

Theorem 2. The SMLRP-IMIP and RMLRP-IMIP reduce the number of variables by

Θ(Pd∈D|Ld|2|NC|+|Ld||Ad

I|)compared with the SMLRP-MIP and RMLRP-MIP, respectively.

Proof. Note that |AM|=Pd∈D(|Ld|+|Ld||NC|+|Ad

I|) + |NC|and |Ad

M|=|Ld|+|Ld||NC|+|Ad

I|+|NC|.

We subtract the number of variables in the IMIP from the number of MIP variables. The number of

removed variables is

X

d∈D|Ld||Ad

M|− |AM|

=X

d∈D|Ld|(|Ld|+|Ld||NC|+|Ad

I|+|NC|)−X

d∈D

(|Ld|+|Ld||NC|+|Ad

I|)− |NC|

=X

d∈D|Ld|2+|Ld|2|NC|+|Ld||Ad

I|+|Ld||NC|−X

d∈D

(|Ld|+|Ld||NC|+|Ad

I|)− |NC|

=X

d∈D|Ld|2+|Ld|2|NC|+|Ld||Ad

I|+|Ld||NC|−|Ld|−|Ld||NC|−|Ad

I|− |NC|

=X

d∈D|Ld|2+|Ld|2|NC|+|Ld||Ad

I|−|Ld|−|Ad

I|− |NC|

Consequently, the number of removed variables is of the order of Θ(Pd∈D|Ld|2|NC|+|Ld||Ad

I|).

Theorem 3. The SMLRP-IMIP and RMLRP-IMIP reduce the number of constraints by

Θ(Pd∈D|Ld|2+|NC||Ld|)compared with the SMLRP-MIP and RMLRP-MIP, respectively.

Proof. We subtract the number of constraints in the IMIP from the number of MIP constraints. Note

that we removed Constraint (20) and that only Constraints (18) and (27) are diﬀerent. Furthermore,

|NM|=Pd∈D|Ld|+|NC|+ 2 and |Nd

M|=|Ld|+|NC|+ 2. The number of removed constraints is

X

d∈D|Ld|(|Nd

M| − 2)+ 1 − |NM| − 2

16

=X

d∈D|Ld|2+|NC||Ld|+ 1 − X

d∈D

|Ld|+|NC|!

=X

d∈D|Ld|2+|NC||Ld|−|Ld|− |NC|+ 1.

Consequently, the number of removed constraints is of order Θ(Pd∈D|Ld|2+|NC||Ld|).

To summarize, the IMIP formulation reduces the number of variables and constraints substantially

and simpliﬁes a multi-commodity model to a single-commodity model. As a consequence, the required

memory and solution time are signiﬁcantly reduced.

5.3 Scenario addition

It is necessary to solve the second-stage problem (MRP) from Section 4 many times for SA. Therefore,

we use the improvements from Section 5.2 for the MRP and introduce the IMRP. Although the MRP

can be solved in polynomial time, this change yields a substantial reduction in solution time. For larger

instances (100 facilities, 64 scenarios), the solution time decreases from multiple seconds per scenario, to

solving all scenarios in approximately one second. Furthermore, similar to Section 5.1, the capacity qn,

can be replaced by ˆ

qd

n.

These changes together give us the following improved maintenance routing problem formulation:

IMRPd(y) = min X

a∈Ad

I∪Ad

C

c(a)z(a)

s.t. X

a∈δin(n)

z(a)≤ynˆ

qd

n∀n∈NC,(µ)

X

a∈δin(n)

z(a) = X

a∈δout(n)

z(a)∀n∈Ndy

F\ {S,T },(ν)

z(a) = md

l∀l∈Ld, a ∈δd

in(nd

l)\AI,(π)

X

a∈Ad

e

z(a)≤gd

e∀e∈Ed,(φ)

X

a∈Ad

I

z(a)≤Gd,(ω)

z(a)≥0∀a∈Ady

F.

The Greek symbols next to the constraints are the corresponding dual variables, which are used for

the Benders decomposition algorithm described in online Appendix B.

SA uses the fact that for the RMLRP, only the opened facilities and the worst-case scenario are

relevant for the solution. Consequently, SA cannot be used for the SMLRP where all scenarios contribute

to the objective function. Let ibe an iteration counter that starts at 0 and Didenote the scenario set

used in iteration i. The set D0contains one randomly chosen scenario d∈D. Because the scenarios

17

diﬀer in the total number of maintenance visits, the following feasibility constraint is added to the

RMLRP-IMIP:

X

n∈NC

ynˆqn≥max

d∈DX

l∈Ld

md

l,(34)

where ˆqn= min{qn,maxd∈DPl∈Ldmd

l}.

With these preliminaries, the SA algorithm consists of the following steps.

1. Compute the solution to the RMLRP-IMIP with Dreplaced by Di, and add Constraint (34) to

the formulation. Denote the optimal objective of this problem as LBiand the solution of iteration

ias yi.

2. Set UBi:=cTyi+ maxd∈DIMRPd(yi) and let di

max := arg max

d∈D

IMRPd(yi). If di

max ∈Di, then

UBi= LBi. Stop and return yias the optimal solution and UBias the optimal objective value.

Otherwise (di

max /∈Di) the algorithm proceeds to the next step.

3. Let Di+1 :={di

max} ∪ Di. Update i:=i+ 1 and go back to Step 1.

These steps give a very diverse set of scenarios as the most detrimental solution for the incumbent

solution is added in each iteration. We observe that the algorithm generally converges quickly with only

a small number of scenarios in Di.

6 Computational experiments

In this section, we report computational experiments on randomly generated instances to test the com-

putational performance of our algorithms. We are particularly interested in the size of instances that

can be solved by the IMIP and SA. The results of our accelerated Benders decomposition algorithm can

be found in the online Appendix B. Although we generate instances randomly, the ﬁxed and random

parameters are based on those found in practice to create reasonable instances. All experiments are

programmed in Java with the CPLEX library version 12.6.3, and run on a laptop with an Intel Core

i7-4710MQ Quad Core 2.5 GHz processor with 8 GB of RAM. All mentioned solution times include

the time necessary to build the model and CPLEX standard settings are used (e.g. for preprocessing,

branching, accuracy tolerance etc.).

6.1 Test instance generation

An instance of the SMLRP or the RMLRP requires a railway network, several line plans on this railway

network, parameters such as the sizes of facilities, interchange budgets etc. Subsection 6.1.1 explains

how we create physical railway networks and possible assignments of end stations within the line plan

(basic line plan). Then in Section 6.1.2 we explain how we generate many line planning scenarios for a

physical railway network with basic line plans. Finally, Section 6.1.3 explains how interchange budgets

and candidate locations for an instance are generated.

18

6.1.1 Physical railway network and basic line plan generation

We create random instances by ﬁrst generating graphs of physical railway networks in the Cartesian

plane. We do this by manually generating ﬁve archetypical graphs on a one by one plane with 5, 10,

25, 50, and 100 nodes, respectively, as shown in Figure 3. Each node is a potential end station and

candidate facility location, while each edge is a set of rails between end stations. For each archetypical

railway network, we also manually design “basic line plan” scenarios. A basic line plan consists only

of origin-destination pairs and the route traveled between them. We also determine for each basic line

whether the corresponding rolling stock type will be regional or intercity. Note, however, that there

may be several regional and intercity rolling stock types, and that the actual rolling stock type will be

assigned in Section 6.1.2.

We create physical railway networks by perturbing and scaling these archetypical networks. We

perturb these archetypical graphs by relocating each node uniformly at random within a square around

that node. The square is centered around the original node except at the boundaries of the 1 ×1 plane

where the square is relocated to ﬁt within the 1 ×1 plane. The dimension of this square decreases with

the number of nodes in the network. Next, the obtained graph is scaled to either a (1) 200 ×400 km,

(2) 750 ×1000 km, or (3) 3000 ×3000 km rectangle to model diﬀerent railway network sizes. The length

of railway tracks (edges) is then determined by multiplying the Euclidean length by a number drawn

uniformly between 1.0 and 1.2. Note that at this point, the length in kilometers of each basic line is

ﬁxed. A graph thus obtained is denoted GP= (NP, EP).

0 1

0

1

(a) 5 nodes

0 1

0

1

(b) 10 nodes

0 1

0

1

(c) 25 nodes

0 1

0

1

(d) 50 nodes

0 1

0

1

(e) 100 nodes

Figure 3: The ﬁve archetypical graphs.

19

6.1.2 Line plan generation

Recall that a train line consists of a rolling stock type, the maintenance frequency per year and the

deadheading cost to each facility. Before we can generate a line plan, we ﬁrst need to generate diﬀerent

types of rolling stock. We ﬁrst generate the number of diﬀerent regional and intercity rolling stock

types. This number is generated uniformly between 1 and the number of edges |NP|divided by 8. The

deadheading cost per kilometer for each rolling stock type is calculated by generating the components

of which it consists: the fuel, driver salary, unavailability costs, and fees. Each component is generated

uniformly at random between the lower and upper bounds that are seen in practice for regional and

intercity trains. Furthermore, the calculation of the number of maintenance visits for a line later on

requires the annual number of maintenance visits of the rolling stock type on that line. The annual

number of maintenance visits is generated uniformly at random between 1 and 12 for each rolling stock

type; which are bounds that we observed at the NS.

Next, we generate line plan scenarios until we have reached the ﬁxed number of scenarios for the

instance. To generate a line plan scenario, we ﬁrst take a random line plan possibility from the ﬁxed

basic line plan set. For each line of the chosen basic line plan, we generate the rolling stock type and

maintenance visit frequency. The line is either an intercity or regional train line, and the rolling stock

type is generated from the corresponding set. The rolling stock type is the same as that of a connecting

line of the same line type with a probability of 0.5 for each line. When there are no deﬁned lines yet,

or when the rolling stock type will not be the same as an already deﬁned connecting line, we choose

uniformly at random from the set with rolling stock types for the basic rolling stock type of the line.

The annual maintenance frequency is the average number of train units on that line times the yearly

maintenance frequency of the rolling stock type used for that line. An estimation for the average number

of train units for a train line is made based on its length in kilometers, the average speed of the trains

and the hourly train frequency of the line, which is generated uniformly at random between 1 and 8 (the

lowest and highest hourly train frequencies considered by the NS). The deadheading cost for a line to a

facility is the deadheading cost per kilometer of the rolling stock type times the number of kilometers

for the shortest path in GPfrom one of the end stations nodes to the facility node. For example, when

one of the end stations is the candidate facility, the shortest path is 0 kilometers and the cost is 0.

6.1.3 Interchange budgets and candidate facilities

All interchange coordination costs between lines are set at 10 euros. We deﬁne U(a, b) as a uniform

random variable on (a, b). Furthermore, we deﬁne the total annual number of maintenance visits for end

station eas Cd

e:=Pl∈Ld

emd

l, where Ld

econtains all lines that have eas an end station.

The interchange budget for end station ein scenario dis randomly generated as

20

gd

e:=

0 with a probability of 0.05,

U(0,1)Cd

ewith a probability of 0.2,

U(1,3)Cd

ewith a probability of 0.65,

∞with a probability of 0.1.

Note that U(1,3)Cd

eis only a restriction when there are many interchanges originating from non-

connecting lines. We deﬁne Md:=Pl∈Ldmd

land randomly generate Gdas

Gd:=

U(0,1)Mdwith a probability of 0.25,

U(1,3)Mdwith a probability of 0.65,

∞with a probability of 0.1.

The annual facility costs are generated uniformly at random between 1/5th and 5 times the esti-

mated average annual facility cost for the NS. We deﬁne Mdmax := maxd∈DPl∈Ldmd

land generate the

maintenance facility capacities as

qn:=

U(0,0.5)Mdmax with a probability of 0.1,

U(0.5,1)Mdmax with a probability of 0.4,

∞with a probability of 0.5.

Consequently, on average half of the maintenance facilities have no capacity restriction. For the

SMLRP, we also generate the weights wd. These weights are generated uniformly at random between 0

and 1, followed by scaling the weights such that they sum up to 1.

6.2 Computational results for the IMIP

The test instance generation method from Section 6.1 can generate instances with any number of can-

didate facilities and line planning scenarios. For our computational tests, we created a full factorial of

instances where the number of candidate facilities takes values in {5,10,25,50,100}and the number

of line planning scenarios takes values of 2ifor i∈ {0,1,...,15}. For each combination of number of

facilities and line planning scenarios, 15 instances are generated. These 15 instances are split equally

between the 3 archetypical railway networks in Section 6.1.1.

For each number of candidate facilities, we try to solve each instance within an hour. When at least

80% (13 out of 15) of the instances can be solved, we move to the set of instances where the number

of scenarios is doubled. When an instance cannot be solved within an hour, a fail is registered and a

solution time of 3600 seconds is used for the average time calculations. The average time in seconds

for each set for the SMLRP and RMLRP can be found in Table 2. The top row shows the number of

candidate facilities per set and the ﬁrst column the number of scenarios.

21

SMLRP-IMIP RMLRP-IMIP

Scenarios 5 10 25 50 100 5 10 25 50 100

1<0.1<0.1 0.1 1.1 19.4 <0.1<0.1 0.1 0.7 13.4

2<0.1<0.1 0.2 1.7 110 <0.1<0.1 0.2 1.8 103.4

4<0.1<0.1 0.3 8.6 94.2 <0.1 0.1 0.6 9.1 175.5

8<0.1 0.1 0.6 20.6 202.6 0.1 0.1 2.2 35.2 874.3

16 0.1 0.2 2.5 33.2 956.6 0.2 0.2 2.8 67.6 fails

32 0.1 0.3 5.7 112.5 fails 0.2 0.3 5.3 231.0

64 0.2 0.5 10.4 296.7 0.3 0.6 13.5 715.4

128 0.4 1.4 37.6 785.8 0.5 1.7 71.4 1259.3

256 1.1 3.0 112.9 fails 1.6 4.2 140.1 fails

512 2.9 11.8 507.4 5.0 15.2 452

1024 10.1 36.0 1076.8 16.3 44.9 1259.8

2048 31.1 154.8 fails 54.7 178.5 fails

4096 126.8 653.4 214.4 531.2

8192 556.7 fails 733.2 1978.1

16384 2428.3 fails fails

32768 fails

Table 2: Solution time in seconds for the SMLRP-IMIP and RMLRP-IMIP, while varying the number

of scenarios and facilities.

For up to 50 facilities, the IMIP solved with CPLEX works well. Note that these instances are

already large. An instance with 25 facilities and 1024 scenarios has on average 35k (35765.5) nodes and

a million (1007822.6) edges in the maintenance location routing ﬂow graph for the RMLRP. Furthermore,

the CPLEX model has a million (1007848.6) columns and 100k (100123.1) rows on average. For 100

candidate facilities, we can only solve the instances with a limited number of scenarios within an hour.

For these instances, we extended the solution time to 48 hours (2880 minutes), to explore the boundary

of what is computationally feasible. Because of time considerations, we limit the instances of the sets to

the ﬁrst six instances, two instances from each size. These results are shown in Table 3, where RAM is

used for instance sets where an out-of-memory error occurred.

Instances with up to 64 scenarios can generally be solved. Furthermore, the SMLRP-IMIP seems

to be computationally faster than the RMLRP-IMIP. A possible explanation for this are Constraints

(33) from Section 5.2, which are only used for the RMLRP-IMIP. These constraints create degeneracy,

because with them only one scenario contributes to the transportation cost, giving many solutions with

the same objective value.

Furthermore, we note that the IMIP (solved with CPLEX standard branch-and-cut algorithm) uses

22

SMLRP-IMIP RMLRP-IMIP

Scenarios Min Average Max Failed Min Average Max Failed

16 0.4 12.1 56.2 0 17.4 105.6 252.6 0

32 1.5 72.3 331.5 0 22.8 429.6 791.4 0

64 4.6 209.2 892.7 0 123.0 631.8 2541.0 0

128 6.6 595.9 >2880.0 2 168.7 2337.7 >2880.0 4

256 18.5 774.5 >2880.0 1 RAM RAM RAM 6

512 RAM RAM RAM 6 RAM RAM RAM 6

Table 3: Results for instances with 100 facilities.

many cuts and few nodes in the branch and bound tree. Some of the instances can be solved without

branching. For example, the average number of nodes for the SMLRP with 50 candidate facilities is

72, while it uses 4226 cuts on average. The number of nodes increases with the number of candidate

facilities, while the number of cuts increases by both the number of facilities and scenarios. CPLEX

mainly uses ﬂow and MIP rounding cuts, followed by implied bound cuts, and to a lesser extent clique,

Gomory, zero-half, and lift and project cuts.

6.3 Computational results for SA

We compare SA with the IMIP for the instances with 25, 50, and 100 candidate facilities from the

randomly generated instance set. The instances with 5 and 10 facilities are excluded because the IMIP

can already solve instances with up to 8192 scenarios within an hour. Again more than 80% (13 or more

out of 15) of the instances have to be solved within an hour to go to the next set. The average time

in seconds for each set for the RMLRP-IMIP and SA can be found in Table 4; the top row shows the

number of candidate facilities per set and the ﬁrst column the number of scenarios.

For the instances with 25 and 50 candidate facilities, it can be seen in Table 4 that the SA algorithm

can solve instances with more scenarios within the hour. For the instances with 25 candidate facilities,

we stopped the test after 32768 scenarios, although they can still easily be solved within the hour. There

is no diﬀerence between SA and IMIP for the instances with 100 facilities. This can be explained by the

fact that we can only solve instances with a limited number of scenarios for instances with 100 facilities.

Consequently, an SA iteration with fewer scenarios added already takes a considerable amount of time.

When we extend the time from 1 hour to 48 hours (we limit the sets to the ﬁrst six instances, as

explained in Section 6.2), the SA algorithm performs better in both the best and average case, but its

worst-case performance is as expected worse. We show these results in Table 5.

The number of iterations (is equal to the number of added scenarios) that the SA algorithm uses and

the time in seconds are shown in Table 6. The number of iterations initially grows when the number of

scenarios increases, but stabilizes at some point. The maximum number of iterations is low compared

23

IMIP SA

Scenarios 25 50 100 25 50 100

1 0.1 0.7 13.4 0.1 0.7 13.5

2 0.2 1.8 103.4 0.3 2.4 129.1

4 0.6 9.1 175.5 1.2 14.1 220.9

8 2.2 35.2 874.3 2.7 42.2 719.7

16 2.8 67.6 fails 4.4 76.4 fails

32 5.3 231.0 5.1 328.7

64 13.5 715.4 5.3 357.4

128 71.4 1259.3 8.4 267.9

256 140.1 fails 11.9 485.3

512 452 12.8 528.9

1024 1259.8 19.1 851.9

2048 fails 40.5 503.6

4096 54.9 1095.0

8192 75.3 1073.2

16384 144.3 fails

32768 288.8

Table 4: Solution time in seconds for the IMIP and SA, while varying the number of scenarios and

facilities.

RMLRP-IMIP SA

Scenarios Min Average Max Failed Min Average Max Failed

16 17.4 105.6 252.6 0 1.2 74.4 198.0 0

32 22.8 429.6 791.4 0 5.4 560.4 2247.0 0

64 123.0 631.8 2541.0 0 8.4 511.2 >2880.0 1

128 168.7 2337.7 >2880.0 4 2.4 807.0 >2880.0 2

256 RAM RAM RAM 6 66.0 1103.7 >2880.0 2

Table 5: Results for instances with 100 facilities.

24

with the total number of scenarios |D|of the instances. The maximum number of scenarios for 25

facilities is 32768, while for the worst-case, the scenario set only contains 20 scenarios. When we increase

the number of candidate facilities to 50, the maximum number of scenarios is 8192, while the maximum

number of iterations is 24.

25 50 100

Scenarios Iterations Time Iterations Time Iterations Time

1 1.0 0.1 1.0 0.7 1 13.5

2 1.9 0.3 1.9 2.4 2 129.1

4 2.9 1.2 3.5 14.1 3.4 220.9

8 4.6 2.7 5.3 42.2 4.9 719.7

16 5.9 4.4 6.9 76.4

32 7.3 5.1 9.3 328.7

64 7.8 5.3 11.7 357.4

128 7.1 8.4 11.2 267.9

256 7.5 11.9 11.8 485.3

512 7.9 12.8 10.9 528.9

1024 7.9 19.1 10.9 851.9

2048 8.1 40.5 11.6 503.6

4096 8.3 54.9 12.5 1095.0

8192 7.0 75.3 12.1 1073.2

16384 6.7 144.3

32768 6.7 288.8

max 21 983.1 24 >3600 8 >3600

Table 6: The average and maximum number of iterations needed for SA.

7 Case study: NS

In this section, we perform a case study for the NS. We use a green ﬁeld approach, where existing facilities

of the NS are kept out of scope. We ﬁrst describe the NS instances and continue with our experiments.

In our experiments, we investigate the beneﬁt of including interchanges, the expected value of perfect

information, the value of the stochastic or robust solution, and provide a robust solution for the case

study.

25

7.1 NS instances

The NS instances each have 59 end stations and 55 candidate facilities. Four end stations (Utrecht,

Breukelen, Amsterdam, and Schiphol) have been excluded, because a maintenance facility cannot be

built at these locations. The facility costs are an estimation of the average annual cost of land, the

necessary infrastructure, and the maintenance facility itself including all side buildings. Furthermore, we

altered the facility cost based on which province the end station is located. The cost is either decreased

or increased dependent on the province’s average land price. The capacity restrictions of the facilities

unfortunately only become clear in a later stage when a chosen location is investigated in detail. Because

also no rough estimations could be given by the experts of the NS, we assume unlimited capacities for the

facilities such that managerial insights can still be provided. (We conduct a sensitivity analysis on this

assumption later and ﬁnd that facility capacities are not an important issue.) Furthermore, we assume

unlimited interchange capacities for all end stations except Utrecht, Amsterdam, and Schiphol, where

interchanges are not possible. The network interchange budget has a diﬀerent value for each experiment,

and will be described in detail for each experiment.

We use four basic line plans: the current situation (2015), an estimation of 2018, and two possibilities

for approximately 2025. These basic line plans contain all the lines (97, 97, 99, and 100 lines) the rolling

stock serving the line and an estimate of the number of annual maintenance visits per line. The future

scenarios, are based on the plan “Beter en Meer” (Prorail and NS, 2014), where the NS intends to

increase the frequency of the lines in the Randstad or larger Randstad. The Randstad is a megalopolis

in the Netherlands consisting of the four largest cities and their surrounding areas. The larger Randstad

also includes the cities Arnhem, ’s-Hertogenbosch, and Eindhoven.

The rolling stock types consist of all current rolling stock types and the future rolling stock types

(FLIRT, SNG, and ICNG). For each rolling stock type, a rough estimation is made for the deadheading

cost per kilometer. This estimation is based on many components such as driver cost, energy consump-

tion, an estimation on the average deadheading velocity, and availability costs. The availability costs

are based on the life cycle cost of the rolling stock and the passenger dissatisfaction cost due to the

unavailability of the train. The cost of the interchanges is set at 10 euro per interchange.

Scenarios are made by picking a basic line plan, and altering the number of maintenance visits and

rolling stock type. For each line of the line plan, the number of maintenance visits is from a triangular

distribution, where the number of maintenance visits of the basic line plan is the mode of this distribution.

We assume that the number of maintenance visits can decrease with 32.5% and increase with 75%, due

to uncertainty in the annual number of maintenance visits of the train unit and the number of passengers

using a certain line. A maximum of 20% of the rolling stock types of the lines can be swapped with

each other. To do that, we generate for both regional and intercity trains a separated integer list, with

its rolling stock number in the list for every maintenance visit it makes. These lists and the lines are

shuﬄed. Then we go through all train lines and with a 10% probability, we change the rolling stock

type to the ﬁrst diﬀerent rolling stock type of the list, all previous items of the list are removed. The

26

maintenance frequency of the line is divided by the maintenance frequency of the current rolling stock

type and multiplied by those of the new rolling stock type. We stop when there are no more lines or the

limit of 20% has been reached.

The information that is available about the expected duration for each scenario is too limited to make

any reasonable estimation. As a consequence, to demonstrate the SMLRP and to be able to compare

a weighted solution (SMLRP) with a worst-case solution (RMLRP), we generate the weights randomly.

We generate the weights wduniformly at random between 0 and 1, followed by scaling the weights such

that they sum up to 1.

7.2 Experiments

In this subsection, we compare the SMLRP and RMLRP and we provide managerial insights. We test the

inﬂuence of including maintenance routing by varying the network interchange budget. We continue with

the expected value of perfect information and the stochastic/robust solution and we provide a solution

to the case study. In addition, we test the inﬂuence of the number of scenarios in online Appendix C.

Before we can test the inﬂuence of the network interchange budget, we need to know how many

scenarios those instances should have. Consequently, we start with some initial computational exper-

iments. We do those experiments with sets of 10 instances, increasing the number of scenarios by a

factor 2 for each set. We ﬁxed the network interchange budget for every scenario at 0.75M, where

M=Pl∈L2015 m2015

l, which is the number of maintenance visits in the current (2015) scenario. For the

RMLRP instances, the most often opened facilities are Eindhoven and Almere Oostvaarders (less than

32 scenarios), Eindhoven and Hilversum (64 up to 4096 scenarios) and ’s-Hertogenbosch and Hoofddorp

for 8192 or more scenarios. However, for each number of scenarios, there are always other solutions.

We evaluated the mentioned three solutions, with 10 instances that have 65536 scenarios, the diﬀerence

between the optimal solution values is at most 2%. This small diﬀerence explains why we obtain diﬀerent

solutions, even if we include many scenarios. We show these solutions in Figure 4, within the ﬁrst black

circle are the stations in the north Randstad (Hilversum, Hoofddorp, and Almere Oostvaarders) and the

stations in the south of the larger Randstad (Eindhoven, ’s-Hertogenbosch) are in the second black circle.

From now on, we use instances with 8192 scenarios that can be solved in approximately 10 minutes.

When we relax the inﬁnite capacity assumption and vary the capacities of the facilities, the solution

remains the same when the capacity of the facilities are larger than 1.20M. Between 0.89Mand 1.19M

three facilities are opened for some of the instances and for 0.88Mthree facilities are opened for all

instances. Evidently even more facilities will be opened when we decrease the capacity of facilities

further.

For the SMLRP instances, the average cost is always the same independent of the number of scenarios,

and Eindhoven and Almere Oostvaarders are opened the most often (this follows from the weak law of

large numbers). From 8 scenarios onwards, Eindhoven and Almere Oostvaarders are opened for all 10

instances. However, increasing the number of scenarios still decreases the standard deviation of the

27

optimal objective values. Owing to time and stability reasons (see online Appendix C), we use instances

with 16 scenarios from now on. These instances can be solved in approximately 20 minutes. When

we drop the inﬁnite capacity assumption and vary the capacities of the facilities, the solution remains

Eindhoven and Almere Oostvaarders for all 10 instances when the capacity of all facilities is above 0.85M.

Between 0.78Mand 0.85MGroningen or Maastricht is opened as third facility for some of the instances

and for 0.77MGroningen or Maastricht is opened as third facility for all instances. Further decreasing

the capacity obviously results in more facilities being opened.

Figure 4: Railway map of the Netherlands with all stations. The larger black circles are the best

locations to open a maintenance facility. The small circles are the larger intercity stations and the tiny

circles are the smaller regional stations. This picture is adapted from https://upload.wikimedia.org/

wikipedia/commons/6/6a/Spoorkaart_Nederland%2C_IC_stations.png.

7.2.1 The beneﬁt of the network interchange budget

We make 10 instances with 16 (SMLRP) or 8192 (RMLRP) scenarios according to the plan described in

Section 7.1. For each of these instances, the budget is Gd= 0,0.25M, 0.5M, 0.75M , M, 2M, and ∞for

all scenarios. Note that a budget of Gd= 0 for all scenarios corresponds to a model where maintenance

routing is not possible. Furthermore, we include 10 instances where the station interchange restrictions

geare removed, while also having an inﬁnite network interchange budget. These instances demonstrate

the maximum gain that can be achieved by improving the station interchange budgets.

Table 7 shows the inﬂuence of the annual network interchange for the SMLRP. Here #sols denotes

28

the number of diﬀerent facility location decisions among the 10 problem instances. The next column

gives the facility location decision that occurs most often and the last column shows the average costs

(optimal objective value) in million euros per year. Two of the three earlier mentioned solutions return in

Table 7. Starting from a network interchange budget of 0.50M, the solution is almost always Eindhoven

and Almere Oostvaarders. The interchange budget is not binding for Gd≥M∀d∈Dand including

maintenance routing can decreases the cost by a total of 25.4%. Removing the interchange station budget

decreases the cost with another 13.6%.

Budget #sols Opened facilities Cost (millions)

0 2 ’s-Hertogenbosch and Hoofddorp (6/10) 5.9

0.25M3 Eindhoven and Hilversum (5/10) 5.2

0.50M2 Eindhoven and Almere Oostvaarders (9/10) 4.7

0.75M1 Eindhoven and Almere Oostvaarders (10/10) 4.5

M1 Eindhoven and Almere Oostvaarders (10/10) 4.4

2M1 Eindhoven and Almere Oostvaarders (10/10) 4.4

∞1 Eindhoven and Almere Oostvaarders (10/10) 4.4

No gs3 Eindhoven and Almere Oostvaarders (8/10) 3.8

Table 7: Network interchange budget results for the SMLRP.

Table 8 shows the inﬂuence of the annual network interchange budget for the RMLRP. Again, all

solutions consist of one maintenance facility in the south of the large Randstad and one in the north.

’s-Hertogenbosch and Hoofddorp may be preferable for instances with a low network interchange budget,

while Eindhoven and Hilversum may be preferable for instances with a high network interchange budget.

In almost all cases, two facilities are opened, one in the north of the Randstad and one at the south

of the large Randstad. The network interchange budget is not binding for Gd≥0.75M∀d∈Dand

increasing the budget decreases the cost by 15.7%. When we remove the station interchange restrictions,

we can decrease the cost by another 10.2%. Furthermore, the RMLRP solution values are higher than

the solution values of the SMLRP, as expected.

7.2.2 Expected value of perfect information and stochastic/robust solution

In the initial experiments, the combination of two facilities – one in the north and one in the south of

the randstad in respectively circle 1 and 2 of Figure 4 – provide a good solution. The optimality gaps of

these solutions are usually around 2%. Similar solutions are found in Section 7.2.1 and online Appendix

C independent of the network interchange budget or the number of scenarios.

We will now look at the expected value of perfect information, and the value of the stochastic or robust

solution. Both measures are common measures within the stochastic programming literature (Birge and

Louveaux, 1997). The expected value of perfect information is the value of the SMLRP/RMLRP minus

29

Budget #sols Opened facilities Cost (millions)

0 2 ’s-Hertogenbosch and Hoofddorp (8/10) 7.0

0.25M4 ’s-Hertogenbosch and Hoofddorp (6/10) 6.3

0.50M4 Eindhoven and Hilversum (5/10) 6.0

0.75M3 ’s-Hertogenbosch and Hoofddorp (6/10) 5.9

M7 Eindhoven and Hilversum (4/10) 5.9

2M6 Eindhoven and Hilversum (4/10) 5.9

∞6 Eindhoven and Hilversum (4/10) 5.9

No gs4 ’s-Hertogenbosch and The Hague (8/10) 5.3

Table 8: Network interchange budget results for the RMLRP.

the wait and see solution. It is a measure that assesses how valuable perfect information about the

future is. The value of the stochastic and robust solution is the improvement of adding future scenarios

compared with only using the current situation. The expected value for the current case can be evaluated

by solving the second-stage problem for all scenarios while using the opened facilities of the current

situation. The value of the robust/stochastic solution is now the expected value of the current case

minus the SMLRP/RMLRP optimal objective value.

When we solve the current case scenario with a network interchange budget of 0.75M, the optimal

solution is to open only Almere Oostvaarders with an optimal objective of 3.3 million per year. However,

when we evaluate this solution by solving the MRP for an instance with 65536 scenarios, the objective

becomes 5.4 million euros per year for the average case objective and 7.7 million euros per year for the

absolute robust objective. As a consequence, the expected value of the stochastic/robust solution is

respectively 9.3% and 18.2%. This means that neglecting uncertainty about future line plans costs on

the order of 10%. The optimal objective for the wait and see solution (8192 scenarios), a solution for

which the best facilities are opened for each scenario separately, is 4.6 million for the SMLRP and 6.1

million for the RMLRP. This gives an expected value of perfect information of 2.1% for the SMLRP and

3.2% for the RMLRP.

We expect that the expected value of perfect information is low, because the combination of opening

a maintenance facility in the north and south Randstad (see Figure 4) is a good solution for all scenarios.

When the solution is not optimal, it is generally close to optimal. For the NS this implies three important

insights:

1. It is important to model uncertainty about the future to make good decisions. Ignoring this

uncertainly increases cost by around 10%.

2. The risk attitude of the decision maker hardly aﬀects the best decisions, although it does aﬀect

the objective value. In particular, any solution with a facility in circles 1 and 2 of Figure 4 is close

30

to optimal.

3. Investing in more accurate forecasts of future line plans (expected value of perfect information) has

very limited beneﬁts.

8 Conclusion

We have formulated two novel models for the maintenance location routing problem and used diﬀerent

algorithms to solve them. Our IMIP formulation and the SA method work quite well and can solve

industrial size instances. The SA method performs computationally better than the IMIP for the RMLRP

and requires less memory as it only has to consider a subset of the scenarios. We expect that the

success of our IMIP formulation can be explained by the fact that it is a very eﬃcient formulation

that simpliﬁes a multi-commodity problem to a single-commodity problem and reduces the memory

requirements by decreasing the number of variables and constraints by Θ(Pd∈D|Ld|2|NC|+|Ld||Ad

I|)

and Θ(Pd∈D|Ld|2+|NC||Ld|), respectively. Furthermore, the solution speed of MIP solvers have

increased enormously in recent years, while the current 64-bit computer architectures has increased the

maximum RAM usage from 232 diﬀerent values (3-4 GB) to 264 values (18 EB, 1 EB = 109GB).

The case study at the NS indicates that a robust solution exists that gives good values for both the

SMLRP as RMLRP. This solution consists of opening two facilities one in the north and one in the

south of the larger randstad (circles 1 and 2 of Figure 4). Furthermore, cost savings up to 25.4% for the

SMLRP and up to 15.7% for the RMLRP can be made by improving the network interchange budget

and including scenarios saves 9.3% for the SMLRP and 18.2% for the RMLRP relative to only using the

current line plan scenario.

An interesting future direction for research is to make the price of the facilities dependent on the

provided capacity. In such a case, solutions with (approximately) the same facility costs, can consist of

many small facilities or a few larger facilities. As it is costly to have suﬃcient capacity for all possible

scenarios, even unlikely ones, we can also allow some recoverability. This recoverability can consist of

building additional facilities, selling facilities, or upgrading them to a higher capacity.

Acknowledgements

The authors thank the Associate Editor and the three anonymous referees for suggestions that improved

the paper. In addition the authors would like to thank the people from the Netherlands Railways for

the many discussions. We want to especially acknowledge Mei Li Kho, for gathering the current case

(2015) data for the case study, and Bob Huisman and Geert-Jan van Houtum for giving valuable input.

This study was funded by Nedtrain. Joachim Arts gratefully acknowledges funding through veni grant

number 451-16-025.

31

References

E. ´

Alvarez-Miranda, E. Fern´andez, and I. Ljubi´c. The recoverable robust facility location problem.

Transportation Research Part B: Methodological, 79:93–120, 2015.

Y. An and B. Zeng. Exploring the modeling capacity of two-stage robust optimization: Variants of

robust unit commitment model. IEEE Transactions on Power Systems, 30(1):109–122, 2015.

Y. An, B. Zeng, Y. Zhang, and L. Zhao. Reliable p-median facility location problem: two-stage robust

models and algorithms. Transportation Research Part B: Methodological, 64:54–72, 2014.

L. Anderegg, S. Eidenbenz, M. Gantenbein, C. Stamm, D. S. Taylor, B. Weber, and P. Widmayer. Train

routing algorithms: Concepts, design choices, and practical considerations. In Proceedings of the Fifth

Workshop on Algorithm Engineering and Experiments, volume 111, pages 106–118. SIAM, 2003.

A. Ben-Tal, A. Goryashko, E. Guslitzer, and A. Nemirovski. Adjustable robust solutions of uncertain

linear programs. Mathematical Programming, 99(2):351–376, 2004.

D. Bertsimas, E. Litvinov, X. A. Sun, J. Zhao, and T. Zheng. Adaptive robust optimization for the

security constrained unit commitment problem. IEEE Transactions on Power Systems, 28(1):52–63,

2013.

J. R. Birge and F. V. Louveaux. Introduction to Stochastic Programming. Springer, 1997.

T. C. Chan, Z.-J. M. Shen, and A. Siddiq. Robust deﬁbrillator deployment under cardiac arrest location

uncertainty via row-and-column generation. Operations Research, 2017.

L. Clarke, E. Johnson, G. Nemhauser, and Z. Zhu. The aircraft rotation problem. Annals of Operations

Research, 69:33–46, 1997.

A. M. Costa. A survey on benders decomposition applied to ﬁxed-charge network design problems.

Computers & Operations Research, 32(6):1429–1450, 2005.

Z. Drezner and H. W. Hamacher. Facility location: applications and theory. Springer Science & Business

Media, 2001.

T. A. Feo and J. F. Bard. Flight scheduling and maintenance base planning. Management Science, 35

(12):1415–1432, 1989.

V. Gabrel, M. Lacroix, C. Murat, and N. Remli. Robust location transportation problems under uncertain

demands. Discrete Applied Mathematics, 164:100–111, 2014.

R. Gopalan. The aircraft maintenance base location problem. European Journal of Operational Research,

236(2):634–642, 2014.

32

R. Jiang, M. Zhang, G. Li, and Y. Guan. Benders decomposition for the two-stage security constrained

robust unit commitment problem. Online Optimization, 2011.

M. Khatami, M. Mahootchi, and R. Z. Farahani. Benders decomposition for concurrent redesign of

forward and closed-loop supply chain network with demand and return uncertainties. Transportation

Research Part E: Logistics and Transportation Review, 79:1–21, 2015.

P. Kouvelis and G. Yu. Robust discrete optimization and its applications, volume 14. Springer Science

& Business Media, 2013.

G. Laporte, S. Nickel, and F. S. da Gama. Location science. Springer, 2016.

C. Lee, C. Liu, S. Mehrotra, and Z. Bie. Robust distribution network reconﬁguration. IEEE Transactions

on Smart Grid, 6(2):836–842, 2015.

K. T. Lieckens, P. J. Colen, and M. R. Lambrecht. Optimization of a stochastic remanufacturing network

with an exchange option. Decision Support Systems, 54:1548–1557, 2013.

G. Mar´oti and L. Kroon. Maintenance routing for train units: The transition model. Transportation

Science, 39(4):518–525, 2005.

G. Mar´oti and L. Kroon. Maintenance routing for train units: The interchange model. Computers &

Operations Research, 34(4):1121–1140, 2007.

M. T. Melo, S. Nickel, and F. Saldanha-da Gama. Facility location and supply chain management–a

review. European Journal of Operational Research, 196(2):401–412, 2009.

G. Nagy and S. Salhi. Location-routing: Issues, models and methods. European Journal of Operational

Research, 177(2):649–672, 2007.

F. Piu and M. G. Speranza. The locomotive assignment problem: a survey on optimization models.

International Transactions in Operational Research, 21(3):327–352, 2014.

Prorail and NS. Beter en Meer, 2014. URL https://www.rijksoverheid.nl/documenten/rapporten/

2014/03/28/bijlage-1e-operationele-uitwerking-prorail-en-ns-beter-en-meer.

J. A. Rappold and B. D. Van Roo. Designing multi-echelon service parts networks with ﬁnite repair

capacity. European Journal of Operational Research, 199:781–792, 2009.

E. D. Santibanez-Gonzalez and A. Diabat. Solving a reverse supply chain design problem by improved

Benders decomposition schemes. Computers & Industrial Engineering, 66(4):889–898, 2013.

T. Santoso, S. Ahmed, M. Goetschalckx, and A. Shapiro. A stochastic programming approach for supply

chain network design under uncertainty. European Journal of Operational Research, 167(1):96–115,

2005.

33

A. Sarac, R. Batta, and C. M. Rump. A branch-and-price approach for operational aircraft maintenance

routing. European Journal of Operational Research, 175(3):1850–1869, 2006.

Z.-J. M. Shen, R. L. Zhan, and J. Zhang. The reliable facility location problem: Formulations, heuristics,

and approximation algorithms. INFORMS Journal on Computing, 23(3):470–482, 2011.

L. V. Snyder. Facility location under uncertainty: a review. IIE Transactions, 38(7):547–564, 2006.

C. Swamy and D. B. Shmoys. Approximation algorithms for 2-stage stochastic optimization problems.

ACM SIGACT News, 37(1):33–46, 2006.

K. T. Talluri. The four-day aircraft maintenance routing problem. Transportation Science, 32(1):43–53,

1998.

H. ¨

Uster and H. Agrahari. A Benders decomposition approach for a distribution network design problem

with consolidation and capacity considerations. Operations Research Letters, 39(2):138–143, 2011.

J. C. W. van Ommeren and A. F. Bumb. Locating repair shops in a stochastic environment. Computers

& Operations Research, 33:1575–1594, 2006.

W. Xie, K. Somani, et al. Optimizing location and capacity for multiple types of locomotive maintenance

shops. Computer-Aided Civil and Infrastructure Engineering, 31(3):163–175, 2016.

B. Zeng and L. Zhao. Solving two-stage robust optimization problems using a column-and-constraint

generation method. Operations Research Letters, 41(5):457–461, 2013.

L. Zhao and B. Zeng. Robust unit commitment problem with demand response and wind energy. In

2012 IEEE power and energy society general meeting, pages 1–8. IEEE, 2012.

34