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

Slides:



Advertisements
Similar presentations
Thursday, March 14 Introduction to Network Flows
Advertisements

Outline LP formulation of minimal cost flow problem
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
Linear Programming (LP) (Chap.29)
1 Lecture 2 Shortest-Path Problems Assignment Problems Transportation Problems.
Network Flows. 2 Ardavan Asef-Vaziri June-2013Transportation Problem and Related Topics Table of Contents Chapter 6 (Network Optimization Problems) Minimum-Cost.
Transportation Problem (TP) and Assignment Problem (AP)
1 1 Slides by John Loucks St. Edward’s University Modifications by A. Asef-Vaziri.
Introduction to Algorithms
The minimum cost flow problem
Management Science 461 Lecture 6 – Network Flow Problems October 21, 2008.
Airline Schedule Optimization (Fleet Assignment II) Saba Neyshabouri.
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.
LINEAR PROGRAMMING SIMPLEX METHOD.
1 Using Composite Variable Modeling to Solve Integrated Freight Transportation Planning Problems Sarah Root University of Michigan IOE November 6, 2006.
15.082J and 6.855J and ESD.78J November 30, 2010 The Multicommodity Flow Problem.
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved Slides by JOHN LOUCKS St. Edward’s University.
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.
Hub Location Problems Chapter 12
Route Planning Texas Transfer Corp (TTC) Case 1. Linear programming Example: Woodcarving, Inc. Manufactures two types of wooden toys  Soldiers sell for.
1 1 Slide © 2009 South-Western, a part of Cengage Learning Slides by John Loucks St. Edward’s University.
Minimax Open Shortest Path First (OSPF) Routing Algorithms in Networks Supporting the SMDS Service Frank Yeong-Sung Lin ( 林永松 ) Information Management.
DISTRIBUTION AND NETWORK MODELS (1/2)
OPIM 915 taught by MGS Multicommodity Flows 2 Written by Jim Orlin.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Two Discrete Optimization Problems Problem: The Transportation Problem.
1 Network Models Transportation Problem (TP) Distributing any commodity from any group of supply centers, called sources, to any group of receiving.
Lecture 5 – Integration of Network Flow Programming Models Topics Min-cost flow problem (general model) Mathematical formulation and problem characteristics.
IT Applications for Decision Making. Operations Research Initiated in England during the world war II Make scientifically based decisions regarding the.
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.
Chapter 5: Transportation, Assignment and Network Models © 2007 Pearson Education.
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or.
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
St. Edward’s University
Lecture 3.
The minimum cost flow problem
6.5 Stochastic Prog. and Benders’ decomposition
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
ENGM 535 Optimization Networks
Chapter 1. Introduction Mathematical Programming (Optimization) Problem: min/max
1.206J/16.77J/ESD.215J Airline Schedule Planning
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
Frank Yeong-Sung Lin (林永松) Information Management Department
Lecture 5 – Integration of Network Flow Programming Models
1.3 Modeling with exponentially many constr.
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
Transportation, Assignment and Network Models
1.206J/16.77J/ESD.215J Airline Schedule Planning
1.206J/16.77J/ESD.215J Airline Schedule Planning
Introduction Basic formulations Applications
1.206J/16.77J/ESD.215J Airline Schedule Planning
TRLabs & University of Alberta © Wayne D. Grover 2002, 2003, 2004
Chapter 5 Transportation, Assignment, and Transshipment Problems
Flow Feasibility Problems
Frank Yeong-Sung Lin (林永松) Information Management Department
6.5 Stochastic Prog. and Benders’ decomposition
Chapter 6. Large Scale Optimization
REVIEW FOR EXAM 1 Chapters 3, 4, 5 & 6.
Lecture 12 Network Models.
Presentation transcript:

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

1.206J/16.77J/ESD.215J Airline Schedule Planning: Multi-commodity Flows Outline Applications Problem Definition Formulations Solutions Results 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Application I Package flow problem (express package delivery operation) Shipments have specific origins and destinations and must be routed over a transportation network Each set of packages with a common origin-destination pair is called a commodity Time windows (availability and delivery time) associated with packages The objective might be to minimize total costs, find a feasible flow, ... 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Application II Passenger mix problem Given a fixed schedule of flights, a fixed fleet assignment and a set of customer demands for air travel service on this fleeted schedule, the airline's objective is to maximize revenues by accommodating as many high fare passengers as possible For some flights, demand exceeds seat supply and passengers must be spilled to other itineraries of either the same or another airline 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Application III Message routing problem In a telecommunications or computer network, requirements exist for transmission lines and message requests, or commodities. The problem is to route the messages from their origins to their respective destinations at minimum cost 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Networks Set of nodes Set of arcs Each node associated with the supply of or demand for commodities Set of arcs Cost per unit commodity flow Capacity limiting the total flow of all commodities and/ or the flow of individual commodities 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Commodity Definitions A commodity may originate at a subset of nodes in the network and be destined for another subset of nodes A commodity may originate at a single node and be destined for a subset of the nodes A commodity may originate at a single node and be destined for a single node 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Objectives Flow the commodities through the networks from their respective origins to their respective destinations at minimum cost Expressed as distance, money, time, etc. Ahuja, Magnanti and Orlin (1993)-- survey of multi-commodity flow models and solution procedures 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Problem Formulations -- Linear Programs Network flow problems Capacity constraints limit flow of individual commodities Conservation of flow constraints ensure flow balance for individual commodities Flow non-negativity constraints With side constraints Bundle constraints restrict total flow of ALL commodities on an arc 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Constraint Matrix Network flow problem, commodity k=1 Bundle constraints limiting total flow of all commodities to arc capacities 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Alternative Formulations for O-D Commodity Case Node-Arc Formulation Decision variables: flow of commodity k on each arc ij Path Formulation Decision variables: flow of commodity k on each path for k “Tree” or “Sub-network” Formulation Define: super commodity: set of all (O-D) commodities with the same origin o (or destination d) Decision variables: quantity of the super commodity k’ assigned to each “tree” or “sub-network” for k’ Formulations are equivalent 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Sample Network Arcs Commodities i j cost capy # o d quant 1 2 1 20 4 b 3 e Commodities # o d quant 1 1 3 5 2 1 4 15 3 2 4 5 4 3 4 10 Arcs i j cost capy 1 2 1 20 1 3 2 10 2 3 3 20 2 4 4 10 3 4 5 40 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Notation Parameters Decision Variables A: set of all network arcs K: set of all commodities N: set of all network nodes O(k) [D(k)]: origin [destination] node for commodity k cijk : per unit cost of commodity k on arc ij uij : total capacity on arc ij (assume uijk is unlimited for each k and each ij) dk : total quantity of commodity k Decision Variables xijk : number of units of commodity k assigned to arc ij 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Node-Arc Formulation 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Additional Notation Parameters Decision Variables Pk: set of all paths for commodity k, for all k cp : per unit cost of commodity k on path p = ij p cijk ijp : = 1 if path p contains arc ij; and = 0 otherwise Decision Variables fp: fraction of total quantity of commodity k assigned to path p 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

O/D Based Path Formulation å Î k P p f C d Minimize subject to d f u i j A k p ij P Î å £ " ( , ) : Bundle constraints f k K p P Î å = " 1 : Flow balance constraints f p P k K ³ " Î , : Non-neg. constraints 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Additional Notation Parameters Decision Variables S: set of source nodes nN for all commodities Qs: the set of all sub-networks originating at s TCqs: total cost of sub-network q originating at s pq : = 1 if path p is contained in sub-network q; and = 0 otherwise Decision Variables Rqs : fraction of total quantity of the super commodity originating at s assigned to sub-network q 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Sub-network Formulation q sÎ Q k P p R d C s å Î ) ( z Minimize s S subject to å Î " £ s ij Q q p k P A j i u R d ) , ( sz : Capacity Limits on Each Arc R s s S q Q Î å = " 1 : Mass Balance Requirements R s q Q s S ³ " Î , : Nonnegative Path Flow Variables 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Linear MCF Problem Solution Obvious Solution LP Solver Difficulty Problem Size: (|N|=|Nodes|, |C|=|Commodities|, |A|=|Arcs|) Node-arc formulation: Constraints: |N|*|C| + |A| Variables: |A|*|C| Path formulation: Constraints: |A| + |C| Variables: |Paths for ALL commodities| Sub-network formulation: Constraints: |A|+|Origins| Variables: |Combinations of Paths by Origin| 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

General MCF Solution Strategy Try to Decompose a Hard Problem Into a Set of Easy Problems 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Solution Procedures I Partitioning Methods Exploit Network Structure to Speed Up Simplex Matrix Computations Resource-Directive Decomposition Repeat until Optimal: Allocate Arc Capacity Among Commodities Find Optimal Flows Given Allocation 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Solution Procedures II Price-Directive Decomposition Repeat until Optimal: Modify Flow Cost on Arc Ignore Bundle Constraints, Find Optimal Flows 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Revisiting the Path Formulation MINIMIZE  k K  pPk dk cp fp subject to: pPk  k K dk fpijp  uij  ijA pP(k) fp = 1  kK fp  0  pPk,  kK 21-Nov-18 1.224J/ESD.204J

By-products of the Simplex Algorithm: Dual Variable Values Duals -ij: the dual variable associated with the bundle constraint for arc ij ( is non-negative) k : the dual variable associated with the commodity constraints Economic Interpretation  ij : the value of an additional unit of capacity on arc ij  k/dk : the minimal cost to send an additional unit of commodity k through the network 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J 1 1

Modified Costs Definition: Modified cost for arc ij and commodity k = cijk+ij Definition: Modified cost for path p and commodity k = ijA (cijk + ij )ijp 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J 1 1

Optimality Conditions for the Path Formulation f*p and *ij , *k are optimal for all k and all ij iff: Primal feasibility is satisfied pPk  k K dk f*pijp  uij  ijA pP(k) f*p = 1  kK f*p  0  pPk,  kK Complementary slackness is satisfied *ij(pPk  k K dk f*pijp - uij ) = 0,  ijA *k (p Pk f*p – 1) = 0,  kK Dual feasibility is satisfied (reduced cost is non-negative for a minimization problem) (dk cp +  ij A dk ij ijp ) - k = dk (  ij A (cijk + ij) ijp - k /dk )  0,  p Pk,  k K 21-Nov-18 1.224J/ESD.204J

Multi-commodity Flow Optimality Conditions The price for an additional unit of capacity is 0 unless capacity is fully utilized *ij(pPk  k K dk f*pijp - uij ) = 0,  ijA A path p for commodity k is utilized only if its “modified cost” (that is, ijA (cijk + *ijijp)) is minimal, for all paths pPk Reduced Costs all non-negative: c’p = dk (  ij A (cijk + *ij) ijp - *k /dk )  0,  p Pk,  k K f*p (ijA (cijk + *ij ) ijp - *k /dk ) = 0, 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J 3

Column Generation- A Price Directive Decomposition Millions/Billions of Variables Restricted Master Problem (RMP) Constraints Never Considered Start Added 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

RMP and Optimality Conditions Consider f*p and *ij , *k optimal for RMP, then Primal feasibility is satisfied pPk  k K dk f*pijp  uij  ijA pP(k) f*p = 1  kK f*p  0  pPk,  kK Complementary slackness is satisfied *ij(pPk  k K dk f*pijp - uij ) = 0,  ijA *k (p Pk f*p – 1) = 0,  kK Dual feasibility is guaranteed (reduced cost is non-negative) ONLY for a path p included in RMP (dk cp +  ij A dk ij ijp ) - k = dk (  ij A (cijk + ij) ijp - k /dk )  0,  p Pk,  k K 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J 3

LP Solution: Column Generation Step 1: Solve Restricted Master Problem (RMP) with subset of all variables (columns) Step 2: Solve Pricing Problem to determine if any variables when added to the RMP can improve the objective function value (that is, if any variables have negative reduced cost) Step 3: If variables are identified in Step 2, add them to the RMP and return to Step 1; otherwise STOP 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J 10

Pricing Problem Or, equivalently: min p Pk  ij A (cijk + ij) ijp Given , the optimal (non-negative) duals for the current restricted master problem, the pricing problem, for each p Pk, k K is min p Pk (dk (  ij A (cijk + ij) ijp - k /dk ) Or, equivalently: min p Pk  ij A (cijk + ij) ijp A shortest path problem for commodity k (with modified arc costs) 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Example- Iteration 1 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Example- Iteration 2 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

MCF Optimality Conditions For each pPk, for each k, the reduced cost cp: cp = (dk cp +  ij A dk ij ijp ) - k = ij (dkcijk + dkij)ijp - k = ij (cijk + ij)ijp - k /dk  0 where ,  are the optimal duals for the current restricted master problem cp = 0, for each utilized path p implies ij (dkcijk + dkij) ijp = k or equivalently, ij (cijk + ij) ijp = k/dk So if, minpP(k) cp = ij (cijk + ij) ijp* - k/dk  0, the current solution to the restricted master problem is optimal for the original problem If minpP(k) cp = ij (cijk + ij) ijp* - k/dk < 0, add p* to restricted master problem 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Data Set Data Set Constraint Matrix Size 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Computational Results Number of Nodes: 807 Number of Links: 1,363 Number of Commodities: 17,539 Computational Result (IBM RS6000, Model 370) Path Model: 44 minutes Sub-network Model: < 1 minute 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Conclusions I Choose your formulation carefully Trade-off memory requirements and solution time Sub-network formulation can be effective when low level of congestion in the network Problem size often mandates use of combined column and row generation 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J

Conclusions II Solution time is affected dramatically by The complexity of the pricing problem Exploitation of problem structure, pre-processing, LP solver selection, etc. 11/21/2018 Barnhart 1.206J/16.77J/ESD.215J