Loading and unloading. Dispatcher. Locomotive Dispatcher. Train Operation.
Dispatcher. Train Formation. Dispatcher. Infrastructure. Maintenance. Dispatcher.
Research - China
An Integrated Optimization Model and Algorithm for Train Operating Plan and Locomotive Allocation IBM China Research Lab WANG Bao Hua, ZHANG Xin MO Wen Ting, WANG Feng Juan IBM Global Business Services Howard A. Rosen
© 2011 IBM Corporation
Research - China
Motivation Operational Planning
Infrastructure Maintenance Dispatcher
Train Operation Dispatcher
Loading and unloading Dispatcher
Train Formation Dispatcher
Locomotive Dispatcher
Integrated Optimization Methodology and Tool
Train Formation and Locomotive Dispatcher © 2011 IBM Corporation
Research - China
Problem Description Cars are classified at Shunting Yard A
Fueling and maintenance
Locomotive on train 12001 will be re-assigned to train 22001
Cars with same or similar destination costitute train 22001
A locomotive comes from depot to pull train 13002
Train
Locomotive
–
Formation (Make-up)
–
Origin and destination time
Integration
–
Assignment
–
Fueling and maintenance
© 2011 IBM Corporation
Research - China
Literature Review Locomotive Allocation Authors
Planning Level
Objective Function
Model Structure
Solution Strategy
Ziarati (1997)
Operational
Min Operating Cost
Multi-commodity
D&W decomposition
Ziarati (1997)
Tactical
Min Operating Cost
Multi-commodity
Branch & Cut
Ghoseiri (2010)
Operational
Min Operating Cost
Assignment
Genetic Algorithm
Forbes (1991)
Tactical
Min Operating Cost
Assignment
Branch & Bound
Train Operating Plan Authors
Planning Level
Objective Function
Model Structure
Solution Strategy
Haghani (1989)
Tactical
Min Operating and time cost
Non-linear MIP
Heruristic Decomposition
Keaton (1992)
Tactical
Min Operating and time cost
Linear 0-1 IP
Lagragian Relaxation
Marin (1996)
Tactical
Min Operating Cost
Non-linear IP
Local Search Heuristic
Gorman (1998)
Tactical
Min Operating Cost
Linear 0-1 IP
Genetic Algorithm
Train Operating Plan with Asset Balance Authors
Planning Level
Objective Function
Model Structure
Solution Strategy
Anderson (2007)
Tactical
Min Operating and time cost
Linear MIP
Heruristic Decomposition
Anderson (2010)
Tactical
Min Operating and time cost
Linear MIP
Branch and price
© 2011 IBM Corporation
Research - China
Discrete Time-space Network Time Period
Virtual destination for all car flow destined at this yard
Loaded cars are located at these nodes initially
Each car flow corresponds a super arc from its origin to the super node of its destined yard
Virtual destination for all locomotives
© 2011 IBM Corporation
Research - China
Input and Output of the Model Input – Candidate train set (or basic train timetable) with fixed cost and variable cost – Train capacity and power-needed – Initial status of locomotives (location, fuel, etc) with power
– Car flows with required service level – Delivery and delay cost for locomotives and cars
Output – Trip plan for car flows (including classification plan) – Trip plan for locomotive flows (including refueling plan)
© 2011 IBM Corporation
Research - China
Assumptions No empty car involved No blocking policy involved. In other words, each yard corresponds a block Unit flow cost of cars and locomotives are constants Unit time cost of car flows is constant
Power-needed of the train is determined by the infrastructure, not the weight of the train Time between different trains is enough for the classifcation operation of the cars and transfer operation of the locomotives Insert light travel arc as the special kind of train arc manually according to number of operating trains in each track section
© 2011 IBM Corporation
Research - China
Parameter
locomotives with same location, type could be treated as a flow
© 2011 IBM Corporation
Research - China
Parameter (cont'd)
The difference of these two parameters is small and does not affect powerneeded on that arc
© 2011 IBM Corporation
Research - China
Parameter (cont'd)
Decision Variables
© 2011 IBM Corporation
Research - China
Model Development Fixed cost of open arcs
Routing cost of car flows
Routing cost of locomotive flows
© 2011 IBM Corporation
Research - China
Model Development (cont'd) M is a largest number of locomotive which could be assigned to this train
© 2011 IBM Corporation
Research - China
Tabu Search Heuristic by PATH-CHANGE Make all design variables as 1 and solve car routing prolem and locomotive routing problem
Construct Initial Feasible Solution
Step 1 Update tabu list Step 2 Find a neighborhood Step 3 Check if the neighborhood is in the tabu list. If it is, return to Step 2; else, go to Step 4 Step 4 Move to the neighborhood
different path between two nodes with enough capacity
Randomly PATHCHANGE Tabu search
Sub-problem for car flow routing
Sub-problem for locomotive routing
No Termination Condition
Path1 Yes
Path2 Algorithm Terminate © 2011 IBM Corporation
Research - China
Branch-and-Price for Car Routing Problem Find an initial feasible solution for all car flows
Solve the restricted master problem with initial path set and relaxed decision variable
such path exists Generate an attractive path by pricing Considering service level requirement
no such path
Column generation terminates
© 2011 IBM Corporation
Research - China
Initial Feasible Solution for Car Routing Problem Super arc for each car flow with infinity capacity and large enough cost Car flow origin
Car flow destination
Step 1 Generate super arc for each car flow Step 2 Make these super arcs as the initial path set and formulate the Restricted Master Problem (RMP) Step 3 Each car flow will choose the super arc as their initial path, which could be an initial feasible solution of the problem
© 2011 IBM Corporation
Research - China
Solution Strategy for Locomotive Routing Problem
Virtual locomotives with high cost will be located on super arc to obtain an initial feasible solution easily
Define
One feasible path for a specific locomotive. Initial feasible path set should ensure all trains' power requirement
Pl
Pl Pl
© 2011 IBM Corporation
Research - China
Initial Feasible Solution for Locomotive Routing Problem Virtual locomotives are located at the initial time period at each yard
Find a train string
Calculate the min powerneeded of the train string
Update the power of each train in the train string
Another train string exist Train String: A sequence of trains, which could be pulled by a certain locomotive
Yes
No According to train string, generate corresponding path with given format
Assign (virtual) locomotives to paths Path: A sequence of arcs © 2011 IBM Corporation
Research - China
Pricing for Locomotive Routing Problem Define
Find
Reduced Cost
Update
Pl Pl
p*
This path should satisfy all the business rules. If one does not exists, the algorithm terminates with current solution
Solve
© 2011 IBM Corporation
Research - China
Column Generator for Locomotive Routing Problem
Modified arc cost may be negative due to the dual variable. We can change it to positive by multiply -1 to original constraint
If the shortest path of locomotive l L relating to modified arc cost is larger than , no path need to be inserted; Else, the shortest path should be inserted to feasible path © 2011 IBM Corporation
Research - China
Testing Condition Part of the operating network of a Chinese railway container carrier –
12 yard involved
Tabu List –
10 iterations to free after inserting to the list Large yard level
Neighborhood Search Strategy –
Large yard first, small yard second small yard level
Termination Condition –
The optimum does not change in 60 iterations
Comparison between New Methodology and Classic Methodology –
Sequential Optimization with Feedback
–
Integrated Optimization
Input
Train Plan
Highly depend on the experience of dispatcher
Locomotive Plan Feedback
© 2011 IBM Corporation
Research - China
Testing Results No.
Size
Time for SO1
Time for IO2
Gap3
1
10 yards, 2 days, 102 trains, 20 car flows, 25 locomotives
3.5 min
2.4 min
12%
2
10 yards, 2 days, 122 trains, 20 car flows, 30 locomotives
6.5 min
5.2 min
14%
3
12 yards, 2 days, 135 trains, 25 car flows, 35 locomotives
10 min
12 min
20%
4
12 yards, 2 days, 135 trains, 30 car flows, 30 locomotives
9.6 min
12 min
11%
5
12 yards, 2 days, 150 trains, 40 car flows, 40 locomotives
25 min
22 min
21%
1
SO: Sequential Optimization with Feedback IO: Integrated Optimization 3 Gap = (Optimum of SO - Optimum of IO) / Optimum of SO 2
The gap is high partly because of the high fixed cost of train and locomotive © 2011 IBM Corporation
Research - China
Testing Results (Con'd) Exp. KPI
No.1-SO
Num. of Trains
11
Num. of Locos
6
Train· kilometers Train· hours
No.2-IO
No.2-SO
10
No.2-IO
11
-9% 5
2724
7
37
3396
9042
Car· hours
1478
8187
40
-22%
10
3396
40
133440
133440
4927
1478 0%
16
22
7
3611
58
42
13
141372
7262
2164 -7%
No.5-IO
31
12
6926
72
62
17
267216
10312
2868
8536 -17%
110
86 -22%
414231
-8% 2932
15 -12%
-14% 289162
27 -13%
-5%
-19% 2320
21
No.5-SO
-8%
-28% 174282
No.4-IO
-5%
-27%
0% 1478
No.4-SO
-30%
0%
-9% 1150
5
No.3-IO
-11%
0%
-8% Car· kilometers
18
-29%
-8% 40
11 0%
-17% 2976
No.3-SO
349354 -16%
4082
-2%
3518 -14%
* Different trains may deliver different number of cars © 2011 IBM Corporation
Research - China
Testing Results (Con'd) Effect of varying train tonnage (using example No.2)
Higher train tonnage will increase the total operating cost. The slope is higher when train tonnage is larger than 6000 because fixed cost is increasing dramatically Higher train tonnage may not need more locomotives. When train tonnage is less than 5000, one train needs only one locomotive. Otherwise, one train needs two locomotives. When train tonnage is 6500, less trains are operated, which decreases the number of locomotives Higher train tonnage may decrease the service level because the frequency and speed of operating train is lower. It depends on the operating strategy of decision-maker © 2011 IBM Corporation
Research - China
Testing Results (Con'd) Adding Cut for maximum number of trains at one node in a time period No.
Size
Running time without cut
Running Time with cut
1
10 yards, 2 days, 102 trains, 20 car flows, 25 locomotives
3.5 min
3.5 min
2
10 yards, 2 days, 122 trains, 20 car flows, 30 locomotives
6.5 min
6.1 min
3
12 yards, 2 days, 135 trains, 25 car flows, 35 locomotives
10 min
10 min
4
12 yards, 2 days, 135 trains, 30 car flows, 30 locomotives
9.6 min
9.2 min
5
12 yards, 2 days, 150 trains, 40 car flows, 40 locomotives
25 min
22.1 min
* Both two methods obtain same optimum © 2011 IBM Corporation
Research - China
Testing Results (Con'd) Relaxing fueling and connection constraint of locomotive path No.
Size
Running Time without relaxation
Running time with relaxation
1
10 yards, 2 days, 102 trains, 20 car flows, 25 locomotives
3.5 min
3.1 min
2
10 yards, 2 days, 122 trains, 20 car flows, 30 locomotives
6.5 min
5.9 min
3
12 yards, 2 days, 135 trains, 25 car flows, 35 locomotives
10 min
8.6 min
4
12 yards, 2 days, 135 trains, 30 car flows, 30 locomotives
9.6 min
8.6 min
5
12 yards, 2 days, 150 trains, 40 car flows, 40 locomotives
25 min
24 min * Both two methods obtain same optimum © 2011 IBM Corporation
Research - China
Future Research Smarter algorithm to solve larger-size problem More business rules could be considered, such as maintenance, locomotive turn-around at depot (many cases in China), etc. Continuous time-space network could be considered instead of discrete time-space network Identify the difference between random generated parameter and practical parameter
© 2011 IBM Corporation
Research - China
Thank you!
© 2011 IBM Corporation