A model and optimization-based heuristic for the operational aircraft maintenance routing problem

A model and optimization-based heuristic for the operational aircraft maintenance routing problem

Transportation Research Part C 72 (2016) 29–44 Contents lists available at ScienceDirect Transportation Research Part C journal homepage: www.elsevi...

371KB Sizes 0 Downloads 90 Views

Transportation Research Part C 72 (2016) 29–44

Contents lists available at ScienceDirect

Transportation Research Part C journal homepage: www.elsevier.com/locate/trc

A model and optimization-based heuristic for the operational aircraft maintenance routing problem Nayla Ahmad Al-Thani, Mohamed Ben Ahmed, Mohamed Haouari ⇑ Department of Mechanical and Industrial Engineering, College of Engineering, Qatar University, Qatar

a r t i c l e

i n f o

Article history: Received 18 June 2016 Received in revised form 8 September 2016 Accepted 8 September 2016

Keywords: OR in airlines Aircraft routing problem Compact formulations Very large-scale neighborhood search

a b s t r a c t This paper investigates the Operational Aircraft Maintenance Routing Problem (OAMRP). Given a set of flights for a specific homogeneous fleet type, this short-term planning problem requires building feasible aircraft routes that cover each flight exactly once and that satisfy maintenance requirements. Basically, these requirements enforce an aircraft to undergo a planned maintenance at a specified station before accumulating a maximum number of flying hours. This stage is significant to airline companies as it directly impacts the fleet availability, safety, and profitability. The contribution of this paper is twofold. First, we elucidate the complexity status of the OAMRP and we propose an exact mixedinteger programming model that includes a polynomial number of variables and constraints. Furthermore, we propose a graph reduction procedure and valid inequalities that aim at improving the model solvability. Second, we propose a very large-scale neighborhood search algorithm along with a procedure for computing tight lower bounds. We present the results of extensive computational experiments that were carried out on realworld flight networks and attest to the efficacy of the proposed exact and heuristic approaches. In particular, we provide evidence that the exact model delivers optimal solutions for instances with up to 354 flights and 8 aircraft, and that the heuristic approach consistently delivers high-quality solutions while requiring short CPU times. Ó 2016 Elsevier Ltd. All rights reserved.

1. Introduction On December 17, 1903, Orville and Wilbur Wright achieved for the first time a successful flight of an aircraft that they designed and built themselves. Much more than being just an outstanding technological exploit, this pioneering flight marked the birth of modern aviation industry and definitely shaped the twentieth century and the world where we live today. In particular, during the last few decades the airline industry has witnessed one of the most enthralling economic developments in history and is nowadays considered as one of the main pillars of global economy. Actually, data compiled by the Air Transport Action Group (ATAG) yields an insight on the overwhelming importance of the airline industry.1 Indeed, in 2015 the aviation industry contributed to the global economic with $2400 million that translates to about 3.4% of the global

⇑ Corresponding author. 1

E-mail address: [email protected] (M. Haouari). Air Transport Action Group. http://www.atag.org/.

http://dx.doi.org/10.1016/j.trc.2016.09.004 0968-090X/Ó 2016 Elsevier Ltd. All rights reserved.

30

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

GDP. Furthermore, the number of air passengers has been steadily increasing by an average of 5.3% between 2012 and 2016 and is expected to reach 3.6 billion passengers by the end of 2016. Actually, the aviation industry contributes to the world GDP more than any other sectors/industries such as the pharmaceuticals, automotive and the textiles industries. As a matter of fact, the development of commercial aviation was, to a large extent, made possible by the development of ‘‘what is probably the most complex transportation system and possibly the most complex man-made system in the world” (Ball et al., 2007). In this regard, operations research analysts have played a major role in consistently helping airlines developing optimization models and algorithms that support the efficient management of their complex business. Indeed, since the early 1960s a rich body of literature, namely thousands of papers, dealing with various airline operations problems has been published (Barnhart et al., 2003). The vast majority of these papers focus on the following problems: (1) Schedule planning: Based on the corporate strategic plan and marketing studies, the airline company determines which cities to fly to, at which frequency, and at what times. The resulting schedule constitutes the basis of the airlines operations. (2) Fleet assignment problem: This planning process deals with assigning aircraft types, each having a different number of seats, maximum total range, and operating costs, to the scheduled flights. An airlines fleeting decision highly impacts its revenues, and thus constitutes an essential component of its overall scheduling process. (3) Aircraft routing problem: This planning process involves the determination of the sequence of flight legs to be flown by each individual aircraft so as to cover each flight exactly once. (4) Crew pairing problem: This planning process requires constructing a minimum-cost set of crew duties and pairings (that is, sequences of duties spanning consecutive days and starting and ending at the crew base) so that every flight is assigned a qualified crew and certain rules and collective agreements are satisfied. A glaring fact is that all these latter processes involve tactical decisions with planning horizons typically ranging from one month (crew scheduling) to one year (schedule planning). By contrast, short-term airline operations problems received (relatively) scant attention. Because of the complexity of the foregoing airline planning processes, and despite the considerable effort that has been devoted during the last decade to develop integrated models (see Shao et al. (in press), Gürkan et al. (2016) and the references therein), most airlines solve these problems separately: the optimal solution of one problem becomes the input for the following problem. However, by solving these problems sequentially, a solution for one process may prove infeasible input to the subsequent decisions. Furthermore, since these problems are solved well ahead of the planned flights (typically, from several weeks, for the crew pairing problem, up to one year for the schedule planning problem), they often need to be updated as the flight departure dates become closer and thereby the demand forecasts become accurate. In particular, the planned aircraft routes require to be frequently revised to accommodate refleeting decisions (that are made to better match demand fluctuations), aircraft breakdowns, and rerouting decisions that are made to repair disrupted plans (see Aloulou et al. (2013) and Samà et al. (2014), among many others). Consequently, airlines strive to continuously revise aircraft routes through periodically solving the so-called Operational Aircraft Maintenance Routing Problem (OAMRP). This short-term planning problem requires building aircraft routes that satisfy maintenance requirements. These latter are imposed, for obvious safety considerations, by the aircraft manufacturers, the aviation administrations, and by airlines. Basically, these requirements enforce an aircraft to undergo a planned maintenance after accumulating a specified number of flying hours. Actually, airlines utilize a planned preventive maintenance program that includes checks having different levels of detail, frequencies, and durations. The most frequent of these checks are often referred to as the A-checks. The periodicity of these checks depends on the aircraft type and airlines’ internal rules. For instance, at Qatar Airways the A-check are carried out every 250 flying hours. In addition, rules prevailing at some airlines require that each aircraft should undergo an A-check before accumulating a specified maximum number of landings or accumulating a specified maximum number of days since the last inspection. Depending on the aircraft type, the duration of an A-check typically ranges between 6 and 8 h. On the other hand, the so-called D-checks are extremely comprehensive and are planned only three to six times during the lifetime of an aircraft. In this paper, we only consider the most frequent preventive maintenance checks, i.e., the type A check, for each aircraft. Other types of checks that are much spaced, and require keeping the aircraft idle for much longer time, are usually planned at a higher decision level. More precisely, we investigate the following problem. We are given a set L of flight legs that are scheduled to be flown during a one-week planning horizon. Each flight j 2 L is characterized by a departure time tj , a flight duration dj , an origin station Oj and a destination station Dj . These flights should be assigned to a set K of m identical aircraft. Let F denote a parameter that represents the maximum flying time before undergoing a maintenance check, and S be the set of maintenance stations (i.e. stations where maintenance checks can be appropriately carried out). Assume that an aircraft k that has accumulated uk flying hours (with uk 6 F) undergoes a planned maintenance check at the landing station (given that this station is indeed a maintenance station), then the difference ðF  uk Þ is defined as the legal remaining time of k. Each aircraft k 2 K, is characterized by: (i) a parameter f k that represents the initial accumulated number of flying hours since the last maintenance check (that is, uk is initialized at f k , for each aircraft k), (ii) an origin station, and (iii) a turn-time that represents the minimum preparation time that should elapse between a landing time and the next take-off time. The OAMRP requires building exactly one route for each individual aircraft while considering the following constraints:

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

31

 Each flight is covered exactly once,  The connecting time between two consecutive flights should not be less than a preset turn time. Furthermore, for the sake of computational convenience, we shall assume that no aircraft should remain idle for more than 24 h,  The accumulated flying time since the last maintenance check should never exceed F,  All scheduled maintenance checks should be achieved at designated maintenance stations and enforce the aircraft to remain grounded for at least the preset maintenance duration. The objective is to minimize the total legal remaining times. This objective, which was first introduced in Sarac et al. (2006), can be viewed as a surrogate objective that aims at minimizing the total unutilized legal remaining flying hours of the fleet. Thereby, the objective is twofold: enhancing the fleet operational availability and reducing the planned maintenance costs. Since airlines are operating in a highly competitive environment, with narrow profit margins and uncertain fuel costs, they are continuously trying to ensure profitability through high aircraft utilization and low operations costs. Hence, airlines are striving to build effective maintenance feasible aircraft routes. Actually, it is worth mentioning that a similar model, which is referred to as the rolling stock maintenance routing problem, arises in the railway industry. This problem requires assigning individual rolling stock units (trains) to a set of predefined trips, while considering maintenance requirements (see Giacco et al. (2014), Andrés et al. (2015), and Lai et al. (2015)). In this paper, we make the following contributions: (1) We propose a compact model for the OAMRP along with a formal proof of the problem complexity. The proposed model includes a polynomial number of variables and constraints. In addition to the basic model, we describe several algorithmic expedients that significantly enhance its solvability. We present the results of computational experiments, that were carried out on benchmark instances with up to 354 flights and 8 aircraft, that provide evidence that the proposed model exhibits a very good performance and consistently outperform an alternative model that was recently proposed in the literature. (2) We describe an optimization-based heuristic (or, matheuristic) that aims at efficiently solving large scale OAMRP instances. It can be viewed as a variable neighborhood search algorithm where the neighborhoods are efficiently explored using the proposed exact model. Furthermore, we describe a relaxation that can be used for deriving a lower bound on the optimal solution. We show that the proposed heuristic provides high-quality solutions to large-scale real instances while requiring short CPU times. The remainder of this paper is organized as follows. In Section 2, we provide a review of the literature pertaining to airline maintenance routing models. In Section 3, we describe a valid MIP model and we provide some algorithmic enhancements including a graph reduction procedure that permit to reduce the problem size and improve the model solvability. In Section 4, we propose an effective optimization-based heuristic that aims at solving large-scale instances. In Section 5, we present extensive computational results that were carried out on real data. Finally, Section 6 concludes the paper. For the sake of clarity, all the notation that is used throughout the paper is summarized in Appendix A. 2. Literature review During the last two decades, the aircraft maintenance routing problem (AMRP) has gained an increasing attention in the academic literature. However, most authors investigated the tactical problem variant. It is noteworthy that this variant is typically solved several months ahead of the scheduled flights. It aims at producing a cyclic schedule that will repeat itself every period of time (usually, one period corresponds to one day). Hence, it implicitly assumes that each aircraft will periodically fly the same sequence of legs. Therefore, the initial aircraft locations as well as the initial accumulated flying times are ignored. By contrast, in the operational variant, the initial locations as well as the exact values of the initial flying times are explicitly accommodated. Also, because of refleeting decisions (that are made to tightly match the supply with the demand) and recovery decisions (that are made to repair disrupted schedules), the operational aircraft routing problem is not periodic and varies from one period to another. In the sequel, we shall first review the literature pertaining to tactical models, and then describe operational models. 2.1. Tactical models Kabbani and Patty (1992) were among the first to investigate a tactical aircraft maintenance routing problem. They developed a set-partitioning model to identify routes for the aircraft that are maintenance feasible. They considered an aircraft route to be maintenance feasible if the aircraft was grounded overnight in a maintenance station every three days. They proposed a two-step solution method that constructs over-the-day routes in the first step, and connects them to construct the tours in the second step. Clarke et al. (1997) investigated the so-called aircraft rotation problem where the objective is to build the optimal route for each aircraft under certain maintenance and operational restrictions while maximizing the profit. They described a mathematical programming formulation, and investigated the similarity between this problem and the asymmetric traveling salesman problem. Talluri (1998) presented a polynomial-time algorithm for the four-day aircraft

32

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

maintenance routing problem (that is, an aircraft should visit a maintenance station and remain grounded for some duration every four days). He considered both the maintenance requirements and the balance checks requirements. He shows that the problem is NP-complete. Gopalan and Talluri (1998) studied the three-day aircraft maintenance routing problem. They presented a polynomial-time algorithm that aims to find aircraft routes under different maintenance constraints. In their paper, they considered both static infinite-horizon and dynamic finite-horizon. Barnhart et al. (1998) studied a string-based model with aircraft utilization constraint for the aircraft routing problem. The objective was to minimize the total cost of the selected strings (i.e. aircraft maintenance feasible routes). They developed a branch-and-price approach to solve the presented model. Mak and Boland (2000) formulated the aircraft maintenance routing problem as an asymmetric traveling salesman problem with replenishment arcs. They proposed a heuristic approach that used the simulated annealing to find the upped bounds and a Lagrangian dual problem using a subgradient optimization method to find lower bounds. Sriram and Haghani (2003) addressed the maintenance scheduling problem for a one-week planning horizon for a domestic flight schedule. In their model, they considered two types of maintenance checks (namely, Type A and Type B checks). However, due to the short planning horizon the introduction of the type B check was not efficient. The objective was to minimize the cost, which was calculated by adding the total cost of Type A maintenance checks, the total cost of Type B maintenance checks and a penalty for assigning inappropriate aircraft to some flights. The model keeps track of the number of days remaining until the next planned Type A maintenance check. They developed a heuristic procedure that provides a solution for medium-sized airlines. Afsar et al. (2006) proposed a two-step heuristic that maximizes the aircraft utilization. In their approach, they used a rolling-horizon framework for ten weeks, with one week sliding window. They proposed different heuristics that were tested by simulation. Liang et al. (2011) proposed a novel compact-network representation of the time-space network for a daily aircraft maintenance routing problem. They formulated the problem as a network flow problem with the objective of maximizing the through values and penalizing short connections. Later, Liang and Chaovalitwongse (2013) generalized this compact model and proposed a new weekly rotation-tour network model. They formulated a new network-based mixed integer linear programming model to solve the problem. Haouari et al. (2013) presented an alternative RLT-based compact formulation of the aircraft routing problem. They addressed the case where each aircraft should visit maintenance stations before: (i) accumulating a specified maximum flying time; (ii) accumulating a specified maximum number of takeoffs, and (iii) accumulating a specified maximum number of days. They show that quite large instances can be optimally solved using a general purpose solver. Recently, Maher et al. (2014) tackled the single-day aircraft maintenance routing problem. They presented two models that minimize the effect of schedule disturbance on the maintenance planning. Furthermore, Gavranis and Kozanidis (2015) presented a mixed-integer linear programing model to solve the flight and maintenance planning problem. The objective was to maximize the unit fleet availability over a multi-period planning horizon while taking into consideration maintenance requirements. They developed an exact solution algorithm that can find the optimal solution for relatively large problems. 2.2. Operational models By contrast to the aforementioned tactical aircraft maintenance routing problems, the literature dealing with the operational variant is relatively scant. Sarac et al. (2006) addressed the problem of operational aircraft routing that arises in daily operations rather than in long-term planning. They presented a formulation (with an exponential number of variables) while accommodating resource availability constraints and with the objective of minimizing the unused legal flying hours and proposed a branch-and-price approach to solve it. Orhan et al. (2012) developed an integer linear goal-programming model with the objective of minimizing the legal flying duration of the aircraft before they undergo maintenance. It is noteworthy that both Sarac et al. (2006) and Orhan et al. (2012) considered a single-day planning horizon. Basßdere and Bilge (2014) studied the operational aircraft maintenance routing problem. They considered both the uncapacitated and the capacitated variants. They proposed a multi-commodity flow model that aims to minimize the total unutilized legal flying time of the critical aircraft (a critical aircraft is an aircraft that may undergo maintenance during the one-week planning horizon). In their model, they modified the connection network to be able to track the accumulated flying time of each aircraft. The ordinary arcs (i.e. arcs that connect flight legs) were duplicated to indicate if the connection is flown before maintenance or after maintenance. Furthermore, they described a simulated annealing heuristic for the OAMRP. It is worth mentioning that Basßdere and Bilge (2014) assumed that an aircraft can undergo at most one maintenance check during the planning horizon. In addition, they proposed a simulation annealing heuristic for a capacitated variant.

3. A mixed-integer programming formulation 3.1. Graph construction For modeling purpose we shall use a weighted directed graph G ¼ ðV; AÞ that is constructed as follows. The node set V includes the following disjoint subsets: (i) fs; tg where s is the source node and t is the sink node t, (ii) fs1 ; s2 ; . . . ; sm g where

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

33

aircraft node sk corresponds to aircraft k (k ¼ 1; . . . ; m), and (iii) subset L that includes n flight nodes that correspond to the n scheduled flights, respectively (it is noteworthy that we used, for the sake of convenience, the same notation for the set of flights and the set of node flights). The arc set A includes three types of arcs: (i) m arcs ðs; sk Þ (k 2 K). These arcs connect the source node to aircraft nodes. The weight of arc ðs; sk Þ is set equal to the initial accumulated number of flying hours f k of aircraft k, (ii) For each aircraft node sk (k 2 K) and each flight node j (j 2 L), arc ðsk ; jÞ belongs to A if and only if the initial location of aircraft k coincides with the departure station of flight j, and the ready time of k occurs less than 24 h before the departure time of j. The weight of arc ðsk ; jÞ is set equal to the flight duration dj , (iii) All possible compatible connections ði; jÞ 2 L  L between flight legs, where flights i and j are said to be compatible if and only if: (C1) the arrival station of i coincides with the departure station of j, and (C2) the total connection time is greater than or equal to the minimum aircraft turn-around time, and less than 24 h. The weight of a connection arc ði; jÞ is dj , (iv) For each flight node j (j 2 L), a zero-weight arc ðj; tÞ is included in A if the difference between the end of the planning horizon and the arrival time of j is less than 24 h. Clearly, the resulting graph is acyclic and displays a one-to-one mapping between s  t paths in G and aircraft routes. Furthermore, if no maintenance is scheduled then a path that includes node sk and has a total weight of W corresponds to a potential route for aircraft k having an accumulated flying time of W. In the sequel, we shall use the following additional notation: þ d j =dj : set of arcs that are incoming to/outgoing from node j; j 2 V, AM  A: set of maintenance arcs. That is, arc ði; jÞ 2 AM if and only if the arrival station of i is a maintenance station and the idle time between i and j is greater than or equal to the maintenance check duration, AM  A n AM : set on non-maintenance arcs, LM  L: set of maintenance nodes. That is, node j 2 LM if it is feasible to schedule a maintenance before the departure of j (or equivalently, j has at least one incoming maintenance arc), LM  L n LM : set on non-maintenance nodes.

3.2. Model description We define the following decision variables: xij : binary variable that takes value 1 if arc ði; jÞ 2 A is selected, and 0 otherwise, yj : binary variable that takes value 1 if a maintenance check is scheduled immediately before flight j 2 LM , and 0 otherwise, uj : continuous variable that represents the cumulative flying time, since the last maintenance check, of the aircraft that flies leg j 2 V, qj : continuous variable that is equal to the remaining flying time of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise. Using these definitions, the OAMRP can be modeled as an assignment problem with side constraints follows:

OAMRP : Minimize

X

qj

ð1Þ

j2LM

subject to:

X xs;sk ¼ m;

ð2Þ

k2K

X

xjt ¼ m;

ð3Þ

ðj;tÞ2d t

X

xij ¼ 1;

ði;jÞ2dþ i

X

yj 6

X

xji 

ðj;iÞ2d i

X

8i 2 V n fs; tg; xij ¼ 0;

8i 2 V n fs; tg;

ð4Þ ð5Þ

ði;jÞ2dþ i

ði;jÞ2AM

xij ;

8j 2 L M ;

ð6Þ

34

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

qj P Fxij  ui  ðF  di Þð1  yj Þ; 8ði; jÞ 2 AM ; uj 6 ui þ dj þ ðF  di  dj Þð1  xij Þ; uj 6 F  ðF  dj Þyj ;

8ði; jÞ 2 A n dt ;

8j 2 LM ;

uj P ui þ dj  Fð1  xij Þ;

ð9Þ dt ;

8ði; jÞ 2 AM n 8ði; jÞ 2 AM ;

uj P ui þ dj  Fð1  xij Þ  Fyj ; us ¼ 0; usk ¼ f k ;

8k 2 K;

xij 2 f0; 1g; 8ði; jÞ 2 A; yj 2 f0; 1g; qj P 0; 8j 2 LM ; dj 6 uj 6 F;

ð7Þ ð8Þ

8j 2 V:

ð10Þ ð11Þ ð12Þ ð13Þ ð14Þ ð15Þ

The objective function (1) is to minimize the sum of the remaining flying times. Constraints (2)–(5) (together with (13)) enforce that x is the incidence vector of m disjoint s  t paths (one for each aircraft) such that each flight node is covered by exactly one aircraft route. Constraint (6) ensures that there will be no planned maintenance before flight j 2 LM if no maintenance arc incoming to node j is selected. Constraint (7) ensures that if a maintenance arc ði; jÞ is selected (i.e. xij ¼ 1) and a maintenance check is achieved before the departure of j (i.e. yj ¼ 1) then the remaining legal flying time is greater than or equal to the maximum legal flying time minus the accumulated flying time after serving the preceding leg i. Actually, since the remaining legal flying time is minimized then the latter inequality will be at optimality satisfied as an equality thereby yielding the exact value qj ¼ F  ui . On the other hand, if no maintenance check is scheduled (i.e. yj ¼ 0) then (7) reads as follows:

qj P Fðxij  1Þ þ ðdi  ui Þ:

ð16Þ

Since xij 6 1 and di 6 ui , then the RHS of (16) is nonpositive and thereby (7) becomes redundant. Constraints (8)–(11) enforce the logical relationships that link the u-, x-, and y-variables. Indeed, we see that:  If xij ¼ 1 and ði; jÞ is not a maintenance arc then by virtue of (8) and (10) we get uj ¼ ui þ dj . Similarly, if xij ¼ 1 and ði; jÞ is a maintenance arc but no maintenance check is planned (yj ¼ 0) then (8) and (11) yield uj ¼ ui þ dj as well.  If yj ¼ 1 then a maintenance check is scheduled immediately before the departure of j. In this case, we see from (9) and (15) that uj ¼ dj . Indeed, in this case the cumulative flying time of the aircraft that flies leg j will be reset to zero after the maintenance check and thereby will be equal to the flight duration of j after serving this leg. On the other hand, if yj ¼ 0 then (9) becomes redundant.  If xij ¼ 0 then (8), (10), and (11) become

uj 6 F þ ðui  di Þ;

ð17Þ

uj P dj þ ðui  FÞ;

ð18Þ

and

uj P dj þ ðui  FÞ  Fyj ;

ð19Þ

respectively. Hence, all these three constraints turn out to be redundant. Constraint (12) enforce the initial values of the accumulated flying times for the aircraft nodes. Finally, (13)–(15) set the domains for the decision variables. Remark 1. By contrast to the model that was previously proposed by Basßdere and Bilge (2014), Model (1)–(15) includes no restriction on the number of maintenance checks that an aircraft can undergo during the planning horizon. Hence, it remains valid even in the case where frequent maintenance checks are mandated. 3.2.1. Extensions Generation of robust routes: In practice, a zero-legal remaining time route might prove non-robust. Hence, the issue of designing robust maintenance aircraft routes is worthy to be investigated. Actually, although many authors have investigated the issue of enhancing the robustness of aircraft routes, the robust variant of the OAMRP has never been addressed before. We refer the interested readers to Lan et al. (2006), Dunbar et al. (2012) and Yan and Kung (forthcoming). In this section, we show how to extend Model (1)–(15) to incorporate robustness features within aircraft plans. Toward this end, the decision maker could specify two additional input parameters h and c, that represent a cushion time and a penalty,respectively, that will help to protect against disruptions. More specifically, if we have uj < h and a maintenance is scheduled immediately after serving flight j, then a penalty cost cðh  uj Þ is be incurred. Therefore, a robust variant of Model (1)– (15) is derived as follows. For every j 2 V, we define three nonnegative continuous decision variables: (i) a slack variable þ ej , and (ii) two deviational variables e j and ej . We append to Model (1)–(15) the following constraints

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

uj þ ej ¼ F;

8j 2 V;

ej  ej þ eþj ¼ h; ej ; ej ; eþj P 0;

35

ð20Þ

8j 2 V;

ð21Þ

8j 2 V:

ð22Þ

The new objective function reads as follows:

ðE1Þ : Minimize

X

X

j2LM

j2LM

qj þ

ceþj

ð23Þ

We see from (20) that ej is equal to the legal remaining time of the aircraft that serves j. Also, we observe from (21) that if þ þ ej < h, then we get eþ j ¼ h  ej , and a penalty cost cej is incurred (otherwise, if ej P h we have ej ¼ 0). Hence, the second term of the objective function (23) aims at penalizing the legal remaining times that are shorter than the cushion time h. Alternative maintenance checks periodicity criteria: So far, we assumed that an aircraft should periodically undergo a maintenance check after accumulating a maximum number of flying hours. However, some airlines use different periodicity criteria by additionally enforcing a maximum number of takeoffs, and a maximum number of days between two consecutive maintenance checks (Haouari et al., 2013). In this section, we show how to extend Model (1)–(15) to accommodate the general case where an aircraft should undergo a maintenance check before reaching: (i) a maximum number of flying hours, (ii) a maximum number of takeoffs, and (iii) a maximum number of days, since the last maintenance check. In this case, the objective function requires minimizing a weighted sum of the remaining legal flying times, remaining number of takeoffs, and remaining number of days. We provide the following additional notation. Sets and parameters T maximum number of takeoffs between two consecutive maintenance checks, D maximum number of days between two consecutive maintenance checks, hk initial accumulated number of takeoffs, since the last maintenance check, of aircraft k; k 2 K, initial accumulated number of days, since the last maintenance check, of aircraft k; k 2 K, bij : binary constant that gk takes values 1 if arc ði; jÞ 2 A corresponds to an overnight connection (that is, if and only if the departure time of i occurs one day before the departure time of j), 0 otherwise, cf weight of the remaining legal flying times, ct weight of the remaining number of takeoffs, cd weight of the remaining number of days. Decision variables vj continuous variable that represents the cumulative number of takeoffs, since the last maintenance check, of the aircraft that serves leg j 2 V, wj continuous variable that represents the cumulative number of days, since the last maintenance check, of the aircraft that serves leg j 2 V, kj continuous variable that is equal to the remaining number of takeoffs of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise, uj continuous variable that is equal to the remaining number of days of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise. The model reads as follows:

ðE2Þ : Minimize

X

X

j2LM

j2LM

cf qj þ

ct kj þ

X

cd uj

ð24Þ

8ði; jÞ 2 AM ;

ð25Þ

j2LM

subject to (2)–(15) and

kj P Txij  v i  ðT  1Þð1  yj Þ;

v j 6 v i þ 1 þ ðT  2Þð1  xij Þ; 8ði; jÞ 2 A n v j 6 T  ðT  1Þyj ; 8j 2 LM ; v j P v i þ 1  Tð1  xij Þ; 8ði; jÞ 2 AM n dt ; v j P v i þ 1  Tð1  xij Þ  Tyj ; 8ði; jÞ 2 AM ; v s ¼ 0; v s ¼ hk ; 8k 2 K;

dt ;

k

ð26Þ ð27Þ ð28Þ ð29Þ ð30Þ

kj P 0; 8j 2 LM ; 1 6 v j 6 T; 8j 2 V;

ð31Þ ð32Þ

uj P Dxij  wi  ðD  1Þð1  yj Þ; 8ði; jÞ 2 AM ;

ð33Þ

36

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

wj 6 wi þ bij þ ðD  bij  1Þð1  xij Þ; wj 6 D  ðD  1Þyj ;

8ði; jÞ 2 A n dt ;

ð34Þ

8j 2 LM ;

ð35Þ

8ði; jÞ 2 AM n dt ; wj P wi þ bij  Dð1  xij Þ  Dyj ; 8ði; jÞ 2 AM ; wj P wi þ bij  Dð1  xij Þ;

ws ¼ 0; wsk ¼ g k ;

ð36Þ ð37Þ

8k 2 K;

ð38Þ

uj P 0; 8j 2 LM ; 1 6 wj 6 D;

ð39Þ

8j 2 V:

ð40Þ

Using arguments that are similar to those used above for elucidating the relationship between the u-, x-, and y-variables, one can readily check the validity of (25)–(40). In particular, we observe that:    

Constraints Constraints Constraints Constraints

(25) and (33) enforce that if xij ¼ 1 and yj ¼ 1 then kj ¼ T  v i and uj ¼ D  wi , (26), (28), (34) and (36) enforce that if ði; jÞ 2 AM and xij ¼ 1 then v j ¼ v i þ 1 and uj ¼ ui þ bij , (26), (29), (34) and (37) enforce that if ði; jÞ 2 AM ; xij ¼ 1, and yj ¼ 0 then v j ¼ v i þ 1 and uj ¼ ui þ bij , (27), (32), (35) and (40) enforce that if j 2 LM and yj ¼ 1 then v j ¼ 1 and then uj ¼ 1.

3.3. Complexity of the OAMRP Talluri (1998) investigated the so-called k-day Maintenance Euler Tour (k -day MET) problem. This problem requires building a set of aircraft routes such that all aircraft visit a maintenance station after at most k days of flying without undergoing maintenance check. It is noteworthy that this problem is posed as a feasibility problem and not as an optimization one. He shows that the k-day MET existence problem is NP-complete for all k P 4. By contrast, as far as we know, the complexity of the OAMRP has never been elucidated before. In this section, we provide a formal proof of the NP-hardness of the OAMRP. Theorem 1. The OAMRP is NP-hard.

Proof. The proof is based upon reduction from the so-called Subset-Sum Problem (SSP). This latter is notoriously NP-hard (see Martello and Toth (1990)) and is defined as follows. Subset-Sum Problem (SSP): We are given a set J of n items and a knapsack with capacity C. The weight of each item j 2 J P is a nonnegative integer wj . We assume that j2J wj > C. The problem requires finding a subset S  J whose total weight P j2S wj is closest to C without exceeding C. out

in

Given an instance I of SSP, we construct an instance F of the OAMRP by defining for each item j 2 J a pair rj ¼ flj ; lj g of round-trip flights whose total duration is wj . All round trip flights depart from the same hub station and visit different spoke out in stations. Therefore, flight lj departs from the hub and visits a spoke station, and lj corresponds to the return flight. We P assume that the hub is the only maintenance station. The maximum flying time is F ¼ j2J wj . The fleet includes two aircraft that are initially located at the hub. The values of the initial accumulated number of flying hours are f 1 ¼ F  C and f 2 ¼ 0, respectively. The departure times of the flights are set in such a way that any aircraft can consecutively fly rotations r i and r j for all i; j 2 J with i < j. Also, we assume that maintenance can possibly be scheduled between any pair of rotations. Clearly, the network structure constrains each pair r j of round-trip flights to be flown by the same aircraft for a total duration of wj . Also, we observe that a maintenance check is required to be scheduled for Aircraft 1 only. If this check is planned immediately after flying a subset S of rotations, then the legal remaining time of Aircraft 1, and thereby the objective P function, would be C  j2S wj . Therefore, minimizing the legal remaining time amounts to finding a subset S of rotations whose total duration is maximum without exceeding C. Consequently, if this OAMRP instance F can be solved in polynomialtime then the corresponding SSP instance I can be solved in polynomial time and vice versa. h

3.4. Model enhancements In this section, we describe two enhancements that aim at improving the model solvability. First, we describe a procedure for graph reduction, and then we suggest some valid inequalities that enhance the model representation. 3.4.1. A graph reduction procedure Assume that after constructing the graph G, we observe that the following case occurs:  Case 1: There exists a non-maintenance arc ði; jÞ where node i is the only predecessor of node j, Obviously, in this case legs i and j are necessarily consecutively flown on the same route. Consequently, the corresponding nodes i and j are merged into a single node ij. The graph will be updated as follows:

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

– – – –

37

arcs outgoing from node i are deleted, arcs incoming to node i, will become incoming to the newly created node ij, arcs outgoing from node j will be the outgoing arc from node ij, The flight duration associated with node ij is dij ¼ di þ dj . This updating procedure is repeated iteratively until Case 1 no longer occurs. Similarly, it is possible to further reduce the graph size by additionally considering the following case:

 Case 2: There exists a non-maintenance arc ði; jÞ where node j is the only successor of node i. Clearly, it is easy to observe that in this case too, legs i and j are necessarily consecutively flown on the same and therefore nodes i and j are merged into a single node ij. In this case, the following reduction operations are achieved: – – – –

arcs incoming to node j are deleted, arcs incoming to node i, will be incoming to the newly created node ij, arcs outgoing from node j will be the outgoing arc from node ij, The flight duration associated with node ij is dij ¼ di þ dj . The above-mentioned procedure will be repeated until no possible merge can be achieved.

Remark 2. It is noteworthy that some nodes that originally have multiple predecessors and successors, may eventually be merged because at each iteration the merging procedure deletes several arcs. 3.4.2. Enhancement of the bounding constraints (15) We describe a preprocessing procedure that aims at tightening the bounding constraints (15). Recall that LM denotes the subset of flights where a maintenance check can be scheduled immediately before their departure. Besides, we introduce the following additional notation: LaM : subset of flights where a maintenance check can be scheduled immediately after their arrival, Fj : valid upper bound on the maximum cumulative flying time of an aircraft after flying j; j 2 L,  : valid lower bound on the maximum cumulative flying time of an aircraft after flying j; j 2 L. d j

Clearly, Fj ¼ F for all j 2 LaM . On the other hand, if no maintenance can be scheduled immediately after flight i (that is, i R LaM ) then we have ui 6 Fj  dj for all j such that ði; jÞ 2 A. Hence, if i R LaM then a valid upper bound Fi on ui is

Fi ¼ max fFj  dj g: j:ði;jÞ2A

ð41Þ

Using (41), we implemented the following recursive procedure to compute the values of the Fj ’s. Recursive Procedure 1  Step 1: Initialize Fj ¼ F for all j 2 L.  Step 2: Set Fi minfFi ; maxj:ði;jÞ2A fFj  dj gg for all j R LaM .  Step 3: Repeat Step 2 until the values of the Fi ’s remain unchanged for all j R LaM . Similarly, if no maintenance check can be achieved immediately before the departure of j (that is, j R LM ) then we have i þ dj for all i such that ði; jÞ 2 A. Therefore, if j R LM then a valid lower bound d j on uj is uj P d

 ¼ min fd  þ d g: d j i j i:ði;jÞ2A

ð42Þ

 ¼ d if j 2 LM . Using (42), we use the following recursive procedure to compute the values of On the other hand, we set d j j j ’s. the d Recursive Procedure 2  ¼ d for all j 2 L.  Step 1: Initialize d j j   ; min   Step 2: Set dj maxfd j i:ði;jÞ2A fdi þ dj gg for all j R LM .  ’s remain unchanged for all j R LM .  Step 3: Repeat Step 2 until the values of the d j

Remark 3. The complexity of both recursive procedures is OðjAjÞ. This result follows from the fact that G is acyclic.

38

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

In the sequel, we shall substitute (15) with the following constraint:

 6 u 6 F ; d j j j

8j 2 V:

ð43Þ

4. A very large-scale neighborhood search algorithm 4.1. Description of the heuristic approach Variable Neighborhood Search (VNS) is a popular local search approach that was initially introduced by Mladenovic´ and Hansen (1997) and has been successfully used to solve a wide range of hard combinatorial optimization problems. Basically, it requires starting from an initial feasible solution and iteratively moving to an improving solution that belongs to the solution’s neighborhood. In most applications, the neighborhood of an incumbent solution has a polynomial size and can be easily fully enumerated. When a local optimum is reached, an expanded neighborhood is explored in an attempt to find a new improving solution. Later, Ahuja et al. (2002) extended the VNS approach by introducing the concept of very largescale neighborhood search (VLNS) where large-scale (possibly, exponential-size) neighborhoods may be explored via a specialized optimization procedure. In this section, we propose a VLNS heuristic that aims at deriving near-optimal solutions for large-scale OAMRP instances that cannot be optimally solved in a reasonable time. Toward this end, we describe an optimization-based VLNS algorithm that requires iteratively solving reduced OAMRP instances, where each reduced instance is modeled as an MIP and solved using a general-purpose solver. In what follows, we shall use the following notation and definitions. We denote by s the number of selected aircraft routes in a reduced instance. Also, smin and smax correspond to the minimum and the maximal possible values of s, respectively. A solution S refers to a set of m disjoint aircraft routes R1 ; . . . ; Rm such that each flight is covered by exactly one route. The legal remaining times of these routes are q1 ; . . . ; qm , respectively. Given a solution S, the corresponding set of routes is partitioned into two subsets: E and NE, where the former includes all of those routes that exhibit large legal remaining times, and the latter is its complementary. In our implementation, we tested two different heuristic strategies for building these two subsets. The first strategy includes in E all those routes that have nonzero legal remaining time. This strategy was found very effective for instances where many routes exhibit zero legal remaining times. On the other hand, the second strategy, which is more general, includes in E all those routes that exhibit a legal remaining time that is larger than the median value. In the sequel, we shall refer to a route that belongs to E as an eligible route. Otherwise, a route that belongs to NE is referred to as a non-eligible route. The VLNS approach is described as follows.  Step 1: Generation of an initial solution. Use a general-purpose solver to generate a solution S0 that satisfies the system of inequalities (2)–(15). Set s ¼ smin ; r ¼ 1; q ¼ 0.  Step 2: Selection of the reduced instance: Let Sr be the incumbent solution. Build subsets E and NE. Randomly select s routes by drawing one eligible route from E, and (s  1) non-eligible routes from NE. Let I r denote the OAMRP instance that is defined by the s selected routes (hence it includes the corresponding s aircraft together with the covered flights).  Step 3: Optimization of the reduced instance: Optimally solve I r using a general-purpose solver. If an improved solution is obtained then: (3.i) Substitute in Sr the old s routes with the newly derived ones, (3.i) Let Srþ1 denote the new solution. Set r r þ 1; s smin ; q 0, and (3.iii) Go to Step 2.  Step 4: Set q q þ 1. If q 6 qmax then go to Step 2.  Step 5: Expansion of the neighborhood: Set s s þ 1, q ¼ 0. If s 6 smax then go to Step 2 Else output Sr . STOP. For the sake of clarity, we provide some comments on the different steps of the heuristic:  Step 1: In our experiments, we found that a feasible initial solution is quickly generated, in Step 1, using a commercial solver. The CPU time remains small even for quite large instances. However, it is noteworthy that the approach remains correct if the initial solution is infeasible with respect to the maintenance constraints. Indeed, in case where an infeasible route is selected in Step 2, this route will be repaired in Step 3 upon optimally solving the reduced instance. It is possible to generate a set of m disjoint routes that cover all flights simply by solving the system that is defined by (2)–(5) and (13). This latter system exhibits a linear assignment structure and is therefore easy to solve. In this case, if a route Rk proves infeasible then we set qk ¼ 1.  Steps 2–3: In these two steps we select a small-sized instance that includes only one eligible route and solve it optimally. Since, the total number of aircraft is relatively small, this instance is expected to be quickly solved. Consequently, some flights may be reassigned to different aircraft and a new solution with shorter total legal remaining time may be generated.  Steps 4–5: For each neighborhood size (i.e. number of aircraft in the reduced instance), we allow a maximum of qmax nonimproving iterations. If this limit is reached, then the neighborhood size will be increased by one unit. Furthermore, to maintain the generated reduced instances small-sized (and thereby accelerate the search process), we start with an initial fleet size of smin ¼ 3 and allow increasing this fleet size up to smax ¼ 5.

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

39

4.2. Lower bound computation Since the OAMRP is a hard problem, one could reasonably expect that large instances cannot be exactly solved within a reasonable time. Hence, we developed a lower bound that can be used to assess the quality of heuristic solutions. This lower bound is derived upon relaxing the model as follows. Constraints (4) are relaxed for all flight nodes (and are thereby kept for th

aircraft nodes only). In so doing, the problem decomposes into m independent problems (one for each aircraft), where the k subproblem is a shortest path problem with side constraints that is defined as follows:

X Zk ¼ Min qj

ð44Þ

j2LM

subject to:

X

ðsk ;jÞ2dþ s

X

xsk ;j ¼ 1;

k

xij 

ði;jÞ2d j

X

X

ð45Þ xij ¼ 0;

8i 2 L;

ð46Þ

ði;jÞ2dþ i

xjt ¼ 1;

ð47Þ

ðj;tÞ2d t

and (6)–(14), and (43). Consequently, we have: Proposition 1. LB ¼

Pm

k¼1 Z k

is a valid lower bound on the minimum total remaining legal time.

5. Computational experiments In this section, we assess the empirical performance of the proposed MIP model and VLNS heuristic. All the proposed algorithms were coded in Microsoft Visual C++ (version 6.0), and the MIP models were solved using the CPLEX 12.6 solver. The computational experiments were carried out on an Intel Core i7 processor 3.1 GHz desktop computer with 8 GB RAM and Windows 7, 64-bit operating system. 5.1. Performance of the MIP model 5.1.1. Exact solution of Basdere and Bilge’s instances We carried out a series of experiments on real-world OAMRP instances that were previously used by Basßdere and Bilge (2014). The set of flights includes 354 legs that are scheduled to be flown by an 8-aircraft fleet during a one week planning horizon. For all the instances, the aircraft turn-time is 35 min, the maximum allowed legal flying time is 100 h, and the minimum required time for maintenance is 8 h. The testbed includes three classes of instances. Each of these classes includes 10 different test cases. However, the number of aircraft that should undergo maintenance is different for each class. Indeed, it is set to one, three, and five for Classes 1, 2, and 3, respectively. The test cases are generated by assigning randomly remaining times to the aircraft that should undergo maintenance. The assigned remaining times can take values between 0 and 3000 as multiples of 5. Notice that the longest route of the considered flight network is L ¼ 4885 minutes, and thus any value less than L could be used as a remaining time for a critical aircraft. Finally, for each run, we set the maximum CPU time to 5 h. Tables 1a–c provide the details of the performance of the proposed model as well as the performance of the multicommodity model of Basßdere and Bilge (2014) (this latter was coded and run using the same compiler and environment). In these tables, PM refers the model that is proposed in this paper, and BB refers to Basdere and Bilge’s model. For each instance, we provide the optimal value ðZ  Þ, the CPU time (in sec.) required by each model (TimeðPMÞ and TimeðBBÞ, respectively), and the percentage deviation 100  TimeðBBÞTimeðPMÞ . TimeðBBÞ We see from Tables 1a–c that the proposed model delivered optimal solutions for all instances while often requiring much shorter CPU time than Model BB does. Actually, the average percentage reduction of the CPU time is larger than 90% for 23 instances out of 30. Furthermore, we set a maximum CPU time of 15 min and we run both models on the instances of Class 3 (which was found to be the hardest one). The results are displayed in Table 2. In this table, Z 15 represents the value of the objective function that was obtained after setting the maximum CPU time to 15 min, and Deviation represents the difference Z 15  Z  . Table 2 provides strong evidence that the model PM consistently outperforms Model BB. Indeed, we observe from Table 2, that the proposed model delivered optimal solutions for all instances, but two instances (26 and 30). The average absolute deviation from optimal values being 2 min. By contrast, Model BB failed to deliver any optimal solution and exhibits an average absolute deviation of 119 min.

40

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

Table 1a Performance of the exact models on Class 1. Instance

Z⁄

Time (BB)

Time (PM)

Percentage deviation

1 2 3 4 5 6 7 8 9 10

0 0 0 35 0 0 105 0 0 0

128.07 174.7 78.43 31.98 48.63 78.83 32.03 69.49 285.95 99.01

2.13 2.3 4.08 1.57 2.09 1.88 31.24 3.56 5.67 4.64

98.34 98.68 94.8 95.09 95.7 97.62 2.47 94.88 98.02 95.31

Percentage deviation

Table 1b Performance of the exact models on Class 2. Instance

Z⁄

Time (BB)

Time (PM)

11 12 13 14 15 16 17 18 19 20

0 10 0 50 0 95 0 50 0 0

634.88 2087.73 2528.96 453.04 4680.4 1135.82 1202.53 160.25 2164.18 10788.54

14.49 3691.87 73.57 99.46 40.93 99.56 15.22 20.79 839.25 735.73

97.72 76.84 97.09 78.05 99.13 91.23 98.73 87.03 61.22 93.18

Table 1c Performance of the exact models on Class 3.

a

Instance

Z⁄

Time (BB)

Time (PM)

Percentage deviation

21 22 23 24 25 26 27 28 29 30

35 0 80 115 0 0 130 0 145 120

4983.97 18,000a 2983.43 12051.78 8614.94 13405.36 4592.01 17410.44 1750.99 11385.09

107.74 743.66 299.25 107.23 15.85 2175.59 333.12 664.73 163.48 920.19

97.84 >95.86 89.97 99.11 99.82 83.77 92.75 96.18 90.66 91.92

This instance remained unsolved after 5 h CPU time.

Table 2 Performance of the exact models after setting a maximum CPU time of 15 min. Instance

Z⁄

BB Model 15

Z 21 22 23 24 25 26 27 28 29 30

35 0 80 115 0 0 130 0 145 120

130 175 95 380 115 165 235 140 155 225

PM Model Deviation

Z15

Deviation

95 175 15 265 115 165 105 140 10 105

35 0 80 115 0 15 130 0 145 125

0 0 0 0 0 15 0 0 0 5

5.1.2. Impact of the proposed enhancements In order to evaluate the pertinence of the graph reduction procedure, we run Model PM without invoking the graph reduction procedure. The results that were obtained on Class 3 are displayed in Table 3. In this table, we provide for each problem

41

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44 Table 3 Impact of the graph reduction procedure.

a

Instance

Z⁄

Time (PM)

Time (PMnGR)

Ratio

21 22 23 24 25 26 27 28 29 30

35 0 80 115 0 0 130 0 145 120

107.74 743.66 299.25 107.23 15.85 2175.59 333.12 664.73 163.48 920.19

2799.56 9480.37 476.49 208.25 6097.19 4902.13 14949.37 18,000a 296.6 1194.74

3.5 1.34 1.25 33.37 118.46 8.27 1.97 >27.08 1.73 0.99

This instance remained unsolved after 5 h CPU time.

Table 4 Impact of the enhanced bounding constraint.

a

Instance

Z⁄

Time (PM)

Time (PM+(15))

Ratio

21 22 23 24 25 26 27 28 29 30

35 0 80 115 0 0 130 0 145 120

107.74 743.66 299.25 107.23 15.85 2175.59 333.12 664.73 163.48 920.19

376.76 994.37 373.95 3578.54 1877.63 18,000a 654.6 1811.48 282.69 908.05

3.5 1.34 1.25 33.37 118.46 >8.27 1.97 2.73 1.73 0.99

This instance remained unsolved after 5 h CPU time.

instance, in addition to TimeðPMÞ that is reproduced from Table 1, TimeðPM n GRÞ which represents the CPU time required when no graph reduction is applied, and the ratio

TimeðPMnGRÞ . TimeðPMÞ

Table 3 shows the worth of implementing graph reduction procedure, since we observe that skipping this procedure makes the solution time about 19 times slower for the instances of Class 3. In addition, we assessed the impact of the bounding constraints (43). Toward this end, we run Model PM after replacing (43) with (15). The results that were obtained on 3 are displayed in Table 4. In this table, TimeðPM þ ð15ÞÞ represents the CPU time required when is implemented. We see from Table 4 that the replacement of (43) with (15) dramatically increased the solution time. Indeed, we observe that the CPU time increased by a ratio of about 18 for the instances of Class 3. Furthermore, we found that one instance remained unsolved after 5 h CPU time. 5.2. Performance of the very large-scale neighborhood search algorithm 5.2.1. Performance of VLNS on Basdere and Bilge’s instances In a first experiment, we used the VLNS heuristic to solve the 20 instances of Classes 2 and 3 of the testbed of Basßdere and Bilge (2014) (instances of Class 1 were not considered because they proved quite easy to solve). In this experiment, we set qmax ¼ 10. The results are displayed in Table 3. In this table, we report for each instance: the optimal value ðZ  Þ, the heuristic value ðZ VLNS Þ, the CPU time of VLNS ðTimeðVLNSÞÞ, and the ratio

TimeðVLNSÞ . TimeðPMÞ

Table 5 attest to the efficacy of VLNS. Indeed, we observe that all instances were optimally solved. However, while it achieved a significant reduction of the CPU times for the hardest instances of Class 3, we see that for four instances of Class 2 it required longer CPU times. 5.2.2. Solution of large-scale instances To assess the effectiveness of VLNS on large-scale problems, we run it on an additional set of nine instances. These instances were derived from three different one-week real-word flight networks by randomly drawing initial aircraft remaining times. Table 6 displays the main characteristics of these instances. We set for each instance, the aircraft turn-time to 50 min, the maximum allowed legal flying time to 100 h, and the maintenance check duration to 8 h. Furthermore, the initial remaining times were generated in a fashion that guarantees that each aircraft must undergo at least one maintenance check during the planning horizon. In the following, we refer to each instance by Lij where i 2 f1; 2; 3g represents the flight network and j 2 f1; 2; 3g refers to an initial aircraft remaining time scenario.

42

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

Table 5 Performance of VLNS on Basdere and Bilge’s instances. Instance

Model PM

11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

VLNS

Ratio

Z⁄

Time (PM)

ZVLNS

Time (VLNS)

0 10 0 50 0 95 0 50 0 0 35 10 80 115 0 0 130 0 145 120

14.49 3691.87 73.57 99.46 40.93 99.56 15.22 20.79 839.25 735.73 107.74 743.66 299.25 107.23 15.85 2175.59 333.12 664.73 163.48 920.19

0 10 0 50 0 95 0 50 0 0 35 10 80 115 0 0 130 0 145 120

19.43 26.06 20.38 36.09 78.71 35.74 48.49 25.6 84.77 134.26 75.41 76.04 38.62 33.49 70.36 31.44 18.49 87.35 39.4 33.13

1.34 0.01 0.28 0.36 1.92 0.36 3.19 1.23 0.10 0.18 0.70 0.10 0.13 0.31 4.44 0.01 0.06 0.13 0.24 0.04

Table 6 Characteristics of flight networks. Network

Aircraft

Flights

Stations

L1 L2 L3

13 15 16

230 218 226

25 30 26

Table 7 Performance of VLNS on large instances. Instance

ZVLNS

Time (VLNS)

LB

Percentage deviation

L11 L12 L13

2175 2360 1745

53.82 57.13 139.44

2175 2340 1675

0.00 0.85 4.18

L21 L22 L23

3250 2015 2860

45.26 57.3 81.58

3115 1905 2810

4.33 5.77 1.78

L31 L32 L33

1920 1530 2360

74.04 303.89 57.79

1855 1530 2190

3.50 0.00 7.76

We found that the proposed model failed to solve any of these instances after setting a 5 h CPU time limit. Therefore, we compared the heuristic solutions with the values of the lower bounds that were computed using Proposition 1. The results are provided in Table 7. In this table, we report for each instance the heuristic value ðZ VLNS Þ, the CPU time of VLNS ðTimeðVLNSÞÞ, the value of the lower bound ðLBÞ, and the percentage gap 100  ZVLNSLBLB. We see from Table 7 that VLNS exhibits a good performance. Indeed, we found that the largest CPU time is about 5 min and the average gap with respect to lower bound is 3.13%. Furthermore, two proven optimal solutions were obtained. Also, these results provide evidence that the relaxed model yields tight lower bounds. 6. Conclusion In this paper, we have investigated the OAMRP. This short-term planning problem is significant to airline companies as it directly impacts the fleet availability, safety, and profitability. We showed that the subset-sum problem can be polynomially reduced to the OAMRP, and thereby ascertain that this latter is NP-hard. We presented a mixed-integer programming model that optimally assigns aircraft to scheduled flight legs and schedules maintenance checks so that the total legal remaining flying time is minimized. To effectively solve the model, a graph preprocessing procedure along with valid inequalities were developed. We provided the results of computational experiments that were carried out on benchmark instances from the

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

43

literature and found that instances with up to 354 flights and 8 aircraft are optimally solved. Furthermore, we showed that a relaxation of the proposed model yields tight lower bounds. Also, we showed that the proposed exact model can be embedded within a variable neighborhood search heuristic. The performance of the proposed VLNS was assessed on large-scale instances based on real-world flight networks. We found that the heuristic consistently delivers near-optimal solutions for all instances while requiring modest CPU times. For future research, the proposed model could be embedded within an integrated model which further accommodates crew pairing considerations, with the objective of delivering robust maintenance feasible aircraft routes and crew pairings. This is a topic of our ongoing research. Acknowledgments This research was made possible by NPRP Grant No. NPRP 06-818-5-094 from the Qatar National Research Fund (a member of The Qatar Foundation). The statements made herein are solely the responsibility of the authors. The authors thank Dr. Ümit Bilge and Dr. Mehmet Basßdere for providing the test instances. Appendix A Parameters, sets and decision variables Parameters dj Duration of flight leg j D Maximum number of days between two consecutive maintenance checks gk Initial accumulated number of days since last maintenance check of aircraft k F Maximum flying time fk Initial accumulated flying time of aircraft k T Maximum number of takeoffs between two consecutive maintenance checks hk Initial accumulated number of takeoffs since last maintenance check of aircraft k bij Binary constant that takes value 1 if arc ði; jÞ 2 A is an overnight connection cd Weight of the remaining number of days cf Weight of the remaining legal flying times ct Weight of the remaining number of takeoffs Sets A Set of arcs V Set of nodes AM Set of maintenance arcs AM Set of non-maintenance arcs K Set of aircraft L Set of flight nodes LM Set of maintenance nodes LM Set of non-maintenance nodes d Set of arcs that are incoming to node j j dþ Set of arcs that are outgoing from node j j fsg Source node Sink node ft g fsk g Node that represents the initial location of aircraft k Decision variables xij Binary variable which takes 1if arc ði; jÞ 2 A is selected, and 0 otherwise yj Binary variable which takes 1 if a maintenance check is scheduled immediately before flight j, and 0 otherwise uj Continuous variable that represents the cumulative flying time, since the last maintenance check, of aircraft serving flight j qj Continuous variable that is equal to the remaining flying time of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise vj Continuous variable that represents the cumulative number of takeoffs, since the last maintenance check, of aircraft serving flight j kj Continuous variable that is equal to the remaining number of takeoffs of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise wj Continuous variable that represents the cumulative number of days, since the last maintenance check, of aircraft serving flight j uj Continuous variable that is equal to the remaining number of days of the aircraft that is assigned to leg j 2 LM if a maintenance check is scheduled immediately before the departure of j, and 0 otherwise

44

N.A. Al-Thani et al. / Transportation Research Part C 72 (2016) 29–44

References Afsar, H.M., Espinouse, M.L., Penz, B., 2006. A two-step heuristic to build flight and maintenance planning in a rolling-horizon. International Conference on Service Systems and Service Management, vol. 2. IEEE, pp. 1251–1256. Ahuja, R.K., Ergun, Ö., Orlin, J.B., Punnen, A.P., 2002. A survey of very large-scale neighborhood search techniques. Discrete Appl. Math. 123, 75–102. Aloulou, M.A., Haouari, M., Mansour, F.Z., 2013. A model for enhancing robustness of aircraft and passenger connections. Transp. Res. Part C: Emerg. Technol. 32, 48–60. Andrés, J., Cadarso, L., Marín, Á., 2015. Maintenance scheduling in rolling stock circulations in rapid transit networks. Transp. Res. Procedia 10, 524–533. Ball, M., Barnhart, C., Nemhauser, G.L., Odoni, A., 2007. Air transportation: irregular operations and control. In: Barnhart, C., Laporte, G. (Eds.), Handbook in Operations Research and Management Science, vol. 14. Elsevier. Barnhart, C., Belobaba, P., Odoni, A.R., 2003. Applications of operations research in the air transport industry. Transp. Sci. 37, 368–391. Barnhart, C., Boland, N.L., Clarke, L.W., Johnson, E.L., Nemhauser, G.L., Shenoi, R.G., 1998. Flight string models for aircraft fleeting and routing. Transp. Sci. 32, 208–220. Basßdere, M., Bilge, Ü., 2014. Operational aircraft maintenance routing problem with remaining time consideration. Eur. J. Oper. Res. 235, 315–328. Clarke, L., Johnson, E., Nemhauser, G., Zhu, Z., 1997. The aircraft rotation problem. Ann. Oper. Res. 69, 33–46. Dunbar, M., Froyland, G., Wu, C.L., 2012. Robust airline schedule planning: minimizing propagated delay in an integrated routing and crewing framework. Transp. Sci. 46 (2), 204–216. Gavranis, A., Kozanidis, G., 2015. An exact solution algorithm for maximizing the fleet availability of a unit of aircraft subject to flight and maintenance requirements. Eur. J. Oper. Res. 242, 631–643. Giacco, G.L., Carillo, D., D’Ariano, A., Pacciarelli, D., Marín, Á.G., 2014. Short-term rail rolling stock rostering and maintenance scheduling. Transp. Res. Procedia 3, 651–659. Gopalan, R., Talluri, K.T., 1998. The aircraft maintenance routing problem. Oper. Res. 46, 260–271. Haouari, M., Shao, S., Sherali, H.D., 2013. A lifted compact formulation for the daily aircraft maintenance routing problem. Transp. Sci. 47, 508–525. Gürkan, H., Gürel, S., Aktürk, M.S., 2016. An integrated approach for airline scheduling, aircraft fleeting and routing with cruise speed control. Transp. Res. Part C: Emerg. Technol. 68, 38–57. Kabbani, N.M., Patty, B.W., 1992. Aircraft routing at American airlines. In: Proceedings of the 32nd Annual Symposium of AGIFORS, Budapest, Hungary. Lai, Y.C., Fan, D.C., Huang, K.L., 2015. Optimizing rolling stock assignment and maintenance plan for passenger railway operations. Comput. Ind. Eng. 85, 284–295. Lan, S., Clarke, J.P., Barnhart, C., 2006. Planning for robust airline operations: optimizing aircraft routings and flight departure times to minimize passenger disruptions. Transp. Sci. 40 (1), 15–28. Liang, Z., Chaovalitwongse, W.A., 2013. A network-based model for the integrated weekly aircraft maintenance routing and fleet assignment problem. Transp. Sci. 47, 493–507. Liang, Z., Chaovalitwongse, W.A., Huang, H.C., Johnson, E.L., 2011. On a new rotation tour network model for aircraft maintenance routing problem. Transp. Sci. 45, 109–120. Maher, S.J., Desaulniers, G., Soumis, F., 2014. Recoverable robust single day aircraft maintenance routing problem. Comput. Oper. Res. 51, 130–145. Mak, V., Boland, N., 2000. Heuristic approaches to the asymmetric travelling salesman problem with replenishment arcs. Int. Trans. Oper. Res. 7, 431–447. Martello, S., Toth, P., 1990. Knapsack Problems: Algorithms and Computer Implementations. John Wiley & Sons. Mladenovic´, N., Hansen, P., 1997. Variable neighborhood search. Comput. Oper. Res. 24, 1097–1100. Orhan, I., Kapanoglu, M., Karakoc, T.H., 2012. Concurrent aircraft routing and maintenance scheduling using goal programming. J. Faculty Eng. Archit. Gazi Univ. 27, 11–26. Samà, M., D’Ariano, A., D’Ariano, P., Pacciarelli, D., 2014. Optimal aircraft scheduling and routing at a terminal control area during disturbances. Transp. Res. Part C: Emerg. Technol. 47, 61–85. Sarac, A., Batta, R., Rump, C.M., 2006. A branch-and-price approach for operational aircraft maintenance routing. Eur. J. Oper. Res. 175, 1850–1869. Shao, S., Sherali, H.D., Haouari, M., in press. A novel model and decomposition approach for the integrated airline fleet assignment, aircraft routing, and crew pairing problem. Transp. Sci. (in press) Sriram, C., Haghani, A., 2003. An optimization model for aircraft maintenance scheduling and re-assignment. Transp. Res. Part A: Policy Pract. 37, 29–48. Talluri, K.T., 1998. The four-day aircraft maintenance routing problem. Transp. Sci. 32, 43–53. Yan, C., Kung, J., n and Kung, forthcoming. Robust aircraft routing. Transp. Sci. (forthcoming)