1.206J/16.77J/ESD.215J Airline Schedule Planning

Slides:



Advertisements
Similar presentations
Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 12 Cross-Layer.
Advertisements

1.224J/ ESD.204J: Airline Crew Scheduling
Airline Schedule Optimization (Fleet Assignment I)
Air Transportation Service Design Pamela H. Vance Goizueta Business School Emory University.
1 Branch-and-Price (Column Generation) Solving Integer Programs With a Huge Number of Variables CP-AI-OR02 School on Optimization Le Croisic, France March.
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Chapter 3 Workforce scheduling.
Leena Suhl University of Paderborn, Germany
Lecture 10: Integer Programming & Branch-and-Bound
Crew Scheduling Housos Efthymios, Professor Computer Systems Laboratory (CSL) Electrical & Computer Engineering University of Patras.
Integer Programming 3 Brief Review of Branch and Bound
Computational Methods for Management and Economics Carla Gomes
1 A Second Stage Network Recourse Problem in Stochastic Airline Crew Scheduling Joyce W. Yen University of Michigan John R. Birge Northwestern University.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Airline Schedule Optimization (Fleet Assignment II) Saba Neyshabouri.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Airline Schedule Planning: Accomplishments and Opportunities Airline Schedule Planning: Accomplishments and Opportunities C. Barnhart and A. Cohn, 2004.
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
Decision Procedures An Algorithmic Point of View
11/26/ J/ESD.204J1 Transit Crew Scheduling Outline Crew Scheduling Work Rules and Policies Model Formulation Matching Problem Approximation approach.
AGIFORS, 5/28/03 Aircraft Routing and Crew Pairing Optimization Diego Klabjan, University of Illinois at Urbana- Champaign George L. Nemhauser, Georgia.
Types of IP Models All-integer linear programs Mixed integer linear programs (MILP) Binary integer linear programs, mixed or all integer: some or all of.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
An Integrated Approach to Load Matching, Routing, and Equipment Balancing Problem Sarah Root June 8, 2005 Joint work with advisor Amy M. Cohn.
Two Discrete Optimization Problems Problem: The Transportation Problem.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
Integer Programming (정수계획법)
Log Truck Scheduling Problem
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
Dominance and Indifference in Airline Planning Decisions NEXTOR Conference: INFORMS Aviation Session June 2 – 5, 2003 Amy Mainville Cohn, KoMing Liu, and.
Spatial Forest Planning with Integer Programming Lecture 10 (5/4/2015)
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or.
The minimum cost flow problem. Solving the minimum cost flow problem.
Approximation Algorithms based on linear programming.
1 Chapter 6 Reformulation-Linearization Technique and Applications.
U NIT C REWING FOR R OBUST A IRLINE C REW S CHEDULING Bassy Tam Optimisation Approaches for Robust Airline Crew Scheduling Bassy Tam Professor Matthias.
1 Two-Phase Simplex Method file Simplex3_AMII_05b_gr Rev. 1.4 by M. Miccio on December 17, 2014 from a presentation at the Fuqua School of Business MIT.
Linear Programming Many problems take the form of maximizing or minimizing an objective, given limited resources and competing constraints. specify the.
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
The minimum cost flow problem
A Modeling Framework for Flight Schedule Planning
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
1.206J/16.77J/ESD.215J Airline Schedule Planning
Introduction to Operations Research
EMIS 8373: Integer Programming
Lecture 5 – Integration of Network Flow Programming Models
Spatial Forest Planning with Integer Programming
Manpower Planning: Task Scheduling
Lecture 5 – Integration of Network Flow Programming Models
1.3 Modeling with exponentially many constr.
Linear Programming.
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
Integer Programming (정수계획법)
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
Integer Linear Programming
1.206J/16.77J/ESD.215J Airline Schedule Planning
MURI Kickoff Meeting Randolph L. Moses November, 2008
Chapter 1. Formulations (BW)
Integer Programming (정수계획법)
Chapter 6 Network Flow Models.
Flow Feasibility Problems
Chapter 1. Formulations.
1.2 Guidelines for strong formulations
1.2 Guidelines for strong formulations
Lecture 12 Network Models.
Presentation transcript:

1.206J/16.77J/ESD.215J Airline Schedule Planning Cynthia Barnhart Spring 2003

The Extended Crew Pairing Problem with Aircraft Maintenance Routing Outline Review of Individual Problems Interdependence and motivation for an alternative approach Sequential Approaches Integrated Approaches Comparison of Models 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

The Maintenance Routing Problem (MR) Given: Flight Schedule for a single fleet Each flight covered exactly once by fleet Number of Aircraft by Equipment Type Can’t assign more aircraft than are available FAA Maintenance Requirements Turn Times at each Station Through revenues for pairs or sequences of flights Maintenance costs per aircraft 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR Problem Objective Find: Revenue maximizing assignment of aircraft of a single fleet to scheduled flights such that each flight is covered exactly once, maintenance requirements are satisfied, conservation of flow (balance) of aircraft is achieved, and the number of aircraft used does not exceed the number available 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR String Model: Variable Definition A string is a sequence of flights beginning and ending at a maintenance station with maintenance following the last flight in the sequence Departure time of the string is the departure time of the first flight in the sequence Arrival time of the string is the arrival time of the last flight in the sequence + maintenance time 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR String Model: Constraints Maintenance constraints Satisfied by variable definition Cover constraints Each flight must be assigned to exactly one string Balance constraints Needed only at maintenance stations Fleet size constraints The number of strings and connection arcs crossing the count time cannot exceed the number of aircraft in the fleet 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR String Model: Solution Integer program Branch-and-bound with too many variables to consider all of them Solve Linear Program using Column Generation Branch-and-Price Branch-and-bound with bounding provided by solving LP’s using column generation at each node of the branch-and-bound tree 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Crew Pairing Problem (CP) Given: Flight Schedule for a fleet family Each flight covered exactly once Usually daily or weekly schedule FAA and Collective Bargaining Agreements Rest Maximum duty, sit, flying times in a duty 8-in-24 rule Maximum time-away-from-base Brief/debrief Crew base locations Minimum connection times between aircraft at each station Number of crews at each crew base 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

CP Cost Function Duty cost is maximum of: Pairing cost is maximum of: Flying time f1 * elapsed duty time Minimum duty pay Pairing cost is maximum of: Sum of duty costs f2 * time-away-from-base f3 * number of duties 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

CP Problem Objective Find: Cost minimizing assignment of crews to scheduled flights such that each flight is covered exactly once and all collective bargaining and FAA work rules are satisfied (and the number of crews assigned does not exceed the number available) 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

CP Set Partitioning Model: Variables and Constraints A variable is a pairing, that is, a sequence of flights beginning and ending at the same crew base and satisfying all work rules Binary variables: = 1 if pairing is assigned to a crew; = 0 if pairing not flown Set partitioning constraints (crew size constraints often ignored) requiring each flight to be covered exactly once 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

CP Set Partitioning Model: Solution Integer program Branch-and-bound with too many variables to consider all of them Solve Linear Program using Column Generation Branch-and-Price Branch-and-bound with bounding provided by solving LP’s using column generation at each node of the branch-and-bound tree 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR and Its Impact on CP Maintenance routing problem (MR) finds a feasible assignment of aircraft to flights to ensure adequate maintenance opportunities Crews need enough time between two sequential flights to travel through the terminal -- minimum connect time If both flights are covered by the same aircraft, this connection time can be reduced -- tighter connections can be permitted A short connect is a connection that is crew-feasible only if both flights are covered by the same aircraft 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Research Objective Our goal is to improve crew scheduling by incorporating relevant maintenance routing decisions Exploit the fact that only a subset of the maintenance routing decisions impact crew scheduling To decrease problem size 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Motivation Crew costs are the second largest operating expense faced by airlines Small improvements in efficiency can have significant financial impact Scheduling options are limited by maintenance routing decisions made earlier in the airline planning process 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MR then CP Sequential Approach Current practice: Solve MR If flight A is followed by flight B in a routing string, B can follow A in a crew pairing, even if the connection is shorter than the minimum connect time Output from MR is input to CP All other crew connections must satisfy maximum connection time Restricts set of feasible CP solutions 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Sequential Solution Approach Maintenance Routing Problem Crew Pairing Network Crew Pairing Problem Short Connects Valid pairings 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

CP then MR Sequential Approach Klabjan, Johnson, and Nemhauser CP costs dominate MR revenues Solve CP in which all short connects are permitted Solve MR, enforcing short connects used by CP May lead to infeasibility 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Integrated Approach Solve both problems simultaneously to find optimal solution that is feasible to both problems Short connects are the only link -- crew can’t fly a tight connection unless the flights share an aircraft in routing solution Cordeau, Stojković, Soumis, and Desrosiers Directly integrate string-based models Basic maintainance routing and crew pairing variables and constraints, plus linking constraints Benders decomposition approach using a heuristic branching strategy Promising computational results 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Maintenance Feasibility Because crew costs dominate, we will focus on maintenance feasibility, rather than on through revenues Problem is to minimize crew pairing costs subject to maintenance feasibility Approaches can be easily extended to include through revenues 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

String Based Approach (MRCP) If yr is the variable for a routing string and xp is the variable for a crew pairing, linking constraint for short connect t is where tr is 1 if routing string r contains short connect t and 0 otherwise, and pt is 1 if crew pairing p contains short connect t and 0 otherwise 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MRCP Problem cpxp MR CP 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MRCP Problem Size Variables: Constraints: One for each routing string One for each crew pairing Constraints: Maintenance cover constraints Maintenance balance constraints (maintenance stations only) Maintenance aircraft count Crew cover constraints One linking constraint for each short connect 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Solving MRCP Too many columns to enumerate explicitly -- branch-and-price Column generation: Denote by t the dual for the linking constraint of short connect t Reduced cost of a routing string or a pairing is the same as in the original models, except add t for each short connect t included Can modify pricing network by adding -t to the connection arc representing this turn TRACTABILITY ISSUES… 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Our Objectives Guarantee maintenance feasibility Allow the user the flexibility to trade off between solution time and quality Leverage the fact that only a portion of the maintenance routing decisions are relevant to the crew pairing problem 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Approach In the sequential approach, the crew scheduler is given an MR solution and solves the corresponding CP We’d like to allow the crew scheduler to choose from a collection of MR solutions the one which contains the most useful set of short connects Problem: We don’t want to solve one CP for each MR solution Solution: Extended crew pairing model (ECP) 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

The Extended Crew Pairing Model (ECP) In addition to choosing crew pairings, select one maintenance routing solution from a given set of feasible solutions Add constraints that prohibit pairings containing a short connect from being selected unless the chosen maintenance solution also contains that short connect 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Notation Pk is the set of feasible pairings for fleet type k Fk is the set of daily flights assigned to fleet type k Tk is the set of short connects for the flights assigned to fleet type k Sk is the set of feasible MR solutions for the flights assigned to fleet type k 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Notation, cont. fp is defined to be 1 if flight f is included in pairing p, else 0 αts is defined to be 1 if MR solution s includes short connect t, else 0 βtp is defined to be 1 if short connect t is contained in pairing p, else 0 cp is the cost of pairing p 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Notation, cont. ys is a binary decision variable – value 1 indicates that MR solution s is chosen, else 0 xp is a binary decision variable – value 1 indicates that pairing p is chosen, else 0 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

General Formulation Flights: short connects: Convexity: 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

An Example Flights: A B C D E F G H Potential pairings: short connects: A-B A-C C-D MR solution (y1) uses short connects A-C and C-D MR solution (y2) uses short connect A-B Potential pairings: A-C-D-F (x1) - $1 A-B-E-F (x2) - $2 C-D-G-H (x3) - $4 B-E-G-H (x4) - $6 Crew pairing solutions: y1 => pairings 1, 4 -- $7 y2 => pairings 2, 3 -- $6 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Matrix Representation y1 y2 x1 x2 x3 x4 rhs A B C Flights: D E F G H A-B short connects: A-D D-G Convexity: Conv. 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Solving ECP Too many columns to enumerate explicitly -- branch-and-price Column generation: Doesn’t change for crew variables: Denote by t the dual for the linking constraint of short connect t Reduced cost of a routing string or a pairing is the same as in the original models, except add t for each short connect t included Can modify pricing network by adding -t to the connection arc representing this turn Generating a MR solution variable is the same as solving MR with modified costs Minimize negative of duals on short connect connection arcs 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Comparison of Models Time to solve maintenance pricing problems MRCP generates routing strings ECP generates routing solutions Might require generating routing strings! Re-optimizing with new objective function; initial column set and known feasible solution 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Comparison of Models (cont.) Size of restricted master problems MRCP has one column for each routing string ECP has one column for each routing solution -- many more columns?! Redundancy Dominance Example 14 flights 104 feasible routing strings 16 maintenance routing solutions 11 unique short connect sets 6 dominant short connect sets 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

ECP Enhancements Dramatically reduce the number of MR columns: Uniqueness: Eliminate redundant columns Example: 41 flights, single set of short connects => >>8,700 solutions => 1 column Maximal independence: Eliminate dominated columns Only need one column per unique, maximally independent, maintenance feasible short connect set Theoretical bounds and computational observations Example: 61 flights => >> 25,000 solutions => 4 required columns 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

ECP Enhancements, cont. Relax the integrality of MR columns: Same number of binary variables as original CP LP relaxation of ECP is tighter than LP relaxation of a basic integrated approach 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Generating MR Solutions Algorithm to generate UMI columns -- can generate k UMI columns in at most the time needed to solve k MR problems Can generate columns using column generation to take advantage of dual information -- pricing problem still yields UMI columns Can still use existing crew pairing generators 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Computational Experiment Problem A: Lower bound: 31,396.10 ECP with 16 MR columns: 31,396.10 Optimality gap: 0% Problem B: Lower bound: 25,076.60 ECP with 20 MR columns: 25,498.60 Optimality gap: 1.7% 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Observations Zero optimality gap in instance A doesn’t necessarily imply sequential approach would yield an optimal solution – many equivalent crew pairing solutions, some maintenance feasible and some not Number of short connects in an optimal solution is small relative to total number – UMI sets often capture many of them A: 58 max; ~38 per column; 9 used in solution B: 68 max; ~37 per column; 10 used in solution 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Benefits of ECP Ensures maintenance feasibility Can be solved heuristically or to optimality, allowing user to trade off solution time and quality Leverages the fact that only short connect decisions from the maintenance routing problem impact crew pairing 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Benefits of ECP, cont. No more binary variables than the basic crew pairing model alone Tighter LP relaxation than a basic integrated approach Flexible Can take advantage of advances in maintenance routing solvers and crew pairing generators Can incorporate new maintenance constraints 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Conclusions Crew scheduling is critical to airline profitability but quality can be compromised by making maintenance routing decisions independently A direct integration can be inflexible and difficult to solve ECP provides an alternative approach that exploits the fact that only some maintenance routing information is relevant 9/21/2018 Barnhart 1.206J/16.77J/ESD.215J