Dominance and Indifference in Airline Planning Decisions NEXTOR Conference: INFORMS Aviation Session June 2 – 5, 2003 Amy Mainville Cohn, KoMing Liu, and.

Slides:



Advertisements
Similar presentations
Air Transportation Service Design Pamela H. Vance Goizueta Business School Emory University.
Advertisements

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.
Chapter 3 Workforce scheduling.
Leena Suhl University of Paderborn, Germany
Introduction to Algorithms
Column Generation n ENGG 6070 n Instructor: Shawki M Areibi n Students: Limin Ma, Hao Qin.
EE 553 Integer Programming
Search Techniques MSc AI module. Search In order to build a system to solve a problem we need to: Define and analyse the problem Acquire the knowledge.
Crew Scheduling Housos Efthymios, Professor Computer Systems Laboratory (CSL) Electrical & Computer Engineering University of Patras.
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.
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.
Content : 1. Introduction 2. Traffic forecasting and traffic allocation ◦ 2.1. Traffic forecasting ◦ 2.2. Traffic allocation 3. Fleeting problems ◦ 3.1.
Decision Procedures An Algorithmic Point of View
1 Using Composite Variable Modeling to Solve Integrated Freight Transportation Planning Problems Sarah Root University of Michigan IOE November 6, 2006.
AGIFORS, 5/28/03 Aircraft Routing and Crew Pairing Optimization Diego Klabjan, University of Illinois at Urbana- Champaign George L. Nemhauser, Georgia.
Group Construction for Cabin Crew Comparing Constraint Programming with Branch&Price Presentation at SweConsNet 2005 Jesper Hansen Carmen Systems AB
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
Exact methods for ALB ALB problem can be considered as a shortest path problem The complete graph need not be developed since one can stop as soon as in.
IEOR E Airline Crew Airline Crew Scheduling Scheduling Presented by: Presented by: Fatima Khalid Fatima Khalid.
Airline Crew Scheduling Problem ‍‍(CSP) Ahmad Khayer Dastjerdi
Linear Programming Erasmus Mobility Program (24Apr2012) Pollack Mihály Engineering Faculty (PMMK) University of Pécs João Miranda
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.
Column Generation By Soumitra Pal Under the guidance of Prof. A. G. Ranade.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
Quality of LP-based Approximations for Highly Combinatorial Problems Lucian Leahu and Carla Gomes Computer Science Department Cornell University.
Lagrangean Relaxation
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
Supplementary: Feasible Labels and Linear Programming  Consider the LP formulation of the shortest s-t path problem: (P) Minimize  (i, j)  A c ij x.
Airline Optimization Problems Constraint Technologies International
Spatial Forest Planning with Integer Programming Lecture 10 (5/4/2015)
Approximation Algorithms based on linear programming.
Tuesday, March 19 The Network Simplex Method for Solving the Minimum Cost Flow Problem Handouts: Lecture Notes Warning: there is a lot to the network.
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.
Linear Programming Many problems take the form of maximizing or minimizing an objective, given limited resources and competing constraints. specify the.
Aircraft Landing Problem
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
6.5 Stochastic Prog. and Benders’ decomposition
A Modeling Framework for Flight Schedule Planning
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
EMIS 8373: Integer Programming
Spatial Forest Planning with Integer Programming
Manpower Planning: Task Scheduling
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
Chapter 6. Large Scale Optimization
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
1.206J/16.77J/ESD.215J Airline Schedule Planning
3.4 Push-Relabel(Preflow-Push) Maximum Flow Alg.
1.3 Modeling with exponentially many constr.
Integer Programming (정수계획법)
Flow Feasibility Problems
6.5 Stochastic Prog. and Benders’ decomposition
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
Chapter 6. Large Scale Optimization
Discrete Optimization
Presentation transcript:

Dominance and Indifference in Airline Planning Decisions NEXTOR Conference: INFORMS Aviation Session June 2 – 5, 2003 Amy Mainville Cohn, KoMing Liu, and Shervin Beygi University of Michigan

Introduction A key challenge in airline planning problems: combinatorial nature A key challenge in airline planning problems: combinatorial nature Impacts tractability and scalability Impacts tractability and scalability Limits us in developing more comprehensive models: Limits us in developing more comprehensive models: –More accurate basic planning models ( e.g. Barnhart, Kniker, and Lohatepanont 2002 ) –Integrated models ( e.g. Cordeau et al 2000 ) –Real-time recovery systems ( e.g. Rosenberger, Johnson, and Nemhauser 2001 ) –Robust approaches ( e.g. Yen and Birge 2000 )

Outline Dominance and indifference: definitions and examples Dominance and indifference: definitions and examples A model and algorithmic approach for integrating crew pairing and fleet assignment A model and algorithmic approach for integrating crew pairing and fleet assignment Dominance and indifference in the pricing problem for crew pairing Dominance and indifference in the pricing problem for crew pairing

Indifference Many different solutions to a problem may have the same objective value Many different solutions to a problem may have the same objective value We are indifferent within this set of solutions We are indifferent within this set of solutions Combinatorial nature of airline planning problems frequently leads to indifference Combinatorial nature of airline planning problems frequently leads to indifference

Indifference Example Duty 1 Duty 6 Duty 2 Duty 7 Duty 3 Duty 8 Duty 4 Duty 9 Duty 5 Duty 10

Indifference Example Duty 1 Duty 6 Duty 2 Duty 7 Duty 3 Duty 8 Duty 4 Duty 9 Duty 5 Duty 10

Indifference Example Duty 1 Duty 6 Duty 2 Duty 7 Duty 3 Duty 8 Duty 4 Duty 9 Duty 5 Duty 10

Indifference Example Duty 1 Duty 6 Duty 2 Duty 7 Duty 3 Duty 8 Duty 4 Duty 9 Duty 5 Duty 10

Indifference Example Duty 1 Duty 6 Duty 2 Duty 7 Duty 3 Duty 8 Duty 4 Duty 9 Duty 5 Duty 10 5! = 120 feasible sets of pairings

Indifference In airline planning, often select building blocks; may be indifferent as to how these blocks are combined In airline planning, often select building blocks; may be indifferent as to how these blocks are combined Indifference often allows us to decompose our problem into two stages Indifference often allows us to decompose our problem into two stages –The first stage determines whether a given subset of decisions is part of our solution –If yes, the second stage determines which decisions to make within this subset

Indifference Indifference within second stage implies that this sequential approach still ensures optimality Indifference within second stage implies that this sequential approach still ensures optimality Potential improvements in tractability Potential improvements in tractability –First stage has decreased in scope –Second stage is a feasibility problem rather than an optimality problem

Indifference: Applications Rexing et al 2000 integrate schedule design and fleet assignment Rexing et al 2000 integrate schedule design and fleet assignment –Allow flight times to shift –First stage: assign flights to fleet types and to limited windows of time –Second stage: assign specific departure times within these windows Cohn and Barnhart 2003 integrate crew pairing and maintenance routing Cohn and Barnhart 2003 integrate crew pairing and maintenance routing –Exploit the fact that only a small subset of aircraft turns have impact on crew decisions –First stage: choose crew pairings and only relevant aircraft turns –Second stage: construct a maintenance solution containing these turns

Dominance Some solutions dominate others – we may be able to rule out certain decisions a priori Some solutions dominate others – we may be able to rule out certain decisions a priori All problems exhibit dominance All problems exhibit dominance –Optimal solutions dominate sub-optimal solutions –Not particularly useful In some cases, dominance also allows us to decrease feasible region by ruling out a subset of decisions which are dominated In some cases, dominance also allows us to decrease feasible region by ruling out a subset of decisions which are dominated

Dominance Example Crew pairing problem Crew pairing problem –Description: Choose an optimal set of pairings – ordered sequences of flights –Model: Set partitioning formulation – each variable represents a group of flights, with no explicit ordering specified But there may be more than one pairing for a given group of flights! But there may be more than one pairing for a given group of flights!

Dominance Example Duty 1Duty 2Duty 3 A B CD Three-duty pairing containing flights A, B, C, D

Dominance Example Duty 1 ABD C One-duty pairing containing flights A, B, C, D

Dominance Example Dominance enables us to apply a set partitioning formulation Dominance enables us to apply a set partitioning formulation If there are multiple pairings covering a given set of flights, each of these will correspond to columns that are identical except for the objective coefficient If there are multiple pairings covering a given set of flights, each of these will correspond to columns that are identical except for the objective coefficient We only need to include the one with the lowest cost We only need to include the one with the lowest cost

Integrating FAM and Crew Pairing Fleet assignment Fleet assignment –Variables Ground arc variables for plane count Ground arc variables for plane count x ft = 1 if flight f assigned to fleet type t, else 0 x ft = 1 if flight f assigned to fleet type t, else 0 –Constraints Cover Cover Balance Balance Count Count Crew pairing Crew pairing –y p = 1 if pairing p is chosen, else 0 –Cover constraints

Direct Integration Ground arcs, x ft Cover Balance Count y p  p  fp y p = 1  f ???

Variable Modification Ground arcs, x ft Cover Balance Count y pt  p  t  fp y pt = 1  f x ft -  p  t  fp y pt = 0  f, t

Variable Modification y pt  p  t  fp y pt = 1  f x ft -  p  t  fp y pt = 1  f, t Ground arcs, x ft Cover Balance Count

Unconstrained Fleets y pt  p  t  fp y pt = 1  f

Constraint-Generating Algorithms Solve infinite-fleet model: Solve infinite-fleet model: Min  t  p c tp y tp St  t  p  fp y tp = 1  f y tp  {0, 1}  t,  p For each fleet, check count feasibility For each fleet, check count feasibility –If all fleets are satisfied, optimal –If a count constraint is violated, add cut and repeat

Types of Cuts Basic cut: Basic cut: –Let P be the set of pairings in the current solution –Cut:  (p, t)  P y pt < |P| - 1 Problems Problems –Hard to incorporate in pricing problem Pairing-specific dual variables Pairing-specific dual variables –Very limited impact on solution space –Doesn’t target source of infeasibility

Exploiting Problem Structure Pairings dictate the orderings of flights Pairings dictate the orderings of flights Fleet assignment is independent of ordering Fleet assignment is independent of ordering It’s not the pairings that are fleet- infeasible, but the set of flights It’s not the pairings that are fleet- infeasible, but the set of flights

Exploiting Problem Structure Cut 1: The current set of pairings is infeasible Cut 1: The current set of pairings is infeasible Cut 2: The current set of fleet-flight assignments is infeasible Cut 2: The current set of fleet-flight assignments is infeasible Cut 3: For a given fleet, the current set of flights is infeasible Cut 3: For a given fleet, the current set of flights is infeasible

Types of Cuts In other words, if t is a violated fleet type and F t is the set of flights assigned to fleet type t in the current solution, we want to enforce the constraint In other words, if t is a violated fleet type and F t is the set of flights assigned to fleet type t in the current solution, we want to enforce the constraint  p  t  f  pf y pt  |F t | Note that we CANNOT say Note that we CANNOT say  p  t  f  pf y pt < |F t | – 1

Two Key Obstacles Strength of cuts Strength of cuts Tractability of relaxed master problem Tractability of relaxed master problem –If crew pairing is challenging to solve for one fleet’s flights, what about all flights? –How does adding the fleet index impact tractability? –Pricing problem is of particular concern Can we exploit problem structure to improve? Can we exploit problem structure to improve?

Pricing Problem as MLSP Typically, the pricing problem is solved as a multi-label shortest path problem Typically, the pricing problem is solved as a multi-label shortest path problem –Begin by constructing a tree to enumerate all pairings –Use dominance to prune partial pairings Computational challenges Computational challenges –Flight-based network has many labels – limited dominance –Duty-based network has stronger dominance, but too many nodes

Dominant Duties Consider two flights, A and B Consider two flights, A and B Any duty that is “book-ended” by these two flights has cost Any duty that is “book-ended” by these two flights has costmax: f(flying time) g(elapsed time) min duty There may be many sequences of flights beginning with flight A and ending with flight B There may be many sequences of flights beginning with flight A and ending with flight B The one with the lowest flying time is dominant The one with the lowest flying time is dominant

Dominant Duties In theory, we could construct a duty-based network with at most one duty per pair of book-end flights In theory, we could construct a duty-based network with at most one duty per pair of book-end flights –For the full domestic network of a major U.S. hub-and- spoke carrier, the number of duties per book-end flight pair can be as much as 700! –Many flight pairs book-end no feasible duties In practice, problematic In practice, problematic –Changing duals will change the dominant duty at each iteration –Possibility of repeating flights

Improved Enumeration? Can we still leverage this property in some way? Can we still leverage this property in some way? Successful enumeration requires strong pruning Successful enumeration requires strong pruning What if we initially define a pairing by the book-ends of its duties? What if we initially define a pairing by the book-ends of its duties?

Improved Enumeration? The dominance property gives us a lower bound on the cost of the duties, which in turn gives a lower bound on the cost of the pairing The dominance property gives us a lower bound on the cost of the duties, which in turn gives a lower bound on the cost of the pairing We can also bound the potential negative contribution of the duals We can also bound the potential negative contribution of the duals We can therefore begin by searching for pairings in a restricted duty network We can therefore begin by searching for pairings in a restricted duty network Only pairings with a negative lower bound are expanded to identify the full sequence of flights Only pairings with a negative lower bound are expanded to identify the full sequence of flights

Conclusions/Future Research Currently implementing integrated model Currently implementing integrated model Critical questions: Critical questions: –How tight are the cuts (how many iterations)? –How tractible are the iterations? Concurrent work on exploiting dominance/indifference in pricing Concurrent work on exploiting dominance/indifference in pricing