28
A university within a business school 1 Integrating Resource Planning with Job Scheduling for Service Optimization Gang Li Bentley University Waltham, MA Joint work with Anant Balakrishnan University of Texas Austin, TX Brian Roth BNSF Railway Fort Worth, TX

A university within a business school 1 Integrating Resource Planning with Job Scheduling for Service Optimization Gang Li Bentley University Waltham,

  • 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

28

Comment or Suggestion?

Thanks!