Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling: Models and Algorithms Stefano Gualandi Universit` a di Pavia, Dipartimento di Matematica email: stefano.gualandi@unipv.it twitter: @famo2spaghi blog: http://stegua.github.com
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation 1 Introduction 2 Vehicle Scheduling (VS) 3 Capacitated VS 4 Multidepot VS 5 VS and Column Generation
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Overview of Planning Activities (Desaulniers&Hickman2007) Strategic Network Design str Planning Tactical Frequency Setting Planning Timetabling Operational Planning Vehicle Scheduling Bus parking & Driver Scheduling dispatching Rostering Maintenance Scheduling
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Strategic Planning: Network Design (Urban)
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Strategic Planning: Network Design (Regional)
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Tactical Planning: Frequency Setting and Timetabling
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Overview of Planning Activities (Desaulniers&Hickman2007) Strategic Network Design str Planning Tactical Frequency Setting Planning Timetabling Operational Planning Vehicle Scheduling Bus parking & Driver Scheduling dispatching Rostering Maintenance Scheduling
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation 4 Leuthardt Survey (Leuthardt 1998, Kostenstrukturen von Stadt-, Überland- und Reisebussen, DER NAHVERKEHR 6/98, pp. 19-23.) bus costs (DM) urban % regional % crew 349,600 73.5 195,000 67.5 depreciation 35,400 7.4 30,000 10.4 calc. interest 15,300 3.2 12,900 4.5 materials 14,000 2.9 10,000 3.5 fuel 22,200 4.7 18,000 6.2 repairs 5,000 1.0 5,000 1.7 other 34,000 7.1 18,000 7.2 total 475,500 100.0 288,900 100.0 Ralf Borndörfer Vehicle Scheduling 03.10.2009 4
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation 1 Introduction 2 Vehicle Scheduling (VS) 3 Capacitated VS 4 Multidepot VS 5 VS and Column Generation
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling Given a timetable as a set V = { v 1 , . . . , v n } of trips , where for each trip v i we have: v i t i a i o i d i t i : departure time v 1 7:10 7:30 T a T b a i : arrival time v 2 7:20 7:40 T c T d v 3 7:40 8:05 T b T a o i : origin (departure terminal) v 4 8:00 8:30 T d T c v 5 8:35 9:05 T c T d d i : destination (arrival terminal) h ij T a T b T c T d Given the deadheading trips (i.e. trips T a 0 15 20 20 without passengers) of duration h ij T b 15 0 25 10 T c 20 25 0 15 between every pair of terminals T d 20 10 15 0 Definition (Compatible Trips) A pair of trips ( v i , v j ) is compatible if and only if a i + h ij ≤ t j
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling Definition (Vehicle Duty) A subset C = { v i 1 , . . . , v i k } of V is a vehicle duty (or block) if ( v i j , v i ( j + 1 ) ) is a compatible pair of trips, for j = 1 , . . . , k − 1 Definition (Vehicle Schedule) A collection C 1 , . . . , C r of vehicle duties such that each trip v in V belongs to exactly one C j with j ∈ { 1 , . . . , r } is said to be a Vehicle Schedule
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling: Example v i t i a i o i d i h ij T a T b T c T d v 1 7:10 7:30 T a T b T a 0 15 20 20 v 2 7:20 7:40 T c T d T b 15 0 25 10 v 3 7:40 8:05 T b T a T c 20 25 0 15 v 4 8:00 8:30 T d T c T d 20 10 15 0 v 5 8:35 9:05 T c T d Example : These 5 trips can be scheduled with 2 vehicle duties: C 1 = { v 1 , v 3 } C 2 = { v 2 , v 4 , v 5 }
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling and Matchings We build a complete bipartite graph G = ( S , T , A 1 ∪ A 2 ) S = { d 1 , . . . , d n } : a node for each arrival terminal T = { o 1 , . . . , o n } : a node for each departure terminal S T d 1 o 1 d 2 o 2 d 3 o 3 d 4 o 4 d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling and Matchings We build a complete bipartite graph G = ( S , T , A 1 ∪ A 2 ) A 1 = { ( d i , o j ) | ( v i , v j ) is a compatible pair of trips } S A 1 T v i t i a i o i d i v 1 7:10 7:30 T a T b d 1 o 1 v 2 7:20 7:40 T c T d v 3 7:40 8:05 T b T a v 4 8:00 8:30 T d T c d 2 o 2 v 5 8:35 9:05 T c T d d 3 o 3 h ij T a T b T c T d T a 0 15 20 20 T b 15 0 25 10 d 4 o 4 T c 20 25 0 15 T d 20 10 15 0 d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Vehicle Scheduling and Matchings A 2 = A \ A 1 , where each ( d i , o j ) ∈ A 2 corresponds to 1 pull-out : deadheading trip from d i to the depot 2 pull-in : deadheading trip from the depot to o j S A 2 T d 1 o 1 v i t i a i o i d i d 2 o 2 v 1 7:10 7:30 T a T b v 2 7:20 7:40 T c T d v 3 7:40 8:05 T b T a d 3 o 3 v 4 8:00 8:30 T d T c v 5 8:35 9:05 T c T d d 4 o 4 d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS: Matching S A T d 1 o 1 Complete bipartite graph d 2 o 2 v i t i a i o i d i v 1 7:10 7:30 T a T b v 2 7:20 7:40 T c T d d 3 o 3 v 3 7:40 8:05 T b T a v 4 8:00 8:30 T d T c v 5 8:35 9:05 T c T d d 4 o 4 d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS: Matching S A T Example of solution: d 1 o 1 C 1 = { v 1 , v 3 } C 2 = { v 2 , v 4 , v 5 } d 2 o 2 v i t i a i o i d i v 1 7:10 7:30 T a T b d 3 o 3 v 2 7:20 7:40 T c T d v 3 7:40 8:05 T b T a v 4 8:00 8:30 T d T c d 4 o 4 v 5 8:35 9:05 T c T d d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS and Integer Linear Programming Integer Linear Programming formulation: � min c ij x ij (1) ij ∈ A � s.t. x ij = 1 ∀ j ∈ T (2) i ∈ S � x ij = 1 ∀ i ∈ S (3) j ∈ T x ij ∈ { 0 , 1 } ∀ ( i , j ) ∈ A . (4) To minimize the fleet size we set: 1 c ij = 0 for each ( i , j ) ∈ A 1 2 c ij = 1 for each ( i , j ) ∈ A 2
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS and Integer Linear Programming Integer Linear Programming formulation: � min c ij x ij (5) ij ∈ A � s.t. x ij = 1 ∀ j ∈ T (6) i ∈ S � x ij = 1 ∀ i ∈ S (7) j ∈ T x ij ∈ { 0 , 1 } ∀ ( i , j ) ∈ A . (8) To minimize the operational costs we set: 1 if ( i , j ) ∈ A 1 , c ij is the deadheading costs from d i to o j plus the idle time cost before the starting of v j 2 if ( i , j ) ∈ A 2 , c ij is the sum of the pull-out and pull-in costs
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Question: with very high idle time costs? S A T d 1 o 1 d 2 o 2 d 3 o 3 d 4 o 4 d 5 o 5
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS: Questions? What if the number of vehicles is limited? How can we modify the ILP formulation? How can we modify the Assignment formulation?
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Single Depot VS: Capacitated Matching Integer Linear Programming formulation: � min (9) c ij x ij ij ∈ A � s.t. x ij = 1 ∀ j ∈ T (10) i ∈ S � x ij = 1 ∀ i ∈ S (11) j ∈ T � x ij ≤ k (12) ij ∈ A 2 x ij ∈ { 0 , 1 } ∀ ( i , j ) ∈ A . (13) How can we modify the Assignment formulation?
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation (Recall) Minimum Cost Flow Problem Given a directed graph G = ( N , A ) , where each node i has a flow balance parameter b i (if b i > 0 is a source node, if b i < 0 sink node, if b i = 0 transhipment node) each arc ( i , j ) has a non negative cost c ij each arc ( i , j ) has a non negative capacity u ij the problem of finding a feasible flow f ij on each arc that respects the node flow balances and the arc capacities, and which minimize the summation � ij ∈ A c ij f ij , is called the Minimum Cost Flow Problem
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Min Cost Flow: Computational Complexity Good news: Min Cost Flow is Polynomially Solvable!
Introduction Vehicle Scheduling (VS) Capacitated VS Multidepot VS VS and Column Generation Capacitated Matching: Min Cost Flow Formulation S A 1 T +1 -1 d 1 o 1 +1 -1 d 2 o 2 +1 -1 t s d 3 o 3 +1 -1 d 4 o 4 d 5 o 5 +1 -1
Recommend
More recommend