smart seminar series: using column-and-row generation to solve the integrated airline recovery...

51
Using column-and-row generation to solve the integrated airline recovery problem Stephen J Maher Zuse Institute Berlin Berlin, Germany 14th November 2014 1 / 31

Upload: smart-infrastructure-facility

Post on 13-Jul-2015

249 views

Category:

Education


2 download

TRANSCRIPT

Page 1: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Using column-and-row generation to solve theintegrated airline recovery problem

Stephen J Maher

Zuse Institute BerlinBerlin, Germany

14th November 2014

1 / 31

Page 2: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Need for airline recovery

The real world is uncertain◮ It is almost impossible to achieve 100% on-time performance.◮ Events are difficult to predict, effects are unknown.

On-Time Arrival Performance National (April 2014)

On Time - 79.64%Air Carrier Delay - 5.34%Weather Delay - 0.4%National Aviation System Delay - 5.75%Security Delay - 0.02%Aircraft Arriving Late - 7.47%Cancelled - 1.15%Diverted - 0.22%

Figure: On-Time Arrival Performance National (April 2014). Source: Bureau of TransportationStatistics, Airline Service Quality Performance 234

2 / 31

Page 3: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Outline

Introduction

Integrated Airline RecoveryIntegrated Airline Recovery ProblemSolution Methodology

Results

Conclusions

3 / 31

Page 4: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline recovery process

4 / 31

Page 5: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline recovery process

4 / 31

Page 6: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline recovery process

4 / 31

Page 7: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline operations

Start of recovery period.

5 / 31

Page 8: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline operations

After 20 min.

5 / 31

Page 9: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline operations

After 40 min.

5 / 31

Page 10: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Airline operations

After 1 hour.

5 / 31

Page 11: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Achieving fast airline recovery solutions

Common Strategies:

◮ Sequential solution process.◮ Limiting recovery options.◮ Approximation of problem - Select subset of flights, crew or aircraft.

6 / 31

Page 12: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Alternative approach for fast recovery solutions

Features of this approach

◮ Solved using column-and-row generation.◮ No approximation is made regarding the included crew and aircraft.◮ Time to return back to schedule given by a recovery window.◮ Full set of recovery options used.

7 / 31

Page 13: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Outline

Introduction

Integrated Airline RecoveryIntegrated Airline Recovery ProblemSolution Methodology

Results

Conclusions

8 / 31

Page 14: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integrated Recovery Problem - IRP

Objective: Minimise the cost of recovery.◮ Additional crew costs (including reserve crew)◮ Flight delay and cancellation costs (considering the delayed

passengers).

Constraints:◮ Every flight must be operated by exactly one crew and one aircraft.

◮ otherwise the flight is cancelled.

◮ Crew and aircraft must terminate at permissible overnight bases.◮ If a flight is delayed, crew and aircraft must operate the same departure

time for that flight.

9 / 31

Page 15: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Considering passengers - IRP-PR

Objective: Minimise the cost of recovery.◮ Additional crew costs (including reserve crew)◮ Flight delay and cancellation costs (considering the delayed, reallocated

and stranded passengers).

Constraints:◮ Every flight must be operated by exactly one crew and one aircraft.

◮ otherwise the flight is cancelled.

◮ Crew and aircraft must terminate at permissible overnight bases.◮ If a flight is delayed, crew, aircraft and passengers must operate the

same departure time for that flight.

10 / 31

Page 16: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Recovery policies

◮ Generate new crew pairings and aircraft routes.◮ Flight delays.◮ Flight cancellations.

11 / 31

Page 17: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Recovery policies

◮ Generate new crew pairings and aircraft routes.◮ Flight delays.◮ Flight cancellations.

11 / 31

Page 18: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Recovery policies

◮ Generate new crew pairings and aircraft routes.◮ Flight delays.◮ Flight cancellations.

11 / 31

Page 19: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Flight delays - Using flight copies

Flight delays are modelled using the technique of flight copies.

12 / 31

Page 20: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Flight cancellations - Reallocation of passengers

Assigning passengers to the next available flight.

13 / 31

Page 21: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Flight cancellations - Reallocation of passengers

Assigning passengers to the next available flight.

13 / 31

Page 22: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Flight cancellations - Reallocation of passengers

Assigning passengers to the next available flight.

13 / 31

Page 23: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Flight cancellations - Reallocation of passengers

Assigning passengers to the next available flight.

13 / 31

Page 24: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integration of crew and aircraft

Delay Consistency Constraints.

14 / 31

Page 25: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integration of crew and aircraft

Delay Consistency Constraints.

14 / 31

Page 26: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integration of crew and aircraft

Delay Consistency Constraints.

14 / 31

Page 27: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integration of crew and aircraft

Delay Consistency Constraints.

k∈K

p∈Pk

akvjp xk

p −∑

r∈R

p∈Pr

arvjp y r

p = 0 ∀j ∈ ND, ∀v ∈ Uj

14 / 31

Page 28: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Integration of crew and passengers

Passenger Reallocation Constraints.

k∈K

p∈Pk

akvjp xk

p

(

Maxcap − Pax(j))

−∑

i∈N j

p∈P i

hvijpzip ≥ 0 ∀j ∈ ND

, ∀v ∈ Uj

15 / 31

Page 29: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Solution approaches

Column Generation◮ Commonly applied to airline optimisation problems.◮ Master problem - Ensure complete coverage of flights with crew and

aircraft, provide reallocation options for passengers.◮ Subproblem - Generate feasible strings of flights for crew and aircraft,

and reallocation schemes for passengers.

Row Generation◮ Reduce the size of the master problem by eliminating rows.◮ Dynamically reintroduce rows back to the master problem.

16 / 31

Page 30: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Column-and-row generation

17 / 31

Page 31: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Column-and-row generation

17 / 31

Page 32: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Column-and-row generation

17 / 31

Page 33: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Forming the reduced problem

(RMP)

min cK xK + cRyR + dNzN

s.t. AK xK + AKNzN = bK

ARyR = bR

AKDxK − AR

DyR = 0

AKDxK − AZ

DzN = 0

xK, yR

, zN ≥ 0

1. Original formulation of integratedproblem.

18 / 31

Page 34: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Forming the reduced problem

(RMP)

min cK xK + cRyR + dNzN

s.t. AK xK + AKNzN = bK

ARyR = bR

AKDxK − AR

DyR = 0

A′KD xK − A′R

D yR = 0

AKDxK − AZ

DzN = 0

A′KD xK − A′Z

D zN = 0

xK, yR

, zN ≥ 0

1. Original formulation of integratedproblem.

2. Partition delay consistencyconstraints into allowable andnon-allowable delays.

18 / 31

Page 35: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Forming the reduced problem

(SRMP)

min cK xK + cRyR + dNzN

s.t. AK xK + AKNzN = bK

ARyR = bR

AKDxK − AR

DyR = 0

AKDxK − AZ

DzN = 0

xK, yR

, zN ≥ 0

1. Original formulation of integratedproblem.

2. Partition delay consistencyconstraints into allowable andnon-allowable delays.

3. Formulate and solve the problemusing only the allowable delayconstraints.

18 / 31

Page 36: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Solving the SRMP

◮ The SRMP contains less rows than the RMP. Hence, it is expected tohave reduced complexity.

◮ The elimination of rows from the RMP results in variable fixings in thecolumn generation subproblems.

◮ Each row in the SRMP represents an allowable delay option.

◮ The optimal solution to the SRMP is an upper bound on the optimalsolution to the RMP.

19 / 31

Page 37: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Solving the SRMP - Column generation

Aircraft Variables◮ Shortest path problem solved for each aircraft.

Crew Variables◮ Multiple label shortest path problem solved for each crew. Must satisfy

complex work rules.

Cancellation Variables◮ Bounded knapsack problem solved for each flight.

◮ The use of flight copies means a reformulation of subproblem is required foran efficient solution approach.

20 / 31

Page 38: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation

Two part procedure:

◮ Compute an optimal dual solution to the RMP.◮ Identify rows that are expected to improve the current upper bound.

21 / 31

Page 39: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation - Optimal dual solution

(RMP′)

min cK xK + cRyR + dNzN

+ cR yR + dN zN

s.t. AK xK + AKNzN + AK

N zN = bK

ARyR + AR yR = bR

AKDxK − AR

DyR = 0

− A′RD yR = 0

AKDxK − AZ

DzN = 0

− A′ZD zN = 0

xK, yR

, zN ≥ 0

Aim: Compute RMP′ dual solution.

22 / 31

Page 40: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation - Optimal dual solution

(RMP′)

min cK xK + cRyR + dNzN

+ cR yR + dN zN

s.t. AK xK + AKNzN + AK

N zN = bK

ARyR + AR yR = bR

AKDxK − AR

DyR = 0

− A′RD yR = 0

AKDxK − AZ

DzN = 0

− A′ZD zN = 0

xK, yR

, zN ≥ 0

Aim: Compute RMP′ dual solution.

1. Identify that SRMP optimalsolution is optimal for RMP′.

22 / 31

Page 41: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation - Optimal dual solution

(RMP′)

min cK xK + cRyR + dNzN

+ cR yR + dN zN

s.t. AK xK + AKNzN + AK

N zN = bK

ARyR + AR yR = bR

AKDxK − AR

DyR = 0

− A′RD yR = 0

AKDxK − AZ

DzN = 0

− A′ZD zN = 0

xK, yR

, zN ≥ 0

Aim: Compute RMP′ dual solution.

1. Identify that SRMP optimalsolution is optimal for RMP′.

2. Compute Dual: For each row inA′R

D , solve aircraft variablesubproblem forcing a non-zero.

22 / 31

Page 42: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation - Optimal dual solution

(RMP′)

min cK xK + cRyR + dNzN

+ cR yR + dN zN

s.t. AK xK + AKNzN + AK

N zN = bK

ARyR + AR yR = bR

AKDxK − AR

DyR = 0

− A′RD yR = 0

AKDxK − AZ

DzN = 0

− A′ZD zN = 0

xK, yR

, zN ≥ 0

Aim: Compute RMP′ dual solution.

1. Identify that SRMP optimalsolution is optimal for RMP′.

2. Compute Dual: For each row inA′R

D , solve aircraft variablesubproblem forcing a non-zero.

3. Compute Dual: For each row inA′Z

D , solve cancellation variablesubproblem forcing a non-zero.

22 / 31

Page 43: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Row generation - Identify bound improving rows

Given an optimal dual solution to the RMP′:

◮ Solve the crew variable subproblem, permitting the use of all possibledelay options.

◮ If a negative reduced cost column is found, add it to the SRMP.◮ If the column has a non-zero in an eliminated row, add the row to the SRMP

◮ If no rows are added to the SRMP, then the optimal solution is found.

23 / 31

Page 44: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Implementation issues

◮ Not guaranteed to be faster than standard column generation◮ Employed a row generation warm-up procedure.

◮ Solve RMP for a given number of iterations.◮ Form SRMP by eliminating all delay consistency constraints containing only

zero coefficients.◮ Variable fixing heuristic to improve the convergence of branch-and-price.

◮ Identify all variables with a zero reduced cost in the RMP optimal solution atthe root node.

◮ At all successive nodes, only permit the use of delay options used by thesevariables.

24 / 31

Page 45: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Outline

Introduction

Integrated Airline RecoveryIntegrated Airline Recovery ProblemSolution Methodology

Results

Conclusions

25 / 31

Page 46: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Data and scenarios

Data

◮ Planning stage consists of 262 flights, serviced by 79 crew groups and48 aircraft.

◮ Flight network has 11 overnight bases for aircraft and 4 crew bases.

Scenarios

◮ 16 scenarios based on airport closures at different times and differentlengths.

◮ 2 major airports in the network.◮ Each major airport closed for 3 or 5 hours at either 6am, 7am, 8am and

9am.◮ Recovery window = 6 hours, 7 flight copies.

26 / 31

Page 47: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Recovery cost improvement

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Scenario Number

0

5

10

15

20

25

30

35

40

45

Relative difference (%)

The relative difference in recovery costs between the IRP and IRP-PR

Figure: 3 hour closure: scenarios 0-7. 5 hour closure: scenarios 8-15. 7 flight copies.

27 / 31

Page 48: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Runtime comparison CRG and CG

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Scenario Number

0.0

0.5

1.0

1.5

2.0

2.5

3.0

Run

time

(x10

00 s

ec)

Time Cutoff - 2700sec

Runtime of the IRP-PR using column generation and column-and-row generationApproach

ColgenCRG

Figure: 3 hour closure: scenarios 0-7. 5 hour closure: scenarios 8-15. 7 flight copies,maximum runtime of 2700 seconds (45 minutes).

28 / 31

Page 49: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Runtime comparison CRG and CG

◮ Easy scenarios: moderate improvement. Hard scenarios: significantimprovement.

◮ Average relative improvement in solution runtimes is 24.35%.◮ Improvement observed in all parts of the solution process. E.g. LP solve

and column generation.

29 / 31

Page 50: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Scenario completion - Enhancements

0 500 1000 1500 2000 2500Runtime (seconds)

0

2

4

6

8

10

12

14

16

Num

ber o

f scena

rios solved

Comparison of enhancement techniques for the IRP-PR

EnhancementsNeither EnhancementWarmup OnlyHeuristic OnlyBoth Enhancements

Figure: Performance profile of column-and-row generation using differentenhancement techniques over 16 disruption scenarios. Maximum runtime of 2700seconds (45 minutes).

30 / 31

Page 51: SMART Seminar Series: Using Column-and-Row Generation to Solve the Integrated Airline Recovery Problem

Conclusions

◮ Considering passengers in the recovery process significantly reducesthe operational costs.

◮ Applying column-and-row generation helps to improve the solutionruntimes.

◮ While solution runtimes are improved on average, there are instanceswith worse runtime performance.

◮ Combination of acceleration techniques are useful for the overallperformance of the algorithm.

31 / 31