Integrating Resource Planning with Job Scheduling for Service Optimization
description
Transcript of Integrating Resource Planning with Job Scheduling for Service Optimization
![Page 1: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/1.jpg)
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
![Page 2: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/2.jpg)
Service Optimization
Outline
1. Motivation2. Modeling the problem3. Solving the problem effectively4. Application5. Conclusion
2Introduction | Motivation | Modeling | Solving | Application | Conclusion
![Page 3: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/3.jpg)
3
Motivation: Design Efficient and Effective Railway Track Maintenance Process
Introduction | Motivation | Modeling | Solving | Application | Conclusion
![Page 4: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/4.jpg)
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
![Page 5: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/5.jpg)
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
![Page 6: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/6.jpg)
6
Track Maintenance Resources Resources: Maintenance crews
and equipment . (A typical Class I railway company hires about 5,000 maintenance workers)
Different TypesSystem 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
![Page 7: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/7.jpg)
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
![Page 8: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/8.jpg)
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
![Page 9: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/9.jpg)
9
Comparison with Classical Optimization Problems
Features Vehicle 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
![Page 10: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/10.jpg)
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 S
electi
on
Resource-Job Assignment
Job Scheduling /
Resource Routing Integrated Decisions
Difficult to model Difficult to solve
Strategic
Tactic
Operational
![Page 11: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/11.jpg)
11
ModelingSets
J Set of jobs R Set of resource typesL Set of locations: job terminals or transshipment pointsT 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
![Page 12: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/12.jpg)
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
![Page 13: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/13.jpg)
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't
j must start before j' starts and finish before j' finishes
(dj’ < dj)
(dj’ > dj)
Introduction | Motivation | Modeling | Solving | Application | Conclusion
![Page 14: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/14.jpg)
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
![Page 15: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/15.jpg)
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
![Page 16: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/16.jpg)
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
![Page 17: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/17.jpg)
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
![Page 18: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/18.jpg)
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
![Page 19: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/19.jpg)
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
![Page 20: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/20.jpg)
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
![Page 21: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/21.jpg)
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
![Page 22: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/22.jpg)
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
![Page 23: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/23.jpg)
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
![Page 24: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/24.jpg)
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
![Page 25: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/25.jpg)
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
![Page 26: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/26.jpg)
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
![Page 27: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/27.jpg)
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
![Page 28: Integrating Resource Planning with Job Scheduling for Service Optimization](https://reader035.fdocuments.us/reader035/viewer/2022062301/56815da5550346895dcbd47a/html5/thumbnails/28.jpg)
28
Comment or Suggestion?
Thanks!