# Two-Stage Heuristic Algorithm for Aircraft Recovery Problem

Authors: Cheng Zhang
Journal: Discrete Dynamics in Nature and Society
 (2017)

---

## Abstract

This study focuses on the aircraft recovery problem (ARP). In real-life operations, disruptions always cause schedule failures and make airlines suffer from great loss. Therefore, the main objective of the aircraft recovery problem is to minimize the total recovery cost and solve the problem within reasonable runtimes. An aircraft recovery model (ARM) is proposed herein to formulate the ARP and use feasible line of flights as the basic variables in the model. We define the feasible line of flights (LOFs) as a sequence of flights flown by an aircraft within one day. The number of LOFs exponentially grows with the number of flights. Hence, a two-stage heuristic is proposed to reduce the problem scale. The algorithm integrates a heuristic scoring procedure with an aggregated aircraft recovery model (AARM) to preselect LOFs. The approach is tested on five real-life test scenarios. The computational results show that the proposed model provides a good formulation of the problem and can be solved within reasonable runtimes with the proposed methodology. The two-stage heuristic significantly reduces the number of LOFs after each stage and finally reduces the number of variables and constraints in the aircraft recovery model.


---

## Body

## 1. Introduction

Scheduling is greatly significant to the airline industry because of its direct impact on the cost and service level. Accordingly, numerous optimization methods have been developed [1–3] to generate high-quality schedules, which can efficiently utilize costly resources (aircraft, crews, passengers, etc.). However, over the course of nominal airline operations, disruptions, such as severe weather conditions, unplanned maintenance, and air space control, frequently make airlines suffer from significant loss. According to FlightStats, nearly 700,000 flights are operated in North America in October, and the on-time performance is only 85.73% [4]. Disruptions have a profound influence on costs and profits. According to Airlines for America [5], the per-minute delay cost in 2015 was $65.43. American Airlines operated 725,984 flights in 2015, and the average delay was 12.31 min [6]. The projected delay cost for American Airlines in 2015 was over $500,000,000.When disruptions occur, airline controllers in the operations control center need to recover the schedule in a timely manner to mitigate the cost. The controllers usually make the decisions manually. Passengers, crews, and aircraft are, in particular, sequentially recovered. A duty manager will then consolidate different solutions to make the final recovery decision. However, the scale of disruptions can easily grow to the extent that even experts cannot fulfill this task with a viable outcome within a reasonable time. For example, on EST November 27, 2013, “Atlanta tallied the highest number of delayed flights (439 departure delays as of 7:15 p.m. ET) because of the air traffic congestion, followed by Philadelphia (291), Charlotte (262), Chicago O’Hare (201), LaGuardia (160), and Newark (130)” [7]. Therefore, efficient recovery solutions are an urgent demand. In fact, how to recover from a schedule failure is always one of the major concerns in an airline operational stage.The recovery problem is typically solved in a sequential way because of its complexity (large problem size and stringent time limit; see also Section2). The aircraft recovery problem is solved in the first stage, with the objective of determining the recovered aircraft routings while respecting the maintenance requirements, airport curfew constraints, and flow balance constraints [8–14]. After aircraft recovery, the scheduled and preserved crews are reassigned to the uncancelled flight legs. The crew recovery problem usually adopts math programming methodologies [15–20] with the objective of minimizing the overall deviation from the original schedule. The passenger itineraries are rearranged in the final stage. Solving the problem sequentially will produce suboptimal solutions. Hence, integrating two or more problems has been gradually considered in the recent years [21–26].The problem focused on in this research is only the aircraft recovery problem (ARP). The scheduled flights assigned to a list of aircraft of the same fleet family are considered. The disruptions include airport closure and unplanned maintenance. Herein, a flight can either be delayed or cancelled or the scheduled aircraft can be changed when a flight disruption occurs.The remainder of the paper is organized as follows: an overview of the relevant literature is provided in Section2; the mathematical model for the aircraft recovery problem is provided in Section 3; a heuristic for the route preselection and an aggregated mathematical model will be described in detail in Section 4; and a computational study for the test scenarios is presented in Section 5, where the results show that optimal solutions can be obtained for two small cases and near-optimal solutions for the other larger scenarios within 30 min. A summary of the findings is provided as conclusions.


## 2. Literature Review

Various methodologies have been developed for the aircraft recovery problem in the literature. A detailed overview of the relevant studies is presented in this section.


### 2.1. Aircraft Recovery

Pioneer studies on aircraft recovery focused on retiming and reassigning flights when one or more aircraft are unavailable [8]. In Teodorović and Guberinić’s study, the authors created a network in which the nodes were flights, and the arcs represented delays. The flight routes were heuristically generated based on the network. A branch-and-bound method was used to find a solution.Jarrah et al. [27] adopted two recovery options for the aircraft recovery problem, that is, cancellation and retiming. Moreover, two minimum network flow models were proposed separately: one model for the cancellation and the other for retiming. However, the cancellation and the delay cannot be simultaneously considered in one problem.Yan and Yang [11] proposed four models to formulate flight cancellation, ferrying, and delay for a single fleet recovery problem. These models were solved by a simplex method and a Lagrangian relaxation with subgradient methods. Yan and Tu [28] improved the work of Yan and Yang [11] to handle disruptions of multifleet and multistop flights. Yan and Lin [29] extended this work to handle the airport closure problem.Thengvall et al. [12] proposed a network flow model that incorporated a protection arc to minimize the deviation from the original schedule. User preferences were also included in the objective function, such that the concerns of controllers can be reflected in the recovery solution. Meanwhile, Thengvall et al. [30] proposed three multicommodity models to formulate the hub closure problem.Bard et al. [13] derived an integer minimum cost network flow model from the time-band network to minimize cancellation and delay cost. Rosenberger et al. [31] proposed a set partitioning model to minimize the total cost of flight cancellation and delay. The model attempted to determine the optimal combination of aircraft routes generated using a connection network. A nondisrupted aircraft is heuristically selected as a candidate to swap with the disrupted aircraft to reduce the problem scale.Heuristics have also been developed to solve the aircraft recovery problem. Teodorovic and Stojkovic [9] formulated the problem as a goal programming model and developed a greedy heuristic to solve it. This heuristic aimed to find a new combination of aircraft routings, which minimized flight cancellations and passenger delays. Argüello et al. [32] presented a greedy randomized adaptive search procedure in response to groundings and delays. The neighborhood of the incumbent solution was constructed, and a new incumbent solution will be randomly selected from a restricted candidate list. Andersson [33] applied two metaheuristics to solve the problem: a tabu search and a simulated annealing approach. These two heuristics aimed to provide a set of ranked solutions for the controllers to select from. The computational results showed that the tabu search stands out in terms of both solution quality and method robustness. Liu et al. [34] presented a multiobjective genetic algorithm to solve daily short-haul recovery problems. A hybrid evolutionary algorithm employing an adaptive evaluated vector was developed. Furthermore, an inequality-based multiobjective genetic algorithm was used to search for Pareto solutions.


### 2.2. Integrated Recovery

Although sequentially solving the airline recovery problem can generate an optimal solution for each stage, it usually produces a suboptimal solution for the entire problem. Therefore, integrated recovery methodologies were developed to solve the problem.Abdelghany et al. [23] presented a rolling horizon framework incorporated with a greedy optimization approach for the joint aircraft and crew recovery problem. Two models were integrated in the framework, namely, a schedule simulation model and a resource assignment optimization model. The simulation model predicted possible disrupted flights, while the optimization model combined various recovery options to minimize flight delays and cancellations.Eggenberg et al. [24] introduced a constraint-specific approach that simultaneously considered the aircraft, crews, and passengers. A different recovery network was generated for each kind of resource to reduce the problem scale. A set partitioning model was then created to embed the resources in one recovery scheme. Subsequently, a column generation approach was used to solve the model.Bisaillon et al. [35] developed a large neighborhood search (LNS) algorithm to solve the problem combining aircraft, crew, and passenger recovery. The algorithm consisted of three stages: first, the aircraft schedule is recovered by delaying, cancelling, or reassigning; second, flights that violate constraints are repaired, and cancelled passenger itineraries are reassigned to the existing flight schedule; and third, a local search is performed to improve the solution. Sinclair et al. [36] proposed a mixed integer model for the integrated aircraft and passenger recovery problem and solved it by combining LNS heuristic and column generation.Meanwhile, Petersen et al. [25] employed mathematical programming techniques for the integrated aircraft, crew, and passenger recovery problem. The Benders decomposition was employed to decompose the problem and obtain solutions in a reasonable time. The master problem is a schedule recovery problem with linking variables passing into the other three subproblems: aircraft, crew, and passenger recovery problem. Both Benders cuts and column generation have been adopted to solve these decomposed problems. Maher [37] studied accurate solution techniques for the recovery problem integrating schedule, crew, and aircraft recovery stages. Consequently, a framework for the column-and-row generation was presented as an alternative to the Benders decomposition.Because of the large problem size and the stringent time limit, the integrated problem was either solved by heuristically decomposing the integrated model into submodels or by solving sequential stages first and then heuristically iterating between stages to achieve the final solutions. The aircraft recovery problem among the submodels or stages is usually solved in the first step. Therefore, the solution quality of the aircraft recovery is of great importance in both the sequential and the integrated problems. The contribution of this paper is the presentation of a two-stage heuristic which, when applied before a set partitioning model, can solve large-scale real-life aircraft recovery problems with a much-improved solution within reasonable times. The solution costs of the algorithm herein are compared with those of the searching heuristic used in a large-scale problem. Furthermore, the recovery cost can be significantly reduced with the increment of the problem scale. In addition, the effectiveness and the efficiency of the proposed method are validated using real-life test instances provided by domestic and international airlines.


## 2.1. Aircraft Recovery

Pioneer studies on aircraft recovery focused on retiming and reassigning flights when one or more aircraft are unavailable [8]. In Teodorović and Guberinić’s study, the authors created a network in which the nodes were flights, and the arcs represented delays. The flight routes were heuristically generated based on the network. A branch-and-bound method was used to find a solution.Jarrah et al. [27] adopted two recovery options for the aircraft recovery problem, that is, cancellation and retiming. Moreover, two minimum network flow models were proposed separately: one model for the cancellation and the other for retiming. However, the cancellation and the delay cannot be simultaneously considered in one problem.Yan and Yang [11] proposed four models to formulate flight cancellation, ferrying, and delay for a single fleet recovery problem. These models were solved by a simplex method and a Lagrangian relaxation with subgradient methods. Yan and Tu [28] improved the work of Yan and Yang [11] to handle disruptions of multifleet and multistop flights. Yan and Lin [29] extended this work to handle the airport closure problem.Thengvall et al. [12] proposed a network flow model that incorporated a protection arc to minimize the deviation from the original schedule. User preferences were also included in the objective function, such that the concerns of controllers can be reflected in the recovery solution. Meanwhile, Thengvall et al. [30] proposed three multicommodity models to formulate the hub closure problem.Bard et al. [13] derived an integer minimum cost network flow model from the time-band network to minimize cancellation and delay cost. Rosenberger et al. [31] proposed a set partitioning model to minimize the total cost of flight cancellation and delay. The model attempted to determine the optimal combination of aircraft routes generated using a connection network. A nondisrupted aircraft is heuristically selected as a candidate to swap with the disrupted aircraft to reduce the problem scale.Heuristics have also been developed to solve the aircraft recovery problem. Teodorovic and Stojkovic [9] formulated the problem as a goal programming model and developed a greedy heuristic to solve it. This heuristic aimed to find a new combination of aircraft routings, which minimized flight cancellations and passenger delays. Argüello et al. [32] presented a greedy randomized adaptive search procedure in response to groundings and delays. The neighborhood of the incumbent solution was constructed, and a new incumbent solution will be randomly selected from a restricted candidate list. Andersson [33] applied two metaheuristics to solve the problem: a tabu search and a simulated annealing approach. These two heuristics aimed to provide a set of ranked solutions for the controllers to select from. The computational results showed that the tabu search stands out in terms of both solution quality and method robustness. Liu et al. [34] presented a multiobjective genetic algorithm to solve daily short-haul recovery problems. A hybrid evolutionary algorithm employing an adaptive evaluated vector was developed. Furthermore, an inequality-based multiobjective genetic algorithm was used to search for Pareto solutions.


## 2.2. Integrated Recovery

Although sequentially solving the airline recovery problem can generate an optimal solution for each stage, it usually produces a suboptimal solution for the entire problem. Therefore, integrated recovery methodologies were developed to solve the problem.Abdelghany et al. [23] presented a rolling horizon framework incorporated with a greedy optimization approach for the joint aircraft and crew recovery problem. Two models were integrated in the framework, namely, a schedule simulation model and a resource assignment optimization model. The simulation model predicted possible disrupted flights, while the optimization model combined various recovery options to minimize flight delays and cancellations.Eggenberg et al. [24] introduced a constraint-specific approach that simultaneously considered the aircraft, crews, and passengers. A different recovery network was generated for each kind of resource to reduce the problem scale. A set partitioning model was then created to embed the resources in one recovery scheme. Subsequently, a column generation approach was used to solve the model.Bisaillon et al. [35] developed a large neighborhood search (LNS) algorithm to solve the problem combining aircraft, crew, and passenger recovery. The algorithm consisted of three stages: first, the aircraft schedule is recovered by delaying, cancelling, or reassigning; second, flights that violate constraints are repaired, and cancelled passenger itineraries are reassigned to the existing flight schedule; and third, a local search is performed to improve the solution. Sinclair et al. [36] proposed a mixed integer model for the integrated aircraft and passenger recovery problem and solved it by combining LNS heuristic and column generation.Meanwhile, Petersen et al. [25] employed mathematical programming techniques for the integrated aircraft, crew, and passenger recovery problem. The Benders decomposition was employed to decompose the problem and obtain solutions in a reasonable time. The master problem is a schedule recovery problem with linking variables passing into the other three subproblems: aircraft, crew, and passenger recovery problem. Both Benders cuts and column generation have been adopted to solve these decomposed problems. Maher [37] studied accurate solution techniques for the recovery problem integrating schedule, crew, and aircraft recovery stages. Consequently, a framework for the column-and-row generation was presented as an alternative to the Benders decomposition.Because of the large problem size and the stringent time limit, the integrated problem was either solved by heuristically decomposing the integrated model into submodels or by solving sequential stages first and then heuristically iterating between stages to achieve the final solutions. The aircraft recovery problem among the submodels or stages is usually solved in the first step. Therefore, the solution quality of the aircraft recovery is of great importance in both the sequential and the integrated problems. The contribution of this paper is the presentation of a two-stage heuristic which, when applied before a set partitioning model, can solve large-scale real-life aircraft recovery problems with a much-improved solution within reasonable times. The solution costs of the algorithm herein are compared with those of the searching heuristic used in a large-scale problem. Furthermore, the recovery cost can be significantly reduced with the increment of the problem scale. In addition, the effectiveness and the efficiency of the proposed method are validated using real-life test instances provided by domestic and international airlines.


## 3. Problem Definition and Basic Formulation

Two types of disruptions were considered in this paper: aircraft disruptions and airport disruptions. Aircraft disruptions refer to the unavailability of aircraft during a certain period, which is mainly caused by mechanical failures. Airport disruptions refer to airport closures usually incurred by severe weather conditions. When these two disruptions happen, the flights assigned to the disrupted aircraft cannot be operated. Moreover, no flights are allowed to depart from or arrive at the closed airport. Given the original aircraft schedule and a set of disruptions, the objective of the ARP is to create a new combination of aircraft routings during the recovery period to minimize the total cost. The following constraints should be respected during the recovery procedure:(1) a flight is either assigned to an aircraft or cancelled at any time and (2) the disrupted aircraft must undergo the required maintenance.


### 3.1. LOF Generation

LOFs were used as the basic variables in the proposed model to formulate the ARP. An LOF is a sequence of flights flown by an aircraft within one day. The detailed LOF generation procedure is presented as follows.General Procedure and Basic Constraints. For the generation of LOFs from flight legs, the flight connection network is first constructed (Figure 1). In the network, each node is labeled with the flight leg it represents and the origin and destination stations of that flight. Two flight nodes can then be connected by an arc if they satisfy the time and space constraints: (1) the arrival station of the first is identical with the departure station of the second and (2) the time difference between the flights is within a fixed time frame [Tmin,Tmax]. Note that Tmin can be negative in the disruption recovery network, which means that the flights will be delayed to satisfy the minimum turn time. With the flight connection network, the depth-first search is applied to generate possible LOFs.Figure 1
LOF generation without disruptions: (a) one-day schedule of three aircraft with six flights; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Feasible LOFsFigure1 presents the LOF generation of three aircraft with six flights, in which Tmin is −60 min, Tmax is 240 min, and the minimum turn time is 30 min. The table in Figure 1 displays some generated LOFs and the delay time of each flight leg to meet the standard turn time.Specific Constraints of LOF Generation with Aircraft Disruptions. Unplanned maintenances were included into the connection network to generate LOFs (Figure 2). Specific constraints should be respected when connecting maintenances with other ordinary flights: (1) the time difference should be nonnegative if the later node represents a maintenance, in that maintenances cannot be delayed, and (2) the minimum turn time between maintenances and ordinary flights is 0 min. Maintenances will be operated by selecting the LOFs containing them.Figure 2
LOF generation with aircraft disruptions: (a) one-day schedule of three aircraft with six flights and one maintenance; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Feasible LOFsFigure2 shows that the scheduled LOF C→D of Aircraft T2 is disrupted by maintenance G. Aircraft T2 can either operate the scheduled flights by delaying flight D, as shown by LOF C→G→D, or swap the flight F with other flights, as shown by LOF C→G→F.Specific Constraints of LOF Generation with Airport Disruptions. When an airport is closed, flights that depart from or arrive at the station should be delayed to the opening time, and the corresponding flight nodes in the network should be updated to new ones. In Figure 3, the scheduled flights A and C are disrupted by an airport closure. Therefore, the LOFs containing flights A and C should delay the corresponding flights as shown by LOF A′→C′→F. A new flight connection between flights E and A′ also appears after the flight delay, leading to a newly generated LOF E→A′→B.Figure 3
LOF generation with airport disruptions: (a) one-day schedule of three aircraft with six flights and one airport closure; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Possible LOFsWhile constructing the flight connection network, delay is used to handle disrupted flights and help meet the required turn time between flights. The flight leg delays in this research included independent delay (ID) and propagated delay (PD). ID refers to the delay time caused by disruptions, while PD refers to the delay caused by the previous flight. Take the flightC′ in LOF A′→C′→F in Figure 3 as an example. The 150 min delay included a 120 min delay caused by the airport closure and a 30 min delay to meet the required turn time between A′ and C′.To compute the total delay for flightf (TDf), AATf- was defined as the actual arrival time of the previous flight f-, TT as the minimum turn time, and PDTf as the planned departure time of flight f. Therefore, the delay propagated from flights f- to f (PDf-f) and TDf can be calculated as shown in (1). All time units in (1) were converted to coordinated universal time (UTC) for calculation.(1)PDf-f=max⁡AATf-+TT-PDTf,0,TDf=IDf+PDf-f.Using the total delay time of each flightf (TDf), the total delay time for LOF l (TDl) can be calculated using (2). Fl is the set of flights in LOF l indexed by f.(2)TDl=∑f∈FlTDf.


### 3.2. Aircraft Recovery Network (ARN)

The aircraft recovery network (ARN) is constructed to solve the ARP based on the LOFs generated in Section3.1. Figure 4 shows that the ARN has various time nodes. Each time node represents the departure or arrival time of one LOF. Two types of arcs can be found in the ARN: ground arcs and LOF arcs. A LOF arc pointing to the station indicates the arrival of a LOF at the station, whereas a LOF arc pointing out from the station implies the departure of a LOF from the station. A ground arc is a horizontal arc, which represents the aircraft staying at the station during the time.Figure 4
Aircraft recovery network: (a) LOF assignments and (b) aircraft recovery network for AircraftT1, T2, and T3.
(a)
LOF assignments
(b)
Aircraft recovery networkThe ARN was constructed by first assigning each generated LOF to every available aircraft. Note that a LOF containing a maintenance should be assigned to a particular aircraft; otherwise, it can be assigned to any aircraft. Take the LOFs in Figure2 as an example. All the LOFs can be assigned to Aircraft T2, and only three LOFs can be assigned to Aircraft T1 and T3. The ARN can then be built with the LOF assignment.The main objective of the ARP is to minimize the total cost. Hence, the cost for each LOF after aircraft assignments must be determined. The cost can be divided into two categories: flight delay cost and flight swap cost. A flight swap cost is caused by assigning the flight to an aircraft different to its scheduled one, while a flight delay cost is incurred by delaying the flight for a certain time. The following notations are defined to provide the expression of the cost:nsl: number of swaps in LOF lTDl: total delay time for LOF l calculated by (2)βd: average cost for a 1 min delayβs: cost for a single swapβcl: total cost of LOF l if it is assigned to aircraft cThe cost for each LOF can then be calculated as follows:(3)βcl=TDlβd+nslβs.


### 3.3. Aircraft Recovery Model (ARM)

The following ARM is presented based on the ARN. The following notations are defined to facilitate model formulation.Sets, Elements, and Constants
C:
set of aircraft indexed byc
F:
set of flights and maintenances indexed byf
L:
set of LOFs indexed byl
A:
set of airports indexed bya
T
a
c:
set of aircraftc’s departure or arrival time node of airport a indexed by t
L
a
t
+:
set of LOFs that arrived at airporta at time t indexed by l
L
a
t
-:
set of LOFs that departed from airporta at time t indexed by lIndication Parameters
δ
f
l:
binary indicator, such thatδfl=1 if LOF l contains flight f and 0 otherwise
α
f:
cost incurred if flight or maintenancef is cancelled
β
c
l:
cost incurred if aircraftc flies LOF l, including the delay and swap costs
γ
a:
cost incurred for airporta if the terminal balance is violated
Q
c:
total number of aircraft
p
a:
number of aircraft that originated at airporta
q
a:
number of planned aircraft terminated at airporta
t
a
c
l
a
s
t:
last time node of aircraftc at airport aVariables
x
c
l:
binary variable, such thatxcl=1 if LOF l is flown by aircraft c and 0 otherwise
y
f:
binary variable, such thatyf=1 if flight f is cancelled and 0 otherwise
z
a:
binary variable, such thatza=1 if the terminal balance of airport a is violated and 0 otherwise
s
a
c
t:
binary variable, such thatsact=1 if aircraft c stays at airport a after departure or arrival time node t and 0 otherwiseThe aircraft recovery model (ARM) is presented as follows using the above notations:(4)ARMmin∑f∈Fαfyf+∑l∈Lβclxcl+∑a∈Aγaza(5)s.t.∑l∈Lδflxcl+yf=1∀f∈F,(6)sact-+∑l∈Lat+xcl=sact+∑l∈Lat-xcl∀a∈A,∀c∈C,∀t∈Tac,(7)∑c∈Csac0=pa∀a∈A,(8)Qcza≥∑c∈Csactaclast-qa∀a∈A,(9)Qcza≥qa-∑c∈Csactaclast∀a∈A,(10)xcl,yf,za,sact∈0,1∀c∈C,∀l∈L,∀f∈F,∀a∈A,∀t∈Tac.The objective function in (4) minimizes the total cost of recovery. The cost contains three parts: cancellation cost, LOF cost, and terminal balance violation cost. A terminal balance violation cost happens if the number of aircraft ending at a particular airport is not equal to that in the original input. The constraints in (5) are cover constraints that ensure each flight leg is assigned to at most one aircraft. The constraints in (6)-(7) are flow balance constraints, which means that the total number of aircraft staying at or arriving at the station before a specific time should be equal to that which departed from or stayed at the station after the time. The constraints in (8)-(9) determine whether or not the airport violates the terminal balance. The constraints in (10) are binary variable constraints.


## 3.1. LOF Generation

LOFs were used as the basic variables in the proposed model to formulate the ARP. An LOF is a sequence of flights flown by an aircraft within one day. The detailed LOF generation procedure is presented as follows.General Procedure and Basic Constraints. For the generation of LOFs from flight legs, the flight connection network is first constructed (Figure 1). In the network, each node is labeled with the flight leg it represents and the origin and destination stations of that flight. Two flight nodes can then be connected by an arc if they satisfy the time and space constraints: (1) the arrival station of the first is identical with the departure station of the second and (2) the time difference between the flights is within a fixed time frame [Tmin,Tmax]. Note that Tmin can be negative in the disruption recovery network, which means that the flights will be delayed to satisfy the minimum turn time. With the flight connection network, the depth-first search is applied to generate possible LOFs.Figure 1
LOF generation without disruptions: (a) one-day schedule of three aircraft with six flights; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Feasible LOFsFigure1 presents the LOF generation of three aircraft with six flights, in which Tmin is −60 min, Tmax is 240 min, and the minimum turn time is 30 min. The table in Figure 1 displays some generated LOFs and the delay time of each flight leg to meet the standard turn time.Specific Constraints of LOF Generation with Aircraft Disruptions. Unplanned maintenances were included into the connection network to generate LOFs (Figure 2). Specific constraints should be respected when connecting maintenances with other ordinary flights: (1) the time difference should be nonnegative if the later node represents a maintenance, in that maintenances cannot be delayed, and (2) the minimum turn time between maintenances and ordinary flights is 0 min. Maintenances will be operated by selecting the LOFs containing them.Figure 2
LOF generation with aircraft disruptions: (a) one-day schedule of three aircraft with six flights and one maintenance; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Feasible LOFsFigure2 shows that the scheduled LOF C→D of Aircraft T2 is disrupted by maintenance G. Aircraft T2 can either operate the scheduled flights by delaying flight D, as shown by LOF C→G→D, or swap the flight F with other flights, as shown by LOF C→G→F.Specific Constraints of LOF Generation with Airport Disruptions. When an airport is closed, flights that depart from or arrive at the station should be delayed to the opening time, and the corresponding flight nodes in the network should be updated to new ones. In Figure 3, the scheduled flights A and C are disrupted by an airport closure. Therefore, the LOFs containing flights A and C should delay the corresponding flights as shown by LOF A′→C′→F. A new flight connection between flights E and A′ also appears after the flight delay, leading to a newly generated LOF E→A′→B.Figure 3
LOF generation with airport disruptions: (a) one-day schedule of three aircraft with six flights and one airport closure; (b) flight connection network; and (c) feasible LOFs.
(a)
One-day schedule containing 6 flights
(b)
Flight connection network
(c)
Possible LOFsWhile constructing the flight connection network, delay is used to handle disrupted flights and help meet the required turn time between flights. The flight leg delays in this research included independent delay (ID) and propagated delay (PD). ID refers to the delay time caused by disruptions, while PD refers to the delay caused by the previous flight. Take the flightC′ in LOF A′→C′→F in Figure 3 as an example. The 150 min delay included a 120 min delay caused by the airport closure and a 30 min delay to meet the required turn time between A′ and C′.To compute the total delay for flightf (TDf), AATf- was defined as the actual arrival time of the previous flight f-, TT as the minimum turn time, and PDTf as the planned departure time of flight f. Therefore, the delay propagated from flights f- to f (PDf-f) and TDf can be calculated as shown in (1). All time units in (1) were converted to coordinated universal time (UTC) for calculation.(1)PDf-f=max⁡AATf-+TT-PDTf,0,TDf=IDf+PDf-f.Using the total delay time of each flightf (TDf), the total delay time for LOF l (TDl) can be calculated using (2). Fl is the set of flights in LOF l indexed by f.(2)TDl=∑f∈FlTDf.


## 3.2. Aircraft Recovery Network (ARN)

The aircraft recovery network (ARN) is constructed to solve the ARP based on the LOFs generated in Section3.1. Figure 4 shows that the ARN has various time nodes. Each time node represents the departure or arrival time of one LOF. Two types of arcs can be found in the ARN: ground arcs and LOF arcs. A LOF arc pointing to the station indicates the arrival of a LOF at the station, whereas a LOF arc pointing out from the station implies the departure of a LOF from the station. A ground arc is a horizontal arc, which represents the aircraft staying at the station during the time.Figure 4
Aircraft recovery network: (a) LOF assignments and (b) aircraft recovery network for AircraftT1, T2, and T3.
(a)
LOF assignments
(b)
Aircraft recovery networkThe ARN was constructed by first assigning each generated LOF to every available aircraft. Note that a LOF containing a maintenance should be assigned to a particular aircraft; otherwise, it can be assigned to any aircraft. Take the LOFs in Figure2 as an example. All the LOFs can be assigned to Aircraft T2, and only three LOFs can be assigned to Aircraft T1 and T3. The ARN can then be built with the LOF assignment.The main objective of the ARP is to minimize the total cost. Hence, the cost for each LOF after aircraft assignments must be determined. The cost can be divided into two categories: flight delay cost and flight swap cost. A flight swap cost is caused by assigning the flight to an aircraft different to its scheduled one, while a flight delay cost is incurred by delaying the flight for a certain time. The following notations are defined to provide the expression of the cost:nsl: number of swaps in LOF lTDl: total delay time for LOF l calculated by (2)βd: average cost for a 1 min delayβs: cost for a single swapβcl: total cost of LOF l if it is assigned to aircraft cThe cost for each LOF can then be calculated as follows:(3)βcl=TDlβd+nslβs.


## 3.3. Aircraft Recovery Model (ARM)

The following ARM is presented based on the ARN. The following notations are defined to facilitate model formulation.Sets, Elements, and Constants
C:
set of aircraft indexed byc
F:
set of flights and maintenances indexed byf
L:
set of LOFs indexed byl
A:
set of airports indexed bya
T
a
c:
set of aircraftc’s departure or arrival time node of airport a indexed by t
L
a
t
+:
set of LOFs that arrived at airporta at time t indexed by l
L
a
t
-:
set of LOFs that departed from airporta at time t indexed by lIndication Parameters
δ
f
l:
binary indicator, such thatδfl=1 if LOF l contains flight f and 0 otherwise
α
f:
cost incurred if flight or maintenancef is cancelled
β
c
l:
cost incurred if aircraftc flies LOF l, including the delay and swap costs
γ
a:
cost incurred for airporta if the terminal balance is violated
Q
c:
total number of aircraft
p
a:
number of aircraft that originated at airporta
q
a:
number of planned aircraft terminated at airporta
t
a
c
l
a
s
t:
last time node of aircraftc at airport aVariables
x
c
l:
binary variable, such thatxcl=1 if LOF l is flown by aircraft c and 0 otherwise
y
f:
binary variable, such thatyf=1 if flight f is cancelled and 0 otherwise
z
a:
binary variable, such thatza=1 if the terminal balance of airport a is violated and 0 otherwise
s
a
c
t:
binary variable, such thatsact=1 if aircraft c stays at airport a after departure or arrival time node t and 0 otherwiseThe aircraft recovery model (ARM) is presented as follows using the above notations:(4)ARMmin∑f∈Fαfyf+∑l∈Lβclxcl+∑a∈Aγaza(5)s.t.∑l∈Lδflxcl+yf=1∀f∈F,(6)sact-+∑l∈Lat+xcl=sact+∑l∈Lat-xcl∀a∈A,∀c∈C,∀t∈Tac,(7)∑c∈Csac0=pa∀a∈A,(8)Qcza≥∑c∈Csactaclast-qa∀a∈A,(9)Qcza≥qa-∑c∈Csactaclast∀a∈A,(10)xcl,yf,za,sact∈0,1∀c∈C,∀l∈L,∀f∈F,∀a∈A,∀t∈Tac.The objective function in (4) minimizes the total cost of recovery. The cost contains three parts: cancellation cost, LOF cost, and terminal balance violation cost. A terminal balance violation cost happens if the number of aircraft ending at a particular airport is not equal to that in the original input. The constraints in (5) are cover constraints that ensure each flight leg is assigned to at most one aircraft. The constraints in (6)-(7) are flow balance constraints, which means that the total number of aircraft staying at or arriving at the station before a specific time should be equal to that which departed from or stayed at the station after the time. The constraints in (8)-(9) determine whether or not the airport violates the terminal balance. The constraints in (10) are binary variable constraints.


## 4. Solution Methods: Two-Stage Heuristic

In real life, the LOF number exponentially increases with the flight number, which usually makes it impractical to solve the ARM optimally in a timely manner using all the generated LOFs. LOFs of poor quality must be excluded to reduce variable numbers and solve the ARM within a reasonable time. A two-stage heuristic for the LOF selection must be developed before assigning them to aircraft. The selected LOFs of Stage 1 will serve as the input of Stage 2. The solutions of Stage 2 will be assigned to aircraft to construct the ARN presented in Section3.2.


### 4.1. Stage 1: Heuristic Approach for the LOF Selection

Each LOF was scored from two dimensions to exclude the LOFs of poor quality.Purity. To recover from disruptions, aircraft may have to swap their scheduled flights with other aircraft, which will incur swap cost. Therefore, the LOFs with fewer swaps are more preferable than other LOFs. The purity is defined to measure the possible swap number in each LOF. The purity of an LOF refers to the number of different scheduled aircraft in one LOF. As shown in Figure 5, seven flights were originally assigned to two aircraft. The purity of LOF A→B→C→D is 0, and no swap will occur if it is assigned to T1. The purity of LOF A→E→F→D is 2, and at least two swaps will happen regardless of it being assigned to T1 or T2.Figure 5
LOF purity: (a) a one-day schedule of two aircraft with seven flights; (b) flight connection network; and (c) feasible LOFs and purity.
(a)
One-day schedule containing 7 flights
(b)
Flight connection network
(c)
Feasible LOFsLength. An aircraft is one of the critical resources for airlines and should be utilized efficiently. To improve the utilization, an aircraft should operate as many flight legs as possible while satisfying the safety requirements. Therefore, the utilization of an aircraft will increase with the number of flight legs in one LOF.The mathematical expression of the LOF scoreξl is presented by (11), where pl is the purity of LOF l and βs is exactly the cost for a single swap, as defined in the ARM. μf and μmain are binary variables. μf and μmain will be 1 and 0, respectively, if the leg in the LOF is an ordinary flight. Meanwhile, μf and μmain will be 0 and 1, respectively, if the leg is a maintenance. ξf is the weight of ordinary flight f, while ξmain is the weight of maintenance. Therefore, ξl is calculated by the purity score minus the length score. Note that when calculating the length score, the maintenance must be weighed more than the ordinary flight. To illustrate this, take the LOFs in Figure 2 as an example. LOF C→G→D and LOF A→C→F have the same length, but different length scores. Leg G is a maintenance. Hence, the length score of LOF C→G→D is larger, while the total LOF score is smaller, indicating that LOF C→G→D is more preferable. (11)ξl=plβs-∑f∈Flξfμf+ξmainμmain.Most commercial airlines use hub-and-spoke networks to make aircraft schedules [36]. Therefore, the generated LOFs were classified into the following four categories after being scored: hub to hub, hub to spoke, spoke to hub, and spoke to spoke. The proportion of each category was then calculated, and the LOFs in each category were sorted by scores in an ascending order. Therefore, the LOFs remaining in each category and those selected from Stage 1 were determined given the threshold number of the LOF selection.


### 4.2. Stage 2: Aggregated Aircraft Recovery Model (AARM) for the LOF Selection

Although the number of LOFs significantly decreased after Stage 1, the number of variables in the ARM was still very large because the selected LOFs were assigned to every available aircraft, which multiplied the number of LOFs. In addition, the flow balance constraints presented by (6)-(7) were created for each aircraft and each airport, leading to a large number of constraints. Therefore, the flow balance constraints for the aircraft were aggregated to reduce the number of constraints by creating constraints only for each airport. The AARM was presented to formulate the aggregated problem.


#### 4.2.1. Model Formulation

An aggregated aircraft recovery network (AARN) should be constructed to formulate the AARM. The aircraft with maintenance were assigned with LOFs, and the recovery network remained the same. Meanwhile, LOFs were not assigned to the ordinary aircraft and their networks were not aggregated. Note that the LOFs with maintenance should be assigned to the specific aircraft and cannot be included in the aggregated network for the ordinary aircraft. This was illustrated by aggregating the ARN in Figure4 as the AARN in Figure 6. The network of Aircraft T2 was exactly the same, but the networks of Aircraft T1 and T3 were aggregated.Figure 6
Aggregated aircraft recovery network: (a) LOF assignment and (b) aggregated aircraft recovery network.
(a)
LOF assignments
(b)
Aircraft recovery networkThe solutions of the ARM were the feasible solutions of the AARM. The objective value of the AARM was the lower bound of the ARM. The swap cost was replaced by the purity cost when the cost for LOFβl without an aircraft assignment was calculated. The cost expression was presented in (12). The AARM is presented based on the following additional notations: (12)βl=TDlβd+plβs.Additional Sets, Elements, and Constants
C
m
a
i
n:
set of disrupted aircraft that need unplanned maintenance indexed byc
T
a:
set of departure or arrival time nodes of airporta indexed by t
L
c:
set of LOFs with aircraft informationAdditional Indication Parameters
β
l:
cost of LOFl without aircraft informationAdditional Variables
x
l:
binary variable, such thatxl=1 if LOF l is selected and 0 otherwise
s
a
t:
integer variable representing the number of aircraft staying at airporta after departure or arrival time node t: (13)AARMmin∑f∈Fαfyf+∑l∈Lcβclxcl+∑l∈L∩l∉Lcβlxl(14)s.t.∑l∈Lcδflxcl+∑l∈L∩l∉Lcδflxl+yf=1∀f∈F,(15)sact-+∑l∈Lat+xcl=sact+∑l∈Lat-xcl∀a∈A,∀c∈Cmain,∀t∈Tac,(16)sat-+∑l∈Lat+xl=sat+∑l∈Lat-xl∀a∈A,∀t∈Ta,(17)∑c∈Csac0=pa∀a∈A,(18)xl∈0,1∀l∈L∩l∉Lc,(19)sat∈0,1,…,pa∀a∈A,t∈Tac.The objective function in (13) minimizes the total cost of recovery that contains the cancellation and LOF costs. The constraints in (14) represent the cover constraints, while those in (15)-(16) are the flow balance constraints for the disrupted aircraft and the aggregated constraints for the ordinary aircraft, respectively. The constraints in (18) are the binary variable constraints, while those in (19) are the integer variable constraints.


#### 4.2.2. Algorithm

An algorithm was developed with AARM to determine the input LOFs of the ARN construction in Section3.2. The algorithm aims to select LOFs of better qualities. Therefore, instead of only picking up the LOFs in the optimal solution, the quality of the poorest LOF in the optimal solution was set as a threshold and included all the LOFs with better qualities. A reduced cost was then adopted as the measurement to evaluate the quality of each LOF. The detailed procedure of the algorithm is presented as follows.Step 1.
Solve the AARM optimally and obtain the set of selected LOFs.Step 2.
Solve the LP relaxation of AARN and obtain the reduced cost for each LOF.Step 3.
Set the largest reduced cost of the LOFs selected in Step1 as a threshold. Evaluate the reduced cost for each LOF and select the LOF as one of the final LOFs if it has a smaller cost than the threshold.


## 4.1. Stage 1: Heuristic Approach for the LOF Selection

Each LOF was scored from two dimensions to exclude the LOFs of poor quality.Purity. To recover from disruptions, aircraft may have to swap their scheduled flights with other aircraft, which will incur swap cost. Therefore, the LOFs with fewer swaps are more preferable than other LOFs. The purity is defined to measure the possible swap number in each LOF. The purity of an LOF refers to the number of different scheduled aircraft in one LOF. As shown in Figure 5, seven flights were originally assigned to two aircraft. The purity of LOF A→B→C→D is 0, and no swap will occur if it is assigned to T1. The purity of LOF A→E→F→D is 2, and at least two swaps will happen regardless of it being assigned to T1 or T2.Figure 5
LOF purity: (a) a one-day schedule of two aircraft with seven flights; (b) flight connection network; and (c) feasible LOFs and purity.
(a)
One-day schedule containing 7 flights
(b)
Flight connection network
(c)
Feasible LOFsLength. An aircraft is one of the critical resources for airlines and should be utilized efficiently. To improve the utilization, an aircraft should operate as many flight legs as possible while satisfying the safety requirements. Therefore, the utilization of an aircraft will increase with the number of flight legs in one LOF.The mathematical expression of the LOF scoreξl is presented by (11), where pl is the purity of LOF l and βs is exactly the cost for a single swap, as defined in the ARM. μf and μmain are binary variables. μf and μmain will be 1 and 0, respectively, if the leg in the LOF is an ordinary flight. Meanwhile, μf and μmain will be 0 and 1, respectively, if the leg is a maintenance. ξf is the weight of ordinary flight f, while ξmain is the weight of maintenance. Therefore, ξl is calculated by the purity score minus the length score. Note that when calculating the length score, the maintenance must be weighed more than the ordinary flight. To illustrate this, take the LOFs in Figure 2 as an example. LOF C→G→D and LOF A→C→F have the same length, but different length scores. Leg G is a maintenance. Hence, the length score of LOF C→G→D is larger, while the total LOF score is smaller, indicating that LOF C→G→D is more preferable. (11)ξl=plβs-∑f∈Flξfμf+ξmainμmain.Most commercial airlines use hub-and-spoke networks to make aircraft schedules [36]. Therefore, the generated LOFs were classified into the following four categories after being scored: hub to hub, hub to spoke, spoke to hub, and spoke to spoke. The proportion of each category was then calculated, and the LOFs in each category were sorted by scores in an ascending order. Therefore, the LOFs remaining in each category and those selected from Stage 1 were determined given the threshold number of the LOF selection.


## 4.2. Stage 2: Aggregated Aircraft Recovery Model (AARM) for the LOF Selection

Although the number of LOFs significantly decreased after Stage 1, the number of variables in the ARM was still very large because the selected LOFs were assigned to every available aircraft, which multiplied the number of LOFs. In addition, the flow balance constraints presented by (6)-(7) were created for each aircraft and each airport, leading to a large number of constraints. Therefore, the flow balance constraints for the aircraft were aggregated to reduce the number of constraints by creating constraints only for each airport. The AARM was presented to formulate the aggregated problem.


### 4.2.1. Model Formulation

An aggregated aircraft recovery network (AARN) should be constructed to formulate the AARM. The aircraft with maintenance were assigned with LOFs, and the recovery network remained the same. Meanwhile, LOFs were not assigned to the ordinary aircraft and their networks were not aggregated. Note that the LOFs with maintenance should be assigned to the specific aircraft and cannot be included in the aggregated network for the ordinary aircraft. This was illustrated by aggregating the ARN in Figure4 as the AARN in Figure 6. The network of Aircraft T2 was exactly the same, but the networks of Aircraft T1 and T3 were aggregated.Figure 6
Aggregated aircraft recovery network: (a) LOF assignment and (b) aggregated aircraft recovery network.
(a)
LOF assignments
(b)
Aircraft recovery networkThe solutions of the ARM were the feasible solutions of the AARM. The objective value of the AARM was the lower bound of the ARM. The swap cost was replaced by the purity cost when the cost for LOFβl without an aircraft assignment was calculated. The cost expression was presented in (12). The AARM is presented based on the following additional notations: (12)βl=TDlβd+plβs.Additional Sets, Elements, and Constants
C
m
a
i
n:
set of disrupted aircraft that need unplanned maintenance indexed byc
T
a:
set of departure or arrival time nodes of airporta indexed by t
L
c:
set of LOFs with aircraft informationAdditional Indication Parameters
β
l:
cost of LOFl without aircraft informationAdditional Variables
x
l:
binary variable, such thatxl=1 if LOF l is selected and 0 otherwise
s
a
t:
integer variable representing the number of aircraft staying at airporta after departure or arrival time node t: (13)AARMmin∑f∈Fαfyf+∑l∈Lcβclxcl+∑l∈L∩l∉Lcβlxl(14)s.t.∑l∈Lcδflxcl+∑l∈L∩l∉Lcδflxl+yf=1∀f∈F,(15)sact-+∑l∈Lat+xcl=sact+∑l∈Lat-xcl∀a∈A,∀c∈Cmain,∀t∈Tac,(16)sat-+∑l∈Lat+xl=sat+∑l∈Lat-xl∀a∈A,∀t∈Ta,(17)∑c∈Csac0=pa∀a∈A,(18)xl∈0,1∀l∈L∩l∉Lc,(19)sat∈0,1,…,pa∀a∈A,t∈Tac.The objective function in (13) minimizes the total cost of recovery that contains the cancellation and LOF costs. The constraints in (14) represent the cover constraints, while those in (15)-(16) are the flow balance constraints for the disrupted aircraft and the aggregated constraints for the ordinary aircraft, respectively. The constraints in (18) are the binary variable constraints, while those in (19) are the integer variable constraints.


### 4.2.2. Algorithm

An algorithm was developed with AARM to determine the input LOFs of the ARN construction in Section3.2. The algorithm aims to select LOFs of better qualities. Therefore, instead of only picking up the LOFs in the optimal solution, the quality of the poorest LOF in the optimal solution was set as a threshold and included all the LOFs with better qualities. A reduced cost was then adopted as the measurement to evaluate the quality of each LOF. The detailed procedure of the algorithm is presented as follows.Step 1.
Solve the AARM optimally and obtain the set of selected LOFs.Step 2.
Solve the LP relaxation of AARN and obtain the reduced cost for each LOF.Step 3.
Set the largest reduced cost of the LOFs selected in Step1 as a threshold. Evaluate the reduced cost for each LOF and select the LOF as one of the final LOFs if it has a smaller cost than the threshold.


## 4.2.1. Model Formulation

An aggregated aircraft recovery network (AARN) should be constructed to formulate the AARM. The aircraft with maintenance were assigned with LOFs, and the recovery network remained the same. Meanwhile, LOFs were not assigned to the ordinary aircraft and their networks were not aggregated. Note that the LOFs with maintenance should be assigned to the specific aircraft and cannot be included in the aggregated network for the ordinary aircraft. This was illustrated by aggregating the ARN in Figure4 as the AARN in Figure 6. The network of Aircraft T2 was exactly the same, but the networks of Aircraft T1 and T3 were aggregated.Figure 6
Aggregated aircraft recovery network: (a) LOF assignment and (b) aggregated aircraft recovery network.
(a)
LOF assignments
(b)
Aircraft recovery networkThe solutions of the ARM were the feasible solutions of the AARM. The objective value of the AARM was the lower bound of the ARM. The swap cost was replaced by the purity cost when the cost for LOFβl without an aircraft assignment was calculated. The cost expression was presented in (12). The AARM is presented based on the following additional notations: (12)βl=TDlβd+plβs.Additional Sets, Elements, and Constants
C
m
a
i
n:
set of disrupted aircraft that need unplanned maintenance indexed byc
T
a:
set of departure or arrival time nodes of airporta indexed by t
L
c:
set of LOFs with aircraft informationAdditional Indication Parameters
β
l:
cost of LOFl without aircraft informationAdditional Variables
x
l:
binary variable, such thatxl=1 if LOF l is selected and 0 otherwise
s
a
t:
integer variable representing the number of aircraft staying at airporta after departure or arrival time node t: (13)AARMmin∑f∈Fαfyf+∑l∈Lcβclxcl+∑l∈L∩l∉Lcβlxl(14)s.t.∑l∈Lcδflxcl+∑l∈L∩l∉Lcδflxl+yf=1∀f∈F,(15)sact-+∑l∈Lat+xcl=sact+∑l∈Lat-xcl∀a∈A,∀c∈Cmain,∀t∈Tac,(16)sat-+∑l∈Lat+xl=sat+∑l∈Lat-xl∀a∈A,∀t∈Ta,(17)∑c∈Csac0=pa∀a∈A,(18)xl∈0,1∀l∈L∩l∉Lc,(19)sat∈0,1,…,pa∀a∈A,t∈Tac.The objective function in (13) minimizes the total cost of recovery that contains the cancellation and LOF costs. The constraints in (14) represent the cover constraints, while those in (15)-(16) are the flow balance constraints for the disrupted aircraft and the aggregated constraints for the ordinary aircraft, respectively. The constraints in (18) are the binary variable constraints, while those in (19) are the integer variable constraints.


## 4.2.2. Algorithm

An algorithm was developed with AARM to determine the input LOFs of the ARN construction in Section3.2. The algorithm aims to select LOFs of better qualities. Therefore, instead of only picking up the LOFs in the optimal solution, the quality of the poorest LOF in the optimal solution was set as a threshold and included all the LOFs with better qualities. A reduced cost was then adopted as the measurement to evaluate the quality of each LOF. The detailed procedure of the algorithm is presented as follows.Step 1.
Solve the AARM optimally and obtain the set of selected LOFs.Step 2.
Solve the LP relaxation of AARN and obtain the reduced cost for each LOF.Step 3.
Set the largest reduced cost of the LOFs selected in Step1 as a threshold. Evaluate the reduced cost for each LOF and select the LOF as one of the final LOFs if it has a smaller cost than the threshold.


## 5. Computational Results

In this section, five test scenarios from real life were proposed to validate the effectiveness and the efficiency of the proposed methodology. All the models and algorithms were written in C++ language. The LP and IP problems were solved by CPLEX 12.6. All workings were implemented on a computer with 4-core processors running at 2.5 GHz and 16 GB memory.


### 5.1. Test Cases

Table1 shows the detailed information on the five test scenarios. The recovery problem considered the scheduled flights that were assigned to a list of aircraft during a fixed time (i.e., generally about two to four days). The first two instances were small test cases, while the others were relatively larger test cases. Different disruptions were considered in each scenario. Airport closures were considered in Scenarios 2 and 3, while unplanned maintenances were considered in all the instances, except in Scenario 2. The long duration of the maintenance particularly lasted for 48 h in Scenario 4 and 8 h in Scenario 3. The maximum delay time for each flight was set to be 180 min.Table 1
Characteristics of the five test scenarios.
Sce.
Number of aircraft
Number of airports
Number of flights
Duration (d)
Number of maints.
Number of closures
1
16
12
59
2
23
0
2
12
25
95
2
0
1
3
85
35
417
3
25
1
4
44
37
586
4
24
0
5
44
42
638
4
29
0


### 5.2. ARM Solutions with the Two-Stage Heuristic

The computational results of the ARM for the five test instances with and without the two-stage heuristics are reported in this section. The parameters mentioned in Section3.1 were initially set as follows to construct the feasible LOFs of the test instances: Tmax to be 300 min, Tmin to be 0 min, and the minimum turn time to be 30 min. The computational results of the ARM without heuristics were first reported, as shown in Table 2. The number of generated LOFs exponentially increased with the flight number. Moreover, only three out of five instances can obtain optimal solutions within a reasonable time. The others failed to provide feasible IP solutions after more than 1 h runtime, which was mainly caused by the large number of LOFs and variables in the ARM.Table 2
Computational results of the ARM for the five test scenarios.
Sce.
Number of flights
Number of feasible LOFs
Number of final LOFs
Sol. time (sec)
Obj. value
1
59
3,034
66
10.2
1,010
2
95
13,227
67
10.2
4,364
3
417
1,033,516
329
170
4,781
4
586
4,640,345
5
638
8,141,681The heuristic was then applied to reduce the problem size of Scenarios 3–5. Table3 shows the computational results of the proposed methodology. AARM LP, AARM IP, ARM LP, ARM IP, and Gap stand for the LP and IP objective values of the aggregated model, the LP and IP objective values of the aircraft recovery model, and the gap between the IP and LP values. The table shows that the gap between the IP and LP values of the ARM is 0, which indicates that the ARM provided a very good formulation of the recovery problem. Comparing Tables 2 and 3, the two-stage heuristic clearly outperformed the other method in directly solving the ARM because the computational time of the previous method was much shorter than that of the latter. Table 4 presents the number of LOFs after the selection of each stage. The LOF number significantly reduced after each stage, proving the effectiveness of the heuristic.Table 3
Computational results of the two-stage heuristic for the five scenarios.
Sce.
AARM LP
AARM IP
Gap
ARM LP
ARM IP
Gap
Sol. time (sec)
1
1,010
1,010
0
10.2
2
4,364
4,364
0
10.2
3
4,764
4,764
0
4,781
4,781
0
102
4
2,200
2,200
0
2,730
2,730
0
138
5
80
80
0
230
230
0
150Table 4
Results of the LOF selection after each stage.
Sce.
Number of feasible LOFs
Heuristic selection
Aggregated model
Number of final LOFs
1
3,034
66
2
13,227
67
3
1,033,516
59,995
3,326
329
4
4,640,345
101,816
13,773
423
5
8,141,681
104,927
6,063
423


### 5.3. Comparative Tests and Sensitivity Analysis

In this section, the recovery options of the proposed methodology were compared with the practical solutions of airlines and the improved GRASP. In real life, airlines either delay the affected flights for a certain period or cancel the flights if the delay time is beyond the maximum delay time. The common practice of airlines was applied to the five scenarios, and the solutions in Table5 were reported. The proposed methodology outperformed the airline solutions in terms of the total delay time, total cancellation, and objective value. The improved GRASP was the integration of the greedy randomized adaptive search procedure with the simulated annealing approach. The same runtime of the two algorithms was set. The computation results were presented in Table 6. As it is shown in the table, the algorithm displayed more decreased solution costs with the increment of the problem scale.Table 5
Recovery solutions of airlines and the two-stage heuristic.
Sce.
Total delay (min)
Number of cancellations
Obj. value
Airlines
Proposed
Airlines
Proposed
Airlines
Proposed
1
0
0
4
2
2,000
1,010
2
490
275
4
2
8,100
4,364
3
755
345
6
4
9,040
4,781
4
0
0
29
4
14,500
2,730
5
0
0
4
0
2,000
230Table 6
Recovery solutions of the GRASP and the two-stage heuristic.
Sce.
Total delay (min)
Number of cancellations
Number of swaps
Obj. value
GRASP
Proposed
GRASP
Proposed
GRASP
Proposed
GRASP
Proposed
1
0
0
2
2
1
1
1,010
1,010
2
275
275
2
2
20
14
4,390
4,364
3
345
345
4
4
38
21
4,848
4,781
4
110
0
8
4
74
73
5,200
2,730
5
0
0
2
0
4
23
1,040
230It is also worth mentioning that the gaps between the objective values in Scenario 4 were extraordinarily large, which was mainly caused by long-time maintenances. Therefore, the duration of the maintenances was further changed to determine whether or not the duration of disruptions will intensify the differences between the two methods. Table7 shows that the gaps between the two methods enlarged as the time of maintenances increased. In other words, the proposed methodology will have significant advantages over the airline solutions when large disruptions happen.Table 7
Recovery solutions of airlines and the two-stage heuristic under different maintenance durations.
Duration (h)
Total delay (min)
Number of cancellations
Obj. value
Airlines
Proposed
Airlines
Proposed
Airlines
Proposed
48
0
0
29
4
14,500
2,730
36
0
0
17
2
8,500
1,770
24
0
0
13
2
6,500
1,630
12
0
0
9
0
4,500
430


## 5.1. Test Cases

Table1 shows the detailed information on the five test scenarios. The recovery problem considered the scheduled flights that were assigned to a list of aircraft during a fixed time (i.e., generally about two to four days). The first two instances were small test cases, while the others were relatively larger test cases. Different disruptions were considered in each scenario. Airport closures were considered in Scenarios 2 and 3, while unplanned maintenances were considered in all the instances, except in Scenario 2. The long duration of the maintenance particularly lasted for 48 h in Scenario 4 and 8 h in Scenario 3. The maximum delay time for each flight was set to be 180 min.Table 1
Characteristics of the five test scenarios.
Sce.
Number of aircraft
Number of airports
Number of flights
Duration (d)
Number of maints.
Number of closures
1
16
12
59
2
23
0
2
12
25
95
2
0
1
3
85
35
417
3
25
1
4
44
37
586
4
24
0
5
44
42
638
4
29
0


## 5.2. ARM Solutions with the Two-Stage Heuristic

The computational results of the ARM for the five test instances with and without the two-stage heuristics are reported in this section. The parameters mentioned in Section3.1 were initially set as follows to construct the feasible LOFs of the test instances: Tmax to be 300 min, Tmin to be 0 min, and the minimum turn time to be 30 min. The computational results of the ARM without heuristics were first reported, as shown in Table 2. The number of generated LOFs exponentially increased with the flight number. Moreover, only three out of five instances can obtain optimal solutions within a reasonable time. The others failed to provide feasible IP solutions after more than 1 h runtime, which was mainly caused by the large number of LOFs and variables in the ARM.Table 2
Computational results of the ARM for the five test scenarios.
Sce.
Number of flights
Number of feasible LOFs
Number of final LOFs
Sol. time (sec)
Obj. value
1
59
3,034
66
10.2
1,010
2
95
13,227
67
10.2
4,364
3
417
1,033,516
329
170
4,781
4
586
4,640,345
5
638
8,141,681The heuristic was then applied to reduce the problem size of Scenarios 3–5. Table3 shows the computational results of the proposed methodology. AARM LP, AARM IP, ARM LP, ARM IP, and Gap stand for the LP and IP objective values of the aggregated model, the LP and IP objective values of the aircraft recovery model, and the gap between the IP and LP values. The table shows that the gap between the IP and LP values of the ARM is 0, which indicates that the ARM provided a very good formulation of the recovery problem. Comparing Tables 2 and 3, the two-stage heuristic clearly outperformed the other method in directly solving the ARM because the computational time of the previous method was much shorter than that of the latter. Table 4 presents the number of LOFs after the selection of each stage. The LOF number significantly reduced after each stage, proving the effectiveness of the heuristic.Table 3
Computational results of the two-stage heuristic for the five scenarios.
Sce.
AARM LP
AARM IP
Gap
ARM LP
ARM IP
Gap
Sol. time (sec)
1
1,010
1,010
0
10.2
2
4,364
4,364
0
10.2
3
4,764
4,764
0
4,781
4,781
0
102
4
2,200
2,200
0
2,730
2,730
0
138
5
80
80
0
230
230
0
150Table 4
Results of the LOF selection after each stage.
Sce.
Number of feasible LOFs
Heuristic selection
Aggregated model
Number of final LOFs
1
3,034
66
2
13,227
67
3
1,033,516
59,995
3,326
329
4
4,640,345
101,816
13,773
423
5
8,141,681
104,927
6,063
423


## 5.3. Comparative Tests and Sensitivity Analysis

In this section, the recovery options of the proposed methodology were compared with the practical solutions of airlines and the improved GRASP. In real life, airlines either delay the affected flights for a certain period or cancel the flights if the delay time is beyond the maximum delay time. The common practice of airlines was applied to the five scenarios, and the solutions in Table5 were reported. The proposed methodology outperformed the airline solutions in terms of the total delay time, total cancellation, and objective value. The improved GRASP was the integration of the greedy randomized adaptive search procedure with the simulated annealing approach. The same runtime of the two algorithms was set. The computation results were presented in Table 6. As it is shown in the table, the algorithm displayed more decreased solution costs with the increment of the problem scale.Table 5
Recovery solutions of airlines and the two-stage heuristic.
Sce.
Total delay (min)
Number of cancellations
Obj. value
Airlines
Proposed
Airlines
Proposed
Airlines
Proposed
1
0
0
4
2
2,000
1,010
2
490
275
4
2
8,100
4,364
3
755
345
6
4
9,040
4,781
4
0
0
29
4
14,500
2,730
5
0
0
4
0
2,000
230Table 6
Recovery solutions of the GRASP and the two-stage heuristic.
Sce.
Total delay (min)
Number of cancellations
Number of swaps
Obj. value
GRASP
Proposed
GRASP
Proposed
GRASP
Proposed
GRASP
Proposed
1
0
0
2
2
1
1
1,010
1,010
2
275
275
2
2
20
14
4,390
4,364
3
345
345
4
4
38
21
4,848
4,781
4
110
0
8
4
74
73
5,200
2,730
5
0
0
2
0
4
23
1,040
230It is also worth mentioning that the gaps between the objective values in Scenario 4 were extraordinarily large, which was mainly caused by long-time maintenances. Therefore, the duration of the maintenances was further changed to determine whether or not the duration of disruptions will intensify the differences between the two methods. Table7 shows that the gaps between the two methods enlarged as the time of maintenances increased. In other words, the proposed methodology will have significant advantages over the airline solutions when large disruptions happen.Table 7
Recovery solutions of airlines and the two-stage heuristic under different maintenance durations.
Duration (h)
Total delay (min)
Number of cancellations
Obj. value
Airlines
Proposed
Airlines
Proposed
Airlines
Proposed
48
0
0
29
4
14,500
2,730
36
0
0
17
2
8,500
1,770
24
0
0
13
2
6,500
1,630
12
0
0
9
0
4,500
430


## 6. Conclusion

In this paper, a set partitioning model ARM was presented for the ARP. The ARP was computationally difficult because of the large number of variables and constraints. Furthermore, the problem scale must be reduced. The two-stage heuristic proposed in this study integrated a heuristic scoring procedure with a mathematical model AARM to preselect the LOFs. The motivation for applying the heuristic was to reduce the total runtimes to obtain solutions. The computational results imply that the proposed methodology presents great performance in obtaining a solution runtime. The 0 gap between the IP and LP values of the ARM and the AARM also proved that the models provided a very good formulation of the problem. The two-stage heuristic also outperformed the practical solutions of airlines in terms of the total delay time, total cancellation, and objective value. These advantages will further expand if the disruptions last for a long time. However, the gap between the IP solutions of the ARM and the AARM called for further improvements. Hence, future research will consider the application of column generation to solve the ARM optimally and further improve the solution quality of the ARP. The integration of the algorithm into an integrated problem will also be considered to further improve the computation results within reasonable times.



---

*Source: 9575719-2017-08-24.xml*