Title: Maintenance Routing
1Maintenance Routing
CWI, Amsterdam and NS Reizigers, Utrecht
G.Maroti_at_cwi.nl
2Maintenance Routing
Leo Kroon
Erasmus University, Rotterdam NS Reizigers,
Utrecht
Astrid Roelofs
Free University, Amsterdam NS Reizigers, Utrecht
CWI, Amsterdam NS Reizigers, Utrecht
3Maintenance Routing
- What do the planners now do?
- successive shortest paths
- network flow and node potential
4Maintenance Routing
?
- What do the planners now do?
- successive shortest paths
- network flow and node potential
5Problem formulation
Train units
After reaching a kilometer limit, they have to be
checked.
In practice the most urgent units go for
maintenance.
The operational plan must be changed.
Bottleneck shunting
6Problem formulation
(Very) naive idea solve the shunting problem at
each station
Natural decomposition solve the problem
separately
for the rolling stock types
(and try to estimate the shunting difficulty)
Solution new rolling stock schedule in the
planning horizon
7Problem formulation
8Problem formulation
- delays
- shortage of crew
- shortage of rolling stock
The planning horizon is short (e.g. 3 days).
9Maintenance Routing
?
- What do the planners now do?
- successive shortest paths
- network flow and node potential
10What do they now do?
1. Assign a most urgent unit to a first available
maintenance job
2. Try to route it there
3. Call the local sunting crew Is the route
feasible?
4. Iterate this process
If no solution, change a bit the deadlines (1
day).
11What do they now do?
12What do they now do?
Assigned maintenance job
Night change
13What do they now do?
Assigned maintenance job
Night change
14What do they now do?
Assigned maintenance job
Daily change
15What do they now do?
Assigned maintenance job
Daily change maybe possible
16What do they now do?
Assigned maintenance job
Daily change maybe possible
17What do they now do?
Assigned maintenance job
Daily change
18What do they now do?
Assigned maintenance job
Daily change (and a night change)
19What do they now do?
Assigned maintenance job
Empty train movement
20What do they now do?
Assigned maintenance job
Empty train movement
(taking care of the balance)
21Maintenance Routing
- What do the planners now do?
?
- successive shortest paths
- network flow and node potential
22A graph representation
Nodes arrival and departure events
Arcs operational plan extra possibilities
23A graph representation
Night arcs
Grey box permitted or forbidden arcs
A perfect matching is required
24A graph representation
Night arcs
Assumption a small number of changes can be
carried out
25A graph representation
Day arcs
Simple daily change possibility
26A graph representation
Day arcs
If we allow only one change for each train unit¼
¼it is enough to insert all these arcs
27A graph representation
Day arcs
In case we allow also more complex changes¼
28A graph representation
Day arcs
However, we did not implement multiple changes
because
they did not give any extra possibility (in the
test data)
29A graph representation
Empty train arcs
extra arcs between the boxes all or some of them
(a small number is enough)
30Maintenance Routing
- What do the planners now do?
?
- successive shortest paths
- network flow and node potential
31Models
Solution a new operational plan, i.e.
- perfect matching on the Night Arcs
- perfect matching on the Day Arcs
such that each urgent unit gets to the
maintenance facility.
32Models
Quality of a solution the extra shunting cost
Linear cost function cost on the arcs
c (a) 0 if a is in the original plan
c (a) ³ 0 otherwise
Minimize the total sum of arc costs.
Idea the closer to the original plan the better
33Models
Example
Station Utrecht
cheap
expensive
expensive
34Models
Night arcs cheap, not too expensive or almost
impossible
Day arcs typically more expensive (more risky)
Empty train arcs very expensive
- carriage kilometer
- crew schedule
35Models
Test data rolling stock type Sprinter
- 52 units (duties)
- 1 maintenance job on each workday
- 1 maintenance station
- 10 terminal stations
- 2 further possible (daily) shunting stations
36(No Transcript)
37(No Transcript)
38Maintenance Routing
- What do the planners now do?
- successive shortest paths
?
- network flow and node potential
39Successive shortest paths
Algorithm
1. Match the urgent train units to the
maintenance jobs
2. For each urgent unit
determine a shortest path in the graph
delete this path from the graph
take the next urgent unit
40Successive shortest paths
Easy, simple, very fast
Takes no care of matching conditions (day, night)
Ad hoc ideas are necessary
41Maintenance Routing
- What do the planners now do?
- successive shortest paths
?
- network flow and node potential
42Multicommodity flow
1
3
2
Solution Perfect matching in each box
s.t. the deadline conditions are fullfilled
43Multicommodity flow
Matching variables m on the Night Arcs and Day
Arcs (0-1 valued).
Still needed
linear inequalities expressing that
1. each urgent unit reaches the maintenance
facility
2. in the time limit
44Multicommodity flow
1
3
2
A 1-flow for each urgent unit
45Multicommodity flow
2
Deadline
46Multicommodity flow
Variables
- matching variables m
- flows x1, x2, x3,
Constraints
- matching constraints
- conservation rule for each flow
- starting and terminal constraints for the flows
- å xi m(e)
47Multicommodity flow
Objective function
S
(c (a) m(a) a Î Night or Day Arcs)
minimize
48Multicommodity flow
If m is integral, the values x may be chosen
float (read-valued).
If x and m are integral on the Day Arcs,
the other variables may be chosen
float.
49Maintenance Routing
- What do the planners now do?
- successive shortest paths
?
- network flow and node potential
50Network flow
Having fixed a matching m,
set all arc capacities 1.
51Network flow
- x Arcs 0 1
- conservation rule for every nodes ¹ s, t
- the flow value is 3 ( of urgent units)
- x(e) m(e) for Night Arcs
52Network flow
Given a digraph G and a function C Arcs R,
p is a node potential (for the longest path)
if
C(uv) p(u) - p(v)
for every arc uv.
53Network flow
Having fixed a matchig m
- longest path the only path
54Network flow
1
3
2
Instead of the deadlines
55Network flow
The important inequalities
p(u) d(u) for urgent
unit starting nodes
p(u) - p(v) ³ 1 - Big (1 - m(uv)) for Day and
Night Arcs
LB(v) p(v) UB(v) for each
node
The bounds LB and UB from the graph structure
Then Big UB(v) - LB(u) 1
56Network flow
Variables
- matching variables m
- flow variables x
- potential variables p
57Network flow
Variables
- matching variables m
- flow variables x
- potential variables p
Constraints
- matching constraints
- flow constraints
- potential constraints
58Network flow
Objective function
S
(c (a) m(a) a Î Night or Day Arcs)
minimize
59Maintenance Routing
- What do the planners now do?
- successive shortest paths
- network flow and node potential
?
60Computational results
- Test data rolling stock type Sprinter
- 3 - 5 days planning horizon
- 3 - 5 urgent units
- IBM PC, Pentium III 900 MHz, 256 MB RAM
- Software ILOG OPL Studio 3.0, CPLEX 7.0
61Computational results
Only night connections (5 nights)
62Computational results
All possibilities
63Maintenance Routing
- What do the planners now do?
- successive shortest paths
- network flow and node potential
?
64Future
A lot cooperation with planners and shunting crew
in
- modelling the night shunting possibilities
(costs)
- finding the set of day connections
- determining the practical relevance of the
solutions
New criteria for the rolling stock scheduling
65Thank you.