250 likes | 439 Views
A Second Stage Network Recourse Problem in Stochastic Airline Crew Scheduling. Joyce W. Yen University of Michigan John R. Birge Northwestern University. INFORMS San Antonio, TX Nov. 5, 2000. Presentation Overview. Problem Motivation: Stochastic Airline Crew Scheduling
E N D
A Second Stage Network Recourse Problem in Stochastic Airline Crew Scheduling Joyce W. Yen University of Michigan John R. Birge Northwestern University INFORMS San Antonio, TX Nov. 5, 2000
Presentation Overview • Problem Motivation: Stochastic Airline Crew Scheduling • Stochastic Programming Formulation • Branching Algorithm • Large Problem Computational Results • Conclusion and Future Directions
What is airline crew scheduling? • Begin with a set of flights that need to be flown by airline crews • Crews have restrictions for working hours • Want to generate trip itineraries and select a minimum cost set of trip itineraries for crews to fly that will cover every flight
Why study airline crew scheduling? • Airlines want to increase profits • Crew costs second largest cost next to fuel costs • costs run in the billions of dollars for large carriers • Key to lowering crew costs • Optimizing crew schedules and crew assignments
General Formulation • let ai,j = 1 if pairing j covers flight i • let xk = 1 if pairing k is selected to be in the solution
Problems with Current Strategies • Crew schedules optimized only to be “deoptimized” in the actual implementation because of changes to the schedules • Problem solved as a linear program • LP’s optimized at extreme points • push solutions to brink of infeasibility • Unable to respond to changes • Companies spending millions to find ways to better react to schedule disruptions • Pairings considered individually
Disruptions and Schedules • Different schedules will react differently to disruptions • Schedules can perpetuate the problem • Want to find a way to identify and select schedules that are less disrupted by changes to the flight schedule
Stochastic Crew Scheduling • Integrate information about the short range (recovery) problem into the long range (traditional crew scheduling) problem • Objective: Include expected cost of disruptions in the model formulation • Capture interaction effects of planes, crews, and schedule recovery
Problem Formulation For each disruption , we have different recourse. The overall problem becomes: where is the expected value of future actions due to disruptionsin the original schedule
delay(j) ** time_dep(j)- [time_arr(crew_pred(j,k))-crew_gnd(j,k)]xk,j 0 Recourse Formulation subject to: • consistency constraints for flight arrival and departure times • consistency constraints for plane predecessor requirements • consistency constraints for crew predecessor requirements : delay scenario j : flight k : round trip itinerary
General form of Recourse LP • Note cross product terms • This form, in general, is not convex in x • Traditional SIP solution methods don’t work
General Idea for Algorithm • eliminate delays caused by crews changing planes • flight pair ranks based on switch delay value • higher value means more costly delay • branch on pairings with particular plane changes • identifies costly decisions and disallows or forces such decisions • Note: branching is on a large set of variables — not just a single one • Algorithm terminates with an optimal solution • Algorithm can be augmented onto existing SPP solvers
Large Problem Results • Air New Zealand delay data from 1997 • Create model for disruptions based on data • 3 test problem • 9 planes, 61 flights • 10 planes, 66 flights • 11 planes, 79 flights • Disruption time distribution: lognormal and gamma with maximum value 200 minutes
Assumptions • State-of-the-Art pairing generator and set partitioning solver available • No cancellations • Crews still able to fly schedule when flight delayed • no time restriction problems • Plane ground time constant, crew ground time constant • Static plane assignments • Maximum delay time bounded
10 Planes Results • 100 scenarios • Penalty = 100 • Daily schedule • No limit on number of crews scheduled • Run length: 184 iterations, 367 nodes created • computational time limit
Observations from Example • Quick savings early in the algorithm • small changes to cTx value • larger changes to the recourse value and objective value • Can get reasonably good solution after very few iterations • current optimal obtained after 214 nodes created (total nodes created = 367) • within 5% of best after 10 nodes created • within 2% of best after 26 nodes created • within 1% of best after 109 nodes created
Effect of Penalty Parameter • Penalty parameter reflection of how much disruption is worth • As increase penalty parameter, track the trade-off of disruption costs and crew costs • How to determine penalty value • penalty = capacity of plane • penalty = # passengers / # crew • penalty = cost / minute of disruption • etc.
Penalty = 0 Penalty = 1000
General Comments • How much value disruptions reflected in penalty value • trade-off between disruption cost and crew cost • Can stop at any time and use algorithm to solve for desired degree of accuracy or efficiency • gap between LB and UB small enough • computational budget exhausted • Can add a heuristic to pick a solution that has a value within those bounds • Reach point where impossible to eliminate more disruption costs
Challenges • Algorithm • subproblems may be slow • However, can find good solution quickly • bounds may not be tight • higher the penalty the less effective bounds are • Data • Need for lots of data • Must carefully evaluate relationships and correlations • problem size
Future Research • Direct column generation for pairings using delay costs to avoid costly plane changes • difficulty is delays depend on all the crew assignments jointly • traditional column generation does one trip at a time • improvement:generate collection of columns that work well together
Future Research • Investigate alternative data models • Explore alternative recourse models • Apply method to general network design problems • telecommunications networks • supply chain • job shops