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 1 Presentation Overview Problem Motivation: Stochastic Airline Crew Scheduling Stochastic Programming Formulation Branching Algorithm Large Problem Computational Results Conclusion and Future Directions 2 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 3 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 4 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 min T c x subject to Ax b x binary 5 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 6 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 7 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 8 Problem Formulation For each disruption , we have different recourse. The overall problem becomes: minimize subject to z c T x Q( x ) Ax b 0 x 1 x integer where Q( x ) Q( x , ) P ( d ) is the expected value of future actions due to disruptionsin the original schedule 9 Recourse Formulation Q( x , ) min penalty delay(j) subject to: j segments • consistency constraints for flight arrival and departure times • consistency constraints for plane predecessor requirements • consistency constraints for crew predecessor requirements time_dep(j) - [ time_arr(crew_pred(j,k))-crew_gnd(j,k)]xk,j 0 ** : delay scenario j : flight k : round trip itinerary 10 General form of Recourse LP Q( x , ) min q y T s.t . (W Gx ) y h( ) T y0 Note cross product terms This form, in general, is not convex in x Traditional SIP solution methods don’t work 11 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 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 Note: 12 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 13 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 14 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 15 10-plane, Penalty = 100, Optimal Costs 6000 29500 cTx value 5000 28500 28000 4000 27500 3000 27000 10th best 2000 26500 26000 25500 1000 25000 0 24500 0 50 100 150 200 250 no. nodes created z cTx 16 cTx+E[Q(x,w)] value 29000 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 17 160 160 140 140 120 120 100 100 80 80 60 60 40 40 20 20 0 0 0 5 10 15 Plane Cnx Time No. Plane Changes Plane Cnx for 10 Planes, Penalty = 100 20 i-th best solution Median Plane Cnx Time No. Plane Changes Mean Plane Cnx Time 18 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. 19 10 Plane Penalty Variation Penalty = 0 % change in E[Q(x*,w)] 0.0% 0.0% 5.0% 10.0% 15.0% 20.0% 25.0% 30.0% 35.0% -5.0% -10.0% -15.0% -20.0% Penalty = 1000 -25.0% % change in cTx* 20 10 Plane with Penalty around 100 % change from initial soln 40.0% 30.0% 20.0% 10.0% 0.0% -10.0% 0 20 40 60 80 100 120 140 -20.0% -30.0% Penalty Value z* cTx* E[Q(x*,w)] 21 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 22 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 23 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 24 Future Research Investigate alternative data models Explore alternative recourse models Apply method to general network design problems – telecommunications networks – supply chain – job shops 25
© Copyright 2026 Paperzz