View
216
Download
0
Tags:
Embed Size (px)
Citation preview
1
A Second Stage Network Recourse Problem in Stochastic
Airline Crew Scheduling
Joyce W. YenUniversity of Michigan
John R. BirgeNorthwestern University
INFORMSSan Antonio, TX
Nov. 5, 2000
2
Presentation Overview
Problem Motivation: Stochastic Airline Crew Scheduling
Stochastic Programming Formulation Branching Algorithm Large Problem Computational Results Conclusion and Future Directions
3
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
4
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
5
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
binary
subject to
min
x
bAx
xcT
6
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
7
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
8
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
9
Problem FormulationFor each disruption , we have different recourse.
The overall problem becomes:
where
is the expected value of future actions due to disruptionsin the original schedule
Q( ) ( , ) ( )x Q x P d
integer
10
tosubject
)( minimize
x
x
bAx
xxc z T
Q
10
: delay scenario j : flight k : round trip itinerary
Recourse Formulation
subject to:• 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 **
segments
min),(j
penaltyxQ delay(j)
11
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
0
)()( ..
min),(
y
hyGxWts
yqxQT
T
12
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
13
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
14
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
15
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
16
10-plane, Penalty = 100, Optimal Costs
0
1000
2000
3000
4000
5000
6000
0 50 100 150 200 250
no. nodes created
cTx
valu
e
24500
25000
25500
26000
26500
27000
27500
28000
28500
29000
29500
cTx+
E[Q
(x,w
)] v
alu
e
z cTx
10th best
17
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
18
Plane Cnx for 10 Planes, Penalty = 100
0
20
40
60
80
100
120
140
160
0 5 10 15 20
i-th best solution
No
. Pla
ne
Ch
ang
es
0
20
40
60
80
100
120
140
160
Pla
ne
Cn
x T
ime
Median Plane Cnx Time No. Plane Changes Mean Plane Cnx Time
19
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.
20
10 Plane Penalty Variation
-25.0%
-20.0%
-15.0%
-10.0%
-5.0%
0.0%
0.0% 5.0% 10.0% 15.0% 20.0% 25.0% 30.0% 35.0%
% change in cTx*
% c
ha
ng
e i
n E
[Q(x
*,w
)]Penalty = 0
Penalty = 1000
21
10 Plane with Penalty around 100
-30.0%
-20.0%
-10.0%
0.0%
10.0%
20.0%
30.0%
40.0%
0 20 40 60 80 100 120 140
Penalty Value
% c
hang
e fr
om in
itial
so
ln
z* cTx* E[Q(x*,w)]
22
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
23
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
24
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
25
Future Research
Investigate alternative data models Explore alternative recourse models Apply method to general network design
problems– telecommunications networks
– supply chain
– job shops