fixing a disrupted flight schedule | nancy | roadef challenge 2009

26
TUe Fixing a disrupted Flight Schedule ROADEF 2009 Challenge Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Wednesday Februari 11, 2009 ROADEF09, Nancy, France Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Upload: chris-christian-eggermont

Post on 19-Jun-2015

59 views

Category:

Engineering


5 download

DESCRIPTION

The ROADEF Challenge is a mathematical programming and optimization challenge in which our team won 1st prize in the junior category in 2009. These are the slide of the presentation i gave at the conference to explain in short our method. Our team in alphabetical order: Christian Eggermont, Murat Firat, Cor Hurkens and Maciej Modelski

TRANSCRIPT

Page 1: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing a disrupted Flight Schedule

ROADEF 2009 Challenge

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej

Modelski

Wednesday Februari 11, 2009

ROADEF09, Nancy, France

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 2: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Problem Decomposition

1 fix the aircraft rotation discontinuities

2 respect airport capacities

3 fine-tuning delays

4 itinerary reassignment

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 3: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Program

fix aircraft rotations (ignoring airport capacities)

while 10 seconds left do

for all 10% of remaining time do

fix flights to respect airport capacities (random)

and remember ’best’ rotations

end for

manage delays

reroute itineraries

and remember ’best’ schedule

end while

output ’best’ schedule

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 4: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 5: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 6: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 7: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 8: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 9: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Fixing Aircraft Rotations

1 aircraft unavailablility period: cancel those flights

2 per aircraft list its flights in order of departure time and for

two consecutive flights [A 7→ B] and [C 7→ D] with B 6= C

if B = D then

cancel [C 7→ D]else if [B 7→ C] can be operated by the aircraft then

create flight [B 7→ C]else if [B 7→ D] can be operated by the aircraft then

cancel [C 7→ D], create [B 7→ D]else cancel [C 7→ D]end if

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 10: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Respecting Airport Capacities

Per aircraft schedule all flights as early as possible

With earliest maintenance first, others random order

Problem aircraft might not make it to maintenance or

flights might not fit within recovery period.

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 11: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 12: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 13: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 14: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 15: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 16: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Options

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 17: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Delay Management

Goal: create additional delays to get enough connection time

for passengers

Flights are shifted within their timeslots.

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 18: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Delay Management

Goal: create additional delays to get enough connection time

for passengers

Flights are shifted within their timeslots.

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 19: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Delay LP

max∑it∈I

pitnit

∑(j,k)∈Connit

(xk − xj

)subject to:

di ≤ xi ≤ di + ∆i for all flights i

Turn(j , k) ≤ xk − (xj + durj) for all aircraft ac, and (j , k)

consecutive flights of ac

xilast(ac) + durilast(ac) ≤ Mac for aircraft ac with maintenance

xi = di for all fixed flights i

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 20: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

itin 1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

44

4

4

4

itin 1

+1

+1

+1+1

+1 +1

+11

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 21: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

64

6

4

5

itin 1

5

+1

+2+1

+1 +1

2

itin 8

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 22: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

64

6

4

5

itin 1

5

+1

+2+1

+1 +1

2

itin 6

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 23: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

44

4

4

4

itin 1

+1

+1

+2+1

+1 +2

2

itin 2

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 24: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

itin 1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

44

4

4

4

itin 1

+1

+1

+1+1

+1 +1

+11

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 25: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itinerary reassignment

itin 1

s

Airport 2

Airport 3

Airport 1

Flight3Flight2

wait

origin

cancel

t

destination

Flight1

1

1

1

cancel 2

2

itin 4

44

4

4

4

itin 1

+1

+1

+1+1

+1 +1

+11

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule

Page 26: Fixing a disrupted Flight Schedule | Nancy | ROADEF Challenge 2009

TUe

Fixing Aircraft Rotations

Respecting Airport Capacities

Delay Management

Itinerary reassignment

Itineraries order

Order

inbound before outbound

both inbound:

first with earliest original departure time

equal original departure time: largest size*price

both outbound

sort on largest size*price

Christian Eggermont, Murat Firat, Cor Hurkens, Maciej Modelski Fixing a disrupted Flight Schedule