• No results found

Robust Crew Recovery for Airline Operations Under Future Uncertainty Using Reserve Crew

N/A
N/A
Protected

Academic year: 2021

Share "Robust Crew Recovery for Airline Operations Under Future Uncertainty Using Reserve Crew"

Copied!
35
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Robust Crew Recovery for Airline Operations Under Future

Uncertainty Using Reserve Crew

(2)

Master’s Thesis Operations Research

(3)

Robust Crew Recovery for Airline Operations Under Future

Uncertainty Using Reserve Crew

Rob Wenneker S2401991 May 24, 2018

Abstract

In this thesis, we introduce the robust crew recovery problem. This problem consists of repairing a disrupted roster in a cost-efficient manner, while maintaining the flexibility to cope with additional future disruptions. This flexibility is explicitly considered through evaluating the expected shortfall of an airline’s underlying reserve crew roster based on a Markov chain formulation. The recovery problem is described as a set partitioning problem and solved using branch-and-price. A variant of a pulse algorithm is introduced to solve the specific pricing problem. The model is tested on data from a medium-sized dutch hub-and-spoke airline. The results show that the resulting roster is less prone to additional disruptions than traditional crew recovery methods, with less last-minute alterations and cancellations.

Keywords: Airline operations, Branch-and-price, Crew recovery, Markov chain, Reserve crew, Robust recovery

Master’s Thesis Operations Research Supervisors: Dr. E. Ursavas

Co-assesor: Dr. X. Zhu

Institution: University of Groningen, The Netherlands

(4)

Contents

1 Introduction 3

2 Literature Review 4

3 Problem Description 6

3.1 Recovery actions . . . 6

3.2 Duty legality rules . . . 7

3.3 RCRP formulation . . . 7

3.4 Pairing cost structure . . . 9

4 Reserve Crew members 11 5 Solution Method 16 5.1 Pricing problem graph structure . . . 16

5.2 Solving the pricing problem . . . 17

5.3 Branching rules . . . 19

6 Computational results 21 6.1 Benchmark model: Traditional Crew Recovery Problem . . . 21

6.2 Data and scenario description . . . 22

6.3 Parameter selection . . . 22

6.4 Algorithm results . . . 25

(5)

1

Introduction

Due to a significant growth in air traffic, airports are as congested as ever (Jacquillat and Odoni, 2015). Subsequently, flight delays are an increasingly large problem for airline companies, with the resulting costs of delay reaching as high as $30 billion in 2007 (Ball et al., 2010). Causes for disruptions are, amongst others, severe weather conditions, airport congestion, crew ab-senteeism and sudden aircraft unavailability. The capability to deal with such inevitable dis-ruptions depend for a large part on the flexibility of an airline’s crew schedule. There is an abundance of literature available on how to create a robust crew schedule during initial ros-ter creation. However, in practice, crew rosros-ters are usually made available to the crew several weeks before the flights are executed. In the period preceding flight execution, also called the tracking period, personnel disruptions are bound to occur which affect an airline’s flexibility to deal with future disruptions.

The recovery of perturbed schedules is thoroughly considered in the literature and most recovery methods presented in the literature present (near-)optimal solutions to recovery prob-lems as the result of known disruptions during final operations at the Operations Control Cen-tre (OCC). However, very little research has been done on how to maintain a robust roster in the tracking period, which remains able to cope with additional disruptions in hours or days fol-lowing current disruptions. A major component of this robustness is the availability of reserve personnel. Crew members are put on a reserve shift, in which they need to be available when-ever operational disruptions or sudden crew unavailability (e.g. due to sickness or personal reasons) require the crew member to take over a flight.

The contribution of this thesis is twofold. In this thesis, we will provide a way to explicitly model the effects of using reserve crew members on the robustness of an airline crew roster. In addition, we present an airline crew recovery model, which, next to recovering the disrupted schedule in a cost-efficient manner, has the secondary objective to maintain a roster that is capable of absorbing further disruptions.

(6)

under certain conditions. A novel branch-and-price algorithm is developed to solve the RCRP to optimality. The pricing problem to create new pairings consists of solving a Resource Con-strained Shortest Path Problem (RCSPP) with nonlinear costs and is solved using a variant of the state-of-the-art pulse algorithm as introduced by Lozano et al. (2015). We show through a case study on data from a dutch carrier that the RCRP outperforms traditional crew recovery methods in maintaining a robust roster for the day of execution.

Figure 1:A typical time-line for airline crew planning in days, where T- 0 denotes the day of execution.

T - 30 T - 1 T - 0

Long Term Planning Tracking OCC

The remainder of this thesis is structured as follows. In Section 2 we will discuss the relevant literature. In Section 3 we will discuss the model formulation for the robust crew recovery prob-lem (RCRP). In Section 4, we present our approach to reserve crew and discuss a framework to evaluate reserve schedules and their effect on the robustness of the overall crew schedule. The branch-and-price approach to solving the RCRP is discussed in Section 5. Section 6 will present our case study and the computational results. Section 7 will provide our conclusions.

2

Literature Review

(7)

we build on their approach by including penalty functions for unfavourable characteristics to increase our flexibility to cope with future disruptions.

Some disruptions are impossible to be covered by regular crew and need to be solved using reserve crew on call. Up until now, relatively little research has been done on how the ros-tering or use of reserve members affects the robustness of a crew schedule. One of the first authors to consider the reserve crew pairing problem were Dillon and Kontogiorgis (1999). The authors consider reserve crew as a separate entity and use a set partitioning formulation to create multi-day reserve pairings which cover the expected demand for reserve personnel. A similar problem was introduced by Sohoni et al. (2006), who consider the reserve cockpit crew scheduling from the perspective of an American airline in which the authors regard open trips resulting from bidline-invoked conflicts as the primary reason for reserve demand. More re-cently, Bayliss (2016) discussed the airline reserve crew scheduling problem for hub- and spoke airlines. He proposes several probabilistic models to evaluate reserve crew schedules which can be used to mitigate crew delay- and absence risk. We build on his work by including the evaluation of reserve schedules in a crew recovery setting, where future schedule flexibility is explicitly considered.

While the integration of crew- and aircraft scheduling is beyond the scope of this paper, we should point out that recent breakthroughs in robust aircraft scheduling may significantly reduce disruptions on the overall airline schedule (Yan and Kung, 2016; Lonzius and Lange, 2017).

Once the roster is published, disruptions are bound to occur to the published schedule. A good survey of overall disruption management literature in the airline industry can be found in Clausen et al. (2010), who discuss the different stages in disruption recovery, as well as recent efforts in integrating the different stages.

Similar to the crew pairing problem, branch-and-price is usually the method of choice in crew recovery literature. However, unlike the former problem, pairings in crew recovery are no longer anonymous and now belong to a specific crew member, such that recovered pairings should, next to being feasible from a legal- and contractual point of view, satisfy constraints enforced by the overall roster, such as scheduled days-off and scheduled training sessions.

Efficient crew recovery was first introduced by Wei et al. (1997). In their seminal paper, the authors consider the repair of disrupted crew schedules using a set partitioning formulation of possible repair actions in a branch-and-price framework. Lettovsk `y et al. (2000) extend the crew recovery model by also including the possibility to cancel flights for a given cost as a possible recovery action. Furthermore, the authors provide some pre-processing techniques, such as keeping consecutive flights together, which greatly reduce the size of the problem, reducing the computational time necessary in solving this time sensitive problem. Stojkovi´c et al. (1998) were the first to incorporate airline crew recovery in a personalised roster setting, explicitly considering the fact that schedule changes directly affect crew happiness, such that recovery costs were minimised with the additional consideration that the adjusted monthly assignment should remain as close to the original schedule as possible.

(8)

proposed integrated recovery models integrating aircraft- and crew recovery. Stojkovi´c and Soumis (2001) improve on their crew recovery model by including fixed time windows for which an aircraft may be delayed and provide an integrated pilot and aircraft recovery prob-lem. Maher (2015) provides a new approach to the integrated one-day aircraft and crew recov-ery problem using column- and row generation. He argues that, with this improved solution method, large integrated problems can be solved efficiently and quickly. In our paper, we con-sider a semi-integrated approach by allowing for the re-timing of flights, a method which was shown by Mercier and Soumis (2007) to potentially add a bunch of value to the final solution.

The construction of a feasible roster (either before publication or during the recovery phase) is usually solved using a branch-and-price approach, where the problem is modelled as a set partitioning problem over a finite subset of possible crew pairings. The pricing problem for the creation of good crew pairings is well documented in the literature. By modelling the creation of crew pairings as a Resource Constrained Shortest Path Problem (RCSPP), one can use the abundant number of algorithms available in the Operations Research literature. In this thesis, we will use a variant of the pulse algorithm as introduced by Lozano et al. (2015) to solve the pricing problem to optimality. The authors show good performance of this algorithm against other state-of-the-art algorithms for the RCSPP. Moreover, this algorithm has several advan-tages for the specific problem at hand, which we will thoroughly explain in Section 5.2.

3

Problem Description

Let F be the set of all flight in the schedule on the day under consideration. Through a number of crew-induced disruptions D, several flight legs are no longer covered. Goal of the RCRP is to recover (i.e. once again cover all flights) at minimum cost, while retaining the flexibility in the resulting roster to cope with potential additional disruptions in the future. Denote the set of all crew members on this day as K, including the set of reserve crew members KR ⊂ K.

3.1 Recovery actions

In order to repair a disrupted schedule, airline planners can perform a number of recovery actions to return to a feasible schedule. One possible recovery action is to alter the rosters of regular crew members. However, due to the unfavourable effects on crew happiness, altering published assignments is penalised through a cost parameter ca. Altering costs do not hold for

reserve crew members, as any assigned duty would be an altering decision. Reserve crew who are assigned to a duty are no longer part of the resulting reserve roster, leading to a less stable overall roster. Section 4 discusses a framework in which we evaluate reserve schedules and calculate the so-called expected shortfall caused by the use of one or multiple reserves.

An additional opportunity to adjust the schedule arises from the re-timing of flights. For each flight f ∈ F , we define a number of copies representing a later or earlier departure time, as in Maher (2015). The set of flight copies for a given flight is denoted as Ωf. A single flight-copy

is denoted as fω, with ω ∈ Ωf. The opportunities for re-timing depend on the structure of the

total airline schedule. For example, a flight is only allowed to be re-timed if the corresponding aircraft is available to do so. There are costs cf

(9)

whereas some re-timings are feasible on itself, combinations of different re-timings might be infeasible. For example, two flights might be sharing the same aircraft, such that flight copies might be feasible individually, but selecting both will violate the minimum turn around time for that aircraft. To that end, we define flight-copy pairs (gi, hj) ∈ I as infeasible combinations

of flight-copy pairs, where gi and hj denote two individual flight copies. Both the flight copies

and the resulting infeasible combinations of flight copies are created a priori. A solution to the recovery problem might require crew to deadhead (travel as a passenger) on a flight to reach a certain destination. The costs for deadheading are given by cf ωd for flight-copy ω ∈ Ωf.

Furthermore, if we are no longer able to cover a given flight f , we are allowed to cancel the given flight f for a cost of cf

c.

3.2 Duty legality rules

In the construction of feasible crew duties, there are numerous restrictions and regulations sur-rounding crew legality. In accordance with European law, duty legality rules depend on the number of flight legs in a certain duty. The maximum time spent flying during a duty by a crew member is at most φL

1 and φS1 for a long (4+ legs) and short (3- legs) duty, respectively.

Similarly, maximum length of a duty is at most φL

2 or φS2 for a long and short duty,

respec-tively. Additionally, the minimum sit time between two consecutive flights should be at least φ3. Finally, the minimum rest time between two duties should be at least φ4. Furthermore,

the adjusted duties should fit in the monthly roster for an individual crew member. That is, individual crew members start the working day at the location their previous duty ended and should be located at the airport at which their next assignment is located at the end of the day.

3.3 RCRP formulation

Define RCRP(n) as the recovery problem as described earlier while using at most n out of N available reserve crew members. Then, the total number of possible resulting reserve sched-ules equals Pn

i=0 N

i, which grows exponentially in n. We model the RCRP(n) as a large-scale

Mixed-Integer-Problem (MIP) and solve it using branch-and-price. The master problem con-siders the set of possible pairings Pk for crew member k ∈ K. Here, a crew pairing p ∈ Pk

is defined as a feasible sequence of flight trips for crew member k, given the individual crew-and duty constraints. One should note that, since we consider the roster for a single day, such a sequence of assignments may also be called a duty. However, in line with recent literature on the subject, we will use the terms duty and pairing interchangeably. A feasible solution to the RCRP(n) corresponds to a set of crew recovery actions, including the use of at most n reserves, such that the resulting crew schedule is feasible.

The RCRP(n) master problem is given as a set partitioning problem over the set of all possi-ble crew pairings. In the recovery propossi-blem it is important to ensure that all flights are covered and no inconsistencies occur. Decision variables are denoted as xk

p and come at a cost ckp. They

correspond to the selection of pairing p ∈ Pk in the final solution. In order to ensure that all

flights are covered, we define a binary parameter akω

f p which equals 1 if pairing p of crew

(10)

When the selected pairing of more than one individual crew member contains flight-copy ω of flight f , it is implied that at least one of them is deadheading on this flight. An artificial variable yω

f is introduced to denote the number of crew deadheading on flight-copy ω of flight

f.

Cancelling flights, while expensive, may be necessary to find a feasible solution to the RCRP. We introduce a variable zf which equals 1 if flight f is cancelled and zero otherwise.

When considering at most n reserve crew members who are to be used in the recovery of the current schedule, a total of Pn

i=0 N

i possible combinations of reserve crew are possible.

Define the set ρ ⊂ KR as such a single combination and let Y be the set of all these possible

combinations. Define Rkas the set of all reserve schedules which include reserve k ∈ KR. Then,

define the variable Rρ, which equals 1 if all reserves k ∈ ρ are used and zero otherwise. The

cost of such a schedule is denoted by cρ

s. How we calculate the corresponding costs will be

discussed in Section 4.

The mathematical formulation of the RCRP(n) can be described as the following MIP:

minimize X k∈K X p∈Pk ckpxkp +X f ∈F X ω∈Ωf cf ωd yfω+X f ∈F cfczf + X ρ∈Y cρsRρ, (1) subject to X k∈K X p∈Pk X ω∈Ωf akωf pxkp − X ω∈Ωf yfω+ zf = 1 ∀f ∈ F, (2) X k∈K X p∈Pk akωf pxkp − yω f + υ ω+ f − υ ω− f ≥ 1 ∀f ∈ F, ω ∈ Ωf, (3) υω+f − υω−f + yfω ≤ 1 ∀f ∈ F, ω ∈ Ωf, (4) X k∈K X p∈Pk (akigpxkp − yig) +X k∈K X p∈Pk (akjhpxkp − yhj) ≤ 1 ∀(gi, hj) ∈ I, (5) X p∈Pk xkp = 1 ∀k ∈ K\KR, (6) X p∈Pk xkp ≤ 1 ∀k ∈ KR, (7) X p∈Pk xkp− X ρ∈Rk Rρ ≤ 0 ∀k ∈ KR, (8) X ρ∈Y Rρ≤ 1 (9) xkp ∈ {0, 1} ∀k ∈ K, ∀p ∈ Pk, (10) yωf ≥ 0 ∀f ∈ F, ∀ω ∈ Ωf, (11) Rρ ∈ {0, 1} ∀ρ ∈ Y, (12) υω+f ≥ 0, υω− f ≥ 0 ∀f ∈ F, ω ∈ Ωf. (13)

(11)

the selected reserve schedule (and thus, for the selection which reserves to use). Constraints (2) ensure that each flight is either covered by one active crew member or is cancelled. It is en-sured through constraints (3) and (4) that no crew is deadheading on a flight-copy which is not operated by at least one active crew member, such that consistency of departure times between crew flying and crew deadheading is guaranteed. A dummy variable υfω+ ≥ 0 is added to

en-sure that the constraint is not violated if the given flight-copy is not operated, whereas another dummy υω−

f ≥ 0 guarantees that dummies are not used to offset the selection of deadheads on

an uncovered flight. To ensure that no illegal pairs of flight copies are used, constraints (5) make sure that no conflicting flight copies are selected. Constraints (6) ensure that regular crew who is not disrupted is assigned to exactly one pairing. Reserve crew members are restricted to at most one pairing through constraints (7). Crew members with no pairing selected start and end at the location where they originated from at the beginning of the day. Constraints (8) ensure that the reserve schedule accompanying the selected reserve crew members is consistent. Fur-thermore, constraint (9) ensures that at most one reserve schedule is selected. This formulation also ensures that a feasible solution can always be found (i.e. cancel everything). The amount of possible pairings in the problem described above is near limitless. As such, we consider the model for a subset of possible pairings. The subsequent problem is called the restricted mas-ter problem. Then, at the following stage, called the pricing stage, we attempt to find crew pairings with minimal reduced cost to add to the restricted master problem. At every itera-tion, the LP relaxation of the restricted master problem is solved, leading to an optimal solution value and corresponding dual variables. Denote α = {αk

f, f ∈ F } as the dual variables

corre-sponding to the covering constraints (2). The constraints for consistency of departure times (3) give dual variables β = {βω

f, f ∈ F, ω ∈ Ωf}. Dual variables for the infeasible flight-copy

con-straints (5) are given by γ = {γgi,hj, (gi, hj) ∈ I}. Finally, the assignment constraints (6) and (7) give dual variables δ = {δk, k ∈ K}. Furthermore, some additional constraints hold for reserve

crew members. The constraints for the consistency of reserve schedules (8) give dual variables  = {k, k ∈ KR}. In the pricing problem for crew member k ∈ K, we are looking for the pairing

which minimises ˆ ckp = ckp−X f ∈F αfakf p− X f ∈F X ω∈Ωf βfωakωf p − X (gi,hj)∈I γgi,hj(a ki gp+ a kj hp) − δ k , (14)

which extends to the following expression if crew member k is a reserve crew member: ˆ ckp = ckp −X f ∈F αfakf p− X f ∈F X ω∈Ωf βfωakωf p − X (gi,hj)∈I γgi,hj(a ki gp+ a kj hp) − δ k− k . (15)

3.4 Pairing cost structure

When constructing new pairings to include in the final solution, we have to define a cost struc-ture for the individual pairings. In the airline industry, the planned costs of an individual pairing are usually described using a combination of factors. The so-called pay-and-credit for a duty d, as described by Barnhart, Cohn, Johnson, Klabjan, Nemhauser, and Vance (2003), is defined as

(12)

where fd is usually set at 5/8 and MinGuar at six hours (Barnhart, Cohn, Johnson, Klabjan,

Nemhauser, and Vance, 2003).

Real costs can also arise through transportation costs when crew members have to travel by local transport (taxi, train, etc.) from its starting base to a different nearby base. This may be possible if the airline under consideration has multiple bases close to each other. Such trans-portation is assigned a cost of ct. Duty time is also increased through ground transportation.

Denote the transportation costs of a duty d as Transport(d).

As argued by Schaefer et al. (2005), evaluating a pairing solely by its planned costs without disruptions ignores the obvious effect of the pairing structure on the robustness of the overall crew schedule. The authors suggest a penalty method to penalise unfavourable characteristics in a crew pairing. We will explicitly consider penalties on the following unfavourable charac-teristics:

• Characteristic 1: Flight time close to maximum allowed flight time • Characteristic 2: Duty time close to maximum allowed duty time • Characteristic 3: Duty rest time close to minimum required rest time • Characteristic 4: Sit time close to minimum required sit time

Following Schaefer et al. (2005), we calculate the penalty for unfavourable characteristic i using (gi− ∆i|χi− φi|)

+

, (17)

where gi equals the maximum penalty for characteristic i and ∆i equals the slope with which

the penalty decreases. χi is the observed value for this characteristic and φi equals the

maxi-mum/minimum value for the given characteristic. These penalties are therefore in the range [0, gi]. Denote the sum of all penalties for a duty d as Penalties(d).

Using the factors as described above allows us to calculate the duty costs as originally pub-lished. Let the original duty costs for crew member k be denoted by ck

o. Then,

cko =DutyCost(o) + Penalties(o) + Transportation(o). (18) Re-timing costs are also included in the creation of new crew pairings. Whenever a non-original flight is included in a pairing, the costs of this pairing are increased by the re-timing costs cf

r. However, this also implies that flights are penalised twice when crew is deadheading

on a non-original flight-copy. To circumvent this, the costs for re-timing should be deducted from the cost of deadheads cf ωd for non-original flight copies ω ∈ Ωf. Finally, altering costs ca

are added to a new duty if the crew member is not a reserve.

The total non-reduced cost for a new duty p ∈ Pkof crew member k ∈ K is hence given as

ckp = max (DutyCost(p) + Penalties(p) + Transportation(p) − cko), 0 +

X f ∈F X ω6=0∈Ωf akωf pcfr + I{k /∈KR}ca (19) where I{k /∈KR} denotes an indicator function stating whether the evaluated crew member is a reserve andP

f ∈F

P

ω6=0∈Ωf a

f p denotes the number of flights included in the evaluated pairing

(13)

4

Reserve Crew members

Reserve- and regular crew members differ significantly in the structure of their roster. Regular crew members get assigned predetermined duties, whereas reserve crew members are assigned a reserve shift of length τ . In order to cover the entire schedule, reserves start their shift at dif-ferent moments during the day. Due to this, reserve shifts usually overlap, making the rostering and use of reserve crew a highly dependent process. Whether or not a reserve is available dur-ing the morndur-ing may propagate through the schedule and affect the robustness of the schedule for disruptions late in the evening. We consider a single day reserve roster. Let S be the set of shifts to which reserve crew are assigned. Let hs be the number of reserves scheduled during

shift s ∈ S.

In total, |S| different reserve shifts have reserve personnel assigned. Every reserve shift s constitutes of a starting point Bs and an end point Es and these points are allowed to overlap.

We define a new period to start at any such point in the schedule such that all shifts together constitute at most 2|S| separated periods. In order to capture all flights, it should be ensured that no flight occurs before the start of the first period or the end of the last period. If that is the case, additional periods should be constructed to capture all flights. In chronological terms, a reserve shift ends before the next reserve shift starts if a point is both the starting- and ending point of a shift. Denote the set of separated periods as T .

Separating overlapping shifts into non-overlapping periods allows us to evaluate the strength of a current reserve schedule in a sequential manner. The number of departing flights in every period is known. A visual representation of the separation of periods can be seen in Figure 2.

We model the amount of reserve personnel still available at period t using a discrete time Markov-chain. The state space of the Markov Chain at any period in time is described by the number of reserves that are still available during this period. Denote M as the maximum number of reserves available at any point during the day. The state space E is defined as

E = {1, 2, . . . , M }. (20)

The amount of reserve personnel still available at a given point in time is modelled using a Markov chain approach, where the expected amount of reserve personnel in the next period is dependent on the expected amount of reserve personnel in the current period only. As we will show later, the recovery policy (i.e. the policy on which reserve crew member to use first) of an airline has a large impact on the probability of reserve crew members being available. Define the discrete-time Markov Chain Qt:

Qt= (π0, π1, . . . , πM), (21)

where πx equals the probability of x remaining reserve personnel after period t (or

equiva-lently, the probability of being in state x ∈ E), given the scheduled reserve crew members in all periods leading up to the current one, withP

x∈Eπx = 1. Before the day started, we have the

initial distribution Q0 = {1, 0, . . . , 0}.

(14)

Figure 2:Timeline for an example airline, with overlapping reserve shifts. 00:00 23:00 22:00 21:00 20:00 19:00 18:00 17:00 16:00 15:00 14:00 13:00 12:00 11:00 10:00 09:00 08:00 07:00 06:00 Flight 1 Flight 2 Flight 3 Flight 4 Flight 5 Flight 6 h1 h2 h3 Period 1 Period 2 Period 3 Period 4

Time Reserve shifts Periods

Assumption 1: Demand for reserve personnel in period t can be described using a known discrete probability distribution Ftwith density ftand domain [0, bt].

Assumption 2:Demand for reserve personnel is independent between periods.

Assumption 3: Reserve crew is always available to take over a flight, as long as it departs within their reserve shift.

These assumptions ensure that an exact expression can be found for the transition matrices describing the transition of available reserve personnel. In the transition from period t to period t + 1, some reserves may finish their shift, then other reserves may start their shift and finally, reserves may be called up to perform a duty, in that order. These events may be described using different transition matrices. When new reserve crew starts their shift, say shift s, the Markov Chain Qttransitions to new states with transition matrix PtA. This transition matrix depends on

(15)

of PA t are given as (PtA)ij = ( 1 if j = i + hs, 0 otherwise. (22)

With the distribution of reserve demand known for each period t and independent of reserve demand in previous periods, the transition matrices due to reserves being called up to work can be described using PB

t , where the elements of PtBare given as

(PtB)ij =      ft(x) if j = i − x > 0, 1 − Ft(i) if j = 0, 0 otherwise. (23)

The transition matrices so far are independent of the recovery policy used by the airline company. This is not the case for the transition due to reserve members ending their shift. The decision on which reserve crew member to use whenever there is a positive demand for crew personnel directly affects the probability that a certain reserve crew member is still available at the end of their shift, and therefore affects the transition matrix due to reserves ending their shift, which we denote as PC

t . Further in this section we will describe a certain recovery policy

and explain why this recovery policy is suitable to evaluate reserve schedules. The total transition matrix from period t to period t + 1 is given by PC

t PtAPtB, such that Qt+1= QtPtCP A t P B t . (24)

Now, consider the Earliest-Finisher-First (EFF) recovery policy. This recovery policy selects, whenever there is a positive demand for reserve personnel, the available reserve crew member whose shift ends first from that point in time. This recovery policy corresponds to the First-In-First-Out (FIFO) policy if shift length τ is equal for all reserve crew members. Suppose we are at period t coinciding with an end point Es, such that the reserves scheduled in shift s are

off duty. Define m := max

x (x|πx > 0). In an airline which uses EFF as a recovery policy, the

transition matrix PC t , given hs, is given as (PtC)ij =      1 if j = i − hs∧ s ≥ m − hs, 1 if j = i ∧ s < m − hs, 0 otherwise. (25)

The rationale behind this is as follows: in an EFF recovery policy, we know that the earliest scheduled reserve crew is always used. Furthermore, there is a strictly positive probability that a crew member is not used in his reserve shift. If at most m crew members were still available with a positive probability, after the reserve crew members finish their shift, at most m − hs

(16)
(17)

Theorem 4.1. When maximising the number of reserves available at any point in time, an EFF recovery policy is optimal.

Proof. Suppose we have an optimal policy, say P0, in which a reserve scheduled in shift y (say, reserve y) is used over a reserve scheduled in shift x (say, reserve x) with Ey > Ex. Then, at

the start of period t corresponding to Ex, reserve x, if still available, ends his shift. By choosing

reserve y over x, the probability that x is still available in period t is larger or equal than this probability when reserve x is chosen over reserve y in say, policy P.

That implies that for each state i ∈ E, we arrive in a better or equal state when using policy P over P

0

. In all subsequent periods until period t0 corresponding to Ey, selecting policy P over

P 0

does not affect the transition matrices.

At t0, reserve y, if still available, ends his shift. However, in policy P0, this is only the case if reserve demand has been such that reserve x would not have been used either and no improve-ment was gained by selecting reserve y over reserve x. Hence, we can conclude policy P is at least as good as P0 in maximising the number of reserves available at any time. By iteratively exchanging the reserve member to use, the resulting optimal recovery policy becomes the EFF policy.

A downside of the EFF recovery policy is that using a reserve very late in his shift is not necessarily an optimal recovery action in the scope of a monthly personalised roster, where such assignments are likely to violate the minimum rest time required for a subsequent assignment and as such, influence the roster for the days to come. Nevertheless, we argue that this is a reasonable assumption, as such adverse effects are usually accepted in the situation of extreme reserve demand. In the RCRP we are looking at such a personalised roster setting, such that trade-offs between efficient reserve usage and their fit in the overall schedule are considered.

Given the transition matrices as described earlier, we are able to evaluate the risks associ-ated with a given reserve schedule H = (h1, . . . , h|S|). Risk at a given period can be evaluated

as follows: Suppose that, given some decisions made in prior periods, we have a reserve per-sonnel distribution at period t of Qt. At this period, after considering the personnel whose shift

has ended and new reserve personnel who start their shift, demand for reserve personnel is evaluated. The expected shortfall of reserve personnel in period t, γtequals

γt= bt X i=1 i × QtPtCPtA· ft(i, . . . ,M + i) 0 , (26)

where ft is a vector of probability density functions corresponding to the demand for reserve

personnel in period t and btdenotes the upper bound on reserve demand in period t.

Pseudo code for the evaluation of a reserve schedule in terms of the expected shortfall is given in Algorithm 1.

This algorithm can be applied for comparing multiple reserve schedules, such that the effect of using a reserve crew member on the additional expected shortfall can be estimated. Let two reserve schedules be denoted as H1and H2, respectively. The additional expected shortfall due

to the changes in the reserve schedule is defined as λ = λ(H1) − λ(H2).

(18)

Algorithm 1Evaluation of a reserve schedule

Output:Expected shortfall of reserve schedule λ(H)

1: procedureEVALUATE(H, S, T , ft) 2: λ(H) ← 0 3: Q(H) ← {1, 0, . . . , 0} 4: for tin 1 : |T | do 5: λ(H) ← λ(H) + γt 6: Q(H) ← Q(H) · PtC 7: Q(H) ← Q(H) · PtA 8: Q(H) ← Q(H) · PtB 9: end for 10: return λ(H) 11: end procedure

. Let the original reserve schedule be given by H0. Define the additional expected shortfall

of reserve crew schedule ρ as λρ = λ(Hρ) − λ(H0). The cost of using reserve crew schedule ρ is

given as cρ

s = cs× λρ.

5

Solution Method

Our pricing problem consists of finding crew pairings with minimal reduced costs. A crew pairing for crew member k can be described on a directed graph Gk = (Vk, Ak). Vertices in this

graph denote airports at different moments in time. The source node for crew member k equals the first possible starting time of this duty. For regular crew members already assigned to a flight this is defined as the first moment in time that legal- and contractual regulations allow this crew member to perform a duty. This may be earlier than the original starting time of their duty, but this can be tailored to an airline’s specific policy and regulations. There are multiple sink nodes corresponding to the end of a crew member’s duty. In the pricing problem, our goal is to find a solution to a Resource Constrained Shortest Path Problem (RCSPP). Resources involving the creations of pairings are maximum duty and maximum flying time. Pairings which exceed the predefined thresholds corresponding to these constraints are infeasible.

5.1 Pricing problem graph structure

As mentioned above, nodes are defined as airports at different points in time. The approach of such a space-time graph in airline crew recovery was first introduced by Stojkovi´c et al. (1998). For our pricing problem, we define three different types of nodes:

• Source nodes, which correspond to the first possible starting time of the duty of crew member k at the airport the crew member starts their day. Denote the source node for crew member k as vk

s.

(19)

destination at which they need to finish their duty such that their schedule in the following day is not violated. Denote the sink node for crew member k as vk

e.

• Assignment nodes, which correspond to either the departure or arrival of flight legs to be flown/deadheaded on. The set of all assignment nodes is independent of a particular crew member. Denote the set of all assignment nodes as VA. Assignment node v

i ∈ VA

consume fi flight time and di duty time, respectively.

Arcs in this graph correspond to airport movements in both time and space. As such, arcs may correspond to flights, waiting time, or (ground) transportation. Arcs between different airports (excluding ground transportation) consume flying time resources, whereas all arcs consume duty time resources. As the costs of a pairing are not necessarily linear in either resource, costs contributing to actual costs or flying/duty time penalties are not added at the arcs, but added at the sink node instead. Transportation and re-timing costs are added at the specific arc they correspond to. The same holds for penalties for the minimum sit time (characteristic 4). Altering costs, if applicable, are added at the source node.

The goal in the crew pairing subproblem is to find a feasible path from the source node to the sink node which has minimal (and negative) reduced costs. Consider a reserve crew member whose shift starts at 6:00 at AMS airport. Consider five flights as given in Table 1. Transporta-tion between the bases AMS, RTM and GRQ is possible by public transport and every flight is allowed to be re-timed such that they depart 5 minutes earlier. In this example, the crew member should finish on or before 15:30 to not violate his minimum rest time. The minimum turn around time is set as 30 minutes, which renders some copy combinations infeasible. The resulting graph for this example is given as in Figure 4.

Table 1:Example flight schedule

DEP ARR DEP Time ARR Time

AMS ALC 6:35 9:15

ALC AMS 9:50 12:30

RTM BCN 7:00 9:00

BCN AMS 9:30 11:30

AMS GRQ 12:20 13:05

5.2 Solving the pricing problem

All in all, the cost structure for new pairings does not exhibit a linear pattern in resources such as flying or duty time. This makes solving the corresponding RCSPP through traditional labelling algorithms, which often rely on strict dominance rules, all that more difficult. Hence, we need to use an algorithm which does not suffer from this drawback.

(20)

Figure 4:Example of (part of) a pricing subproblem. AM S ≥ 06 : 00 RT M 07 : 00 RT M 06 : 55 AM S 06 : 30 AM S 06 : 35 BCN 8 : 55 BCN 9 : 00 ALC 9 : 10 ALC 9 : 15 BCN 9 : 25 BCN 9 : 30 ALC 9 : 45 ALC 9 : 50 AM S 11 : 25 AM S 11 : 30 AM S 12 : 25 AM S 12 : 30 AM S 12 : 15 AM S 12 : 20 GRQ 13 : 00 GRQ 13 : 05 AM S ≤ 15 : 30 1: 00 0 0 2 : 00 2 : 00 2 : 40 2 : 40 0 : 30 0 : 30 0 : 35 0 : 35 0: 30 0 : 40 0 : 35 2 : 00 2 : 00 2 : 40 2 : 40 0 0 0 0 0 : 50 0 : 50 0 : 55 0: 45 0 : 45 0 : 45 2 : 30

partial path P it is following or is pruned. The resource consumption for a partial path P is de-noted using Φ1(P)and Φ2(P)for flying- and duty time, respectively. Reduced cost for a partial

path P is denoted using r(P). The pulse algorithm constitutes of two phases. In the first phase, a bounding scheme is put in place to calculate lower bounds on the reduced costs which one can achieve when arriving at a given node with a certain amount of resources spent. A step size parameter ∆p determines how many of these bounds are calculated. The bounding phase

can be done independently of the subproblem for crew number k (that is, the bounding phase holds for all crew members k ∈ K) and is described using a lower bound matrix B = [b(vi, t)],

where vi corresponds to a given node and t to the amount of resources spent. Secondly, the

subproblem for crew member k is solved using a depth-first search of the solution space, where sub-optimal pairings are pruned using a combination of feasibility pruning (eliminating partial pairings which exceed the duty or flying time limits) and lower bound pruning using the lower bounds as calculated in the previous phase. Finally, if the pulse algorithm finds any pairing with negative reduced cost in subproblem k ∈ K, the pairing with most negative reduced cost is added to the restricted master problem. That is, at each round of pricing, at most k new pairings are added to the problem. The pricing problem is described in Algorithm 2.

The pulse procedure can be described as a recursive algorithm which aggressively searches the search tree from a given node. Pseudo-code for this algorithm can be found in Algorithm 3. If we intend to add node vito the current partial path P, the function isFeasible checks whether

(21)

Algorithm 2Pricing problem

Output:New columns for the restricted master problem

1: procedurePRICING(∆p) 2: bound(∆p, φL1) 3: for k ∈ K/KRdo 4: P ← {} 5: r(P) ← (−δk+ ca) 6: pulse(vsk, r(P), 0, P) 7: if r(P∗) < 0then 8: addPairing(P∗) 9: end if 10: end for 11: for k ∈ KRdo 12: P ← {} 13: r(P) ← (−δk− k) 14: pulse(vsk, r(P), 0, P) 15: if r(P∗) < 0then 16: addPairing(P∗) 17: end if 18: end for 19: end procedure

it prunes the search tree whenever r(P) + b [vi, Φ1(P)] ≥ r(P∗),where r(P∗)corresponds to the

current best found solution. As one can see in Algorithm 4, bounds are only calculated for a finite number of possible amounts of flying time used, as determined by the parameter ∆p. If no

bound is known for Φ1(P), one should round Φ1(P)down to the highest amount of flying time

which is in the bound matrix. When adding the current node viis feasible and possibly optimal,

attempt to add a further node to the current partial path of the set Uk

i = {vj ∈ Vk|(vi, vj) ∈ Ak}.

Whenever a partial path P reaches the sink node vk

e with minimal reduced cost so far, set P ∗ = P

and r(P∗) = r(P).

5.3 Branching rules

(22)

Algorithm 3Pulse procedure

1: procedurePULSE(vi, r(P), Φ1(P), Φ2(P), P)

2: if isFeasible(vi, Φ1(P), Φ2(P), P) then

3: ifnot checkBounds(vi, Φ1(P), r(P)) then

4: P0 ← P ∪ {vi} 5: Φ1(P 0 ) ← Φ1(P) + fi 6: Φ2(P 0 ) ← Φ2(P) + di 7: for vj ∈ Uikdo 8: r(P0) ← r(P) + rij 9: pulse(vj, r(P 0 ), Φ1(P 0 ), Φ2(P 0 ), P0) 10: end for 11: end if 12: end if 13: end procedure

Algorithm 4Bound procedure

Output:Lower bound matrix B = [b(vi, τ )]

(23)

which which crew member is responsible for taking on the flights to be covered. If multiple cancellation variables are fractional, branching is done on the most infeasible variable (i.e. the variable with value closest to 0.5).

Secondly, we force the deadheading variables to be integral. By doing so, we also restrict the pairing variables which include the flight leg to be deadheaded on to be integral. Again, branching is done on the most infeasible variable first.

Finally, Foster branching, as introduced by Ryan and Foster (1981), is applied. Ryan-Foster-branching (also called follow-on branching) has proven to be incredibly effective for the problem at hand (see e.g. Desaulniers et al., 1997; Maher, 2015). In this branching rule, two successive flights in a fractional pairing (i.e. follow-ons) are either forced to follow each other in a single pairing on the one branch or not allowed to be in the same pairing on the other branch. As in the previous branching rule, follow-ons from the most infeasible pairing are selected to branch on first. Define the set of fractional pairing variables for crew member k as Pk

f = {p ∈ Pk|xkp ∈ Z}. Then we branch on the follow-on connection (i, j) that maximises/

min   X k∈K X p∈Pk f|(i,j)∈p xkp, 1 −X k∈K X p∈Pk f|(i,j)∈p xkp  . (27)

Contrary to previous authors, such as Maher (2015), who use flight copies to model delays and re-timings, we select a connection of flight copies and not a connection of flights to branch on. That is because in our formulation, constraints (5) are not violated if multiple illegal flight-copy combinations are fractional and as a result, the optimal LP solution contains multiple pairings differing only in which flight-copy to use for a given flight. As a result, branching on follow-on flights instead of the flight copies does not guarantee convergence.

6

Computational results

In order to evaluate the performance of our model, the RCRP is tested on the data of a medium-sized Dutch airline. We follow the progress of their crew roster over the tracking period and the disruptions which they encounter. We then let our model recover their schedules accordingly. We compare the results with that of a benchmark model, as we describe in Section 6.1.

6.1 Benchmark model: Traditional Crew Recovery Problem

We compare our results with that of a Traditional Crew Recovery Problem (TCRP). The TCRP, unlike our model, uses no penalties for unfavourable characteristics to assess new pairings and penalises reserve usage through a single cost parameter csonly. Hence, this model focuses on

(24)

6.2 Data and scenario description

For our first experiment, we consider a personnel roster from a medium-sized airline with a hub-and-spoke network. In the original schedule, 176 flights are scheduled and 98 crew mem-bers are available of which 19 crew memmem-bers are scheduled for a reserve shift. Crew memmem-bers are based on four crew bases which are close enough to each other such that transportation between the different bases is possible for varying amounts of transportation time. This airline has a total number of 39 aircraft for which infeasible flight copies may occur. Deadheads are only considered on internal flights, deadheads on other airlines are not considered. All pub-lished duties are subject to change, but corresponding to labour regulations, the starting time of a regular crew members duty may be at most two hours earlier than its originally planned duty. Before starting the experiment, the roster is optimised with respect to the model parame-ters as used in the RCRP, which are described in Section 6.3. To show the enduring flexibility of the roster when using the RCRP, we show a sequential experiment. During the tracking phase, several disruptions occur to the schedule as published. We compare a number of simulated dis-ruptions (SD), in which crew are randomly taken out of the schedule with a certain probability ψiT for scenario SDi during the tracking period. At the airline under consideration, the

track-ing period lasts approximately 30 days. The resulttrack-ing RCRP is solved to provide a robust crew schedule for the day of execution (as well as an updated flight schedule, if flights have been re-timed). In the benchmark case, the TCRP is used to recover the disrupted schedule in this phase of the experiment. In the second stage of the experiment, additional crew is disrupted with probability ψO

i for scenario SDi, representing the day of execution. In both the benchmark

case and the robust approach, we recover the disrupted schedule using the TCRP in this phase, as robustness is of less importance during the day of execution. A graphical illustration of the experimental setup for testing the robust approach is given in Figure 5.

As a result of the used experimental setup, during the tracking phase, we assume that every flight departing from a crew base (and as such, a natural starting point for reserve crew to start their duty), requires a reserve to take over the flight with probability ψO

i . This implies that, for

a period t with bt flights departing from the home base(s), the demand for reserve personnel

can be described using a binomial distribution B(bt, ψiO). A description of the set of scenarios

can be found in Table 2.

6.3 Parameter selection

In the problem under consideration, five flight copies are created to model the re-timings. We allow flights to either stay as originally planned and to be either delayed or moved forward in the flight schedule by either 5 or 15 minutes. Parameters that restrict duty legality are set in accordance with the airline’s contractual- and legal regulations and can be found in Table 3. Combinations of copies are deemed illegal if selecting both would violate the minimum turn around time φ4of 30 minutes.

(25)

Figure 5:Illustration of the experimental design setup Crew Schedule Flight Schedule Create random disruptions Tracking period? Solve TCRP Solve RCRP Crew Schedule Flight Schedule Next period End experiment Yes No Output Output Output Output

Table 2:Scenario descriptions and amount of disrupted (reserve) personnel

Scenario ψiT ψOi No. disruptions during Tracking phase No. disruptions on execution day

(26)

Table 3:Legality parameters Parameter Value φL 1 9:00 hours φS1 12:00 hours φL2 11:00 hours φS 2 13:00 hours φ3 0:30 hours φ4 10:00 hours

only cancelled if no other possibility to cover this flight can be found. Costs are set in units of 1 minute of flying time. All costs parameters and their set value can be found in Table 4.

Table 4:Costs parameters relative to a minute of flying time

Parameter Value

cf ωd 250 For all original copies

cf ωd - 1750 For all non-original copies cfc 1000000 For all flights

cs 2500 Per unit of additional expected shortfall, for all schedules, in the RCRP

cs 360 Single parameter cost per reserve used in the TCRP

cfr 2000 For all flights

fd 5/8 MinGuar 360 ct 60 ca 200 g1 360 ∆1 4 g2 360 ∆2 4 g3 180 ∆3 2 g4 120 ∆4 12

In this experiment, to limit the amount of reserves to be used (and thus, the amount of set-up time and memory capacity necessary), we limit the number of reserve schedules to ˆn = maxn{n|Pni=0 Ni ≤ M}, where N equals the total number of reserves scheduled and M is a

parameter limiting the amount of reserve schedules to be evaluated. For the experiments at hand, we set M = 100, 000. The pricing problem is solved with a pulse parameter of ∆p = 60

(27)

6.4 Algorithm results

The RCRP was programmed in C++ calling SCIP 4.0 (Maher et al., 2017) as the mixed integer program solver and using SoPlex 3.0.1 to solve the LP relaxations. All computational tests are performed on a Linux virtual machine running on a laptop with an Intel Core i5-7200 CPU. 3GB RAM is allocated to the virtual machine. For a fair comparison, the number of reserves used in the TCRP is limited as if there are at most M reserve schedules to be evaluated. Table 5 shows the results of both models and the resulting solution characteristics at the end of the Tracking period.

Table 5: Solution characteristics at the end of the tracking period, showing the number of alterations (Alt), re-timings (Ret), reserves used (Res used), cancellations (Canc), aggregated penalties (Pen), expected shortfall and aggregated costs.

RCRP TCRP

Scenario Alt Ret Res used Canc Pen Shortfall Costs

SD1 9 7 0 0 9* 9* 0 0 3740 4830 2.06 2.47 31845 31910 SD2 0 0 0 0 6 6 0 0 1420 1380 0.79 1.00 32655 32535 SD3 0 0 0 0 6 6 0 0 1450 1500 0.43 0.79 32535 32535 SD4 3 1 0 0 9* 9* 0 0 2220 2480 1.06 2.31 32475 32340 SD5 0 0 0 0 2 1 0 0 1450 1610 0.29 0.29 32535 32535 SD6 2 0 0 0 7* 7* 0 0 1550 1990 2.34 3.29 32655 32775 SD7 2 0 0 0 4 4 0 0 1670 1450 1.64 2.37 32595 32535 SD8 1 0 0 0 4 4 0 0 1450 1450 1.59 2.31 32655 32535 SD9 11 9 1 1 9* 9* 6 6 4900 5750 0.27 0.54 30115 30225 SD10 12 11 1 1 9* 9* 10 10 4420 4660 0.21 0.54 29115 29260

* Solution uses maximum number of reserves

There are a couple of observations which stand out when comparing the different recovery models. If possible, both recovery models attempt to primarily recover the disrupted schedule through the use of reserves. Re-timing flights is only considered as a last minute resort, if can-cellations can not be prevented otherwise. For the TCRP, this also holds for the altering of exist-ing schedules, if reserves can not be plugged in directly to replace the disrupted crew member. For the RCRP, altering some (additional) rosters is a viable option for reducing future risk. The main reason for doing so arises through the objective of minimising reserve schedule shortfall, which is significantly lower when using the RCRP than using the TCRP. Through altering a few extra schedules, the RCRP can use the reserves which contribute the least to schedule shortfall. Overall, the RCRP provides solutions with less aggregated penalties, but it may actually allow additional penalties, if this would benefit the accompanying reserve schedule shortfall.

These results also serve to illustrate situations in which the model breaks down. In multiple scenarios, the number of reserves used equals the maximum number of reserves to be used, especially when the number of disruptions in the tracking period is high. In these situations, the possibility of using more reserves may add to the current solution and as such, the current restrictions may provide a sub-optimal outcome.

(28)

will occur. These disrupted schedules are then again solved by the TCRP, and the resulting solution characteristics can be found in Table 6.

Table 6:Solution characteristics at the end of day of execution, showing the number of alterations (Alt), re-timings (Ret), reserves used (Res used), cancellations (Canc), aggregated penalties (Pen), expected shortfall and aggregated costs.

RCRP TCRP

Scenario Alt Ret Res used Canc Pen Costs

SD1 1 1 0 0 6 5 0 0 3780 4170 32455 32395 SD2 7 6 1 1 11 10 0 0 2490 2490 32865 32865 SD3 2 3 0 0 7 9 1 1 1960 1830 33000 33000 SD4 1 2 0 0 4 4 0 0 2250 2690 32715 32580 SD5 0 0 0 0 9 9 0 0 1610 1770 32895 32895 SD6 4 6 1 1 7 7 2 2 1860 2560 32530 32475 SD7 1 1 0 0 9 9 0 0 2560 2340 32595 32595 SD8 6 7 1 1 13 13 1 1 2400 2280 33195 33075 SD9 3 3 0 0 7 7 0 0 5300 6400 31785 31880 SD10 0 1 0 0 6 8 8 8 4540 4620 30010 29830

The results show that, overall, less alterations were necessary to repair the disrupted sched-ule compared to the TCRP. Penalties are usually lower when adapting the robust approach, while costs are higher. Re-timings and cancellations are not avoided through a more robust approach to recovery in the instances presented here. Hence, no conclusive evidence can be found that the adapted approach is a significant improvement with respect to traditional meth-ods. However, we argue that this is in part to the heavy restriction on the maximum number of reserves to use, which provided sub-optimal decisions in the tracking phase.

With the experimental setup as used so far, all disruptions during the tracking period are solved in a single run from the algorithm. To counter the pitfall as described earlier, where the number of disruptions becomes too excessive for the model to handle properly with the given number of reserves, it might be beneficial to run the algorithm more often during the tracking period (e.g. every few days). On the one hand, this gives the employees earlier insight in their roster, increasing crew happiness, while also limiting the size of the problem. However, this also reduces the airline’s flexibility to alter the schedule later on.

An alternative solution would be to increase the bound M for the number of reserve sched-ules to be evaluated. In the tracking period, time pressure on the final solution is not as im-portant as on the day of execution, when decisions need to be good and fast. We argue that, whereas this would surely benefit the solution value, it would also severely increase the time-and memory necessary to solve the problem. Figure 6 shows computational statistics for the RCRP when applied to scenario SD6 for varying bounds on the number of reserves to use. In

this scenario, 7 regular crew members and no reserves are disrupted and as such, the RCRP(n) should consider any possible reserve schedule using at most n out of 19 reserves to repair the disrupted crew schedule.

(29)

sched-Figure 6:Computational statistics of the RCRP for varying maximum number of reserves.

(a)Memory usage (bar) and setup time (line)

0 500 1000 1500 2000 0 20 40 60 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Maximum number of reserves

Memor

y used (MB)

Setup Time (sec)

(b)Running time 0 10 20 30 40 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Maximum number of reserves

Running time (sec)

ules/variables included in the problem) and setup time (due to the number of schedules which need to be evaluated a priori). In the optimal solution of this problem when n is set to be un-restricted, exactly 8 reserves are used. This is in line with the idea that, in an optimal solution, the amount of reserves used should be equal or close to the amount of disrupted crew. When restricting the model to a maximum number of reserves which is sub-optimal for the overall problem, we see extreme methods for recovery (Cancellations and/or numerous alterations), which in turn increase the running time for the algorithm. Once n is further increased and incor-porates the optimal overall solution, running time is again increasing in n. This time is mostly consumed in the solving of LP relaxations, which need to handle a significantly increased num-ber of variables.

To further investigate the results and pitfalls as discussed for the previous experiments, we consider another experiment. For this experiment, a flight schedule was created out of all aircraft rotations stationed at the main hub from the same dutch airline for three arbitrary days. The corresponding crew roster was then created through re-optimizing all available crew on these days with respect to the model parameters as in Table 4. The resulting schedule consists of 309 flights spread out over 75 aircraft. 169 crew are available, of which 29 are reserves. Unlike in the previous roster, reserve crew are now exclusively located at a single home base location, instead of multiple airports close to one another.

Hence, this roster differs in characteristics from the previous one in two main aspects. First, this roster is substantially larger, both in available crew as in the number of flights to be cov-ered in the final solution. As a consequence, with 29 reserve crew available, we are unlikely to get a reasonable solution with the bounds as used in the previous experiment. Secondly, the availability of reserve crew directly at the main hub allows the algorithm to more accu-rately predict future reserve demand during a given period, as ground transportation time is no longer necessary to reach the departure station for flights departing from a nearby airport.

(30)

Figure 7:Average probability for crew falling out of the roster between publication and execution relative to the day of execution, based on historical data.

scenarios be denoted by T Di. To more closely describe the real life situation, historical data was

used to assess this probability for the different periods. Figure 7 shows the average percentage of crew which fell out of the roster during different moments between roster publication and roster execution, as well as the percentage of crew which which was still available to fly their assigned schedule.

For convenience, we round the values as given in Figure 7 and set

ψT = {ψT1, ψT2, ψT3, ψT4, ψT5} = {0.02, 0.01, 0..01, 0.05, 0.06}. (28) Scenario characteristics for the scenario’s can be found in Table 7. The solution characteris-tics during the total tracking phase can be found in Table 8.

Table 7:Scenario descriptions throughout the tracking period

No. disruptions period 1 No. disruptions period 2 No. disruptions period 3 No. disruptions period 4 No. disruptions execution day Scenario T D1 3 1 2 5 14 T D2 5 4 1 6 12 T D3 5 0 0 5 12 T D4 4 1 2 7 9 T D5 2 3 0 8 12 T D6 3 3 2 10 12 T D7 3 2 2 10* 12 T D8 4 0 0 6 12 T D9 4 1 1 9 12 T D10 6* 2 4 4 8

* Number of regular crew disruptions exceed maximum number of reserves

(31)

Table 8: Solution characteristics at the end of the tracking period, showing the number of alterations (Alt), re-timings (Ret), reserves used (Res used), cancellations (Canc), aggregated penalties (Pen), expected shortfall and aggregated costs.

RCRP TCRP

Scenario Alt Ret Res used Canc Pen Shortfall Costs

T D1 3 0 0 0 8 8 0 0 2270 2450 0.45 1.87 57705 57705 T D2 8 0 0 0 12 12 0 0 2320 2210 0.72 4.99 57705 57705 T D3 5 0 0 0 8 8 0 0 2240 2240 0.34 1.87 57765 57765 T D4 5 0 0 0 11 12 0 0 2270 2370 0.38 1.95 57825 57765 T D5 4 0 0 0 10 10 0 0 2380 2300 0.36 2.21 57585 57585 T D6 6 0 0 0 11 11 0 0 2530 2590 1.11 3.34 57705 57705 T D7 4 6 0 0 15 14 0 0 3100 5410 0.56 1.26 57465 57180 T D8 1 0 0 0 8 8 0 0 2140 2330 0.29 1.22 57765 57765 T D9 4 2 0 0 12 12 0 0 2580 3210 0.39 1.34 57410 57410 T D10 10 2 0 0 16 14 0 0 3120 4290 0.59 2.57 57790 57705

tracking phase, warranting an even higher bound on the number of schedules to be evaluated. The current bound is pushing on the limits of the available memory capacity, such that more extreme instances require better hardware for an optimal evaluation. In scenarios where the maximum number of reserves was not a limiting factor, supported by the fact that all aircraft rotations start from a single hub, the recovery solutions provided by the TCRP are rather triv-ial. The algorithm usually applies no alterations to existing schedules and replaces disrupted crew through available reserve crew. The RCRP, on the other hand, is actively searching for the reserves which contribute the least to additional reserve shortfall, altering existing schedules if necessary. Additional penalties are avoided if possible, but are a viable alternative to increas-ing reserve shortfall. The total absolute costs as provided by the different models is largely the same, which shows that the difference is generally not on which pairings to create, but rather on who to assign the given pairings to.

With the roster at the end of the tracking period, the roster is again disrupted to simulate the day of execution. As before, the resulting roster is then repaired using the TCRP. Solution characteristics for that simulation can be found in Table 9.

Results during the day of execution show the actual use of considering a more robust ap-proach to recovery during the tracking period. Alterations during the final day are severely reduced by using the RCRP over the TCRP. While one may argue that this reduction is offset by the increased number of alterations during the tracking phase, we argue that alterations on the final day are much more disruptive to the operation, creating delays and crew confusion. Furthermore, alterations to an individual crew members roster this close to execution have a larger impact on his/her personal life and roster satisfaction.

Even more strongly, robust recovery during the tracking phase may even prevent cancella-tions during the final day of execution. In scenario T D1, a grand total of 8 reserves were unused

(32)

Table 9: Solution characteristics at the end of the day of execution, showing the number of alterations (Alt), re-timings (Ret), reserves used (Res used), cancellations (Canc), aggregated penalties (Pen), expected shortfall and aggregated costs.

RCRP TCRP

Scenario Alt Ret Res used Canc Pen Costs

T D1 11 12 2 2 10 9 0 4 6780 6370 57840 56515 T D2 0 6 0 0 12 9 0 0 2920 4530 57825 57510 T D3 2 5 0 0 10 10 0 0 2830 3260 57705 57520 T D4 1 4 0 0 9 7 0 0 3190 4650 57965 57830 T D5 4 7 0 0 11 10 0 0 4330 5720 57585 57460 T D6 2 4 0 0 8 9 0 0 3380 4310 57445 57275 T D7 0 0 0 0 10 7 0 0 3160 5330 57465 57150 T D8 2 3 0 0 9 9 0 0 3680 3760 57695 57695 T D9 0 1 0 0 10 10 0 0 3710 4390 57335 57305 T D10 2 11 0 0 7 6 0 0 4530 8050 57975 57530

the evening. In the roster as produced by the RCRP, reserves were more spread out and as a result, all flights could still be covered.

7

Discussion and concluding remarks

In this thesis, we consider a formulation for the semi-integrated robust crew recovery problem (RCRP), whose goal is to recover a disrupted crew roster in a cost-efficient manner, which re-mains capable of recovering in the case of further disruptions. The RCRP explicitly considers the effect of using reserve personnel on the resulting robustness of the roster under considera-tion. We measure the effect on roster robustness in terms of the so-called expected shortfall. We model the underlying reserve rosters using Markov-chains under the assumption that reserve demand follows a prespecified independent distribution and recovery ultimately converges to the Earliest-Finisher-First recovery policy. We solve the problem using a novel branch-and-price approach. New pairings are created using a variant of a pulse algorithm to solve a Resource Constrained Shortest Path Problem.

(33)

of disruptions (and thus, the demand for reserve personnel) at any time may be countered by running the algorithm multiple times throughout the complete tracking period.

We present a framework to evaluate reserve schedules provided some underlying assump-tions which may be invalid in a real life scenario. The assumption of independence of reserve demand between periods may be affected by causes like extreme weather conditions or a strike. Future research could be done on the effect of relaxing this independence assumption. Further-more, the framework could be extended such that reserve personnel are not always available, as is the case in real life.

Computational performance may also be improved by pre-processing methods (e.g. taking a subset of all possible reserve schedules) or through integrating the evaluation of possible reserve schedules in the optimization problem, such that the exponential amount of reserve schedules no longer need to be evaluated a priori, increasing the practical use of the model.

References

Ball, Michael, Cynthia Barnhart, Martin Dresner, Mark Hansen, Kevin Neels, Amedeo Odoni, Everett Peterson, Lance Sherry, Antonio Trani, Bo Zou, et al. (2010). Total delay impact study. In NEXTOR Research Symposium, Washington DC. http://www. nextor. org.

Barnhart, Cynthia, Peter Belobaba, and Amedeo R Odoni (2003). Applications of operations research in the air transport industry. Transportation science 37(4), 368–391.

Barnhart, Cynthia, Amy M Cohn, Ellis L Johnson, Diego Klabjan, George L Nemhauser, and Pamela H Vance (2003). Airline crew scheduling. In Handbook of transportation science, pp. 517–560. Springer.

Bayliss, Christopher (2016). Airline reserve crew scheduling under uncertainty. Ph. D. thesis, Uni-versity of Nottingham.

Clausen, Jens, Allan Larsen, Jesper Larsen, and Natalia J Rezanova (2010). Disruption man-agement in the airline industry—concepts, models and methods. Computers & Operations Research 37(5), 809–821.

Desaulniers, Guy, Jacques Desrosiers, Yvan Dumas, S Marc, B Rioux, Marius M Solomon, and Francios Soumis (1997). Crew pairing at air france. European journal of operational re-search 97(2), 245–259.

Dillon, Jeffrey E and Spyros Kontogiorgis (1999). Us airways optimizes the scheduling of re-serve flight crews. Interfaces 29(5), 123–131.

Gamache, Michel, François Soumis, Gérald Marquis, and Jacques Desrosiers (1999). A column generation approach for large-scale aircrew rostering problems. Operations research 47(2), 247– 263.

(34)

Lettovsk `y, Ladislav, Ellis L Johnson, and George L Nemhauser (2000). Airline crew recovery. Transportation Science 34(4), 337–348.

Lonzius, Marc Christopher and Anne Lange (2017). Robust scheduling: an empirical study of its impact on air traffic delays. Transportation Research Part E: Logistics and Transportation Review 100, 98–114.

Lozano, Leonardo, Daniel Duque, and Andrés L Medaglia (2015). An exact algorithm for the elementary shortest path problem with resource constraints. Transportation Science 50(1), 348– 357.

Maher, Stephen J (2015). Solving the integrated airline recovery problem using column-and-row generation. Transportation Science 50(1), 216–239.

Maher, Stephen J., Tobias Fischer, Tristan Gally, Gerald Gamrath, Ambros Gleixner, Robert Lion Gottwald, Gregor Hendel, Thorsten Koch, Marco E. Lübbecke, Matthias Miltenberger, Ben-jamin Müller, Marc E. Pfetsch, Christian Puchert, Daniel Rehfeldt, Sebastian Schenker, Robert Schwarz, Felipe Serrano, Yuji Shinano, Dieter Weninger, Jonas T. Witt, and Jakob Witzig (2017). The scip optimization suite 4.0. Technical Report 17-12, ZIB, Takustr.7, 14195 Berlin. Mercier, Anne and François Soumis (2007). An integrated aircraft routing, crew scheduling and

flight retiming model. Computers & Operations Research 34(8), 2251–2265.

Papadakos, Nikolaos (2009). Integrated airline scheduling. Computers & Operations Re-search 36(1), 176–195.

Ryan, David M and Brian A Foster (1981). An integer programming approach to scheduling. Computer scheduling of public transport urban passenger vehicle and crew scheduling, 269–280. Schaefer, Andrew J, Ellis L Johnson, Anton J Kleywegt, and George L Nemhauser (2005). Airline

crew scheduling under uncertainty. Transportation science 39(3), 340–348.

Shebalov, Sergey and Diego Klabjan (2006). Robust airline crew pairing: Move-up crews. Trans-portation science 40(3), 300–312.

Sohoni, Milind G, Ellis L Johnson, and T Glenn Bailey (2006). Operational airline reserve crew planning. Journal of Scheduling 9(3), 203–221.

Stojkovi´c, Mirela and François Soumis (2001). An optimization model for the simultaneous operational flight and pilot scheduling problem. Management Science 47(9), 1290–1305.

Stojkovi´c, Mirela, Francois Soumis, and Jacques Desrosiers (1998). The operational airline crew scheduling problem. Transportation Science 32(3), 232–245.

Wei, Guo, Gang Yu, and Mark Song (1997). Optimization model and algorithm for crew man-agement during airline irregular operations. Journal of Combinatorial Optimization 1(3), 305– 321.

(35)

A

Appendix

A.1 Traditional Crew Recovery Problem (TCRP) minimize X k∈K X p∈Pk ckpxkp +X f ∈F X ω∈Ωf cf ωd yfω+X f ∈F cfczf, (29) subject to X k∈K X p∈Pk X ω∈Ωf akωf pxkp − X ω∈Ωf yωf + zf = 1 ∀f ∈ F, (30) X k∈K X p∈Pk af pkωxkp − yfω+ υfω+− υfω− ≥ 1 ∀f ∈ F, ω ∈ Ωf, (31) υfω+− υfω−+ yωf ≤ 1 ∀f ∈ F, ω ∈ Ωf, (32) X k∈K X p∈Pk (akigpxkp− yi g) + X k∈K X p∈Pk (akjhpxkp − yjh) ≤ 1 ∀(gi, hj) ∈ I, (33) X p∈Pk xkp = 1 ∀k ∈ K\KR, (34) X p∈Pk xkp ≤ 1 ∀k ∈ KR, (35) X k∈KR X p∈Pk xkp ≤ n, (36) xkp ∈ {0, 1} ∀k ∈ K, ∀p ∈ Pk, (37) yfω ≥ 0 ∀f ∈ F, ∀ω ∈ Ωf, (38) υfω+ ≥ 0, υω− f ≥ 0 ∀f ∈ F, ω ∈ Ωf. (39)

Referenties

GERELATEERDE DOCUMENTEN

A motivation to model the claim incidence instead of the claim frequency is the high observation of zero claims and the possible dependence between claim incidence of various

The product of risk premiums given in Table 23 with the number of persons insured in every cell can be used as row factors in the Bornhuetter-Ferguson method in section 4.3 for

The idea of using dummy tasks to begin and end shifts has been used to try and solve the shunting crew problem for a complete day.. Twenty-three shifts are needed to cover all 250

Time: Time needed by the shunting driver to walk between two tracks given in minutes. Job Time: Time it takes to complete a task given

The aim of this prototype is to generate a schedule for this base station and approach the quality of the given solution with respect to minimizing costs and computation time

Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of

This research study aims at determining the attitudes of learners at two high schools regarding the HIVIAIDS phenomenon and to explore their level of knowledge pertaining to

Bij het gebruik van hanenpannen dwingt de honger echter lagere hanen om hun angst voor de dominante haan te overwinnen en vlak bij deze haan te gaan vreten.. Gescheiden voe- ren