vehicle scheduling problems
TRANSCRIPT
Ralf Borndörfer DFG Research Center MATHEON “Mathematics for key technologies”Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)Löbel, Borndörfer & Weider GbR (LBW)
[email protected] http://www.zib.de/borndoerfer
Martin GrötschelBeijing Block Course
“Combinatorial Optimization at Work”
September 25 – October 6, 2006
09M1 LectureVehicle Scheduling Problems
Ralf Borndörfer
2
BVG (Berlin)
Ralf Borndörfer
3
bus costs (DM) urban % regional
73.5 195,000
30,000
12,900
10,000
18,000
5,000
18,000
288,900
7.4
3.2
2.9
4.7
1.0
7.1
100.0
crew
depreciation
calc. interest
materials
fuel
repairs
other 34,000 7.2
total
%
349,600 67.5
35,400 10.4
15,300 4.5
14,000 3.5
22,200 6.2
5,000 1.7
475,500 100.0
Leuthardt Survey(Leuthardt 1998, Kostenstrukturen von Stadt-, Überland- und Reisebussen, DER NAHVERKEHR 6/98, pp. 19-23.)
Ralf Borndörfer
4
Vehicle Utilization
Ralf Borndörfer
5
"Camel Curve"
68
Ralf Borndörfer
6
Interlining
too short to turntoo long to wait
best choice
Ralf Borndörfer
7
Sea Freight(Koopmans 1965, 7 sources, 7 sinks, all sea links)
Ralf Borndörfer
8
Optimal Allocation of Scarce Resources(Nobel Price in Economics 1975)
Leonid V. Kantorovich Tjalling C. Koopmans
Ralf Borndörfer
9
Single Depot Vehicle Scheduling
The Assignment ProblemInput: 3 Buses, 3 trips, costs
Output: cost minimal assignment
1 2 3
34
33
76 7
8 10
1 2 3
SolutionCost = 20
Buses
Trips
Ralf Borndörfer
10
SolutionCost = 17
Single Depot Vehicle Scheduling
The Greedy-Heuristikheuretikos (gr.): inventiveheuriskein (gr.): to find
1 2 3
34
33
76 7
8 10
1 2 3
Buses
Trips
Ralf Borndörfer
11
Single Depot Vehicle Scheduling
The Greedy-Heuristikheuretikos (gr.): inventiveheuriskein (gr.): to find
1 2 3
34
33
76 7
8 10
1 2 3
Buses
Trips
SolutionCost = 16
Ralf Borndörfer
12
OptimumCost = 15
Single Depot Vehicle Scheduling
The "Primal Problem"Minimum Cost
Assignment
The "Dual Problem"Maximum Sales Revenues
"Shadow Prices"
5 4 0
34
33
76 7
8 10
7 8 9
Buses
Trips
Ralf Borndörfer
13
Mathematical Models(Assignment Problem)
Graph Theoretic Model Integer Programming Model
Linear Programming Relaxation
1 2 3
34
33
76 7
8 10
1 2
11 12 13
21 22 23
31 32 33
11 12 13
21 22 23
31 32 33
11 21 31
12 22 32
13 23 33
11 33
11 33
min 3 3 43 7 67 8 10
s.t. 111111
, , 0, , {0,1}
+ ++ + ++ + +
+ + =+ + =+ + =+ + =+ + =+ + =
≥∈
……
x x xx x xx x xx x xx x xx x xx x xx x xx x xx xx x
3
Ralf Borndörfer
14
"Shadow Prices"
Ralf Borndörfer
15
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 033
443
3
33 7
7
66
77 8
81010
0 0 0
Ralf Borndörfer
16
Single Depot Vehicle Scheduling
The „Successive Shortest Path“-Algorithm
0 0 033
443
3
33 7
7
66
77 8
81010
0 0 0
00 0 0
000
Boundcost = 15Partial sol.cost = 0
Buses
Trips
Ralf Borndörfer
17
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 030
403
0
30 7
4
62
74 8
5106
0 0 0
00 0 0
000
+3+3
+0 +0 +0Bound
cost = 10Partial sol.cost = 3
+4
Buses
Trips
Ralf Borndörfer
18
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 030
40-3
0
30 7
4
62
74 8
5106
3 3 4
00 0 0
000 Buses
Trips
Boundcost = 10Partial sol.cost = 3
Ralf Borndörfer
19
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 030
40-3
0
30 7
4
62
74 8
5106
3 3 4
00 0 0
000
+0+0
+0 +0 +0
+0
Buses
Trips
Boundcost = 10Partial sol.cost = 6
Ralf Borndörfer
20
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 0-30
403
0
-30 7
4
62
74 8
5106
3 3 4
00 0 0
000 Buses
Trips
Boundcost = 10Partial sol.cost = 6
Ralf Borndörfer
21
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
0 0 0-30
403
0
-30 7
4
62
74 8
5106
3 3 4
00 0 0
000
+5+4
+5 +4 +0
+5
Buses
Trips
Bound= 15
= 15
costPartial sol.cost
Ralf Borndörfer
22
Single Depot Vehicle Scheduling
The „Successive Shortest Path“ Algorithm
5 4 030
-403
1
-30 7
3
61
70 -8
0101
7 8 9
00 0 0
000 Buses
Trips
Boundcost = 15Partial sol.cost = 15
Ralf Borndörfer
23
The „Successive Shortest Path“ AlgorithmPath Search
Solution + Proof
Efficient
Single Depot Vehicle Scheduling
5 4 030
403
1
30 7
3
61
70 8
0101
7 8 9
Buses
Trips
Boundcost = 15Solution
cost = 15
Ralf Borndörfer
24
D D 1 2 3
D D 1 2 3
4
4
1
1
2
2
3
3
D
D
4
4
Single Depot Vehicle Scheduling(Assignment Model)
1
1
2
2
3
3
D
D
4
4
D D 1 2 3
D D 1 2 3
4
4
D D 1 2 3
D D 1 2 3
4
4
Ralf Borndörfer
25
SPEC
Ralf Borndörfer
26
Vehicle Scheduling
InputTimetabled and deadhead tripsVehicle types and depot capacitiesVehicle costs (fixed and variable)
OutputVehicle rotations
ProblemCompute rotations to cover all timetabled trips
GoalsMinimize number of vehiclesMinimize operation costsMinimize line hopping etc.
Ralf Borndörfer
27
Graph Theoretic Model
Ralf Borndörfer
28
Example: Regensburg
Ralf Borndörfer
29
Vehicle Scheduling
Definition + cost of deadhead tripsPrecise control at point, time, or tripChanges of vehicles, lines, modes, turning, etc.Automatic generation of pull-out-pull-in tripsMaintencance of all possible deadhead trips
Depot capacities (soft)
Fleet minimum: pull-in tripsNo line changes: interlining tripsTurning: turnsPeaks: pull-in/pull-out tripsDepot capacities: soft upper limits
Ralf Borndörfer
30
Timelines
d
d
Ralf Borndörfer
31
Integer Programming Model(Multicommodity Flow Problem)
0
min
0 , Vehicle flow
0 Aggregated flow
1 Timetabled trips
Depot capacities
{0,1} , Deadhead trips
− = ∀
= ∀
= ∀
≤ ∀
∈ ∀
−
∑∑
∑ ∑
∑∑ ∑∑
∑∑
∑
d dij ij
d ij
d dij jk
i kd dij jk
d i d kdij
d id
j dj
dij
c x
x x j d
x x j
x j
x d
x ij d
κ
Ralf Borndörfer
32
Theoretical Results
Observation: The LP relaxation of theMulticommodity Flow Problem is in general notinteger.
Theorem: The Multicommodity Flow Problem isNP-hard.
Theorem (Tardos et. al.): There are pseudo-polynomial time approximation algorithms to solve the LP-relaxation of Multicommodity FlowProblems which are faster than general LP methods.
Ralf Borndörfer
33
Lagrangean Relaxation
min
0
=
=
≥
T
bBx dx
c xAx
min (
0
max )+ −
=
≥
T b
dx
c x Ax
Bxλ
λ
(max min )+ −Ti ii
bc x Axλ
λ( )max fλ
λ
=
==
x1
x2
x3x4
P(A,b)
f1
f2
f3
f4fP(A,b)∩P(B,d)
Ralf Borndörfer
34
Bundle Method(Kiwiel [1990], Helmberg [2000])
Max
X polyhedral (piecewise linear)
λ
f
λ1
1fλ
λ2
f̂
λ3
μ μ μλ λ= + −T T( ) ( )f c x b Ax
+ = − −2
1ˆ ˆargmax ( )
2k
k k kuf
λλ λ λ λ
∈=ˆ ( ) : min ( )
kk Jf fμμ
λ λ
∈= + −T T( ) : min ( )
x Xf c x b Axλ λ
Ralf Borndörfer
35
Primal Approximation
Theorem
∈⇒ ( )k k Nx converges to a point { }∈ = ∈: ,x x Ax b x X
T( ) ( )k k kf c x b Axλ λ= + −k̂f
z
f
λ
1kf +
1kλ +
+∈
= ∑1k
kJ
x xμ μμ
α
+∈
= + −∑11ˆ ( )
k
k kJ
b Axu μ μ
μλ λ α
0 ( )kb Ax k− → →∞
Ralf Borndörfer
36
Quadratic Subproblem
− −2ˆ ˆmax ( )
2k
k kuf λ λ λ(1)
μ
λ λ
λ μ
− −
≤ ∈
2ˆmax2
s.t. ( ), for all
kk
k
uv
v f J
(2)
μ μ μ μμ μ
μμ
μ
α λ α
α
α μ
∈ ∈
∈
− −
=
≤ ≤ ∈
∑ ∑
∑
21ˆmax ( ) ( )
2
s.t. 1
0 1, for all
k k
k
kJ J
J
k
f b Axu
J
(3)
⇔
⇔
Ralf Borndörfer
37
Bundle Method(IVU41 838,500 x 3,570, 10.5 NNEs per column)
50
100
150
200
250
300
350
400
20 40 60 80 100 120 140 sec
450
bundlevolumebarrier
cascent
Ralf Borndörfer
38
Lagrangean Relaxation I
0
min
0 , Vehicle flow
0 Aggregated flow
1 Timetabled trips
Depot capacities
{0,1} , Deadhead trips
− = ∀
= ∀
= ∀
≤ ∀
∈ ∀
−
∑∑
∑ ∑
∑∑ ∑∑
∑∑
∑
d dij ij
d ij
d dij jk
i kd dij jk
d i d kdij
d id
j dj
dij
c x
x x j d
x x j
x j
x d
x ij d
κ
Ralf Borndörfer
39
Lagrangean Relaxation I
Subproblem: Min-Cost-Flow (single-depot)
0
min
Vehicle flow0 Aggregated flow
1 Timetabled trips
Depot capacities
{0,1} , Deadhead trips
max 0+
= ∀
= ∀
≤ ∀
∈ ∀
⎡ ⎤⎛ ⎞− −⎢ ⎥⎜ ⎟⎝ ⎠⎣ ⎦
−
∑∑
∑∑ ∑∑
∑∑
∑
∑ ∑d dij ij
d ij
d dij jk
d i d kdij
d id
j dj
dij
d dij jk
i k
c x
x x j
x j
x d
x ij d
x xλ
λ
κ
Ralf Borndörfer
40
Lagrangean Relaxation II
0
min
0 , Vehicle flow
0 Aggregated flow
1 Timetabled trips
Depot capacities
{0,1} , Deadhead trips
− = ∀
= ∀
= ∀
≤ ∀
∈ ∀
−
∑∑
∑ ∑
∑∑ ∑∑
∑∑
∑
d dij ij
d ij
d dij jk
i kd dij jk
d i d kdij
d id
j dj
dij
c x
x x j d
x x j
x j
x d
x ij d
κ
Ralf Borndörfer
41
Lagrangean Relaxation II
Subproblem: Several independent Min-Cost-Flows (single-depot)
0
min
0 , Vehicle flow
0 Aggregated flow
Timetabled tripsDepot capacities
{0,1} , Deadhead trips
max 1+
− = ∀
= ∀
≤ ∀
∈ ∀
⎛ ⎞−⎜ ⎟
⎝ ⎠
−
∑∑
∑ ∑
∑∑ ∑∑
∑
∑∑d dij ij
d ij
d dij jk
i kd dij jk
d i d k
dj d
j
dij
dij
d i
c x
x x j d
x x j
x d
x ij d
xλ
λ
κ
Ralf Borndörfer
42
Heuristics
Cluster First – Schedule Second"Nearest-depot" heuristic
Lagrange Relaxation II + tie breaker
Schedule First – Cluster SecondLagrange relaxation I
Schedule – Cluster – RescheduleSchedule: Lagrange relaxation I
Cluster: Look at paths
Solve a final min-cost flow
Plus tabu search
Ralf Borndörfer
43
Lagrangean Relaxation Algorithm
Ralf Borndörfer
44
Computational Results
BVG HHA VHH
depots 10 14
40
timetabled trips 25,000 16,000 5,500
deadheads 70,000,000 15,100,000 10,000,000
cpu mins 200 50 28
vehicle types 44
10
19
Ralf Borndörfer
45
UmlaufoptimierungUmlaufoptimierung mit MICROBUS 2
26.02.2002 4Heiko Klotzbücher
Erzielte Einsparungen durch die Umlaufoptimierung:
Im Busbereich wurden bei einer Gesamtzahl von knapp über 200 Fahrzeugen 5 Busse eingespart.
Im Bahnbereich wurden aufgrund der fehlenden Leerfahrt-und Überholmöglichkeiten keine Fahrzeuge eingespart.
Slide of SWB
Ralf Borndörfer
46
Discussion
PropertiesExploiting all degrees of freedom
Vehicle mix
ExtensionsTrip shifting → current work
Multiperiod scheduling
Periodic schedules
Assimilation
Balanced depot exchange
Maintenance constraints
IntegrationVehicle and duty scheduling → talk of M. Grötschel
Timetabling → next topic
Line planning → research
Ralf Borndörfer
47
Trip Shifting
Ralf Borndörfer
48
Integer Programming Model(Multicommodity Flow Problem)
,
, ,
,
0,
min
0 , , Vehicle flow
0 Aggregated flow
1 Timetabled trips
Depot capacities
{0,1} , , Deadhead trips
− = ∀
= ∀
= ∀
≤ ∀
∈ ∀
−
∑∑
∑ ∑
∑∑ ∑∑
∑∑
∑
d dij ij
d ij
d dij jk
i kd dij jk
d i d k
dij
d i
dj d
j
dij
c x
x x j d
x x j
x j
x d
x ij d
ε εε
ε ε
ε εε ε
ε
εε
ε
ε
κ
ε
Ralf Borndörfer
49
Discussion
PropertiesExploiting all degrees of freedom
Vehicle mix
ExtensionsTrip shifting → current work
Multiperiod scheduling
Periodic schedules
Assimilation
Balanced depot exchange
Maintenance constraints
IntegrationVehicle and duty scheduling → talk of M. Grötschel
Timetabling → next topic
Line planning → research
Ralf Borndörfer
50
Efficiency
50
60
70
80
90
100
55 60 65 70 75 80 85 90Efficiency of Vehicle Schedule [%]
Effic
ienc
y of
Dut
ySc
hedu
le [%
] 53,44% 58,00% 63,90%
A
B C
(A) Sequential Scheduling(B) Duty Oriented Vehicle Scheduling(C) Integrated Scheduling
Ralf Borndörfer
51
Regional Scenarios
Max. duty time 8:00
6:00
6:00 2:00
2:00 6:00
6:00 2:00
2:00
hh:mm deadhead trip (1:00)timetabled trip
6:00
6:00 2:00
2:00
Ralf Borndörfer
52
δδ
=
= ∀= ∀ ∈= ∀ ∈
≤
∈
+
=∈
−
T
out
in
T(ISP) min(1a)(1b)(1c
0, depots ( ( )) 1, \ { } ( ( )) 1, \ {)
(2a)}
{0,
1
{0,1}
(2b)(3) 0
,1}
D
m n
c xN
d y
A
x Dx v v V tx v v V
yBy b
x Dyy
s
Cx
⎧= ⎨⎩
1, if deadhead covers duty element :
0, elsedt
d tC
⎧= ⎨⎩
1, if duty d covers duty elements :
0, sonstdt
tD
Integer Programming Model
Ralf Borndörfer
53
Lagrangean Relaxation
Dual Problem: Find multipliers λ maximizing f
Primal Problem: Find fractional solution(x,y)∈[0,1]mxn fulfilling (1), (2), (3)
Note: Integrality relaxed
∈∈
=
=
−− +
=
T T
y fulfills (2) and[0,
T T
fulfills (1) and{0,1 1]}
( ) :
max
: ( ) : (
mam x (n ( ))
)
inm
V D
yx
x
c C d D y
f
f f
xλ
λ
λ
λ
λ
λ
Ralf Borndörfer
54
Trip Scheduling
InputLines with lengths and speed profilesPassenger volume, frequency, and regularity profilesVehicle types with speeds and capacitiesDepot capacities
OutputTrips and vehicle rotations for all lines
ProblemSchedule trips and vehicle rotations to transport passengers
GoalsMaximize trip regularityMinimize number of passengers left behindMinimize number of vehicles
Ralf Borndörfer
55
Graph Theoretic Model
6:306:31
7:30
8:30
9:30
Ralf Borndörfer
56
Integer Programming Model
00
0
min
0 , Vehicle flow
1 Timetabled trips
Frequencies
Pax volume
Depot capacities
{0,1} , Deadhead trips
∈
∈
− = ∀
≤ ∀
≥ ∀
≥ ∀
≤ ∀
∈ ∀
∑∑
∑ ∑
∑∑
∑∑
∑∑
∑
dj
d j
d dij jk
i kdij
d idij
d ij H
d dij
d ij H
dj d
j
dij
x
x x j d
x j
x H
x d H
x d
x ij d
f
κ
κ
Ralf Borndörfer
57
Computational Results
1 2
lines 11 38
2
frequency 12 38
pax/line/hour > 1,000 > 1,000
vehicles ~ 300 ~ 700
hours 3 3
vehicle types 2
Ralf Borndörfer DFG Research Center MATHEON “Mathematics for key technologies”Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)Löbel, Borndörfer & Weider GbR (LBW)
[email protected] http://www.zib.de/borndoerfer
Martin GrötschelBeijing Block Course
“Combinatorial Optimization at Work”
September 25 – October 6, 2006
09M1 LectureVehicle Scheduling Problems
The End