Exact and Heuristic Techniques for Solving the Aircraft Rotation Problem Roberto Pontes* Abilio Lucena Lucidio Cabral Rio-Sul Linhas Aéreas Universidade Federal do Rio de Janeiro - UFRJ Universidade Federal da Paraiba - UFPB rpontesbr@yahoo.com.br, abiliolucena@globo.com, lucidio@uol.com.br May 15, 2002 Abstract The Aircraft Rotation Problem refers to the designation of each airplane available at airlines companies such that all planned flights are covered. This is a light constrained problem since any aircraft can be assigned to an unlimited quantity of duty work. However, there are many lower cost solutions that can be obtained by simply adjusting the time of departure of a subset of flight legs, or even positioning some aircraft by executing ferry flights between two near airports. We describe a mathematical model that indicates the minimal changes to be done in time departure and empty flights designations in order to decrease the total number of required aircraft. An algorithm based on GRASP metaheuristic is also presented, for solving very large problems, and some computational results are presented for a real world problem at Rio-Sul Brazilian Airlines. Keywords: Topic Areas: Aircraft Routing, Aircraft Rotation, GRASP Global Optimization, Heuristics, Integer Programming, Resource Allocation, Scheduling. * Current Address: Rio-Sul Linhas Aéreas. Av Rio Branco 85 / 6° Andar. Rio de Janeiro, RJ. 20040-004. Brazil. 1 Introduction Aircraft planning consists of several interconnected problems that are currently solved separately. These include market modeling [12], fleet assignment [2] [10] [11], aircraft rotation [6] [8] [9], crew pairing and scheduling [1] [4] [6]. In this paper, the Aircraft Rotation Problem (ARP) [5] [7] is addressed. This problem is normally tackled at the initial stages of the overall planning process and uses as input the output from the Fleet Assignment Problem (FAP). Several approaches have been applied to ARP. In [9] a constructive algorithm conducted by the GRASP metaheuristic is presented. Exact methods can be found in [6][7][8], and a dynamic programming strategy is showed in [11]. In this work, both heuristic and exact approaches are addressed. It is assumed that detailed flight planning is not yet complete, and that there is still room for marginal changes, say in the suggested departure times of some the flights. Since time slots for early morning flights are very narrow, not all flights are candidates for changing suggested departure times. Furthermore, amongst candidate flights, time windows may vary in width. It is also assumed that, whenever it is economically attractive, new flight legs can be created to allow the repositioning of aircraft. As one shall see this may represent having an aircraft free for a whole week in exchange for a possibly unprofitable flight leg. This paper is organized as follows. In Section 2, ARP is described in greater detail. In Section 3, geographic and temporal connections constraints required to form a connection network are discussed. In Section 4, an Integer Programming (IP) formulation of the problem is presented. This formulation has shown to be capable of solving, under a commercial IP solver, small to medium size instances of ARP. In Section 5, a GRASP based procedure is described to solve larger instances of the problem. In Section 6, computational results are presented for real world instances of the problem coming from Rio-Sul Brazilian Airlines. Finally, in Section 7, some conclusions and suggestions for future work close the paper. 2 Problem Description Aircraft Rotation is one of the most important steps in the process of defining the final set of flight legs that will be operated by an airline company. After a fleet is assigned a set of flight legs, one must group together legs that will be operated by a same aircraft. Basically, the problem consists in given a set of flights and a set of aircraft assigns this last resource to all flights so those ground time requirements for each airport are met. This is to be accomplished with available resources being used at minimum cost. Flights must normally be connected in such a way that they do not violate certain related constraints. These constraints are geographical and temporal in nature. For example, the next flight leg in a rotation must have the same departure location as the arrival location of the previous one. Additionally, the time between consecutive flights must fall within a certain limit, called minimal connection time or ground connection time. In this study, some of these general constraints are relaxed to allow the connection of flight legs that, in principle, could not be connected. This is to be achieved through the use of penalties and may lead to a reduction in the number of aircraft that would otherwise be required to covering all flight legs. Another important aspect relates with maintenance constraints. It is well known that aircraft must undergo maintenance checks before a given limit on the amount of time flown since the last check is reached. Opportunities to perform such checks only occur at some of the potential connections available. Thus a sequence of flight legs must be constructed in such a way that this constraint is not violated. In order to easily incorporate the constraint in the framework being proposed, we shall assume that rotations are assigned to non-specific aircraft. In this way, if a maintenance planner must stop a given aircraft at a specific location, a dummy flight leaving and returning to that location should be created and added to the set of flight legs to be covered. Finally, the rotation that is to contain that task should be assigned to the specific desired aircraft. 3 Towards Global Optimization The geographic and temporal connection constraints in ARP induce the creation of a network of feasible connections. In this network nodes represent flight legs and arcs represent legal connections between flights. The problem can thus be formulated as a Minimum Cost Network Flow Problem. Given the possibilities of changes in the departure times of flights [10] and also the permission to create repositioning flights, an enlarged network must be defined. This network is constructed as follows: Natural Connection Arcs (Type 1)– These are the arcs that connect flights which obey suggested time and geographical constraints. Such arcs are associated with connections requiring no suggested departure time changes. They do not connect repositioning flights either. The cost of a type 1 arc is zero; Time Changes Arcs (Type 2) – Although the inbound and the outbound flight legs in these arcs originate at a same location, the ground time available (measured as the difference between the suggested departure time for the later flight and the expected arrival time for the earlier one) is not sufficient to allow the connection. Therefore, if such an arc is used it implies that suggested departure times for either flights must have been changed. A type 2 arc cost equals the sum of the deviations (in minutes) from the suggested departure times involved; Repositioning Flight Arcs (Type 3) – These arcs represent connections between two flights arriving and departing from different airports. However, sufficient time exists (even allowing for ground time requirements) for a repositioning flight between the two locations. The cost of a type 3 arc equals the duration of its repositioning flight; Repositioning Flight plus Time Changes Arcs (Type 4) – These arcs represent connections that will need a repositioning flight plus time departure changes. A type 4 arc cost equals the duration of the repositioning flight plus the deviations from the suggested departure times; Arcs from Source Node (Type 5) – These arcs, which point outwards of a dummy source node, are used to model the number of aircraft required to solve the problem. Every type 5 arc has a cost of 1000 minutes, which is the expected daily utilization of an aircraft. Arcs to Sink Node (Type 6) – These are virtual arcs used to close rotations initiated at the source node. Type 6 arcs have a cost of zero. Denote by D=(V,A) the ARP network defined above. Vertex set V {vi : i I } of D is indexed by I {1,2,..., n 1, n 2} so that v n 1 and v n 2 identify, respectively, the source and the sink nodes. Remaining vertices are associated with the n original flight legs. Costs {cij : (i, j ) A} , as introduced above, are associated with every one of the arcs in the network. Whenever applicable one may use the index set I I \ {n 1, n 2} for vertices associated with the original flight legs. 4 An ARP Formulation Let {xij : (i, j ) A} be a set of binary 0-1 variables used to control the inclusion ( xij 1) or the exclusion ( xij 0) of an arc (feasible connection) between vertices (flight legs) vi and v j . Real valued variables i and i , i I are used to model, respectively, deviation from suggested departure time and the norm of this deviation for (flight leg) vi . These variables must therefore obey i i i and 0 i i , where i is the maximum allowed deviation (in either direction) from the suggested departure time for the flight. Finally, suggest departure time are given by {si : i I } A valid formulation for ARP is given by: 4.1 Objective Function Minimize c ( i , j )A 4.2 Constraints ij xij Flights Operation Guarantees. x ij 1, i I x ij 1, j I ( i , j ) A ( i , j ) A Connection Feasibility: si + ti xij - ti (1- xij )+ di £ s j + d j "(i, j) Î A Module of Deviation from suggested departure time i i i i i I i I Limits for the Variables i i i i I 0 i i xij Î{0,1} 5. i I . "(i,j)ÎA The Constructive Algorithm The formulation introduced in this paper was able to solve exactly ARP instances involving about 1000 flight legs. This was achieved in a very straightforward manner through the direct use of a Mixed Integer Programming (MIP) commercial solver XPRESS-MP. Instances tested come from one of the smaller fleets at Rio Sul Airlines, operating over a time horizon of one week. However, solutions are required at Rio Sul Airlines for much larger ARP instances arising from the weekly operation of some of the company’s larger fleets. Alternatively, they might also be associated with smaller fleets operating over a time horizon in excess of one week. The company has thus requested a heuristic algorithm to tackle these applications. Amongst the different candidate metaheuristics previously used in the company, GRASP was selected for the task. Details of the proposed algorithm follow. In graph theoretical terms, a feasible ARP solution consists of a set of vertex disjoint paths in D, each one originating at source vertex v n 1 and ending at sink vertex v n 2 , and such that no vertex in V V \ {v n 1 , v n 2 } is left unvisited. Our heuristic constructs one path a time in a randomized greedy way. 5.1 Initializing and Closing a Path A new path is initialized by choosing an arc (v n 1 , v j ) A , where v j is an yet unvisited vertex in V with the earliest suggested departure time. This path will eventually be closed (i.e. extended to vertex v n 2 when no yet unvisited visited vertex in V exists to extend it. 5.2 Selecting an Arc to Extend the Path Denote by vi V the end vertex of the path being extended. Accordingly, denote by Vi V the set of all vertices v j V for which and arc (vi , v j ) exists in A. The set of candidate arcs (to extend the path) is thus given by A {( vi , v j ) A : v j Vi } . Arc set A can be partitioned into four sets in accordance with the different arc types defined in the previous section. Subset Ai1 A is for type 1 arcs. Accordingly, Ai 2 , Ai3 and Ai 4 are respectively for arcs of types 2, 3, and 4. An arc is chosen to extend the path by firstly drawing one of the sets Ai1 , Ai 2 , Ai3 , or Ai 4 with probabilities 0.79, 0.16, 0.04 and 0.01, respectively. 5.3 Sorting Arc Sets and Choosing an Arc After an arc set is selected, one of its components must be chosen to extend the path. This process is conducted by firstly sorting arcs in the chosen set. Arc sets are sorted under different criteria. Arcs in set Ai1 are sorted in ascending order of suggested departure times for the vertices (flight legs) they point to. Arcs in set Ai 2 are sorted in an ascending order of their deviation from suggested departure times for the vertices they point to. Arcs in set Ai3 are sorted in an increasing order of the duration of their repositioning flights. Finally, arcs in set Ai 4 are sorted in an increasing order of magnitude of the sum of the duration of their repositioning flights plus deviation from suggested departure times. Once the chosen set is sorted, a candidate list with their first 30% elements is formed. An arc to extend the path is then randomly chosen from the candidate list. 5.4 Closing a Path A path is closed when no vertex other than vn 2 can be used to expand it. 5.5 Stopping Conditions When no more paths can be created, a feasible ARP solution has been generated. If the cost of this solution improves on the best previously obtained, best solution generated is updated. The process is to be continued until some time or iterations count criteria is met. 6. Computational Results For the necessary tests we chose a small daily network flight from Rio-Sul Airlines, in order to allow running both exact and heuristic approaches. All data is published in appendix A to D to the present text. Doing so, we tried to make this study reproducible to anyone who desires to submit to other models or heuristics. All tests run on a PC Pentium 650 MHz and 512 MB of RAM. Algorithms were written in straight C and the XPRESSMP version 12 was used to solve the integer model. The daily flights group is composed by 107 regular flights. All possible arcs and constraints generation consumed 200 seconds. The LP relaxation of the problem was found in 12 seconds and the branch and bound algorithm found the integer solution in 300 seconds. The heuristic algorithm run for 60 minutes. The best sub-optimal solution was found in 384 seconds. All intermediate solutions are shown in Table 1: Objective Value 17.010 17.008 17.007 16.544 16.319 16.313 16.260 16.240 16.184 16.137 Time (sec) 2 3 29 47 51 96 159 163 277 384 For this instance our approach show that we can save 4 aircraft simply creating 2 new flights between two near airports and changing 5 departure times involving only 11 minutes in the total, which represents a great improvement in relation to solution in which departure time is fixed. The flights network is presented in Appendix ‘A’; ground times are fixed in 20 minutes, except for airports SDU, CGH and BSB, where required time is 29 minutes. Time flight between two airports is shown in appendix ‘B’. 7. Conclusions and Future Research Aircraft are one of the most expensive resources in airline industry, and so, all planning should be done around its economy. Because of combinatorial explosion, all problems that precede aircraft rotation must be solved separately, however, it is acceptable that some corrections of planing should be done when solving this part of the problem. Some scenarios obtained in this phase may help planners to make decisions and correct previous decisions. In that way, allowing changes in flights as those suggested in the present work can guarantee great savings for the airline company. The presented study of case shows that we can save 4 aircraft simply creating 2 new flights between two near airports and changing 5 departure times involving only 13 minutes in the total. Because in this stage we have not fixed the flight network, we may think using ferry flights as commercial flights, transporting passengers. Doing so, the solution becomes more interesting, because we can use the original flights with little changes in its time schedule, adding two new regular flights and getting four aircraft savings. That is really a great effect with a reduced effort to obtain it. The adoption of two approaches, exact and heuristics, seems always to be important when dealing with combinatorial optimization, because of its unforeseeable behavior. The algorithm guided by GRASP metaheuristic has reached very good solutions in a reasonable time, and make the system reliable for future challenges. As future work a local search procedure will be incorporated to improve the solution built at the final of a GRASP iteration. For future research, efforts have been done to idealize a complex model for solving a complete flight planning. The idea is to group the three phases, marketing planning, fleet assignment and aircraft rotation in a unique step. Planners will create as many flights they want with a respective degree of importance and a model will maximize those needs utilizing available aircraft number in each fleet. References [1] Klabjan, D. Johnson, E. Nemhauser, G. “ Solving Large Airline Crew Scheduling Problems: Random Pairing Generation and Strong Branching” Technical Report, Georgia Institute of Technology, 1999. [2] Götz S, Grothklags, Kliewer G and Tschoke S. "Solving the Weekly Fleet Assignment Problem for Large Airlines", III Metaheuristics International Conference, 1999. [3] Rezende, M. “ Greedy Randomized Adaptative Search Procedures (GRASP) ”. Technical Report, ATT Labs Research, 1998. [4] Rubin, J. “ A Technique for the Solution of Massive Set Covering Problems with Application to Airline Crew Scheduling”. Transportation Science, 1973. [5] Clarke L, Johnson E, Nemhauser G, Zhu ZX, “The Aircraft Rotation Problem”, Annals of Operations Research 69: 33-46 1997. [6] Cordeau JF, Stojkovic G, Soumis F, Desrosiers J,”Benders decomposition for simultaneous aircraft routing and crew scheduling”, Transportation Science 35: (4) 375-388, Nov. 2001. [7] Gopalan R, Talluri KT, “Mathematical models in airline schedule planning: A survey”, Annals of Operations Research 76: 155-185, Feb. 1998 . [8] Bartholomew-Biggs MC, Parkhurst SC, Wilson SP, “Using DIRECT to solve an aircraft routing problem”, Computational Optimization and Applications, 21: (3) 311323 Mar. 2002. [9] Grosche T, Heinzl A, Rothlauf F., “A conceptual approach for simultaneous flight schedule construction with genetic algorithms”, Applications of Evolutionary Computing, Proceedings 2037: 257-267, 2001. [10] Rexing B, Barnhart C, Kniker T, Jarrah A, Krishnamurthy N.,” Airline fleet assignment with time windows”, Transportation Science 34: (1) 1-20 Feb. 2000. [11] Godfrey GA, Powell WB.,” An adaptive dynamic programming algorithm for dynamic fleet management, II: Multiperiod travel times”, Transportation Science 36: (1) 40-54 Feb. 2002. APPENDIX "A" – FLIGHTS NETWORK 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 SL166 SL155 SL330 SL595 SL596 SL533 SL280 SL587 SL520 JH559 SL406 SL419 SL542 SL408 JH345 SL589 JH502 SL281 SL521 SL532 SL510 SL544 SL331 SL409 SL543 SL590 SL336 SL597 SL522 SL150 SL511 JH503 SL545 SL470 SL523 JH342 JH500 SL147 JH340 SL591 SL402 SL471 SL390 SL564 SL151 SL563 SL272 SL282 SL508 JH501 SL480 SL283 SL337 SL347 08:00 08:32 08:34 08:40 08:44 08:50 08:52 09:00 09:02 09:04 09:06 09:16 09:28 09:30 09:30 09:58 10:02 10:08 10:16 10:20 10:22 10:32 10:40 11:00 11:00 11:06 11:16 11:30 11:32 11:42 11:50 12:02 12:04 12:28 12:46 13:00 13:02 13:10 13:22 13:30 13:38 13:54 13:56 13:58 13:58 14:00 14:12 14:22 14:56 14:58 15:30 15:42 15:46 16:00 08:31 10:33 09:59 11:11 10:39 10:01 09:43 10:01 09:47 10:35 09:55 11:03 10:31 10:21 12:23 11:01 11:33 10:59 11:01 11:31 11:13 11:33 12:11 11:49 12:03 12:44 15:05 13:27 12:17 13:33 12:41 13:33 13:05 13:19 13:31 15:45 14:33 18:03 18:25 14:57 15:33 14:39 15:41 14:59 15:59 15:01 15:51 15:13 15:41 16:29 16:21 16:37 19:29 16:45 GYN GYN CGH POA CGH BSB CGH PLU SDU BSB SDU FLN CGH SDU SSA PLU CGH CWB PLU PLU CGH CGH VIX CGH PLU CGH CGH POA SDU CGH CWB BSB PLU SDU PLU CGH CGH BSB CGH POA CGH CGH CGH CGH GYN PLU CGH CGH SDU BSB SDU CWB REC PLU BSB CGH VIX CGH POA PLU CWB CGH PLU CGH CGH CGH PLU CGH CGH CGH BSB CGH SDU BSB CWB PLU CGH SDU CGH POA REC CGH PLU GYN CGH CGH CGH CGH SDU SSA BSB BSB JPA CGH POA SDU FLN PLU CGH CGH SJP CWB PLU CGH CGH CGH CGH SDU 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100 101 102 103 104 105 106 107 SL598 SL568 SL403 SL273 SL391 JH343 SL481 JH506 SL405 SL569 SL152 JH546 SL572 SL482 JH341 SL592 JH507 SL528 JH550 SL537 SL576 SL573 SL599 JH547 SL153 SL483 SL412 SL529 SL584 SL514 JH344 SL577 SL536 JH551 SL332 SL492 SL586 SL530 SL515 SL593 SL585 SL518 SL413 SL407 SL167 SL531 JH558 SL493 SL333 SL588 SL594 SL154 SL418 16:00 16:02 16:08 16:10 16:12 16:12 17:00 17:02 17:14 17:32 17:44 17:56 17:58 18:30 18:50 18:54 19:00 19:02 19:04 19:22 19:26 19:34 19:46 20:00 20:04 20:08 20:10 20:14 20:26 20:30 20:48 21:02 21:04 21:04 21:20 21:30 21:30 21:34 21:45 21:52 22:04 22:16 22:22 22:24 22:42 22:48 22:56 23:02 23:04 23:06 23:18 23:22 23:32 17:55 17:03 17:59 17:51 17:55 18:57 17:45 18:33 19:57 18:33 19:35 19:27 18:59 19:21 00:19 20:45 20:31 19:47 20:35 20:33 20:27 20:35 21:41 21:31 22:05 20:53 21:29 20:59 21:27 21:21 23:39 22:03 22:13 22:35 22:31 22:21 22:31 22:19 22:37 23:19 23:05 23:07 23:31 23:09 23:13 23:33 00:27 23:47 00:15 00:07 01:57 01:13 01:19 CGH CGH POA SJP FLN SSA CGH CGH CGH PLU CGH CGH CGH SDU JPA CGH BSB SDU CGH BSB CGH PLU POA BSB GYN CGH CGH PLU CGH CGH CGH PLU PLU BSB CGH SDU CGH SDU CWB POA PLU CGH FLN CGH BSB PLU CGH CGH VIX CGH CGH CGH CGH POA PLU CGH CGH CGH CGH SDU BSB CGH CGH GYN BSB PLU CGH CGH POA CGH PLU BSB PLU PLU CGH CGH CGH CGH SDU FLN SDU PLU CWB SSA CGH BSB CGH VIX CGH PLU PLU CGH CGH CGH CWB CGH SDU GYN SDU BSB SDU CGH PLU POA GYN FLN APPENDIX "B" – FLIGTH TIME BETWEEN AIRPORTS BSB BSB BSB CGH CGH CGH CWB CWB CWB FLN FLN GYN GYN JPA JPA PLU POA REC SDU SJP – – – – – – – – – – – – – – – – – – – – CGH JPA SDU CWB PLU SJP GYN REC VIX POA SSA POA SSA REC VIX SJP SDU SDU SJP VIX 091 197 107 051 058 049 114 283 125 042 225 173 143 013 181 067 129 215 079 110 BSB BSB BSB CGH CGH CGH CWB CWB FLN FLN FLN GYN GYN JPA PLU PLU POA REC SDU SSA – – – – – – – – – – – – – – – – – – – – CWB PLU SJP FLN POA SSA JPA SDU GYN REC VIX REC VIX SDU POA SSA SJP SJP SSA VIX 125 071 066 105 097 171 293 078 142 300 136 210 118 226 155 113 119 242 130 097 BSB BSB BSB CGH CGH CGH CWB CWB FLN FLN GYN GYN JPA JPA PLU PLU POA REC SDU – – – – – – – – – – – – – – – – – – – FLN POA SSA GYN REC VIX PLU SJP JPA SDU JPA SDU PLU SJP REC VIX SSA SSA VIX 152 185 125 095 246 087 095 060 311 087 216 109 198 251 187 044 267 075 048 BSB BSB BSB CGH CGH CWB CWB CWB FLN FLN GYN GYN JPA JPA PLU POA POA REC SJP – – – – – – – – – – – – – – – – – – – GYN REC VIX JPA SDU FLN POA SSA PLU SJP PLU SJP POA SSA SDU REC VIX VIX SSA 031 191 109 255 049 028 062 208 114 088 076 054 352 085 045 342 177 169 169 APPENDIX "C" – OPTIMAL STANDARD AIRCRAFT ROTATION Objective Value: 20.000 Route SL406 SL409 SL470 SL471 SL480 JH506 SL537 SL536 SL167 01 09:06 11:00 12:28 13:54 15:30 17:02 19:22 21:04 22:42 09:55 11:49 13:19 14:39 16:21 18:33 20:33 22:13 23:13 SDU CGH SDU CGH SDU CGH BSB PLU BSB CGH SDU CGH SDU CGH BSB PLU BSB GYN Route SL520 SL521 SL522 SL523 SL508 SL569 SL584 SL585 02 09:02 10:16 11:32 12:46 14:56 17:32 20:26 22:04 09:47 11:01 12:17 13:31 15:41 18:33 21:27 23:05 SDU PLU SDU PLU SDU PLU CGH PLU PLU SDU PLU SDU PLU CGH PLU CGH Route SL587 SL544 SL545 SL402 SL403 JH550 JH551 SL588 03 09:00 10:32 12:04 13:38 16:08 19:04 21:04 23:06 10:01 11:33 13:05 15:33 17:59 20:35 22:35 00:07 PLU CGH PLU CGH POA CGH BSB CGH CGH PLU CGH POA CGH BSB CGH PLU Route SL419 SL564 SL347 SL528 SL529 SL530 SL531 04 09:16 13:58 16:00 19:02 20:14 21:34 22:48 11:03 14:59 16:45 19:47 20:59 22:19 23:33 FLN CGH PLU SDU PLU SDU PLU CGH PLU SDU PLU SDU PLU SDU Route JH345 SL282 SL283 SL405 SL514 SL515 SL594 05 09:30 14:22 15:42 17:14 20:30 21:45 23:18 12:23 15:13 16:37 19:57 21:21 22:37 01:57 SSA CGH CWB CGH CGH CWB CGH CGH CWB CGH CGH CWB CGH POA Route SL166 JH559 SL590 SL591 SL598 SL599 SL518 06 08:00 09:04 11:06 13:30 16:00 19:46 22:16 08:31 10:35 12:44 14:57 17:55 21:41 23:07 GYN BSB CGH POA CGH POA CGH BSB CGH POA CGH POA CGH CWB Route SL330 SL331 JH342 JH343 SL576 SL577 SL493 07 08:34 10:40 13:00 16:12 19:26 21:02 23:02 09:59 12:11 15:45 18:57 20:27 22:03 23:47 CGH VIX CGH SSA CGH PLU CGH VIX CGH SSA CGH PLU CGH SDU Route SL595 SL150 SL151 SL481 SL482 SL412 SL413 08 08:40 11:42 13:58 17:00 18:30 20:10 22:22 11:11 13:33 15:59 17:45 19:21 21:29 23:31 POA CGH GYN CGH SDU CGH FLN CGH GYN CGH SDU CGH FLN CGH Route SL155 SL336 SL337 SL483 SL492 JH558 09 08:32 11:16 15:46 20:08 21:30 22:56 10:33 15:05 19:29 20:53 22:21 00:27 GYN CGH REC CGH SDU CGH CGH REC CGH SDU CGH BSB Route SL596 SL597 SL390 SL391 SL592 SL593 10 08:44 11:30 13:56 16:12 18:54 21:52 10:39 13:27 15:41 17:55 20:45 23:19 CGH POA CGH FLN CGH POA POA CGH FLN CGH POA CGH Route SL533 SL543 JH500 JH507 SL332 SL333 11 08:50 11:00 13:02 19:00 21:20 23:04 10:01 12:03 14:33 20:31 22:31 00:15 BSB PLU CGH BSB CGH VIX PLU CGH BSB CGH VIX CGH Route SL542 SL563 SL568 SL573 SL586 12 09:28 14:00 16:02 19:34 21:30 10:31 15:01 17:03 20:35 22:31 CGH PLU CGH PLU CGH PLU CGH PLU CGH PLU Route JH502 JH503 JH546 JH547 SL407 13 10:02 12:02 17:56 20:00 22:24 11:33 13:33 19:27 21:31 23:09 CGH BSB CGH BSB CGH BSB CGH BSB CGH SDU Route SL280 SL281 JH340 JH341 14 08:52 10:08 13:22 18:50 09:43 10:59 18:25 00:19 CGH CWB CGH JPA CWB CGH JPA CGH Route SL589 SL152 SL153 SL154 15 09:58 17:44 20:04 23:22 11:01 19:35 22:05 01:13 PLU CGH GYN CGH CGH GYN CGH GYN Route SL510 SL511 SL572 16 10:22 11:13 CGH CWB 11:50 12:41 CWB CGH 17:58 18:59 CGH PLU Route 17 SL408 09:30 10:21 SDU CGH SL272 14:12 15:51 CGH SJP Route 19 JH501 14:58 16:29 BSB CGH JH344 20:48 23:39 CGH SSA Route 20 SL273 16:10 17:51 SJP CGH SL418 23:32 01:19 CGH FLN Route 18 SL532 10:20 11:31 PLU BSB SL147 13:10 18:03 BSB BSB APPENDIX "D" – OPTIMAL DYNAMIC AIRCRAFT ROTATION Objective Value: 16.129 Route SL280 SL281 NEW SL523 SL508 NEW JH546 JH547 SL518 01 08:52 10:08 11:28 12:46 14:56 16:01 17:56 20:00 22:16 09:43 10:59 12:29 13:31 15:41 17:02 19:27 21:31 23:07 CGH CWB CGH PLU SDU PLU CGH BSB CGH CWB CGH PLU SDU(+3) PLU CGH BSB CGH CWB Route SL589 SL150 SL151 SL481 SL528 SL529 SL492 JH558 04 09:58 11:42 13:58 17:00 19:02 20:14 21:30 22:56 11:01 13:33 15:59 17:45 19:47 20:59 22:21 00:27 PLU CGH GYN CGH SDU PLU SDU CGH CGH GYN CGH SDU PLU SDU CGH BSB Route SL330 SL331 SL282 SL283 SL572 SL573 SL586 07 08:34 10:40 14:22 15:42 17:58 19:34 21:30 09:59 12:11 15:13 16:37 18:59 20:35 22:31 CGH VIX CGH CWB CGH PLU CGH VIX CGH CWB CGH PLU CGH PLU Route SL520 SL521 SL522 SL563 SL598 SL599 SL407 10 09:02 10:16 11:32 14:00 16:00 19:46 22:24 09:47 11:01 12:17 15:01 17:55 21:41 23:09 SDU PLU SDU PLU CGH POA CGH PLU SDU PLU CGH POA CGH SDU Route JH345 SL402 SL403 SL514 SL515 SL154 13 09:30 13:38 16:08 20:30 21:45 23:22 12:23 15:33 17:59 21:21 22:37 01:13 SSA CGH POA CGH CWB CGH CGH POA CGH CWB CGH GYN Route SL155 SL336 SL337 JH344 16 08:32 11:16 15:46 20:48 10:33 15:05 19:29 23:39 GYN CGH REC CGH CGH REC CGH SSA Route SL408 SL409 SL470 SL471 SL480 SL405 SL584 SL585 SL418 02 09:30 11:00 12:28 13:54 15:30 17:14 20:26 22:04 23:32 10:21 11:49 13:19 14:39 16:21 19:57 21:27 23:05 01:19 SDU CGH SDU CGH SDU CGH CGH PLU CGH CGH SDU CGH SDU CGH CGH PLU CGH FLN(+2) Route SL587 SL544 SL545 SL564 SL347 SL482 SL483 SL530 SL531 03 09:00 10:32 12:04 13:58 16:00 18:30 20:08 21:34 22:48 10:01 11:33 13:05 14:59 16:45 19:21 20:53 22:19 23:33 PLU CGH PLU CGH PLU SDU CGH SDU PLU CGH PLU CGH PLU SDU CGH SDU PLU SDU Route SL166 JH559 SL590 SL591 SL152 SL153 SL594 05 08:00 09:04 11:06 13:30 17:44 20:04 23:18 08:31 10:35 12:44 14:57 19:35 22:05 01:57 GYN BSB CGH POA CGH GYN CGH BSB CGH POA CGH GYN CGH POA Route SL595 JH500 JH501 JH506 SL537 SL577 SL493 06 08:40 13:02 14:58 17:02 19:22 21:02 23:02 11:11 14:33 16:29 18:33 20:33 22:03 23:47 POA CGH BSB CGH BSB PLU CGH CGH BSB(-4) CGH BSB PLU CGH SDU Route SL596 SL597 SL390 SL391 SL576 SL536 SL167 08 08:44 11:30 13:56 16:12 19:26 21:04 22:42 10:39 13:27 15:41 17:55 20:27 22:13 23:13 CGH POA CGH FLN CGH PLU BSB POA CGH FLN CGH PLU BSB GYN Route JH502 JH503 SL568 SL569 JH550 JH551 SL588 09 10:02 12:02 16:02 17:32 19:04 21:04 23:06 11:33 13:33 17:03 18:33 20:35 22:35 00:07 CGH BSB CGH PLU CGH BSB CGH BSB CGH PLU CGH BSB CGH PLU Route SL542 SL543 JH342 JH343 SL412 SL413 11 09:28 11:00 13:00 16:12 20:10 22:22 10:31 12:03 15:45 18:57 21:29 23:31 CGH PLU CGH SSA CGH FLN PLU CGH SSA CGH FLN CGH Route SL533 SL532 SL147 JH507 SL332 SL333 12 08:50 10:20 13:10 19:00 21:20 23:04 10:01 11:31 18:03 20:31 22:31 00:15 BSB PLU BSB BSB CGH VIX PLU BSB(+1) BSB CGH VIX CGH Route SL419 SL272 SL273 SL592 SL593 14 09:16 14:12 16:10 18:54 21:52 11:03 15:51 17:51 20:45 23:19 FLN CGH SJP CGH POA CGH SJP CGH(+1) POA CGH Route SL406 SL510 SL511 JH340 JH341 15 09:06 10:22 11:50 13:22 18:50 09:55 11:13 12:41 18:25 00:19 SDU CGH CWB CGH JPA CGH(-2) CWB CGH JPA CGH APPENDIX "E" – GRASP SUBOPTIMAL DYNAMIC AIRCRAFT ROTATION Objective Value: 16.137 Route SL166 JH559 SL409 SL470 SL471 SL480 SL481 SL482 SL483 SL492 JH558 01 08:00 09:04 11:00 12:28 13:54 15:30 17:00 18:30 20:08 21:30 22:56 08:31 10:35 11:49 13:19 14:39 16:21 17:45 19:21 20:53 22:21 00:27 GYN BSB CGH SDU CGH SDU CGH SDU CGH SDU CGH BSB CGH SDU(+4) CGH SDU CGH SDU CGH SDU CGH BSB Route SL406 SL510 SL511 SL564 SL347 SL528 SL529 SL530 SL531 02 09:06 10:22 11:50 13:58 16:00 19:02 20:14 21:34 22:48 09:55 11:13 12:41 14:59 16:45 19:47 20:59 22:19 23:33 SDU CGH CWB CGH PLU SDU PLU SDU PLU CGH(-2) CWB CGH PLU SDU PLU SDU PLU SDU Route SL533 SL532 JH503 SL272 SL273 JH550 JH551 04 08:50 10:20 12:02 14:12 16:10 19:04 21:04 10:01 11:31 13:33 15:51 17:51 20:35 22:35 BSB PLU BSB CGH SJP CGH BSB Route SL280 SL281 JH500 JH501 SL405 SL584 SL585 07 08:52 10:08 13:02 14:58 17:14 20:26 22:04 09:43 10:59 14:33 16:29 19:57 21:27 23:05 Route SL520 SL589 JH340 JH341 SL514 SL515 SL594 10 09:02 09:58 13:22 18:50 20:30 21:45 23:18 Route SL419 NEW SL563 SL568 SL569 JH344 Route JH502 SL147 JH507 SL586 Route SL521 SL522 SL523 SL508 NEW SL572 SL573 SL418 03 10:16 11:32 12:46 14:56 16:01 17:58 19:34 23:32 11:01 12:17 13:31 15:41 17:02 18:59 20:35 01:19 PLU SDU PLU SDU PLU CGH PLU CGH SDU PLU SDU PLU CGH PLU CGH FLN PLU BSB(+1) CGH SJP(-1) CGH BSB CGH Route SL330 SL331 JH342 JH343 SL576 SL577 SL493 05 08:34 10:40 13:00 16:12 19:26 21:02 23:02 09:59 12:11 15:45 18:57 20:27 22:03 23:47 CGH VIX CGH SSA CGH PLU CGH VIX CGH SSA CGH PLU CGH SDU Route SL595 SL150 SL151 JH506 SL537 SL536 SL167 06 08:40 11:42 13:58 17:02 19:22 21:04 22:42 11:11 13:33 15:59 18:33 20:33 22:13 23:13 POA CGH GYN CGH BSB PLU BSB CGH GYN CGH BSB PLU BSB GYN CGH CWB CGH BSB CGH CGH PLU CWB CGH BSB CGH(+4) CGH PLU CGH Route SL587 SL544 SL545 SL402 SL403 SL412 SL413 08 09:00 10:32 12:04 13:38 16:08 20:10 22:22 10:01 11:33 13:05 15:33 17:59 21:29 23:31 PLU CGH PLU CGH POA CGH FLN CGH PLU CGH POA CGH FLN CGH Route SL542 SL543 SL282 SL283 SL152 SL153 SL154 09 09:28 11:00 14:22 15:42 17:44 20:04 23:22 10:31 12:03 15:13 16:37 19:35 22:05 01:13 CGH PLU CGH CWB CGH GYN CGH PLU CGH CWB CGH GYN CGH GYN 09:47 11:01 18:25 00:19 21:21 22:37 01:57 SDU PLU CGH JPA CGH CWB CGH PLU(-5) CGH(+4) JPA CGH CWB CGH POA Route SL155 SL590 SL591 SL598 SL599 SL518 11 08:32 11:06 13:30 16:00 19:46 22:16 10:33 12:44 14:57 17:55 21:41 23:07 GYN CGH POA CGH POA CGH CGH POA CGH POA CGH CWB Route SL596 SL597 SL390 SL391 SL592 SL593 12 08:44 11:30 13:56 16:12 18:54 21:52 10:39 13:27 15:41 17:55 20:45 23:19 CGH POA CGH FLN CGH POA POA CGH FLN CGH POA CGH 13 09:16 11:32 14:00 16:02 17:32 20:48 11:03 12:33 15:01 17:03 18:33 23:39 FLN CGH PLU CGH PLU CGH CGH PLU CGH PLU CGH SSA Route SL408 SL336 SL337 SL332 SL333 14 09:30 11:16 15:46 21:20 23:04 10:21 15:05 19:29 22:31 00:15 SDU CGH REC CGH VIX CGH REC CGH VIX CGH Route JH345 JH546 JH547 SL407 15 09:30 17:56 20:00 22:24 12:23 19:27 21:31 23:09 SSA CGH BSB CGH CGH BSB CGH SDU 16 10:02 13:10 19:00 21:30 11:33 18:03 20:31 22:31 CGH BSB BSB CGH BSB BSB CGH PLU