View
214
Download
0
Embed Size (px)
Citation preview
A university within a business school
1
Integrating Resource Planning with Job Scheduling for Service
OptimizationGang Li
Bentley UniversityWaltham, MA
Joint work with
Anant BalakrishnanUniversity of Texas
Austin, TX
Brian RothBNSF Railway Fort Worth, TX
Service Optimization
Outline
1. Motivation2. Modeling the problem3. Solving the problem effectively4. Application5. Conclusion
2Introduction | Motivation | Modeling | Solving | Application | Conclusion
3
Motivation: Design Efficient and Effective Railway Track Maintenance Process
Introduction | Motivation | Modeling | Solving | Application | Conclusion
4
Motivation: Track Maintenance
Rail transportation in USA 140,810 route miles
(Compare to: Interstate Highway System, 47,000
miles) 7 Class I railroads
$52.2 billion in revenue $6.8 billion (13% of revenue)
on maintenance of railway
Importance of track maintenance: increase
productivity while ensuring safe railroad operations
Major US railroads (e.g., BNSF, CSX, UP) each spent over $1 billion
per year on maintenance
Introduction | Motivation | Modeling | Solving | Application | Conclusion
5
Track Maintenance Jobs
Different Job Types RP: Rail Placement TP: Tie Placement UC (Under-Cutting): Ballast repl.
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Thousands of Jobs Location Duration Time Window
Service Requirements: Timing Coordinated Jobs
Concurrence: Performance multi-jobs simultaneously. E.g., replace rail and ties at the same time
Precedence: Perform one job before another. E.g., replace ties before replacing ballast
Non-concurrence: Perform only one job at one time. E.g., perform jobs on the same corridor at different times
6
Track Maintenance Resources Resources: Maintenance crews
and equipment . (A typical Class I railway company hires about 5,000 maintenance workers)
Different Types
System vs. Local crews Costo Selection cost. E.g., Overhead
costs, bonuses of crews and costs of maintenance equipment.
o Assignment cost: E.g., Payments to crew members to travel home on the weekends.
o Routing cost: E.g., Costs for repositioning the equipment from one job site to the next job site.
Introduction | Motivation | Modeling | Solving | Application | Conclusion
7
Track Maintenance Planning ProblemDecisions
Selection: How many crews of each type (e.g., system vs. local crews) to employ?
Assignment: Which crew to assign to which job? Scheduling/Routing:
When to start each job? How to route each crew among assigned jobs?
Constraints Perform each job within its time window Satisfy all inter-job timing coordination requirements
Objective
Minimize total selection, assignment, and routing costs
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Related Problems
Vehicle Routing Problem with Time Windows (VRPTW) Desrosiers et al. 1995 Cordeau et al. 2001 Braysy and Gendreau 2005
Parallel Machine Scheduling with Time Windows (PMSTW) Cheng and Sin 1990 Rojanasoonthon and Bard 2005
Resource-constrained Project Scheduling with Time Windows (RPSTW) Dorndorf 2002 Neumann et al. 2002 Herroelen 2005
8Introduction | Motivation | Modeling | Solving | Application | Conclusion
9
Comparison with Classical Optimization Problems
FeaturesVehicle Routing
Machine Sched.
Project Sched.
Our Problem
Objective Min. routing
cost
Min. assign.
cost
Min. assign. Cost
Min. selection, assignment, + routing cost
Resource Selection Given Given Given Decision Variable
Multiple Resource Types? No No Yes Yes
Resource Routing? Yes No No Yes
Job Duration? No Yes Yes Yes
Timing Coordination?
No No Precedence Precedence / Concurrence /
Non-concurrence
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Modeling Method: Sequential vs. Integrated
Loss of Feasibility: Decisions in previous stages may be infeasible for following stages.
Loss of Optimality: Only consider a single objective each stage.
10Introduction | Motivation | Modeling | Solving | Application | Conclusion
Resource Selection based on aggregated demand
Resource-Job Assignment
Job Scheduling / Resource Routing
Sequential Decisions
Resou
rce
Selec
tion
Resource-Job Assignment
Job Scheduling /
Resource Routing Integrated Decisions
Difficult to model Difficult to solve
Strategic
Tactic
Operational
11
ModelingSets
J Set of jobs
R Set of resource types
L Set of locations: job terminals or transshipment points
T Set of time periods (Assumption: discrete time)
Decision Variables: Integer or Binary Yrlt Selection variable: Resource r enters the network at location l
in period t
Xrjt Assignment variable: Resource r starts job j in period t
Wrll’t Routing variable: Resource r routes from location l to l' in period t (Assumption: zero repositioning time)
Zrlt Termination variable: Resource r leaves the network from location l in period t
Introduction | Motivation | Modeling | Solving | Application | Conclusion
12
FormulationObjective:
subject to:
Flow Conservation: Incoming flow = outgoing flow at each node of time-space network.
Job Assignment: Each job must be performed once.
Timing Coordination (next slide)
Non-negativity, integrality
r R, l L, t T
j J
' '' ( )
Minimize ( )rlt rlt rll t rll t rjt rjtr R l L t T l L l L t T j J t WF j
s Y c W a X
'' ( ) ' ( )( ) ' ( ) '
j l lrjt rll t rlt rj t d l l t d rltj JL l l L j JL l l L
X W Z X W Y
( ) ( )
1rjtr R j t WF j
X
Selection cost Routing cost Assignment cost
Introduction | Motivation | Modeling | Solving | Application | Conclusion
13
Modeling Timing Coordination Requirements
for all <j, j' > JCC, t T
'( ) ( ')
0j jt d d
rjt rj tr R j r R j t t
X X
Concurrence
T
j
j'
j must start before j' starts and finish after j' finishes
t
for all <j, j' > JNC, t T '
1
' '( ) ( ') 1
1j
j
t d
rjt rj tr R j r R j t t d
X X
Non-Concurrence
T
j
j'
Working times of job pair (j, j') must not overlapt
for all <j, j' > JPC, t T
1
' '( ) ( ') ' 1
1t
rjt rj tr R j r R j t
X X
' 1
' '( ) ( ') ' 1
1j jt d d
rjt rj tr R j r R j t
X X
Precedence
T
j
j'
tj must start before j' starts and finish before
j' finishes
(dj’ < dj)
(dj’ > dj)
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Introduction: Solving Integer Programming Model
A general solution procedure (for minimization prob.) Upper Bound:
Apply a heuristic method to find a feasible solution, which provides a upper bound to the decision problem.
Lower Bound: If relaxing integer requirements, the relaxed Linear Programming (LP)
model can be efficiently solved, whose solution provides a lower bound to the decision problem.
Gap:
Keep improving both the lower bound and the upper bounds until the percentage difference between the two bounds, (defined as the gap), reaches to zero. We then ensure the optimal solution.
This framework has been implemented in many commercial optimization software, such as CPLEX.
14Introduction | Motivation | Modeling | Solving | Application | Conclusion
Difficulty in Solving the ProblemGap
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
80.00%
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24Runtime (hours)
15
A medium-size instance3 projects,200 jobs;
9 job locations20 resource types;
50 time periods;200 timing coordination
requirements
After 24 hours, the best CPLEX solution has a gap of 25%; after one
week, the best solution has a gap of 10%.
Questions:
Why is the LP bound weak?
Why is the solution process slow?
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Why is the LP Bound Weak?
Objective: Cost-driven
Selection cost Assignment cost Routing cost
16
Constraint: Timing coordination constraint
Precedence Concurrence Non-concurrence
• Reasons that contribute to a weak LP solution
• Methods to strengthen LP Reformulate the timing coordination constraints Develop strong inequalities to prevent fractional solutions
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Model Enhancement: Improve the LP Bound Enhanced timing coordination constraints
Enhanced precedence inequality Enhanced concurrence inequality Enhanced non-concurrence inequality
Minimum resource inequality Ensure minimum number of resources at minimum workload
Residual capacity inequalityEnsure minimum number of resources at maximum workload
Incompatible flow inequality Prevent incompatible flows coexistent in a solution
17Introduction | Motivation | Modeling | Solving | Application | Conclusion
18
Speeding up the Solution Process Preprocessing stage: Reduce size of the model
Combine (aggregate) jobs Reduce size of repositioning network Reduce job time windows, eliminate variables and constraints
Progressive solution strategy: Solve a series of simpler problems Each problem is an extension of previous problem Optimal solution of previous problem provides a feasible initial
solution and strong lower bound for the succeeding problem Cutting plane method: Dynamically add strong inequalities to
the model Customized branch-and-bound rule Tuned computational parameters of CPLEX
Introduction | Motivation | Modeling | Solving | Application | Conclusion
Performance of the Solution StrategyGap
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
80.00%
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24Runtime (hours)
Gap
0.00%
5.00%
10.00%
15.00%
20.00%
25.00%
30.00%
0 1 2 3 4 5Runtime (hours)
19
Using CPLEX’s default solution strategy
24 hours result
Using our solution strategy
(Optimization Stopping Criterion of: 1% gap)
5 hours result
Introduction | Motivation | Modeling | Solving | Application | Conclusion
20
Effective Solution Strategy Effectiveness of model enhancements (strong
inequalities)
Increase in LP bound (at the root node): Enhanced Timing Coordination Inequalities: 0.5% Minimum Resource Inequalities: + 5% Residual Capacity Inequalities: + 2.5% Incompatible Flow Inequalities: + 1%
Progressive solution strategy Solved 4 sub-problems for each instance Found good feasible solutions, with gaps lower than 5%, within 5
hours for each instance
Introduction | Motivation | Modeling | Solving | Application | Conclusion
21
Application: Track Maintenance Planning Application to BNSF Railway
Largest railway network in North America
Owns and operates track in 27 U.S. states and 2 Canadian provinces
Route Miles: 50,000+ Number of Employees: 40,000 Average Freight Cars on System:
220,000
Track maintenance planning 5 job types 3,000 maintenance jobs 5,000 timing coordination constraints 10,000 physical stations 20,000 routing arcs 80 crew types 1 year planning horizon
Introduction | Motivation | Modeling | Solving | Application | Conclusion
22
Application: Track Maintenance Planning Application to BNSF Railway
Largest railway network in North America
Owns and operates track in 27 U.S. states and 2 Canadian provinces
Route Miles: 50,000+ Number of Employees: 40,000 Average Freight Cars on System:
220,000
Track maintenance planning 5 job types 3,000 maintenance jobs 5,000 timing coordination constraints 10,000 physical stations 20,000 routing arcs 80 crew types 1 year planning horizon
Introduction | Motivation | Modeling | Solving | Application | Conclusion
23
Assign the right people to the right place at the right time: BNSF’s Track Maintenance Problem
Each year, the company needs to execute more than 3000 maintenance jobs to ensure its service quality.
The company needs to hire about 5000 workers to form hundreds project teams to complete these jobs
Introduction | Motivation | Modeling | Solving | Application | Conclusion
24
Example of Optimized New Maintenance Plan
Introduction | Motivation | Modeling | Solving | Application | Conclusion
The New Maintenance Plan• chooses dozens of best-fitted teams from hundreds of candidate teams• assigns selected teams to jobs according to teams’ skills and costs• determines a detailed work plan that satisfies all service requirements
25
Manual Planning Process (Before 2005): Cumbersome and time-intensive o Find a feasible plan that satisfies all timing coordination requirements
and time window requirements.Results: Lots of timing-coordination violations
o Balance the three major cost components.Results: Only able to focus on a single cost component, e.g., the routing cost.
Large size of the model: 200,000 variables & 30,000 constraints Resistance to change
Solution: A slow but step-by-step implementation processo S1: Based on the manually selected no. of resources and job-resource
assignment, determine the optimal job scheduling and resource routing.
o S2: Based on the manually selected no. of resources, determine the optimal resource assignment, job scheduling and resource routing.
o S3: Provide an integrated solution, which minimizes the total resource selection, assignment and routing cost.
Change from Manual Planning to Model-based Planning
Introduction | Motivation | Modeling | Solving | Application | Conclusion
26
Performance Improvement in Track Maintenance
Lower maintenance costs: saves in average $ 5 million per year
Better maintenance quality: reduces 50 timing-coordination violations in manual solution to 0 violation
Faster scheduling: permits solving (or re-solving) the problem quickly for iterative planning
Safer and more efficient Railway Operations
Improved structure of the workforce (by rewarding
more skillful crews) Improved safety status (through reduced accident
rates) Improved transportation
efficiency (through increased train velocity)
Improved service quality (through increased in-time
delivery rates)
Introduction | Motivation | Modeling | Solving | Application | Conclusion
27
Conclusion: Main Contributions Addressed a complex resource planning and job
scheduling problem that is a combined capacity planning, resource assignment, and job scheduling problem.
Modeled the problem on a general framework and developed strong inequalities and effective solution strategies to improve the computational performance.
Successfully applied the proposed model and methods to annual railway track maintenance planning in a major railway company.
Introduction | Motivation | Modeling | Solving | Application | Conclusion