Minimizing the Pain in Air Transportation: Analysis of Performance and Equity in Ground Delay Programs A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy at George Mason University By Bengi Manley Master of Business Administration McNeese State University, 2001 Bachelor of Science Dokuz Eylul University, 1999 Director: Dr. Lance Sherry, Professor Department of Systems Engineering and Operations Research Summer Semester 2008 George Mason University Fairfax, VA c 2008 by Bengi Manley Copyright ° All Rights Reserved ii Dedication I dedicate this dissertation to my dear husband Ronald R. Manley III, my loving parents Perran and Nedim Mezhepoglu, and my supportive sister Sercin Mezhepoglu. iii Acknowledgments My thanks and appreciation belong first and foremost to my friends, family, and loved ones. They have stood tirelessly with me during this long endeavor and will remain my rock of support. My advisor, Dr. Lance Sherry, has always been confident in my eventual success at completing this task, and his perpetual optimism and council was exactly what I needed when I most needed it. Dr. George Donohue’s knowledge, experience, and direction not only helped to shape and refine this dissertation but also ultimately played a significant part in my new career path. Dr. John Shortle’s deep understanding of methodology helped me overcome several logical roadblocks without throwing up my hands in defeat. Dr. Michael Bronzini’s perspective of urban transportation gave me many insights into potential parallels and divergences between that system and the air transportation system. Dr. Andrew Loerch provided me with a golden ticket by assisting me in my entrance into the Center for Air Transportation System Research (CATSR) that has become what sometimes feels like a second home. Dr. Ariela Sofer’s and Dr. Karla Hoffman’s contributions can best be described as representing the bookends of my doctorate education. While Dr. Sofer pushed me to pursue a Ph.D. rather than a second Master’s degree, Dr. Hoffman educated me that, when all was said and done, I would have to be the one to dictate when I was finished with my studies. To Vivek Kumar, Maricel Medina, Guillermo Calderon-Meza and Jianfeng (Jeffrey) Wang, my fellow colleagues in the lab, your technical expertise and emotional support during the final months of this work have been invaluable. Dr. Danyi Wang’s friendship and playful prodding to finish this research provided me motivation and willpower during many sleepless nights. Mark Klopfenstein, Mike Brennan, Dennis Gallus, Kostas Stefanidis and Chris Ermatinger, my coworkers at Metron Aviation, have not only provided a welcoming work environment but also have contributed time and effort supplying me with much of the data that makes any conclusions drawn in this dissertation possible. Dr. Terry Thompson’s advise and assistance have helped me complete a wide range of finishing touches on this research and has earned him a much appreciated ”jack of all trades” role in my mind. You all have played a role in my life these long years and I will cherish it always. iv Table of Contents Page List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii ix List of Abbreviations . . . . Abstract . . . . . . . . . . . 1 Introduction . . . . . . 1.1 Airport Congestion . . . . xv xvi 1 1 Air Traffic Flow Management . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 . . . . . . . . . . . . 1.3 Trends in GDP use . . . 1.4 Problem Statement . . . 1.5 Contributions . . . . . . 2 Literature Review . . . . . . 2.1 Ground Delay Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 13 13 15 15 2.1.1 2.1.2 GDP Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GDP Slots and RBS Algorithm . . . . . . . . . . . . . . . . . . . . . 16 22 2.1.3 Substitutions and Cancellation (Airlines Response to GDP) . . . . . 27 2.1.4 Compression (GDP Response to Dynamic Information) . . . . . . . 29 Previous Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Priority Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 31 2.2.2 Literature on GDP Rationing Rules . . . . . . . . . . . . . . . . . . 36 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.1 GDP Rationing Rule Simulator . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.1.1 3.1.2 3.1.3 GDP Slot Allocation Module . . . . . . . . . . . . . . . . . . . . . . Airline Substitutions and Cancellations Module . . . . . . . . . . . . Compression Module . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 55 57 3.2 Performance and Equity Metrics . . . . . . . . . . . . . . . . . . . . . . . . 58 3.3 3.4 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 75 3.4.1 Input/Output Validation . . . . . . . . . . . . . . . . . . . . . . . . 75 3.4.2 Algorithm Inspection . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 v . . . . . . . . . . . . . . 2.2 3 . . . . . . . . . 4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1 Experiment 1: Performance and Equity Trade-off for Different GDP Ra- 81 tioning Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 4.1.1 Newark Liberty Airport (EWR) . . . . . . . . . . . . . . . . . . . . 88 4.1.2 LaGuardia Airport (LGA) . . . . . . . . . . . . . . . . . . . . . . . . 104 4.1.3 John F. Kennedy International Airport (JFK) . . . . . . . . . . . . 118 4.1.4 Experiment-1 Summary of Results . . . . . . . . . . . . . . . . . . . 131 Experiment 2: Sensitivity to the Airline Substitution Strategy . . . . . . . . 133 4.2.1 Newark Liberty Airport (EWR) . . . . . . . . . . . . . . . . . . . . 135 4.2.2 LaGuardia Airport (LGA) . . . . . . . . . . . . . . . . . . . . . . . . 143 4.2.3 John F. Kennedy International Airport (JFK) . . . . . . . . . . . . 151 4.2.4 Experiment-2 Summary of Results . . . . . . . . . . . . . . . . . . . 158 Experiment 3: Sensitivity to GDP Scope . . . . . . . . . . . . . . . . . . . . 160 4.3.1 Newark Liberty Airport (EWR) . . . . . . . . . . . . . . . . . . . . 160 4.3.2 LaGuardia Airport (LGA) . . . . . . . . . . . . . . . . . . . . . . . . 172 4.3.3 John F. Kennedy International Airport (JFK) . . . . . . . . . . . . 182 4.3.4 Experiment-3 Summary of Results . . . . . . . . . . . . . . . . . . . 191 5 Conclusions and Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A Appendix A: GDP-RRS Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 201 204 B Appendix B: Fuel Burn and Seats by Aircraft Type . . . . . . . . . . . . . . . . 293 C Appendix C: ARTCC Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 4.2 4.3 vi List of Tables Table Page 2.1 3.1 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comparison between Actual and Simulated Average Flight Delays for 2007 37 78 4.1 Experiment 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.2 Input 2007 GDP Statistics at EWR, LGA and JFK . . . . . . . . . . . . . 87 4.3 Actual EWR 2007 Planned GDP Tier Scope . . . . . . . . . . . . . . . . . . 90 4.4 Simulated EWR 2007 GDP Performance by Rationing Rule . . . . . . . . . 92 4.5 Summary of Results for EWR Experiment 1 . . . . . . . . . . . . . . . . . . 104 4.6 Actual LGA 2007 Planned GDP Tier Scope . . . . . . . . . . . . . . . . . . 105 4.7 Simulated LGA 2007 GDP Performance by Rationing Rule . . . . . . . . . 108 4.8 Summary of Results for LGA Experiment 1 . . . . . . . . . . . . . . . . . . 117 4.9 Actual JFK 2007 Planned GDP Tier Scope . . . . . . . . . . . . . . . . . . 120 4.10 Simulated JFK 2007 GDP Performance by Rationing Rule . . . . . . . . . . 122 4.11 Summary of Results for JFK Experiment 1 . . . . . . . . . . . . . . . . . . 131 4.12 Summary of Results for Experiment 1 . . . . . . . . . . . . . . . . . . . . . 132 4.13 Experiment 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 4.14 Summary of Results for EWR Experiment 2 . . . . . . . . . . . . . . . . . . 142 4.15 Summary of Results for LGA Experiment 2 . . . . . . . . . . . . . . . . . . 150 4.16 Summary of Results for JFK Experiment 2 . . . . . . . . . . . . . . . . . . 158 4.17 Summary of Results for Experiment 2 . . . . . . . . . . . . . . . . . . . . . 158 4.18 Experiment 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 4.19 Summary of Results for EWR Experiment 3 with NoWest+Canada Scope . 171 4.20 Summary of Results for EWR Experiment 3 with All+Canada Scope . . . . 172 4.21 Summary of Results for LGA Experiment 3 with NoWest+Canada Scope . 181 4.22 Summary of Results for LGA Experiment 3 with All+Canada Scope . . . . 181 4.23 Summary of Results for JFK Experiment 3 with NoWest+Canada Scope . . 191 4.24 Summary of Results for JFK Experiment 3 with All+Canada Scope . . . . 191 4.25 Summary of Results for Experiment 3 with NoWest+Canada Scope 192 vii . . . . 4.26 Summary of Results for Experiment 3 with All+Canada Scope . . . . . . . 193 5.1 Best GDP Rationing Rules by Airport and System Objective . . . . . . . . 200 5.2 The Best GDP Rationing Rule for Performance and Equity by Airport . . . 201 viii List of Figures Figure Page 1.1 Annual Air Transportation Demand and Capacity (1978-2007) . . . . . . . 1 1.2 Number of GDPs by Year (1999-2007) . . . . . . . . . . . . . . . . . . . . . 7 1.3 GDP Histogram (2000-2007) . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.4 The Number of GDPs by Airport (2000-2007) . . . . . . . . . . . . . . . . . 10 1.5 Trends in GDP Growth at EWR, LGA, JFK (2004-2007) . . . . . . . . . . 11 1.6 Average Planned GDP Duration (2004-2007) . . . . . . . . . . . . . . . . . 11 1.7 Average Number of Flights in GDP at EWR, LGA, and JFK (2004-2007) . 12 1.8 Average GDP Total Aircraft Flight Delay at EWR, LGA, and JFK (2004-2007) 12 1.9 The Trade-off between GDP Performance and GDP Equity . . . . . . . . . 13 2.1 Scheduled Arrivals to the Airport Before GDP . . . . . . . . . . . . . . . . 17 2.2 Scheduled Arrivals to the Airport After GDP . . . . . . . . . . . . . . . . . 17 2.3 Internal, Tier-1, Tier-2, and No–West Scopes for LGA . . . . . . . . . . . . 20 2.4 Six-West, Ten-West, and Twelve-West Scopes for LGA . . . . . . . . . . . . 20 2.5 2.6 2.7 GDP Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GDP Slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example Flight List before RBS . . . . . . . . . . . . . . . . . . . . . . . . 21 22 24 2.8 Example Flight List after RBS . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.9 Example Flight List before Substitution . . . . . . . . . . . . . . . . . . . . 27 2.10 Example Flight List after Substitution . . . . . . . . . . . . . . . . . . . . . 28 2.11 Example Flight List after Compression . . . . . . . . . . . . . . . . . . . . . 30 3.1 GDP Rationing Rule Simulator (GDP-RRS) . . . . . . . . . . . . . . . . . . 49 3.2 Steps in GDP Slot Assignment Module . . . . . . . . . . . . . . . . . . . . . 54 3.3 Steps in Airline Substitution and Cancellation Module . . . . . . . . . . . . 56 3.4 Steps in Compression Module . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.5 Total GDP Inequity as a Function of Equity . . . . . . . . . . . . . . . . . . 69 3.6 Differences between GDP-RRS and the Actual GDP Algorithm for Validation 76 4.1 The Relationship of GDP Metrics . . . . . . . . . . . . . . . . . . . . . . . . ix 84 4.2 4.3 Actual EWR 2007 Planned GDP Duration . . . . . . . . . . . . . . . . . . Histogram for Actual EWR 2007 Planned GDP Duration . . . . . . . . . . 88 89 4.4 Histogram for Actual EWR 2007 Planned GDP Distance Scope . . . . . . . 89 4.5 Actual EWR 2007 GDP Average Demand and Capacity for 15-minute bins 90 4.6 EWR GDP Performance by Rationing Rule . . . . . . . . . . . . . . . . . . 93 4.7 EWR Airline Equity due to Flight Delays . . . . . . . . . . . . . . . . . . . 95 4.8 EWR Airline Equity due to Fuel Burn . . . . . . . . . . . . . . . . . . . . . 96 4.9 EWR Passenger Equity by Rationing Rule . . . . . . . . . . . . . . . . . . . 97 4.10 EWR Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . 99 4.11 EWR Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . 100 4.12 EWR GDP Disutility with Performance Focus . . . . . . . . . . . . . . . . 101 4.13 EWR GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) 102 4.14 EWR GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 4.15 Actual LGA 2007 Planned GDP Duration . . . . . . . . . . . . . . . . . . . 4.16 Histogram for Actual LGA 2007 Planned GDP Duration . . . . . . . . . . . 104 105 4.17 Histogram for Actual LGA 2007 Planned GDP Distance Scope . . . . . . . 106 4.18 Actual LGA 2007 GDP Average Demand and Capacity for 15-minute bins . 106 4.19 LGA GDP Performance by Rationing Rule . . . . . . . . . . . . . . . . . . 109 4.20 LGA Airline Equity due to Flight Delays . . . . . . . . . . . . . . . . . . . 111 4.21 LGA Airline Equity due to Fuel Burn . . . . . . . . . . . . . . . . . . . . . 111 4.22 LGA Passenger Equity correlates with Cancellations . . . . . . . . . . . . . 112 4.23 LGA Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . . 114 4.24 LGA Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . . 114 4.25 LGA GDP Disutility with Performance Focus . . . . . . . . . . . . . . . . . 116 4.26 LGA GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) 116 4.27 LGA GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 4.28 Actual JFK 2007 GDP Planned Duration . . . . . . . . . . . . . . . . . . . 4.29 Histogram for Actual JFK 2007 Planned GDP Duration . . . . . . . . . . . 118 119 4.30 Histogram for Actual JFK 2007 Planned GDP Distance Scope . . . . . . . 119 4.31 Actual JFK 2007 GDP Average Demand and Capacity for 15-minute bins . 120 4.32 JFK GDP Performance by Rationing Rule . . . . . . . . . . . . . . . . . . . 123 4.33 JFK Airline Equity due to Flight Delays . . . . . . . . . . . . . . . . . . . . 125 x 4.34 JFK Airline Equity due to Fuel Burn . . . . . . . . . . . . . . . . . . . . . . 125 4.35 JFK Passenger Equity correlates with Cancellations . . . . . . . . . . . . . 126 4.36 JFK Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . . 128 4.37 JFK Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) . . . 128 4.38 JFK GDP Disutility with Performance Focus . . . . . . . . . . . . . . . . . 129 4.39 JFK GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) 130 4.40 JFK GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 4.41 Change in EWR GDP Performance due to different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 4.42 Change in EWR Airline Equity due to Flight Delays with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 4.43 Change in EWR Airline Equity due to Fuel Burn with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 4.44 Change in EWR Passenger Equity with different Airline Substitution Strategies138 4.45 Change in EWR Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . 139 4.46 Change in EWR Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . 140 4.47 EWR GDP Disutility with Performance Focus using the Passenger-based Substitutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.48 EWR GDP Disutility with Equity Focus using the Passenger-based Substi- 141 tutions (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . 141 4.49 EWR GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . 142 4.50 Change in LGA GDP Performance due to different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 4.51 Change in LGA Airline Equity due to Flight Delays with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 4.52 Change in LGA Airline Equity due to Fuel Burn with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 4.53 Change in LGA Passenger Equity with different Airline Substitution Strategies146 4.54 Change in LGA Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . xi 147 4.55 Change in LGA Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . 147 4.56 LGA GDP Disutility with Performance Focus using the Passenger-based Substitutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.57 LGA GDP Disutility with Equity Focus using the Passenger-based Substitu- 149 tions (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . 149 4.58 LGA GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . 150 4.59 Change in JFK GDP Performance due to different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 4.60 Change in JFK Airline Equity due to Flight Delays with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 4.61 Change in JFK Airline Equity due to Fuel Burn with different Airline Substitution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 4.62 Change in JFK Passenger Equity with different Airline Substitution Strategies154 4.63 Change in JFK Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . 155 4.64 Change in JFK Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . 155 4.65 JFK GDP Disutility with Performance Focus using the Passenger-based Substitutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.66 JFK GDP Disutility with Equity Focus using the Passenger-based Substitu- 156 tions (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . 157 4.67 JFK GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . 157 4.68 Change in EWR GDP Performance with Increasing Scope . . . . . . . . . . 162 4.69 Change in EWR Airline Equity due to Flight Delays with Increasing Scope 163 4.70 Change in EWR Airline Equity due to Fuel Burn with Increasing Scope . . 164 4.71 The Relationship at EWR between Average Seats and Distance by Aircraft Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 4.72 The Relationship between Average Seats and Etaxi Rate by Aircraft Type . 165 4.73 Change in EWR Passenger Equity with Increasing Scope 165 . . . . . . . . . . 4.74 Change in EWR Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . xii 167 4.75 Change in EWR Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . 167 4.76 EWR GDP Disutility with Performance Focus and NoWest+Canada Scope 168 4.77 EWR GDP Disutility with Performance Focus and All+Canada Scope . . . 169 4.78 EWR GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . 169 4.79 EWR GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 4.80 EWR GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . 170 4.81 EWR GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . 171 4.82 Change in LGA GDP Performance with Increasing Scope . . . . . . . . . . 173 4.83 Change in LGA Airline Equity due to Flight Delays with Increasing Scope . 174 4.84 Change in LGA Airline Equity due to Fuel Burn with Increasing Scope . . 174 4.85 Change in LGA Passenger Equity with Increasing Scope . . . . . . . . . . . 175 4.86 Change in LGA Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 4.87 Change in LGA Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 4.88 LGA GDP Disutility with Performance Focus and NoWest+Canada Scope . 178 4.89 LGA GDP Disutility with Performance Focus and All+Canada Scope . . . 178 4.90 LGA GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . 179 4.91 LGA GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 4.92 LGA GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . 180 4.93 LGA GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . 4.94 Change in JFK GDP Performance with Increasing Scope 180 . . . . . . . . . . 183 4.95 Change in JFK Airline Equity due to Flight Delays with Increasing Scope . 184 4.96 Change in JFK Airline Equity due to Fuel Burn with Increasing Scope . . . 184 xiii 4.97 Change in JFK Passenger Equity with Increasing Scope . . . . . . . . . . . 185 4.98 Change in JFK Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 4.99 Change in JFK Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 4.100JFK GDP Disutility with Performance Focus and NoWest+Canada Scope . 188 4.101JFK GDP Disutility with Performance Focus and All+Canada Scope . . . . 188 4.102JFK GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . 189 4.103JFK GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 4.104JFK GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . 190 4.105JFK GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) . . . . . . . . . . . . . . . . . . . . . . . . . . xiv 190 List of Abbreviations AOC Airline Operation Center APU Auxiliary Power Unit ATC Air Traffic Control ATCSCC Air Traffic Control System Command Center ATFM Air Traffic Flow Management ATM Air Traffic Management BTS Bureau of Transportation Statistics CDM Collaborative Decision Making CTA Control Time of Arrival CTD Control Time of Departure EDMS Emissions and Dispersion Modeling System FAA Federal Aviation Administration GDP Ground Delay Program GDP-RRS Ground Delay Program Rationing Rule Simulator NAS National Airspace System PAAR Program Airport Acceptance Rate RBAcSize Ration-by-Aircraft Size RBD Ration-by-Distance RBFFh Ration-by-Fuel Flow high precedence RBFFl Ration-by-Fuel Flow low precedence RBPax Ration-by-Passengers RBS Ration-by-Schedule TFM Traffic Flow Management xv Abstract MINIMIZING THE PAIN IN AIR TRANSPORTATION: ANALYSIS OF PERFORMANCE AND EQUITY IN GROUND DELAY PROGRAMS Bengi Manley, PhD George Mason University, 2008 Dissertation Director: Dr. Lance Sherry The air transportation system is a significant ”engine” of the U.S. economy providing rapid, safe, secure, affordable transportation over large geographic distances. Growth in passenger and cargo transportation demand (i.e. flights) in excess of the growth in air transportation capacity (i.e. runways, airspace sectors) has resulted in massive systemic delays. These delays are estimated in 2007 to have cost passengers up to $12 billion, and to have cost the airlines $19 billion in excess direct operating costs. With the current trend in rising fuel prices, the economic impact of these delays is expected to strain the U.S. economy even more. These delays also contribute to local air and water quality issues and to global climate change. Systematic solutions to address the imbalance between scheduled demand and forecast capacity include: (1) increasing capacity through the construction of new airports and additional runways at existing airports, (2) better utilization of existing capacity by increasing throughput productivity through advanced satellite-based navigation and 4-D trajectory planning, (3) demand management through administrative measures (such as the High Density Rule) and market-based mechanisms (such as congestion pricing and auctions of airport and airspace slots). Solutions 1 and 2 are capital intensive and require decades of planning and development. Solution 3 can be implemented rapidly but faces strong political opposition. In the absence of scheduling flights within the constraints of the capacity, flights arriving at an airport in excess of the airport arrival capacity are delayed until an arrival slot is available. Traditionally, flights that needed to be delayed were required to fly ”holding patterns” above the airport until an arrival slot became available. To avoid these foreseen airborne holding delays, and to increase safety, the U.S. Air Traffic Control system runs a Ground Delay Program (GDP). The GDP holds the flights on the ground at their origin airports, allowing them to depart only when arrival slots will be available at the time the flight is estimated to arrive at the constrained destination airport. Although the GDP was originally designed to manage reductions in capacity due to weather, over the last decade the GDP is routinely used to manage systemically over-scheduled arrivals. The GDP rations the available airport arrival capacity based on scheduled arrival times of flights (i.e. first-scheduled, first served). Special care is taken to equitably distribute delays between airlines. The Ration-by-Schedule approach is ”airline flight-centric” and does not explicitly take into account passenger trip delays, fuel flow efficiency, and emissions. Previous research evaluated alternate rationing rules using airline-flight centric metrics. The objective of this research is to examine the impact of alternative GDP rationing rules on the performance and equity to airlines and passengers. The hypothesis is that alternate GDP rationing rules can maximize the mutual interests of both airlines and passengers. This dissertation describes the GDP Rationing Rule Simulator (GDP-RRS) that was developed to evaluate alternate rationing rules. The dissertation also describes the results of three experiments conducted for flights affected by GDPs in 2007 for arrivals at the three New York Metroplex airports (Newark Liberty (EWR), LaGuardia (LGA) and John F. Kennedy (JFK) airports). The first experiment compared the performance and equity of five alternate rationing rules to the Ration-by-Schedule rationing rule. The second experiment evaluated the impact of substitution strategies in the GDP rationing rules. The third experiment investigated the impact of GDP scope on performance and equity for airlines and passengers. The major findings of the research are: • It is not possible to maximize the mutual interests of airlines and passengers. There exists a tradeoff between GDP performance and equity (see below). • When only performance is considered (and equity for both airlines and passengers are ignored), the best rationing rule is Ration-by-Passengers. This rule maximizes passenger throughput. Passengers experience a reduction in passenger delays of 23% at EWR, 20% at LGA, 15% at JFK relative to the Ration-by-Schedule rule. Airlines experience savings of 57% fuel burn at EWR, 63% at LGA, 42% at JFK relative to the Ration-by-Schedule rule. • When only equity due to flight and passenger delays are considered (and performance of both airlines and passengers are ignored), the rule that provides the best equity is Ration-by-Schedule. • When performance and equity of flight delays for airlines are considered (and performance and equity for passengers are ignored), the rules that provide the best performance differs by airport: Ration-by-Passengers at EWR, Ration-by-Aircraft Size at LGA, and Ration-by-Distance at JFK. • When performance and equity for passengers are considered (and performance and equity for airlines are ignored), the rules that provide the best performance differ by airport: Ration-by-Distance at EWR and LGA and Ration-by-Passengers or Rationby-Fuel Flow High Precedence at JFK. • When performance and equity for both airlines and passengers are considered, the rules that provide the best performance and equity differs by airport: Ration-byDistance at EWR, Ration-by-Aircraft Size at LGA, and Ration-by-Passengers at JFK. • Airline equity is determined by the flight schedule (i.e. position of flights throughout the day) and the aircraft type (i.e. fleet mix). • Passenger equity is determined by the flight cancellations. • Airlines with a small number of operations and airports with a small number of enplanements, experience disproportional performance and equity penalties. • Airline substitution strategies do not change the relative performance and equity of the alternate rationing rules. • Changes in GDP scopes do not change the relative performance and equity of the alternate rationing rules. Scope is the distance range of the GDP. • The selection of the GDP rationing rule requires the unambiguous definition of the National Air Transportation System objectives (and the weights for the performance and equity). The relative weighting of objectives is a social and political activity. The application of alternate GDP rationing rules has broader implications. GDP rationing rules create priority queues which give preference to the compliant flights. As a consequence the rationing rules incentivize airline behavior related to scheduling and fleet mix. For example, the Ration-by-Passengers rule could, in the long-run, result in the migration of airline fleets to larger sized aircraft that would increase the passenger flow capacity. This would improve the efficiency of the air transportation system. This incentive would result in an increase in aircraft size, which would lead to reduced frequency, which would yield lower delays. Chapter 1: Introduction 1.1 Airport Congestion Air transportation is a significant ”engine” of the global economic progress. It provides the fast worldwide network needed to transport people and goods for tourism and global trade. It transports over 2.2 billion people annually and creates 32 million jobs globally. The global economic impact of air transportation is estimated at $3,560 billion, which is equivalent to 7.5% of world Gross Domestic Product [1]. Figure 1.1: Annual Air Transportation Demand and Capacity (1978-2007) [Air Transport Association 2008] 1 Passenger and cargo demand for air transportation has been growing steadily over the years and is forecast to grow at the same rate for several more decades [2]. About 75% of long distance (2000 miles or longer) and 42% of medium distance (1000-2000 miles) travelers prefer air travel [3]. Air Transport Association (ATA) data shows that the passenger revenue miles, the main driver of the airline industry revenue, as well as passenger enplanements have been growing since the deregulation in 1978. Load Factor, the ratio of passenger enplanements over available seats, has also increased from 69% in 2003 to 80% in 2006 [4]. This steady growth in air traffic demand is expected to continue over the next 15-20 years [2]. The growth of air transportation capacity has been lagging behind the air transportation demand growth. Airport and airway infrastructure can not be scaled to meet future demand as anticipated in the FAA aerospace forecasts [5]. The most obvious answer to the increasing air transportation demand is to increase capacity through the construction of new airports or additional runways at existing airports. Denver International (DEN), Dallas Fort Worth (DFW) and George Bush Intercontinental (IAH) airports are the only new airports opened in the last 40 years. The capacity of these airports is helpful, but does not solve the current congestion problems at the nation’s busiest airports, such as Newark (EWR) or Chicago O’Hare (ORD). Most of these congested airports cannot expand due to long implementation times, large capital investments, land limitations, and environmental problems [6]. Another solution to the increasing demand problem is the better utilization of existing capacity by increasing throughput productivity through new advanced technologies. The Next Generation Air Transportation System (NextGen) is the Federal Aviation Administrations (FAA) plan to modernize the National Airspace System (NAS)[7]. Through NextGen, the FAA is implementing new routes and procedures using advanced satellite-based navigation and 4-D trajectory planning that will improve productivity. Unfortunately, the potential capacity improvement benefits of NextGen are not expected to be operational before 2025. 2 The resulting imbalance between demand for flights and available capacity at airports cost U.S. economy up to $41 billion in 2007. The congestion delays cost passengers up to $12 billion in trip delays due to lost productivity and lost business opportunities. Congestion related flight delays are estimated to have increased the direct operating cost of the financially fragile U.S. airlines by $19 billion in 2007. With the current trend in rising fuel prices, the economic impact of these delays is expected to strain the U.S. economy even more. Fuel expenses used to be 10-15% of U.S. passenger airline operating costs compared to the 35-50% of today [8]. Delayed flights consumed about 740 million additional gallons of jet fuel in 2007, costing airlines (and customers) an additional $1.6 billion in fuels costs, assuming an average wholesale price of $2.15 per gallon in 2007 [9]. These delays also have environmental and climate change implications as well as regional economic repercussions [10]. The current DOT/FAA rules and regulations do not address the congestion problem. The belief that passengers prefer flexible schedules at the lowest price drives airlines to schedule more flights with the hopes of attracting more customers [11]. To increase the number of scheduled flights, airlines prefer smaller aircraft, which are less costly (lower fuel costs and pilot labor costs) and easier to fill with passengers (higher load factors) [12]. Weight-based landing fees amplify the benefits of using a smaller aircraft. ”80%-use-it-orlose-it” rule at airports under High Density Rule, such as LaGuardia Airport, forces airlines to fly low load factor flights to avoid losing their slots [13]. The High Density Rule (HDR) limits the number of Instrument Flight Rules takeoffs/landings at the chosen airports during certain hours of the day [13]. The available slots are allocated to the airlines based on the law (14 Code of Federal Regulations [CFR] part 93, subpart S) and the approval of the Secretary of Transportation. ”80%-use-it-or-lose-it” rule at these airports states that the airline currently holding a slot has to return the slot back to a pool of unused slots for re-allocation if the airline uses the slot less than 80% of the time. A responsible airline, which does not increase its schedule at a congested airport, voluntarily provides another 3 airline with the opportunity to add more flights to its schedule [14]. In the absence of capacity growth, the long-term answer lies in Demand Management options. Demand management refers to any set of administrative or economic measures aimed at balancing air transportation demand against the available capacity. Demand Management alternatives with only administrative procedures, such as the High Density Rule, have not yet shown any stable long-term solutions [15]. In the National Airspace System (NAS), there are many stakeholders with conflicting objectives. This requires market-based or hybrid approaches to demand management. Among these options, slot auctions and administratively-set prices are the two main congestion pricing options discussed today. Administrative pricing is easy to implement but it requires time to adjust its prices and tends to answer the previous term’s congestion problems rather than the current problems [12]. Slot auction is a market-based control mechanism that efficiently allocates scarce resources and has been used in telecommunication bandwidth management, computer science, and energy distribution [16]. It provides more certainty about the congestion level but it is opposed by some airlines and lawmakers [12, 17]. Today, airlines determine their own schedules based on many factors, such as the target market’s profit margins, competition, and optimality of crew and aircraft scheduling. The Federal Aviation Administration (FAA) is responsible for the safety and efficiency of air transportation system, but the FAA has no control over the scheduling practices of airlines. In the presence of over-scheduled arrivals at airports, Traffic Flow Management (TFM) initiatives are used to resolve the daily demand-capacity imbalance. In particular, the Ground Delay Program (GDP) collaborates with the airlines to manage the scheduled arrival flow into airports consistent with the airport’s arrival capacity. The current GDP rations the arrival slots according to the scheduled arrival time of the flights. This rationing scheme is adjusted to account for penalties suffered by long-distance (e.g. transcontinental flights) flights when arrival capacity increases (e.g. due to improving weather) and the GDP is cancelled. The rationing scheme is also adjusted to more equitably allocate arrival slots 4 between airlines to ensure that one airline (e.g. with a hub operation) is not excessively penalized. With the still on-going discussions about the ”correct” long-term solution to the congestion problem, the implementation of alternative Air Traffic Flow Management rationing rules with a desired system objective stands as a fast and cheap short-term solution. 1.2 Air Traffic Flow Management In the U.S., the Federal Aviation Administration (FAA) is responsible for the safety and efficiency of the air transportation system. This objective is achieved through Air Traffic Management (ATM). ATM is composed of two elements; Air Traffic Control (ATC) and Air Traffic Flow Management(ATFM). Air Traffic Control provides real-time tactical separation to aircraft for collision detection and avoidance, whereas Air Traffic Flow Management provides strategic means to resolve demand-capacity imbalances by adjusting aggregate traffic flows [18]. ATC is concerned with the safety of airborne flights, while ATFM tries to avoid or ease these tactical problems by controlling aggregate flight demand to match the available capacity hours ahead of time. Below are multiple ATFM actions available today: • Altitude Adjustments: To use different altitudes to segregate different flows of traffic in a specified geographic area. • Miles (Minutes)-in-Trail (MIT): It describes the number of miles (or minutes) required between two aircraft. MITs are used to decrease or increase spacing between aircraft on the same airway at the same altitude to manage a traffic flow. • Speed: To instruct aircraft to slowdown or speedup to manage traffic flow. • Vectoring: To instruct aircraft to make S-turns to slow their arrival at a fix. A fix is a term used in navigation to describe a position derived from measuring external 5 reference points. • Airborne Holding: To hold the aircraft in a flying pattern over a certain fix. It can be used as a response to an unplanned situation or to fill available capacity efficiently at airports where enough airspace is available. • Sequencing Programs: These programs are designed to achieve a specified interval between aircraft. There are three programs for different flight phases; 1.Departure Spacing Program (DSP) assigns flights’ departure times to achieve a constant flow of traffic over a common point, 2.Enroute Sequencing Program (ESP) assigns flights’ departure times to facilitate integration into the enroute stream, 3.Arrival Sequencing Program (ASP) assigns fix-crossing times to flights destined for the same airport. • Rerouting: To change airways used to manage traffic flow. • Airspace Flow Program (AFP): To delay aircraft at their departure airport to manage demand with capacity enroute. This program is mainly used in support of Severe Weather Avoidance Plan (SWAP). • Ground Delay Program (GDP): To delay aircraft at their departure airport to manage demand with capacity at their arrival airport. • Ground Stop (GS): To stop aircraft from departing until further notice. This procedure is mostly used for severely reduced capacity situations or to preclude extended airborne holdings, airport gridlocks and sector saturation. These actions range from very tactical (Altitude Adjustments to Airborne Holding) to very strategic (Sequencing to GS) due to the time required to plan before the event. GDP is the most improved and sophisticated among these actions. 6 1.3 Trends in GDP use The use of GDPs has been growing over time as has the number of airports affected by GDPs. Figure 1.2 shows the growth in the number of GDPs per year as the growth in flight demand increases. The GDP growth declined after 9/11, but picked up speed after 2002 following the renewed air transportation demand. Figure 1.2: Number of GDPs by Year (1/1/1999-12/31/2007) Figure 1.3 shows the number of GDPs implemented on a given day between 2000 and 2008. On any given day, there is an 87% probability that at least one airport will implement a GDP. There were 381 days (13%) with no GDPs, 595 days (20%) with one GDP, and 550 days (19%) with two GDPs active in the last eight years. The high number of GDPs per day (10 and above) were GDPs implemented to address airspace congestion due to rare national severe weather days. This use of the GDP for severe weather is now obsolete and has been replaced by Airspace Flow Programs (AFP). 7 Figure 1.3: GDP Histogram (1/1/2000-12/31/2007) Figure 1.4 shows all GDP airports in the last seven years, ranked by their total number of GDPs from high to low. Out of 19,854 domestic airports, only 21 airports (1 Canadian) are responsible for 94% of GDPs that occurred between 2000 and 2008. Due to marine stratus conditions, San Francisco (SFO) airport cannot use independent parallel approaches and issues GDPs to regulate the incoming traffic flow sometimes twice on the same day [19]. Chicago O’Hare (ORD), Newark Liberty (EWR), and LaGuardia (LGA) airports have been infamous as the nation’s most congested airports. Hartsfield-Jackson Atlanta (ATL), Philadelphia (PHL), Boston Logan (BOS), John F. Kennedy (JFK), Lester B Pearson-Toronto (CYYZ), Minneapolis St. Paul (MSP), Los Angeles (LAX), Midway (MDW), Dulles (IAD), Lambert St. Louis (STL), Teterboro (TEB), Seattle-Tacoma (SEA), Fort Lauderdale Hollywood (FLL), McCarran (LAS), George Bush Intercontinental (IAH), Phoenix Sky Harbor (PHX) airports, and Dallas Forth-Worth (DFW) compose the top 21 GDP airports. All these airports had at least 75 GDPs between 2000 and 2008. 8 EWR, LGA and JFK are notably among the top 20 as New York’s three major airports. Figure 1.5 shows how the number of GDPs are growing in the New York area, especially at JFK. The growth in the number of GDPs has been slowing down for EWR and LGA. On the other hand, the GDP duration, the number of flights as well as the total GDP flight delay has been increasing. The average planned duration for a GDP in 2007 was 10 hours at EWR, 11 hours at LGA, and 7 hours at JFK (Figure 1.6). The total flight delay as a result of implementing a GDP was on average 18,467 minutes at EWR, 22,060 minutes at LGA, and 11,943 minutes at JFK (Figure 1.8). The total controlled flights in the GDP have also been increasing at these three airports (Figure 1.7). 67% of total flights in the GDP at EWR, 83% at LGA, and 50% at JFK were delayed in 2007. The bottleneck at these airports causes ripple effects that have contributed to the worst flying conditions in American history [20]. President Bush launched a series of changes designed to ease air traffic congestion before summer 2008 with short-term changes focusing on these three airports. All possible options have been considered in these changes from congestion pricing to airspace redesign [20]. Some of these options, such as airspace redesign, can take up to 5 years to complete, whereas GDP rationing rules tailored towards each of these airports’ specific problem could be a fast and easy-to-apply short-term solution that is desperately needed. 9 10 Figure 1.4: The Number of GDPs by Airport (1/1/2000-12/31/2007) Figure 1.5: Trends in GDP Growth at EWR, LGA, JFK (1/1/2004-12/31/2007) Figure 1.6: Average Planned GDP Duration (1/1/2004-12/31/2007) 11 Figure 1.7: Average Number of Flights in GDP at EWR, LGA, and JFK (exempt and nonexempt) (1/1/2004-12/31/2007) Figure 1.8: Total GDP Total Aircraft Flight Delay at EWR, LGA, and JFK (exempt and nonexempt) (1/1/2004-12/31/2007) 12 1.4 Problem Statement Today, GDP rations available capacity resources based solely on scheduled arrival times of flights, and does not take into account passenger flow and fuel flow efficiency in the rationing assignment tradeoff. If nothing is done to resolve the growing demand-capacity imbalance, more GDPs will be implemented to bring the daily scheduled arrivals down to match the level of airport capacity. Figure 1.9: The Trade-off between GDP Performance and GDP Equity The objective of this research is to determine the impact of new GDP rationing rules on GDP performance and equity without any changes in the safety (1.9). The hypothesis is ”Different GDP rationing rules result in different performance and equity trade-offs for two main stakeholders of the air transportation system; airlines and passengers”. The tradeoff between flight delays, passenger delays and fuel burn as well as the tradeoff between airline equity and passenger equity in GDP slot allocation at a single airport are examined. A GDP Rationing Rule Simulator (GDP-RRS) is developed to calculate performance and equity metrics for all stakeholders. 1.5 Contributions There are two main contributions of this research: 1. Understand the impact of alternate GDP rationing rules. At several major U.S. airports, scheduled demand is greater than the capacity can 13 handle. GDPs are the major mechanisms currently in place to balance the demand against capacity. The selection of GDP rationing rules will play an important role in determining the future state of the air transportation system. 2. Develop simulation and analysis infrastructure that can compare GDP rationing rules. Different rationing rules can be put in place for demand management at the nation’s busy airports. The infrastructure developed as a result of this research can be used by government and the FAA to test possible options. 3. Develop equity metrics for passengers. Currently there are GDP performance and equity rules that only consider airlines. These metrics are not available for passengers and airports. To assess the implications of different rationing rules, it is imperative that appropriate metrics for all stakeholders involved in the air transportation system are developed and investigated. 14 Chapter 2: Literature Review This chapter provides an overview of the literature. Section 2.1 describes and explains the GDP process. Section 2.2 provides summaries of the previous work in this area. 2.1 Ground Delay Program The Ground Delay Program (GDP) is a mechanism to decrease the rate of incoming flights to an airport when the arrival demand for that airport is projected to exceed the capacity for a certain period of time [21]. During this period of time, the increase in demand cannot be handled using tactical means such as airborne holding or miles-in-trail. The motivation behind the GDPs is to convert the foreseen airborne delays into cheaper and safer ground delays [21]. The FAA first implemented the GDPs, ”ground holdings”, during major-weather-relatedcapacity reductions at airports after the air traffic controllers strike in 1981 [22]. This system has many shortcomings, such as lacking quality data for the ATC decisions, having disincentives that discouraged airlines from sharing timely and accurate flight information [23]. The positive results of the FAA/Airline Data Exchange (FADE) program experiments in 1993 proved the importance of information sharing and led to the Ground Delay Program (GDP) prototype operations at San Francisco (SFO) and Newark (EWR) airports in 1998. Since then, the GDPs have been implemented under Collaborative Decision Making (CDM). Collaborative Decision Making (CDM) is a joint government-industry effort, which tries to achieve a safer and more efficient Air Traffic Management (ATM) through better information exchange, collaboration, and common situational awareness. In a GDP under CDM, 15 CDM member airlines send in their schedule and operational intent to the Air Traffic Control System Command Center (ATCSCC), and the ATCSCC monitors this information to determine whether a demand-capacity imbalance warrants a GDP. If it does, the ATCSCC identifies the constraints (e.g. duration for the capacity reduction, impacted origin airports, program Airport Acceptance Rate, allocated arrival slots) and communicates these to the airlines so that airlines can plan their operations more effectively. The success of the GDPs led to the development of the Airspace Flow Programs (AFP) in 2005. Airspace Flow Programs resemble GDPs but they are implemented on a congested area of airspace instead of an airport during inclement weather. 2.1.1 GDP Process GDPs are traffic management initiatives used to strategically manage arrivals at an airport by controlling the departure times of flights going to that airport. A GDP is run in two situations: 1. When the capacity of an airport is reduced (e.g. due to weather) and cannot handle the scheduled demand. 2. When the demand at an airport is high (e.g. systematic over-scheduling) [24] and exceeds the normal airport capacity. Air traffic control specialists at the ATCSCC continuously monitor the demand and capacity of airports by looking at charts similar to Figure 2.1 using Flight Schedule Monitor (FSM). FSM, developed by Metron Aviation Inc., is a software tool that provides the FAA and CDM participating airlines with the capability to monitor traffic flow management initiatives and evaluate alternative approaches. The X-axis shows the time (GMT) in one hour intervals and the Y-axis shows the number of flights. The yellow line denotes the current time. The black bars represent the flights which already landed at the airport, red bars represent the flights currently in the air, and the green bars show the flights scheduled to arrive at the airport. The black horizontal line depicts the airport capacity. In the figure, 16 Figure 2.1: Scheduled Arrivals to the Airport Before GDP Figure 2.2: Scheduled Arrivals to the Airport After GDP the airport capacity drops from 100 flights/hour to 75 flights/hour between hours of 17:00 and 22:00. Demand is in excess of capacity during this time period. After the GDP is implemented, it brings the scheduled demand to match the airport capacity by delaying flights on the ground. The blue bars in Figure 2.2 show the delayed flights, which spill into the hours after the capacitated hours. 17 If the ATC specialist decides a GDP is needed, there are three parameters required to issue the program; GDP Start Time and GDP End Time, Scope, and Program Airport Acceptance Rate. The first parameter is the GDP Start Time and GDP End Time. GDP Start Time and GDP End Time are the start and end times of the program, and they are determined by the scheduled demand and weather profile at the time of decision making. Since the flights need to be notified prior to departure, a GDP is often implemented hours in advance (6–8 hours). Unlike the start time, the end time of the program has more uncertainty and can be updated by GDP revisions. If a flight is scheduled to arrive at the constraint airport between the GDP Start Time and GDP End Time, it will be controlled by the GDP. The second parameter is the ”scope” of the program. It specifies the flights departing from which origin airports will be controlled by the GDP. There are two types of scope; tier-scope and distance-scope. 1. Tier-scope identifies the airports included in the program by ATC centers (refer to Appendix D for the definitions of the Air Route Traffic Control Centers (ARTCC)). Some of the most used tier-scopes are explained below: • Internal Scope only includes the ATC center that the GDP airport is in. For example, if there is a GDP at LGA with internal scope, then any flight departing from an airport in ZNY center will be controlled by the GDP. (shown green in Figure 2.3). • Tier–1 Scope includes airports in the internal scope and any center touching the internal center. For the LGA example, Tier–1 scope includes all flights departing from ZOB, ZDC, ZBW as well as ZNY (shown green plus yellow in Figure 2.3). • Tier–2 Scope includes internal scope, Tier–1 scope, and any center touching the centers in Tier–1 scope (shown green plus yellow plus blue in Figure 2.3). Tier–2 18 includes ZNY, ZOB, ZDC, ZBW, ZMP, ZAU, ZID, ZTL, and ZJX for a GDP at LGA. • No–West Scope includes all ATC centers except for the six centers located in the very west (shown green plus yellow plus blue plus red in Figure 2.3). In the LGA example, No–West scope is composed of Tier–2 centers plus ZMA, ZME, ZHU, ZFW, and ZKC. • Six–West Scope includes a pre-determined six centers located in the most west of continental U.S. These centers are ZSE, ZOA, ZLA, ZLC, ZDV, and ZAB (shown green in Figure 2.4). • Ten–West Scope includes a pre-determined ten centers located in the most west of continental U.S. These centers are ZMP, ZKC, ZFW, and ZHU in addition to the centers from Six–West scope (shown green plus yellow in Figure 2.4). • Twelve–West Scope includes a pre-determined twelve centers located in the most west of continental U.S. These centers are ZAU and ZME in addition to the centers from Ten–West scope (shown green plus yellow plus blue in Figure 2.4). • All Scope is composed of all 20 continental ATC centers. • Today, the CZY center in Canada can be added to all scopes explained above, such as ”Tier–2+CZY”. When this center is added to the scope, flights from Ottawa Macdonald Cartier (CYOW), Montreal Pierre Elliott Trudeau (CYUL), Toronto Pearson (CYYZ), and Halifax (CYHZ) international airports are controlled by the GDP. 2. Distance scope specifies a radius in nautical miles around the GDP airport and exempts any flight coming from an airport outside the specified radius. Tier scope is often preferred over distance scope because of its ease of use and communication. The third parameter is the GDP Program Airport Acceptance Rate (PAAR). The Airport Acceptance Rate (AAR) is set by the GDP airport’s tower depending on the airport 19 Figure 2.3: Internal, Tier-1, Tier-2, and No–West Scopes for LGA Figure 2.4: Six-West, Ten-West, and Twelve-West Scopes for LGA conditions. However, Air Traffic Control specialists have the option to set the PAAR above or below the AAR to account for uncertainties in the future, such as weather and unscheduled demand. When the PAAR is determined, it depicts the number of aircraft that can 20 safely land in an hour. Figure 2.5: GDP Process The overall GDP process can be summarized as shown in Figure 2.5. In the figure, ATC actions are denoted in white and airline actions in blue. ATC specialists at the ATCSCC continuously monitor the demand and capacity of airports. When an imbalance between demand and capacity exists, they model a GDP using the Flight Schedule Monitor (FSM). If time allows, they send an advisory to all airlines before implementing the program. Airline Operation Centers (AOC) check the impact of this proposed GDP on their operations and may opt to cancel some of their flights. Then, specialists reevaluate whether a GDP is still needed. If needed, ATC specialists run a Ration-by-Schedule (RBS) algorithm and issue each flight its Controlled Time of Arrival (CTA) and Controlled Time of Departure (CTD). Controlled flights are required to comply with their CTDs and CTAs within a plus or minus 5-minute window. Once controlled times are received, airlines get a chance to respond by substitutions and cancellations. CTAs depict the arrival slots assigned to each 21 airline. These slots are now considered to be ”temporarily owned” by that airline. Airlines can swap any 2 flights as it fits to their business needs as long as both flights can depart by their new CTDs. This is generally done by cancellations, which creates empty slots for airlines. After airline substitutions and cancellations, compression is run. Compression is an inter-airline slot swapping process that fills open slots that airlines are unable to fill through substitutions and cancellations. Compressions are now run automatically whenever an open slot is detected to be left unused. During the GDP, program parameters (Start Time, End Time, PAAR, or Scope) might need to be revised to account for changing conditions. Each revision results in re-issuance of CTDs and CTAs even if they remain unchanged. GDP revisions may lead to further substitutions and cancellations, followed by compression. GDP ends when the GDP End Time is reached or the program is cancelled earlier than planned. All issued control times are also cancelled when GDP ends. 2.1.2 GDP Slots and RBS Algorithm Arrival slots in a GDP are time intervals to achieve PAAR. For example, the airport tower sets the AAR at 62 aircraft per hour. The ATC specialist expects 2 unscheduled aircraft to show up every hour during the GDP from his or her previous experience. Then, PAAR is set at 60 aircraft per hour (AAR - unscheduled demand = 62ac/hr - 2ac/hr=60ac/hr). This means that the airport can safely land 1 aircraft every minute; there will be 60 arrival slots to be allocated in an hour during GDP as shown in Figure 2.6. These slots are uniformly spaced in an hour. If the GDP Start Time is 18:00, then the Slot–1 is between 18:01 and 18:02, Slot–2 is between 18:02 and 18:03, and so on. Figure 2.6: GDP Slots 22 Arrival slots at an airport during a GDP are considered to be different than ”everyday” arrival slots. International Air Transport Association (IATA) scheduling guidelines state that biannual conferences deal with planned schedules for available airport slots. The slot allocations and adjustments of these slots on the day of operation for air traffic flow management, such as GDPs, are unrelated and different [25]. Moreover, the slots used by airlines under the High Density rule are often interpreted as ”the right to schedule or advertise a flight at a specific time”, which entails no explicit connection to a right on the day of operation [18]. The allocation of arrival slots during GDPs can be based on different rationing rules than every day operations, mainly a ”first-come, first-served” principle. This led to the implementation of the RBS algorithm used today. In a GDP, the available arrival slots during the capacity restricted hours at an airport are allocated on a ”first-scheduled, first-served” basis. This allocation scheme is called ”Rationby-Schedule” (RBS). In other words, arrival slots are allocated based on the flight’s original scheduled time of arrival as published in the Official Airline Guide (OAG) rather than reported departure time on the day of operation. When an airline cancels a flight, it retains its rights to the cancelled flight’s arrival slot and can assign other flights to this slot based on its own business model as long as the swapped flight can make the new controlled time of arrival. The RBS algorithm creates three distinct queues for all the flights in the GDP: 1. Exempt flights have the highest priority among all the controlled flights in the GDP. This gives the exempt flights the advantage of being assigned to available slots first. Flights can be exempt due to many reasons; International flights (except for Canadian flights depending on the GDP scope), flights that are active when GDP is issued, flights under going de-icing, flights that are scheduled to arrive at the GDP airport before GDP start time or after GDP end time, flights coming from an origin outside the scope, and flights that are close to departure when the GDP is issued (typically 45 minutes). Exempt flights are assigned CTDs and CTAs just like the rest of the GDP 23 flights. However, their delays are very small, since they are assigned to the available slots first. 2. Previously controlled flights are the flights which are initially delayed by a GDP, then get controlled by a second GDP before they depart. This could be due to premature cancellation of a previous GDP or revision of a current GDP. Previously GDP controlled flights are considered exempt in the second GDP to eliminate double penalty. 3. Non-exempt flights are composed of flights which are not exempt or previously controlled. These flights have the lowest priority among all GDP controlled flights, and they are assigned to the available slots the last. They are the flights that take the most of the GDP delay. Figure 2.7: Example Flight List before RBS (Source: http://cdm.fly.faa.gov/cdmweb/index.html) Figures 2.7 and 2.8 shows how the RBS algorithm works. In the example, a GDP is issued at the airport between the hours of 13:00 and 14:00 due to inclement weather. The 24 Figure 2.8: Example Flight List after RBS (Source: http://cdm.fly.faa.gov/cdmweb/index.html) arrival capacity is reduced from 20 aircraft/hour to 6 aircraft/hour during this time period. Figure 2.7 shows the flight list for this GDP. A flight is included in the GDP if the flight’s Original Scheduled Time of Arrival (OSTA) or current Estimated Time of Arrival (ETA) is between the GDP Start and End Times. The published times in OAG are the gate times of the flight, whereas GDP slots are based on runway times. The OSTA is calculated as the flight’s Initial Gate Time of Arrival (IGTA), as published in OAG, minus 10 minutes Taxi– in time. Flight B3 is included in the GDP, even though it is delayed into the hours after the GDP since its OSTA falls between GDP times. Following the rules of the RBS, exempt flights are given their slots first. W1 is the only exempt flight in the list and it is given the 13:00 slot. In this example, there are no previously controlled flights, and non-exempt flights are assigned their slots in an increasing order of their OSTA. The RBS algorithm allows airlines to submit their current flight information without any disadvantages. Cancelled flights (W2 denoted as square) and delayed flights (W5 and G1 denoted as triangles) are assigned slots just like the rest of the GDP flights based on their published scheduled arrival 25 times. Flight G1 is assigned 14:10 slot (CTA) based on its OSTA at 13:35, but the earliest time the flight can take off is 14:20 (Earliest Runway Time of Arrival (ERTA)). The result of the RBS algorithm is the assignment of the Controlled Time of Arrival (CTA) of all flights scheduled to arrive at the GDP airport. Controlled Time of Departure (CTD) for all flights is assigned based on an Estimated Time Enroute (ETE) for each flight. All flights in the GDP are required to comply with their CTAs and CTDs in a plus or minus 5-minute window. The RBS algorithm incentivizes ”early” flight scheduling. In a GDP, a flight’s delay grows linearly as it is scheduled further away from the GDP start time [26]. This results in an airline having big delay savings against a competitor, if that airline schedules its flights even one minute prior to its competitor. As seen from the example, the flights scheduled towards the GDP start time are assigned less delay than the flights scheduled to arrive towards the GDP end time. From an airline scheduling point of view, airlines with flights grouped towards the beginning of the GDP not only causes more delays for airlines with flights grouped towards the end of the GDP, but also absorbs less delay [26]. In a RBS, the initial allocation procedure explained above is followed up by different slot trading mechanisms to allow users to make efficient use of their resources. These mechanisms include substitutions (intra-airline), compressions (inter-airline), and Slot-CreditSubstitutions (inter-airline). All these procedures assume airlines as the sole users of the airport arrival slots. There are well-defined airline equity metrics in the RBS, however, these metrics compare the assigned airline (or flight) GDP delays to a situation where a GDP was not implemented, or compare the airline equity against each other. In this sense, the RBS has an egalitarian approach for the initial slot assignment (distributing resources so that the welfare of the worst-off will be maximized, e.g. minimize the maximum delay) with a capitalist approach for airline adjustments (distributes resources so that the overall utilization of these resources by subsequent processes are maximized, even though the initial 26 distribution may contain inequities) [26]. 2.1.3 Substitutions and Cancellations (Airlines Response to GDP) After the CTDs and CTAs are assigned, this information is sent to AOCs for their response. AOCs can respond by performing flight substitutions and cancellations to their own flights. Substitution is an intra-airline slot swapping after the initial RBS assignment. Airlines can create open slots to move up their flights in the arrival list by canceling a flight. The substitution procedure provides airlines the ability to manage their internal economic objectives by reducing delays for their critical flights in exchange for increasing the delays for some of their non-critical flights. Each scheduled arrival translates into a cost-control opportunity during this procedure. Airlines do not have to interact with the FAA during their substitution process, except to inform the FAA of their decisions [27]. Figure 2.9: Example Flight List before Substitution (Source: http://cdm.fly.faa.gov/cdmweb/index.html) Figure 2.9 shows an example flight list after the initial RBS assignment. Figure 2.10 shows the same flight list after airline substitutions and cancellations. There are four 27 Figure 2.10: Example Flight List after Substitution (Source: http://cdm.fly.faa.gov/cdmweb/index.html) airlines in the example; White, Green, Blue and Yellow airlines. Flight W1 operated by White airlines as well as flight G1 operated by Green airlines are cancelled. Flight Y1, which belongs to Yellow airlines, is delayed by the airline and its Best Estimated Time of Arrival (BETA) is 14:10, so it cannot make it to its assigned slot time at 14:10 ontime. Among six flights that White airlines have, W6 is the most important flight and needs to be on-time. Figure 2.10 shows how White airlines can achieve this objective through substitutions and cancellations. Since W1 is cancelled, W2 can be moved to W1’s slot. However, the earliest time W2 can arrive is 13:02 instead of W1’s slot at 13:00. Since the slot size is 10 minutes in this assignment, W2 is assigned to 13:02 (the slot time it can make between 13:00 and 13:10) rather than 13:00. Now, W3 can be moved to slot 13:10, letting W6 to be assigned to slot 13:33. W7 can further move up to W6’s vacated slot. At the end of this process, flights W6 as well as W2 and W3 arrives to their destination on time. The rest of White airline flights enjoy fewer delays. On the other hand, Green airlines cannot use the substitution process for its benefit. The slot vacated by cancelled flight G1 cannot be filled by flight G2 28 because the earliest time G2 can arrive (BETA) is 13:50, much later than 13:20. 2.1.4 Compression (GDP Response to Dynamic Information) Compression is a slot swapping similar to the substitution process used by airlines. Airlines can only perform intra-airline substitution whereas compression is an inter-airline substitution but the precedence is given to the airline who ”owns” the slot (assigned to the slot first). Compression has been operational since 1998 as a means to improve airport resource utilization by ensuring arrival slots do not go unused during GDPs. Airline substitution and cancellation process leaves ”holes” in the schedule that cannot be filled by the airlines themselves. Compression then shifts all the flights up in the schedule to fill these ”holes” as long as the new flight assigned to the slot can make it at its assigned arrival time. The assumption is that it is acceptable to an airline to have any of its flights delayed less in the GDP. When moving a flight, the compression algorithm gives preference to the airline who vacated the slot first, followed by CDM-member airlines. This acts as a reward for releasing a slot (cancelling a flight), encouraging airlines to provide up-to-date intent information during GDPs. If there are no flights of the CDM-participating airline, then the slot is made available to all other flights. Compression never gives a flight a later slot than its RBS assignment, unless the flight is delayed or cancelled by the airline itself. Figure 2.10 shows an example flight list before the compression. Figure 2.11 shows the same flight list after the compression. The flight list in Figure 2.10 is the same flight list after the airline substitution and cancellation process. As explained above, the open slots at 13:20 and 14:30 cannot be filled by airline substitutions. Compression algorithm starts with the open slot that has the earliest arrival time, in this case slot 13:20. Since it is vacated by Green airlines, compression algorithm first checks whether any Green airline flights can fill this slot. The only other flight Green airlines have is G2 and its earliest time of arrival is 13:50. It cannot make it to the open slot. The compression algorithm then checks whether 29 Figure 2.11: Example Flight List after Compression (Source: http://cdm.fly.faa.gov/cdmweb/index.html) any flights belonging to CDM-participating airlines can be assigned. In this example, all airlines except for Blue airlines are participating in CDM, and flights W4 and W5 can arrive at the airport as early as 13:20. However, flight W5 is assigned to the slot rather than W4, and because W4 is delayed by the airline 20 minutes before compression algorithm started, it cannot make it to the new slot if it is moved. Green airline slot 13:20 is then swapped with W5’s slot 13:50. Now Green airlines own slot 13:50 and W5 owns slot 13:20. Flight G2 can be moved to slot 13:50 and actually leave on-time. Flight Y1 is delayed 10 minutes and cannot make it to its assigned slot at 14:10. Flights B1 and Y1 are swapped so that Y1 can arrive at the time it requested (14:20) and B1 saves 10 minutes of delay. Lastly, B2 is moved up to the slot at 14:40 which is vacated by W5. When all the unassigned slots are checked, the compression algorithm stops. In this example, slots 14:30 and 14:50 are left unused. The compression algorithm saves delays for the flights in the GDP, however it might not be able to utilize all the open slots. 30 There are some situations where the expected benefits from compressions are not realized. For example, an airline cancelled a couple of its flights hoping that arrival slots will be compressed by the FAA which will reduce the airline’s overall delay by moving up its flights. However, the ATC specialist decided not to run compression because he or she was expecting an increase in arrival demand due to unscheduled flights. In this case, the airline did not receive any benefits from canceling its flights and lost its incentive to cancel flights for future. Today this problem is addressed by two new algorithms; ”adaptive compression” and ”slot credit substitutions”. Adaptive compression is compression which is run automatically by the FSM whenever an open slot is detected to be unused, even though there is a flight in the GDP that can use it. This flight is automatically moved to the unused slot, reducing the amount of delay for the flight and avoiding the available slots to be wasted. Slot credit substitution is a procedure where an airline trades an earlier time slot for a later slot which is more beneficial to the airline. This is done by bridging flights. It can be viewed as a compression algorithm that starts with the vacated slot and ends with the assignment of the requested slot. The flights which are moved up in the schedule during this process are called ”bridging flights”. This process takes place if and only if the requested slot can be assigned to the airline. There is no penalty to an airline who opposes a slot credit substitution that cannot be accommodated [28]. 2.2 Previous Work This section is partitioned into two sections. Section 2.2.1 discusses the similarities and differences between the GDP-RRS simulation and the priority queues. Section 2.2.2 discusses the three key literature on the GDP rationing rules. 2.2.1 Priority Queues Models in which a customer’s type determines the order in which customers undergo service are called ”Priority Queuing Models”. There are two main types of priority queuing models; preemptive and nonpreemptive. In a nonpreemptive model, there is no interruption in 31 service and the highest priority customer just goes to the head of the queue to wait its turn when he arrives whereas in a preemptive model, the highest priority customer is allowed to enter service immediately even if another customer with lower priority is already present in service when he arrives [29]. Among the priority queues, a Mi /Gi /1/N P RP/∞/∞ with customer-dependant waiting costs is the model which is the closest representation of GDP rationing rules. In this model, Mi represents the Markovian arrival process where the inter-arrival time of customer i and i + 1 are independent and identically distributed random variable with exponential distribution. Gi represents the general service rate where the service time of each customer i is independent and identically distributed random variable following a general distribution. The maximum number of customers allowed in the system and the population size in which the customers are drawn from are infinite. This is a single server, nonpreemptive priority system in which a cost ck is charged for each unit of time that a type k customer spends in the system. If there are n customer types and the objective is to minimize the expected cost incurred per unit time in the steady state, the priority ordering should be such that c1 µ1 ≥ ... ≥ ck µk ≥ ... ≥ cn µn (2.1) k: the service rate for customer type k This means that the cost can be minimized by giving the highest priority to customer types with the largest value of ck µk [30]. In this model, the GDP airport can be assumed to be the single server with a constant service rate for all customer types. At the airport, during landing of a flight, no other landings are allowed. This is similar to a nonpreemptive queuing model where a customer’s service cannot be interrupted. Then, the above formulation can be written as: c1 ≥ ... ≥ ck ≥ ... ≥ cn 32 (2.2) For each alternate GDP rationing rule, the nonpreemptive priority queuing model with customer dependant waiting costs would be implemented as follows (see Section 4 for more details on the alternate GDP rationing rules: • If a priority queue is implemented using the Ration-by-Schedule, this is similar to the First-Come-First-Serve (FCFS) queuing discipline. Assuming that the scheduled arrival time of each flight is the actual time each flight arrives at the airport during the GDP, then the flights will be served as they arrive. FCFS queue is the standard queuing model and is often used as a reference for all other queuing models. The Ration-by-Schedule is treated the same way (as a reference rationing rule to compare alternative rationing rules) in this research. • If a priority queue is implemented using the Ration-by-Passengers as the customer dependant waiting cost, each flight with a unique number of enplaned passengers becomes a customer type. The cost per unit time delay of each flight is the number of passengers onboard of each flight, where a flight carrying more passengers has a higher cost per delay than a flight carrying fewer passengers. Then, if the flights with higher cost are given precedence (with the most number of passengers on board), the total GDP passenger delay should be minimized and the total GDP fuel burn should decrease since larger aircraft tend to have higher Etaxi rates. • If a priority queue is implemented using the Ration-by-Aircraft Size as the customer dependant waiting cost, there are three customer types; Heavy, Large and Small. The cost of each flight is the size of the aircraft, where a Heavy aircraft has a higher cost than a Large, and a Large aircraft has a higher cost than a Small aircraft. Then, if the flights with higher cost are given precedence (with the largest size), the total GDP passenger delay should decrease because larger aircraft tend to have more passengers, but it will not be minimized, since two same aircraft sizes does not always have the same number of passengers onboard. Similarly, the total GDP fuel burn should decrease but it will not be minimized because two same aircraft sizes might have 33 different Etaxi rates. • If a priority queue is implemented using the Ration-by-Distance as the customer dependant waiting cost, each flight coming from a unique distance (in nautical miles) from the GDP airport becomes a customer type. The cost of each flight is the nautical miles that each flight has to fly, where a long-haul flight has more cost than a shorthaul flight. Then, if the flights with higher cost are given precedence (traveling the farthest), the total GDP passenger delay and total GDP fuel burn should decrease, but they will not be minimized. Airlines schedule larger aircraft on longer routes but the larger aircraft can also be scheduled on shorter routes with high passenger demands. • If a priority queue is implemented using the Ration-by-Fuel-Flow-high-precedence as the customer dependant waiting cost, each flight with a unique Etaxi rate becomes a customer type. The cost of each flight is its Etaxi rate, where a flight that burns more fuel (higher Etaxi rate) has a higher cost than a flight that burns less fuel (lower Etaxi rate). Then, if the flights with higher cost are given precedence (with the highest Etaxi rate), the total GDP fuel burn should be minimized and total GDP passenger delay should decrease, since Etaxi rates are higher for larger aircraft which also carry higher number of passengers. • If a priority queue is implemented using the Ration-by-Fuel-Flow-low-precedence as the customer dependant waiting cost, each flight with a unique Etaxi rate becomes a customer type. The cost of each flight is its Etaxi rate, where a flight that burns less fuel (lower Etaxi rate) has a higher cost than a flight that burns more fuel (higher Etaxi rate). Then, if the flights with higher cost are given precedence (with the lowest Etaxi rate), the total GDP fuel burn should be maximized and total GDP passenger delay should increase, since Etaxi rates are lower for smaller aircraft which also carry small number of passengers. 34 In case of the GDP process, a simulation model is preferred to a priority queuing model for the following reasons: 1. The queuing formulations are correct only if the queuing system can reach a steadystate: A queuing system can reach steady state if the traffic intensity (ρ) of the queuing system is smaller than one. This value is calculated in a simple queuing model as the arrival rate (λ) divided by the service rate (µ) when there is only one server. In case of GDPs, the arrival rate is always higher than the service rate. This phenomenon is the main reason for implementing GDPs. When this happens, the number of customers present in the queuing system ”blows up”, and no steady-state can exist. 2. The inter-arrival times of flights does not necessarily follow a Markovian arrival process: The Markovian arrival process assumes the inter-arrival times of flights in the GDP are independent and identically distributed random variables with exponential distribution [29]. The exponential distribution has the ”no-memory property” and depicts that it does not matter how long it has been since the last flight’s scheduled arrival to know the probability distribution of the time until the next flight’s scheduled arrival. The flight schedules are done by airlines through rigorous efforts and accounts for passenger choices of schedule times, aircraft utilization, crew scheduling, competition and hubbing impacts. As a result, the inter-arrival times of flights are not independent and identically distributed. For example, it is very common to see two main competitor airlines scheduling a flight on the same origin-destination pair at the same time. 3. The bulk arrivals are not allowed in this formulation: The Mi /Gi /1/N P RP/∞/∞ model with customer-dependant waiting costs only allows one arrival at a given instant [30]. On the other hand, multiple flights can be scheduled to arrive at exactly the same time during a GDP. 4. Most real-world systems are too complex and these models must be studied by means of simulation: If the relationships that compose a model are simple enough, it may be 35 possible to use analytical models to obtain exact information on questions of interest. Most complex real-world systems with stochastic elements cannot be accurately described by a mathematical model that can be evaluated analytically [31]. The above formulation of the GDP process in queuing theory gets very complicated when 300400 flights in a GDP are assumed to have their own customer types. In addition, the complexity of the GDP process makes the simulation a better alternative when evaluating rationing rules. After the initial slot allocation (which can be represented with queuing formulations), the flight exemptions, the airline substitutions and cancellations as well as the compression process changes the arrival queue order which is very hard to represent in a probability distribution. The actual GDP process for these situations follow well-defined principles which is more suitable for simulation. Moreover, the simulation allows the control of different inputs and parameters to better compare the system behavior and the sensitivity of the system to certain elements. 2.2.2 Literature on GDP Rationing Rules Table 2.1 summarizes the three key sources on this topic and the similarities and differences among them. This table also serves as a comparison between the methods developed in this research and the methods previously developed. Vossen (2002) examined multiple approaches to find a fair arrival slot allocation mechanism for airlines during GDPs. The motivation behind his research was that the notion of fairness is implicit in GDP procedures and the RBS algorithm, even though it is the main component of any allocation procedure. In addition, GDP equity metrics are calculated on airline-basis at the end of the GDP, while slots are allocated on flight-basis. 36 37 Article Vossen (2002) Hoffman (2007) Hall (1999,2002) Manley (2008) No 1 2 3 4 Airlines& Passenger Connections Airlines& Passengers Ration-by-Schedule Ration-by-Passengers Ration-by-Aircraft Size Ration-by-Distance Ration-by-Fuel Flow high precedence Ration-by-Fuel Flow low precedence Airlines Airlines Airlines Focus Arrival-Departure Capacity Allocation Method (ADCAM) Objective-based Allocation Method (OBAM) Airline-based Delay Allocation Cost Sharing (Shapely Value) Proportional Random Assignment Total Deviation Model (Compression alternative) Greedy Procedure (Ideal Shares) (Compression alternative) Total Deviations Model with Proportional Random Assignment Greedy Procedure with Proportional Assignment Ration-by-Distance (RBD) Equity-based RBD GDP Rationing Rule Y Y NA N N Subs& Cancel Modeling Table 2.1: Literature Review 2007 2007 2007 2007 2007 2007 GDPs GDPs GDPs GDPs GDPs GDPs July 10 1997 NA 1 day EWR, EWR, EWR, EWR, EWR, EWR, LGA, LGA, LGA, LGA, LGA, LGA, ORD, MSP NA SFO BOS Optimization Optimization Stochastic Dynamic Simulation (Airlines) Optimization (Airport) Simulation (Airport) Optimization (Airlines) Simulation Stochastic BOS Optimization NA NA BOS, LGA NA Airport EWR, LAX Jan-May 2001 with variations Problem Optimization Optimization Simulation Algorithm Algorithm Optimization Optimization JFK JFK JFK JFK JFK JFK Airline-based allocation is the first rationing method examined in Vossen (2002). In this allocation, each airline is responsible for a proportional share of the overall delay with respect to the number of flights. In other words, if two airlines have the same amount of flights in the GDP, the slots are assigned to the flights so that the average delay for both airlines is as close as possible. This method works well for airlines whose schedule tends towards the GDP End Time at the expense of airlines whose schedule tends towards the GDP Start Time. Airlines with more flights earlier in the GDP are assigned earlier slots but then get penalized more for their later flights, even though the earlier flights are the only flights that can use these slots. This method can also find multiple optimal assignments with significant differences in the distribution of the flight delays within an airline. The application of the Shapely Value to GDPs is the second rationing method examined in Vossen (2002). In this method, an airport is considered to be a production technology that is jointly owned by a set of airlines (or flights). An airport produces arrival slots, which are differentiated by their arrival time. Each airline(or flight) has a demand, however, total demand can only be produced at a certain amount of delay. The Shapely Value is a unique method that distributes this delay among airlines (or flights) while satisfying three important equity axioms (Dummy axiom, Impartiality axiom, Additivity axiom). The Shapely Value assigns the expected delay that each airline (or flight) would receive if they are given the first priority, assuming that all orderings are equally likely. Even though the Shapely Value is a well-known method in cooperative game theory, its application in GDPs has a couple drawbacks. One problem is that the removal of an airline (or flight) and its share change the allocation for the remaining airlines (or flights) (does not satisfy Consistency axiom). Another problem is that this method allows all flights to have equal claims to all the slots, even if the flight cannot use the slot. Equal claims to all slots also raise some practical difficulties, such as how to distribute 1/3 of a slot. 38 The third rationing method developed in Vossen (2002) is the axiomatic slot allocation called ”Proportional Random Assignment”. In this method, the GDP is a general allocation problem with heterogeneous arrival demand (different arrival times). It defines axioms or rules to determine each agent’s (agent can be a flight or an airlines) slot shares. These axioms are: • Impartiality axiom: If two flights are indistinguishable in type and both in feasible set, then they will receive the same slot. • Consistency axiom: Expected slot shares should be independent of the order in which flights are assigned to slots. • Composition axiom: Expected slot shares should not change if the slots are first allocated up to period t, and subsequently to the remaining slots. • Time-independence axiom: If identical and feasible demand profiles were to arrive at two different slots, the capacities should be allocated in the same way. • Collusion-proofness axiom: This axiom only applies if the allocation is based on airlines and states that no airline or group of airlines should have an advantage or disadvantage from grouping its flights. Following these axioms, Proportional Random Assignment first puts the arrival flights in order of their scheduled arrival times. Earlier arrival times have priority over later arrival times. Then, if the allocation is done by flights, the slot is assigned randomly to a flight from the feasible set. Each flight is entitled to an equal share of slots which are after the flight’s scheduled arrival time. If allocation is done by airlines, the slot is assigned randomly to an airline with a probability that is proportional to the number of that airline’s remaining flights in the earlier scheduled arrival time category. This methodology is an alternative to the RBS and is compared the RBS using actual GDPs at BOS and LGA in January through May 2001. The results showed little difference in the average delays between the two rationing rules. Even though their underlying philosophies are 39 fundamentally different, these rationing rules give similar results. However, Proportional Random Assignment may introduce a substantial amount of variance in the assigned delays, which may not be acceptable by airlines. Flight cancellations, substitutions and GDP exemptions make it impossible to achieve an ideal slot allocation assigned by the algorithm. To overcome this problem, Vossen (2002)introduced two more methodologies that will approximate airline slot allocations as fair as possible; Minimizing Total Deviation and Minimizing Deviation of Ideal Shares. These methods can be seen as alternatives to the compression where available slots are re-rationed every time there is an open slot in the schedule. In both algorithms, the RBS assignment of slot shares is assumed to be the ideal slot allocation. The Total Deviation is applied using a network flow optimization model and favors the airline with the highest number of flights that can use the slot. The Ideal Shares method is applied through an integer optimization program called ”Greedy Procedure” that favors the airline with the earliest flight that can use the slot. The Greedy Procedure assigns the next available slot to an airline with the highest remaining priority that can use the slot, where remaining priorities correspond to each flight’s ideal position. the Greedy algorithm is compared against Compression at EWR (3 scenarios) and LAX (1 scenario) airports. The results indicate that the Greedy Procedure and Compression result in very similar flight-slot assignments. To integrate GDP flight exemptions and their impacts Minimizing Total Deviation and a variation of the Greedy Procedure are used. Experiments at BOS airport showed that the Total Deviation model resulted in a significant impact on delays due to flight exemptions whereas Greedy Procedure resulted in only a slight impact. Two alternative fairness standards were developed by Vossen (2002) using the results of the above experiments: The Total Deviations Model with Proportional Random Assignment and the Greedy Procedure (Ideal Positions Model) with Proportional Assignment. Versions of Total Deviations Model and Ideal Shares Model described above assume the RBS assignment as the ideal assignment. This time the Total Deviations Model assumes 40 the Proportional Random Assignment as the fair slot assignment and the Greedy Procedure assumes the Proportional Assignment as the fair slot assignment rather than the RBS. The Proportional Random Assignment assigns slots based on a proportion to each airline’s current unsatisfied demand after taking the schedule arrival times into account. If the slot is before the flight’s scheduled arrival time, it is not assigned to the flight. On the other hand, the Proportional Assignment entitles all available slots to all flights without looking at the flight’s schedule arrival time. The results compare 6 different airlines’ delays under the RBS and mentioned fairness standards at BOS airport. On the aggregate, the RBS and the Total Deviations with the Proportional Random Assignment yield similar results. However, the Proportional Assignment yields better on-time performance than the RBS, but general aviation flights are penalized with delays longer than two hours. The objective of Hoffman (Hoffman, Ball and Mukharjee, 2007) is to find a new rationing rule which maximizes airport throughput during GDPs and preserve equity among airlines at the same time. The motivation was that if short-haul flights are assigned greater proportion of the total GDP delay, the airport capacity can be used more effectively when weather conditions get better, since these flights can respond quicker due to their short enroute time and fill up the risen airport capacity. A stochastic and dynamic GDP delay assignment model is developed, which minimizes total expected ground delay for all GDP flights. The model assumes no airborne delay. Stochasticity in the model comes from GDP cancellation time. Cancellation time depends on the weather condition and it is a random variable with a discrete probability distribution. The dynamic aspect of the model comes from CTD and CTA assignments. The departure time of a flight depends on the assigned arrival slot and GDP cancellation time. CTDs and CTAs are waived when GDP is cancelled, assuming the rise in capacity is sufficient enough to accommodate the pent-up demand. In the model, enroute time for each flight is deterministic and known. There are three algorithms compared; Distance-based RBS, Ration-by-Distance (RBD), and Equity based Ration-by-Distance (E-RBD). Distance-based RBS is the RBS algorithm with 41 distance scope (see Section 2.1.1). Ration-by-Distance (RBD) only exempts flights which are airborne at the GDP start time, then assigns slots to remaining flights in order of their enroute times. RBD gives priority to greater enroute times over smaller ones. However, this may lead to high delay penalties for some flights. To solve this issue, E-RBD is developed. E-RBD follows the RBD algorithm by assigning temporary slots, then checks whether any flight is assigned a delay above a chosen equity deviation limit. If there is such a case, then this flight is assigned a new slot permanently which is feasible. Three algorithms are compared at SFO on August 11, 2005 (ASPM). GDP is implemented starting at 9:00am and ending at 13:00. AAR is reduced to 30 aircraft/hour from 60 aircraft/hour. There are 5 cancellation scenarios considered; no cancellation, GDP is cancelled one, two, three, and four hours earlier. Efficiency of each rationing rules is calculated as the resulting total flight delay. The equity of each rationing rule is computed as the maximum positive deviation of a flight’s slot from its RBS allocation in minutes. The results of the analysis show that Distance-based RBS has perfect equity when GDP is not cancelled. The RBS calculates the slots based on a GDP End Time. If the program is run to completion, then perfect equity is accomplished since equity is measured as the deviation from the RBS. If GDP is not cancelled, RBD penalizes short-haul flights heavily. However, RBD saves significant delays when GDP is cancelled early. For example, if GDP is cancelled two hours earlier, RBD results in 49% less total flight delay compared to the RBS, whereas the RBS results in 35% more equity than RBD. E-RBD algorithm behaves the same way as the RBD but the savings depend largely on the delay limit imposed on flights. If GDP is cancelled 2 hours earlier, E-RBD shows more efficient and equitable results over Distance-based RBS for all cases experimented where the delay limit is varied between 0 and 180 minutes. The disadvantage of E-RBD is that it is only worthwhile when GDP is cancelled earlier. The results does not take into account the extensions and revisions to the program. ASCENT is a simulation tool developed by MIT Draper Laboratory that can predict the performance of new ATFM investments by incorporating various user decisions. There 42 are two rationing rules developed in Hall (1999, 2002). First rationing rule is called ArrivalDeparture Capacity Allocation Method (ADCAM). ADCAM allocates both arrival and departure capacity to airlines according to the published schedule, then airlines decide how to trade-off their departure slots for arrival slots according to the overall airport arrivaldeparture capacity curves. If airport departure limit is set to unlimited, ADCAM performs like the RBS. Under ADCAM, the current GDP process is run as is but ADCAM is used instead of the RBS, allocating both arrival and departure slots. Inputs to ASCENT are scheduled flight demand and capacity forecast of the airport. Capacity forecasts are represented through times at which the capacity changes, and through coefficients of which each pair (arrival, departure) shows one constraint in arrival-departure space. Airport is modeled as a queuing system. Departure queues use ”first-planned, first-served” discipline, while arrival queues use ”first-come, first-served” principle. Airport arrival and departure capacity is calculated at each simulation period (10 minutes) and it becomes an input to airline and ATC planning for next steps. ASCENT produces outputs such as statistics by 10 minute intervals on number of arrivals and departures, number of passengers, number of passenger connections made, flight delays, passenger delays and realized airline objective function values. The metric by which the proposed methods are judged is the realized airline objective values at the end of the allocation. Maximization of this metric produces different results from solely minimizing flight delays. Airline decision models use flight schedules derived from Airline Service Quality Performance (ASQP), Official Airline Guide (OAG), and Computer Reservation System (CRS). Aircraft type assigned to a route is directly proportional to the actual times of that aircraft flown on that route. Passenger itineraries are generated probabilistically based on flight schedules. Load factor for each flight is simulated based on a Normal distribution with a mean of 0.75 and a standard deviation of 0.25. Each passenger has a binomial probability to be a connecting passenger based on historical data. If the passenger is connecting, the destination airport is chosen from the available departure flight, considering a minimum connect time, based on a Gamma distribution with a mean of 105 and a shape parameter of 1.2. This mimics hub operations at the arrival 43 airport. The model accounts for network effects indirectly through multipliers expressing the relationship between the time of day of a given delay and the additional network delays caused by that delay later on. There are three airline specific cost parameters. ”Paxval” is the value to the airline of delivering the passenger to his destination on time relative to not delivering the passenger at all. ”Paxdlycost” is the cost to the airline of delaying one passenger one minute. In the simulation, the ratio of ”paxval” over ”paxdlycost” is chosen to be 90, meaning it is preferable to a cancel a passenger’s flight up front than to delay the passenger more than 90 minutes. ”Airframefact” multiplier defines the cost of delaying the aircraft by one minute relative to delaying a passenger on board for one minute. Airline decision model is an integer optimization model that maximizes the total value of arrivals, departures, and passenger connections for an airline. If there is not enough time between two flights the passenger misses his connection. The model is run deterministically. ADCAM is compared to the RBS in three different analyses. First analysis compares the airline objective values under the RBS and ADCAM under 100%, 68.75%, 50%, and 31.25% airport capacity. The results at ORD and MSP schedule on July 10th, 1997 show that as the airport capacity decreases, the total airline objective value decreases. Total objective value decreases at an increasing rate when cancellations, misconnections, and large amounts of delays become necessary. Even though the objective value behaves the same way under both methods, airlines always achieve a greater value with ADCAM than the RBS. The reason behind this is that ADCAM allows airlines achieve better connectivity without using more airport capacity and it eliminates the issue of an airline overloading the airport with a delayed departure push. However, airlines with small number of operations can get greatly penalized. Second analysis examines sensitivity of the airline objective function using four different objective functions. Under the objective function 1, cost of a flight delay is equal to the cost of resulting passenger delay. A solution in which a departure carrying 100 passengers is delayed 10 minutes is equally desirable to a solution in which the flight operates on time and leaves 10 passengers to wait 100 minutes for next connection. Under objective functions 2, 3 and 4 a flight delay costs twice, five times, and twenty times 44 as much as the resulting passenger delay, representing scenarios where a flight delay causes significant downstream delays. The results at ORD on July 10th, 1997 under 50% airport capacity show that ADCAM offers the greatest improvement over the RBS at moderate flight delay to passenger delay ratios, where the airline’s objective is to operate on time and connect passengers. At very large ratios, the airlines’ main objective becomes to operate to the schedule and the improvement is not as pronounced. Third analysis compares ADCAM to the RBS with different levels of arrival-departure interactions using five different forms of arrival-departure capacity curves, ranging from a direct trade-off to no interaction. The results at ORD schedule on July 10th, 1997 show that ADCAM provides better performance even in the case of no arrival-departure interaction. Because ADCAM rations departures as well as arrivals, it allows airlines to reserve departure slots and spend time at the gate rather than in the departure queue, saving fuel and emissions. It also allows passengers on delayed arrivals to connect to their departure flights. However, some of this performance improvement in capacity may be exaggerated. Under ADCAM, the airlines ensure that available arrival and departure capacities are used in the best possible way. Under CDM, the FAA must perform this function but the simulation may allow fewer operations in a period than the real system would under similar circumstances. Another issue is that the forms used in the analysis differ greatly in their arrival-only and departure-only capacities. This is likely due to the difference in amount of capacity available rather than due to the shape of the arrival-departure capacity curve. Another GDP rationing rule developed in Hall (1999) is ”Objective-Based Allocation Method (OBAM)”. OBAM assigns arrival slots to GDP flights by maximizing the collective airline value. It uses airline objective functions to assign slots, but it does not allow airlines to represent combinatorial or stochastic objectives directly. OBAM does not treat uncertainty but it allows a dynamic mechanism where the airlines and the FAA can update information as it becomes available. The motivation behind OBAM is to prevent airlines from scheduling flights they don’t intend to fly to gain advantage during GDPs. OBAM follows the steps described below: 45 1. Determine the available arrival slots over the given planning horizon. 2. Report the estimated time of slots to airlines. 3. Accept inputs from airlines for each slot • The difference in the addition economic value of the flight between if it is assigned to this slot and if it is cancelled. • The time by which the flight must be notified of an assignment to this slot (Commitment Time). 4. Accept inputs till the next commitment time occurs. If a new slot is available during this interval, go to step 2. 5. Reserve slots to flights by maximizing the collective airline values. Final assignments are made at the flight’s commitment time. 6. Assess a fee to each airline coalition. For each coalition, calculate the final slot assignments during the planning horizon that would have occurred if this coalition was not present. Take the difference of total value achieved through slot assignments with and without coalition. With OBAM, an airline, which schedules a flight to gain advantage and then cancels it, pays for the lost productivity of other airlines’ as a result of its action. It is in an airline’s best interest to inform the FAA of its intent to cancel a non-profitable flight as soon as possible. Another advantage of OBAM is that it takes into account airlines’ preference information by allowing airlines to specify their own criteria as a part of slot distribution. This preference information could also be used to improve other tools (e.g. CTAS, FAST) and to provide an accurate quantification of the economic benefits from capacity-increasing technologies. In practice, OBAM requires airlines to pay fees for the slots they receive. These fees may be viewed by airlines as means to introduce new taxes. One approach that would avoid such fees is to run OBAM as follows. First, the RBS allocation is run, and 46 the assigned slots are given to the users. Then, OBAM is run, charging real money for the assigned slots and giving the money collected for each slot to the owner of that slot. An airline uncomfortable with OBAM can specify a very high value on each of its FAA-assigned slots at no cost, since OBAM would refund any costs to the user. Airlines that want to participate in OBAM can do so by submitting bids reflective of their true slot values. The resulting allocation might cost the airline money, but the cost would be more than offset by the improvement in the value of slots received. The benefit of this approach is that it relies on the FAA’s existing slot allocation method, which has been accepted by the airlines, but allows further optimization of the allocation through a market. The drawback is that the RBS algorithm is used so airlines can still benefit from scheduling flights that they do not intend to fly. Furthermore, there may be long-term gaming issues involved. It is possible that an airline might receive long-term benefit from causing its competitors to pay high fees by bidding for slots for which it had no use but this would require a great amount of money. The strategy also has to work routinely for it to accomplish this objective. Previous research has examined the impact of GDP rationing rules on only airline performance and equity. This research is directed toward examining the impact of GDP rules on passenger flow and fuel flow efficiency as well as airline and passenger equity. 47 Chapter 3: Methodology The GDP Rationing Rule Simulator (GDP-RRS) is a simulation, which analyzes the impact of alternative GDP rationing rules on the performance and equity from the view point of airlines and passengers. Sections 3.1 explains the GDP-RRS in detail, Section 3.2 explains the performance and equity metrics calculated, and Section 3.3 describes the validation of the model. 3.1 GDP Rationing Rule Simulator The GDP Rationing Rule Simulator (GDP-RRS) is a simulation, which analyzes the impact of alternative GDP rationing rules on the performance and equity from the view point of two stakeholders; airlines and passengers. The GDP-RRS is developed in Matlab. It inputs the GDP parameters, the flight schedules and the flight parameters for the GDP day, an airline substitution strategy, and a GDP rationing rule. It outputs the GDP performance and equity metrics for the airlines and the passengers in the GDP. Figure 3.1 shows the components of this simulation. GDP-RRS contains three main modules: GDP Slot Assignment Module, Airline Substitutions and Cancellations Module, and Compression Module. The ”GDP Slot Assignment” module creates arrival slots based on GDP parameters and allocates these slots to flights in the GDP based on the selected GDP rationing rule. The inputs are the daily flight schedule and GDP parameters. The outputs are the assigned CTD and CTA for each flight in the GDP. 48 Figure 3.1: GDP Rationing Rule Simulator (GDP-RRS) The ”Airline Substitutions and Cancellations” module captures the airline decision making after the initial GDP slot assignment. The inputs are the assigned CTD and CTA for each flight from the previous module, the cancellation probability for each flight and the airline substitution strategy. The outputs are the assigned CTD and CTA for each flight after airline substitutions. The ”Compression” module reallocates the unused slots that airlines cannot fill through substitutions. The reallocation is based on the given GDP rationing rule and the scheduled arrival time of each flight. The flights have to comply with the CTDs and CTAs assigned by the compression within a 5-minute window. The inputs are the airline submitted CTD and CTA for each flight from the previous module. The outputs are the CTD and CTA for each flight after the compression. After each module, GDP performance and equity metrics are calculated. These are: 49 1. GDP Performance Metrics: (a) Flight Delay due to GDP (b) Passenger Delay due to GDP (c) Extra Fuel Burn due to GDP 2. GDP Equity Metrics: (a) Airline Equity by Major Carrier i. Airline Equity due to Flight Delays ii. Airline Equity due to Fuel Burn (b) Passenger Equity by Airport Category There are nine main processes in the GDP-RRS follows. GDP Slot Assignment Module is responsible for Processes 1-5, Airline Substitutions and Cancellations Module for Processes 6-7, and Compression Module for Processes 8-9. The GDP-RRS simulation code is provided in Appendix A. 1. Calculate required variables for each flight. 2. Find flights in the GDP. 3. Create priority queues (exempt and non-exempt flights). 4. Create slots. 5. Assign slots to flights. 6. Cancel flights. 7. Substitute flights. 8. Run compression. 9. Issue each flight its CTD and CTA. 50 3.1.1 GDP Slot Allocation Module The GDP Slot Assignment Module assigns slots to flights that are scheduled to arrive at the GDP airport during the program. Figure 3.2 shows the pseudo algorithm for the steps taken in this module. The differences between the GDP-RRS simulation algorithms and the actual GDP algorithms are shown in italics. 1.Calculate Required Variables for Each Flight: The simulation inputs the daily flight schedule, the GDP parameters and the GDP Rationing Rule. The GDP parameters and flight schedules are obtained from the Flight Schedule Analyzer (FSA) database maintained by Metron Aviation Inc. [32]. This database uses the fields from Enhanced Traffic Management System (ETMS). The FAA uses the ETMS at the ATCSCC, the Air Route Traffic Control Centers (ARTCCs), and major Terminal Radar Approach Control (TRACON) facilities to provide the ATC specialists with tools such as FSM, and the traffic counts for the airspace sectors, airports, and fixes [33]. The Scheduled Gate Time of Arrival and the Scheduled Gate Time of Departure for each flight are inputs to the model. The Scheduled runway times (Scheduled Runway Time of Arrival (SRTA) and the Scheduled Runway Time of Departure (SRTD)) are used in the GDP slot assignments and they are calculated from these inputs assuming 10 minute taxi times [34]. The Estimated Time Enroute (ETE) for each flight is the difference between the SRTA and the SRTD [34, 35]. To accommodate new GDP rationing rules, some flight fields are added to the flight schedule which are currently not available in the ETMS. These fields are ”Available Seats”, ”Load Factor”, ”PAX”, ”Etaxi” and ”Eapu”. • ”Available Seats” is the number of seats available on each flight. The input flight schedule contains the aircraft type for each flight but not the number of seats on that flight. This information is obtained using the International Civil Aviation Organization (ICAO) Aircraft Engine Exhaust Emissions Data Bank [36]. The available seats on each flight is calculated as the average yearly number of seats for a given aircraft 51 type. If this information is not available in the database, the closest match in the database is used. The available seats for each aircraft type used in the dissertation can be found in Appendix C. • ”Load factor” is the ratio of passengers on-board to the available seats in each flight. The monthly load factor for a given airline from a given origin airport can be obtained from the ”T-100 Domestic (All)” table from the Bureau of Transportation Statistics (BTS) [37]. This table contains domestic non-stop segment data reported by both U.S. and foreign air carriers when both origin and destination airports are located within the boundaries of the United States and its territories [37]. The yearly average load factors rather than the monthly average load factors are used in the simulation. However, BTS only reports data from airlines that account for at least one percent of domestic scheduled passenger revenues. For international origins, unknown airlines, and airlines coming from unknown origins, the default load factor is assumed to the 100%. • ”PAX” is the number of passengers on-board each flight and is calculated as the available seats on a flight multiplied by its load factor. • ”Etaxi” is the fuel burn rate of each aircraft during the taxi phase. Due to gate restrictions at the airports, flights cannot wait indefinitely at the gate. In the simulation, all flights are assumed to be leaving the gate on time and take their GDP delays in the taxi queue or at the ramp. It is assumed that if the GDP assigned delay is not more than 20 minutes, the flight wait for its CTA with all engines operational. If the assigned delay is more than 20 minutes, then all engines are operational during the 20 minutes of the delay (”taxi phase”). ”Etaxi” is the aircraft fuel burn rate multiplied by the number of engines. This is the value the GDP rationing rules Rationby-Fuel-Flow-high-precedence (RBFFhigh) and Ration-by-Fuel-Flow-low-precedence (RBFFlow) ranks the flights in the GDP. The fuel burn rate and the typical number 52 of engines for each aircraft is obtained from the International Civil Aviation Organization (ICAO) Aircraft Engine Exhaust Emissions Data Bank [36] database. The Etaxi rates for each aircraft type used in the dissertation can be found in Appendix C. • ”Eapu” is the fuel burn rate of each aircraft when the engines are running at idle. If the flight’s assigned GDP delay is longer than 20 minutes, the flight is assumed to use its APU for any delay in excess of 20 minutes. The Auxiliary Power Unit (APU) is an engine on the aircraft, generally located in the back that can provide energy for functions other than propulsion. The fuel burn rate is different when the aircraft is on APU and when its engines are operational. This value is not provided in any of the tables in the available databases. The fuel burn rate for APU is assumed to be 28% of the single engine fuel burn rate, taking Boeing 737 as the base rate. 2.Find Flights in the GDP: All flights scheduled to arrive at the GDP airport during the capacity restricted hours are assigned control times [34, 35]. These flights are called ”controlled flights” [34,35]. The delay as a result of the capacity reduction is only distributed among the non-exempt flights [34, 35]. For a flight to be controlled, it needs to fulfill the below requirements: • Flight’s SRTA is between the GDP Start and End Time. • Flight’s Popup Time is before the GDP Data Time (Flight is known to the ATC specialist when he or she is making her decision whether to implement a GDP). 3.Create Priority Queues: Two priority queues are created for all controlled flights; an Exempt Flights queue and a Nonexempt Flights queue [34, 35]. The Exempt Flights queue has precedence over the Non-exempt flights [34, 35]. A flight can be exempt due to many reasons (see Section 2.2). In the simulation, the Exempt Flights queue only contains the international flights (Canadian airports can be included in the non-exempt flights queue) and the flights departing from the airports outside the GDP scope. 53 Figure 3.2: Steps in GDP Slot Assignment Module 54 4.Create Slots: The number of slots available for distribution depends on the Program Airport Acceptance Rate (PAAR). The airport capacity profile in 15 minute bins is an input to the model. Slot size is the time in minutes between two available slots [34,35]. The number of slots created depends on the number of scheduled flights [34, 35]. The slot times are uniformly distanced based on the Slot Size starting from the GDP Start Time [34, 35]. 5.Assign Slots to Flights: The assignment of slots to flights is done by queue type [34,35]. The Exempt Flights are assigned their slots first based on an ordering of increasing SRTA [34,35]. Then, the Non-exempt flights are assigned their slots based on an ordering depicted by the GDP rationing rule. For each flight, the algorithm searches for the earliest slot which has the slot time equal to or later than the flight’s SRTA. When such a slot is found, the flight’s CTA becomes the chosen slot time [34, 35]. The CTD is back-calculated using the CTA and the ETE for the flight [34, 35]. These CTAs and CTDs are sent to the Airline Substitutions and Cancellations Module. At the end of the GDP Slot Assignment module, the GDP performance and equity metrics are calculated as a result of the initial slot assignment. Since this module does not take cancellations into account, passenger delays and extra fuel burn are functions of the assigned flight delays, and are defined in more in detail in Section 3.4. 3.1.2 Airline Substitutions and Cancellations Module The Airline Substitutions and Cancellations Module captures the airline decision making on which flights to cancel and which flights to substitute. This module simulates the process of airline substitutions and cancellations. Figure 3.3 shows the pseudo algorithm for the steps taken in this module. The differences between the GDP-RRS simulation algorithms and the actual GDP algorithms are shown in italics. 55 Figure 3.3: Steps in Airline Substitution and Cancellation Module 6.Cancel Flights: Historical data from FSA flight database is used to simulate flight cancellations. The cancellation probability for a given airline on a given route is calculated as the total cancellations performed divided by total scheduled flights. This probability takes into account the seasonal factors as well as the airline strategies to mitigate delays. Each flight is cancelled randomly based on a probability distribution for a given airline from a given origin airport in the year that GDP is implemented. 7.Substitute Flights: Airline substitutions are performed following the cancellations. If there is a cancellation, the released slot can be used by another flight from the same airline. For a flight to be substituted into an earlier slot, the flight’s CTA should be later than the open slot time (otherwise, substitution will only increase the assigned delay) and the flight’s SRTA should not be before the released slot time (this assures that the flight can depart at the assigned CTD)[35]. If such a substitution is made, the flight’s CTA and CTD are recalculated and its previous slot is open for another possible substitution [35]. The substitution algorithm stops when no further substitutions can be made. 56 The substitution algorithm uses two different strategies to simulate airline behavior. • Flight-based Substitution Strategy orders an airline’s flights by the increasing SRTA and gives the earlier scheduled flights precedence for the substitution. This strategy tends to minimizes an airlines overall GDP flight delay. • Passenger-based Substitution Strategy orders an airline’s flights by the decreasing number of passengers on-board (PAX) and gives precedence to the flights carrying more passengers. This strategy tends to decrease passenger delays for the airline and gives the passenger connections more importance. At the end of this module, the GDP performance and equity metrics are calculated as a result of airline substitutions and cancellations. When a flight is cancelled, the simulation transfers these passengers to the next flight operated by the same airline from the same origin. If high load factors prevent the accommodation of all passengers, for the purpose of this simulation, it is assumed that these passengers will leave the airport the next day at 6am. Flight cancellations reduce the airline’s flight delay but increases passenger delays. These metrics are defined in more in detail in Section 3.4. 3.1.3 Compression Module The objective of the Compression module is to use the unused arrival slots more efficiently by reallocating them to the flights in the GDP. Due to scheduling times of flights, airlines might not be able to fill all of their slots opened by the cancellations. The compression module inputs the airline submitted flight information and allocates these slots based on the GDP rationing rule. The differences between the GDP-RRS simulation algorithms and the actual GDP algorithms are shown in italics. 8.Run Compression: The compression tries to fill in the unused slots after the airline substitutions and cancellations [34, 35]. If an unassigned slot is found, the algorithm checks if the delay of any non-cancelled flight can be reduced by assigning the flight to this slot 57 Figure 3.4: Steps in Compression Module [34, 35]. First, flights from CDM member airlines are considered in the order of their ranking due to the chosen GDP rationing rule, followed by the remaining flights [34, 35]. Assignment is done only if the flight can depart by its new assigned slot [34, 35]. If such a flight is found, the flight’s CTA and CTD are recalculated, and the flight’s previous slot is made available for compression. If no flight is found, then the slot remains unassigned [34, 35]. The algorithm stops when all unassigned slots have been considered [34, 35]. 9.Issue CTA and CTD: The last step in the algorithm is to validate the slot assignments before the CTDs and CTAs are issued. Algorithm checks if each flight is assigned to only one slot, if each slot is assigned to only one flight, and if each flight’s SRTA is equal to greater than assigned slot time [34, 35]. If there is a problem, the algorithm goes back to Step-5. If not, the GDP performance and equity metrics are calculated. 3.2 Performance and Equity Metrics GDP-RRS calculates three performance metrics for each flight in the GDP: 58 1. Flight Delay is the number of minutes each flight is delayed from its scheduled time of arrival. This value is calculated at the end of each module: • F lightDelayInitial is the delay of flight i assigned as a result of the initial slot assignment. It is the difference between the flight’s assigned CTA at the end of GDP Slot Assignment Module and its SRTA. F lightDelayInitial,i = CT AInitial,i − SRT Ai (3.1) • F lightDelaySub is the delay of flight i as a result of the airline substitutions and cancellations. It is the difference between the flight’s assigned CTA at the end of Airline Substitutions and Cancellations module and its SRTA. This value is zero for cancelled flights. F lightDelaySub,i = CT ASub,i − SRT Ai (3.2) • F lightDelayComp is the delay of flight i at the end of the simulation. It is the difference between the flight’s assigned CTA at the end of the Compression module and its SRTA. This value is zero for cancelled flights. F lightDelayComp,i = CT AComp,i − SRT Ai (3.3) 2. Passenger Delay is the number of minutes passengers on each flight is delayed from their scheduled time of arrival. This value is a function of flight cancellations as well as flight delays. • P axDelayInitial is the passenger delay assigned to the passengers on flight i as a result of the initial slot allocation. This value does not take into account flight cancellations. It is the multiplication of the assigned flight delay with the number 59 of passengers on-board. P axDelayInitial,i = (CT AInitial,i − SRT Ai ) ∗ P AXi (3.4) • P axDelaySub is the passenger delay on a flight i as a result of the airline substitutions and cancellations. It is calculated differently whether the flights is cancelled. If the flight i is not cancelled, it is the multiplication of the flight delay at the end of the Airlines Substitutions and Cancellations module with the number of passengers on-board. If the flight i is cancelled, the cancelled flight i’s passengers are transferred to other flights operated by the same airline and originating from the same airport (j, . . . , k). P AXi,j is the number of passengers transferred from flight i to flight j. A cancelled flight’s passengers are transferred to other available flights till there are no more stranded passengers or till there are no more seats. If there are still unaccommodated passengers at the end of this transfer process, these passengers are assumed to leave the airport the next morning at 6am on a flight operated by the same airline. In other words, the passenger delay is a function of both the flight delay and the amount of time the passengers have to wait at the airport if their flight is cancelled [4, 38]. If flight i is NOT cancelled, then P axDelaySub,i = (CT ASub,i − SRT Ai ) ∗ P AXi (3.5) If flight i is cancelled, then P axDelaySub,i = (3.6) P ( kj=1 ((CT ASub,j − SRT Ai ) ∗ P AXi,j )) + P (N extM orning6am − SRT Ai ) ∗ (P AXi − ( kj=1 P AXi,j )) 60 • P axDelayComp is the passenger delay on a given flight at the end of the simulation. It is calculated similar to the P axDelaySub , but using the flight’s CTA at the end of the compression. If flight i is NOT cancelled, then P axDelayComp,i = (CT AComp,i − SRT Ai ) ∗ P AXi (3.7) If flight i is cancelled, then P axDelayComp,i = (3.8) P ( kj=1 ((CT AComp,j − SRT Ai ) ∗ P AXi,j )) + P (N extM orning6am − SRT Ai ) ∗ (P AXi − ( kj=1 P AXi,j )) 3. Fuel Burn is the extra fuel burn on the ground for each flight while it is waiting for its CTD. This value is the multiplication of a flight’s delay with the fuel burn rate by aircraft type. If the flight is delayed up to 20 minutes, taxi fuel burn rate (Etaxi) is used in the calculation. If the flight is delayed more than 20 minutes, taxi fuel burn rate (Etaxi) is used for the 20 minutes of the delay. For delay in excess of 20 minutes, APU fuel burn rate (Eapu) is used. • F uelBurnInitial is the extra fuel burn for flight i as a result of its initial slot assignment. It is the multiplication of the flight’s initial assigned delay and its fuel burn rate. If F lightDelayInitial,i ≤ 20min, then F uelBurnInitial,i = F lightDelayInitial,i ∗ Etaxii 61 (3.9) If F lightDelayInitial,i > 20min, then F uelBurnInitial,i = (20 ∗ Etaxii ) + ((F lightDelayInitial,i − 20) ∗ Eapui )(3.10) • F uelBurnSub is the extra fuel burn for flight i as a result of the airline substitutions and cancellations. It is the multiplication of the flight’s delay after the airline substitutions and its fuel burn rate. This value is zero for cancelled flights. If F lightDelaySub,i ≤ 20min, then F uelBurnSub,i = F lightDelaySub,i ∗ Etaxii (3.11) If F lightDelaySub,i > 20min, then F uelBurnSub,i = (20 ∗ Etaxii ) + ((F lightDelaySub,i − 20) ∗ Eapui ) (3.12) • F uelBurnComp is the extra fuel burn for flight i at the end of the simulation. It is the multiplication of a flight’s delay after the compression and its fuel burn rate. If F lightDelayComp,i ≤ 20min, then F uelBurnComp,i = F lightDelayComp,i ∗ Etaxii (3.13) If F lightDelayComp,i > 20min, then F uelBurnComp,i = (20 ∗ Etaxii ) + ((F lightDelayComp,i − 20) ∗ Eapui ) (3.14) The performance metrics explained above are calculated for each flight controlled in the GDP. Performance for the GDP is the sum of these values. The results in Chapter 4 show the GDP performance at the end of the compression (at the end of the simulation). For a 62 GDP, these values are calculated as follows: T otalGDP F lightDelay = n X F lightDelayComp,i (3.15) i=1 T otalGDP F uelBurn = n X F uelBurnComp,i (3.16) P axDelayComp,i (3.17) i=1 T otalGDP P axDelay = n X i=1 i, . . . , n : All the flights in the GDP. The performance metrics do not imply any information about the fairness of the delay distribution. ”Equity becomes an issue whenever goods, which are held in common by a group of users must be allotted to them individually” [39]. In the case of GDPs, equity means distributing cost (receiving delay) or distributing benefit (receiving a slot) fairly among the stakeholders when the arrival demand exceeds the capacity at an airport [26]. In equity theory, an allocation is the result of three decisions [39]: 1. Supply decision : The amount of good/burden to be distributed. In case of the GDPs, these are the available arrival slots. 2. Distributive decision: The principle by which the good/burden is distributed among the eligible parties. In case of the GDPs, this is the GDP rationing rule implemented. 3. Reactive decision: The response of individuals to two institutional decisions made above. This is the impact of the GDP process on the involved stakeholders; the airlines and the passengers. The simulation captures this impact in the form of the performance and equity metrics. The airlines are the users of the NAS, and they constitute one of the stakeholder groups in the GDPs. Airlines examine many long-term factors before they constitute their flight 63 schedules, such as operational cost, aircraft utilization, and labor agreements. Any of these factors can be used to calculate an airline’s equity. During the GDPs, the flight delays and the fuel burn becomes important as the daily cost parameters. There are available equity metrics for airline delays in the GDPs [40]. One of these metrics used by the analysts working in the area is the delay distribution of each airline compared to the number of flights that each airline schedules in the GDP [41]. Airline equity in the simulation is calculated using two airline performance metrics; airline flight delays and airline fuel burn on the ground due to GDPs: 1. Airline Equity Metric due to Flight Delay is the negative logarithm of the ratio of airline a’s total flight delay over the total GDP flight delay divided by the ratio of airline a’s scheduled flights in the GDP over all GDP flights. This formulation implies the more flights airline a has, the more delay it should be assigned. ”Perfect equity” is represented as 0. If airline a’s equity is positive, the airline is assigned less delays than its fair share. Conversely, if airline a’s equity is negative, then the airline is assigned more delays than its fair share. Airline equity is calculated at the end of each module using the airline delays and the number of its scheduled flights at the end of that module. The results in Chapter 4 show each airline’s equity due to flight delay at the end of the compression (at the end of the simulation). For an airline a, this value is calculated as follows: AirlineEquityduetoF lightDelayComp,a = (3.18) P P P P −log10 ( ki=1 F lightDelayComp,i,a / ni=1 F lightDelayComp,i )/( ki=1 i/ ni=1 i) i, . . . , k : Airline a’s flights. i, . . . , n : All the flights in the GDP. F lightDelayComp,i : Delay for flight i at the end of compression. F lightDelayComp,i,a : Delay for airline a’s flight i at the end of compression. 64 AirlineEquitybyF lightDelayComp,a : Airline a’s equity due to flight delays after the compression. 2. Airline Equity Metric due to Fuel Burn is the negative logarithm of the ratio of airline a’s total fuel burn over the total GDP fuel burn divided by the ratio of airline a’s scheduled flights in the GDP over all GDP flights. This formulation implies the more flights airline a has, the more fuel burn it should be assigned. ”Perfect equity” is represented as 0. If airline a’s equity is positive, the airline is assigned less fuel than its fair share. Conversely, if airline a’s equity is negative, than the airline is assigned more fuel than its fair share. Airline equity is calculated at the end of each module using the airline fuel burn and the number of its scheduled flights at the end of that module. The results in Chapter 4 show each airline’s equity due to fuel burn at the end of the compression (at the end of the simulation). For an airline a, this value is calculated as follows: AirlineEquityduetoF uelBurnComp,a = (3.19) k n k n X X X X −log10 ( F uelBurnComp,i,a / F uelBurnComp,i )/( i/ i) i=1 i=1 i=1 i=1 i, . . . , k : Airline a’s flights. i, . . . , n : All the flights in the GDP. F uelBurnComp,i : Fuel burn for flight i at the end of compression. F uelBurnComp,i,a : Fuel burn for airline a’s flight i at the end of compression. AirlineEquitybyF uelBurnComp,a : Airline a’s equity due to extra fuel burn after the compression. The passengers are the real customers of the NAS and they constitute the second stakeholder group in the GDPs. From passengers’ perspective, the passenger delay they encounter is more important than the flight delay itself. The flight-based metrics cannot accurately 65 reflect the passenger travel experience [4]. Flight cancellations reduce total flight delay while increasing total passenger delays, especially when the load factors are high. As a consequence, passenger delays are a function of both flight cancellations and flight delays. Then, the passenger equity is determined by the airline scheduling. The current GDP algorithms used do not calculate passenger metrics, and there are no established metrics available for passenger equity. The passenger equity is calculated by the origin airport category. The airport categories are defined by the law due to its activities [42] and are explained below. The simulation uses ”CY 2006 Passenger Boarding and All-Cargo Data for Primary, Non-primary Commercial Service, and General Aviation Airports with Enplanements (by State)” table as the airport categories [42]. This table does not distinguish Cargo Service and Reliever Airports. 2006 is the latest year that this data set is available. 1. Commercial Service Airports are publicly owned airports that have at least 2,500 passenger boardings each calendar year and receive scheduled passenger service. Passenger boardings refer to revenue passenger boardings on a scheduled or un-scheduled service aircraft, including passengers continuing onto international flights. (a) Nonprimary Commercial Service Airports are Commercial Service Airports that have at least 2,500 and no more than 10,000 passenger boardings each year. (b) Primary Airports are Commercial Service Airports that have more than 10,000 passenger boardings each year. These airports are further categorized into: i. Primary Airport Large Hub: 1% or more annual total passenger boardings within the U.S. in the most current calendar year. ii. Primary Airport Medium Hub: At least 0.25% but less than 1% annual total passenger boardings within the U.S. in the most current calendar year. iii. Primary Airport Small Hub: At least 0.05% but less than 0.25% annual total passenger boardings within the U.S. in the most current calendar year. 66 iv. Primary Airport Nonhub: More than 10,000 passenger boardings but less than 0.05% annual total passenger boardings within the U.S. in the most current calendar year. 2. Cargo Service Airports are airports that are served by aircraft providing air transportation of only cargo with a total annual landed weight of more than 100 million pounds. An airport may be both a commercial service and a cargo service airport. 3. Reliever Airport is an airport designated by the FAA to relieve congestion at Commercial Service Airports and to provide improved general aviation access to the overall community. These airports may be publicly and privately-owned. 4. General Aviation Airports are the remaining airports, which are not defined in the law. This is the largest single group of airports in the U.S. system. This category also includes privately-owned, public use airports that en[lane 2,500 or more passengers annually and receive scheduled service. Passenger Equity by Airport Category compares how much passenger delay is assigned to passengers flying from an airport category compared to all passengers encountering the GDP. In other words, the more passengers an airport category has, the more passenger delay should be assigned to that airport category. Passenger Equity Metric is calculated as the negative logarithm of the ratio of passenger delays for a given airport category over the total GDP passenger delay divided by the ratio of the number of passengers from that airport category over all passengers in the GDP. ”Perfect equity” is represented as 0. If the equity of an airport category is positive, the passengers from that airport category are assigned less passenger delay than their fair share. Conversely, if the equity of an airport category is negative, the passengers from that airport category are assigned more passenger delay than their fair share. The passenger equity is calculated at the end of each module using the passenger delays and the number of passengers at the end of that module. The results in Chapter 4 show the passenger equity from each airport category at the end of the 67 compression (at the end of the simulation). For the passengers originating from an airport category b, this value is calculated as follows: P axEquityComp,b = −log10 ( k X P axDelayComp,i,b / i=1 (3.20) n X k n X X P axDelayComp,i )/( P AXi,b / P AXi ) i=1 i=1 i=1 i, . . . , k : Flights coming from Airport category b. i, . . . , n : Flights in the GDP P AXi : Passengers in flight i P AXi,b : Passengers in flight i coming from Airport category b P axDelayComp, i : Delay for passengers on flight i at the end of compression P axEquityComp,b : Equity for passengers coming from Airport category b at the end of compression. From an equity standpoint, the equity metric with a value other than ”0” is considered an inequity. An airline with an equity metric of 0.5 is as far away from the ”perfect” equity as an airline with an equity metric of -0.5. The first airline is delayed less than its fair share and the second airline is delayed more than its fair share, but the amount of inequity is the same. The total GDP inequity metric is calculated as the sum of the absolute value of each equity categories’ equity metric. Figure 3.5 shows how this formulation behaves. The figure shows the input equity metric ratio (before taking its negative logarithm) on the X-axis and the resulting Total Inequity Metric on the Y-axis. Assume there are only two airlines in the GDP, airline A and airline B. Airline A has 2 flights and is assigned 3 minutes of total flight delay. Airline B has 1 flight and is assigned 6 minutes of delay. Since there are only two airlines and three flights in the GDP, the ratio of Airline A’s flight delay over total GDP flight delay compared to the Airline A’s scheduled number of flights over total number of scheduled flights in the GDP is 0.5 ((3/(3 + 6))/(2/(2 + 1)) = 0.5). The same way, Airline B’s ratio is 2 ((6/(3 + 6))/(1/(2 + 1)) = 2). Then, Airline A’s equity metric due to flight delays is −log10 (0.5) = 0.3. Airline B’s equity metric due to flight delay is 68 −log10 (2) = −0.3. To calculate the Total GDP Inequity Metric, the absolute value of these equity metrics are taken, which is 0.3 for both airlines. The sum of these values (0.3 and 0.3) results in 0.6 as the Total GDP Inequity Metric. Figure 3.5: Total GDP Inequity as a Function of Equity The results in Chapter 4 show the total GDP inequity metrics at the end of the compression (at the end of the simulation). For a GDP, this value is calculated as follows. T otalGDP AirlineDelayInequity = k X (AirlineEquityduetoF lightDelayComp,a )(3.21) x=a T otalGDP AirlineF uelBurnInequity = z X (AirlineEquityduetoF uelBurnComp,a )(3.22) x=a T otalGDP P axInequity = z X (P assengerEquityComp,b )(3.23) y=b 69 a, . . . , k : Airlines a through k has flights in the GDP. b, . . . , z : Airport categories b through z. AirlineEquityduetoF lightDelayComp,a : Airline a’s equity due to flight delay at the end of compression. AirlineEquityduetoF uelBurnComp,i,a : Airline a’s equity due to fuel burn at the end of compression. P axEquityComp,b : Equity of passengers coming from the airport category b. The trade-off between performance and equity is inevitable. The optimal GDP performance may not result in the optimal GDP equity distribution among the stakeholder groups. In the same way, the optimal equity distribution in the GDP might not result in the optimal GDP performance. Since all GDP rationing rules result in a trade-off, a decision can be reached using Analytic Hierarchy Process and Multi-attribute Utility Theory [30]. The disutility of implementing a GDP can be calculated using the two performance metrics (Total GDP Passenger Delay, and Total Extra Fuel Burn due to GDP) and two equity metrics (total airline inequity and total passenger inequity) as follows: DisutilityRR1 = (w1 ∗ uP axDelay,RR1 ) + (w2 ∗ uF uelBurn,RR1 ) + (w3 ∗ uAirlineInequity,RR1 ) + (w4 ∗ uP axInequity,RR1 ) 70 (3.24) w1 + w2 + w3 + w4 = 1 uP axDelay,RR1 = T otalGDP P axDelayRR1 / 6 X T otalGDP P axDelayx x=1 uF uelBurn,RR1 = T otalGDP F uelBurnRR1 / 6 X T otalGDP F uelBurnx x=1 uAirlineInequity,RR1 = T otalGDP AirlineInequityRR1 / 6 X T otalGDP AirlineInequityx x=1 uP axInequity,RR1 = T otalGDP P axInequityRR1 / 6 X T otalGDP P axInequityx x=1 RR1 : GDP Rationing Rule 1. w1 : Weight of Total GDP Passenger Delay. w2 : Weight of Total GDP Fuel Burn. w3 : Weight of Total GDP Airline Inequity. w4 : Weight of Total GDP Passenger Inequity. uP axDelay,RR1 : Utility of Total GDP Passenger Delay when Rationing Rule 1 is used. uF uelBurn,RR1 : Utility of Total GDP Fuel Burn when Rationing Rule 1 is used. uAirlineInequity,RR1 : Utility of Total GDP Airline Inequity when Rationing Rule 1 is used. uP axInequity,RR1 : Utility of Total GDP Passenger Inequity when Rationing Rule 1 is used. T otalGDP P axDelayRR1 : The total GDP passenger delay at the end of the year when Rationing Rule 1 is used. T otalGDP F uelBurnRR1 : The total GDP fuel burn at the end of the year when Rationing Rule 1 is used. T otalGDP AirlineInequityRR1 : The total GDP airline inequity at the end of the year when Rationing Rule 1 is used. T otalGDP P axInequityRR1 : The total GDP passenger inequity at the end of the year when Rationing Rule 1 is used. 71 The reason why Total GDP Flight Delay is not included in this formulation is that the Total GDP Flight Delay as a result of initial slot assignment is conserved. It is determined by the number of available arrival slots and it does not change with the implementation of different GDP rationing Rules. The Total GDP Flight Delay at the end of compression might be different under different rules. However, this value is not significant in the analysis (see Section 4.1.1). For the purpose of the sensitivity analysis of the GDP disutility, the weights can be assigned to reflect the different objectives for the air transportation system. • If the air transportation system focuses only on performance: (w1 , w2 , w3 , w4 ) (1, 0, 0, 0) : Passenger delay is the only system metric of importance. (0.75, 0.25, 0, 0) : Passenger delay is three times more important than fuel burn. (0.5, 0.5, 0, 0) : Passenger delay is equally important as fuel burn. (0.25, 0.75, 0, 0) : Fuel burn is three times more important than passenger delay. (0, 1, 0, 0) : Fuel burn is the only system metric of importance. • If the air transportation system focuses only on equity: (w1 , w2 , w3 , w4 ) (0, 0, 1, 0) : Airline inequity is the only system metric of importance. (0, 0, 0.75, 0.25) : Airline inequity is three times more important than passenger inequity. (0, 0, 0.5, 0.5) : Airline inequity is equally important as passenger inequity. (0, 0, 0.25, 0.75) : Passenger inequity is three times more important than airline inequity. (0, 0, 0, 1) : Passenger inequity is the only system metric of importance. • If the air transportation system focuses only on stakeholders: (w1 , w2 , w3 , w4 ) 72 (0, 0.5, 0.5, 0) : Fuel burn is equally important as airline inequity. (0.5, 0, 0, 0.5) : Passenger delay is equally important as passenger inequity. (0.25, 0.25, 0.25, 0.25) : All performance and equity metrics are equally important. 3.3 Limitations The GDP-RRS simulates the current GDP algorithms as close as feasible. There are some differences between the GDP-RRS and the actual GDP algorithms. These differences are explained below: • The actual GDP algorithms work with the dynamic flight information. The scheduled flight information can change during the operation day due to many factors. A flight maybe delayed due to mechanical errors, which in turn will impact whether the flight can comply with its CTD, or the aircraft type might be changed to accommodate the passengers, which in turn will impact the ETE and CTD. The actual GDP algorithms allocate slots based on the flight schedule, then adjust the allocation with this dynamic information so that the available capacity is used efficiently. The GDP-RRS works only with scheduled flight information and takes only the cancellations into account as the dynamic update. It is assumed that the scheduled flight information does not change, except for the substitution and cancellation information from the airlines. • The actual GDP algorithm is called RBS++. This algorithm runs the compression every time RBS algorithm is run so that the slot allocation based on the scheduled flight information can be updated with the current flight information. This insures that the available airport capacity is used efficiently and the controlled flights can comply with their CTDs and CTAs. In the GDP Slot Assignment Module, the GDP-RRS runs RBS algorithm, then Airline Substitutions and Cancellations, then Compression. Since GDP-RRS only works with the scheduled flight information, the Compression is not run immediately following the initial slot assignment. 73 • The actual GDP algorithm takes into account the capacity limitations and the spillover flights after the GDP End Time. The GDP-RRS only works with flights that are between the GDP Start Time and the GDP End Time. It assumes the airport capacity after the GDP End Time is large enough to accommodate the remaining flights. • The ATC specialist may exempt flights in the GDP due to many reasons other than the GDP scope, such as exempting flights with an SRTA within the GDP duration but with 45 minutes left to departure. The GDP-RRS only exempts flights outside the GDP scope. • The GDP planning has a lot of uncertainties inherit in it (e.g. weather, unscheduled operations). During the GDP, the ATC specialists can adjust the GDP parameters when these uncertainties come to pass (they can update the GDP End Time, the scope, and the PAAR). These updates to the GDP parameters are called GDP revisions. Flights in the GDP are assigned new CTDs and CTAs after each revision. The GDP-RRS simulates only the initial GDP planning phase and does not simulate GDP revisions. • The actual GDP substitution algorithm allows airlines to do substitutions in a 20 minute window. In other words, an airline can substitute a flight to a slot 20 minutes earlier than its SRTA. This window is set to zero minutes in the GDP-RRS. This difference is pointed out in the validation process. The effect of this simplification is not known at this time and it is the subject of future work. • The actual GDP compression algorithm creates three queues for the reallocation of the unused slots. The flights operated by the airline that vacated the slot are given preference first, followed by the flights of the CDM-member airlines and the remaining flights. The GDP-RRS opens the unused slot to the CDM-member airlines first and does not consider the airline which vacated the slot. This difference is pointed out in the validation process. The effect of this simplification is not known at this time and 74 it is the subject of future work. • The GDP rationing rules in the GDP-RRS do not make a distinction between different airline user classes (e.g. commercial, air-taxi, freight, and military). For passenger oriented rules, such as the Ration-by-Passengers, the freight and military aircraft is assumed to have available seats by their aircraft type with 100% load factors. 3.4 Validation There are two scientific methods to validate an algorithm. The Input-Output Method compares the outputs of an algorithm with the outputs of the real-world process, given the inputs of the real-world process. The Behavior Inspection Method compares the physics of the actual process with the functions in the algorithm. This approach can only be used when the physics of the actual process are deterministic and follow well established dynamics. 3.4.1 Input/Output Validation The Input-Output Method compares the outputs of an algorithm with the outputs of the real-world process, given the inputs of the real-world process. Whereas it is preferable to validate the GDP-RRS using an Input-Output Method, this was not possible due to the differences of the inputs and the algorithms used in the actual GDP algorithms and the GDP-RRS (see Section 3.3). These differences are explained in detail below. Figure 3.6 shows the differences in the initial slot allocation between the actual GDP algorithm and the GDP-RRS. 1. SRTA Differences: One of the inputs required for a fair comparison of the GDP-RRS against the actual GDP algorithms is the ETA (Estimated Time of Arrival) of each flight in the GDP. The GDP-RRS uses the SRTA of the flight and this value does not change. In other words, the flight’s initial slot assignment is always the same for a given daily flight schedule. On the other hand, the actual GDP algorithms work with dynamic flight information updates. The actual GDP algorithms assign a slot to each 75 Figure 3.6: Differences between GDP-RRS and the Actual GDP Algorithm for Validation flight based on its SRTA, then adjust this assignment based on the flight’s current ETA [34]. There are many reasons why a flight’s SRTA and ETA are not equal on the day of operation, such as mechanical problems, gate availability, taxi queue, or late arrival from its previous leg. This way the actual GDP algorithms make sure that the airport’s available capacity is used efficiently. In other words, the slot given to a flight using its SRTA and the slot given to the flight after its ETA is taken into account may not be the same. 2. Exemption Differences: The different types of exemptions in the actual GDP algorithms prevent a fair comparison of outputs. The ATC specialist may exempt flights in the GDP due to many reasons other than the GDP scope, such as flights under 76 going de-icing, flights with an SRTA within the GDP duration but with 45 minutes left to departure [34,35]. Since exempt flights are assigned their slots first, the slot assignment of a flight changes dramatically whether the flight is exempt. If the flight is exempt in the actual GDP algorithms for a reason other than the scope, the assigned delay is significantly lower. At the same time, when there are additional exempt flights in the GDP, there are fewer number of available slots for Non-exempt flights and the delay for the Non-exempt flights gets longer. 3. PAAR Differences: The slots approved by the ATC specialist for the GDP allocation may not be the same as the maximum number of available slots during the GDP. The PAAR (Program Airport Acceptance Rate) is an input to both the GDP-RRS and the actual GDP algorithm. The ATC specialist may opt not to use all the available arrival slots in an hour to account for uncertainties. When this happens, the PAAR used in the GDP-RRS (the actual AAR during this period) and the actual GDP PAAR (determined by the ATC) differs, changing the CTD and CTAs of each flight. This information is not available in the FSA database. 4. Algorithm Differences: The flight’s position in the actual GDP queue and the GDPRRS algorithm can be quite different due to the differences explained in Section 3.3. These include: • In the actual GDP process, the substitutions are done by airlines but this behavior is simulated in the GDP-RRS. • In the actual GDP process, the cancellations are done by airlines. The Section 4 uses the actual flight cancellations as they happened in 2007. In other words, in the GDP-RRS, the flights which were cancelled at the end of the day are assumed to be cancelled during the Airline Substitution and Cancellation process. On the other hand, the actual GDP algorithms receive 5 minute updates on all flights in the GDP from the ETMS database. When a flight is cancelled makes a difference on the slot allocation of all flights in the GDP. If the flight is cancelled 77 after the compression, that slot might be unused till the next GDP revision. Another issue with the flight cancellations is that airlines have the right to keep their slots unused. When this happens, the slot cannot be reassigned during the compression process. The GDP-RRS assumes all unused slots are open for reassignment. • In the actual GDP algorithms, the airlines are allowed a 20 minute substitutions window but this window is not available in the GDP-RRS. • In the actual GDP algorithms, the unused slots are made available to first the airline which vacated the slot, followed by CDM-member airlines, followed by remaining airlines during the compression. The GDP-RRS makes the unused slot available to first CDM-member airlines (the airline which vacated the slot may or may not be a part of the CDM-member airlines), followed by remaining airlines during the compression. Table 3.1: Comparison between Actual and Actual Simulated Airport Average Average Flight Delay Flight Delay EWR 50 min/flight 36 min/flight LGA 60 min/flight 45 min/flight JFK 50 min/flight 32 min/flight Simulated Average Flight Total Error Flights (Actual) 14 min/flight 70,419 15 min/flight 70,158 18 min/flight 39,289 Delays for 2007 Total Flights (Simulated) 71,094 70,579 39,347 With the difficulties explained above, the outputs of the GDP-RRS are compared against the actual GDP algorithms as much as feasible. The most feasible comparison can be made between the GDP-RRS flight delay at the end of the GDP Slot Module (before airline substitutions and cancellations) and the actual flight delay at the end of the initial slot allocation. The actual flight delay is calculated as the difference between the flight’s actual assigned CTA when the flight was first controlled and the SRTA. The SRTA for each flight is the flight’s IGTA minus 10 minute taxi-in time. Table 3.1 shows the average actual flight delay, the average simulated flight delay for the year 2007. The table also shows the 78 number of flights used in this comparison at each airport. The number of flights used in the simulation is greater than the number of flights available for validation because the actual assigned slots for some flights were not available in the database. But this difference is very small at all three airports (less than 1% of all flights). Table shows the results are accurate with an error of 14-18 minutes per flight on average. 3.4.2 Algorithm Inspection This validation method compares the physics of the actual process with the functions in the algorithm. This approach can only be used when the physics of the actual process are deterministic and follow well established dynamics. As an alternative to the Input/Output Method, detailed inspections of the algorithm were conducted by subject matter experts: 1. On April 25th, 2008, the GDP-RRS algorithms and the results were presented to Dennis Gallus (Senior Analyst, Technology and Infrastructure Department, Metron Aviation Inc.). During this inspection, the differences between the GDP-RRS initial slot assignment and the actual GDP initial slot assignment (RBS and then compression) are pointed out. 2. On April 28th, 2008, the GDP-RRS algorithms and the results were presented to Mark Klopfenstein (Director of Research and Analysis, Metron Aviation Inc.) and Mike Brennan (Chief Scientist, Metron Aviation Inc.). During this inspection, the limitations of the zero-minute substitution window instead of 20-minutes are pointed out. 3. On February 4th, 2008, the GDP-RRS algorithms and the results were presented at the FAA ATOP teleconference. Suggestions from these inspections were either implemented in the GDP-RRS or they are mentioned in the Limitations Section (Section 3.3). In addition, the GDP-RRS was presented and peer-reviewed at the following conferences and meetings: 79 1. On June 2nd, 2008, the GDP-RRS algorithms and the results were presented and peer-reviewed at the 3rd International Conference on Research in Air Transportation (ICRAT) in Session 2 - Advanced Modeling II with J. Schroeder as the Session Chair in Washington, D.C. This paper ”The Impact of Ground Delay Program (GDP) Rationing Rules on Passengers and Airlines” received an award for ”Best Paper in Advanced Modeling & CNS/ATM Track” and accepted for publication in a Special Issue of the Journal of Transportation Research Part C (Elsevier Publishing) [43]. 2. On May 6th, 2008, the GDP-RRS algorithms and the results were presented and peerreviewed at the 2008 Integrated Communications Navigation and Surveillance (ICNS) Conference in Session G Performance-Based CNS/ATM with Gary Church, Aviation Management Associates, Inc. as the session chair in Fairfax, VA [44]. 3. On July 2nd, 2008, the GDP-RRS algorithms and the results were and peer-reviewed presented at the 5th International Conference on Cybernetics and Information Technologies, Systems and Applications (CITSA) 2008 in Session ”Information Systems II” in Florida, CA [45]. 4. On March 6th, 2008, the GDP-RRS algorithms and the results were presented at a NASA New York Metroplex contract research review of the George Mason University/Purdue University. 5. On March 13th, 2008, the GDP-RRS algorithms and the results were presented at the Center for Air Transportation System Research (CATSR) at George Mason University as part of the CATSR weekly seminar series. 6. During the course of the development, weekly meetings were held with Dr. Lance Sherry (Executive Director of Center for Air Transport Systems Research and Associate Professor at Systems Engineering and Operations Research Department, George Mason University) to review the algorithms based on the available GDP literature. 80 Chapter 4: Results If nothing is done to resolve the growing congestion, more GDPs will be implemented to bring the scheduled arrivals down to match the level of airport capacity. The GDP rations available capacity resources based solely on scheduled arrival times of flights, and does not take into account passenger flow and fuel flow efficiency in the rationing assignment tradeoff. Alternate GDP rationing rules can be used to explicitly trade-off GDP performance and equity for multiple stakeholders. The objective of this research is to determine the impact of alternate GDP rationing rules on GDP performance and equity from the point of view of airlines and passengers. The hypothesis is that different GDP rationing rules result in different performance and equity trade-offs between airlines and passengers as the two main stakeholders in the GDP process. The tradeoff between flight delays, passenger delays and fuel burn, as well as the tradeoff between airline equity and passenger equity in GDP slot allocation are examined using the developed Ground Delay Program Rationing Rule Simulator (GDP-RRS). Three experiments were conducted using the GDP-RRS tool for arrivals to the three airports in the New York metroplex; Newark Liberty International (EWR), LaGuardia (LGA) and John F. Kennedy International (JFK) using 6 different GDP rationing rules. Experiment-1 investigates the 2007 GDP performance and equity trade-offs at these airports by using different rationing rules (Section 4.1). Experiment-2 investigates the sensitivity of the Experiment-1 results to the airline substitution strategies (Section 4.2). Experiment-3 investigates the sensitivity of the Experiment-1 results to the changes in the GDP scope (Section 4.3). 81 The six GDP Rationing Rules implemented are described below: 1. Ration-by-Schedule (RBS) is the current GDP rationing rule. It allocates available slots among GDP flights in the order of their scheduled arrival times (SRTA). The earlier flights are given precedence over later flights. If there are two flights scheduled to arrive at the same time, one of them is randomly selected to be the first for slot assignment. 2. Ration-by-Passengers (RBPax) rations available slots by the number of passengers carried on each flight. RBPax algorithm puts flights in the order of passengers on board. Flights carrying more passengers are given precedence over flights carrying fewer passengers. If there are two flights scheduled to arrive at the same time carrying the same number of passengers, RBPax chooses the flight with the earlier scheduled arrival time for slot assignment first. If two flights are in the same category and are scheduled to arrive at the same time, then one of them is chosen randomly to be the first for slot assignment. 3. Ration-by-Aircraft Size (RBAcSize) rations available slots by aircraft size. RBAcSize creates three priority queues for three categories of aircraft size considered: Heavy, Large and Small. Flights under the Heavy category are assigned their slots first, followed by the Large and the Small categories. If two flights are in the same category (Heavy-Heavy), RBAcSize chooses the flight with the earlier scheduled arrival time for slot assignment first. If two flights are in the same category and are scheduled to arrive at the same time, one of them is picked randomly to be the first for the slot assignment. 4. Ration-by-Distance (RBD) rations available slots by the flight distance. RBD algorithm puts flights in the order of their Great Circle Distance (GCD). Flights coming from long distance airports are given precedence over flights coming from shorter distances. If there are two flights scheduled to arrive at the same time with the same 82 GCD, RBD chooses the flight with the earlier scheduled arrival time for slot assignment first. If two flights have the same GCD and are scheduled to arrive at the same time, then one of them is chosen randomly to be the first for slot assignment. Difference between the RBD used here compared to Hoffman et al.,2005 ([46]) is that Hoffman, 2005 specifies the distance to the GDP airports in minutes of estimated enroute time for each flight. RBD used in GDP-RRS specifies the distance in Great Circle Distance (GCD) to the GDP airport. 5. Ration-by-Fuel Flow high precedence (RBFFhigh) rations available slots by the taxi fuel burn rate (Etaxi). RBFFhigh algorithm puts flights in the order of their Etaxi rates. Flights with higher Etaxi rates are given precedence over flights with lower Etaxi rates. If there are two flights scheduled to arrive at the same time with the same Etaxi rate, RBFFhigh chooses the flight with the earlier scheduled arrival time for slot assignment first. If two flights have the same Etaxi rate and are scheduled to arrive at the same time, then one of them is chosen randomly to be the first for slot assignment. 6. Ration-by-Fuel Flow low precedence (RBFFlow) rations available slots by the taxi fuel burn rate (Etaxi). RBFFlow algorithm puts flights in the order of their Etaxi rates. Flights with lower Etaxi rates are given precedence over flights with higher Etaxi rates. If there are two flights scheduled to arrive at the same time with the same Etaxi rate, RBFFlow chooses the flight with the earlier scheduled arrival time for slot assignment first. If two flights have the same Etaxi rate and are scheduled to arrive at the same time, then one of them is chosen randomly to be the first for slot assignment. The RBFFhigh minimizes total GDP fuel burn by giving precedence to the flights with higher Etaxi rates. Even though the intention behind the RBFFhigh is to incentivize airlines to use larger size aircraft (with high Etaxi rates and high number of passengers), the Etaxi rate also depends on the type of engine installed in the aircraft. In other words, two aircraft carrying the same umber of passengers 83 may have different Etaxi rates because of different engine types. In the long run, the RBFFhigh might incentivize airlines to use older aircraft rather than buying newer more fuel efficient aircraft in order to get extra delay benefits. To incentivize airlines to utilize newer and more fuel efficient aircraft, the RBFFlow rule is created which has the opposite behavior, where the aircraft with lower Etaxi rates are given preference. Figure 4.1: The Relationship of GDP Metrics In the following sections, the results are organized as shown in Figure 4.1. First, the total GDP performance (total passenger delay and total fuel burn) under six alternate rationing rules is calculated. Then, the individual airline and passenger equity metrics are used to calculate the total GDP inequity metric for each of the alternate rationing rules. At the end, the resulting total GDP inequity metrics (total airline inequity and total passenger inequity) is compared against the total GDP performance metrics (total passenger delay and total fuel burn) to calculate the GDP disutility for each alternate GDP rationing rule. The GDP rationing rule which minimizes the GDP disutility at an airport under a given system objective is chosen as the best rule to implement at that airport for that given system objective. 84 4.1 Experiment 1: Performance and Equity Trade-off for Different GDP Rationing Rules Experiment-1 investigates the 2007 GDP performance and equity trade-offs at EWR, LGA and JFK airports by using different rationing rules. The inputs for this experiment are given below (Table 4.1): 1. GDP Flight Schedules on GDP days at EWR, LGA and JFK in 2007. 2. 2007 Load factors (BTS) by airline and route at EWR, LGA and JFK. 3. 2007 GDP parameter values (FSA): GDP Start Time, GDP End Time, Scope, and PAAR. 4. The actual flight cancellations (FSA) as they happened in 2007 on the day of operation. The random cancellations capability (based on historic probability distributions) in the Airline Substitutions and Cancellations Module of GDP-RRS is not used. 5. Airline Flight-based Substitution Strategy, precedence to flights with earlier SRTA. 6. Six GDP Rationing Rules. In Experiment-1, the random cancellation capability of the GDP-RRS is not used. The cancellations are taken as they happened on a given day. Even though, this makes the simulation run deterministically, the stochasticity of the experiment results are maintained by using stochastic real-world inputs. The GDP days have different durations, start times, scopes, number of flights, airlines and origins (stochastic inputs), which in turn causes the results of the simulation to be also stochastic. Three New York metroplex airports exhibit different airport characteristics. Table 4.2 shows the total number of flights, passengers, airlines and origins involved in the GDP in 2007 at these three airports. 85 Table 4.1: Experiment 1 Airport EWR LGA JFK GDP Parameters PAAR Scope Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Duration Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Airline Parameters Cancel. Subs Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based No. Days 197 197 197 197 197 197 169 169 169 169 169 169 150 150 150 150 150 150 Rationing Rule RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow Run No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 • EWR serves both international and domestic flights with one dominant carrier. Among the three airports, EWR has the most number of GDPs (197 GDPs) and the most number of flights affected by the GDP (71,094 flights in 2007). • LGA serves mainly domestic passengers and it has the highest number of flights from General Aviation airports (136 airports). Even though LGA has almost the same number of total flights affected by the GDP (70,579 flights) as EWR, it has the lowest number of exemptions among the three airports. One percent of all flights were exempt from GDP at LGA compared to 23% at EWR and 39% at JFK. • JFK serves mainly international flights and has the highest number of non-U.S. origins. Among the three airports, JFK has the least number of GDPs (150 GDPs) and the least number of flights affected by the GDP (39,348 flights in 2007). On the other hand, JFK has the most number of exemptions (39%) since it serves more flights coming from non-U.S. origins. 86 Table 4.2: Input 2007 GDP Statistics at EWR, LGA and JFK (Passenger values are simulated) Statistics EWR LGA JFK EWR LGA No GDPs 197 169 150 Flights 71,094 70,579 39,348 Exempt 16,568 994 15,385 23% 1% Nonexempt 54,526 69,585 23,962 77% 99% International 15,133 3,972 13,257 21% 6% Domestic 55961 66,607 26,090 79% 94% Passengers 7,868722 4,947,655 6,132,676 Exempt 3,234,255 117,916 3,795,554 41% 2% Nonexempt 4,634,467 4,829,739 2,337,122 59% 98% International 2,746,709 339,471 3,274,979 35% 7% Domestic 5,122,013 4,608,184 2,857,997 65% 93% Airlines 97 61 153 Non-US only 31 1 74 32% 2% Origins 408 356 358 Primary-Large Hub 30 28 29 7% 8% Primary-Medium Hub 33 33 30 8% 9% Primary-Small Hub 43 48 31 11% 14% Primary-Non Hub 64 62 41 16% 17% Commercial Service 8 9 6 2% 3% General Aviation 110 136 80 27% 38% Non-US 120 40 141 29% 11% 87 JFK 39% 61% 34% 66% 62% 38% 53% 47% 48% 8% 8% 9% 12% 2% 22% 39% 4.1.1 Newark Liberty Airport (EWR) Figure 4.2: EWR Actual 2007 Planned GDP Duration There were 197 GDPs at EWR in 2007. The planned duration of these GDPs are shown in black bars in Figure 4.2. The red triangles in the figure depict the time each GDP is planned. GDPs often start in the early afternoon lasting till the end of the operating day. In 2007, the average GDP duration at EWR was 10 hours and GDPs are planned on average 96 minutes prior to the GDP start time. Figure 4.3 shows the histogram for the planned durations of 2007 GDPs. Out of 197 GDPs, 50% of GDPs (99 GDPs) used Tier scope and 50% used Distance scope (98 GDPs). Table 4.3 shows the distribution of the Tier scopes and Figure 4.4 shows the distribution of the distance scopes. Except for two GDPs, all distance scopes shown in the figure also include Canadian airports. The actual tiers used in the GDPs are grouped into three major categories as shown in Table 4.3. NoWest+Canada, All+Canada and 88 Figure 4.3: Histogram for Actual EWR 2007 Planned GDP Duration 1800+Canada are the most used scopes. Figure 4.4: Histogram for Actual EWR 2007 Planned GDP Distance Scope 89 Table 4.3: Actual EWR 2007 Planned GDP Tier Scope By-Tier No. GDPs Percentage Tier-2+Canada 2 2% NoWest+Canada 32 32% All+Canada 65 65% Manual 1 1% 70 Flights per 15 minutes 60 50 40 30 20 10 20 07 12 /1 / 20 07 11 /1 / 00 7 20 07 10 /1 / 9/ 1/ 2 00 7 8/ 1/ 2 00 7 7/ 1/ 2 00 7 00 7 6/ 1/ 2 5/ 1/ 2 00 7 4/ 1/ 2 00 7 00 7 3/ 1/ 2 2/ 1/ 2 1/ 1/ 2 00 7 0 GDP Date Average Flights in GDP Average PAAR Figure 4.5: Actual EWR 2007 GDP Average Demand and Capacity for 15-minute bins Figure 4.5 shows the average scheduled demand against the average available capacity in 15 minutes bins at EWR during the GDP periods. As seen from the figure, average available capacity fluctuates around 10 flights per 15 minutes (red horizontal line). EWR Performance Results Table 4.4 shows the total and standard deviation of Total GDP performance under alternate rationing rules. Total GDP flight delay as a result of the initial slot allocation (at the end of GDP Slot Allocation Module) is a function of the airport capacity and it does not change with different rationing rules. Total GDP flight delay at the end of the simulation (Compression Module) may be different but this difference is insignificant (less than 0.1%). 90 Even though different rationing rules result in the same total flight delay, they result in different levels of the total passenger delay and total extra fuel burn due to GDP. Figure 4.6 shows the GDP performance of the alternate GDP rationing rules compared to the current GDP rule (RBS). The x-axis shows the difference in total GDP passenger delay compared to RBS, and the y-axis shows the difference in total extra fuel burn due to GDP compared to the RBS. The figure is divided into four quadrants. The top right quadrant is called ”Not Desirable”. If a rationing rule performance falls in this quadrant, it causes more passenger delays and more fuel burn compared to the RBS and will not be desirable as a rationing rule to implement. In contrast, the bottom left quadrant is called ”Desirable” where a rationing rule in this quadrant will result in less passenger delay and less fuel burn compared to the current rule and will be desirable to implement. The top left quadrant and the bottom right quadrant of the figure is called ”Trade-off”. As the name suggests, these quadrants show a trade-off between the two performance metrics of concern. Top left quadrant trades off more fuel burn for less passenger delay and the bottom right quadrant trades-off more passenger delay for less fuel burn compared to the RBS. Figure 4.6 shows that all new rules, except RBFFlow, fall in the ”Desirable” quadrant where new rules result in less passenger delay and less fuel burn than the RBS. The biggest improvement in performance is achieved using RBPax. Moving from the RBS to the RBPax decreases total passenger delay by 23% (66,946,723 minutes less delay) and decreases total extra fuel burn due to GDP by 57% (5,191,606 kg less fuel) with no change in total flight delay. The RBFFlow falls in the ”Undesirable” quadrant and results in a trade-off for less extra fuel burn for more passenger delays. 91 92 RBS 10,691 990,035 35,197 5,803 1,272,002 25,924 4,665 1,120,178 23,394 RBPax 10,691 376,574 15,010 5,598 1,097,704 9,522 4,666 1,065,802 8,543 RBAcSize 10,691 752,563 28,234 5,756 1,188,139 20,504 4,666 1,094,517 18,611 RBD 10,691 593,231 18,654 5,515 1,127,124 11,620 4,665 1,068,898 10,330 RBFFhigh 10,691 420,798 15,068 5,595 1,103,375 9,834 4,666 1,064,547 8,951 RBFFlow 10,691 1,619,226 36,495 5,951 1,511,950 23,885 4,665 1,210,482 19,908 Table 4.4: Simulated EWR 2007 GDP Performance by Rationing Rule RBS RBPax RBAcSize RBD RBFFhigh RBFFlow 2,556,280 2,556,280 2,556,280 2,556,280 2,556,280 2,556,280 226,090,370 90,422,203 175,455,035 137,918,145 101,615,997 398,515,938 13,138,501 5,443,033 10,697,428 6,584,803 5,680,543 12,091,850 1,684,828 1,603,068 1,652,486 1,590,346 1,612,678 1,703,155 336,159,682 239,958,268 300,762,022 265,242,758 247,857,569 437,826,745 10,412,675 4,239,787 8,413,537 5,029,129 4,434,920 9,256,158 1,283,621 1,283,471 1,283,486 1,283,576 1,283,479 1,283,722 292,155,275 228,052,979 270,019,259 245,388,399 232,905,820 366,840,658 8,888,442 3,824,049 7,364,146 4,484,979 4,012,621 7,724,554 TFD: Total GDP Flight Delay TPD: Total GDP Passenger Delay TFB: Total GDP Fuel Burn STD DEV. TFD-Initial TPD-Initial TFB-Initial TFD-Sub TPD-Sub TFB-Sub TFD-Comp TPD-Comp TFB-Comp TOTAL TFD-Initial TPD-Initial TFB-Initial TFD-Sub TPD-Sub TFB-Sub TFD-Comp TPD-Comp TFB-Comp Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Figure 4.6: EWR GDP Performance by Rationing Rule As mentioned in Section 2.1, the alternate GDP rationing rules can be used as the waiting costs for each customer type if the arrival GDP airport is modeled as a priority queue with a single server. The results above are in general consistent with the results that would be expected if such a priority queue is implemented. • If the cost of each flight is the number of passengers onboard and the flights with high number of passengers are given priority over the flights with small number of passengers, the RBPax minimizes the total passenger delay consistent with the results expected from a priority queuing model. • If the cost of the each flight is its aircraft size and the larger size aircraft are given priority over the smaller size aircraft, the RBAcSize reduces the total passenger delay and total fuel burn compared to the RBS but does not minimize these metrics consistent with the results expected from a priority queuing model. 93 • If the cost of a flight is the distance it travels to the GDP airport and the longhaul flights are given priority over the short-haul flights, the RBD decreases the total passenger delay and the total fuel burn but does not minimize these metrics consistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with high Etaxi rates are given priority over the flights with low Etaxi rates, the RBFFhigh decreases the total passenger delay and total fuel burn. It does not minimize the total fuel burn, which is inconsistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with low Etaxi rates are given priority over the flights with high Etaxi rates, the RBFFlow increases the total passenger delay consistent with the results expected from a priority queuing model. On the other hand, it decreases the total fuel burn which is inconsistent with the expected results from a priority queuing model. EWR Equity Results Airline equity metric is calculated for two airline performance metrics of concern: flight delays and extra fuel burn. Figure 4.7 shows the airline equity due to flight delays and Figure 4.8 shows the airline equity due to extra fuel burn. In both figures, the percentage of scheduled GDP flights for each airline is given in parentheses. In the simulation, the flights scheduled by an airline but operated by another airline are considered as a part of the scheduled airline’s flights. The airlines with the 10 highest scheduled GDP arrivals are shown. ”INT’L” represents airlines with only international flights, flights originated from a non-U.S. airport. Except for Canadian flights, these flights are always exempt in the GDP. The remaining airlines are aggregated into the ”OTHER” category. From an equity perspective, the more flights an airline has the more flight delay it should be assigned. ”Perfect equity” is represented as 0. If an airline’s equity metric is positive, the airline is assigned flight delay less than its fair share and it is treated favorably. Conversely, 94 if an airline’s equity metric is negative, then the airline is assigned flight delay more than its fair share and it is treated unfavorably. Figure 4.7 shows the GDP equity for airlines at the end of year 2007 under the six GDP rationing rules. The results are different for different airlines. ”INT’L” airlines, airlines with flights from only non-U.S. origins, are treated very favorably. All international flights, except for Canadian flights, are exempt in the GDPs and are not delayed. Airline-1 is the dominant airline at EWR with 68% of the scheduled arrivals during the GDPs. Implementing different rationing rules does not change the delay equity of Airline #1. The increase in the delay of its one flight is balanced by the decrease in the delay of its other flights. The equity of airlines other than Airline #1 is tightly related to the scheduling times and the aircraft sizes of their flights. Figure 4.7: EWR Airline Equity due to Flight Delays The airline equity metric under the RBS and the RBAcSize is similar for some airlines. This is caused by the ranking logic in the rule. The RBAcSize only distinguishes between the three aircraft categories and uses scheduled arrival time of flights whenever two flights are in 95 the same category. Since flights at EWR are mostly in the ”large” category (approximately 74%), the delay assignment of the RBAcSize looks similar to the RBS. Comparatively, the RBPax further distinguishes flights with the number of passengers on board. Airlines using large aircraft benefit greatly from the RBPax and the RBFFhigh rules. For example, the RBPax and the RBFFhigh are more favorable to Airline #4 (a freighter airline) compared to the RBFFlow, which gives preference to smaller aircraft. In contrast, Airline #9 shows the opposite result. The RBFFlow is more favorable to Airline #9 than the RBFFhigh. Figure 4.8: EWR Airline Equity due to Fuel Burn Figure 4.8 shows the airline equity due to extra fuel burn. When the fuel burn is used as the performance metric in the equity metric calculation, the overall airline equity is closer to the ”perfect” equity than when the flight delay is used (the height of the equity metric bars are shorter), but the relative equity with different rationing rules does not change much. As the dominant airline at EWR, the fuel burn equity of Airline #1 does not change much when alternate rationing rules are implemented. ”INT’L” airlines are still treated favorably 96 for their fuel burn but not as much as for their flight delays. Figure 4.9: EWR Passenger Equity by Rationing Rule From a passenger’s perspective, the passenger delay he or she encounters is more important rather than the flight delay itself. Flight cancellations reduce the total flight delay while increasing the passenger delay, especially when the load factors are high. As a consequence, the passenger delay is determined by the flight cancellations as well as flight delays. The passenger equity metric is calculated so that the more passengers an airport category has, the more passenger delay it should be assigned. ”Perfect equity” is again represented as 0. Figure 4.9 shows the passenger equity for each airport category considered. The percentage of passenger boardings in calendar year 2006 from each airport category is given in parentheses [42]. As with airlines, the Primary Large Hub airports can be considered as the dominant airport category (74% of passenger enplanements in 2006) and the passenger equity of this airport group does not change with different rationing rules. Passengers coming from non-U.S. origins are treated very favorably because these passengers are on 97 the international flights which are exempted in the GDP. The exemption of international flights results in more delays for the airport categories with low passenger boardings. As the number of passengers from the airport category decreases, all rationing rules get more unfavorable to these passengers. The high passenger equity metric is closely connected to the flight cancellations as well as the number of flights from the same origin for connection purposes. Especially in case of General Aviation airports, the cancellation of small aircraft with 100% load factors results in a lot of delays for unaccommodated passengers. This result may have important accessibility implications. Total inequity metric for a given rationing rule is calculated as the sum of absolute ”distance” from a category’s equity to the ”perfect” equity (0) on a logarithmic scale (Section 3.2). Figure 4.10 shows the total GDP inequity metric under alternate rationing rules compared to the current GDP rule (RBS). The figure is divided into four quadrants similar to the Figure 4.6. The top right quadrant is called ”Not Desirable”. If a rationing rule falls in this quadrant, it is unfavorable to the passengers and the airlines compared to the RBS and will not be desirable as a rationing rule to implement. The bottom left quadrant is called ”Desirable” where a rationing rule in this quadrant is favorable to passengers and airlines compared to the current rule and will be desirable to implement. The top left quadrant and the bottom right quadrant of the figure are called ”Trade-off”. As the name suggests, these quadrants show a trade-off between the two equity metrics of concern. Top left quadrant is more favorable to the passengers whereas the bottom right quadrant is more favorable to the airlines compared to the RBS. Figure 4.10 shows that the RBPax fall in the ”Undesirable” quadrant and it is more unfavorable to the airlines and the passengers compared to the RBS, even though it results in the best GDP performance among the six rationing rules. The RBFFhigh and the RBFFlow also fall in the ”Undesirable” quadrant. The RBD results in a trade-off between airline and passenger equity where passengers are favored more. The RBAcSize has the same passenger equity as the RBS but it is little more unfavorable to the airlines. The RBS 98 results in the smallest total GDP airline delay inequity metric (2.31) and the RBD results in the smallest total GDP passenger inequity metric (1.67). Figure 4.10: EWR Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) Figure 4.10 and Figure 4.11 are very similar. They both show the total GDP passenger inequity metric in the x-axis. The only difference is that Figure 4.10 shows the total GDP airline inequity metric due to flight delays on the y-axis whereas Figure 4.11 shows the total GDP airline inequity metric due to fuel burn on the y-axis. In other words, Figure 4.10 compares the total passenger inequity and the total airline delay inequity among the alternate rationing rules whereas Figure 4.11 compares the total passenger inequity and the total airline fuel burn inequity. As expected from the airline fuel burn equity results (Figure 4.8), the inequity metric is closer to the origin, meaning that the airline fuel burn is more equitably distributed among all airlines under all rationing rules. Here, the RBD slightly moves into the ”Desirable” quadrant where it results in the smallest total GDP airline fuel burn inequity metric (1.09) and the smallest total GDP passenger inequity metric (1.67). 99 Figure 4.11: EWR Total GDP Inequity (Passenger Equity vs. Airline Fuel Burn Equity) EWR GDP Disutility Results: Minimizing the Pain Results show that there is a trade-off between the GDP performance and equity for all rationing rules considered. For example, the RBPax gives the best GDP performance at EWR (Figure 4.6) but it treats the passengers and the airlines unfavorably compared to the current rule (Figure 4.7). On the other hand, the RBS (the current rule) results in the best total airline delay equity but it results in high passenger delays and high fuel burn. Since all GDP rationing rules result in a trade-off, a decision can be reached using utility theory. Instead of a GDP utility, a GDP disutility is calculated using the four metrics of interest (total passenger delay, total fuel burn, total airline inequity and total passenger inequity). All four metrics are undesirable for the air transportation system and should be minimized. Then, the GDP rationing rule which minimizes the ”pain” or ”GDP disutility” is chosen as a desirable rationing rule to implement. 100 Figure 4.12, 4.13 and 4.14 show the GDP disutility for six rationing rules in EWR for the year 2007 under different air transportation system objectives. Figure 4.12 shows the GDP disutility when the system objective is focused only on performance. To represent the performance focus, only the passenger delay and the fuel burn metrics are weighted (the weight of the equity metrics are zero). The x-axis shows the weight of the fuel burn and the y-axis shows the GDP disutility as a result of this weight combination. As the weight of the fuel burn increases, the weight of the passenger delay decreases, implying that the system is more concerned about the extra fuel burn due to GDPs than the passenger delays. For all weight combinations considered, the RBPax results in the best performance for the system. The RBFFhigh comes as a close second. This is due to the fact that the RBPax has the minimum total passenger delay and total extra fuel burn among all six rationing rules (23% passenger delay and 57% fuel burn savings compared to the RBS (Figure 4.6)). Figure 4.12: EWR GDP Disutility with Performance Focus 101 Figure 4.13 shows the GDP disutility when the system objective is focused only on equity. To represent the equity focus, only the passenger equity and the airline equity metrics are weighted (the weight of the performance metrics are zero). The x-axis shows the weight of the airline equity metric and the y-axis shows the GDP disutility as a result of this weight combination. As the weight of the airline equity metric increases, the weight of the passenger equity metric decreases, implying that the system is more concerned about the airline equity than the passenger equity. For all weight combinations considered, the RBS results in the best equity for the system if the airline delay equity is used in the disutility calculation. The RBD has the minimum GDP disutility only when the passenger equity is concerned. At this weight combination, the difference in GDP disutility between the RBD and the RBS is very small. Figure 4.13: EWR GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) Figure 4.14 is similar to 4.13 but this figure uses the total GDP airline fuel burn inequity metric instead of the airline delay inequity metric. As the weight of the airline fuel burn equity metric increases, the weight of the passenger equity metric decreases, implying 102 Figure 4.14: EWR GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) that the system is more concerned about the airline fuel burn equity than the passenger equity. The results are very different than the previous figure. For all weight combinations considered, the RBD results in the best equity for the system if the airline fuel burn equity is used in the disutility calculation. This is because the RBD has the minimum total GDP passenger inequity metric and total GDP airline fuel burn inequity metric. Summary of Results at EWR for Experiment-1 Table 4.5 summarizes the results at EWR with Experiment-1. Different GDP rationing rules are selected for different system objectives. 103 Table 4.5: Summary of Results for EWR Experiment 1 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax RBPax Minimize Inequity RBS RBD Airlines are the Only Stakeholders RBPax RBD Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBD RBD 4.1.2 LaGuardia Airport (LGA) Figure 4.15: Actual LGA 2007 Planned GDP Duration There were 169 GDPs at LGA in 2007. The planned duration of these GDPs are shown as black bars in Figure 4.15. The red triangles in the figure depict the time each GDP is planned. The figure shows that GDPs can start in the early morning and last the rest of the operating day. In 2007, the average GDP duration at LGA was 11 hours and GDPs are planned on average 23 minutes prior to the GDP start time. Figure 4.16 shows the 104 Figure 4.16: Histogram for Actual LGA 2007 Planned GDP Duration Table 4.6: Actual LGA 2007 Planned GDP Tier Scope By-Tier No. GDPs Percentage Tier-2+Canada 4 3% NoWest+Canada 76 65% All+Canada 37 31% Manual 1 1% histogram for the planned durations of 2007 GDPs. Out of 169 GDPs, 70% of GDPs (119 GDPs) used Tier scope and 30% used Distance scope (50 GDPs). Table 4.6 shows the distribution of the Tier scopes and Figure 4.17 shows the distribution of the distance scopes. Except for one GDP, all distance scopes shown in the figure also include Canadian airports. The actual tiers used in the GDPs are grouped into three major categories as shown in Table 4.6. At LGA, Tier-2+Canada scope often includes Jacksonville ATC center (ZMA) and the NoWest+Canada scope often involves Denver ATC center (ZDV), making these scopes larger. NoWest+Canada, All+Canada 105 Figure 4.17: Histogram for Actual LGA 2007 Planned GDP Distance Scope Figure 4.18: Actual LGA 2007 GDP Average Demand and Capacity for 15-minute bins 106 and 1500+Canada are the most used scopes. Figure 4.18 shows the average scheduled demand against the average available capacity in 15 minutes bins at LGA during the GDP periods. As seen from the figure, average available capacity fluctuates around 9 flights per 15 minutes (red horizontal line). LGA Performance Results Table 4.7 shows the total and the standard deviation of Total GDP performance under alternate rationing rules at LGA. Total GDP flight delay as a result of the initial slot allocation (at the end of GDP Slot Allocation Module) is conserved. The change in total GDP flight delay at the end of the simulation (Compression Module) is insignificant (less than 0.1%). Figure 4.19 shows the GDP performance of the alternate GDP rationing rules compared to the current GDP rule (RBS). The x-axis shows the difference in total GDP passenger delay compared to the RBS, and the y-axis shows the difference in the total extra fuel burn due to GDP compared to the RBS. All new rules, except RBFFlow, fall in the ”Desirable” quadrant where they result in less passenger delay and less fuel burn than the RBS. The biggest improvement in performance is achieved using the RBPax and the RBFFhigh. RBPax results in a little more passenger delay savings than the RBFFhigh (20% with RBPax and 19% with RBFFhigh) but RBFFhigh results in a little bit more fuel burn savings than the RBPax (64% with RBFFhigh and 63% with RBPax) compared to the RBS. RBFFlow falls in the ”Undesirable” quadrant and results in a trade-off for less extra fuel burn for more passenger delays. 7% fuel burn savings compared to the RBS is not enough to overlook the 25% more passenger delays compared to the RBS. 107 108 RBS 31,341 2,331,923 65,667 25,384 2,168,407 53,838 10,457 1,067,065 34,285 RBPax 31,341 819,108 30,250 25,807 1,122,973 25,339 10,401 788,631 10,692 RBAcSize 31,341 1,945,893 59,329 24,797 1,890,969 48,071 10,381 987,339 30,021 RBD 31,341 1,357,478 42,322 25,135 1,420,259 33,058 10,333 839,234 16,245 RBFFhigh 31,341 888,208 28,821 26,026 1,166,663 24,462 10,414 794,582 10,625 Table 4.7: Simulated LGA 2007 GDP Performance by Rationing RBS RBPax RBAcSize RBD RBFFhigh 3,154,460 3,154,460 3,154,460 3,154,460 3,154,460 226,932,946 58,284,655 165,122,406 117,248,292 65,513,620 14,273,952 4,180,894 11,456,417 6,320,361 4,011,354 1,873,261 1,798,996 1,728,921 1,649,36 1,915,519 288,984,556 181,720,331 252,398,447 206,970,210 187,916,374 10,735,934 3,055,286 8,608,452 4,218,902 3,063,898 831,465 830,492 830,393 829,649 830,870 188,797,923 151,544,367 180,274,565 161,262,270 153,721,897 6,040,624 2,246,728 5,208,218 3,023,929 2,186,601 TFD: Total GDP Flight Delay TPD: Total GDP Passenger Delay TFB: Total GDP Fuel Burn STD DEV. TFD-Initial TPD-Initial TFF-Initial TFD-Sub TPD-Sub TFB-Sub TFD-Comp TPD-Comp TFB-Comp TOTAL TFD-Initial TPD-Initial TFF-Initial TFD-Sub TPD-Sub TFF-Sub TFD-Comp TPD-Comp TFF-Comp RBFFlow 31,341 3,475,668 79,756 27,016 3,199,942 67,614 10,664 1,496,356 34,014 Rule RBFFlow 3,154,460 389,998,582 12,783,852 2,095,250 401,134,233 9,598,016 835,781 236,060,698 5,618,088 Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Figure 4.19: LGA GDP Performance by Rationing Rule As mentioned in Section 2.1, the alternate GDP rationing rules can be used as the waiting costs for each customer type if the arrival GDP airport is modeled as a priority queue with a single server. The results above are in general consistent with the results that would be expected if such a priority queue is implemented. • If the cost of each flight is the number of passengers onboard and the flights with high number of passengers are given priority over the flights with small number of passengers, the RBPax minimizes the total passenger delay consistent with the results expected from a priority queuing model. • If the cost of the each flight is its aircraft size and the larger size aircraft are given priority over the smaller size aircraft, the RBAcSize reduces the total passenger delay and total fuel burn compared to the RBS but does not minimize these metrics consistent with the results expected from a priority queuing model. 109 • If the cost of a flight is the distance it travels to the GDP airport and the longhaul flights are given priority over the short-haul flights, the RBD decreases the total passenger delay and the total fuel burn but does not minimize these metrics consistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with high Etaxi rates are given priority over the flights with low Etaxi rates, the RBFFhigh minimizes the total fuel burn and decreases the total passenger delay consistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with low Etaxi rates are given priority over the flights with high Etaxi rates, the RBFFlow increases the total passenger delay consistent with the results expected from a priority queuing model. On the other hand, it decreases the total fuel burn which is inconsistent with the expected results from a priority queuing model. LGA Equity Results Figure 4.20 shows the airline equity metric due to flight delays at the end of year 2007 under the six alternate GDP rationing rules. The percentage of scheduled flights for each airline is given in parentheses. ”Perfect equity” is represented as 0. If an airline’s equity is positive, the airline is assigned less flight delay than its fair share and is treated favorably. Conversely, if an airline’s equity is negative, then the airline is assigned more flight delay than its fair share and is treated unfavorably. As opposed to EWR, there is no dominant carrier at LGA. Airline #1, #2 and #3 share the majority of the flights. Airline #1 serves shorter distances than Airline #2 and #3 with smaller aircraft sizes. That’s why the rationing rules which give preference to larger aircraft sizes (the RBPax, the RBD, and the RBFFhigh compared to the RBFFlow) are unfavorable to Airline #1. LGA also serves the most number of General Aviation airports in the New York metroplex. Flights coming from these airports often fall under the ”Other” category and utilize ”small” size aircraft. These flights are penalized highly with the RBPax and the RBAcSize. At LGA in 2007, there 110 Figure 4.20: LGA Airline Equity due to Flight Delays Figure 4.21: LGA Airline Equity due to Fuel Burn 111 was only one airline that serves only non-U.S. origins during the GDPs. ”INT’L” shows the equity metric of this airline. Overall, the RBS exhibits the most ”fair” delay allocation whereas the RBPax penalizes Airline #1 and ”Other” category airlines highly for the sake of the flights with large number of passengers. Figure 4.21 shows the airline equity metric due to extra fuel burn. The equity metric values are closer to the ”perfect” equity than the delay equity metric values, but the relative metric values with different rationing rules does not change much by using fuel burn as the equity metrics rather than the flight delay. Figure 4.22: LGA Passenger Equity correlated with Cancellations Figure 4.22 shows the passenger equity metric at the end of 2007 under the alternate rationing rules. The percentage of 2006 calendar year passenger boardings from each airport category is given in parentheses. ”Perfect equity” is again represented as 0. Except for those of the primary large hub and medium hub, all passengers are treated unfavorably. At LGA in 2007, 6% of all GDP flights originated from non-U.S. airports, but only 1% of all GDP 112 flights was exempt. Since LGA GDPs always involve Canadian airports in the scope, the rationing rules are also unfavorable to the passengers from non-U.S. airports. This result is shared not only for the new rationing rules but the RBS as well. This shows that the high passenger inequity at LGA is not only the result of different rationing rules but also the result of the flight cancellations. Figure shows the percent of scheduled flights that are cancelled from each airport category. In the figure, the more flights cancelled from an airport category, the more unfavorable the rationing rules become. With the rationing rules that give preference to larger aircraft, small airport categories (Commercial Service, General Aviation, and Primary Non Hub airports) face additional increase in their delays since the flights scheduled on these routes tend to be smaller. The high number of cancellations at Commercial Service (61%) and General Aviation (48%) may be due to ”opportunistic” general aviation flights, flights that would like to fly under normal conditions but choose not to when a GDP is implemented. Figure 4.23 shows the total passenger and airline delay inequity metric for all rationing rules compared to the RBS. The RBAcSize, the RBPax, the RBFFD, and the RBFFhigh fall in the ”Undesirable” quadrant where these rules are unfavorable to the both stakeholders compared to the RBS. The RBFFlow results in a trade-off between airline and passenger equity where passengers are favored more. The RBS results in the smallest total GDP airline delay inequity metric (0.26) and the RBFFlow results in the minimum total passenger inequity metric (2.23). Figure 4.24 shows the total passenger and airline fuel burn inequity metric for all rationing rules compared to the RBS. The RBPax and the RBD fall in the ”Undesirable” quadrant. The RBFFhigh has the same airline fuel equity but is unfavorable towards passengers. The RBFFlow and the RBAcSize both trade-off passenger and airline fuel burn equity. The RBFFlow is more favorable to the passengers whereas the RBAcSize is more favorable to the airlines in terms of their fuel burn compared to the RBS. The figure shows that the RBAcSize has the minimum total airline fuel burn inequity metric (1.05) and the 113 Figure 4.23: LGA Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) Figure 4.24: LGA Total GDP Inequity (Passenger Equity vs. Airline Fuel Burn Equity) 114 RBFFlow results in the minimum total passenger inequity metric (2.23) in 2007. LGA GDP Disutility Results: Minimizing the Pain Figure 4.25 shows the GDP disutility when the system objective is focused only on performance. To represent the performance focus, only the passenger delay and the fuel burn metrics are weighted (the weight of the equity metrics are zero). The x-axis shows the weight of the fuel burn and the y-axis shows the GDP disutility as a result of this weight combination. As the weight of the fuel burn increases, the weight of the passenger delay decreases, implying that the system is more concerned about the extra fuel burn due to GDPs than the passenger delays. For all weight combinations considered, the RBPax and the RBFFhigh result in the best performance for the system. Figure 4.26 shows the GDP disutility when the system objective is focused only on equity. To represent the equity focus, only the passenger equity and the airline delay equity metrics are weighted (the weight of the performance metrics are zero). The x-axis shows the weight of the airline equity metric and the y-axis shows the GDP disutility as a result of this weight combination. As the weight of the airline delay equity metric increases, the weight of the passenger equity metric decreases, implying that the system is more concerned about the airline delay equity than the passenger equity. When the passenger equity is highly weighted, the RBFFlow has the minimum GDP disutility. This is not surprising since the RBFFlow has the minimum total passenger inequity. As the airline delay equity gets more important, the RBS gives better results. Figure 4.27 is similar to 4.26 but this figure uses the total GDP airline fuel burn inequity metric instead of the airline delay inequity metric. Again for high passenger equity weights, the RBFFlow and the RBS have the minimum GDP disutility for different weight combinations. When the system is more concerned about airline fuel burn equity, the RBAcSize results in better performance for the most weight combinations. As seen from Figure 4.24, the RBAcSize has the minimum total airline fuel burn inequity. 115 Figure 4.25: LGA GDP Disutility with Performance Focus Figure 4.26: LGA GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) 116 Figure 4.27: LGA GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) Summary of Results at LGA for Experiment-1 Table 4.8 summarizes the results at LGA with Experiment-1. Different GDP rationing rules are selected for different system objectives. Table 4.8: Summary of Results for LGA Experiment 1 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity RBFFlow-RBS RBFFlow-RBS-RBAcSize Airlines are the Only Stakeholders RBAcSize RBFFhigh Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBAcSize RBFFhigh 117 4.1.3 John F. Kennedy International Airport (JFK) Figure 4.28: Actual JFK 2007 GDP Planned Duration There were 150 GDPs at JFK in 2007. The planned duration of these GDPs are shown as black bars in Figure 4.28. The red triangles in the figure depict the time each GDP is planned. Figure shows that GDPs often start in the late afternoon or early evening, and last the rest of the day. In 2007, the average GDP duration at JFK was 7 hours and GDPs are planned on average 111 minutes prior to the GDP start time. Figure 4.29 shows the histogram for the planned durations of 2007 GDPs. Out of 150 GDPs, 87% of GDPs (130 GDPs) used Tier scope and 13% used Distance scope (20 GDPs). Table 4.9 shows the distribution of the Tier scopes and Figure 4.30 shows the distribution of the Distance scopes. All distance scopes shown in the figure include Canadian airports. The actual tiers used in the GDPs are grouped into three major categories as shown in Table 4.9. NoWest+Canada, All+Canada and 2000+Canada are the 118 Figure 4.29: Histogram for Actual JFK 2007 Planned GDP Duration Figure 4.30: Histogram for Actual JFK 2007 Planned GDP Distance Scope 119 Figure 4.31: Actual JFK 2007 GDP Average Demand and Capacity for 15-minute bins Table 4.9: Actual JFK 2007 Planned GDP Tier Scope By-Tier No. GDPs Percentage Tier-2+Canada 4 3% NoWest+Canada 58 45% All+Canada 67 52% Manual 1 1% most used scopes. Figure 4.31 shows the average scheduled demand against the average available capacity in 15 minutes bins at JFK during the GDP periods. The average available capacity fluctuates around 10 flights per 15 minutes (red horizontal line). 120 JFK Performance Results Table 4.10 shows the total and the standard deviation of Total GDP performance under alternate rationing rules at JFK. Total GDP flight delay as a result of the initial slot allocation (at the end of GDP Slot Allocation Module) is conserved. The change in total GDP flight delay at the end of the simulation (Compression Module) is insignificant (less than 0.1%). Figure 4.32 shows the GDP performance of the alternate GDP rationing rules compared to the current GDP rule (RBS). The x-axis shows the difference in total GDP passenger delay compared to the RBS, and the y-axis shows the difference in the total extra fuel burn due to GDP compared to the RBS. All new rules, except the RBFFlow, falls in the ”desirable” quadrant where the alternate rules result in less passenger delay and less fuel burn than the RBS. The passenger delay and the fuel burn savings at JFK is much less than at EWR or LGA due to the relatively smaller number of GDPs with shorter durations. The biggest improvement in performance is again achieved using the RBPax and the RBFFhigh. Similar to the LGA results, the RBPax results in a little more passenger savings than the RBFFhigh (15% with the RBPax and 14% with the RBFFhigh) but the RBFFhigh results in a little bit more fuel burn savings than the RBPax (43% with the RBFFhigh and 42% with the RBPax) compared to the RBS. The RBFFlow results in more passenger delays with the same amount of extra fuel burn compared to the RBS. 121 122 RBS 12,011 1,286,498 36,854 6,358 1,543,087 24,433 4,557 1,362,767 20,778 RBPax 12,011 652,144 22,265 6,248 1,351,426 14,413 4,549 1,267,437 10,225 Table 4.10: Simulated RBS RBPax 1,255,207 1,255,207 129,629,652 61,460,669 6,486,376 3,513,536 761,753 724,906 221,678,561 178,029,166 4,972,001 2,709,705 551,257 550,718 197,500,118 168,346,319 4,149,164 2,396,291 TFD: Total GDP Flight Delay TPD: Total GDP Passenger Delay TFB: Total GDP Fuel Burn STD DEV. TFD-Initial TPD-Initial TFB-Initial TFD-Sub TPD-Sub TFB-Sub TFD-Comp TPD-Comp TFB-Comp TOTAL TFD-Initial TPD-Initial TFF-Initial TFD-Sub TPD-Sub TFF-Sub TFD-Comp TPD-Comp TFF-Comp RBAcSize 12,011 1,011,965 29,793 6,310 1,451,118 19,570 4,553 1,316,437 15,849 RBD 12,011 814,128 24,562 6,051 1,360,996 15,295 4,550 1,280,888 11,253 RBFFhigh 12,011 684,846 22,439 6,270 1,353,132 14,371 4,549 1,269,731 10,174 RBFFlow 12,011 1,758,130 40,326 6,729 1,791,379 25,446 4,559 1,451,784 20,607 JFK 2007 GDP Performance by Rationing Rule RBAcSize RBD RBFFhigh RBFFlow 1,255,207 1,255,207 1,255,207 1,255,207 102,921,987 81,528,378 65,226,122 196,169,498 5,232,284 3,856,200 3,473,678 6,481,450 756,158 681,843 732,182 788,980 206,688,931 187,594,610 180,611,088 261,036,193 4,051,268 2,878,143 2,678,075 4,850,654 550,956 550,774 550,698 551,579 187,232,980 176,584,488 169,891,761 223,166,393 3,421,266 2,586,118 2,369,897 4,035,496 Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Unit min/year min/year kg/year min/year min/year kg/year min/year min/year kg/year Figure 4.32: JFK GDP Performance by Rationing Rule As mentioned in Section 2.1, the alternate GDP rationing rules can be used as the waiting costs for each customer type if the arrival GDP airport is modeled as a priority queue with a single server. The results above are in general consistent with the results that would be expected if such a priority queue is implemented. • If the cost of each flight is the number of passengers onboard and the flights with high number of passengers are given priority over the flights with small number of passengers, the RBPax minimizes the total passenger delay consistent with the results expected from a priority queuing model. • If the cost of the each flight is its aircraft size and the larger size aircraft are given priority over the smaller size aircraft, the RBAcSize reduces the total passenger delay and total fuel burn compared to the RBS but does not minimize these metrics consistent with the results expected from a priority queuing model. 123 • If the cost of a flight is the distance it travels to the GDP airport and the longhaul flights are given priority over the short-haul flights, the RBD decreases the total passenger delay and the total fuel burn but does not minimize these metrics consistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with high Etaxi rates are given priority over the flights with low Etaxi rates, the RBFFhigh minimizes the total fuel burn and decreases the total passenger delay consistent with the results expected from a priority queuing model. • If the cost of each flight is its Etaxi rate and the flights with low Etaxi rates are given priority over the flights with high Etaxi rates, the RBFFlow increases the total passenger delay consistent with the results expected from a priority queuing model. On the other hand, it decreases the total fuel burn which is inconsistent with the expected results from a priority queuing model. JFK Equity Results Figure 4.33 shows the airline equity metric due to the flight delays at the end of year 2007 under the six alternate GDP rationing rules. The percentage of the scheduled flights for each airline is given in parentheses. ”Perfect equity” is represented as 0. If an airline’s equity is positive, the airline is assigned less flight delay than its fair share and is treated favorably. Conversely, if an airline’s equity is negative, then the airline is assigned more flight delay than its fair share and is treated unfavorably. Similar to LGA, there is no dominant carrier at JFK. Airline#1, #2 and #3 share the majority of the flights. Thirty four percent of all GDP flights and 53% of all GDP passengers coming to JFK originated from a non-U.S. airport in 2007 (Table 4.2). With 39% of the flights being exempt, the domestic flights at JFK are often delayed during GDPs. In addition, 48% of the airlines only serve the non-U.S. origins. Airlines #5 and #10 have very small number of domestic flights and their delay equity is similar to that of ”INT’L” category. All rationing rules are unfavorable to Airline-1 due to the schedule times of its flights. Because there is a high 124 Figure 4.33: JFK Airline Equity due to Flight Delays Figure 4.34: JFK Airline Equity due to Fuel Burn 125 number of international exemptions, the airlines with flights scheduled to arrive at the same time with these international flights often get highly penalized. Figure 4.34 shows the airline equity metric due to the extra fuel burn. Again, the equity metric values are closer to the ”perfect” equity than the delay equity metric values. The allocation of fuel burn among airlines is different than that of flight delays. As an airline being treated favorably for its delays does not always translate into favorable treatment for its fuel burn. Overall, Airlines #8, #9 and #10 are penalized higher for fuel burn for the exemption of the international flights. Figure 4.35: JFK Passenger Equity correlated with Cancellations Figure 4.35 shows the passenger equity metric at the end of 2007 under the alternate rationing rules. The percentage of 2006 calendar year passenger boardings from each airport category is given in parentheses. ”Perfect equity” is again represented as 0. All rationing rules are very unfavorable to all domestic passengers because of the high number of exemptions for the international flights. The main contributor to inferior domestic passenger 126 equity is the flight cancellations. Figure shows the percent of scheduled flights that are cancelled from each airport category. As more and more flights are cancelled at an airport category, the passenger equity degrades faster. The cancellation rate is lower at JFK than LGA, so the domestic passenger equity is a little better. Even though the passenger inequity is not as bad as at LGA, it is worrisome that this value is the highest for the small airports, such as General Aviation and Commercial Service airports. Compared to LGA, JFK has more international flights, causing more delay for domestic flights and domestic passengers. Figure 4.36 shows the total passenger and airline delay inequity metric for all rationing rules compared to the RBS at JFK airport. The RBD falls in the ”Undesirable” quadrant and it is unfavorable to the both stakeholders compared to the RBS. The rest of the rationing rules results in similar passenger equity compared to the RBS but they are more unfavorable to the airlines. The RBS results has the minimum total airline delay inequity metric (3.85) while the RBFFhigh results in the minimum total passenger inequity metric (3.19) in 2007. Figure 4.37 shows the total passenger and airline fuel burn inequity metric for all rationing rules compared to the RBS. The RBAcSize and the RBFFhigh has similar passenger equity compared to the RBS but are unfavorable to the airlines. The RBPax and the RBD are favorable to the airlines but unfavorable to the passengers. The figure shows that the RBFFhigh has the minimum total airline fuel burn inequity metric (1.25) and the minimum total passenger inequity metric (3.19) in 2007. JFK GDP Disutility Results: Minimizing the Pain Figure 4.38 shows the GDP disutility when the system objective is focused only on performance at JFK airport. To represent the performance focus, only the passenger delay and the fuel burn metrics are weighted (the weight of the equity metrics are zero). The x-axis shows the weight of the fuel burn and the y-axis shows the GDP disutility as a result of this 127 Figure 4.36: JFK Total GDP Inequity (Passenger Equity vs. Airline Delay Equity) Figure 4.37: JFK Total GDP Inequity (Passenger Equity vs. Airline Fuel Burn Equity) 128 Figure 4.38: JFK GDP Disutility with Performance Focus weight combination. As the weight of the fuel burn increases, the weight of the passenger delay decreases, implying that the system is more concerned about the extra fuel burn due to GDPs than the passenger delays. For all weight combinations considered, the RBPax and the RBFFhigh result in the best performance for the system. Figure 4.39 shows the GDP disutility when the system objective is focused only on equity. To represent the equity focus, only the passenger equity and the airline delay equity metrics are weighted (the weight of the performance metrics are zero). The x-axis shows the weight of the airline equity metric and the y-axis shows the GDP disutility as a result of this weight combination. As the weight of the airline delay equity metric increases, the weight of the passenger equity metric decreases, implying that the system is more concerned about the airline delay equity than the passenger equity. For all weight combinations considered, the RBS result in the best equity for the system, when airline delay equity is used in the disutility calculation. 129 Figure 4.39: JFK GDP Disutility with Equity Focus (Passenger Delay vs. Airline Delay) Figure 4.40: JFK GDP Disutility with Equity Focus (Passenger Delay vs. Airline Fuel Burn) 130 Figure 4.40 is similar to 4.39 but this figure uses the total GDP airline fuel burn inequity metric instead of the airline delay inequity metric. This time, the RBFFhigh result in the best performance for the system for all weight combinations investigated. Summary of Results at JFK for Experiment-1 Table 4.11: Summary of Results for JFK Experiment 1 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity RBS RBFFhigh Airlines are the Only Stakeholders RBD RBFFhigh Passengers are the Only Stakeholders RBPax-RBFFhigh RBPax-RBFFhigh All Metrics are Equally Important RBPax RBFFhigh Table 4.11 summarizes the results at JFK with Experiment-1. Different GDP rationing rules are selected for different system objectives. 4.1.4 Experiment-1 Summary of Results Table 4.12 summarizes the results of Experiment-1 with six alternate GDP rationing rules at three New York metroplex airports. Different GDP rationing rules are selected for different system objectives. At all three airports, the RBPax and the RBS are the most robust rules, where RBPax gives the best GDP performance and the RBS gives the best GDP equity when airline equity due to flight delays are used in the disutility calculation. 131 Table 4.12: Summary of Results for Experiment 1 Airline Delay System Objective Inequity is used EWR LGA Maximize Performance RBPax RBPax-RBFFhigh Minimize Inequity RBS RBFFlow-RBS Airlines are the Only Stakeholders RBPax RBAcSize Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBD RBAcSize System Objective Maximize Performance Minimize Inequity Airlines are the Only Stakeholders Passengers are the Only Stakeholders All Metrics are Equally Important Airline Fuel Burn Inequity is used EWR LGA RBPax RBPax-RBFFhigh RBFFlow-RBS RBD RBAcSize RBD RBFFhigh RBD RBD RBD RBFFhigh 132 JFK RBPax-RBFFhigh RBS RBD RBPax-RBFFhigh RBPax JFK RBPax-RBFFhigh RBFFhigh RBFFhigh RBPax-RBFFhigh RBFFhigh 4.2 Experiment 2: Sensitivity to the Airline Substitution Strategy In this section, the sensitivity of the results in Section 4.1 to the different airline substitution strategies is investigated. Section 4.1 results use Flight-based Substitution Strategy, which gives precedence to earlier scheduled non-cancelled flights (SRTA) in the substitution process. This strategy tends to minimize an airline’s total flight delay. This section uses the same inputs as the previous section, but uses Passenger-based Substitution Strategy instead. Passenger-based Substitution Strategy gives precedence to non-cancelled flights with more passengers on-board during the airline substitution. This strategy tends to minimize an airline’s passenger delay due to flight delays. Table 4.13 shows the inputs for this experiment. 133 Table 4.13: Experiment 2 Airport EWR LGA JFK GDP Parameters PAAR Scope Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Duration Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Airline Parameters Cancel. Subs Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based Actual Flight-based Actual Pax-based 134 No. Days 197 197 197 197 197 197 197 197 197 197 197 197 169 169 169 169 169 169 169 169 169 169 169 169 150 150 150 150 150 150 150 150 150 150 150 150 Rationing Rule RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow Run No. 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 4.2.1 Newark Liberty Airport (EWR) EWR Performance Results with Different Airline Substitution Strategies Figure 4.41: Change in EWR GDP Performance due to different Airline Substitution Strategies Figure 4.41 shows how the GDP performance metrics change as the airline substitution strategy changes compared to the current GDP rule (RBS). This figure is similar to Figure 4.6, but it shows the result of both substitution strategies. The same colored arrows next to each rationing rule show the direction of the change as the airlines move from the flightbased to the passenger-based substitutions. The passenger-based substitution strategy does not change the relative savings of the rationing rules. All the rationing rules fall in the same quadrants of the graph in the same order as they did in the Experiment-1. The RBPax has still the best GDP performance over all the rationing rules. The GDP performance under all rationing rules, including the RBS, decreases with the passenger-based substitution strategy. The direction of all the arrows point in the up-right direction, where both the total passenger 135 delay and the total fuel burn decrease. EWR Equity Results with Different Airline Substitution Strategies Figure 4.42: Change in EWR Airline Equity due to Flight Delays with different Airline Substitution Strategies Figure 4.42 shows how each airline’s delay equity metric changes as the airline substitution strategy changes. If an airline’s equity metric is positive, this airline has less delay with the passenger-based substitutions compared to the flight-based substitutions. If an airline’s equity metric is negative, this airline has more delays with the passenger-based substitutions compared to the flight-based substitutions. Overall there is no big differences in the results. No significant changes observed for the RBD and the RBFFhigh. When substitution is done by the number of passengers onboard, the RBS, the RBAcSize and the RBFFlow become more unfavorable to the airlines whereas the RBPax becomes more favorable. This change is attributable to two factors. First factor is the airline flight scheduling. The scheduling times of the larger size aircraft compared to the smaller size aircraft make a difference in the number of substitutions an airline can make. When the passenger-based substitution is 136 implemented, most airlines had more substitutions under the RBPax and the RBD while they had fewer substitutions under the RBS and the RBAcSize. Second factor is the unused slots as the input for the compression algorithm. Compression only allocates the unused slots and the substitution strategy changes which slots are available for reallocation, in turn changing the delay reduction of many flights. Figure 4.43 shows how each airline’s fuel burn equity metric changes as the airline substitution strategy changes. As in the previous figure, there is no big differences in the fuel burn equity metric. Overall, all rationing rules are unfavorable to airlines in terms of their fuel burn, meaning that these flights burn more fuel when they utilize the passengerbased substitutions instead of the flight-based substitutions. This change is more visible with the RBS and the RBAcSize. Figure 4.43: Change in EWR Airline Equity due to Fuel Burn with different Airline Substitution Strategies Figure 4.44 shows how passenger equity metric for each airport category changes with the new substitution strategy. If the difference in an airport category’s metric is positive, less 137 Figure 4.44: Change in EWR Passenger Equity with different Airline Substitution Strategies delay is assigned to passengers from that category with the passenger-based substitutions. On the other hand, if the difference is negative, more delay is assigned to passengers from that airport category. Figure shows that the amount of change in the equity metric under all rationing rules is not much (less than 0.025). This is due to the fact that flight cancellations generate more passenger delays than flight delays and the flight cancellations are kept the same between two substitution strategies. The savings in passenger delays due to flight substitutions are not significant to change the results. When the RBS and the RBAcSize is implemented, the passengers from Primary Small-hub and General Aviation airports are assigned more delays with the passenger-based substitutions. The previous section showed that these passengers were treated unfavorably. This additional increase in delays at these airports is not desirable. Figure 4.45 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as the 138 airline substitution strategy changes from flight-based to passenger-based. All rationing rules fall in the same quadrants as they do with the flight-based substitutions. Figure 4.45 shows that there is almost no difference in the total passenger inequity. The RBPax, the RBD, the RBFFhigh and the RBFFlow are more favorable to the airlines with the passenger-based substitutions (the arrows point down) compared to the RBS whereas the RBS and the RBAcSize are less favorable (the arrows point up). The RBS still has the minimum airline delay inequity (2.46) and the RBD has the minimum passenger inequity metric (1.71) but these values are higher than the values in the Experiment-1 (RBS 2.31 and RBD 1.67), meaning that the overall total inequity has increased. Figure 4.45: Change in EWR Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) Figure 4.46 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric with the new substitution strategy. The overall results are the same as the flight-based substitutions. There is a bit more change observed in the total airline fuel burn inequity than the total airline delay inequity. The RBD has both the minimum 139 Figure 4.46: Change in EWR Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Fuel Burn Equity) airline fuel burn inequity metric (1.1) and the minimum passenger inequity metric (1.71). All alternate rationing rules are more favorable to the airlines in terms of their fuel burn with the passenger-based substitutions (the arrows point down) compared to the RBS. EWR Utility Results with Different Airline Substitution Strategies The GDP disutility for each rationing rule under the passenger-based airline substitutions is shown below. Figure 4.47 shows the GDP disutility when the system objective is to maximize performance. Figure 4.48 and Figure 4.49 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives do not change with different strategies. 140 Figure 4.47: EWR GDP Disutility with Performance Focus using the Passenger-based Substitutions Figure 4.48: EWR GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Delay) 141 Figure 4.49: EWR GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) Summary of Results at EWR for Experiment-2 Table 4.14 summarizes the results at EWR under Experiment-2. Different GDP rationing rules are selected for different system objectives. Table 4.14: Summary of Results for EWR Experiment 2 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax RBPax Minimize Inequity RBS RBD Airlines are the Only Stakeholders RBPax RBD Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBD RBD 142 4.2.2 LaGuardia Airport (LGA) LGA Performance Results with Different Airline Substitution Strategies Figure 4.50: Change in LGA GDP Performance due to different Airline Substitution Strategies Figure 4.50 shows how the GDP performance change with the alternate rationing rules as the airline substitution strategy changes compared to the current GDP rule (RBS). This figure is similar to Figure 4.19, but it shows the result of both substitution strategies. The same colored arrows next to each rationing rules show the direction of the change when the airlines use the passenger-based substitutions instead of the flight-based substitutions. The passenger-based substitution strategy does not change the relative savings of the rationing rules. All the rationing rules fall in the same quadrant in the figure in the same order compared to the Experiment-1 results (Figure 4.19). The RBPax and the RBFFhigh have still the best GDP performance over all the rationing rules. The GDP performance under all rationing rules, including the RBS, decreases with the new substitution strategy. The 143 direction of all arrows point in the up-right direction, where both the total passenger delay and the total fuel burn increase. With the RBFFlow, the total passenger delay does not change but the fuel burn savings decrease when the passenger-based substitution is used. LGA Equity Results with Different Airline Substitution Strategies Figure 4.51 shows how each airline’s delay equity metric changes as the airline substitution strategy changes. If an airline’s equity metric is positive, the airline has less delay when the passenger-based substitutions are used. If an airline’s equity metric is negative, the airline has more delays when the passenger-based substitutions are used. Overall there is no big differences in the equity. When substitution is done by the number of passengers onboard, the RBS is more unfavorable to airlines with less than 6% of the scheduled GDP arrivals. Figure 4.51: Change in LGA Airline Equity due to Flight Delays with different Airline Substitution Strategies Figure 4.52 shows how each airline’s fuel burn equity metric changes as the airline substitution strategy changes. There is no big differences in the values. The only visible 144 difference comes from the RBS and RBAcSize. Both the RBS and the RBAcSize are favorable to Airline #1 and unfavorable to almost all airlines including the international airlines with the passenger-based substitutions compared to the flight-based substitutions. Figure 4.52: Change in LGA Airline Equity due to Fuel Burn with different Airline Substitution Strategies Figure 4.53 shows how passenger equity metric for each airport category changes with the passenger-based substitution strategy. If the difference in an airport category’s passenger equity between two substitution strategies is positive, less delay is assigned to passengers from that category. If the difference is negative, more delays is assigned to passengers from that airport category. There is no significant difference observed. At LGA, the passenger equity is mainly determined by the flight cancellations and the flight cancellations are kept the same under both substitution strategies. The passenger delays due to cancellations are so high compared to those due to flight delays that the change in flight delays under different substitution strategies does not make any difference as far as the passenger equity 145 Figure 4.53: Change in LGA Passenger Equity with different Airline Substitution Strategies is concerned. Figure 4.54 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as the airline substitution strategy changes from flight-based to passenger-based. Figure 4.54 shows that there is a small difference in the total passenger inequity. Compared to the RBS, the RBPax, the RBD, the RBFFhigh and the RBFFlow are more favorable to both the airlines and the passengers with the passenger-based substitutions (the arrows point down-left direction) whereas the RBS and the RBAcSize are less favorable to the airlines (the arrows point up). The RBS still has the minimum airline delay inequity (0.57) and the RBFFlow has the minimum passenger inequity metric (2.24) but these values are higher than the values in the Experiment-1 (RBS 0.26 and RBFFlow 2.23), meaning that the overall total inequity has increased. 146 Figure 4.54: Change in LGA Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) Figure 4.55: Change in LGA Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Fuel Burn Equity) 147 Figure 4.55 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric with the new substitution strategy. The overall results are the same as the flight-based substitutions. The RBAcSize has still the minimum airline fuel burn inequity metric (1.2) but this value increased compared to the flight-based substitutions (1.05). Compared to the RBS, the RBPax, the RBD, the RBFFhigh and the RBFFlow are more favorable to both the airlines for their fuel burn and the passengers with the passenger-based substitutions (the arrows point down-left direction). The RBAcSize moves in the opposite direction that it is more favorable to airlines in terms of their fuel burn but less favorable to the passengers compared to the current rule (the arrows point down-right direction). The RBS is less favorable to the both stakeholders (the arrows point up-right direction). LGA Utility Results with Different Airline Substitution Strategies The GDP disutility for each rationing rule under the passenger-based airline substitutions is shown below. Figure 4.56 shows the GDP disutility when the system objective is to maximize performance. Figure 4.57 and Figure 4.58 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives does not change with different airline substitution strategies. 148 Figure 4.56: LGA GDP Disutility with Performance Focus using the Passenger-based Substitutions Figure 4.57: LGA GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Delay) 149 Figure 4.58: LGA GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) Summary of Results at LGA for Experiment-2 Table 4.15 summarizes the results at LGA under Experiment-2. Different GDP rationing rules are selected for different system objectives. Table 4.15: Summary of Results for LGA Experiment 2 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity RBFFlow-RBS RBFFlow-RBS-RBAcSize Airlines are the Only Stakeholders RBAcSize RBFFhigh Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBAcSize RBFFhigh 150 4.2.3 John F. Kennedy International Airport (JFK) JFK Performance Results with Different Airline Substitution Strategies Figure 4.59: Change in JFK GDP Performance due to different Airline Substitution Strategies Figure 4.59 shows how the GDP performance at JFK under alternate rationing rules change compared to the current GDP rule (RBS) as the airline substitution strategy changes from flight-based to passenger-based. This figure is similar to Figure 4.32, but it shows the result of both substitution strategies. The same colored arrows next to each rationing rules show the direction of the change. The passenger-based substitution strategy does not change the relative savings of the rationing rules. All the rationing rules considered fall in the same quadrants of the graph, in the same order. The RBPax and the RBFFhigh still have the best GDP performance over all the rationing rules. The GDP performance under all rationing rules, including the RBS, decreases with the passenger-based substitution strategy. The direction of all arrows point in the up-right direction, where both the total passenger delay 151 and the total excess fuel burn increase. As opposed to EWR and LGA, the amount of change in the savings is less at JFK. This is mainly due to the relatively low number of GDPs with much shorter durations. JFK Equity Results with Different Airline Substitution Strategies Figure 4.60 shows how each airline’s delay equity metric changes as the airline substitution strategy changes. If an airline’s equity metric is positive, the airline has less delay when the passenger-based substitutions are used. If an airline’s equity metric is negative, the airline has more delays when the passenger-based substitutions are used. Overall there is no big difference in the equity values. The RBS and the RBAcSize is more sensitive to the airline strategies compared to the other rules and increase flight delay for some airlines when the airlines use the passenger-based substitutions. Figure 4.60: Change in JFK Airline Equity due to Flight Delays with different Airline Substitution Strategies 152 Figure 4.61 shows how each airline’s fuel burn equity metric changes as the airline substitution strategy changes. There is no big differences observed in the equity values. The RBS and the RBAcSize is more sensitive to the airline strategies compared to the other rules and increase the fuel burn of most of the airlines. Figure 4.61: Change in JFK Airline Equity due to Fuel Burn with different Airline Substitution Strategies Figure 4.62 shows how passenger equity metric for each airport category changes with the new substitution strategy. If the difference in an airport category’s passenger equity between two substitution strategies is positive, less delay is assigned to the passengers from that category. If the difference is negative, then more delay is assigned to the passengers from that airport category. There is almost no change in the passenger equity metric between the two substitution strategies. No change implies that the passenger equity at JFK is solely dependant on the flight cancellations. Figure 4.63 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as 153 Figure 4.62: Change in JFK Passenger Equity with different Airline Substitution Strategies the airline substitution strategy changes from flight-based to passenger-based. Figure 4.63 shows that there is almost no difference in the total passenger inequity. All rationing rules are more favorable to the airlines with the passenger-based substitutions compared to the RBS (the arrows point down). The RBS still has the minimum airline delay inequity (3.94) and the RBFFhigh still has the minimum passenger inequity metric (3.20) but these values are higher than the values in the Experiment-1 (RBS 3.85 and RBFFlow 3.19), meaning that the overall total inequity has increased. Figure 4.64 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric with the new substitution strategy. The overall results are the same as the flight-based substitutions. The RBFFhigh still has both the minimum airline fuel burn inequity metric (1.25) and the minimum passenger inequity metric (3.20). Compared to the RBS, the RBPax, the RBD, the RBFFhigh and the RBFFlow are more favorable to the airlines for their fuel burn with no change in passenger equity (the arrows point 154 Figure 4.63: Change in JFK Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Delay Equity) Figure 4.64: Change in JFK Total GDP Inequity with the Passenger-based Substitutions (Passenger Equity vs. Airline Fuel Burn Equity) 155 down), while the RBS is a little bit more unfavorable to the airlines when airlines use the passenger-based substitutions. These differences are not significant enough to change the results. JFK Utility Results with Different Airline Substitution Strategies Figure 4.65: JFK GDP Disutility with Performance Focus using the Passenger-based Substitutions The GDP disutility for each rationing rule under the passenger-based airline substitutions is shown below. Figure 4.65 shows the GDP disutility when the system objective is to maximize performance. Figure 4.66 and Figure 4.67 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives do not change with different strategies. 156 Figure 4.66: JFK GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Delay) Figure 4.67: JFK GDP Disutility with Equity Focus using the Passenger-based Substitutions (Passenger Delay vs. Airline Fuel Burn) 157 Summary of Results at JFK for Experiment-2 Table 4.16: Summary of Results for JFK Experiment 2 Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity RBS RBFFhigh Airlines are the Only Stakeholders RBD RBFFhigh Passengers are the Only Stakeholders RBPax-RBFFhigh RBPax-RBFFhigh All Metrics are Equally Important RBPax RBFFhigh Table 4.16 summarizes the results at JFK under Experiment-2. Different GDP rationing rules are selected for different system objectives. 4.2.4 Experiment-2 Summary of Results Table 4.17: Summary of Results for Experiment 2 Airline Delay System Objective Inequity is used EWR LGA Maximize Performance RBPax RBPax-RBFFhigh Minimize Inequity RBS RBFFlow-RBS Airlines are the Only Stakeholders RBPax RBAcSize Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBD RBAcSize System Objective Maximize Performance Minimize Inequity Airlines are the Only Stakeholders Passengers are the Only Stakeholders All Metrics are Equally Important Airline Fuel Burn Inequity is used EWR LGA RBPax RBPax-RBFFhigh RBFFlow-RBS RBD RBAcSize RBD RBFFhigh RBD RBD RBD RBFFhigh 158 JFK RBPax-RBFFhigh RBS RBD RBPax-RBFFhigh RBPax JFK RBPax-RBFFhigh RBFFhigh RBFFhigh RBPax-RBFFhigh RBFFhigh Table 4.17 summarizes the results of Experiment-2 with six alternate GDP rationing rules at three New York metroplex airports. Different GDP rationing rules are selected for different system objectives. At all three airports, the RBPax and the RBS are the most robust rules, where RBPax gives the best GDP performance and the RBS gives the best GDP equity when airline equity due to flight delays are used in the disutility calculation. 159 4.3 Experiment 3: Sensitivity to GDP Scope In this section, the sensitivity of the results in Experiment 1 (Section 4.1) to different GDP scopes is investigated. Experiment 1 inputs the actual GDP scope in 2007. NoWest+Canada and All+Canada were the most used scopes at all three airports as seen in Section 4.1. In this experiment, 2007 actual GDPs are simulated first using only NoWest+Canada scope, then using only All+Canada scope. Sections 4.3.1, 4.3.2 and 4.3.3 shows the impact of this scope increase at three airports on the actual results. Table 4.18 summarizes the inputs used in this experiment. 4.3.1 Newark Liberty Airport (EWR) EWR Performance Results with Different GDP Scopes Figure 4.68 shows how the GDP performance change under alternate rationing rules compared to the RBS as the GDP scope increases. Figure 4.6 shows the result of both GDP scopes. The colored arrows next to the rationing rules show the direction of the change. Changing the GDP scope does not change the relative performance savings of the rationing rules. All the rationing rules fall in the same quadrants of the graph in the same order as observed in the Experiment 1 results (Figure 4.6). The RBPax has still the best GDP performance over all the rationing rules. The change is different for different sections of the figure. For rationing rules which fall in the ”Desirable” quadrant, the GDP performance increases as the GDP scope increases. The direction of all the arrows point in the left-bottom direction, where both the total passenger delay and the total fuel burn savings increase. On the other hand, for the rationing rules which fall in the ”Undesirable” quadrant (RBFFlow), the GDP performance trade-off differs. The direction of the RBFFlow’s arrow point in the left-top direction, where the passenger delay savings increase but the fuel burn savings decrease. 160 Table 4.18: Experiment 3 Airport EWR LGA JFK GDP Parameters PAAR Scope Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Actual NoWest+Canada Actual All+Canada Duration Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Actual Airline Parameters Cancel. Subs Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based Actual Flight-based 161 No. Days 197 197 197 197 197 197 197 197 197 197 197 197 169 169 169 169 169 169 169 169 169 169 169 169 150 150 150 150 150 150 150 150 150 150 150 150 Rationing Rule RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow RBS RBPax RBAcSize RBD RBFFhigh RBFFlow Run No. 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 Figure 4.68: Change in EWR GDP Performance with Increasing Scope EWR Equity Results with Different GDP Scopes Figure 4.69 shows how each airline’s delay equity metric changes as the GDP scope increases. If an airline’s equity metric is positive, this airline is assigned less flight delay with the larger scope. If an airline’s equity metric is negative, this airline is assigned more flight delay with the larger scope. Figure shows that the change in airline delay equity metric differs by the airline and the rationing rule. The most change is observed with the RBFFlow, followed by the RBS and the RBAcSize. Airline #1’s equity, as the dominant airline, does not change much with different scopes. As the GDP scope increases, the RBFFlow is significantly unfavorable to Airlines #3 and #4, while it gives significant delay reduction for Airlines #7, #8, #9 and #10. This result proves the discussion of some airlines with the ATC specialists about which distance parameters to use for the GDP [46]. Figure 4.70 shows how each airline’s fuel burn equity metric changes as the GDP scope increases. The change in airline fuel burn equity metric mostly follows the same trend as the 162 Figure 4.69: Change in EWR Airline Equity due to Flight Delays with Increasing Scope airline delay equity metric. The airline fuel burn equity with the RBD does not change at all with different GDP scopes, and there is a small difference observed with the RBPax and the RBFFhigh. This is due to the fact that the larger aircraft, which carry more passengers, are often scheduled on long distance flights. Figure 4.71 shows the average distance for scheduled flights at EWR during 2007 GDPs by average seat size. As the average seat size increases, the average distance that aircraft is scheduled to travel increases. Larger aircraft also tend to have larger Etaxi rates. On the other hand, this is not true for all aircraft types. Etaxi rates are determined by engine type. Figure 4.72 shows the typical seats and Etaxi rates for each aircraft type used in the simulation. As the number of seats increases, the Etaxi rate increases but as seen from the figure, Etaxi rate may also differ greatly between two aircraft with the same number of seats. Figure 4.73 shows the change in passenger equity metric by airport category as the GDP scope increases. If an airport category’s equity metric is positive, passengers from these airports experience less delay with the larger scope. If an airport category’s equity 163 Figure 4.70: Change in EWR Airline Equity due to Fuel Burn with Increasing Scope Figure 4.71: The Relationship at EWR between Average Seats and Distance by Aircraft Type 164 Figure 4.72: The Relationship between Average Seats and Etaxi Rate by Aircraft Type Figure 4.73: Change in EWR Passenger Equity with Increasing Scope 165 metric is negative, passengers from these airports experience more delays with the larger scope. The passenger equity with the RBPax, the RBD and the RBFFhigh does not change much with different GDP scopes. This is due to the fact that the larger aircraft, which carry more passengers are often scheduled on long distance flights and have higher Etaxi rates as mentioned above. These rationing rules have a continuous ranking for the flights in the GDP, which makes the adjustments of the slot allocation of these aircraft sizes automatically. Figure 4.74 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as the GDP scope increases. The RBD is more favorable to the airlines compared to the RBS as the GDP scope increases with no change in the passenger equity, while the RBAcSize is less favorable to the airlines with larger scopes. The RBPax is more favorable to the passengers and less favorable to the airlines compared to the RBS. The RBFFhigh results in the opposite behavior to that of the RBPax (more favorable to the airlines and less favorable to the passengers compared to the RBS). The RBFFlow is the only rationing rule which is more favorable to both airlines and passengers as the GDP scope increases. The RBS is the more sensitive to scope changes in scope in terms of airline equity and it is more favorable to the airlines as the scope increases. The RBS has the minimum airline delay inequity (3.57 with NoWest+Canada and 2.24 with All+Canada) and the RBD has the minimum passenger inequity metric (1.66 with NoWest+Canada and 1.67 with All+Canada) for both GDP scopes. Figure 4.75 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric as the GDP scope increases. The overall result does not change when the scope is increased. The direction of change in all rationing rules are different than the direction of change in airline delay equity. The RBFFlow is less favorable to airlines whereas the RBPax, the RBAcSize, the RBD and the RBFFhigh are more favorable to the airlines in terms of fuel burn compared to the RBS when the GDP scope increases. Even though the RBS is more favorable to airlines in flight delays when the GDP scope increases, 166 Figure 4.74: Change in EWR Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) Figure 4.75: Change in EWR Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Fuel Burn Equity) 167 it is also less favorable to them in fuel burn. The RBPax has the minimum airline fuel burn inequity metric (1.34 with NoWest+Canada and 1.79 with All+Canada) for both scopes. EWR Utility Results with Different GDP Scopes The GDP disutility for each rationing rule under both GDP scopes is shown below. Figure 4.76 and Figure 4.77 shows the GDP disutility when the system objective is to maximize performance with NoWest+Canada and All+Canada scopes. Figure 4.78 and Figure 4.80 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used with the NoWest+Canada scope while Figure 4.79 and Figure 4.81 shows the same GDP disutility with the All+Canada scope. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives do not change when the GDP scope is changed from NoWest+Canada to All+Canada. Figure 4.76: EWR GDP Disutility with Performance Focus and NoWest+Canada Scope 168 Figure 4.77: EWR GDP Disutility with Performance Focus and AllWest+Canada Scope Figure 4.78: EWR GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) 169 Figure 4.79: EWR GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) Figure 4.80: EWR GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) 170 Figure 4.81: EWR GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) Summary of Results at EWR for Experiment-3 Table 4.19 summarizes the results at EWR with NoWest+Canada scope and Table 4.20 summarizes the results with All+Canada scope. Different GDP rationing rules are selected for different system objectives. Table 4.19: Summary of Results for EWR Experiment 3 with Airline Delay System Objective Inequity is used Maximize Performance RBPax Minimize Inequity RBS Airlines are the Only Stakeholders RBPax Passengers are the Only Stakeholders RBD All Metrics are Equally Important RBD 171 NoWest+Canada Scope Airline Fuel Burn Inequity is used RBPax RBS-RBPax RBPax RBD RBPax Table 4.20: Summary of Results for EWR Experiment 3 with All+Canada Scope Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax RBPax Minimize Inequity RBS RBS-RBPax Airlines are the Only Stakeholders RBPax RBPax Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBD RBPax 4.3.2 LaGuardia Airport (LGA) LGA Performance Results with Different GDP Scopes Figure 4.82 shows how LGA GDP performance change under different rationing rules compared to the RBS as the GDP scope increases. Figure 4.19 shows the result of both GDP scopes. The colored arrows next to the rationing rules show the direction of the change when the GDP scope increases. As in EWR, changing the GDP scope does not change the relative performance savings of the rationing rules. All the rationing rules fall in the same quadrants of the graph in the same order as observed in the results of Experiment 1 (Figure 4.19). The RBPax and the RBFFhigh have the best GDP performance over all the rationing rules. For rationing rules which fall in the ”Desirable” section, the direction of all the arrows point in the left-bottom direction, where both total passenger delay and total fuel burn savings increase. Consistent with the EWR results, the savings in GDP performance increase as the GDP scope increases, but the amount of savings is less than that is observed at EWR. This is due to the smaller number of GDPs and flight exemptions at LGA compared to EWR. On the other hand, under RBFFlow, total GDP fuel burn stays the same with an increase in total passengers delays as the GDP scope increases. 172 Figure 4.82: Change in LGA GDP Performance with Increasing Scope LGA Equity Results with Different GDP Scopes Figure 4.83 shows how each airline’s delay equity metric changes as the GDP scope increases. If an airline’s equity metric is positive, the airline is assigned less delay with the larger scope. If an airline’s equity metric is negative, the airline is assigned more delay with the larger scope. The most change is observed in Airline #4 and ”Other” airlines. All rationing rules, especially the RBS, the RBAcSize and the RBFFlow, are unfavorable to these airlines when the scope increases. When the scope gets larger, flights from these airlines are delayed in the GDP and lose their exemption status under NoWest+Canada scope. For the rest of the airlines, all rationing rules treat them a bit more favorably when the GDP scope increases. This is due to the small number of exemptions at LGA. When the GDP scope is NoWest+Canada, there are only 1,618 flights exempt out of 70,579 (2%). When the scope is All+Canada, this number falls to 270 flights (0.4%). Since most of the flights are delayed 173 Figure 4.83: Change in LGA Airline Equity due to Flight Delays with Increasing Scope Figure 4.84: Change in LGA Airline Equity due to Fuel Burn with Increasing Scope 174 in the GDP, it does not change the relative rankings of flights in the GDP when the scope increases. The same is true for the airline fuel burn equity metric shown in Figure 4.21. Figure 4.85 shows the change in passenger equity metric at LGA by airport category as the GDP scope increases. If an airport category’s equity metric is positive, passengers from these airports experience less delay with the larger scope. If an airport category’s equity metric is negative, passengers from these airports experience more delay with the larger scope. As explained in Section 4.1, the main contributor to the passenger equity at LGA is the flight cancellations. Since the flight cancellations are kept the same in both scopes, there is no significant change observed in the passenger equity metric. Figure 4.85: Change in LGA Passenger Equity with Increasing Scope Figure 4.86 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as the GDP scope increases. Figure shows that all alternate rationing rules are less favorable to both the airlines and the passengers compared to the RBS as the GDP scope increases. The 175 RBS is more favorable to the both stakeholders. The RBS has the minimum total airline delay inequity with both scopes (0.44 with NoWest+Canada and 0.28 with All+Canada) and the RBFFlow has the minimum total passenger inequity with both scopes (2.23 with NoWest+Canada and 2.22 with All+Canada). Figure 4.86: Change in LGA Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) Figure 4.87 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric as the GDP scope increases. The overall result does not change when the scope is increased. The direction of change in all rationing rules are different than the direction of their change in airline delay equity. The RBS is more favorable to the passengers rather than the airlines as the scope increases, whereas the RBD and the RBAcSize are more favorable to the airlines rather than the passengers. The RBPax, the RBFFhigh and the RBFFlow are less favorable to both the airlines and the passengers compared to the RBS. The RBAcSize has the minimum total airline fuel burn inequity for both scopes (1.09 with NoWest+Canada and 1.04 with All+Canada scope). 176 Figure 4.87: Change in LGA Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Fuel Burn Equity) LGA Utility Results with Different GDP Scopes The GDP disutility for each rationing rule under both GDP scopes is shown below. Figure 4.88 and Figure 4.89 shows the GDP disutility when the system objective is to maximize performance with NoWest+Canada and All+Canada scopes. Figure 4.90 and Figure 4.92 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used with the NoWest+Canada scope, while Figure 4.91 and Figure 4.93 shows the same GDP disutility with the All+Canada scope. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives do not change when the GDP scope is changed from NoWest+Canada to All+Canada. 177 Figure 4.88: LGA GDP Disutility with Performance Focus and NoWest+Canada Scope Figure 4.89: LGA GDP Disutility with Performance Focus and AllWest+Canada Scope 178 Figure 4.90: LGA GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) Figure 4.91: LGA GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) 179 Figure 4.92: LGA GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) Figure 4.93: LGA GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) 180 Summary of Results at LGA for Experiment-3 Table 4.21 summarizes the results at LGA with NoWest+Canada scope and Table 4.22 summarizes the results with All+Canada scope. Different GDP rationing rules are selected for different system objectives. Table 4.21: Summary of Results for LGA Experiment 3 with NoWest+Canada Scope Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity RBFFlow-RBS RBFFlow-RBS-RBAcSize Airlines are the Only Stakeholders RBAcSize RBFFhigh Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBAcSize RBFFhigh Table 4.22: Summary of Results for LGA Experiment 3 Airline Delay System Objective Inequity is used Maximize Performance RBPax-RBFFhigh Minimize Inequity RBFFlow-RBS Airlines are the Only Stakeholders RBAcSize Passengers are the Only Stakeholders RBD All Metrics are Equally Important RBAcSize 181 with All+Canada Scope Airline Fuel Burn Inequity is used RBPax-RBFFhigh RBFFlow-RBS-RBAcSize RBFFhigh RBD RBFFhigh 4.3.3 John F. Kennedy International Airport (JFK) JFK Performance Results with Different GDP Scopes Figure 4.94 shows how GDP performance at JFK change under alternate rationing rules compared to the RBS as the GDP scope increases. Figure 4.32 shows the result of both GDP scopes. The colored arrows next to the rationing rules show the direction of the change as the GDP scope increases. As in EWR and LGA, changing the GDP scope does not change the relative performance savings of the rationing rules. All the rationing rules fall in the same quadrants of the graph in the same order, similar to the results of Experiment 1 (Figure 4.32). The RBPax and the RBFFhigh have the best GDP performance over all the rationing rules. For rationing rules which fall in the ”Desirable” quadrant, the direction of all the arrows point in the left-bottom direction, where both total passenger delay and total fuel burn savings increase. Consistent with the EWR and LGA results, the savings in GDP performance increase as the GDP scope increases, but the amount of savings is more pronounced at JFK compared to LGA. On the other hand, RBFFlow has no fuel burn savings, but increased passenger delays with NoWest+Canada. When the scope increases to All+Canada, some fuel burn saving is observed together with an additional increase in passenger delays. JFK Equity Results with Different GDP Scopes Figure 4.95 shows how each airline’s delay equity metric changes as the GDP scope increases. If an airline’s equity metric is positive, the airline is assigned less delay with the larger scope. If an airline’s equity metric is negative, the airline is assigned more delay with the larger scope. The delay equity of some airlines are very sensitive to the RBS and the RBFFlow. The RBFFlow is less favorable to Airlines #3 and #4 when the GDP scope increases, while it is more favorable to Airlines #2, #7, and #9. The RBS also has an visible impact on certain airlines (less favorable to Airlines #4 and #6, while more favorable to Airlines #7, #8, and #9) but the change in equity metric is not as much as it is observed with the 182 Figure 4.94: Change in JFK GDP Performance with Increasing Scope RBFFlow. Airlines #5 and #10 have very few domestic flights and their equity is similar those of INT’L airlines. Figure 4.96 shows how each airline’s fuel burn equity metric changes as the GDP scope increases. The fuel burn equity for airlines is similar to the flight delay equity. Figure 4.97 shows the change in passenger equity metric at JFK by airport category as the GDP scope increases. If an airport category’s equity metric is positive, passengers from these airports experience less delay with a larger scope. If an airport category’s equity metric is negative, passengers from these airports experience more delay with a larger scope. As in LGA, the main contributor to the passenger equity is the flight cancellations. Since the flight cancellations are kept the same in both scopes, there is no significant change observed in the passenger equity under the RBPax, the RBD and the RBFFhigh. The most impact is observed when the RBS and the RBFFlow is implemented. When the GDP scope 183 Figure 4.95: Change in JFK Airline Equity due to Flight Delays with Increasing Scope Figure 4.96: Change in JFK Airline Equity due to Fuel Burn with Increasing Scope 184 Figure 4.97: Change in JFK Passenger Equity with Increasing Scope increases, passengers from Primary Large Hub airports experience more delay, whereas passengers from all other domestic airports experience less delay with the RBS and the RBFFlow. The amount of change is more with the RBFFlow compared to the RBS. Figure 4.98 shows the difference in the total GDP passenger inequity metric and the total airline delay inequity metric under alternate rationing rules compared to the RBS as the GDP scope increases. Total passenger inequity does not change much with increasing GDP scope. In comparison, the big change in flight exemptions show its impact on both total airline delay and total fuel burn inequity. There are 19,286 exempt flights (49%) with NoWest+Canada, whereas there are 12,664 exempt flights (32%) with All+Canada. The RBS and the RBFFlow are more favorable to both the airlines and the passengers as the GDP scope gets larger. On the other hand, the RBPax, the RBD, the RBFFhigh and the RBAcSize are less favorable to the both stakeholders. The RBD has the minimum total airline delay inequity when the NoWest+Canada scope is used (4.32) but the RBS has the 185 Figure 4.98: Change in JFK Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Delay Equity) minimum when the All+Canada scope is used (4.06). The RBFFhigh has the minimum total passenger inequity when the NoWest+Canada scope is used (3.17) but the RBFFhigh shares having the minimum with the RBS when the All+Canada scope is used (3.17). Figure 4.99 shows the change in the total passenger inequity metric and the total airline fuel burn inequity metric as the GDP scope increases. The RBS and the RBFFlow are more favorable to both the airlines and the passengers as the GDP scope gets larger. On the other hand, the RBPax, the RBD and the RBAcSize are less favorable to the both stakeholders compared to the RBS. The RBFFhigh has different results compared to the airline delay inequity compared to the RBS. As the scope gets larger, the RBFFhigh is more favorable to the airlines rather than the passengers. The RBFFhigh has the minimum total fuel burn inequity for both scopes (1.67 with NoWest+Canada and 1.04 with All+Canada). 186 Figure 4.99: Change in JFK Total GDP Inequity with Increasing Scope (Passenger Equity vs. Airline Fuel Burn Equity) JFK Utility Results with Different GDP Scopes The GDP disutility for each rationing rule under both GDP scopes is shown below. Figure 4.100 and Figure 4.101 shows the GDP disutility when the system objective is to maximize performance with NoWest+Canada and All+Canada scopes. Figure 4.102 and Figure 4.104 shows the GDP disutility when the system objective is to minimize inequity among stakeholders when the airline delay equity and fuel burn equity are used with the NoWest+Canada scope while Figure 4.103 and Figure 4.105 shows the same GDP disutility with the All+Canada scope. Even though, the individual performance and the equity metrics for both the airlines and the passengers are not exactly the same, the best rationing rules chosen under different system objectives do not change when the GDP scope is changed from NoWest+Canada to All+Canada. The only observed change in the chosen rationing rule was when the system objective is to minimize inequity and the GDP scope increased. 187 Figure 4.100: JFK GDP Disutility with Performance Focus and NoWest+Canada Scope Figure 4.101: JFK GDP Disutility with Performance Focus and AllWest+Canada Scope 188 Figure 4.102: JFK GDP Disutility with Equity Focus and NoWest+Canada Scope (Passenger Delay vs. Airline Delay) Figure 4.103: JFK GDP Disutility with Equity Focus and All+Canada Scope (Passenger Delay vs. Airline Delay) 189 Figure 4.104: JFK GDP Disutility with Equity Focus with NoWest+Canada Scope (Passenger Delay vs. Airline Fuel Burn) Figure 4.105: JFK GDP Disutility with Equity Focus with All+Canada Scope (Passenger Delay vs. Airline Fuel Burn) 190 Summary of Results at JFK for Experiment-3 Table 4.23: Summary of Results for JFK Experiment 3 with NoWest+Canada Scope Airline Delay Airline Fuel Burn System Objective Inequity is used Inequity is used Maximize Performance RBPax-RBFFhigh RBPax-RBFFhigh Minimize Inequity All rules-RBD RBFFhigh Airlines are the Only Stakeholders RBD RBFFhigh Passengers are the Only Stakeholders RBPax-RBFFhigh RBPax-RBFFhigh All Metrics are Equally Important RBPax RBFFhigh Table 4.24: Summary of Results for JFK Experiment 3 with Airline Delay System Objective Inequity is used Maximize Performance RBPax-RBFFhigh Minimize Inequity RBFFlow-RBS Airlines are the Only Stakeholders RBD Passengers are the Only Stakeholders RBPax-RBFFhigh All Metrics are Equally Important RBPax All+Canada Scope Airline Fuel Burn Inequity is used RBPax-RBFFhigh RBBFFhigh RBFFhigh RBPax-RBFFhigh RBFFhigh Table 4.23 summarizes the results at JFK with NoWest+Canada scope and Table 4.24 summarizes the results with All+Canada scope. Different GDP rationing rules are selected for different system objectives. 4.3.4 Experiment-3 Summary of Results Table 4.25 and Table 4.26 summarize the results of Experiment-3 with six alternate GDP rationing rules at three New York metroplex airports. Different GDP rationing rules are selected for different system objectives. At all three airports, the RBPax and the RBS are the most robust rules, where RBPax gives the best GDP performance and the RBS gives the best GDP equity when airline equity due to flight delays are used in the disutility calculation. 191 Table 4.25: Summary of Results for Experiment 3 with NoWest+Canada Scope Airline Delay System Objective Inequity is used EWR LGA JFK RBPaxRBPaxMaximize Performance RBPax RBFFhigh RBFFhigh RBFFlowAll rulesMinimize Inequity RBS RBS RBD Airlines are the Only Stakeholders RBPax RBAcSize RBD RBPaxPassengers are the Only Stakeholders RBD RBD RBFFhigh All Metrics are Equally Important RBD RBAcSize RBPax Airlines are the Only Stakeholders Airline Fuel Burn Inequity is used EWR LGA RBPaxRBPax RBFFhigh RBSRBFFlow-RBSRBPax RBAcSize RBPax RBFFhigh Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBPax RBFFhigh System Objective Maximize Performance Minimize Inequity 192 JFK RBPaxRBFFhigh RBFFhigh RBFFhigh RBPaxRBFFhigh RBFFhigh Table 4.26: Summary of Results for Experiment 3 with All+Canada Scope Airline Delay System Objective Inequity is used EWR LGA JFK RBPaxRBPaxMaximize Performance RBPax RBFFhigh RBFFhigh RBFFlowMinimize Inequity RBS RBS RBS Airlines are the Only Stakeholders RBPax RBAcSize RBD RBPaxPassengers are the Only Stakeholders RBD RBD RBFFhigh All Metrics are Equally Important RBD RBAcSize RBPax Airlines are the Only Stakeholders Airline Fuel Burn Inequity is used EWR LGA RBPaxRBPax RBFFhigh RBSRBFFlow-RBSRBPax RBAcSize RBPax RBFFhigh Passengers are the Only Stakeholders RBD RBD All Metrics are Equally Important RBPax RBFFhigh System Objective Maximize Performance Minimize Inequity 193 JFK RBPaxRBFFhigh RBFFhigh RBFFhigh RBPaxRBFFhigh RBFFhigh Chapter 5: Conclusions and Future Work The objective of this research is to determine the impact of new GDP rationing rules on GDP performance and equity. The hypothesis is that ”Different GDP rationing rules result in different performance and equity trade-offs for two main stakeholders of the air transportation system; airlines and passengers”. The tradeoff between flight delays, passenger delays and fuel burn as well as the tradeoff between airline equity and passenger equity in GDP slot allocation are examined using a GDP Rationing Rule Simulator (GDP-RRS). The results of this research are summarized in Table 5.1 and 5.2. Table 5.1 shows the GDP rationing rules that minimize the GDP disutility (i.e. minimize the pain) under different air transportation system objectives. Table 5.2 shows the GDP rationing rules which give the best performance and the best equity results at three New York airports. The following conclusions can be drawn from these results: 1. There exists a trade-off between GDP performance and GDP equity. The GDP rationing rule with the best performance does not result in the best equity for the airlines and the passengers. Likewise, the GDP rationing rule with the best equity for the airlines and the passengers does not result in the best performance. It is not possible to maximize the mutual interests of both airlines and passengers. For example, Ration-by-Passengers (RBPax) results in the best GDP performance (23% less passenger delays and 57% less excess fuel burn compared to RBS) at EWR with no change in total flight delay. This rationing rule does not result in the best GDP equity for the airlines or for the passengers. On the other hand, Ration-by-Schedule (RBS) has the best GDP equity for airlines in terms of their flight delays, but it does not have the best GDP performance. This trade-off between the best GDP performance 194 with Ration-by-Passengers and the best GDP airline equity with Ration-by-Schedule is true for all three New York airports analyzed. 2. Airline equity is determined by the flight schedule (i.e. position of flights throughout the day) and the aircraft type (i.e. fleet mix). Airline Delay Equity is determined by the schedule time of each airline’s flights. When an airline’s flights are grouped into a period where a lot of international flights are scheduled, this airline is assigned more delays than otherwise expected because of the high number of international exemptions. Airline Fuel Burn Equity is determined by the aircraft size and the engine type of each airline’s flights. The larger aircraft is often scheduled on long-haul routes with less frequency. The larger aircraft also burn more fuel than smaller aircraft. On the other hand, the smaller aircraft, which generally burn less fuel than larger aircraft, are scheduled on shorter routes. Results show that airline fuel burn is more fairly distributed among airlines than flight delay with all alternate rationing rules considered. When airlines determine their flight schedule, their equity is also determined for a given GDP rationing rule. 3. Passenger equity is determined by the flight cancellations. Passenger Equity is determined by the flight cancellations and the frequency of flights from the origin airport. Since the GDP rationing rule does not directly impact the airline’s decisions whether to cancel a flight, the passenger equity is relatively insensitive to the GDP rationing rule implemented. Airlines cancel a flight due to many reasons, such as mechanical problems or crew scheduling adjustments. Canceling a flight causes an airline other problems to resolve; cargo and passengers booked on that flight need to be transferred to other flights and the aircraft, which is scheduled to be at a certain place at a certain time, now needs to be relocated [47]. However, the airlines do not have to compensate passengers when a cancellation occurs. Passengers cannot negotiate their position and left to the good will of the airline to continue on with their travel when their flight is 195 cancelled [48]. In addition, today’s air transportation system metrics are flight-centric. When an airline cancels a flight, the cancelled flight does not generate flight delays, so the airline’s total flight delay decreases. This might help the airline to maintain its schedule coherence and to control its operating costs during a chaotic time such as a GDP. On the other hand, flight cancellations generate a lot of passenger delays. The passengers on the cancelled flight need to be transferred to other flights. Due to high load factors, some passengers may not be accommodated and sometimes have to overnight at the airport. Currently passenger metrics are not part of the air transportation system metrics calculated by the FAA and they are not accounted for in the GDP [4, 38]. Airline equity and passenger equity are determined by different factors. Airlines decisions on flight cancellations determine the passenger equity from that origin airport. 4. Airlines with a small number of operations and airports with a small number of enplanements are impacted the most from flight exemptions. The equity of the airlines with the largest number of operations at an airport and the equity of passengers from origin airports with the largest number of passenger boardings does not change with alternate GDP rationing rules. When the volume of flights and passengers are large enough, the impact of flight delays and passenger delays are balanced among all operations. This result is consistent with the results of Vossen 2002 ([18]). Vossen showed that the difference in the flight delays between two rationing rules get smaller as the number of flights from an airline increases. On the other hand, the airlines with small number of operations and the passengers from airports with the small number of passenger boardings are penalized more for the exemption of international flights. Flight exemptions mean that these flights are not delayed during the GDPs. GDPs are implemented when there is not enough capacity to handle the overall scheduled demand. Flight exemptions translate into reduced capacity and non-exempt flights taking extra burden than otherwise expected. The 196 results show that this burden is felt to a greater extent to airlines with a small number of operations and airports with a small number of passengers than their larger counterparts. 5. The chosen GDP rationing rule does not change with different airline substitution strategies. Using different airline substitution strategies does not change the chosen GDP rule to implement. For example, the GDP disutility does not change at EWR when passengerbased airline substitutions are used instead of flight-based substitutions. On the other hand, the flight-based airline substitutions have higher performance benefits and lower inequity among the stakeholders compared to the passenger-based airline substitutions. These benefits are not large enough to change the results (less than 1% higher performance and equity). 6. The chosen GDP rationing rule does not change with different GDP scopes. Increasing the GDP scope does not change the GDP disutility. For example, the GDP disutility does not change at EWR when the GDP scope is changed from NoWest+Canada to All+Canada scope. On the other hand, the larger scopes (All+Canada) have higher performance benefits and lower inequity among the stakeholders compared to the smaller scopes (NoWest+Canada). These benefits are not large enough to change the results (less than 1% higher performance and equity). 7. The selection of the GDP rationing rule requires the unambiguous definition of the system objectives and the weights for the performance and equity. Different system objectives require different GDP rationing rules at the three airports. For example, if the system objective is to maximize performance, the Ration-byPassenger gives the best result at all three New York airports. If the system objective is to maximize equity, then the Ration-by-Schedule gives the best result. The results are not as straight forward when different views are taken into account. 197 For example, at LGA and JFK when all four metrics are equally weighted, Rationby-Fuel-Flow-high-precedence is the best rule to implement, whereas at EWR Rationby-Distance is the best rule to implement. When different rules are compared against each other, it is also important to determine the metrics used. For example, in this analysis two different equity metrics are used for the airlines, equity due to flight delays and equity due to fuel burn. The chosen GDP rule may change when the airline equity metric is changed from airline delay equity to airline fuel burn equity. At EWR, when four metrics are equally weighted and the airline delay equity is used in the formulation, the Ration-by-Distance is the best rule to implement. But when the airline fuel burn equity is used in the formulation instead, the Ration-by-Passengers is the best rule. This research of GDP with alternate rationing rules at three New York metroplex airports (EWR, LGA, and JFK) demonstrates the impact of GDP rationing rules on performance and equity trade-offs for airlines and passengers. Adjusting the rationing rules to maximize the flow of passengers and the fuel flow results in significant reductions in overall passenger trip delays as well as significant reductions in extra fuel burn due to GDPs. These reductions are achieved with no change in overall flight delay. Airline equity is adjusted in favor of larger airlines and airports. The implementation of alternate GDP rationing rules is a less expensive solution, which provides immediate performance benefits, compared to building new infrastructure to increase capacity or implementing new technologies to increase throughput. It will require the current GDP software code to be updated to include new fields. For the Ration-by-Distance and the Ration-by-Aircraft-Size, no additional information is needed. For the Ration-byFuel-Flow-high-precedence and the Ration-by-Fuel-Flow-low-precedence, the fuel burn rates for each aircraft type can be easily added as a new field to the current data using ICAO references. The Ration-by-Passengers requires the airlines to submit the number of passengers onboard each aircraft. This information is considered to be airline proprietary data 198 and is not currently available in the GDP database. The available seats for each flight by aircraft type are currently available and it can be a good proxy for the number of passengers onboard. The application of alternate GDP rationing rules has broader implications. In principle, GDP rationing rules create priority queues which give preference to the compliant flights. As a consequence the rationing rules incentivize airline behavior. For example, the Ration-byPassengers rule could, in the long-run, result in the migration of airline fleets to larger sized aircraft that would increase the passenger flow capacity. This would improve the efficiency of the air transportation system. This incentive does not directly result in reduced frequency, but reduced frequency may be a by-product of upgauging. 199 200 Airline Only RBPax RBPax RBPax RBPax RBAcSize RBAcSize RBAcSize RBAcSize RBD RBD RBD RBD Airline Only RBD RBD RBPax RBPax RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh Results by using Total GDP Airline Fuel Burn Inequity Air Transportation System Objective Airport Experiment Performance Equity Only Only 1 RBPax RBD 2 RBPax RBD EWR 3 (NoWest) RBPax RBS-RBPax 3 (All) RBPax RBS-RBPax 1 RBPax-RBFFhigh RBS-RBFFlow-RBAcSize 2 RBPax-RBFFhigh RBS-RBFFlow-RBAcSize LGA 3 (NoWest) RBPax-RBFFhigh RBS-RBFFlow-RBAcSize 3 (All) RBPax-RBFFhigh RBS-RBFFlow-RBAcSize 1 RBPax-RBFFhigh RBFFhigh 2 RBPax-RBFFhigh RBFFhigh JFK 3 (NoWest) RBPax-RBFFhigh RBFFhigh 3 (All) RBPax-RBFFhigh RBFFhigh Passengers Only RBD RBD RBD RBD RBD RBD RBD RBD RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh Passengers Only RBD RBD RBD RBD RBD RBD RBD RBD RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh Table 5.1: Best GDP Rationing Rules by Airport and System Objective Results by using Total GDP Airline Delay Inequity Air Transportation System Objective Airport Experiment Performance Equity Only Only 1 RBPax RBS 2 RBPax RBS EWR 3 (NoWest) RBPax RBS 3 (All) RBPax RBS 1 RBPax-RBFFhigh RBS-RBFFlow 2 RBPax-RBFFhigh RBS-RBFFlow LGA 3 (NoWest) RBPax-RBFFhigh RBS-RBFFlow 3 (All) RBPax-RBFFhigh RBS-RBFFlow 1 RBPax-RBFFhigh RBS 2 RBPax-RBFFhigh RBS JFK 3 (NoWest) RBPax-RBFFhigh All rules-RBD 3 (All) RBPax-RBFFhigh RBS All Equal RBD RBD RBPax RBPax RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh RBFFhigh All Equal RBD RBD RBD RBD RBAcSize RBAcSize RBAcSize RBAcSize RBPax RBPax RBPax RBPax Table 5.2: The Best GDP Rationing Rule for Performance and Equity by Airport Airport EWR LGA JFK 5.1 Experiment GDP Performance 1 2 3 3 1 2 3 3 1 2 3 3 RBPax RBPax RBPax RBPax RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh RBPax-RBFFhigh (NoWest) (All) (NoWest) (All) (NoWest) (All) GDP Inequity Airline Airline Delay Fuel Burn RBS RBD RBS RBD RBS RBPax RBS RBPax RBS RBAcSize RBS RBAcSize RBS RBAcSize RBS RBAcSize RBS RBFFhigh RBS RBFFhigh RBD RBFFhigh RBS RBFFhigh Passenger RBD RBD RBD RBD RBFFlow RBFFlow RBFFlow RBFFlow RBFFhigh RBFFhigh RBFFhigh RBS-RBFFhigh Future Work The following are identified as the potential ground for future work: 1. Performance and Equity Metrics for GDP Airports: One of the main stakeholders in the GDP is the GDP airport. The introduction of performance and equity metrics tailored towards the GDP airport, such as passenger throughput, emissions, arrival and departure delays, can show differences in trade-offs for three main stakeholders in the GDP process. 2. The Implication of Results for Different User Classes: The airlines can be grouped into multiple service class categories, such as Commercial, Freight, General Aviation, Air Taxi, and Military. The current results only looks at the airlines themselves without taking into account the service class. The impact of alternate GDP rationing rules on different airline service classes is needed to have a complete system perspective. 3. Additional Alternate GDP Rationing Rules: The GDP rationing rules investigated in this research are only a small number of possible options. Others, such as Ration-bySlot Auctions and Ration-by-Emissions, were not considered. Ration-by-Fuel Flow 201 high precedence and Ration-by-Fuel Flow low precedence uses extra fuel burn due to GDPs to rank the flights in the GDP. Even though, fuel burn is an important input used for aviation environmental impacts, more research is needed to implement a rationing rule based on aviation emissions. Slot Auctions is a market-oriented solution to the congestion problem and the implementation of a Ration-by-Slot-Auctions rule can be a market-based option to implement during GDPs. 4. The Sensitivity of Flight Cancellations on the GDP Disutility: The results indicate that the passenger equity is determined by the flight cancellations and does not change with alternate GDP rationing rules. The scheduled time of a cancelled flight plays an important role in GDP dynamics [4]. Early cancellations in the GDP not only result in more substitution options for airlines and more delay reduction through the compression process, but also the increased number of available flights for passengers to be transferred. 5. The GDP-RRS Improvement to Overcome Current Limitations: As mentioned in Section 3.3, there are certain algorithm limitations with the current version of the GDPRRS. The Airline Substitutions and Cancellations Module can be improved to include 20-minute airline substitution window and the Compression Module can be improved by making the unused slots available to the airline who vacated the slot. 6. The Impact of GDP Revisions: The GDP as planned by the ATC specialists can be adjusted to manage the changing conditions during the GDP. The ATC specialist can change the GDP parameters (the GDP Start Time, the GDP End Time, the scope and the PAAR) at any given time. This is called the GDP revision. The impact of this adjustment on the GDP disutility is needed for a complete system view. 7. Impact of GDP Rationing Rules on Multiple GDP Airports: The results show that EWR, LGA and JFK have GDPs very often. The GDP Start and End Times at all three airports are relatively the same. When multiple GDPs are implemented at these 202 three airports, the New York metroplex region as a whole is affected. The impact of a given GDP rationing rule on the airline and passenger equity and performance under multiple GDPs is required for better understanding of these GDPs. 203 Appendix A: Appendix A: GDP-RRS Code function[]=RRS(Output filename1, Output filename2, Output filename3 , Strategy, SubStrategy) % example command to run the program % RRS(’EWR RBS.csv’,’EWR RBS Airline.csv’,;EWR RBS Origin.csv’,1,1) tic %input files: %1. GDP EWR07.txt (line 20) %2. Flight EWR07.txt (line 155) %3. LoadFactor EWR07.txt (line 233) %4. AAR EWR07.txt (line 326) % Create GDPParam from the given GDP EWR.txt file. [GDPno,... FSM DATEno,... EVENTno,... EVENT DATA TIME,... EVENT START TIME,... EVENT END TIME,... EXEMPT TYPE,... EXEMPT DISTANCE,... AIRPORT IF DISTANCE,... NONEXEMPT CENTER ORIG KEYWORD,... NONEXEMPT CENTER ORIG,... NONEXEMPT AIRPORT ORIG KEYWORD,... NONEXEMPT AIRPORT ORIG] = textread(’GDP EWR07.txt’, ’%d %s %d %s %s %s %s %d %s %s %s %s %s’,... ’delimiter’, ’\t’,... ’headerlines’,1); NoGDP = length(GDPno) % Create BSFlight from the given Flight EWR07.txt file. [GDP ID,... FSM DATE,... EVENT ID,... FID,... AC GDP,... ORIG,... 204 DCENTR,... USR,... TYPE,... CLS,... IGTD,... IGTA,... CDM MBR,... MAJOR,... GCD,... INTERNATIONAL,... POPUP TIME,... CNX STATUS LAST,... CTL EXMPT] = textread(’Flight EWR07.txt’, ’%d %s %d %d %s %s %s %s %s %s %s %s %s %s %d %s %s %s %s’,... ’delimiter’, ’\t’,... ’headerlines’,1); NoFlightTable = length(FID) % Create SEATS, Etaxi and Eau for each flight from the given ETMS Equipment.txt file. [ETMS NAME,... TYPICAL SEATS,... RATE TAXI,... RATE APU] = textread(’ETMS Equipment.txt’, ’%s %d %f %f’,... ’delimiter’, ’\t’,... ’headerlines’,1); NoEquipment = length(ETMS NAME) % Create LF for each flight from the given LoadFactor EWR07.txt file. [IATA,... ICAO,... ORIG LF,... LF] = textread(’LoadFactor EWR07.txt’, ’%s %s %s %f’,... ’delimiter’, ’\t’,... ’headerlines’,1); NoEntries = length (IATA) % Create Slots from the given AAR EWR.txt file. [GDP ID AAR,... EVENT ID AAR,... 205 PERIOD,... VALUE] = textread(’AAR EWR07.txt’, ’%d %d %s %d’,... ’delimiter’, ’\t’,... ’headerlines’,1); NoPeriods = length(PERIOD); i=0; for i=1:NoPeriods AAR(i).GDP ID = GDP ID AAR(i); AAR(i).EVENT ID = EVENT ID AAR(i); AAR(i).PERIOD = datenum(PERIOD(i)); AAR(i).VALUE = VALUE(i); end i=0; for i=1:NoGDP GDPParam(i).GDP ID = GDPno(i); GDPParam(i).GDP DATE = FSM DATEno(i); GDPParam(i).EVENT ID = EVENTno(i); GDPParam(i).DATA TIME = datenum(EVENT DATA TIME(i)); GDPParam(i).START TIME = datenum(EVENT START TIME(i)); GDPParam(i).END TIME = datenum(EVENT END TIME(i)); GDPParam(i).SCOPE TYPE = EXEMPT TYPE(i); GDPParam(i).SCOPE DISTANCE = EXEMPT DISTANCE(i); GDPParam(i).AIRPORT IF DISTANCE = AIRPORT IF DISTANCE(i); GDPParam(i).SCOPE NAME = NONEXEMPT CENTER ORIG KEYWORD(i); GDPParam(i).NONEXEMPT CENTER = NONEXEMPT CENTER ORIG(i); GDPParam(i).CANADA = NONEXEMPT AIRPORT ORIG KEYWORD(i); GDPParam(i).CANADA AIRPORTS = NONEXEMPT AIRPORT ORIG(i); GDPParam(i).AveAAR = 0; GDPParam(i).MinAAR = 0; GDPParam(i).MaxAAR = 0; GDPParam(i).Flights = 0; GDPParam(i).Pax = 0; GDPParam(i).Cancellations = 0; GDPParam(i).PaxTransported = 0; GDPParam(i).Subs = 0; 206 GDPParam(i).ExemptFlights = 0; GDPParam(i).ExemptPax = 0; GDPParam(i).ExemptCancellations = 0; GDPParam(i).ExemptPaxTransported = 0; GDPParam(i).Delay Exempt = 0; GDPParam(i).PaxDelay Exempt = 0; GDPParam(i).Emmission Exempt = 0; GDPParam(i).Delay Exempt Sub = 0; GDPParam(i).PaxDelay Exempt Sub = 0; GDPParam(i).Emmission Exempt Sub = 0; GDPParam(i).Delay Exempt Comp = 0; GDPParam(i).PaxDelay Exempt Comp = 0; GDPParam(i).Emmission Exempt Comp = 0; GDPParam(i).NonexemptFlights = 0; GDPParam(i).NonexemptPax = 0; GDPParam(i).NonexemptCancellations = 0; GDPParam(i).NonexemptPaxTransported = 0; GDPParam(i).Delay Nonexempt = 0; GDPParam(i).PaxDelay Nonexempt = 0; GDPParam(i).Emmission Nonexempt = 0; GDPParam(i).Delay Nonexempt Sub = 0; GDPParam(i).PaxDelay Nonexempt Sub = 0; GDPParam(i).Emmission Nonexempt Sub = 0; GDPParam(i).Delay Nonexempt Comp = 0; GDPParam(i).PaxDelay Nonexempt Comp = 0; GDPParam(i).Emmission Nonexempt Comp = 0; GDPParam(i).IntFlights = 0; GDPParam(i).IntPax = 0; GDPParam(i).IntCancellations = 0; GDPParam(i).IntPaxTransported = 0; GDPParam(i).Delay International = 0; GDPParam(i).PaxDelay International = 0; GDPParam(i).Emmission International = 0; GDPParam(i).Delay International Sub = 0; 207 GDPParam(i).PaxDelay International Sub = 0; GDPParam(i).Emmission International Sub = 0; GDPParam(i).Delay International Comp = 0; GDPParam(i).PaxDelay International Comp = 0; GDPParam(i).Emmission International Comp = 0; GDPParam(i).DomesticFlights = 0; GDPParam(i).DomesticPax = 0; GDPParam(i).DomesticCancellations = 0; GDPParam(i).DomesticPaxTransported = 0; GDPParam(i).Delay Domestic = 0; GDPParam(i).PaxDelay Domestic = 0; GDPParam(i).Emmission Domestic = 0; GDPParam(i).Delay Domestic Sub = 0; GDPParam(i).PaxDelay Domestic Sub = 0; GDPParam(i).Emmission Domestic Sub = 0; GDPParam(i).Delay Domestic Comp = 0; GDPParam(i).PaxDelay Domestic Comp = 0; GDPParam(i).Emmission Domestic Comp = 0; GDPParam(i).TotalFlightDelay Initial = 0; GDPParam(i).TotalFlightDelay Sub = 0; GDPParam(i).TotalFlightDelay Comp = 0; GDPParam(i).TotalPaxDelay Initial = 0; GDPParam(i).TotalPaxDelay Sub = 0; GDPParam(i).TotalPaxDelay Comp = 0; GDPParam(i).TotalEmmission Initial = 0; GDPParam(i).TotalEmmission Sub = 0; GDPParam(i).TotalEmmission Comp = 0; GDPParam(i).Airlines = 0; GDPParam(i).Origins = 0; end % GDP rationing rules % 1 = RBS % 2 = RBPax % 3 = RBSeats % 4 = RB-GCD (farther first) 208 % 5 = RB-AcSize % 6 = Emmissions - Dirty first % 7 = Emmissions - Clean first % GDPScope Type = ’By-Tier’ or ’By-Distance’ % GDPScope = 1.All 2.Internal 3.Tier-1 4.Tier-2 5.No-west 6.Six-west 7.Ten-west 8.Twelve-west 9.GCD t=0; u=0; for t=1:NoGDP Morning = datenum(GDPParam(t).GDP DATE) + (1800/1440); GDPDataTime = GDPParam(t).DATA TIME; GDPStartTime = GDPParam(t).START TIME; GDPEndTime = GDPParam(t).END TIME; GDPScope Type = GDPParam(t).SCOPE TYPE; if (strcmp(GDPParam(t).SCOPE TYPE,’By Tiers’)==1) g = GDPParam(t).NONEXEMPT CENTER; v=1; [token,remain] = strtok(g); GDPParam(t).GDPNEC(v,1) = token; while (strcmp(remain,”)==0) [token,remain] = strtok(remain); v=v+1; GDPParam(t).GDPNEC(v,1)= token; end GDPParam(t).GDPNEC Count = v; if (strcmp(GDPParam(t).CANADA AIRPORTS,’(null)’)==0) g = GDPParam(t).CANADA AIRPORTS; [token,remain] = strtok(g); w = 1; GDPParam(t).GDPNEA(w,1) = token; while (strcmp(remain,”)==0) [token,remain] = strtok(remain); w=w+1; GDPParam(t).GDPNEA(w,1)= token; end GDPParam(t).GDPNEA Count = w; 209 else GDPParam(t).GDPNEA Count = 0; end else GDPScopeDistance = GDPParam(t).SCOPE DISTANCE; if (strcmp(GDPParam(t).AIRPORT IF DISTANCE,’(null)’)==0) g = GDPParam(t).AIRPORT IF DISTANCE; [token,remain] = strtok(g); w = 1; GDPParam(t).GDPNEA(w,1) = token; while (strcmp(remain,”)==0) [token,remain] = strtok(remain); w=w+1; GDPParam(t).GDPNEA(w,1)= token; end GDPParam(t).GDPNEA Count = w; else GDPParam(t).GDPNEA Count = 0; end end %SLOT ALLOCATION% tic %initialization i=0; j=0; NoFlights = 0; No Exempt Flights = 0; No Nonexempt Flights = 0; No International Flights = 0; No Domestic Flights = 0; Total PAX = 0; Total Delay = 0; Total PaxDelay = 0; Total Emmission = 0; PAX Exempt = 0; Delay Exempt = 0; 210 PaxDelay Exempt = 0; Emmission Exempt = 0; PAX Nonexempt = 0; Delay Nonexempt = 0; PaxDelay Nonexempt = 0; Emmission Nonexempt = 0; PAX International = 0; Delay International = 0; PaxDelay International = 0; Emmission International = 0; PAX Domestic = 0; Delay Domestic = 0; PaxDelay Domestic = 0; Emmission Domestic = 0; NoFlightListNonexempt=0; NoFlightList=0; i=0; j=0; for i=1:NoFlightTable if ((GDPParam(t).GDP ID==GDP ID(i)) &&( GDPParam(t).EVENT ID==EVENT ID(i)) && (FID(i)>0)) NoFlightList = NoFlightList + 1; j=j+1; BSFlight(j).GDP ID = GDP ID(i); BSFlight(j).GDP DATE = datenum(FSM DATE(i)); BSFlight(j).EVENT ID = EVENT ID(i); BSFlight(j).FID = FID(i); BSFlight(j).AC = AC GDP(i); BSFlight(j).ORIG = ORIG(i); BSFlight(j).DCENTR = DCENTR(i); BSFlight(j).USR = USR(i); BSFlight(j).TYPE = TYPE(i); BSFlight(j).CLS = CLS(i); BSFlight(j).CLSno = 0; BSFlight(j).SRTD = datenum(IGTD(i))+(10/1440); BSFlight(j).SRTA = datenum(IGTA(i))-(10/1440); 211 BSFlight(j).ETE = BSFlight(j).SRTA - BSFlight(j).SRTD; BSFlight(j).CDM MBR = CDM MBR(i); BSFlight(j).AIRLINE = MAJOR(i); BSFlight(j).GCD = GCD(i); BSFlight(j).INT = INTERNATIONAL(i); if(strcmp(CNX STATUS LAST(i,1),’Y’)==1) BSFlight(j).CANCELLED = 1; else BSFlight(j).CANCELLED = 0; end if(strcmp(POPUP TIME(i,1),’(null)’)==1) BSFlight(j).POPUP TIME = 0; else BSFlight(j).POPUP TIME = datenum(POPUP TIME(i)); end BSFlight(j).Equipment match = 0; BSFlight(j).LF = 1; BSFlight(j).Assigned = 0; end end i=0; j=0; for i=1:NoFlightList for j= 1:NoEquipment if (strcmp(BSFlight(i).TYPE, ETMS NAME(j))==1) BSFlight(i).SEATS = TYPICAL SEATS(j); BSFlight(i).Etaxi = RATE TAXI(j); BSFlight(i).Eapu = RATE APU(j); BSFlight(i).Equipment match = 1; end end end i=0; j=0; for j=1:NoEntries for i=1:NoFlightList 212 if ((strcmp(ICAO(j,1),BSFlight(i).AC) == 1) && (strcmp(ORIG LF(j,1), BSFlight(i).ORIG) == 1)) BSFlight(i).LF = LF(j,1); end end end i=0; for i=1:NoFlightList BSFlight(i).PAX = int32(BSFlight(i).SEATS * BSFlight(i).LF); end i=0; for i=1:NoFlightList if (strcmp(BSFlight(i).CLS,’H’)==1) BSFlight(i).CLSno = 1; elseif (strcmp(BSFlight(i).CLS,’L’)==1) BSFlight(i).CLSno = 2; else BSFlight(i).CLSno = 3; end end % Sort FlightList by increasing SRTA EASort = zeros(NoFlightList,2); EBSort = zeros(NoFlightList,2); i=0; j=0; for i=1:NoFlightList if (BSFlight(i).FID>0) j = j + 1; EBSort(j,1)= BSFlight(i).FID; EBSort(j,2)= BSFlight(i).SRTA; end end EASort = sortrows(EBSort,2); i=0; j=0; for i=1:NoFlightList for j=1:NoFlightList 213 if (EASort(i,1) == BSFlight(j).FID) Flight(i).GDP ID = BSFlight(j).GDP ID; Flight(i).GDP DATE = BSFlight(j).GDP DATE; Flight(i).EVENT ID = BSFlight(j).EVENT ID; Flight(i).FID = BSFlight(j).FID; Flight(i).AC = BSFlight(j).AC; Flight(i).ORIG = BSFlight(j).ORIG; Flight(i).DCENTR = BSFlight(j).DCENTR; Flight(i).USR = BSFlight(j).USR; Flight(i).TYPE = BSFlight(j).TYPE; Flight(i).CLS = BSFlight(j).CLS; Flight(i).CLSno = BSFlight(j).CLSno; Flight(i).SRTD = BSFlight(j).SRTD; Flight(i).SRTA = BSFlight(j).SRTA; Flight(i).ETE = BSFlight(j).ETE; Flight(i).CDM MBR = BSFlight(j).CDM MBR; Flight(i).AIRLINE = BSFlight(j).AIRLINE; Flight(i).GCD = BSFlight(j).GCD; Flight(i).INT = BSFlight(j).INT ; Flight(i).SEATS = BSFlight(j).SEATS; Flight(i).LF = BSFlight(j).LF; Flight(i).PAX = BSFlight(j).PAX; Flight(i).Etaxi = BSFlight(j).Etaxi; Flight(i).Eapu = BSFlight(j).Eapu; Flight(i).POPUP TIME = BSFlight(j).POPUP TIME; Flight(i).Assigned = 0; Flight(i).CANCELLED = BSFlight(j).CANCELLED; Flight(i).Nonexempt = 0; break end end end %Create SLOT from ’EWR07 AAR’ file. NoSlotList = NoFlightList + 200; j=0; 214 for j=1:NoSlotList Slot(j).Time = 0; Slot(j).Assigned = 0; Slot(j).Comp = 1; end i=0; j=1; Slot(1).Time = GDPStartTime; Total Value = 0; for i=1:NoPeriods if ((GDPParam(t).GDP ID == AAR(i).GDP ID) && (GDPParam(t).EVENT ID == AAR(i).EVENT ID)) Total Value = Total Value + AAR(i).VALUE; LastPeriod = i; if (AAR(i).PERIOD>GDPParam(t).END TIME) SlotSize = roundn((15/AAR(i).VALUE)*(0.5/720),-5); else SlotSize pre = ((AAR(i+1).PERIOD-AAR(i).PERIOD)/AAR(i).VALUE); SlotSize = roundn(SlotSize pre,-5); end while (j<Total Value) j=j+1; Slot(j).Time = Slot(j-1).Time + SlotSize; end end end Slotopened = j; if (Slotopened<NoSlotList) SlotSize = roundn((15/AAR(LastPeriod).VALUE)*(0.5/720),-5); while(Slotopened<=NoSlotList) j=j+1; Slot(j).Time = Slot(j-1).Time + SlotSize; Slotopened = Slotopened + 1; end end %Assign EXEMPT Flights their slots i=0; 215 j=0; k=0; l=0; if (strcmp(GDPScope Type,’By Tiers’)==1) for i=1:NoFlightList if((Flight(i).Assigned == 0) && (Flight(i).SRTA> = GDPStartTime) && (Flight(i).SRTA< = GDPEndTime) && (Flight(i).POPUP TIME<=GDPDataTime)) if (GDPParam(t).GDPNEC Count>0) for l=1:GDPParam(t).GDPNEC Count if((strcmp(Flight(i).INT,’U’) == 1) && (strcmp(Flight(i).DCENTR, GDPParam(t).GDPNEC(l,1)) == 1)) Flight(i).Nonexempt = 1; break end end end if(GDPParam(t).GDPNEA Count>0) for h=1:GDPParam(t).GDPNEA Count if ((strcmp(Flight(i).INT,’A’) == 1) && (strcmp(Flight(i).ORIG, GDPParam(t).GDPNEA(h,1)) ==1)) Flight(i).Nonexempt = 1; break end end end if(Flight(i).Nonexempt==0) for j=1:NoSlotList if ((Flight(i).SRTA<=Slot(j).Time) && (Slot(j).Assigned==0)) k = k + 1; GDP(k).SlotTime = Slot(j).Time; GDP(k).CTA = Slot(j).Time; Slot(j).Assigned = 1; GDP(k).GDP ID = Flight(i).GDP ID; GDP(k).GDP DATE = Flight(i).GDP DATE; GDP(k).EVENT ID = Flight(i).EVENT ID; GDP(k).FID = Flight(i).FID; GDP(k).AC = Flight(i).AC; 216 GDP(k).ORIG = Flight(i).ORIG; GDP(k).DCENTR = Flight(i).DCENTR; GDP(k).USR = Flight(i).USR; GDP(k).TYPE = Flight(i).TYPE; GDP(k).CLS = Flight(i).CLS; GDP(k).CLSno = Flight(i).CLSno; GDP(k).SRTD = Flight(i).SRTD; GDP(k).SRTA = Flight(i).SRTA; GDP(k).ETE = Flight(i).ETE; GDP(k).CDM MBR = Flight(i).CDM MBR; GDP(k).AIRLINE = Flight(i).AIRLINE; GDP(k).GCD = Flight(i).GCD; GDP(k).INT = Flight(i).INT; GDP(k).POPUP TIME = Flight(i).POPUP TIME; GDP(k).SEATS = Flight(i).SEATS; GDP(k).LF = Flight(i).LF; GDP(k).PAX = Flight(i).PAX; GDP(k).Etaxi = Flight(i).Etaxi; GDP(k).Eapu = Flight(i).Eapu; GDP(k).CTD = GDP(k).CTA - GDP(k).ETE; GDP(k).CANCELLED = Flight(i).CANCELLED; GDP(k).EXEMPT = 1; Flight(i).Assigned =1; NoFlights = NoFlights+1; No Exempt Flights = No Exempt Flights +1; break end end end end end elseif(strcmp(GDPScope Type,’By Distance’)==1) for i=1:NoFlightList if ((Flight(i).Assigned == 0) && (Flight(i).SRTA >= GDPStartTime) && (Flight(i).SRTA < = GDPEndTime) && (Flight(i).POPUP TIME <= GDPDataTime)) 217 if ((strcmp(Flight(i).INT,’U’)==1) && (Flight(i).GCD<=GDPScopeDistance)) Flight(i).Nonexempt = 1; end if(GDPParam(t).GDPNEA Count>0) for h=1:GDPParam(t).GDPNEA Count if ((strcmp(Flight(i).INT,’A’) == 1) && (strcmp(Flight(i).ORIG, GDPParam(t).GDPNEA(h,1)) == 1)) Flight(i).Nonexempt = 1; break end end end if(Flight(i).Nonexempt==0) for j=1:NoSlotList if ((Flight(i).SRTA<=Slot(j).Time) && (Slot(j).Assigned==0)) k = k + 1; GDP(k).SlotTime = Slot(j).Time; GDP(k).CTA = Slot(j).Time; Slot(j).Assigned = 1; GDP(k).GDP ID = Flight(i).GDP ID; GDP(k).GDP DATE = Flight(i).GDP DATE; GDP(k).EVENT ID = Flight(i).EVENT ID; GDP(k).FID = Flight(i).FID; GDP(k).AC = Flight(i).AC; GDP(k).ORIG = Flight(i).ORIG; GDP(k).DCENTR = Flight(i).DCENTR; GDP(k).USR = Flight(i).USR; GDP(k).TYPE = Flight(i).TYPE; GDP(k).CLS = Flight(i).CLS; GDP(k).CLSno = Flight(i).CLSno; GDP(k).SRTD = Flight(i).SRTD; GDP(k).SRTA = Flight(i).SRTA; GDP(k).ETE = Flight(i).ETE; GDP(k).CDM MBR = Flight(i).CDM MBR; GDP(k).AIRLINE = Flight(i).AIRLINE; GDP(k).GCD = Flight(i).GCD; 218 GDP(k).INT = Flight(i).INT; GDP(k).POPUP TIME = Flight(i).POPUP TIME; GDP(k).SEATS = Flight(i).SEATS; GDP(k).LF = Flight(i).LF; GDP(k).PAX = Flight(i).PAX; GDP(k).Etaxi = Flight(i).Etaxi; GDP(k).Eapu = Flight(i).Eapu; GDP(k).CTD = GDP(k).CTA - GDP(k).ETE; GDP(k).CANCELLED = Flight(i).CANCELLED; GDP(k).EXEMPT = 1; Flight(i).Assigned =1; NoFlights = NoFlights+1; No Exempt Flights = No Exempt Flights +1; break end end end end end end % sort flights table for GDP Rationing Rule % 1. RBS if(Strategy == 1) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).PAX; end end 219 ASort = sortrows(BSort,2); % 2. Ration-by-Pax elseif (Strategy==2) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).PAX; end end ASort = sortrows(BSort,[-3 2]); % 3. Ration-by-Seats elseif (Strategy==3) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).SEATS; end end ASort = sortrows(BSort,[-3 2]); % 4. Ration-by-GCD elseif (Strategy==4) 220 i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).GCD; end end ASort = sortrows(BSort,[-3 2]); % 5. Ration-by-AcSize elseif (Strategy==5) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).CLSno; end end ASort = sortrows(BSort,[3 2]); % 6. Emmissions - Dirty first elseif (Strategy==6) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; 221 BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).Etaxi; end end ASort = sortrows(BSort,[-3 2]); % 7. Emmissions - Clean first elseif (Strategy==7) i=0; j=0; NoFlightListNonexempt = NoFlightList - No Exempt Flights; BSort = zeros(NoFlightListNonexempt,3); ASort = zeros(NoFlightListNonexempt,3); for i=1:NoFlightList if (Flight(i).Assigned==0) j = j + 1; BSort(j,1)= Flight(i).FID; BSort(j,2)= Flight(i).SRTA; BSort(j,3)= Flight(i).Etaxi; end end ASort = sortrows(BSort,[3 2]); end i=0; j=0; for i=1:NoFlightListNonexempt for j=1:NoFlightList if (ASort(i,1) == Flight(j).FID) ASFlight(i).GDP ID = Flight(j).GDP ID; ASFlight(i).GDP DATE = Flight(j).GDP DATE; 222 ASFlight(i).EVENT ID = Flight(j).EVENT ID; ASFlight(i).FID = Flight(j).FID; ASFlight(i).AC = Flight(j).AC; ASFlight(i).ORIG = Flight(j).ORIG; ASFlight(i).DCENTR = Flight(j).DCENTR; ASFlight(i).USR = Flight(j).USR; ASFlight(i).TYPE = Flight(j).TYPE; ASFlight(i).CLS = Flight(j).CLS; ASFlight(i).CLSno = Flight(j).CLSno; ASFlight(i).SRTD = Flight(j).SRTD; ASFlight(i).SRTA = Flight(j).SRTA; ASFlight(i).ETE = Flight(j).ETE; ASFlight(i).CDM MBR = Flight(j).CDM MBR; ASFlight(i).AIRLINE = Flight(j).AIRLINE; ASFlight(i).GCD = Flight(j).GCD; ASFlight(i).INT = Flight(j).INT ; ASFlight(i).SEATS = Flight(j).SEATS; ASFlight(i).LF = Flight(j).LF; ASFlight(i).PAX = Flight(j).PAX; ASFlight(i).Etaxi = Flight(j).Etaxi; ASFlight(i).Eapu = Flight(j).Eapu; ASFlight(i).CANCELLED = Flight(j).CANCELLED; ASFlight(i).POPUP TIME = Flight(j).POPUP TIME; ASFlight(i).Assigned = 0; break end end end % Assign slots to GDP Non-exempt flights i=0; j=0; for i=1:NoFlightListNonexempt if ((ASFlight(i).SRTA>= GDPStartTime) && (ASFlight(i).SRTA <= GDPEndTime) && (ASFlight(i).Assigned==0)&&(ASFlight(i).POPUP TIME<=GDPDataTime)) for j=1:NoSlotList 223 if ((ASFlight(i).SRTA<=Slot(j).Time) && (Slot(j).Assigned ==0)); k = k + 1; GDP(k).SlotTime = Slot(j).Time; GDP(k).CTA = Slot(j).Time; Slot(j).Assigned = 1; GDP(k).GDP ID = ASFlight(i).GDP ID; GDP(k).GDP DATE = ASFlight(i).GDP DATE; GDP(k).EVENT ID = ASFlight(i).EVENT ID; GDP(k).FID = ASFlight(i).FID; GDP(k).AC = ASFlight(i).AC; GDP(k).ORIG = ASFlight(i).ORIG; GDP(k).DCENTR = ASFlight(i).DCENTR; GDP(k).USR = ASFlight(i).USR; GDP(k).TYPE = ASFlight(i).TYPE; GDP(k).CLS = ASFlight(i).CLS; GDP(k).CLSno = ASFlight(i).CLSno; GDP(k).SRTD = ASFlight(i).SRTD; GDP(k).SRTA = ASFlight(i).SRTA; GDP(k).ETE = ASFlight(i).ETE; GDP(k).CDM MBR = ASFlight(i).CDM MBR; GDP(k).AIRLINE = ASFlight(i).AIRLINE; GDP(k).GCD = ASFlight(i).GCD; GDP(k).INT = ASFlight(i).INT; GDP(k).POPUP TIME = ASFlight(i).POPUP TIME; GDP(k).SEATS = ASFlight(i).SEATS; GDP(k).LF = ASFlight(i).LF; GDP(k).PAX = ASFlight(i).PAX; GDP(k).Etaxi = ASFlight(i).Etaxi; GDP(k).Eapu = ASFlight(i).Eapu; GDP(k).CTD = GDP(k).CTA - GDP(k).ETE; GDP(k).CANCELLED = ASFlight(i).CANCELLED; GDP(k).EXEMPT = 0; ASFlight(i).Assigned =1; NoFlights = NoFlights+1; break 224 end end end end %Calculate metrics at the end of the slot allocation i=0; for i=1:NoFlights GDP(i).DELAY= 1440*(GDP(i).CTA - GDP(i).SRTA); GDP(i).PAXDELAY = GDP(i).DELAY * GDP(i).PAX; if (GDP(i).DELAY <=20) GDP(i).Emmission = GDP(i).DELAY * GDP(i).Etaxi; else GDP(i).Emmission = (20 * GDP(i).Etaxi)+((GDP(i).DELAY-20)*GDP(i).Eapu); end if (strncmp(GDP(i).INT,’A’, 1)==1) No International Flights = No International Flights +1; end end No Nonexempt Flights = NoFlights - No Exempt Flights; No Domestic Flights = NoFlights - No International Flights; Total PAX = sum([GDP.PAX]); Total Delay = sum([GDP.DELAY]); Total PaxDelay = sum([GDP.PAXDELAY]); Total Emmission = sum([GDP.Emmission]); i=0; for i=1:NoFlights if(GDP(i).EXEMPT == 1) Delay Exempt = Delay Exempt + GDP(i).DELAY; PaxDelay Exempt = PaxDelay Exempt + GDP(i).PAXDELAY; Emmission Exempt = Emmission Exempt + GDP(i).Emmission; PAX Exempt = PAX Exempt + GDP(i).PAX; else Delay Nonexempt = Delay Nonexempt + GDP(i).DELAY; PaxDelay Nonexempt = PaxDelay Nonexempt + GDP(i).PAXDELAY; Emmission Nonexempt = Emmission Nonexempt + GDP(i).Emmission; PAX Nonexempt = PAX Nonexempt + GDP(i).PAX; 225 end if(strncmp(GDP(i).INT,’A’, 1)==1) Delay International = Delay International + GDP(i).DELAY; PaxDelay International = PaxDelay International + GDP(i).PAXDELAY; Emmission International = Emmission International + GDP(i).Emmission; PAX International = PAX International + GDP(i).PAX; else Delay Domestic = Delay Domestic + GDP(i).DELAY; PaxDelay Domestic = PaxDelay Domestic + GDP(i).PAXDELAY; Emmission Domestic = Emmission Domestic + GDP(i).Emmission; PAX Domestic = PAX Domestic + GDP(i).PAX; end end % Calculate performance metrics by Airline for Initial Slot Allocation a = 0; a = unique([GDP.AIRLINE]); NoAirlines = 0; NoAirlines = numel(a); Airline = zeros(NoAirlines,25); i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if(strcmp(GDP(j).AIRLINE, a(i))== 1) Airline(i,1)= Airline(i,1)+1; Airline(i,2)= Airline(i,2)+ GDP(j).PAX; Airline(i,3)= Airline(i,3)+ GDP(j).DELAY; Airline(i,4)= Airline(i,4)+ GDP(j).PAXDELAY; Airline(i,5)= Airline(i,5)+ GDP(j).Emmission; end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights 226 if((strcmp(GDP(j).AIRLINE, a(i))== 1) && (GDP(j).EXEMPT==1)) Airline(i,6)= Airline(i,6)+1; Airline(i,7)= Airline(i,7)+ GDP(j).PAX; Airline(i,8)= Airline(i,8)+ GDP(j).DELAY; Airline(i,9)= Airline(i,9)+ GDP(j).PAXDELAY; Airline(i,10)= Airline(i,10)+ GDP(j).Emmission; end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(GDP(j).AIRLINE, a(i))== 1) && (GDP(j).EXEMPT==0)) Airline(i,11)= Airline(i,11)+1; Airline(i,12)= Airline(i,12)+ GDP(j).PAX; Airline(i,13)= Airline(i,13)+ GDP(j).DELAY; Airline(i,14)= Airline(i,14)+ GDP(j).PAXDELAY; Airline(i,15)= Airline(i,15)+ GDP(j).Emmission; end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(GDP(j).AIRLINE, a(i))== 1)&& (strncmp(GDP(j).INT,’A’, 1)==1)) Airline(i,16)= Airline(i,16)+1; Airline(i,17)= Airline(i,17)+ GDP(j).PAX; Airline(i,18)= Airline(i,18)+ GDP(j).DELAY; Airline(i,19)= Airline(i,19)+ GDP(j).PAXDELAY; Airline(i,20)= Airline(i,20)+ GDP(j).Emmission; end end end i=0; 227 j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(GDP(j).AIRLINE, a(i))== 1)&& (strncmp(GDP(j).INT,’U’, 1)==1)) Airline(i,21)= Airline(i,21)+1; Airline(i,22)= Airline(i,22)+ GDP(j).PAX; Airline(i,23)= Airline(i,23)+ GDP(j).DELAY; Airline(i,24)= Airline(i,24)+ GDP(j).PAXDELAY; Airline(i,25)= Airline(i,25)+ GDP(j).Emmission; end end end % Calculate performace metrics by Origin for Initial Slot Allocation b = 0; b = unique([GDP.ORIG]); NoOrigins =0; NoOrigins = numel(b); Origin = zeros(NoOrigins,30); i=0; j=0; for i=1:NoOrigins for j=1:NoFlights % All Origins if(strcmp(GDP(j).ORIG, b(i))== 1) Origin(i,1)= Origin(i,1)+1; Origin(i,2)= Origin(i,2)+ GDP(j).PAX; Origin(i,3)= Origin(i,3)+ GDP(j).DELAY; Origin(i,4)= Origin(i,4)+ GDP(j).PAXDELAY; Origin(i,5)= Origin(i,5)+ GDP(j).Emmission; Origin(i,26)= Origin(i,26)+ GDP(j).SEATS; end % Exempt Information if((GDP(j).EXEMPT==1)) if(strcmp(GDP(j).ORIG, b(i))== 1) Origin(i,6)= Origin(i,6)+1; 228 Origin(i,7)= Origin(i,7)+ GDP(j).PAX; Origin(i,8)= Origin(i,8)+ GDP(j).DELAY; Origin(i,9)= Origin(i,9)+ GDP(j).PAXDELAY; Origin(i,10)= Origin(i,10)+ GDP(j).Emmission; Origin(i,27)= Origin(i,27)+ GDP(j).SEATS; end end %Nonexempt information if((GDP(j).EXEMPT==0)) if(strcmp(GDP(j).ORIG, b(i))== 1) Origin(i,11)= Origin(i,11)+1; Origin(i,12)= Origin(i,12)+ GDP(j).PAX; Origin(i,13)= Origin(i,13)+ GDP(j).DELAY; Origin(i,14)= Origin(i,14)+ GDP(j).PAXDELAY; Origin(i,15)= Origin(i,15)+ GDP(j).Emmission; Origin(i,28)= Origin(i,28)+ GDP(j).SEATS; end end % International information if((strncmp(GDP(j).INT,’A’, 1)==1) && (strcmp(GDP(j).ORIG, b(i))== 1)) Origin(i,16)= Origin(i,16)+1; Origin(i,17)= Origin(i,17)+ GDP(j).PAX; Origin(i,18)= Origin(i,18)+ GDP(j).DELAY; Origin(i,19)= Origin(i,19)+ GDP(j).PAXDELAY; Origin(i,20)= Origin(i,20)+ GDP(j).Emmission; Origin(i,29)= Origin(i,29)+ GDP(j).SEATS; end % Domestic information if((strncmp(GDP(j).INT,’U’, 1)==1) && (strcmp(GDP(j).ORIG, b(i))== 1)) Origin(i,21)= Origin(i,21)+1; Origin(i,22)= Origin(i,22)+ GDP(j).PAX; Origin(i,23)= Origin(i,23)+ GDP(j).DELAY; Origin(i,24)= Origin(i,24)+ GDP(j).PAXDELAY; Origin(i,25)= Origin(i,25)+ GDP(j).Emmission; Origin(i,30)= Origin(i,30)+ GDP(j).SEATS; 229 end end end toc %SUBSTITUTION% tic Slotopen = 0; Slotopen2 = 0; % Find each airline’s flights i=0; j=0; k=1; fc=0; for j=1:NoAirlines for i=1:NoFlights if(strncmp(GDP(i).AIRLINE, a(j),3)== 1) SubAirline(j).NAME = GDP(i).AIRLINE; SubAirline(j).FlightCount = fc + 1; SubAirline(j).Flight(k).FID = GDP(i).FID; SubAirline(j).Flight(k).AC = GDP(i).AC; SubAirline(j).Flight(k).ORIG = GDP(i).ORIG; SubAirline(j).Flight(k).DCENTR = GDP(i).DCENTR; SubAirline(j).Flight(k).USR = GDP(i).USR; SubAirline(j).Flight(k).TYPE = GDP(i).TYPE; SubAirline(j).Flight(k).CLS = GDP(i).CLS; SubAirline(j).Flight(k).CLSno = GDP(i).CLSno; SubAirline(j).Flight(k).SRTD = GDP(i).SRTD; SubAirline(j).Flight(k).SRTA = GDP(i).SRTA; SubAirline(j).Flight(k).ETE = GDP(i).ETE; SubAirline(j).Flight(k).CDM MBR = GDP(i).CDM MBR; SubAirline(j).Flight(k).GCD = GDP(i).GCD; SubAirline(j).Flight(k).INT = GDP(i).INT; SubAirline(j).Flight(k).EXEMPT = GDP(i).EXEMPT; SubAirline(j).Flight(k).PAX = GDP(i).PAX; SubAirline(j).Flight(k).SEATS = GDP(i).SEATS; 230 SubAirline(j).Flight(k).LF = GDP(i).LF; SubAirline(j).Flight(k).CTA = GDP(i).CTA; SubAirline(j).Flight(k).SlotTime = GDP(i).SlotTime; SubAirline(j).Flight(k).CTD = GDP(i).CTD; SubAirline(j).Flight(k).POPUP TIME = GDP(i).POPUP TIME; SubAirline(j).Flight(k).Emmission = GDP(i).Emmission; SubAirline(j).Flight(k).Etaxi = GDP(i).Etaxi; SubAirline(j).Flight(k).Eapu = GDP(i).Eapu; SubAirline(j).Flight(k).InitialPAX = GDP(i).PAX; SubAirline(j).Flight(k).InitialSEATSempty = GDP(i).SEATS - GDP(i).PAX; SubAirline(j).Flight(k).SEATSempty = GDP(i).SEATS - GDP(i).PAX; SubAirline(j).Flight(k).InitialLF = GDP(i).LF; SubAirline(j).Flight(k).InitialCTA = SubAirline(j).Flight(k).CTA; SubAirline(j).Flight(k).InitialSlotTime = SubAirline(j).Flight(k).SlotTime; SubAirline(j).Flight(k).InitialCTD = SubAirline(j).Flight(k).CTD; SubAirline(j).Flight(k).InitialEmmission = GDP(i).Emmission; SubAirline(j).Flight(k).InitialDELAY = GDP(i).DELAY; SubAirline(j).Flight(k).InitialPAXDELAY = GDP(i).PAXDELAY; SubAirline(j).Flight(k).CTAold = 0; SubAirline(j).Flight(k).CANCELLED = GDP(i).CANCELLED; SubAirline(j).Flight(k).PAXtorelocate = 0; SubAirline(j).Flight(k).Subbed = 0; SubAirline(j).Flight(k).SubDelay = 0; SubAirline(j).Flight(k).SubPaxDelay = 0; SubAirline(j).Flight(k).Flightrelocate = 0; % this value is added for paxdelay calculation after compression SubAirline(j).Flight(k).SEATSemptyBR = 0; SubAirline(j).Flight(k).CTAcomp = 0; k=k+1; fc = fc+1; end end k=1; fc=0; end 231 % Substitute flights by increasin SRTA if (SubStrategy == 1) i=0; j=0; k=0; Counter = 0; Eligible = 0; Slotnew = 0; temp1 = 0; temp2 = 0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(i).CANCELLED)==1) Slotopen = SubAirline(j).Flight(i).SlotTime; for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0) && (SubAirline(j).Flight(k).CTA > Slotopen) && (SubAirline(j).Flight(k).SRTA <= Slotopen)) Eligible = Eligible + 1; if (Eligible==1) temp1 = k; elseif (Eligible>1) temp2 = k; if (SubAirline(j).Flight(temp2).SRTA<SubAirline(j).Flight(temp1).SRTA) temp1 = temp2; end end end end if (temp1>0) SubAirline(j).Flight(temp1).CTAold = SubAirline(j).Flight(temp1).CTA; SubAirline(j).Flight(temp1).Subbed = 1; SubAirline(j).Flight(temp1).CTA = Slotopen; SubAirline(j).Flight(temp1).CTD = SubAirline(j).Flight(temp1).CTA – SubAirline(j). Flight(temp1).ETE; Slotnew = SubAirline(j).Flight(temp1).SlotTime; SubAirline(j).Flight(temp1).SlotTime = Slotopen; 232 temp1 = 0; temp2 = 0; Eligible = 0; end while (Slotopen =Slotnew) Slotopen = Slotnew; for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0) && (SubAirline(j).Flight(k).CTA > Slotopen) && (SubAirline(j).Flight(k).SRTA <= Slotopen)) Eligible = Eligible + 1; if (Eligible==1) temp1 = k; elseif (Eligible>1) temp2 = k; if (SubAirline(j).Flight(temp2).SRTA<SubAirline(j).Flight(temp1).SRTA) temp1 = temp2; end end end end if (Eligible==0) Slotnew = Slotopen; else SubAirline(j).Flight(temp1).CTAold = SubAirline(j).Flight(temp1).CTA; SubAirline(j).Flight(temp1).Subbed = 1; SubAirline(j).Flight(temp1).CTA = Slotopen; SubAirline(j).Flight(temp1).CTD = SubAirline(j).Flight(temp1).CTA - SubAirline(j). Flight(temp1).ETE; Slotnew = SubAirline(j).Flight(temp1).SlotTime; SubAirline(j).Flight(temp1).SlotTime = Slotopen; temp1 = 0; temp2 = 0; Eligible = 0; end end end end 233 end elseif (SubStrategy == 2) % Substitute flights by decreasing number of passengers on board % Calculate how many passengers will be on board after cancellations i=0; j=0; k=0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount if (SubAirline(j).Flight(i).CANCELLED == 1) SubAirline(j).Flight(i).PAXtorelocate = SubAirline(j).Flight(i).PAX; if (SubAirline(j).Flight(i).PAXtorelocate > 0) for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0)&&(strcmp(SubAirline(j).Flight(i).ORIG, SubAirline(j).Flight(k).ORIG) == 1) && (SubAirline(j).Flight(k).CTA > = SubAirline(j). Flight(i).SRTA) &&( SubAirline(j).Flight(k).SEATSempty > 0)) if(SubAirline(j).Flight(k).SEATSempty>= SubAirline(j).Flight(i).PAXtorelocate) SubAirline(j).Flight(i).Flightrelocate = SubAirline(j).Flight(i).Flightrelocate + 1; SubAirline(j).Flight(k).SEATSempty = SubAirline(j).Flight(k).SEATSempty - SubAirline(j).Flight(i).PAXtorelocate; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).PAX + SubAirline(j).Flight(i). PAXtorelocate; SubAirline(j).Flight(k).LF = double(SubAirline(j).Flight(k).PAX) / double(SubAirline(j). Flight(k).SEATS); SubAirline(j).Flight(i).PAXtorelocate = 0; break else SubAirline(j).Flight(i).Flightrelocate = SubAirline(j).Flight(i).Flightrelocate + 1; SubAirline(j).Flight(i).PAXtorelocate = SubAirline(j).Flight(i).PAXtorelocate - SubAirline(j).Flight(k).SEATSempty; SubAirline(j).Flight(k).SEATSempty = 0; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).SEATS; SubAirline(j).Flight(k).LF = 1; end end end end end end end i=0; 234 j=0; k=0; Counter = 0; Eligible = 0; Slotnew = 0; temp1 = 0; temp2 = 0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(i).CANCELLED)==1) Slotopen = SubAirline(j).Flight(i).SlotTime; for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0) &&( SubAirline(j).Flight(k).CTA > Slotopen) && (SubAirline(j).Flight(k).SRTA <= Slotopen)) Eligible = Eligible + 1; if (Eligible==1) temp1 = k; elseif (Eligible>1) temp2 = k; if (SubAirline(j).Flight(temp2).PAX>SubAirline(j).Flight(temp1).PAX) temp1 = temp2; elseif (( SubAirline(j).Flight(temp2).PAX == SubAirline(j).Flight(temp1).PAX) && (SubAirline(j).Flight(temp2).SRTA < SubAirline(j).Flight(temp1).SRTA)) temp1 = temp2; end end end end if (temp1>0) SubAirline(j).Flight(temp1).CTAold = SubAirline(j).Flight(temp1).CTA; SubAirline(j).Flight(temp1).Subbed = 1; SubAirline(j).Flight(temp1).CTA = Slotopen; SubAirline(j).Flight(temp1).CTD = SubAirline(j).Flight(temp1).CTA - SubAirline(j). Flight(temp1).ETE; Slotnew = SubAirline(j).Flight(temp1).SlotTime; SubAirline(j).Flight(temp1).SlotTime = Slotopen; 235 temp1 = 0; temp2 = 0; Eligible = 0; end while (Slotopen =Slotnew) Slotopen = Slotnew; for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0) && (SubAirline(j).Flight(k).CTA > Slotopen) && (SubAirline(j).Flight(k).SRTA <= Slotopen)) Eligible = Eligible + 1; if (Eligible==1) temp1 = k; elseif (Eligible>1) temp2 = k; if (SubAirline(j).Flight(temp2).PAX>SubAirline(j).Flight(temp1).PAX) temp1 = temp2; elseif((SubAirline(j).Flight(temp2).PAX == SubAirline(j).Flight(temp1).PAX) && (SubAirline(j).Flight(temp2).SRTA < SubAirline(j).Flight(temp1).SRTA)) temp1 = temp2; end end end end if (Eligible==0) Slotnew = Slotopen; else SubAirline(j).Flight(temp1).CTAold = SubAirline(j).Flight(temp1).CTA; SubAirline(j).Flight(temp1).Subbed = 1; SubAirline(j).Flight(temp1).CTA = Slotopen; SubAirline(j).Flight(temp1).CTD = SubAirline(j).Flight(temp1).CTA - SubAirline(j). Flight(temp1).ETE; Slotnew = SubAirline(j).Flight(temp1).SlotTime; SubAirline(j).Flight(temp1).SlotTime = Slotopen; temp1 = 0; temp2 = 0; Eligible = 0; end 236 end end end end % Put back the initial values for passenger on-board calculation so that i can run the same passenger delay calculation below. i=0; j=0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount SubAirline(j).Flight(i).PAXtorelocate = 0; SubAirline(j).Flight(i).SEATSempty = SubAirline(j).Flight(i).InitialSEATSempty; SubAirline(j).Flight(i).PAX = SubAirline(j).Flight(i).InitialPAX; SubAirline(j).Flight(i).LF = SubAirline(j).Flight(i).InitialLF; SubAirline(j).Flight(i).Flightrelocate = 0; end end end % Calculate performance metrics after substitution i=0; j=0; k=0; l=0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount if (SubAirline(j).Flight(i).CANCELLED == 0) SubAirline(j).Flight(i).SubDelay = 1440*(SubAirline(j).Flight(i).CTA - SubAirline(j). Flight(i).SRTA); SubAirline(j).Flight(i).SubPaxDelay = SubAirline(j).Flight(i).SubDelay * SubAirline(j). Flight(i).InitialPAX; if (SubAirline(j).Flight(i).SubDelay<=20) SubAirline(j).Flight(i).Emmission = SubAirline(j).Flight(i).SubDelay * SubAirline(j). Flight(i).Etaxi; else SubAirline(j).Flight(i).Emmission = (20*SubAirline(j).Flight(i).Etaxi) + ((SubAirline(j). Flight(i).SubDelay - 20)*SubAirline(j).Flight(i).Eapu); end else SubAirline(j).Flight(i).SubDelay = 0; SubAirline(j).Flight(i).Emmission = 0; 237 SubAirline(j).Flight(i).SubPaxDelay = 0; SubAirline(j).Flight(i).PAXtorelocate = SubAirline(j).Flight(i).PAX; if (SubAirline(j).Flight(i).PAXtorelocate > 0) for k=1:SubAirline(j).FlightCount if ((SubAirline(j).Flight(k).CANCELLED == 0) && (strcmp(SubAirline(j).Flight(i).ORIG, SubAirline(j).Flight(k).ORIG) == 1) && (SubAirline(j).Flight(k).CTA >= SubAirline(j). Flight(i).SRTA) &&( SubAirline(j).Flight(k).SEATSempty > 0)) if(SubAirline(j).Flight(k).SEATSempty>= SubAirline(j).Flight(i).PAXtorelocate) SubAirline(j).Flight(i).SubPaxDelay = (SubAirline(j).Flight(i).SubPaxDelay) + ((1440*(SubAirline(j).Flight(k).CTA - SubAirline(j).Flight(i).SRTA)) * SubAirline(j).Flight(i).PAXtorelocate); SubAirline(j).Flight(i).Flightrelocate = SubAirline(j).Flight(i).Flightrelocate + 1; SubAirline(j).Flight(k).SEATSempty = SubAirline(j).Flight(k).SEATSempty - SubAirline(j).Flight(i).PAXtorelocate; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).PAX + SubAirline(j).Flight(i). PAXtorelocate; SubAirline(j).Flight(k).LF = double(SubAirline(j).Flight(k).PAX) / double(SubAirline(j). Flight(k).SEATS); SubAirline(j).Flight(i).PAXtorelocate = 0; break else SubAirline(j).Flight(i).SubPaxDelay = (SubAirline(j).Flight(i).SubPaxDelay) + ((1440 * (SubAirline(j).Flight(k).CTA - SubAirline(j).Flight(i).SRTA)) * SubAirline(j).Flight(k). SEATSempty); SubAirline(j).Flight(i).Flightrelocate = SubAirline(j).Flight(i).Flightrelocate + 1; SubAirline(j).Flight(i).PAXtorelocate = SubAirline(j).Flight(i).PAXtorelocate - SubAirline(j).Flight(k).SEATSempty; SubAirline(j).Flight(k).SEATSempty = 0; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).SEATS; SubAirline(j).Flight(k).LF = 1; end end end if (SubAirline(j).Flight(i).PAXtorelocate > 0) SubAirline(j).Flight(i).SubPaxDelay = SubAirline(j).Flight(i).SubPaxDelay+(1440*(Morning - SubAirline(j).Flight(i).SRTA)) * SubAirline(j).Flight(i).PAXtorelocate; end end end end end toc %COMPRESSION% 238 tic i=0; j=0; k=0; for j=1:NoAirlines for i=1:SubAirline(j).FlightCount; k = k + 1; BSComp(k).FID = SubAirline(j).Flight(i).FID; BSComp(k).SRTA = SubAirline(j).Flight(i).SRTA; BSComp(k).SubCTA = SubAirline(j).Flight(i).CTA; BSComp(k).CTAold = 0; BSComp(k).InitialCTA = SubAirline(j).Flight(i).InitialCTA; BSComp(k).SubSlotTime = SubAirline(j).Flight(i).SlotTime; BSComp(k).InitialSlotTime = SubAirline(j).Flight(i).InitialSlotTime; BSComp(k).SRTD = SubAirline(j).Flight(i).SRTD; BSComp(k).SubCTD = SubAirline(j).Flight(i).CTD; BSComp(k).InitialCTD = SubAirline(j).Flight(i).InitialCTD; BSComp(k).POPUP TIME = SubAirline(j).Flight(i).POPUP TIME; BSComp(k).ETE = SubAirline(j).Flight(i).ETE; BSComp(k).CANCELLED = SubAirline(j).Flight(i).CANCELLED; BSComp(k).GCD = SubAirline(j).Flight(i).GCD; BSComp(k).EXEMPT = SubAirline(j).Flight(i).EXEMPT; BSComp(k).SubDelay = SubAirline(j).Flight(i).SubDelay; BSComp(k).InitialDELAY = SubAirline(j).Flight(i).InitialDELAY; BSComp(k).SubPaxDelay = SubAirline(j).Flight(i).SubPaxDelay; BSComp(k).InitialPAXDELAY = SubAirline(j).Flight(i).InitialPAXDELAY; BSComp(k).Flightrelocate = SubAirline(j).Flight(i).Flightrelocate; BSComp(k).SEATS = SubAirline(j).Flight(i).SEATS; BSComp(k).PAX = SubAirline(j).Flight(i).PAX; BSComp(k).LF = SubAirline(j).Flight(i).LF; BSComp(k).InitialPAX = SubAirline(j).Flight(i).InitialPAX; BSComp(k).InitialLF = SubAirline(j).Flight(i).InitialLF; BSComp(k).SEATSempty = SubAirline(j).Flight(i).SEATSempty; BSComp(k).InitialSEATSempty = SubAirline(j).Flight(i).InitialSEATSempty; BSComp(k).Etaxi = SubAirline(j).Flight(i).Etaxi; 239 BSComp(k).Eapu = SubAirline(j).Flight(i).Eapu; BSComp(k).InitialEmmission = SubAirline(j).Flight(i).InitialEmmission; BSComp(k).SubEmmission = SubAirline(j).Flight(i).Emmission; BSComp(k).ORIG = SubAirline(j).Flight(i).ORIG; BSComp(k).INT = SubAirline(j).Flight(i).INT; BSComp(k).DCENTR = SubAirline(j).Flight(i).DCENTR; BSComp(k).AIRLINE = SubAirline(j).NAME; BSComp(k).AC = SubAirline(j).Flight(i).AC; BSComp(k).USR = SubAirline(j).Flight(i).USR; BSComp(k).CLS = SubAirline(j).Flight(i).CLS; BSComp(k).CLSno = SubAirline(j).Flight(i).CLSno; BSComp(k).TYPE = SubAirline(j).Flight(i).TYPE; BSComp(k).CDM MBR = SubAirline(j).Flight(i).CDM MBR; BSComp(k).Subbed = SubAirline(j).Flight(i).Subbed; end end % 1. Order flights by RBS if (Strategy==1) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).SRTA; BSortComp(i,3)= BSComp(i).PAX; end ASortComp = sortrows(BSortComp,2); % 2. Order flights by RBPax elseif (Strategy==2) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).PAX; 240 BSortComp(i,3)= BSComp(i).SRTA; end ASortComp = sortrows(BSortComp,[-2 3]); % 3. Order flights by RBSeats elseif (Strategy==3) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).SEATS; BSortComp(i,3)= BSComp(i).SRTA; end ASortComp = sortrows(BSortComp,[-2 3]); % 4. Order flights by RB-GCD elseif (Strategy==4) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).GCD; BSortComp(i,3)= BSComp(i).SRTA; end ASortComp = sortrows(BSortComp,[-2 3]); % 5. Order flights by RB-AcSize (need to update) elseif (Strategy==5) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).CLSno; BSortComp(i,3)= BSComp(i).SRTA; end 241 ASortComp = sortrows(BSortComp,[2 3]); % 6. Order flights by RB-Emmissions-Dirty first elseif (Strategy==6) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).Etaxi; BSortComp(i,3)= BSComp(i).SRTA; end ASortComp = sortrows(BSortComp,[-2 3]); % 7. Order flights by RB-Emmissions-Clean first elseif (Strategy==7) ASortComp = zeros(NoFlights,3); BSortComp = zeros(3,NoFlights); i=0; for i=1:NoFlights BSortComp(i,1)= BSComp(i).FID; BSortComp(i,2)= BSComp(i).Etaxi; BSortComp(i,3)= BSComp(i).SRTA; end ASortComp = sortrows(BSortComp,[2 3]); end i=0; j=0; for i=1:NoFlights for j=1:NoFlights if (ASortComp(i,1) == BSComp(j).FID) Comp(i).FID = BSComp(j).FID; Comp(i).SRTA = BSComp(j).SRTA; Comp(i).CTA = BSComp(j).SubCTA; Comp(i).SubCTA = BSComp(j).SubCTA; Comp(i).CTAold = 0; Comp(i).InitialCTA = BSComp(j).InitialCTA; 242 Comp(i).SlotTime =BSComp(j).SubSlotTime; Comp(i).SubSlotTime = BSComp(j).SubSlotTime; Comp(i).InitialSlotTime = BSComp(j).InitialSlotTime; Comp(i).SRTD = BSComp(j).SRTD; Comp(i).CTD = BSComp(j).SubCTD; Comp(i).SubCTD = BSComp(j).SubCTD; Comp(i).InitialCTD = BSComp(j).InitialCTD; Comp(i).POPUP TIME = BSComp(j).POPUP TIME; Comp(i).ETE = BSComp(j).ETE; Comp(i).CANCELLED = BSComp(j).CANCELLED; Comp(i).GCD = BSComp(j).GCD; Comp(i).EXEMPT = BSComp(j).EXEMPT; Comp(i).Delay = 0; Comp(i).SubDelay = BSComp(j).SubDelay; Comp(i).InitialDELAY = BSComp(j).InitialDELAY; Comp(i).PaxDelay = 0; Comp(i).SubPaxDelay = BSComp(j).SubPaxDelay; Comp(i).InitialPAXDELAY = BSComp(j).InitialPAXDELAY; Comp(i).Flightrelocate = BSComp(j).Flightrelocate; Comp(i).SEATS = BSComp(j).SEATS; Comp(i).PAX = BSComp(j).PAX; Comp(i).LF = BSComp(j).LF; Comp(i).InitialPAX = BSComp(j).InitialPAX; Comp(i).InitialLF = BSComp(j).InitialLF; Comp(i).SEATSempty = BSComp(j).SEATSempty; Comp(i).InitialSEATSempty = BSComp(j).InitialSEATSempty; Comp(i).Etaxi = BSComp(j).Etaxi; Comp(i).Eapu = BSComp(j).Eapu; Comp(i).Emmission = 0; Comp(i).SubEmmission = BSComp(j).SubEmmission; Comp(i).InitialEmmission = BSComp(j).InitialEmmission; Comp(i).ORIG = BSComp(j).ORIG; Comp(i).INT = BSComp(j).INT; Comp(i).DCENTR = BSComp(j).DCENTR; 243 Comp(i).AIRLINE = BSComp(j).AIRLINE; Comp(i).AC = BSComp(j).AC; Comp(i).USR = BSComp(j).USR; Comp(i).CLS = BSComp(j).CLS; Comp(i).CLSno = BSComp(j).CLSno; Comp(i).TYPE = BSComp(j).TYPE; Comp(i).CDM MBR = BSComp(j).CDM MBR; Comp(i).Subbed = BSComp(j).Subbed; % This value is only to calculate paxdelay after compression. Comp(i).PAXtorelocate = 0; break end end end %find open slots (Slot.Comp = 1) i=0; j=0; for i=1:NoFlights for j=1:NoSlotList if ((Comp(i).CANCELLED==0)&&(Comp(i).SlotTime==Slot(j).Time)) Slot(j).Comp = 0; end end end % Assign flights to open slots, check CDM MBRs first. i=0; j=0; k=0; Slotnw = 0; for j=1:NoSlotList if (Slot(j).Comp==1) Slotopn = Slot(j).Time; for i=1:NoFlights if ((Comp(i).CANCELLED == 0) && (strcmp(Comp(i).CDM MBR,’Y’) == 1) && (Comp(i).CTA > Slotopn) && (Comp(i).SRTA <= Slotopn)) Comp(i).CTAold = Comp(i).CTA; 244 Comp(i).CTA = Slotopn; Comp(i).CTD = Comp(i).CTA - Comp(i).ETE; Slotnw = Comp(i).SlotTime; Comp(i).SlotTime = Slotopn; Slot(j).Comp = 0; break end end while (Slotopn =Slotnw) Slotopn = Slotnw; for i=1:NoFlights if ((Comp(i).CANCELLED == 0) && (strcmp(Comp(i).CDM MBR,’Y’) == 1) && (Comp(i).CTA > Slotopn) && (Comp(i).SRTA <= Slotopn)) Comp(i).CTAold = Comp(i).CTA; Comp(i).CTA = Slotopn; Comp(i).CTD = Comp(i).CTA - Comp(i).ETE; Slotnw = Comp(i).SlotTime; Comp(i).SlotTime = Slotopn; break end end end for k=1:NoSlotList if(Slotopn==Slot(k).Time)&&(Slotopn =0) Slot(k).Comp = 1; end end end end % If slot is still open, check all flights i=0; j=0; k=0; Slotnw = 0; for j=1:NoSlotList if (Slot(j).Comp==1) 245 Slotopn = Slot(j).Time; for i=1:NoFlights if ((Comp(i).CANCELLED==0)&&(Comp(i).CTA>Slotopn)&&(Comp(i).SRTA<=Slotopn)) Comp(i).CTAold = Comp(i).CTA; Comp(i).CTA = Slotopn; Comp(i).CTD = Comp(i).CTA - Comp(i).ETE; Slotnw = Comp(i).SlotTime; Comp(i).SlotTime = Slotopn; Slot(j).Comp = 0; break end end while (Slotopn =Slotnw) Slotopn = Slotnw; for i=1:NoFlights if ((Comp(i).CANCELLED==0)&&(Comp(i).CTA>Slotopn)&&(Comp(i).SRTA<=Slotopn)) Comp(i).CTAold = Comp(i).CTA; Comp(i).CTA = Slotopn; Comp(i).CTD = Comp(i).CTA - Comp(i).ETE; Slotnw = Comp(i).SlotTime; Comp(i).SlotTime = Slotopn; break end end end for k=1:NoSlotList if(Slotopn==Slot(k).Time)&&(Slotopn =0) Slot(k).Comp = 1; end end end end % Calculate performance metrics at the end of compression i=0; j=0; k=0; 246 l=0; p=0; q=0; r=0; for q=1:NoAirlines for p=1:SubAirline(q).FlightCount for r=1:NoFlights if (SubAirline(q).Flight(p).FID==Comp(r).FID) SubAirline(q).Flight(p).CTAcomp = Comp(r).CTA; end end end end for i=1:NoFlights if (Comp(i).CANCELLED == 0) Comp(i).Delay = 1440*(Comp(i).CTA - Comp(i).SRTA); Comp(i).PaxDelay = Comp(i).Delay * (Comp(i).SEATS * Comp(i).InitialLF); if (Comp(i).Delay<=20) Comp(i).Emmission = Comp(i).Delay * Comp(i).Etaxi; else Comp(i).Emmission = (20*Comp(i).Etaxi)+((Comp(i).Delay-20) * Comp(i).Eapu); end else Comp(i).Delay = 0; Comp(i).Emmission = 0; Comp(i).PaxDelay = 0; for j=1:NoAirlines if (strcmp(Comp(i).AIRLINE, SubAirline(j).NAME)==1) for l=1:SubAirline(j).FlightCount SubAirline(j).Flight(l).SEATSempty = SubAirline(j).Flight(l).InitialSEATSempty; SubAirline(j).Flight(l).PAX = SubAirline(j).Flight(l).InitialPAX; end % Calculate flight delays and passenger delays Comp(i).PAXtorelocate = Comp(i).PAX; if (Comp(i).PAXtorelocate > 0) for k=1:SubAirline(j).FlightCount 247 if ((SubAirline(j).Flight(k).CANCELLED == 0) && (strcmp(Comp(i).ORIG, SubAirline(j).Flight(k).ORIG) == 1) && (SubAirline(j).Flight(k).CTAcomp >= Comp(i).SRTA) && (SubAirline(j).Flight(k).SEATSempty > 0)) if(SubAirline(j).Flight(k).SEATSempty>= Comp(i).PAXtorelocate) Comp(i).PaxDelay = (Comp(i).PaxDelay) + ((1440 * (SubAirline(j).Flight(k).CTAcomp - Comp(i).SRTA)) * Comp(i).PAXtorelocate); SubAirline(j).Flight(k).SEATSempty = SubAirline(j).Flight(k).SEATSempty - Comp(i). PAXtorelocate; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).PAX + Comp(i).PAXtorelocate; Comp(i).PAXtorelocate = 0; break else Comp(i).PaxDelay = (Comp(i).PaxDelay)+((1440*(SubAirline(j).Flight(k).CTAcomp - Comp(i).SRTA)) * SubAirline(j).Flight(k).SEATSempty); Comp(i).PAXtorelocate = Comp(i).PAXtorelocate - SubAirline(j).Flight(k).SEATSempty; SubAirline(j).Flight(k).SEATSempty = 0; SubAirline(j).Flight(k).PAX = SubAirline(j).Flight(k).SEATS; end end end end if (Comp(i).PAXtorelocate > 0) Comp(i).PaxDelay = Comp(i).PaxDelay + (1440 * (Morning - Comp(i).SRTA)) * Comp(i). PAXtorelocate; end end end end end % Calculate metrics at the end of the slot allocation % There are 2 pax values, Initial pax and Pax comp(people stranded not included) Total Flights Comp = 0; No Exempt Flights Comp = 0; No Nonexempt Flights Comp = 0; Total PAX Comp = 0; Total Delay Comp = 0; Total PaxDelay Comp = 0; Total Emmission Comp = 0; PAX Exempt Comp = 0; Delay Exempt Comp = 0; 248 PaxDelay Exempt Comp = 0; Emmission Exempt Comp = 0; PAX Nonexempt Comp = 0; Delay Nonexempt Comp = 0; PaxDelay Nonexempt Comp = 0; Emmission Nonexempt Comp = 0; PAX International Comp = 0; Delay International Comp = 0; PaxDelay International Comp = 0; Emmission International Comp = 0; PAX Domestic Comp = 0; Delay Domestic Comp = 0; PaxDelay Domestic Comp = 0; Emmission Domestic Comp = 0; Total Cancelled Comp = 0; Cancelled Exempt Comp = 0; Cancelled Nonexempt Comp = 0; Cancelled International Comp = 0; Cancelled Domestic Comp = 0; Total Delay Comp = sum([Comp.Delay]); Total PaxDelay Comp = sum([Comp.PaxDelay]); Total Emmission Comp = sum([Comp.Emmission]); i=0; for i=1:NoFlights if (Comp(i).CANCELLED == 0) Total PAX Comp = Total PAX Comp + Comp(i).PAX; else Total Cancelled Comp = Total Cancelled Comp + 1; end if(Comp(i).EXEMPT == 1) Delay Exempt Comp = Delay Exempt Comp + Comp(i).Delay; PaxDelay Exempt Comp = PaxDelay Exempt Comp + Comp(i).PaxDelay; Emmission Exempt Comp = Emmission Exempt Comp + Comp(i).Emmission; if (Comp(i).CANCELLED == 0) PAX Exempt Comp = PAX Exempt Comp + Comp(i).PAX; 249 else Cancelled Exempt Comp = Cancelled Exempt Comp+1; end else Delay Nonexempt Comp = Delay Nonexempt Comp + Comp(i).Delay; PaxDelay Nonexempt Comp = PaxDelay Nonexempt Comp + Comp(i).PaxDelay; Emmission Nonexempt Comp = Emmission Nonexempt Comp + Comp(i).Emmission; if (Comp(i).CANCELLED == 0) PAX Nonexempt Comp = PAX Nonexempt Comp + Comp(i).PAX; else Cancelled Nonexempt Comp = Cancelled Nonexempt Comp + 1; end end if(strncmp(Comp(i).INT,’A’, 1)==1) Delay International Comp = Delay International Comp + Comp(i).Delay; PaxDelay International Comp = PaxDelay International Comp + Comp(i).PaxDelay; Emmission International Comp = Emmission International Comp + Comp(i).Emmission; if (Comp(i).CANCELLED == 0) PAX International Comp = PAX International Comp + Comp(i).PAX; else Cancelled International Comp = Cancelled International Comp + 1; end else Delay Domestic Comp = Delay Domestic Comp + Comp(i).Delay; PaxDelay Domestic Comp = PaxDelay Domestic Comp + Comp(i).PaxDelay; Emmission Domestic Comp = Emmission Domestic Comp + Comp(i).Emmission; if (Comp(i).CANCELLED == 0) PAX Domestic Comp = PAX Domestic Comp + Comp(i).PAX; else Cancelled Domestic Comp = Cancelled Domestic Comp + 1; end end end Total Flights Comp = NoFlights - Total Cancelled Comp; No Exempt Flights Comp = No Exempt Flights - Cancelled Exempt Comp; No Nonexempt Flights Comp = No Nonexempt Flights - Cancelled Nonexempt Comp; 250 No International Flights Comp = No International Flights - Cancelled International Comp; No Domestic Flights Comp = No Domestic Flights - Cancelled Domestic Comp; % Calculate performance metrics by Airline for Compression % Different from Initial Allocation, we are counting cancellations. Airline Comp = zeros(NoAirlines,40); i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if(strcmp(Comp(j).AIRLINE, a(i))== 1) Airline Comp(i,1)= Airline Comp(i,1)+1; Airline Comp(i,2)= Airline Comp(i,2)+ Comp(j).InitialPAX; Airline Comp(i,3)= Airline Comp(i,3)+ Comp(j).Delay; Airline Comp(i,4)= Airline Comp(i,4)+ Comp(j).PaxDelay; Airline Comp(i,5)= Airline Comp(i,5)+ Comp(j).Emmission; Airline Comp(i,6)= Airline Comp(i,6)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Comp(i,7)= Airline Comp(i,7)+ Comp(j).PAX; end if (Comp(j).Subbed==1) Airline Comp(i,8)= Airline Comp(i,8) + 1; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1) && (Comp(j).EXEMPT==1)) Airline Comp(i,9)= Airline Comp(i,9)+1; Airline Comp(i,10)= Airline Comp(i,10)+ Comp(j).InitialPAX; Airline Comp(i,11)= Airline Comp(i,11)+ Comp(j).Delay; Airline Comp(i,12)= Airline Comp(i,12)+ Comp(j).PaxDelay; Airline Comp(i,13)= Airline Comp(i,13)+ Comp(j).Emmission; 251 Airline Comp(i,14)= Airline Comp(i,14)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Comp(i,15)= Airline Comp(i,15)+ Comp(j).PAX; end if (Comp(j).Subbed==1) Airline Comp(i,16)= Airline Comp(i,16) + 1; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1) && (Comp(j).EXEMPT==0)) Airline Comp(i,17)= Airline Comp(i,17)+1; Airline Comp(i,18)= Airline Comp(i,18)+ Comp(j).InitialPAX; Airline Comp(i,19)= Airline Comp(i,19)+ Comp(j).Delay; Airline Comp(i,20)= Airline Comp(i,20)+ Comp(j).PaxDelay; Airline Comp(i,21)= Airline Comp(i,21)+ Comp(j).Emmission; Airline Comp(i,22)= Airline Comp(i,22)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Comp(i,23)= Airline Comp(i,23)+ Comp(j).PAX; end if (Comp(j).Subbed==1) Airline Comp(i,24)= Airline Comp(i,24) + 1; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1)&& (strcmp(Comp(j).INT,’A’)==1)) Airline Comp(i,25)= Airline Comp(i,25)+1; 252 Airline Comp(i,26)= Airline Comp(i,26)+ Comp(j).InitialPAX; Airline Comp(i,27)= Airline Comp(i,27)+ Comp(j).Delay; Airline Comp(i,28)= Airline Comp(i,28)+ Comp(j).PaxDelay; Airline Comp(i,29)= Airline Comp(i,29)+ Comp(j).Emmission; Airline Comp(i,30)= Airline Comp(i,30)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Comp(i,31)= Airline Comp(i,31)+ Comp(j).PAX; end if (Comp(j).Subbed==1) Airline Comp(i,32)= Airline Comp(i,32) + 1; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1)&& (strcmp(Comp(j).INT,’U’)==1)) Airline Comp(i,33)= Airline Comp(i,33)+1; Airline Comp(i,34)= Airline Comp(i,34)+ Comp(j).InitialPAX; Airline Comp(i,35)= Airline Comp(i,35)+ Comp(j).Delay; Airline Comp(i,36)= Airline Comp(i,36)+ Comp(j).PaxDelay; Airline Comp(i,37)= Airline Comp(i,37)+ Comp(j).Emmission; Airline Comp(i,38)= Airline Comp(i,38)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Comp(i,39)= Airline Comp(i,39)+ Comp(j).PAX; end if (Comp(j).Subbed==1) Airline Comp(i,40)= Airline Comp(i,40) + 1; end end end end % Calculate performance metrics by Origin for Compression % Origin distance list 253 OrigDist = zeros(NoOrigins,1); i=0; for i=1:NoOrigins for j=1:NoFlights if (strcmp(Comp(j).ORIG,b(i))==1) OrigDist(i,1) = Comp(j).GCD; break end end end Origin Comp = zeros(NoOrigins,40); i=0; j=0; for i=1:NoOrigins for j=1:NoFlights % All Origins if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Comp(i,1)= Origin Comp(i,1)+1; Origin Comp(i,2)= Origin Comp(i,2)+ Comp(j).InitialPAX; Origin Comp(i,3)= Origin Comp(i,3)+ Comp(j).Delay; Origin Comp(i,4)= Origin Comp(i,4)+ Comp(j).PaxDelay; Origin Comp(i,5)= Origin Comp(i,5)+ Comp(j).Emmission; Origin Comp(i,6)= Origin Comp(i,6)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Comp(i,7)= Origin Comp(i,7)+ Comp(j).PAX; Origin Comp(i,36)= Origin Comp(i,36)+ Comp(j).SEATS; end end % Exempt Information if((Comp(j).EXEMPT==1)) if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Comp(i,8)= Origin Comp(i,8)+1; Origin Comp(i,9)= Origin Comp(i,9)+ Comp(j).InitialPAX; Origin Comp(i,10)= Origin Comp(i,10)+ Comp(j).Delay; Origin Comp(i,11)= Origin Comp(i,11)+ Comp(j).PaxDelay; 254 Origin Comp(i,12)= Origin Comp(i,12)+ Comp(j).Emmission; Origin Comp(i,13)= Origin Comp(i,13)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Comp(i,14)= Origin Comp(i,14)+Comp(j).PAX; Origin Comp(i,37)= Origin Comp(i,37)+ Comp(j).SEATS; end end end %Nonexempt information if((Comp(j).EXEMPT==0)) if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Comp(i,15)= Origin Comp(i,15)+1; Origin Comp(i,16)= Origin Comp(i,16)+ Comp(j).InitialPAX; Origin Comp(i,17)= Origin Comp(i,17)+ Comp(j).Delay; Origin Comp(i,18)= Origin Comp(i,18)+ Comp(j).PaxDelay; Origin Comp(i,19)= Origin Comp(i,19)+ Comp(j).Emmission; Origin Comp(i,20)= Origin Comp(i,20)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Comp(i,21)= Origin Comp(i,21)+Comp(j).PAX; Origin Comp(i,38)= Origin Comp(i,38)+ Comp(j).SEATS; end end end % International information if((strcmp(Comp(j).INT,’A’)==1) && (strcmp(Comp(j).ORIG, b(i))== 1)) Origin Comp(i,22)= Origin Comp(i,22)+1; Origin Comp(i,23)= Origin Comp(i,23)+ Comp(j).InitialPAX; Origin Comp(i,24)= Origin Comp(i,24)+ Comp(j).Delay; Origin Comp(i,25)= Origin Comp(i,25)+ Comp(j).PaxDelay; Origin Comp(i,26)= Origin Comp(i,26)+ Comp(j).Emmission; Origin Comp(i,27)= Origin Comp(i,27)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Comp(i,28)= Origin Comp(i,28)+Comp(j).PAX; Origin Comp(i,39)= Origin Comp(i,39)+ Comp(j).SEATS; end 255 end % Domestic information if((strcmp(Comp(j).INT,’U’)==1) && (strcmp(Comp(j).ORIG, b(i))== 1)) Origin Comp(i,29)= Origin Comp(i,29)+1; Origin Comp(i,30)= Origin Comp(i,30)+ Comp(j).InitialPAX; Origin Comp(i,31)= Origin Comp(i,31)+ Comp(j).Delay; Origin Comp(i,32)= Origin Comp(i,32)+ Comp(j).PaxDelay; Origin Comp(i,33)= Origin Comp(i,33)+ Comp(j).Emmission; Origin Comp(i,34)= Origin Comp(i,34)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Comp(i,35)= Origin Comp(i,35)+Comp(j).PAX; Origin Comp(i,40)= Origin Comp(i,40)+ Comp(j).SEATS; end end end end % Form Origins vs. Airlines i=0; j=0; k=0; OriginAirline = zeros(NoOrigins,NoAirlines); for k=1:NoFlights for i=1:NoOrigins for j=1:NoAirlines if((strcmp(Comp(k).ORIG, b(i))== 1)&&(strcmp(Comp(k).AIRLINE, a(j))== 1)) OriginAirline(i,j)= OriginAirline(i,j)+1; end end end end % Metric calculation after Substitution Total Subs = 0; Total Delay Sub = 0; Total PaxDelay Sub = 0; Total Emmission Sub = 0; Delay Exempt Sub = 0; 256 PaxDelay Exempt Sub = 0; Emmission Exempt Sub = 0; Delay Nonexempt Sub = 0; PaxDelay Nonexempt Sub = 0; Emmission Nonexempt Sub = 0; Delay International Sub = 0; PaxDelay International Sub = 0; Emmission International Sub = 0; Delay Domestic Sub = 0; PaxDelay Domestic Sub = 0; Emmission Domestic Sub = 0; Total Subs = sum([Comp.Subbed]); Total Delay Sub = sum([Comp.SubDelay]); Total PaxDelay Sub = sum([Comp.SubPaxDelay]); Total Emmission Sub = sum([Comp.SubEmmission]); i=0; for i=1:NoFlights if(Comp(i).EXEMPT == 1) Delay Exempt Sub= Delay Exempt Sub + Comp(i).SubDelay; PaxDelay Exempt Sub = PaxDelay Exempt Sub + Comp(i).SubPaxDelay; Emmission Exempt Sub = Emmission Exempt Sub + Comp(i).SubEmmission; else Delay Nonexempt Sub = Delay Nonexempt Sub + Comp(i).SubDelay; PaxDelay Nonexempt Sub = PaxDelay Nonexempt Sub + Comp(i).SubPaxDelay; Emmission Nonexempt Sub = Emmission Nonexempt Sub + Comp(i).SubEmmission; end if(strncmp(Comp(i).INT,’A’, 1)==1) Delay International Sub = Delay International Sub + Comp(i).SubDelay; PaxDelay International Sub = PaxDelay International Sub + Comp(i).SubPaxDelay; Emmission International Sub = Emmission International Sub + Comp(i).SubEmmission; else Delay Domestic Sub = Delay Domestic Sub + Comp(i).SubDelay; PaxDelay Domestic Sub = PaxDelay Domestic Sub + Comp(i).SubPaxDelay; Emmission Domestic Sub = Emmission Domestic Sub + Comp(i).SubEmmission; end 257 end Airline Sub = zeros(NoAirlines,35); i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if(strcmp(Comp(j).AIRLINE, a(i))== 1) Airline Sub(i,1)= Airline Sub(i,1)+1; Airline Sub(i,2)= Airline Sub(i,2)+ Comp(j).InitialPAX; Airline Sub(i,3)= Airline Sub(i,3)+ Comp(j).SubDelay; Airline Sub(i,4)= Airline Sub(i,4)+ Comp(j).SubPaxDelay; Airline Sub(i,5)= Airline Sub(i,5)+ Comp(j).SubEmmission; Airline Sub(i,6)= Airline Sub(i,6)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Sub(i,7)= Airline Sub(i,7)+ Comp(j).PAX; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1) && (Comp(j).EXEMPT==1)) Airline Sub(i,8)= Airline Sub(i,8)+1; Airline Sub(i,9)= Airline Sub(i,9)+ Comp(j).InitialPAX; Airline Sub(i,10)= Airline Sub(i,10)+ Comp(j).SubDelay; Airline Sub(i,11)= Airline Sub(i,11)+ Comp(j).SubPaxDelay; Airline Sub(i,12)= Airline Sub(i,12)+ Comp(j).SubEmmission; Airline Sub(i,13)= Airline Sub(i,13)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Sub(i,14)= Airline Sub(i,14)+ Comp(j).PAX; end end end end 258 i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1) && (Comp(j).EXEMPT==0)) Airline Sub(i,15)= Airline Sub(i,15)+1; Airline Sub(i,16)= Airline Sub(i,16)+ Comp(j).InitialPAX; Airline Sub(i,17)= Airline Sub(i,17)+ Comp(j).SubDelay; Airline Sub(i,18)= Airline Sub(i,18)+ Comp(j).SubPaxDelay; Airline Sub(i,19)= Airline Sub(i,19)+ Comp(j).SubEmmission; Airline Sub(i,20)= Airline Sub(i,20)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Sub(i,21)= Airline Sub(i,21)+ Comp(j).PAX; end end end end i=0; j=0; for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1)&& (strcmp(Comp(j).INT,’A’)==1)) Airline Sub(i,22)= Airline Sub(i,22)+1; Airline Sub(i,23)= Airline Sub(i,23)+ Comp(j).InitialPAX; Airline Sub(i,24)= Airline Sub(i,24)+ Comp(j).SubDelay; Airline Sub(i,25)= Airline Sub(i,25)+ Comp(j).SubPaxDelay; Airline Sub(i,26)= Airline Sub(i,26)+ Comp(j).SubEmmission; Airline Sub(i,27)= Airline Sub(i,27)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Sub(i,28)= Airline Sub(i,28)+ Comp(j).PAX; end end end end i=0; j=0; 259 for i=1:NoAirlines for j=1:NoFlights if((strcmp(Comp(j).AIRLINE, a(i))== 1)&& (strcmp(Comp(j).INT,’U’)==1)) Airline Sub(i,29)= Airline Sub(i,29)+1; Airline Sub(i,30)= Airline Sub(i,30)+ Comp(j).InitialPAX; Airline Sub(i,31)= Airline Sub(i,31)+ Comp(j).SubDelay; Airline Sub(i,32)= Airline Sub(i,32)+ Comp(j).SubPaxDelay; Airline Sub(i,33)= Airline Sub(i,33)+ Comp(j).SubEmmission; Airline Sub(i,34)= Airline Sub(i,34)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Airline Sub(i,35)= Airline Sub(i,35)+ Comp(j).PAX; end end end end % Calculate metrics by origin (matrix Origins vs. Flights) % Origin distance list OrigDist = zeros(NoOrigins,1); i=0; for i=1:NoOrigins for j=1:NoFlights if (strcmp(Comp(j).ORIG,b(i))==1) OrigDist(i,1) = Comp(j).GCD; break end end end Origin Sub = zeros(NoOrigins,35); i=0; j=0; for i=1:NoOrigins for j=1:NoFlights % All Origins if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Sub(i,1)= Origin Sub(i,1)+1; Origin Sub(i,2)= Origin Sub(i,2)+ Comp(j).InitialPAX; 260 Origin Sub(i,3)= Origin Sub(i,3)+ Comp(j).SubDelay; Origin Sub(i,4)= Origin Sub(i,4)+ Comp(j).SubPaxDelay; Origin Sub(i,5)= Origin Sub(i,5)+ Comp(j).SubEmmission; Origin Sub(i,6)= Origin Sub(i,6)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Sub(i,7)= Origin Sub(i,7)+Comp(j).PAX; end end % Exempt Information if((Comp(j).EXEMPT==1)) if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Sub(i,8)= Origin Sub(i,8)+1; Origin Sub(i,9)= Origin Sub(i,9)+ Comp(j).InitialPAX; Origin Sub(i,10)= Origin Sub(i,10)+ Comp(j).SubDelay; Origin Sub(i,11)= Origin Sub(i,11)+ Comp(j).SubPaxDelay; Origin Sub(i,12)= Origin Sub(i,12)+ Comp(j).SubEmmission; Origin Sub(i,13)= Origin Sub(i,13)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Sub(i,14)= Origin Sub(i,14)+Comp(j).PAX; end end end %Nonexempt information if((Comp(j).EXEMPT==0)) if(strcmp(Comp(j).ORIG, b(i))== 1) Origin Sub(i,15)= Origin Sub(i,15)+1; Origin Sub(i,16)= Origin Sub(i,16)+ Comp(j).InitialPAX; Origin Sub(i,17)= Origin Sub(i,17)+ Comp(j).SubDelay; Origin Sub(i,18)= Origin Sub(i,18)+ Comp(j).SubPaxDelay; Origin Sub(i,19)= Origin Sub(i,19)+ Comp(j).SubEmmission; Origin Sub(i,20)= Origin Sub(i,20)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Sub(i,21)= Origin Sub(i,21)+Comp(j).PAX; end end 261 end % International information if((strcmp(Comp(j).INT,’A’)==1) && (strcmp(Comp(j).ORIG, b(i))== 1)) Origin Sub(i,22)= Origin Sub(i,22)+1; Origin Sub(i,23)= Origin Sub(i,23)+ Comp(j).InitialPAX; Origin Sub(i,24)= Origin Sub(i,24)+ Comp(j).SubDelay; Origin Sub(i,25)= Origin Sub(i,25)+ Comp(j).SubPaxDelay; Origin Sub(i,26)= Origin Sub(i,26)+ Comp(j).SubEmmission; Origin Sub(i,27)= Origin Sub(i,27)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Sub(i,28)= Origin Sub(i,28)+Comp(j).PAX; end end % Domestic information if((strcmp(Comp(j).INT,’U’)==1) && (strcmp(Comp(j).ORIG, b(i))== 1)) Origin Sub(i,29)= Origin Sub(i,29)+1; Origin Sub(i,30)= Origin Sub(i,30)+ Comp(j).InitialPAX; Origin Sub(i,31)= Origin Sub(i,31)+ Comp(j).SubDelay; Origin Sub(i,32)= Origin Sub(i,32)+ Comp(j).SubPaxDelay; Origin Sub(i,33)= Origin Sub(i,33)+ Comp(j).SubEmmission; Origin Sub(i,34)= Origin Sub(i,34)+ Comp(j).CANCELLED; if (Comp(j).CANCELLED==0) Origin Sub(i,35)= Origin Sub(i,35)+Comp(j).PAX; end end end end toc GDPParam(t).AveAAR= 0; GDPParam(t).MinAAR = 0; GDPParam(t).MaxAAR = 0; GDPParam(t).Flights = NoFlights; GDPParam(t).Pax = Total PAX; GDPParam(t).Cancellations = Total Cancelled Comp; GDPParam(t).PaxTransported = Total PAX Comp; 262 GDPParam(t).Subs = Total Subs; GDPParam(t).TotalFlightDelay Initial = Total Delay; GDPParam(t).TotalFlightDelay Sub = Total Delay Sub; GDPParam(t).TotalFlightDelay Comp = Total Delay Comp; GDPParam(t).TotalPaxDelay Initial = Total PaxDelay; GDPParam(t).TotalPaxDelay Sub = Total PaxDelay Sub; GDPParam(t).TotalPaxDelay Comp = Total PaxDelay Comp; GDPParam(t).TotalEmmission Initial = Total Emmission; GDPParam(t).TotalEmmission Sub = Total Emmission Sub; GDPParam(t).TotalEmmission Comp = Total Emmission Comp; GDPParam(t).Airlines = NoAirlines; GDPParam(t).Origins = NoOrigins; GDPParam(t).ExemptFlights = No Exempt Flights; GDPParam(t).ExemptPax = PAX Exempt; GDPParam(t).ExemptCancellations = Cancelled Exempt Comp; GDPParam(t).ExemptPaxTransported = PAX Exempt Comp; GDPParam(t).Delay Exempt = Delay Exempt; GDPParam(t).Delay Exempt Sub = Delay Exempt Sub; GDPParam(t).Delay Exempt Comp = Delay Exempt Comp; GDPParam(t).PaxDelay Exempt = PaxDelay Exempt; GDPParam(t).PaxDelay Exempt Sub = PaxDelay Exempt Sub; GDPParam(t).PaxDelay Exempt Comp = PaxDelay Exempt Comp; GDPParam(t).Emmission Exempt = Emmission Exempt; GDPParam(t).Emmission Exempt Sub = Emmission Exempt Sub; GDPParam(t).Emmission Exempt Comp = Emmission Exempt Comp; GDPParam(t).NonexemptFlights = No Nonexempt Flights; GDPParam(t).NonexemptPax = PAX Nonexempt; GDPParam(t).NonexemptCancellations = Cancelled Nonexempt Comp; GDPParam(t).NonexemptPaxTransported = PAX Nonexempt Comp; GDPParam(t).Delay Nonexempt = Delay Nonexempt; GDPParam(t).Delay Nonexempt Sub = Delay Nonexempt Sub; GDPParam(t).Delay Nonexempt Comp = Delay Nonexempt Comp; GDPParam(t).PaxDelay Nonexempt = PaxDelay Nonexempt; GDPParam(t).PaxDelay Nonexempt Sub = PaxDelay Nonexempt Sub; 263 GDPParam(t).PaxDelay Nonexempt Comp = PaxDelay Nonexempt Comp; GDPParam(t).Emmission Nonexempt = Emmission Nonexempt; GDPParam(t).Emmission Nonexempt Sub = Emmission Nonexempt Sub; GDPParam(t).Emmission Nonexempt Comp = Emmission Nonexempt Comp; GDPParam(t).IntFlights = No International Flights; GDPParam(t).IntPax = PAX International; GDPParam(t).IntCancellations = Cancelled International Comp; GDPParam(t).IntPaxTransported = PAX International Comp; GDPParam(t).Delay International = Delay International; GDPParam(t).Delay International Sub = Delay International Sub; GDPParam(t).Delay International Comp = Delay International Comp; GDPParam(t).PaxDelay International = PaxDelay International; GDPParam(t).PaxDelay International Sub = PaxDelay International Sub; GDPParam(t).PaxDelay International Comp = PaxDelay International Comp; GDPParam(t).Emmission International = Emmission International; GDPParam(t).Emmission International Sub = Emmission International Sub; GDPParam(t).Emmission International Comp = Emmission International Comp; GDPParam(t).DomesticFlights = No Domestic Flights; GDPParam(t).DomesticPax = PAX Domestic; GDPParam(t).DomesticCancellations = Cancelled Domestic Comp; GDPParam(t).DomesticPaxTransported = PAX Domestic Comp; GDPParam(t).Delay Domestic = Delay Domestic; GDPParam(t).Delay Domestic Sub = Delay Domestic Sub; GDPParam(t).Delay Domestic Comp = Delay Domestic Comp; GDPParam(t).PaxDelay Domestic = PaxDelay Domestic; GDPParam(t).PaxDelay Domestic Sub = PaxDelay Domestic Sub; GDPParam(t).PaxDelay Domestic Comp = PaxDelay Domestic Comp; GDPParam(t).Emmission Domestic = Emmission Domestic; GDPParam(t).Emmission Domestic Sub = Emmission Domestic Sub; GDPParam(t).Emmission Domestic Comp = Emmission Domestic Comp; i=0; j=0; x=0; aa=a’; i=0; 264 for i=1:NoAirlines aanew(i).NAME=aa(i,1); aanew(i).MATCH=0; end j=0; if (t==1) for j=1:NoAirlines AirlineAll(j).NAME = ”; AirlineAll(j).GDP = 0; AirlineAll(j).Subs = 0; AirlineAll(j).Flights = 0; AirlineAll(j).Pax = 0; AirlineAll(j).Cancelled = 0; AirlineAll(j).PaxTransferred = 0; AirlineAll(j).Delay Initial = 0; AirlineAll(j).Delay Sub = 0; AirlineAll(j).Delay Comp = 0; AirlineAll(j).PaxDelay Initial = 0; AirlineAll(j).PaxDelay Sub = 0; AirlineAll(j).PaxDelay Comp = 0; AirlineAll(j).Emmission Initial = 0; AirlineAll(j).Emmission Sub = 0; AirlineAll(j).Emmission Comp = 0; AirlineAll(j).ExemptSubs = 0; AirlineAll(j).ExemptFlights = 0; AirlineAll(j).ExemptPax = 0; AirlineAll(j).ExemptCancelled = 0; AirlineAll(j).ExemptPaxTransferred = 0; AirlineAll(j).ExemptDelay Initial = 0; AirlineAll(j).ExemptDelay Sub = 0; AirlineAll(j).ExemptDelay Comp = 0; AirlineAll(j).ExemptPaxDelay Initial = 0; AirlineAll(j).ExemptPaxDelay Sub = 0; AirlineAll(j).ExemptPaxDelay Comp = 0; AirlineAll(j).ExemptEmmission Initial = 0; 265 AirlineAll(j).ExemptEmmission Sub = 0; AirlineAll(j).ExemptEmmission Comp = 0; AirlineAll(j).NonexemptSubs = 0; AirlineAll(j).NonexemptFlights = 0; AirlineAll(j).NonexemptPax = 0; AirlineAll(j).NonexemptCancelled = 0; AirlineAll(j).NonexemptPaxTransferred = 0; AirlineAll(j).NonexemptDelay Initial = 0; AirlineAll(j).NonexemptDelay Sub = 0; AirlineAll(j).NonexemptDelay Comp = 0; AirlineAll(j).NonexemptPaxDelay Initial = 0; AirlineAll(j).NonexemptPaxDelay Sub = 0; AirlineAll(j).NonexemptPaxDelay Comp = 0; AirlineAll(j).NonexemptEmmission Initial = 0; AirlineAll(j).NonexemptEmmission Sub = 0; AirlineAll(j).NonexemptEmmission Comp =0; AirlineAll(j).IntSubs = 0; AirlineAll(j).IntFlights = 0; AirlineAll(j).IntPax = 0; AirlineAll(j).IntCancelled = 0; AirlineAll(j).IntPaxTransferred = 0; AirlineAll(j).IntDelay Initial = 0; AirlineAll(j).IntDelay Sub = 0; AirlineAll(j).IntDelay Comp = 0; AirlineAll(j).IntPaxDelay Initial = 0; AirlineAll(j).IntPaxDelay Sub = 0; AirlineAll(j).IntPaxDelay Comp = 0; AirlineAll(j).IntEmmission Initial = 0; AirlineAll(j).IntEmmission Sub = 0; AirlineAll(j).IntEmmission Comp = 0; AirlineAll(j).DomesticSubs = 0; AirlineAll(j).DomesticFlights = 0; AirlineAll(j).DomesticPax = 0; AirlineAll(j).DomesticCancelled = 0; 266 AirlineAll(j).DomesticPaxTransferred = 0; AirlineAll(j).DomesticDelay Initial = 0; AirlineAll(j).DomesticDelay Sub = 0; AirlineAll(j).DomesticDelay Comp = 0; AirlineAll(j).DomesticPaxDelay Initial = 0; AirlineAll(j).DomesticPaxDelay Sub = 0; AirlineAll(j).DomesticPaxDelay Comp = 0; AirlineAll(j).DomesticEmmission Initial = 0; AirlineAll(j).DomesticEmmission Sub = 0; AirlineAll(j).DomesticEmmission Comp = 0; end for j=1:NoAirlines AirlineAll(j).NAME = aa(j,1); AirlineAll(j).GDP = AirlineAll(j).GDP + 1; AirlineAll(j).Subs = AirlineAll(j).Subs + Airline Comp(j,8); AirlineAll(j).Flights = AirlineAll(j).Flights + Airline(j,1); AirlineAll(j).Pax = AirlineAll(j).Pax + Airline(j,2); AirlineAll(j).Cancelled = AirlineAll(j).Cancelled + Airline Comp(j,6); AirlineAll(j).PaxTransferred = AirlineAll(j).PaxTransferred + Airline Comp(j,7); AirlineAll(j).Delay Initial = AirlineAll(j).Delay Initial + Airline(j,3); AirlineAll(j).Delay Sub = AirlineAll(j).Delay Sub + Airline Sub(j,3); AirlineAll(j).Delay Comp = AirlineAll(j).Delay Comp + Airline Comp(j,3); AirlineAll(j).PaxDelay Initial = AirlineAll(j).PaxDelay Initial + Airline(j,4); AirlineAll(j).PaxDelay Sub = AirlineAll(j).PaxDelay Sub + Airline Sub(j,4); AirlineAll(j).PaxDelay Comp = AirlineAll(j).PaxDelay Comp + Airline Comp(j,4); AirlineAll(j).Emmission Initial = AirlineAll(j).Emmission Initial + Airline(j,5); AirlineAll(j).Emmission Sub = AirlineAll(j).Emmission Sub + Airline Sub(j,5); AirlineAll(j).Emmission Comp = AirlineAll(j).Emmission Comp + Airline Comp(j,5); AirlineAll(j).ExemptSubs = AirlineAll(j).ExemptSubs + Airline Comp(j,16); AirlineAll(j).ExemptFlights = AirlineAll(j).ExemptFlights + Airline(j,6); AirlineAll(j).ExemptPax = AirlineAll(j).ExemptPax + Airline(j,7); AirlineAll(j).ExemptCancelled = AirlineAll(j).ExemptCancelled + Airline Comp(j,14); AirlineAll(j).ExemptPaxTransferred = AirlineAll(j).ExemptPaxTransferred + Airline Comp (j,15); AirlineAll(j).ExemptDelay Initial = AirlineAll(j).ExemptDelay Initial + Airline(j,8); AirlineAll(j).ExemptDelay Sub = AirlineAll(j).ExemptDelay Sub + Airline Sub(j,10); 267 AirlineAll(j).ExemptDelay Comp = AirlineAll(j).ExemptDelay Comp + Airline Comp(j,11); AirlineAll(j).ExemptPaxDelay Initial = AirlineAll(j).ExemptPaxDelay Initial + Airline(j,9); AirlineAll(j).ExemptPaxDelay Sub = AirlineAll(j).ExemptPaxDelay Sub + Airline Sub(j,11); AirlineAll(j).ExemptPaxDelay Comp = AirlineAll(j).ExemptPaxDelay Comp + Airline Comp (j,12); AirlineAll(j).ExemptEmmission Initial = AirlineAll(j).ExemptEmmission Initial + Airline(j,10); AirlineAll(j).ExemptEmmission Sub = AirlineAll(j).ExemptEmmission Sub + Airline Sub(j,12); AirlineAll(j).ExemptEmmission Comp = AirlineAll(j).ExemptEmmission Comp + Airline Comp(j,13); AirlineAll(j).NonexemptSubs = AirlineAll(j).NonexemptSubs + Airline Comp(j,24); AirlineAll(j).NonexemptFlights = AirlineAll(j).NonexemptFlights + Airline(j,11); AirlineAll(j).NonexemptPax = AirlineAll(j).NonexemptPax + Airline(j,12); AirlineAll(j).NonexemptCancelled = AirlineAll(j).NonexemptCancelled + Airline Comp(j,22); AirlineAll(j).NonexemptPaxTransferred = AirlineAll(j).NonexemptPaxTransferred + Airline Comp(j,23); AirlineAll(j).NonexemptDelay Initial = AirlineAll(j).NonexemptDelay Initial + Airline(j,13); AirlineAll(j).NonexemptDelay Sub = AirlineAll(j).NonexemptDelay Sub + Airline Sub(j,17); AirlineAll(j).NonexemptDelay Comp = AirlineAll(j).NonexemptDelay Comp + Airline Comp (j,19); AirlineAll(j).NonexemptPaxDelay Initial = AirlineAll(j).NonexemptPaxDelay Initial + Airline(j,14); AirlineAll(j).NonexemptPaxDelay Sub = AirlineAll(j).NonexemptPaxDelay Sub + Airline Sub(j,18); AirlineAll(j).NonexemptPaxDelay Comp = AirlineAll(j).NonexemptPaxDelay Comp + Airline Comp(j,20); AirlineAll(j).NonexemptEmmission Initial = AirlineAll(j).NonexemptEmmission Initial + Airline(j,15); AirlineAll(j).NonexemptEmmission Sub = AirlineAll(j).NonexemptEmmission Sub + Airline Sub(j,19); AirlineAll(j).NonexemptEmmission Comp = AirlineAll(j).NonexemptEmmission Comp + Airline Comp(j,21); AirlineAll(j).IntSubs = AirlineAll(j).IntSubs + Airline Comp(j,32); AirlineAll(j).IntFlights = AirlineAll(j).IntFlights + Airline(j,16); AirlineAll(j).IntPax = AirlineAll(j).IntPax + Airline(j,17); AirlineAll(j).IntCancelled = AirlineAll(j).IntCancelled + Airline Comp(j,30); AirlineAll(j).IntPaxTransferred = AirlineAll(j).IntPaxTransferred + Airline Comp(j,31); AirlineAll(j).IntDelay Initial = AirlineAll(j).IntDelay Initial + Airline(j,18); AirlineAll(j).IntDelay Sub = AirlineAll(j).IntDelay Sub + Airline Sub(j,24); AirlineAll(j).IntDelay Comp = AirlineAll(j).IntDelay Comp + Airline Comp(j,27); AirlineAll(j).IntPaxDelay Initial = AirlineAll(j).IntPaxDelay Initial + Airline(j,19); AirlineAll(j).IntPaxDelay Sub = AirlineAll(j).IntPaxDelay Sub + Airline Sub(j,25); AirlineAll(j).IntPaxDelay Comp = AirlineAll(j).IntPaxDelay Comp + Airline Comp(j,28); AirlineAll(j).IntEmmission Initial = AirlineAll(j).IntEmmission Initial + Airline(j,20); AirlineAll(j).IntEmmission Sub = AirlineAll(j).IntEmmission Sub + Airline Sub(j,26); 268 AirlineAll(j).IntEmmission Comp = AirlineAll(j).IntEmmission Comp + Airline Comp(j,29); AirlineAll(j).DomesticSubs = AirlineAll(j).DomesticSubs + Airline Comp(j,40); AirlineAll(j).DomesticFlights = AirlineAll(j).DomesticFlights + Airline(j,21); AirlineAll(j).DomesticPax = AirlineAll(j).DomesticPax + Airline(j,22); AirlineAll(j).DomesticCancelled = AirlineAll(j).DomesticCancelled + Airline Comp(j,38); AirlineAll(j).DomesticPaxTransferred = AirlineAll(j).DomesticPaxTransferred + Airline Comp(j,39); AirlineAll(j).DomesticDelay Initial = AirlineAll(j).DomesticDelay Initial + Airline(j,23); AirlineAll(j).DomesticDelay Sub = AirlineAll(j).DomesticDelay Sub + Airline Sub(j,31); AirlineAll(j).DomesticDelay Comp = AirlineAll(j).DomesticDelay Comp + Airline Comp(j,35); AirlineAll(j).DomesticPaxDelay Initial = AirlineAll(j).DomesticPaxDelay Initial + Airline(j,24); AirlineAll(j).DomesticPaxDelay Sub = AirlineAll(j).DomesticPaxDelay Sub + Airline Sub(j,32); AirlineAll(j).DomesticPaxDelay Comp = AirlineAll(j).DomesticPaxDelay Comp + Airline Comp(j,36); AirlineAll(j).DomesticEmmission Initial = AirlineAll(j).DomesticEmmission Initial + Airline(j,25); AirlineAll(j).DomesticEmmission Sub = AirlineAll(j).DomesticEmmission Sub + Airline Sub(j,33); AirlineAll(j).DomesticEmmission Comp = AirlineAll(j).DomesticEmmission Comp + Airline Comp(j,37); end AirlineCounter = j; elseif(t>1) for x=1:NoAirlines for i=1:AirlineCounter if (strcmp(aa(x,1),AirlineAll(i).NAME)==1) aanew(x).MATCH=1; AirlineAll(i).GDP = AirlineAll(i).GDP + 1; AirlineAll(i).Subs = AirlineAll(i).Subs + Airline Comp(x,8); AirlineAll(i).Flights = AirlineAll(i).Flights + Airline(x,1); AirlineAll(i).Pax = AirlineAll(i).Pax + Airline(x,2); AirlineAll(i).Cancelled = AirlineAll(i).Cancelled + Airline Comp(x,6); AirlineAll(i).PaxTransferred = AirlineAll(i).PaxTransferred + Airline Comp(x,7); AirlineAll(i).Delay Initial = AirlineAll(i).Delay Initial + Airline(x,3); AirlineAll(i).Delay Sub = AirlineAll(i).Delay Sub + Airline Sub(x,3); AirlineAll(i).Delay Comp = AirlineAll(i).Delay Comp + Airline Comp(x,3); AirlineAll(i).PaxDelay Initial = AirlineAll(i).PaxDelay Initial + Airline(x,4); AirlineAll(i).PaxDelay Sub = AirlineAll(i).PaxDelay Sub + Airline Sub(x,4); AirlineAll(i).PaxDelay Comp = AirlineAll(i).PaxDelay Comp + Airline Comp(x,4); AirlineAll(i).Emmission Initial = AirlineAll(i).Emmission Initial + Airline(x,5); 269 AirlineAll(i).Emmission Sub = AirlineAll(i).Emmission Sub + Airline Sub(x,5); AirlineAll(i).Emmission Comp = AirlineAll(i).Emmission Comp + Airline Comp(x,5); AirlineAll(i).ExemptSubs = AirlineAll(i).ExemptSubs + Airline Comp(x,16); AirlineAll(i).ExemptFlights = AirlineAll(i).ExemptFlights + Airline(x,6); AirlineAll(i).ExemptPax = AirlineAll(i).ExemptPax + Airline(x,7); AirlineAll(i).ExemptCancelled = AirlineAll(i).ExemptCancelled + Airline Comp(x,14); AirlineAll(i).ExemptPaxTransferred = AirlineAll(i).ExemptPaxTransferred + Airline Comp(x,15); AirlineAll(i).ExemptDelay Initial = AirlineAll(i).ExemptDelay Initial + Airline(x,8); AirlineAll(i).ExemptDelay Sub = AirlineAll(i).ExemptDelay Sub + Airline Sub(x,10); AirlineAll(i).ExemptDelay Comp = AirlineAll(i).ExemptDelay Comp + Airline Comp(x,11); AirlineAll(i).ExemptPaxDelay Initial = AirlineAll(i).ExemptPaxDelay Initial + Airline(x,9); AirlineAll(i).ExemptPaxDelay Sub = AirlineAll(i).ExemptPaxDelay Sub + Airline Sub(x,11); AirlineAll(i).ExemptPaxDelay Comp = AirlineAll(i).ExemptPaxDelay Comp + Airline Comp(x,12); AirlineAll(i).ExemptEmmission Initial = AirlineAll(i).ExemptEmmission Initial + Airline(x,10); AirlineAll(i).ExemptEmmission Sub = AirlineAll(i).ExemptEmmission Sub + Airline Sub(x,12); AirlineAll(i).ExemptEmmission Comp = AirlineAll(i).ExemptEmmission Comp + Airline Comp(x,13); AirlineAll(i).NonexemptSubs = AirlineAll(i).NonexemptSubs + Airline Comp(x,24); AirlineAll(i).NonexemptFlights = AirlineAll(i).NonexemptFlights + Airline(x,11); AirlineAll(i).NonexemptPax = AirlineAll(i).NonexemptPax + Airline(x,12); AirlineAll(i).NonexemptCancelled = AirlineAll(i).NonexemptCancelled + Airline Comp(x,22); AirlineAll(i).NonexemptPaxTransferred = AirlineAll(i).NonexemptPaxTransferred + Airline Comp(x,23); AirlineAll(i).NonexemptDelay Initial = AirlineAll(i).NonexemptDelay Initial + Airline(x,13); AirlineAll(i).NonexemptDelay Sub = AirlineAll(i).NonexemptDelay Sub + Airline Sub(x,17); AirlineAll(i).NonexemptDelay Comp = AirlineAll(i).NonexemptDelay Comp + Airline Comp(x,19); AirlineAll(i).NonexemptPaxDelay Initial = AirlineAll(i).NonexemptPaxDelay Initial + Airline(x,14); AirlineAll(i).NonexemptPaxDelay Sub = AirlineAll(i).NonexemptPaxDelay Sub + Airline Sub(x,18); AirlineAll(i).NonexemptPaxDelay Comp = AirlineAll(i).NonexemptPaxDelay Comp + Airline Comp(x,20); AirlineAll(i).NonexemptEmmission Initial = AirlineAll(i).NonexemptEmmission Initial + Airline(x,15); AirlineAll(i).NonexemptEmmission Sub = AirlineAll(i).NonexemptEmmission Sub + Airline Sub(x,19); AirlineAll(i).NonexemptEmmission Comp = AirlineAll(i).NonexemptEmmission Comp + Airline Comp(x,21); AirlineAll(i).IntSubs = AirlineAll(i).IntSubs + Airline Comp(x,32); AirlineAll(i).IntFlights = AirlineAll(i).IntFlights + Airline(x,16); AirlineAll(i).IntPax = AirlineAll(i).IntPax + Airline(x,17); AirlineAll(i).IntCancelled = AirlineAll(i).IntCancelled + Airline Comp(x,30); 270 AirlineAll(i).IntPaxTransferred = AirlineAll(i).IntPaxTransferred + Airline Comp(x,31); AirlineAll(i).IntDelay Initial = AirlineAll(i).IntDelay Initial + Airline(x,18); AirlineAll(i).IntDelay Sub = AirlineAll(i).IntDelay Sub + Airline Sub(x,24); AirlineAll(i).IntDelay Comp = AirlineAll(i).IntDelay Comp + Airline Comp(x,27); AirlineAll(i).IntPaxDelay Initial = AirlineAll(i).IntPaxDelay Initial + Airline(x,19); AirlineAll(i).IntPaxDelay Sub = AirlineAll(i).IntPaxDelay Sub + Airline Sub(x,25); AirlineAll(i).IntPaxDelay Comp = AirlineAll(i).IntPaxDelay Comp + Airline Comp(x,28); AirlineAll(i).IntEmmission Initial = AirlineAll(i).IntEmmission Initial + Airline(x,20); AirlineAll(i).IntEmmission Sub = AirlineAll(i).IntEmmission Sub + Airline Sub(x,26); AirlineAll(i).IntEmmission Comp = AirlineAll(i).IntEmmission Comp + Airline Comp(x,29); AirlineAll(i).DomesticSubs = AirlineAll(i).DomesticSubs + Airline Comp(x,40); AirlineAll(i).DomesticFlights = AirlineAll(i).DomesticFlights + Airline(x,21); AirlineAll(i).DomesticPax = AirlineAll(i).DomesticPax + Airline(x,22); AirlineAll(i).DomesticCancelled = AirlineAll(i).DomesticCancelled + Airline Comp(x,38); AirlineAll(i).DomesticPaxTransferred = AirlineAll(i).DomesticPaxTransferred + Airline Comp(x,39); AirlineAll(i).DomesticDelay Initial = AirlineAll(i).DomesticDelay Initial + Airline(x,23); AirlineAll(i).DomesticDelay Sub = AirlineAll(i).DomesticDelay Sub + Airline Sub(x,31); AirlineAll(i).DomesticDelay Comp = AirlineAll(i).DomesticDelay Comp + Airline Comp(x,35); AirlineAll(i).DomesticPaxDelay Initial = AirlineAll(i).DomesticPaxDelay Initial + Airline(x,24); AirlineAll(i).DomesticPaxDelay Sub = AirlineAll(i).DomesticPaxDelay Sub + Airline Sub(x,32); AirlineAll(i).DomesticPaxDelay Comp = AirlineAll(i).DomesticPaxDelay Comp + Airline Comp(x,36); AirlineAll(i).DomesticEmmission Initial = AirlineAll(i).DomesticEmmission Initial + Airline(x,25); AirlineAll(i).DomesticEmmission Sub = AirlineAll(i).DomesticEmmission Sub + Airline Sub(x,33); AirlineAll(i).DomesticEmmission Comp = AirlineAll(i).DomesticEmmission Comp + Airline Comp(x,37); end end end for x=1:NoAirlines if(aanew(x).MATCH==0) AirlineCounter = AirlineCounter + 1; AirlineAll(AirlineCounter).NAME = aa(x,1); AirlineAll(AirlineCounter).GDP = 1; AirlineAll(AirlineCounter).Subs = Airline Comp(x,8); AirlineAll(AirlineCounter).Flights = Airline(x,1); AirlineAll(AirlineCounter).Pax = Airline(x,2); 271 AirlineAll(AirlineCounter).Cancelled = Airline Comp(x,6); AirlineAll(AirlineCounter).PaxTransferred = Airline Comp(x,7); AirlineAll(AirlineCounter).Delay Initial = Airline(x,3); AirlineAll(AirlineCounter).Delay Sub = Airline Sub(x,3); AirlineAll(AirlineCounter).Delay Comp = Airline Comp(x,3); AirlineAll(AirlineCounter).PaxDelay Initial = Airline(x,4); AirlineAll(AirlineCounter).PaxDelay Sub = Airline Sub(x,4); AirlineAll(AirlineCounter).PaxDelay Comp = Airline Comp(x,4); AirlineAll(AirlineCounter).Emmission Initial = Airline(x,5); AirlineAll(AirlineCounter).Emmission Sub = Airline Sub(x,5); AirlineAll(AirlineCounter).Emmission Comp = Airline Comp(x,5); AirlineAll(AirlineCounter).ExemptSubs = Airline Comp(x,16); AirlineAll(AirlineCounter).ExemptFlights = Airline(x,6); AirlineAll(AirlineCounter).ExemptPax = Airline(x,7); AirlineAll(AirlineCounter).ExemptCancelled = Airline Comp(x,14); AirlineAll(AirlineCounter).ExemptPaxTransferred = Airline Comp(x,15); AirlineAll(AirlineCounter).ExemptDelay Initial = Airline(x,8); AirlineAll(AirlineCounter).ExemptDelay Sub = Airline Sub(x,10); AirlineAll(AirlineCounter).ExemptDelay Comp = Airline Comp(x,11); AirlineAll(AirlineCounter).ExemptPaxDelay Initial = Airline(x,9); AirlineAll(AirlineCounter).ExemptPaxDelay Sub = Airline Sub(x,11); AirlineAll(AirlineCounter).ExemptPaxDelay Comp = Airline Comp(x,12); AirlineAll(AirlineCounter).ExemptEmmission Initial = Airline(x,10); AirlineAll(AirlineCounter).ExemptEmmission Sub = Airline Sub(x,12); AirlineAll(AirlineCounter).ExemptEmmission Comp = Airline Comp(x,13); AirlineAll(AirlineCounter).NonexemptSubs = Airline Comp(x,24); AirlineAll(AirlineCounter).NonexemptFlights = Airline(x,11); AirlineAll(AirlineCounter).NonexemptPax = Airline(x,12); AirlineAll(AirlineCounter).NonexemptCancelled = Airline Comp(x,22); AirlineAll(AirlineCounter).NonexemptPaxTransferred = Airline Comp(x,23); AirlineAll(AirlineCounter).NonexemptDelay Initial = Airline(x,13); AirlineAll(AirlineCounter).NonexemptDelay Sub = Airline Sub(x,17); AirlineAll(AirlineCounter).NonexemptDelay Comp = Airline Comp(x,19); AirlineAll(AirlineCounter).NonexemptPaxDelay Initial = Airline(x,14); 272 AirlineAll(AirlineCounter).NonexemptPaxDelay Sub = Airline Sub(x,18); AirlineAll(AirlineCounter).NonexemptPaxDelay Comp = Airline Comp(x,20); AirlineAll(AirlineCounter).NonexemptEmmission Initial = Airline(x,15); AirlineAll(AirlineCounter).NonexemptEmmission Sub = Airline Sub(x,19); AirlineAll(AirlineCounter).NonexemptEmmission Comp = Airline Comp(x,21); AirlineAll(AirlineCounter).IntSubs = Airline Comp(x,32); AirlineAll(AirlineCounter).IntFlights = Airline(x,16); AirlineAll(AirlineCounter).IntPax = Airline(x,17); AirlineAll(AirlineCounter).IntCancelled = Airline Comp(x,30); AirlineAll(AirlineCounter).IntPaxTransferred = Airline Comp(x,31); AirlineAll(AirlineCounter).IntDelay Initial =Airline(x,18); AirlineAll(AirlineCounter).IntDelay Sub = Airline Sub(x,24); AirlineAll(AirlineCounter).IntDelay Comp = Airline Comp(x,27); AirlineAll(AirlineCounter).IntPaxDelay Initial = Airline(x,19); AirlineAll(AirlineCounter).IntPaxDelay Sub = Airline Sub(x,25); AirlineAll(AirlineCounter).IntPaxDelay Comp = Airline Comp(x,28); AirlineAll(AirlineCounter).IntEmmission Initial = Airline(x,20); AirlineAll(AirlineCounter).IntEmmission Sub = Airline Sub(x,26); AirlineAll(AirlineCounter).IntEmmission Comp = Airline Comp(x,29); AirlineAll(AirlineCounter).DomesticSubs = Airline Comp(x,40); AirlineAll(AirlineCounter).DomesticFlights = Airline(x,21); AirlineAll(AirlineCounter).DomesticPax = Airline(x,22); AirlineAll(AirlineCounter).DomesticCancelled = Airline Comp(x,38); AirlineAll(AirlineCounter).DomesticPaxTransferred = Airline Comp(x,39); AirlineAll(AirlineCounter).DomesticDelay Initial = Airline(x,23); AirlineAll(AirlineCounter).DomesticDelay Sub = Airline Sub(x,31); AirlineAll(AirlineCounter).DomesticDelay Comp = Airline Comp(x,35); AirlineAll(AirlineCounter).DomesticPaxDelay Initial = Airline(x,24); AirlineAll(AirlineCounter).DomesticPaxDelay Sub = Airline Sub(x,32); AirlineAll(AirlineCounter).DomesticPaxDelay Comp = Airline Comp(x,36); AirlineAll(AirlineCounter).DomesticEmmission Initial = Airline(x,25); AirlineAll(AirlineCounter).DomesticEmmission Sub = Airline Sub(x,33); AirlineAll(AirlineCounter).DomesticEmmission Comp = Airline Comp(x,37); end end 273 end i=0; j=0; x=0; bb=b’; i=0; for i=1:NoOrigins bbnew(i).NAME=bb(i,1); bbnew(i).MATCH=0; end if (t==1) for j=1:NoOrigins OriginAll(j).NAME = ”; OriginAll(j).GCD = 0; OriginAll(j).GDP = 0; OriginAll(j).Flights = 0; OriginAll(j).Seats = 0; OriginAll(j).Pax = 0; OriginAll(j).Cancelled = 0; OriginAll(j).PaxTransferred = 0; OriginAll(j).SeatsFlown = 0; OriginAll(j).Delay Initial = 0; OriginAll(j).Delay Sub = 0; OriginAll(j).Delay Comp = 0; OriginAll(j).PaxDelay Initial = 0; OriginAll(j).PaxDelay Sub = 0; OriginAll(j).PaxDelay Comp = 0; OriginAll(j).Emmission Initial = 0; OriginAll(j).Emmission Sub = 0; OriginAll(j).Emmission Comp = 0; OriginAll(j).ExemptFlights = 0; OriginAll(j).ExemptSeats = 0; OriginAll(j).ExemptPax = 0; OriginAll(j).ExemptCancelled = 0; OriginAll(j).ExemptPaxTransferred = 0; 274 OriginAll(j).ExemptSeatsFlown = 0; OriginAll(j).ExemptDelay Initial = 0; OriginAll(j).ExemptDelay Sub = 0; OriginAll(j).ExemptDelay Comp = 0; OriginAll(j).ExemptPaxDelay Initial = 0; OriginAll(j).ExemptPaxDelay Sub = 0; OriginAll(j).ExemptPaxDelay Comp = 0; OriginAll(j).ExemptEmmission Initial = 0; OriginAll(j).ExemptEmmission Sub = 0; OriginAll(j).ExemptEmmission Comp = 0; OriginAll(j).NonexemptFlights = 0; OriginAll(j).NonexemptSeats = 0; OriginAll(j).NonexemptPax = 0; OriginAll(j).NonexemptCancelled = 0; OriginAll(j).NonexemptPaxTransferred = 0; OriginAll(j).NonexemptSeatsFlown = 0; OriginAll(j).NonexemptDelay Initial = 0; OriginAll(j).NonexemptDelay Sub = 0; OriginAll(j).NonexemptDelay Comp = 0; OriginAll(j).NonexemptPaxDelay Initial = 0; OriginAll(j).NonexemptPaxDelay Sub = 0; OriginAll(j).NonexemptPaxDelay Comp = 0; OriginAll(j).NonexemptEmmission Initial = 0; OriginAll(j).NonexemptEmmission Sub = 0; OriginAll(j).NonexemptEmmission Comp = 0; OriginAll(j).IntFlights = 0; OriginAll(j).IntSeats = 0; OriginAll(j).IntPax = 0; OriginAll(j).IntCancelled = 0; OriginAll(j).IntPaxTransferred = 0; OriginAll(j).IntSeatsFlown = 0; OriginAll(j).IntDelay Initial = 0; OriginAll(j).IntDelay Sub = 0; OriginAll(j).IntDelay Comp = 0; 275 OriginAll(j).IntPaxDelay Initial = 0; OriginAll(j).IntPaxDelay Sub = 0; OriginAll(j).IntPaxDelay Comp = 0; OriginAll(j).IntEmmission Initial = 0; OriginAll(j).IntEmmission Sub = 0; OriginAll(j).IntEmmission Comp = 0; OriginAll(j).DomesticFlights = 0; OriginAll(j).DomesticSeats = 0; OriginAll(j).DomesticPax = 0; OriginAll(j).DomesticCancelled = 0; OriginAll(j).DomesticPaxTransferred = 0; OriginAll(j).DomesticSeatsFlown = 0; OriginAll(j).DomesticDelay Initial = 0; OriginAll(j).DomesticDelay Sub = 0; OriginAll(j).DomesticDelay Comp = 0; OriginAll(j).DomesticPaxDelay Initial = 0; OriginAll(j).DomesticPaxDelay Sub = 0; OriginAll(j).DomesticPaxDelay Comp = 0; OriginAll(j).DomesticEmmission Initial = 0; OriginAll(j).DomesticEmmission Sub = 0; OriginAll(j).DomesticEmmission Comp = 0; end for j=1:NoOrigins OriginAll(j).NAME = bb(j,1); OriginAll(j).GCD = OrigDist(j,1) ; OriginAll(j).GDP = OriginAll(j).GDP + 1; OriginAll(j).Flights = OriginAll(j).Flights + Origin(j,1); OriginAll(j).Seats = OriginAll(j).Seats + Origin(j,26); OriginAll(j).Pax = OriginAll(j).Pax + Origin(j,2); OriginAll(j).Cancelled = OriginAll(j).Cancelled + Origin Comp(j,6); OriginAll(j).PaxTransferred = OriginAll(j).PaxTransferred + Origin Comp(j,7); OriginAll(j).SeatsFlown = OriginAll(j).SeatsFlown + Origin Comp(j,36); OriginAll(j).Delay Initial = OriginAll(j).Delay Initial + Origin(j,3); OriginAll(j).Delay Sub = OriginAll(j).Delay Sub + Origin Sub(j,3); OriginAll(j).Delay Comp = OriginAll(j).Delay Comp + Origin Comp(j,3); 276 OriginAll(j).PaxDelay Initial = OriginAll(j).PaxDelay Initial + Origin(j,4); OriginAll(j).PaxDelay Sub = OriginAll(j).PaxDelay Sub + Origin Sub(j,4); OriginAll(j).PaxDelay Comp = OriginAll(j).PaxDelay Comp + Origin Comp(j,4); OriginAll(j).Emmission Initial = OriginAll(j).Emmission Initial + Origin(j,5); OriginAll(j).Emmission Sub = OriginAll(j).Emmission Sub + Origin Sub(j,5); OriginAll(j).Emmission Comp = OriginAll(j).Emmission Comp + Origin Comp(j,5); OriginAll(j).ExemptFlights = OriginAll(j).ExemptFlights + Origin(j,6); OriginAll(j).ExemptSeats = OriginAll(j).ExemptSeats + Origin(j,27); OriginAll(j).ExemptPax = OriginAll(j).ExemptPax + Origin(j,7); OriginAll(j).ExemptCancelled = OriginAll(j).ExemptCancelled + Origin Comp(j,13); OriginAll(j).ExemptPaxTransferred = OriginAll(j).ExemptPaxTransferred + Origin Comp(j,14); OriginAll(j).ExemptSeatsFlown = OriginAll(j).ExemptSeatsFlown + Origin Comp(j,37); OriginAll(j).ExemptDelay Initial = OriginAll(j).ExemptDelay Initial + Origin(j,8); OriginAll(j).ExemptDelay Sub = OriginAll(j).ExemptDelay Sub + Origin Sub(j,10); OriginAll(j).ExemptDelay Comp = OriginAll(j).ExemptDelay Comp + Origin Comp(j,10); OriginAll(j).ExemptPaxDelay Initial = OriginAll(j).ExemptPaxDelay Initial + Origin(j,9); OriginAll(j).ExemptPaxDelay Sub = OriginAll(j).ExemptPaxDelay Sub + Origin Sub(j,11); OriginAll(j).ExemptPaxDelay Comp = OriginAll(j).ExemptPaxDelay Comp + Origin Comp(j,11); OriginAll(j).ExemptEmmission Initial = OriginAll(j).ExemptEmmission Initial + Origin(j,10); OriginAll(j).ExemptEmmission Sub = OriginAll(j).ExemptEmmission Sub + Origin Sub(j,12); OriginAll(j).ExemptEmmission Comp = OriginAll(j).ExemptEmmission Comp + Origin Comp(j,12); OriginAll(j).NonexemptFlights = OriginAll(j).NonexemptFlights + Origin(j,11); OriginAll(j).NonexemptSeats = OriginAll(j).NonexemptSeats + Origin(j,28); OriginAll(j).NonexemptPax = OriginAll(j).NonexemptPax + Origin(j,12); OriginAll(j).NonexemptCancelled = OriginAll(j).NonexemptCancelled + Origin Comp(j,20); OriginAll(j).NonexemptPaxTransferred = OriginAll(j).NonexemptPaxTransferred + Origin Comp(j,21); OriginAll(j).NonexemptSeatsFlown = OriginAll(j).NonexemptSeatsFlown + Origin Comp(j,38); OriginAll(j).NonexemptDelay Initial = OriginAll(j).NonexemptDelay Initial + Origin(j,13); OriginAll(j).NonexemptDelay Sub = OriginAll(j).NonexemptDelay Sub + Origin Sub(j,17); OriginAll(j).NonexemptDelay Comp = OriginAll(j).NonexemptDelay Comp + Origin Comp(j,17); OriginAll(j).NonexemptPaxDelay Initial = OriginAll(j).NonexemptPaxDelay Initial + Origin(j,14); OriginAll(j).NonexemptPaxDelay Sub = OriginAll(j).NonexemptPaxDelay Sub + Origin Sub(j,18); OriginAll(j).NonexemptPaxDelay Comp = OriginAll(j).NonexemptPaxDelay Comp + Origin Comp(j,18); OriginAll(j).NonexemptEmmission Initial = OriginAll(j).NonexemptEmmission Initial + Origin(j,15); 277 OriginAll(j).NonexemptEmmission Sub = OriginAll(j).NonexemptEmmission Sub + Origin Sub(j,19); OriginAll(j).NonexemptEmmission Comp = OriginAll(j).NonexemptEmmission Comp + Origin Comp(j,19); OriginAll(j).IntFlights = OriginAll(j).IntFlights + Origin(j,16); OriginAll(j).IntSeats = OriginAll(j).IntSeats + Origin(j,29); OriginAll(j).IntPax = OriginAll(j).IntPax + Origin(j,17); OriginAll(j).IntCancelled = OriginAll(j).IntCancelled + Origin Comp(j,27); OriginAll(j).IntPaxTransferred = OriginAll(j).IntPaxTransferred + Origin Comp(j,28); OriginAll(j).IntSeatsFlown = OriginAll(j).IntSeatsFlown + Origin Comp(j,39); OriginAll(j).IntDelay Initial = OriginAll(j).IntDelay Initial + Origin(j,18); OriginAll(j).IntDelay Sub = OriginAll(j).IntDelay Sub + Origin Sub(j,24); OriginAll(j).IntDelay Comp = OriginAll(j).IntDelay Comp + Origin Comp(j,24); OriginAll(j).IntPaxDelay Initial = OriginAll(j).IntPaxDelay Initial + Origin(j,19); OriginAll(j).IntPaxDelay Sub = OriginAll(j).IntPaxDelay Sub + Origin Sub(j,25); OriginAll(j).IntPaxDelay Comp = OriginAll(j).IntPaxDelay Comp + Origin Comp(j,25); OriginAll(j).IntEmmission Initial = OriginAll(j).IntEmmission Initial + Origin(j,20); OriginAll(j).IntEmmission Sub = OriginAll(j).IntEmmission Sub + Origin Sub(j,26); OriginAll(j).IntEmmission Comp = OriginAll(j).IntEmmission Comp + Origin Comp(j,26); OriginAll(j).DomesticFlights = OriginAll(j).DomesticFlights + Origin(j,21); OriginAll(j).DomesticSeats = OriginAll(j).DomesticSeats + Origin(j,30); OriginAll(j).DomesticPax = OriginAll(j).DomesticPax + Origin(j,22); OriginAll(j).DomesticCancelled = OriginAll(j).DomesticCancelled + Origin Comp(j,34); OriginAll(j).DomesticPaxTransferred = OriginAll(j).DomesticPaxTransferred + Origin Comp(j,35); OriginAll(j).DomesticSeatsFlown = OriginAll(j).DomesticSeatsFlown + Origin Comp(j,40); OriginAll(j).DomesticDelay Initial = OriginAll(j).DomesticDelay Initial + Origin(j,23); OriginAll(j).DomesticDelay Sub = OriginAll(j).DomesticDelay Sub + Origin Sub(j,31); OriginAll(j).DomesticDelay Comp = OriginAll(j).DomesticDelay Comp + Origin Comp(j,31); OriginAll(j).DomesticPaxDelay Initial = OriginAll(j).DomesticPaxDelay Initial + Origin(j,24); OriginAll(j).DomesticPaxDelay Sub = OriginAll(j).DomesticPaxDelay Sub + Origin Sub(j,32); OriginAll(j).DomesticPaxDelay Comp = OriginAll(j).DomesticPaxDelay Comp + Origin Comp(j,32); OriginAll(j).DomesticEmmission Initial = OriginAll(j).DomesticEmmission Initial + Origin(j,25); OriginAll(j).DomesticEmmission Sub = OriginAll(j).DomesticEmmission Sub + Origin Sub(j,33); OriginAll(j).DomesticEmmission Comp = OriginAll(j).DomesticEmmission Comp + Origin Comp(j,33); end OriginCounter = j; elseif(t>1) 278 for x=1:NoOrigins for i=1:OriginCounter if (strcmp(bb(x,1),OriginAll(i).NAME)==1) bbnew(x).MATCH=1; OriginAll(i).GCD = OrigDist(x,1); OriginAll(i).GDP = OriginAll(i).GDP + 1; OriginAll(i).Flights = OriginAll(i).Flights + Origin(x,1); OriginAll(i).Seats = Origin(x,26); OriginAll(i).Pax = OriginAll(i).Pax + Origin(x,2); OriginAll(i).Cancelled = OriginAll(i).Cancelled + Origin Comp(x,6); OriginAll(i).PaxTransferred = OriginAll(i).PaxTransferred + Origin Comp(x,7); OriginAll(i).SeatsFlown = Origin Comp(x,36); OriginAll(i).Delay Initial = OriginAll(i).Delay Initial + Origin(x,3); OriginAll(i).Delay Sub = OriginAll(i).Delay Sub + Origin Sub(x,3); OriginAll(i).Delay Comp = OriginAll(i).Delay Comp + Origin Comp(x,3); OriginAll(i).PaxDelay Initial = OriginAll(i).PaxDelay Initial + Origin(x,4); OriginAll(i).PaxDelay Sub = OriginAll(i).PaxDelay Sub + Origin Sub(x,4); OriginAll(i).PaxDelay Comp = OriginAll(i).PaxDelay Comp + Origin Comp(x,4); OriginAll(i).Emmission Initial = OriginAll(i).Emmission Initial + Origin(x,5); OriginAll(i).Emmission Sub = OriginAll(i).Emmission Sub + Origin Sub(x,5); OriginAll(i).Emmission Comp = OriginAll(i).Emmission Comp + Origin Comp(x,5); OriginAll(i).ExemptFlights = OriginAll(i).ExemptFlights + Origin(x,6); OriginAll(i).ExemptSeats = Origin(x,27); OriginAll(i).ExemptPax = OriginAll(i).ExemptPax + Origin(x,7); OriginAll(i).ExemptCancelled = OriginAll(i).ExemptCancelled + Origin Comp(x,13); OriginAll(i).ExemptPaxTransferred = OriginAll(i).ExemptPaxTransferred + Origin Comp(x,14); OriginAll(i).SeatsFlown = Origin Comp(x,37); OriginAll(i).ExemptDelay Initial = OriginAll(i).ExemptDelay Initial + Origin(x,8); OriginAll(i).ExemptDelay Sub = OriginAll(i).ExemptDelay Sub + Origin Sub(x,10); OriginAll(i).ExemptDelay Comp = OriginAll(i).ExemptDelay Comp + Origin Comp(x,10); OriginAll(i).ExemptPaxDelay Initial = OriginAll(i).ExemptPaxDelay Initial + Origin(x,9); OriginAll(i).ExemptPaxDelay Sub = OriginAll(i).ExemptPaxDelay Sub + Origin Sub(x,11); OriginAll(i).ExemptPaxDelay Comp = OriginAll(i).ExemptPaxDelay Comp + Origin Comp(x,11); OriginAll(i).ExemptEmmission Initial = OriginAll(i).ExemptEmmission Initial + Origin(x,10); 279 OriginAll(i).ExemptEmmission Sub = OriginAll(i).ExemptEmmission Sub + Origin Sub(x,12); OriginAll(i).ExemptEmmission Comp = OriginAll(i).ExemptEmmission Comp + Origin Comp(x,12); OriginAll(i).NonexemptFlights = OriginAll(i).NonexemptFlights + Origin(x,11); OriginAll(i).NonexemptSeats = Origin(x,28); OriginAll(i).NonexemptPax = OriginAll(i).NonexemptPax + Origin(x,12); OriginAll(i).NonexemptCancelled = OriginAll(i).NonexemptCancelled + Origin Comp(x,20); OriginAll(i).NonexemptPaxTransferred = OriginAll(i).NonexemptPaxTransferred + Origin Comp(x,21); OriginAll(i).NonexemptSeatsFlown = Origin Comp(x,38); OriginAll(i).NonexemptDelay Initial = OriginAll(i).NonexemptDelay Initial + Origin(x,13); OriginAll(i).NonexemptDelay Sub = OriginAll(i).NonexemptDelay Sub + Origin Sub(x,17); OriginAll(i).NonexemptDelay Comp = OriginAll(i).NonexemptDelay Comp + Origin Comp(x,17); OriginAll(i).NonexemptPaxDelay Initial = OriginAll(i).NonexemptPaxDelay Initial + Origin(x,14); OriginAll(i).NonexemptPaxDelay Sub = OriginAll(i).NonexemptPaxDelay Sub + Origin Sub(x,18); OriginAll(i).NonexemptPaxDelay Comp = OriginAll(i).NonexemptPaxDelay Comp + Origin Comp(x,18); OriginAll(i).NonexemptEmmission Initial = OriginAll(i).NonexemptEmmission Initial + Origin(x,15); OriginAll(i).NonexemptEmmission Sub = OriginAll(i).NonexemptEmmission Sub + Origin Sub(x,19); OriginAll(i).NonexemptEmmission Comp = OriginAll(i).NonexemptEmmission Comp + Origin Comp(x,19); OriginAll(i).IntFlights = OriginAll(i).IntFlights + Origin(x,16); OriginAll(i).IntSeats = Origin(x,29); OriginAll(i).IntPax = OriginAll(i).IntPax + Origin(x,17); OriginAll(i).IntCancelled = OriginAll(i).IntCancelled + Origin Comp(x,27); OriginAll(i).IntPaxTransferred = OriginAll(i).IntPaxTransferred + Origin Comp(x,28); OriginAll(i).IntSeatsFlown = Origin Comp(x,39); OriginAll(i).IntDelay Initial = OriginAll(i).IntDelay Initial + Origin(x,18); OriginAll(i).IntDelay Sub = OriginAll(i).IntDelay Sub + Origin Sub(x,24); OriginAll(i).IntDelay Comp = OriginAll(i).IntDelay Comp + Origin Comp(x,24); OriginAll(i).IntPaxDelay Initial = OriginAll(i).IntPaxDelay Initial + Origin(x,19); OriginAll(i).IntPaxDelay Sub = OriginAll(i).IntPaxDelay Sub + Origin Sub(x,25); OriginAll(i).IntPaxDelay Comp = OriginAll(i).IntPaxDelay Comp + Origin Comp(x,25); OriginAll(i).IntEmmission Initial = OriginAll(i).IntEmmission Initial + Origin(x,20); OriginAll(i).IntEmmission Sub = OriginAll(i).IntEmmission Sub + Origin Sub(x,26); OriginAll(i).IntEmmission Comp = OriginAll(i).IntEmmission Comp + Origin Comp(x,26); OriginAll(i).DomesticFlights = OriginAll(i).DomesticFlights + Origin(x,21); OriginAll(i).DomesticSeats = Origin(x,30); 280 OriginAll(i).DomesticPax = OriginAll(i).DomesticPax + Origin(x,22); OriginAll(i).DomesticCancelled = OriginAll(i).DomesticCancelled + Origin Comp(x,34); OriginAll(i).DomesticPaxTransferred = OriginAll(i).DomesticPaxTransferred + Origin Comp(x,35); OriginAll(i).DomesticSeatsFlown = Origin Comp(x,40); OriginAll(i).DomesticDelay Initial = OriginAll(i).DomesticDelay Initial + Origin(x,23); OriginAll(i).DomesticDelay Sub = OriginAll(i).DomesticDelay Sub + Origin Sub(x,31); OriginAll(i).DomesticDelay Comp = OriginAll(i).DomesticDelay Comp + Origin Comp(x,31); OriginAll(i).DomesticPaxDelay Initial = OriginAll(i).DomesticPaxDelay Initial + Origin(x,24); OriginAll(i).DomesticPaxDelay Sub = OriginAll(i).DomesticPaxDelay Sub + Origin Sub(x,32); OriginAll(i).DomesticPaxDelay Comp = OriginAll(i).DomesticPaxDelay Comp + Origin Comp(x,32); OriginAll(i).DomesticEmmission Initial = OriginAll(i).DomesticEmmission Initial + Origin(x,25); OriginAll(i).DomesticEmmission Sub = OriginAll(i).DomesticEmmission Sub + Origin Sub(x,33); OriginAll(i).DomesticEmmission Comp = OriginAll(i).DomesticEmmission Comp + Origin Comp(x,33); end end end for x=1:NoOrigins if(bbnew(x).MATCH==0) OriginCounter = OriginCounter + 1; OriginAll(OriginCounter).NAME = bb(x,1); OriginAll(OriginCounter).GCD = OrigDist(x,1) ; OriginAll(OriginCounter).GDP = 1; OriginAll(OriginCounter).Flights = Origin(x,1); OriginAll(OriginCounter).Seats = Origin(x,26); OriginAll(OriginCounter).Pax = Origin(x,2); OriginAll(OriginCounter).Cancelled = Origin Comp(x,6); OriginAll(OriginCounter).PaxTransferred = Origin Comp(x,7); OriginAll(OriginCounter).SeatsFlown = Origin Comp(x,36); OriginAll(OriginCounter).Delay Initial = Origin(x,3); OriginAll(OriginCounter).Delay Sub = Origin Sub(x,3); OriginAll(OriginCounter).Delay Comp = Origin Comp(x,3); OriginAll(OriginCounter).PaxDelay Initial = Origin(x,4); OriginAll(OriginCounter).PaxDelay Sub = Origin Sub(x,4); OriginAll(OriginCounter).PaxDelay Comp = Origin Comp(x,4); OriginAll(OriginCounter).Emmission Initial = Origin(x,5); 281 OriginAll(OriginCounter).Emmission Sub = Origin Sub(x,5); OriginAll(OriginCounter).Emmission Comp = Origin Comp(x,5); OriginAll(OriginCounter).ExemptFlights = Origin(x,6); OriginAll(OriginCounter).ExemptSeats = Origin(x,27); OriginAll(OriginCounter).ExemptPax = Origin(x,7); OriginAll(OriginCounter).ExemptCancelled = Origin Comp(x,13); OriginAll(OriginCounter).ExemptPaxTransferred = Origin Comp(x,14); OriginAll(OriginCounter).ExemptSeatsFlown = Origin Comp(x,37); OriginAll(OriginCounter).ExemptDelay Initial = Origin(x,8); OriginAll(OriginCounter).ExemptDelay Sub = Origin Sub(x,10); OriginAll(OriginCounter).ExemptDelay Comp = Origin Comp(x,10); OriginAll(OriginCounter).ExemptPaxDelay Initial = Origin(x,9); OriginAll(OriginCounter).ExemptPaxDelay Sub = Origin Sub(x,11); OriginAll(OriginCounter).ExemptPaxDelay Comp = Origin Comp(x,11); OriginAll(OriginCounter).ExemptEmmission Initial = Origin(x,10); OriginAll(OriginCounter).ExemptEmmission Sub = Origin Sub(x,12); OriginAll(OriginCounter).ExemptEmmission Comp = Origin Comp(x,12); OriginAll(OriginCounter).NonexemptFlights = Origin(x,11); OriginAll(OriginCounter).NonexemptSeats = Origin(x,28); OriginAll(OriginCounter).NonexemptPax = Origin(x,12); OriginAll(OriginCounter).NonexemptCancelled = Origin Comp(x,20); OriginAll(OriginCounter).NonexemptPaxTransferred = Origin Comp(x,21); OriginAll(OriginCounter).NonexemptSeatsFlown = Origin Comp(x,38); OriginAll(OriginCounter).NonexemptDelay Initial = Origin(x,13); OriginAll(OriginCounter).NonexemptDelay Sub = Origin Sub(x,17); OriginAll(OriginCounter).NonexemptDelay Comp = Origin Comp(x,17); OriginAll(OriginCounter).NonexemptPaxDelay Initial = Origin(x,14); OriginAll(OriginCounter).NonexemptPaxDelay Sub = Origin Sub(x,18); OriginAll(OriginCounter).NonexemptPaxDelay Comp = Origin Comp(x,18); OriginAll(OriginCounter).NonexemptEmmission Initial = Origin(x,15); OriginAll(OriginCounter).NonexemptEmmission Sub = Origin Sub(x,19); OriginAll(OriginCounter).NonexemptEmmission Comp = Origin Comp(x,19); OriginAll(OriginCounter).IntFlights = Origin(x,16); OriginAll(OriginCounter).IntSeats = Origin(x,29); 282 OriginAll(OriginCounter).IntPax = Origin(x,17); OriginAll(OriginCounter).IntCancelled = Origin Comp(x,27); OriginAll(OriginCounter).IntPaxTransferred = Origin Comp(x,28); OriginAll(OriginCounter).IntSeatsFlown = Origin Comp(x,39); OriginAll(OriginCounter).IntDelay Initial = Origin(x,18); OriginAll(OriginCounter).IntDelay Sub = Origin Sub(x,24); OriginAll(OriginCounter).IntDelay Comp = Origin Comp(x,24); OriginAll(OriginCounter).IntPaxDelay Initial = Origin(x,19); OriginAll(OriginCounter).IntPaxDelay Sub = Origin Sub(x,25); OriginAll(OriginCounter).IntPaxDelay Comp = Origin Comp(x,25); OriginAll(OriginCounter).IntEmmission Initial = Origin(x,20); OriginAll(OriginCounter).IntEmmission Sub = Origin Sub(x,26); OriginAll(OriginCounter).IntEmmission Comp = Origin Comp(x,26); OriginAll(OriginCounter).DomesticFlights = Origin(x,21); OriginAll(OriginCounter).DomesticSeats = Origin(x,30); OriginAll(OriginCounter).DomesticPax = Origin(x,22); OriginAll(OriginCounter).DomesticCancelled = Origin Comp(x,34); OriginAll(OriginCounter).DomesticPaxTransferred = Origin Comp(x,35); OriginAll(OriginCounter).DomesticSeatsFlown = Origin Comp(x,40); OriginAll(OriginCounter).DomesticDelay Initial = Origin(x,23); OriginAll(OriginCounter).DomesticDelay Sub = Origin Sub(x,31); OriginAll(OriginCounter).DomesticDelay Comp = Origin Comp(x,31); OriginAll(OriginCounter).DomesticPaxDelay Initial = Origin(x,24); OriginAll(OriginCounter).DomesticPaxDelay Sub = Origin Sub(x,32); OriginAll(OriginCounter).DomesticPaxDelay Comp = Origin Comp(x,32); OriginAll(OriginCounter).DomesticEmmission Initial = Origin(x,25); OriginAll(OriginCounter).DomesticEmmission Sub = Origin Sub(x,33); OriginAll(OriginCounter).DomesticEmmission Comp = Origin Comp(x,33); end end end %initialiation of structures clear BSFlight clear Flight clear GDP 283 clear ASFlight clear SubAirline clear BSComp clear Comp clear Slot clear aanew clear bbnew clear aa clear bb end %SIMULATION ENDS HERE tic Output3 = zeros(77,NoGDP); n=0; for n=1:NoGDP Output3(1,n)= GDPParam(n).GDP ID; Output3(2,n)= datenum(GDPParam(n).GDP DATE); Output3(3,n)= GDPParam(n).EVENT ID; Output3(4,n)= GDPParam(n).DATA TIME; Output3(5,n)= GDPParam(n).START TIME; Output3(6,n)= GDPParam(n).END TIME; Output3(7,n)= GDPParam(n).AveAAR; Output3(8,n)= GDPParam(n).MinAAR; Output3(9,n)= GDPParam(n).MaxAAR; Output3(10,n)= GDPParam(n).Origins; Output3(11,n)= GDPParam(n).Airlines; Output3(12,n)= GDPParam(n).Flights; Output3(13,n)= GDPParam(n).Pax; Output3(14,n)= GDPParam(n).Cancellations; Output3(15,n)= GDPParam(n).PaxTransported; Output3(16,n)= GDPParam(n).Subs; Output3(17,n)= GDPParam(n).TotalFlightDelay Initial; Output3(18,n)= GDPParam(n).TotalPaxDelay Initial; Output3(19,n)= GDPParam(n).TotalEmmission Initial; Output3(20,n)= GDPParam(n).TotalFlightDelay Sub; Output3(21,n)= GDPParam(n).TotalPaxDelay Sub; 284 Output3(22,n)= GDPParam(n).TotalEmmission Sub; Output3(23,n)= GDPParam(n).TotalFlightDelay Comp; Output3(24,n)= GDPParam(n).TotalPaxDelay Comp; Output3(25,n)= GDPParam(n).TotalEmmission Comp; Output3(26,n)= GDPParam(n).ExemptFlights; Output3(27,n)= GDPParam(n).ExemptPax; Output3(28,n)= GDPParam(n).ExemptCancellations; Output3(29,n)= GDPParam(n).ExemptPaxTransported; Output3(30,n)= GDPParam(n).Delay Exempt; Output3(31,n)= GDPParam(n).PaxDelay Exempt; Output3(32,n)= GDPParam(n).Emmission Exempt; Output3(33,n)= GDPParam(n).Delay Exempt Sub; Output3(34,n)= GDPParam(n).PaxDelay Exempt Sub; Output3(35,n)= GDPParam(n).Emmission Exempt Sub; Output3(36,n)= GDPParam(n).Delay Exempt Comp; Output3(37,n)= GDPParam(n).PaxDelay Exempt Comp; Output3(38,n)= GDPParam(n).Emmission Exempt Comp; Output3(39,n)= GDPParam(n).NonexemptFlights; Output3(40,n)= GDPParam(n).NonexemptPax; Output3(41,n)= GDPParam(n).NonexemptCancellations; Output3(42,n)= GDPParam(n).NonexemptPaxTransported; Output3(43,n)= GDPParam(n).Delay Nonexempt; Output3(44,n)= GDPParam(n).PaxDelay Nonexempt; Output3(45,n)= GDPParam(n).Emmission Nonexempt; Output3(46,n)= GDPParam(n).Delay Nonexempt Sub; Output3(47,n)= GDPParam(n).PaxDelay Nonexempt Sub; Output3(48,n)= GDPParam(n).Emmission Nonexempt Sub; Output3(49,n)= GDPParam(n).Delay Nonexempt Comp; Output3(50,n)= GDPParam(n).PaxDelay Nonexempt Comp; Output3(51,n)= GDPParam(n).Emmission Nonexempt Comp; Output3(52,n)= GDPParam(n).IntFlights; Output3(53,n)= GDPParam(n).IntPax; Output3(54,n)= GDPParam(n).IntCancellations; Output3(55,n)= GDPParam(n).IntPaxTransported; 285 Output3(56,n)= GDPParam(n).Delay International; Output3(57,n)= GDPParam(n).PaxDelay International; Output3(58,n)= GDPParam(n).Emmission International; Output3(59,n)= GDPParam(n).Delay International Sub; Output3(60,n)= GDPParam(n).PaxDelay International Sub; Output3(61,n)= GDPParam(n).Emmission International Sub; Output3(62,n)= GDPParam(n).Delay International Comp; Output3(63,n)= GDPParam(n).PaxDelay International Comp; Output3(64,n)= GDPParam(n).Emmission International Comp; Output3(65,n)= GDPParam(n).DomesticFlights; Output3(66,n)= GDPParam(n).DomesticPax; Output3(67,n)= GDPParam(n).DomesticCancellations; Output3(68,n)= GDPParam(n).DomesticPaxTransported; Output3(69,n)= GDPParam(n).Delay Domestic; Output3(70,n)= GDPParam(n).PaxDelay Domestic; Output3(71,n)= GDPParam(n).Emmission Domestic; Output3(72,n)= GDPParam(n).Delay Domestic Sub; Output3(73,n)= GDPParam(n).PaxDelay Domestic Sub; Output3(74,n)= GDPParam(n).Emmission Domestic Sub; Output3(75,n)= GDPParam(n).Delay Domestic Comp; Output3(76,n)= GDPParam(n).PaxDelay Domestic Comp; Output3(77,n)= GDPParam(n).Emmission Domestic Comp; end OFN1 = fopen(Output filename1,’w’); i=0; for i=1:77 fprintf(OFN1,’%f,’,Output3(i,:)); fprintf(OFN1,’\n’); end fclose(OFN1); OutputA1=zeros(AirlineCounter,71); n=0; for n=1:AirlineCounter OutputA1(n,1)= AirlineAll(n).GDP; OutputA1(n,2)= AirlineAll(n).Subs; 286 OutputA1(n,3)= AirlineAll(n).Flights; OutputA1(n,4)= AirlineAll(n).Pax; OutputA1(n,5)= AirlineAll(n).Cancelled; OutputA1(n,6)= AirlineAll(n).PaxTransferred; OutputA1(n,7)= AirlineAll(n).Delay Initial; OutputA1(n,8)= AirlineAll(n).Delay Sub; OutputA1(n,9)= AirlineAll(n).Delay Comp; OutputA1(n,10)= AirlineAll(n).PaxDelay Initial; OutputA1(n,11)= AirlineAll(n).PaxDelay Sub; OutputA1(n,12)= AirlineAll(n).PaxDelay Comp; OutputA1(n,13)= AirlineAll(n).Emmission Initial; OutputA1(n,14)= AirlineAll(n).Emmission Sub; OutputA1(n,15)= AirlineAll(n).Emmission Comp; OutputA1(n,16)= AirlineAll(n).ExemptSubs; OutputA1(n,17)= AirlineAll(n).ExemptFlights; OutputA1(n,18)= AirlineAll(n).ExemptPax; OutputA1(n,19)= AirlineAll(n).ExemptCancelled; OutputA1(n,20)= AirlineAll(n).ExemptPaxTransferred; OutputA1(n,21)= AirlineAll(n).ExemptDelay Initial; OutputA1(n,22)= AirlineAll(n).ExemptDelay Sub; OutputA1(n,23)= AirlineAll(n).ExemptDelay Comp; OutputA1(n,24)= AirlineAll(n).ExemptPaxDelay Initial; OutputA1(n,25)= AirlineAll(n).ExemptPaxDelay Sub; OutputA1(n,26)= AirlineAll(n).ExemptPaxDelay Comp; OutputA1(n,27)= AirlineAll(n).ExemptEmmission Initial; OutputA1(n,28)= AirlineAll(n).ExemptEmmission Sub; OutputA1(n,29)= AirlineAll(n).ExemptEmmission Comp; OutputA1(n,30)= AirlineAll(n).NonexemptSubs; OutputA1(n,31)= AirlineAll(n).NonexemptFlights; OutputA1(n,32)= AirlineAll(n).NonexemptPax; OutputA1(n,33)= AirlineAll(n).NonexemptCancelled; OutputA1(n,34)= AirlineAll(n).NonexemptPaxTransferred; OutputA1(n,35)= AirlineAll(n).NonexemptDelay Initial; OutputA1(n,36)= AirlineAll(n).NonexemptDelay Sub; 287 OutputA1(n,37)= AirlineAll(n).NonexemptDelay Comp; OutputA1(n,38)= AirlineAll(n).NonexemptPaxDelay Initial; OutputA1(n,39)= AirlineAll(n).NonexemptPaxDelay Sub; OutputA1(n,40)= AirlineAll(n).NonexemptPaxDelay Comp; OutputA1(n,41)= AirlineAll(n).NonexemptEmmission Initial; OutputA1(n,42)= AirlineAll(n).NonexemptEmmission Sub; OutputA1(n,43)= AirlineAll(n).NonexemptEmmission Comp; OutputA1(n,44)= AirlineAll(n).IntSubs; OutputA1(n,45)= AirlineAll(n).IntFlights; OutputA1(n,46)= AirlineAll(n).IntPax; OutputA1(n,47)= AirlineAll(n).IntCancelled; OutputA1(n,48)= AirlineAll(n).IntPaxTransferred; OutputA1(n,49)= AirlineAll(n).IntDelay Initial; OutputA1(n,50)= AirlineAll(n).IntDelay Sub; OutputA1(n,51)= AirlineAll(n).IntDelay Comp; OutputA1(n,52)= AirlineAll(n).IntPaxDelay Initial; OutputA1(n,53)= AirlineAll(n).IntPaxDelay Sub; OutputA1(n,54)= AirlineAll(n).IntPaxDelay Comp; OutputA1(n,55)= AirlineAll(n).IntEmmission Initial; OutputA1(n,56)= AirlineAll(n).IntEmmission Sub; OutputA1(n,57)= AirlineAll(n).IntEmmission Comp; OutputA1(n,58)= AirlineAll(n).DomesticSubs; OutputA1(n,59)= AirlineAll(n).DomesticFlights; OutputA1(n,60)= AirlineAll(n).DomesticPax; OutputA1(n,61)= AirlineAll(n).DomesticCancelled; OutputA1(n,62)= AirlineAll(n).DomesticPaxTransferred; OutputA1(n,63)= AirlineAll(n).DomesticDelay Initial; OutputA1(n,64)= AirlineAll(n).DomesticDelay Sub; OutputA1(n,65)= AirlineAll(n).DomesticDelay Comp; OutputA1(n,66)= AirlineAll(n).DomesticPaxDelay Initial; OutputA1(n,67)= AirlineAll(n).DomesticPaxDelay Sub; OutputA1(n,68)= AirlineAll(n).DomesticPaxDelay Comp; OutputA1(n,69)= AirlineAll(n).DomesticEmmission Initial; OutputA1(n,70)= AirlineAll(n).DomesticEmmission Sub; 288 OutputA1(n,71)= AirlineAll(n).DomesticEmmission Comp; end OFN2 = fopen(Output filename2,’w’); fprintf(OFN2,’%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s,’, ’Airline’,’NoGDPs’, ’Subs’, ’Flights’, ’PAX’, ’Cancelled’, ’PaxTransf’, ’DelayInitial’, ’DelaySub’, ’DelayComp’, ’PaxDelayInitial’, ’PaxDelaySub’, ’PaxDelayComp’, ’EmmissionInitial’, ’EmmissionSub’, ’EmmissionComp’, ’ExemptSubs’, ’ExemptFlights’, ’ExemptPAX’, ’ExemptCancelled’, ’ExemptPaxTransf’, ’ExemptDelayInitial’, ’ExemptDelaySub’, ’ExemptDelayComp’, ’ExemptPaxDelayInitial’, ’ExemptPaxDelaySub’, ’ExemptPaxDelayComp’, ’ExemptEmmissionInitial’, ’ExemptEmmissionSub’, ’ExemptEmmissionComp’, ’NonexeSubs’, ’NonexeFlights’, ’NonexePAX’, ’NonexeCancelled’, ’NonexePaxTransf’, ’NonexeDelayInitial’, ’NonexeDelaySub’, ’NonexeDelayComp’, ’NonexePaxDelayInitial’, ’NonexePaxDelaySub’, ’NonexePaxDelayComp’, ’NonexeEmmissionInitial’, ’NonexeEmmissionSub’, ’NonexeEmmissionComp’, ’IntSubs’, ’IntFlights’, ’IntPAX’, ’IntCancelled’, ’IntPaxTransf’, ’IntDelayInitial’, ’IntDelaySub’, ’IntDelayComp’, ’IntPaxDelayInitial’, ’IntPaxDelaySub’, ’IntPaxDelayComp’, ’IntEmmissionInitial’, ’IntEmmissionSub’, ’IntEmmissionComp’, ’DomSubs’, ’DomFlights’, ’DomPAX’, ’DomCancelled’, ’DomPaxTransf’, ’DomDelayInitial’, ’DomDelaySub’, ’DomDelayComp’, ’DomPaxDelayInitial’, ’DomPaxDelaySub’, ’DomPaxDelayComp’, ’DomEmmissionInitial’, ’DomEmmissionSub’, ’DomEmmissionComp’); fprintf(OFN2,’\n’); i=0; for i=1:AirlineCounter fprintf(OFN2,’%s,’,char(AirlineAll(i).NAME)); fprintf(OFN2,’%f,’,OutputA1(i,:)); fprintf(OFN2,’\n’); end fclose(OFN2); OutputO1=zeros(OriginCounter,77); n=0; for n=1:OriginCounter OutputO1(n,1)= OriginAll(n).GCD; OutputO1(n,2)= OriginAll(n).GDP; OutputO1(n,3)= OriginAll(n).Flights; OutputO1(n,4)= OriginAll(n).Pax; OutputO1(n,5)= OriginAll(n).Cancelled; OutputO1(n,6)= OriginAll(n).PaxTransferred; OutputO1(n,7)= OriginAll(n).Delay Initial; OutputO1(n,8)= OriginAll(n).Delay Sub; 289 OutputO1(n,9)= OriginAll(n).Delay Comp; OutputO1(n,10)= OriginAll(n).PaxDelay Initial; OutputO1(n,11)= OriginAll(n).PaxDelay Sub; OutputO1(n,12)= OriginAll(n).PaxDelay Comp; OutputO1(n,13)= OriginAll(n).Emmission Initial; OutputO1(n,14)= OriginAll(n).Emmission Sub; OutputO1(n,15)= OriginAll(n).Emmission Comp; OutputO1(n,16)= OriginAll(n).ExemptFlights; OutputO1(n,17)= OriginAll(n).ExemptPax; OutputO1(n,18)= OriginAll(n).ExemptCancelled; OutputO1(n,19)= OriginAll(n).ExemptPaxTransferred; OutputO1(n,20)= OriginAll(n).ExemptDelay Initial; OutputO1(n,21)= OriginAll(n).ExemptDelay Sub; OutputO1(n,22)= OriginAll(n).ExemptDelay Comp; OutputO1(n,23)= OriginAll(n).ExemptPaxDelay Initial; OutputO1(n,24)= OriginAll(n).ExemptPaxDelay Sub; OutputO1(n,25)= OriginAll(n).ExemptPaxDelay Comp; OutputO1(n,26)= OriginAll(n).ExemptEmmission Initial; OutputO1(n,27)= OriginAll(n).ExemptEmmission Sub; OutputO1(n,28)= OriginAll(n).ExemptEmmission Comp; OutputO1(n,29)= OriginAll(n).NonexemptFlights; OutputO1(n,30)= OriginAll(n).NonexemptPax; OutputO1(n,31)= OriginAll(n).NonexemptCancelled; OutputO1(n,32)= OriginAll(n).NonexemptPaxTransferred; OutputO1(n,33)= OriginAll(n).NonexemptDelay Initial; OutputO1(n,34)= OriginAll(n).NonexemptDelay Sub; OutputO1(n,35)= OriginAll(n).NonexemptDelay Comp; OutputO1(n,36)= OriginAll(n).NonexemptPaxDelay Initial; OutputO1(n,37)= OriginAll(n).NonexemptPaxDelay Sub; OutputO1(n,38)= OriginAll(n).NonexemptPaxDelay Comp; OutputO1(n,39)= OriginAll(n).NonexemptEmmission Initial; OutputO1(n,40)= OriginAll(n).NonexemptEmmission Sub; OutputO1(n,41)= OriginAll(n).NonexemptEmmission Comp; OutputO1(n,42)= OriginAll(n).IntFlights; 290 OutputO1(n,43)= OriginAll(n).IntPax; OutputO1(n,44)= OriginAll(n).IntCancelled; OutputO1(n,45)= OriginAll(n).IntPaxTransferred; OutputO1(n,46)= OriginAll(n).IntDelay Initial; OutputO1(n,47)= OriginAll(n).IntDelay Sub; OutputO1(n,48)= OriginAll(n).IntDelay Comp; OutputO1(n,49)= OriginAll(n).IntPaxDelay Initial; OutputO1(n,50)= OriginAll(n).IntPaxDelay Sub; OutputO1(n,51)= OriginAll(n).IntPaxDelay Comp; OutputO1(n,52)= OriginAll(n).IntEmmission Initial; OutputO1(n,53)= OriginAll(n).IntEmmission Sub; OutputO1(n,54)= OriginAll(n).IntEmmission Comp; OutputO1(n,55)= OriginAll(n).DomesticFlights; OutputO1(n,56)= OriginAll(n).DomesticPax; OutputO1(n,57)= OriginAll(n).DomesticCancelled; OutputO1(n,58)= OriginAll(n).DomesticPaxTransferred; OutputO1(n,59)= OriginAll(n).DomesticDelay Initial; OutputO1(n,60)= OriginAll(n).DomesticDelay Sub; OutputO1(n,61)= OriginAll(n).DomesticDelay Comp; OutputO1(n,62)= OriginAll(n).DomesticPaxDelay Initial; OutputO1(n,63)= OriginAll(n).DomesticPaxDelay Sub; OutputO1(n,64)= OriginAll(n).DomesticPaxDelay Comp; OutputO1(n,65)= OriginAll(n).DomesticEmmission Initial; OutputO1(n,66)= OriginAll(n).DomesticEmmission Sub; OutputO1(n,67)= OriginAll(n).DomesticEmmission Comp; OutputO1(n,68)= OriginAll(n).Seats; OutputO1(n,69)= OriginAll(n).SeatsFlown; OutputO1(n,70)= OriginAll(n).ExemptSeats; OutputO1(n,71)= OriginAll(n).ExemptSeatsFlown; OutputO1(n,72)= OriginAll(n).NonexemptSeats; OutputO1(n,73)= OriginAll(n).NonexemptSeatsFlown; OutputO1(n,74)= OriginAll(n).IntSeats; OutputO1(n,75)= OriginAll(n).IntSeatsFlown; OutputO1(n,76)= OriginAll(n).DomesticSeats; 291 OutputO1(n,77)= OriginAll(n).DomesticSeatsFlown; end OFN3 = fopen(Output filename3,’w’); fprintf(OFN3,’%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s’,’Origin’, ’GCD’, ’NoGDPs’, ’Flights’, ’PAX’, ’Cancelled’, ’PaxTransf’, ’DelayInitial’, ’DelaySub’, ’DelayComp’, ’PaxDelayInitial’, ’PaxDelaySub’, ’PaxDelayComp’, ’EmmissionInitial’, ’EmmissionSub’, ’EmmissionComp’, ’ExemptFlights’, ’ExemptPAX’, ’ExemptCancelled’, ’ExemptPaxTransf’, ’ExemptDelayInitial’, ’ExemptDelaySub’, ’ExemptDelayComp’, ’ExemptPaxDelayInitial’, ’ExemptPaxDelaySub’, ’ExemptPaxDelayComp’, ’ExemptEmmissionInitial’, ’ExemptEmmissionSub’, ’ExemptEmmissionComp’, ’NonexeFlights’, ’NonexePAX’, ’NonexeCancelled’, ’NonexePaxTransf’, ’NonexeDelayInitial’, ’NonexeDelaySub’, ’NonexeDelayComp’, ’NonexePaxDelayInitial’, ’NonexePaxDelaySub’, ’NonexePaxDelayComp’, ’NonexeEmmissionInitial’, ’NonexeEmmissionSub’, ’NonexeEmmissionComp’, ’IntFlights’, ’IntPAX’, ’IntCancelled’, ’IntPaxTransf’, ’IntDelayInitial’, ’IntDelaySub’, ’IntDelayComp’, ’IntPaxDelayInitial’, ’IntPaxDelaySub’, ’IntPaxDelayComp’, ’IntEmmissionInitial’, ’IntEmmissionSub’, ’IntEmmissionComp’, ’DomFlights’, ’DomPAX’, ’DomCancelled’, ’DomPaxTransf’, ’DomDelayInitial’, ’DomDelaySub’, ’DomDelayComp’, ’DomPaxDelayInitial’, ’DomPaxDelaySub’, ’DomPaxDelayComp’, ’DomEmmissionInitial’, ’DomEmmissionSub’, ’DomEmmissionComp’, ’Seats’, ’SeatsFlown’, ’ExemptSeats’, ’ExemptSeatsFlown’, ’NonexeSeats’, ’NonexeSeatsFlown’, ’IntSeats’, ’IntSeatsFlown’, ’DomSeats’, ’DomSeatsFlown’); fprintf(OFN3,’\n’); i=0; for i=1:OriginCounter fprintf(OFN3,’%s,’,char(OriginAll(i).NAME)); fprintf(OFN3,’%f,’,OutputO1(i,:)); fprintf(OFN3,’\n’); end fclose(OFN3); toc 292 293 Description Agusta 109 (Helicopter) Antonov An-124 Rusian Airbus Industries A300B2 Airbus Industries A300B4-600 Airbus Industries A300B4-600 Airbus Industries A300B2 Airbus Industries Airbus A310 Airbus Industries Airbus A318 Airbus Industries Airbus A319 Airbus Industries Airbus A320 Airbus Industries Airbus A320 Airbus Industries Airbus A320 Airbus Industries Airbus A321 Airbus Industries Airbus A321-232 Airbus Industries Airbus A322 Airbus Industries Airbus A330-300 Airbus A33034 Airbus Industries Airbus A330-200 Airbus Industries Airbus A330-300 Airbus Industries Airbus A340-200 Airbus Industries Airbus A342 Airbus Industries Airbus A340-300 Airbus Industries Airbus A340-200 Airbus Industries Airbus A340-600 Beech Aircraft Bonanza 36 Airbus Industries Airbus A380 British Aerospace BAe HS 748 LTV Corsair II Gulfstream American Traveler Rockwell Commander 112/114 Rockwell Aero Commander 112 Rockwell Commander 500 Rockwell Commander 560 Aero commander Super Rockwell Turbo Commander Rockwell Turbo Commander 690 Rockwell Turbo Commander 695 Piper Aircraft Aero Star Israel Aircraft Astrojet Aerospatiale Israel Aircraft Astra 1125 Aerospatiale ATR 42-200/300 Aerospatiale/Italy ATR 42-300 Aerospatiale/Italy ATR-72 British Aerospace BAe ATP Adv Turbo Aerospatiale ATR 42-200/300 Beech Aircraft Beech 1900/C-12J Williams James R. Beech Aircraft KingAir 200 Beech Aircraft Beech Aircraft Super King Air 350 Beech Aircraft Bonanza 36 Beech Aircraft Bonanza 36T Beech Aircraft Bell 430 (Helicopter) Name A109 A124 A300 A30062 A306 A30B A310 A318 A319 A32 A320 A32023 A321 A32123 A322 A330 A33034 A332 A333 A340 A342 A343 A345 A346 A36 A380 A748 A7D AA5 AC11 AC12 AC50 AC56 AC69 AC6T AC90 AC95 AEST AJ25 AS65 ASTR AT42 AT43 AT72 ATP ATR B190 B1RD B200 B343 B350 B36 B36T B378 B430 Beech King Air 350 Cessna 441 Conquest2 Cessna 441 Conquest2 Westwind 2 ATR42 ATR42 ATR72-200 Bae ATP ATR42 BH-1900 A340-300 A340-200 A340-642 Cessna 172 Skyhawk B747-400 HS 748 2A SERIES A-7E CORSAIR Cessna 441 Conquest2 Rockwell Commander Cessna 172 Skyhawk Navajo Aztec Cessna 441 Conquest2 Cessna 441 Conquest2 Cessna 441 Conquest2 Cessna 441 Conquest2 Navajo CL600 A330 A330-300 A330 A330-300 A340-300 B747-200 A300-600 A300-B4-622R A300-B4-605R A300B A310 A318 A319 A320 A320 A320-200 A321 A321 EDMS AIRFR 2 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 1 4 2 1 2 1 1 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2 2 2 2 2 2 Engines Taxi Fuel Rate (kg/hour) 0.00145 0.237000003 0.219999999 0.210999995 0.204999998 0.204999998 0.150000006 0.119999997 0.097000003 0.128000006 0.128000006 0.128000006 0.115000002 0.115000002 0.115000002 0.25 0.25 0.25 0.25 0.119999997 0.119999997 0.119999997 0.119999997 0.230000004 0.000989 0.208000004 0.0517 0.1373 0.0144 0.000989 0.000989 0.003158 0.003158 0.0144 0.0144 0.0144 0.0144 0.003158 0.048900001 0.000989 0.026000001 0.04236 0.04236 0.050500002 0.01 0.04236 0.025599999 0.000989 0.0144 0.021 0.021 0.0144 0.0144 0.021 Typical Seats 8 8 250 266 266 250 220 107 124 164 164 150 199 199 199 295 295 253 295 261 261 261 261 380 5 555 51 1 4 4 2 7 7 7 7 7 10 6 9 5 9 50 50 70 68 50 19 2 6 8 8 15 15 8 9 Etaxi (kg/min) 0.174000000 56.880000720 26.399999880 25.319999400 24.599999760 24.599999760 18.000000720 14.399999640 11.640000360 15.360000720 15.360000720 15.360000720 13.800000240 13.800000240 13.800000240 30.000000000 30.000000000 30.000000000 30.000000000 28.799999280 28.799999280 28.799999280 28.799999280 55.200000960 0.059340000 49.920000960 6.204000000 8.238000000 1.728000000 0.059340000 0.059340000 0.378960000 0.378960000 1.728000000 1.728000000 1.728000000 1.728000000 0.378960000 5.868000120 0.059340000 3.120000120 5.083200000 5.083200000 6.060000240 1.200000000 5.083200000 3.071999880 0.059340000 1.728000000 2.520000000 2.520000000 1.728000000 1.728000000 2.520000000 0.000000000 Eapu (kg/min) 0.024166667 3.950000163 3.666666755 3.516666684 3.416666731 3.416666731 2.500000171 2.000000007 1.616666763 2.133333494 2.133333494 2.133333494 1.916666755 1.916666755 1.916666755 4.166666786 4.166666786 4.166666786 4.166666786 2.000000007 2.000000007 2.000000007 2.000000007 3.833333510 0.016483334 3.466666832 0.861666691 2.288333399 0.240000007 0.016483334 0.016483334 0.052633335 0.052633335 0.240000007 0.240000007 0.240000007 0.240000007 0.052633335 0.815000040 0.016483334 0.433333362 0.706000020 0.706000020 0.841666724 0.166666671 0.706000020 0.426666662 0.016483334 0.240000007 0.350000010 0.350000010 0.240000007 0.240000007 0.350000010 0.000000000 Appendix B: Appendix B: Fuel Burn and Seats by Aircraft Type B36 B350 B350 BIRD TB9 A340 A321 Same As C404 294 Description British Aerospace BAe-146-100 State British Aerospace BAe-146-200 Quiet British Aerospace BAe-146-300 Boeing Company Stratofortress/ B52 Boeing Company Model 707-100/VC-137 Boeing Company Model 707-300 Boeing Company Model 707 120 Boeing Company Model 717-200 Boeing Company Model 717-200 Boeing Company Model 727-100 (C-22) Boeing Company Model 727-200 Boeing Company Model 727 Stage 3 Boeing Company Model 727-100 Boeing Company Model 727 Stage 3 Boeing Company Model 737-200 (VC96) Boeing Company Model 737-300 Boeing Company Model 737-400 Boeing Company Model 737-500 Boeing Company Model 737-600 Boeing Company Model 737-700 Boeing Company Model 737-800 Boeing Company Model 737-900 Boeing Company Model 737-100/200 Boeing Company Model 737 Boeing Company Model 737 Boeing Company Model 737-400 Boeing Company Model 737-400 Boeing Company Model 737 Stage 3 Boeing Company Model 737-300 Boeing Company Model 747-100 Boeing Company Model 747-200 Boeing Company Model 747-300 Boeing Company Model 747-400 Boeing Company B747 100/200/300 Boeing Company B747 100F Boeing Company Super Jet 747 400 Boeing Company Super Jet 747 400 Boeing Company Model 747SR Boeing Company Super Jet 747-300 Boeing Company Model 757-200 Boeing Company Model 757-300 Boeing Company Model 754 Boeing Company B757/JT10D Boeing Company B758 Boeing Company Model 767-200 Boeing Company Model 767-300 Boeing Company Model 767-400 Boeing Company B767/CF6-80A Boeing Company B77 Boeing Company Model 777-200 Boeing 777-300 Boeing Company B777 Boeing Company Boeing 787 Boeing Company B7X7 Beech Aircraft King Air 90 British Aircraft BAC 111 British Aircraft BAe 4100 British Aircraft BAe 146/RJ/Avrolin British Aircraft BAC 111 Name B461 B462 B463 B52BDE B701 B703 B707 B712 B717 B721 B722 B722Q B727 B72Q B732 B733 B734 B735 B736 B737 B738 B739 B73A B73B B73C B73F B73J B73Q B73S B741 B742 B743 B744 B747 B74A B74B B74F B74R B74S B752 B753 B754 B757 B758 B762 B763 B764 B767 B77 B772 B773 B777 B787 B7X7 B90 BA11 BA41 BA46 BAC111 Beech King Air 90 BAC-111-100 Jetstream 41 AVRO-RJ70 BAC-111-100 B777-200 B777-300 B777-200 B767-400ER B767-200 B767-300 B767-400ER B767-300 B757-200 B757-200 B757-300 B707-100 B717-200 B717-200 B727-100 B727-200 B727-200 B727-200 B727-200 B737-200 B737-300 B737-400 B737-500 B737-600 B737-700 B737-800 B737-900 B737-100 B737-500 B737-800 B737-400 B737-500 B737-200 B737-500 B747-100 B747-200 B747-300 B747-400 B747-400 B747-100F B747-400 B747-400F B747-SP BAE146-100 BAE146-200 BAE146-300 A-3 Skywarrior B707-100 EDMS AIRFR 4 4 4 2 4 4 4 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 4 2 Engines Taxi Fuel Rate (kg/hour) 0.040800001 0.040800001 0.040800001 0.138999999 0.135000005 0.135000005 0.135000005 0.101000004 0.101000004 0.132300004 0.147699997 0.147699997 0.147699997 0.147699997 0.137199998 0.114 0.119000003 0.123999998 0.123999998 0.104999997 0.112999998 0.112999998 0.147699997 0.123999998 0.112999998 0.119000003 0.123999998 0.137199998 0.123999998 0.210999995 0.237000003 0.163000003 0.208000004 0.208000004 0.210999995 0.208000004 0.199000001 0.210999995 0.208000004 0.151999995 0.158999994 0.158999994 0.151999995 0.151999995 0.150000006 0.150000006 0.204999998 0.150000006 0.231999993 0.231999993 0.370000005 0.231999993 0.204999998 0.150000006 0.0144 0.127000004 0.025 0.045299999 0.127000004 Typical Seats 80 85 116 5 110 110 110 106 106 94 145 145 94 145 115 128 146 108 110 126 162 177 100 108 162 146 108 115 108 452 452 470 416 416 452 416 416 316 416 208 240 240 208 208 216 210 245 216 305 305 394 305 250 216 8 89 29 82 89 Etaxi (kg/min) 9.792000240 9.792000240 9.792000240 16.679999880 32.400001200 32.400001200 32.400001200 12.120000480 12.120000480 23.814000720 26.585999460 26.585999460 26.585999460 26.585999460 16.463999760 13.680000000 14.280000360 14.879999760 14.879999760 12.599999640 13.559999760 13.559999760 17.723999640 14.879999760 13.559999760 14.280000360 14.879999760 16.463999760 14.879999760 50.639998800 56.880000720 39.120000720 49.920000960 49.920000960 50.639998800 49.920000960 47.760000240 50.639998800 49.920000960 18.239999400 19.079999280 19.079999280 18.239999400 18.239999400 18.000000720 18.000000720 24.599999760 18.000000720 27.839999160 27.839999160 44.400000600 27.839999160 24.599999760 18.000000720 1.728000000 15.240000480 3.000000000 10.871999760 15.240000480 Eapu (kg/min) 0.680000036 0.680000036 0.680000036 2.316666716 2.250000148 2.250000148 2.250000148 1.683333448 1.683333448 2.205000130 2.461666687 2.461666687 2.461666687 2.461666687 2.286666699 1.900000054 1.983333440 2.066666692 2.066666692 1.750000000 1.883333354 1.883333354 2.461666687 2.066666692 1.883333354 1.983333440 2.066666692 2.286666699 2.066666692 3.516666684 3.950000163 2.716666794 3.466666832 3.466666832 3.516666684 3.466666832 3.316666778 3.516666684 3.466666832 2.533333322 2.649999976 2.649999976 2.533333322 2.533333322 2.500000171 2.500000171 3.416666731 2.500000171 3.866666660 3.866666660 6.166666926 3.866666660 3.416666731 2.500000171 0.240000007 2.116666794 0.416666679 0.755000005 2.116666794 B767 B777 B757 B753 B74B B707 Same As 295 Description Beech Aircraft King Air 100 A/B Beech Aircraft Twin Beech 18/H18 Beech Aircraft Sport 19/Musk Sport Beech Aircraft Super King Air 200 Beech Aircraft Sundowner 23/Musk 23 Beech Aircraft Sierra 24/Musk Super Beech Aircraft Super King Air 300 Beech Aircraft Bonanza 33/ Debonair Beech Aircraft Bonanza 35 Beech Aircraft Bonanza 36 Beech Aircraft Super King Air 350 Beech/Raytheon Beechjet 400/Hawker Beech Aircraft Mentor Beech Aircraft Baron 55/Chochise Beech Aircraft Baron 58/Foxstar Beech Aircraft Duke 60 Beech Aircraft Queen Air 65 (U-8F) Beech Aircraft Duchess 76 Beech Aircraft Queen Air 80 Beech Aircraft King Air 90 Beech Aircraft Travelair 95 Beech Aircraft Airliner 99 Beech Aircraft Beech F90 Beech Aircraft King Air 90;A90-E90 Beech Aircraft Beech F90 King Air Beech Aircraft King Air Taylor Bird/ TA-2&TA-3 MBB/Kawasaki Model BK 117 Lockheed Corp Hercules 130 Lockheed Corp Hercules 130 Boeing Company C-135 Stratolifter Boeing Company C-135 Stratolifter Lockheed Corp Starlifter Lockheed Corp Starlifter Cessna Aircraft Cessna 150 Cessna Aircraft Cessna 152 Nord Aviation Transall C-160/ND16 McDonnell-Douglas Globemaster 3 Cessna Aircraft Skyhawk 172/Cutlass Cessna Aircraft Cardinal 177 Cessna Aircraft Skywagon 180 Cessna Aircraft Skylane 182 Cessna Aircraft Skywagon 185 Grumman Aerospace Greyhound Gulfstream American Gulfstream III Cessna Aircraft Stationair 6/Turbo Cessna Aircraft Stationair/Turbo 7/ Cessna Aircraft Caravan 1-208 Super Gulfstream American Gulfstream III Gates Learjet Cessna Aircraft Centurion 210 Construcciones C-212 Aviocar Gates Learjet same as L35 Cessna Aircraft Citation CJ2 Cessna Aircraft Citation CJ3 Cessna Aircraft Crusader 303 Riley Aircraft M65 Rocket/Turbo Cessna Aircraft Skyknight 320 Cessna Aircraft Super Skymaster 337 Name BE10 BE18 BE19 BE20 BE23 BE24 BE30 BE33 BE35 BE36 BE3B BE40 BE45 BE55 BE58 BE60 BE65 BE76 BE80 BE90 BE95 BE99 BE9F BE9L BE9T BEC100 BIRD BK17 C130 C130AD C135 C135A C141 C141A C150 C152 C160 C17 C172 C177 C180 C182 C185 C2 C20 C206 C207 C208 C20A C21 C210 C212 C21A C25A C25B C303 C310 C320 C337 Cessna 441 Conquest2 Navajo Cessna 441 Conquest2 337H Skymaster Cessna 172 Skyhawk Cessna 441 Conquest2 Learjet 35/36 552 Citation Beech King Air 100 Aztec DHC-6 Beech King Air 200 Cessna 172 Skyhawk Cessna 172 Skyhawk Beech King Air 300 Cessna 172 Skyhawk Cessna 441 Conquest2 Cessna 441 Conquest2 DHC-6 Beechjet 400 Cessna 441 Conquest2 Navajo Aztec Aztec Aztec Navajo Aztec Cessna 441 Conquest2 Cessna 441 Conquest2 BH-C99 Beech King Air 90 Cessna 441 Conquest2 Beech King Air 90 Beech King Air 100 Cessna 172 Skyhawk Aztec C-130 HERCULES C-130E HERCULES C-135 C-135 C-141 C-141 Cessna 150 Cessna 150 C-130 HERCULES C-17A Cessna 172 Skyhawk Cessna 172 Skyhawk Cessna 150 Cessna 172 Skyhawk Cessna 150 E-2 HAWKEYE Gulfstream III Cessna 441 Conquest2 Cessna 172 Skyhawk Cessna 208 Caravan Gulfstream III EDMS AIRFR 2 2 2 2 1 1 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 4 4 4 4 4 4 1 1 4 4 1 1 1 1 1 2 2 2 1 1 2 2 1 2 2 2 2 2 2 2 2 Engines Taxi Fuel Rate (kg/hour) 0.0144 0.003158 0.0149 0.0185 0.000989 0.000989 0.021 0.000989 0.0144 0.0144 0.0149 0.0296 0.0144 0.003158 0.003158 0.003158 0.003158 0.003158 0.003158 0.0144 0.0144 0.0147 0.0144 0.0144 0.0144 0.0144 0.000989 0.003158 0.076899998 0.094999999 0.215000004 0.215000004 0.139599994 0.139599994 0.00104 0.00104 0.076899998 0.1391 0.000989 0.000989 0.00104 0.000989 0.00104 0.094999999 0.127000004 0.0144 0.000989 0.0138 0.127000004 0.024 0.000989 0.0144 0.024 0.0261 0.0261 0.0144 0.003158 0.0144 0.00145 Typical Seats 8 9 4 6 4 4 6 4 6 6 6 7 2 5 5 4 9 4 9 6 4 15 6 6 6 8 2 10 2 2 2 2 2 2 2 2 2 2 4 4 6 4 6 2 5 6 6 9 5 8 6 22 8 6 6 6 6 6 6 Etaxi (kg/min) 1.728000000 0.378960000 1.788000000 2.220000000 0.059340000 0.059340000 2.520000000 0.059340000 1.728000000 1.728000000 1.788000000 3.552000000 1.728000000 0.378960000 0.378960000 0.378960000 0.378960000 0.378960000 0.378960000 1.728000000 1.728000000 1.764000000 1.728000000 1.728000000 1.728000000 1.728000000 0.059340000 0.378960000 18.455999520 22.799999760 51.600000960 51.600000960 33.503998560 33.503998560 0.062400000 0.062400000 18.455999520 33.384000000 0.059340000 0.059340000 0.062400000 0.059340000 0.062400000 11.399999880 15.240000480 1.728000000 0.059340000 0.828000000 15.240000480 2.880000000 0.059340000 1.728000000 2.880000000 3.132000000 3.132000000 1.728000000 0.378960000 1.728000000 0.174000000 Eapu (kg/min) 0.240000007 0.052633335 0.248333340 0.308333342 0.016483334 0.016483334 0.350000010 0.016483334 0.240000007 0.240000007 0.248333340 0.493333347 0.240000007 0.052633335 0.052633335 0.052633335 0.052633335 0.052633335 0.052633335 0.240000007 0.240000007 0.245000007 0.240000007 0.240000007 0.240000007 0.240000007 0.016483334 0.052633335 1.281666670 1.583333362 3.583333502 3.583333502 2.326666633 2.326666633 0.017333334 0.017333334 1.281666670 2.318333400 0.016483334 0.016483334 0.017333334 0.016483334 0.017333334 1.583333362 2.116666794 0.240000007 0.016483334 0.230000007 2.116666794 0.400000011 0.016483334 0.240000007 0.400000011 0.435000012 0.435000012 0.240000007 0.052633335 0.240000007 0.024166667 C25A C21A Same As 296 Description Beech Aircraft Bonanza 33/ Debonair Cessna Aircraft Cessna 340 Cessna Aircraft Cessna 401 Cessna Aircraft Cessna 401/402 Cessna Aircraft Titan 404 Cessna Cessna Aircraft Chancellor 414 Cessna Aircraft Golden Eagle 421 Cessna Aircraft Golden Eagle 421 Cessna Aircraft Corsair/Conquest Cessna Aircraft Conquest/Conquest 2 Beech Aircraft Twin Beech 18 Curtis-Wright Commando CW20 McDonnell-Douglas Skytrain Lockheed Corp Galaxy C5A Cessna Aircraft Citation 1 Cessna Aircraft Citation 1-SP Cessna Aircraft Citationjet C525 Cessna Aircraft Citationjet C526 Cessna Aircraft Citation 2 Cessna Aircraft Citation 2-SP Cessna Aircraft Citation 5 Cessna Aircraft Citation Excel/560X Lockheed Corp Galaxy C5A Cessna Aircraft Citation 3/6/7 Cessna Aircraft Citation 3/6/7 Cessna Aircraft 680 Sovereign Cessna Aircraft Cutlass RG/172RG Cessna Aircraft Citation 10 Cessna Aircraft Cardinal RG/177RG DeHavilland Caribou Cessna Aircraft Skyland RG/Turbo McDonnell-Douglas C9A/C Nightingale Canadair Bombardier REGIONAL JET DeHavilland Twin Otter Canadair Bombardier Challenger 300 Canadair Bombardier CL600/610 Chall Canadair Bombardier CL600/610 Chall Canadair Bombardier Challenger 604 Canadair Bombardier Regional Jet Canadair Bombardier Lancair Columbia 300 Lancair Columbia 400 Canadair Bombardier Regional Jet Canadair Bombardier RJ-100 Regional Canadair Bombardier RJ-200 Regional Canadair Bombardier RJ-700 Regional Canadair Bombardier RJ-900 Regional General Dynamics Convair 580 General Dynamics Convair 240/340/44 Canadair Bombardier Cosmopolitan General Dynamics Convair 580 Dornier-GmbH Dornier 228-100/200 Dornier-GmbH Dornier 328 Series Dassault-Breguet Falcon 20/Series D Dassault-Breguet Falcon 10 Dassault-Breguet Mystere Falcon 200 Diamond/Canada DV-20 Katana/DA-22 Dassault-Breguet Mystere Falcon 50 Name C33A C340 C401 C402 C404 C408 C414 C420 C421 C425 C441 C45 C46 C47 C5 C500 C501 C525 C526 C550 C551 C560 C56X C5A C650 C65X C680 C72R C750 C77R C7A C82R C9 CARJ CC138 CL30 CL60 CL600 CL64 CL65 CL6O COL3 COL4 CRJ CRJ1 CRJ2 CRJ7 CRJ9 CV58 CVLP CVLT CVR580 D228 D328 DA02 DA10 DA20 DA40 DA50 Conquest2 Skyhawk X Skyhawk Canadair Reg-100 Canadair Reg-100 Canadair Reg-100 Canadair Reg-700 Canadair Reg-700 Convair liner Convair liner ATR72-200 ATR72-200 DHC-6 DO 328 Falcon 20 Falcon 100 Falcon 20 Robin DR 400 Falcon 50 Canadair Reg-100 CL600 Canadair Reg-100 CL600 Canadair Reg-100 DHC-6 Cessna 172 CITATION Cessna 172 DHC-6 Cessna 441 Aztec Navajo Navajo Cessna 441 Conquest2 Cessna 441 Conquest2 Aztec C-1A TRADER C-1A TRADER C-5 Galaxy 550 Citation CITATION I SP 552 Citation 552 Citation CITATION T-47A CITATION II SP 560 Citation V 560 Citation V C-5 Galaxy Citation VII Citation VII Cessna 172 Skyhawk Navajo Aztec Aztec 337H Skymaster EDMS AIRFR 1 2 2 2 2 2 2 2 2 2 2 2 2 2 4 2 2 2 2 2 2 2 2 4 2 2 2 1 2 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 3 Engines Taxi Fuel Rate (kg/hour) 0.000989 0.003158 0.003158 0.003158 0.00145 0.00145 0.003158 0.003158 0.003158 0.0144 0.0144 0.003158 0.0112 0.0112 0.142399997 0.0261 0.023 0.0261 0.0261 0.0261 0.0261 0.0296 0.0296 0.142399997 0.026000001 0.026000001 0.026000001 0.000989 0.037700001 0.000989 0.0149 0.0144 0.129099995 0.048900001 0.0149 0.048900001 0.048900001 0.048900001 0.048900001 0.048900001 0.048900001 0.000989 0.000989 0.048900001 0.048900001 0.048900001 0.068999998 0.068999998 0.0526 0.0526 0.050500002 0.050500002 0.0149 0.054200001 0.057999998 0.024 0.057999998 0.000989 0.026000001 Typical Seats 5 6 8 8 10 10 8 8 8 6 9 9 36 27 73 7 7 5 6 6 6 8 10 10 6 6 6 4 12 4 30 4 80 50 8 18 18 18 19 19 18 4 4 50 50 50 50 50 56 56 56 56 16 32 10 8 8 4 12 Etaxi (kg/min) 0.059340000 0.378960000 0.378960000 0.378960000 0.174000000 0.174000000 0.378960000 0.378960000 0.378960000 1.728000000 1.728000000 0.378960000 1.344000000 1.344000000 34.175999280 3.132000000 2.760000000 3.132000000 3.132000000 3.132000000 3.132000000 3.552000000 3.552000000 34.175999280 3.120000120 3.120000120 3.120000120 0.059340000 4.524000120 0.059340000 1.788000000 1.728000000 15.491999400 5.868000120 1.788000000 5.868000120 5.868000120 5.868000120 5.868000120 5.868000120 5.868000120 0.059340000 0.059340000 5.868000120 5.868000120 5.868000120 8.279999760 8.279999760 6.312000000 6.312000000 6.060000240 6.060000240 1.788000000 6.504000120 6.959999760 2.880000000 6.959999760 0.059340000 4.680000180 Eapu (kg/min) 0.016483334 0.052633335 0.052633335 0.052633335 0.024166667 0.024166667 0.052633335 0.052633335 0.052633335 0.240000007 0.240000007 0.052633335 0.186666672 0.186666672 2.373333351 0.435000012 0.383333344 0.435000012 0.435000012 0.435000012 0.435000012 0.493333347 0.493333347 2.373333351 0.433333362 0.433333362 0.433333362 0.016483334 0.628333368 0.016483334 0.248333340 0.240000007 2.151666645 0.815000040 0.248333340 0.815000040 0.815000040 0.815000040 0.815000040 0.815000040 0.815000040 0.016483334 0.016483334 0.815000040 0.815000040 0.815000040 1.150000000 1.150000000 0.876666692 0.876666692 0.841666724 0.841666724 0.248333340 0.903333376 0.966666661 0.400000011 0.966666661 0.016483334 0.433333362 CL60 BE24 BE24 CL60 DC9 C650 C404 Same As 297 Description Dassault-Breguet Mystere Falcon 50/900 McDonnell-Douglas DC-10-10/30/40 McDonnell-Douglas DC-10-10/30/40 McDonnell-Douglas Skytrain McDonnell-Douglas Skymaster McDonnell-Douglas Liftmaster McDonnell-Douglas DC-7/7B McDonnell-Douglas DC-8-10/20 McDonnell-Douglas DC-8-10/20 McDonnell-Douglas DC-8-60 McDonnell-Douglas DC-8-60 McDonnell-Douglas DC-8-70 McDonnell-Douglas DC-8 Stage 3 McDonnell-Douglas DC-9-30/10/50 McDonnell-Douglas DC-9-10 McDonnell-Douglas DC-9-10 McDonnell-Douglas DC-9-30 (C9/VC9.. McDonnell-Douglas DC-9-30 (C9/VC9.. McDonnell-Douglas DC-9-40 McDonnell-Douglas DC-9-40 McDonnell-Douglas DC-9-50 McDonnell-Douglas DC-9-50 McDonnell-Douglas DC-9 Stage 3 McDonnell-Douglas DC-9 Stage 3 DeHavilland DeHavilland Turbo Beaver DeHavilland DASH-8 DeHavilland DASH 8/DHC8-100 DeHavilland DASH 8/DHC8-200 DeHavilland DASH 8/DHC8-300 DeHavilland DASH 8/DHC8-400 DeHavilland DeHavilland Twin Otter DeHavilland Twin Otter DeHavilland DASH-8 DeHavilland DASH 8/DHC8-300 Fairchild Dornier 729 Grumman J2F Embraer Bandeirante EMB110 Embraer Brasilia EMB120 Embraer ERJ-135 Embraer ERJ-140 Embraer EMB145/EP/EU/LU Embraer EMB170 Embraer ERJ-175 Embraer ERJ-190 Embraer ERJ-195 Embraer Embraer EMB145/EP/EU/LU Airbus Industries Airbus A320 Airbus Industries Airbus Fokker Fokker 100 Fokker Fokker 100 Grumman Aerospace Tomcat Grumman Tomcat McDonnell-Douglas Eagle General Dynamics F16 A/B General Dynamics F16 A/B Northrop/McDon-Doug F18 Hornet Name DA90 DC10 DC1010 DC3 DC4 DC6 DC7 DC8 DC820 DC86 DC860 DC87 DC8Q DC9 DC91 DC910 DC93 DC930 DC94 DC9411 DC95 DC950 DC9Q DC9Q7 DH2 DH2T DH8 DH8A DH8B DH8C DH8D DHA DHC6 DHC6QP DHC8 DHC830 DO728 DUCK E110 E120 E135 E140 E145 E170 E175 E190 E195 E45 E45X EA32 EA34 F100 F10062 F14 F14A F15 F16 F16A F18 135/140 135/140 145 170 170 170 170 A340-300 Fokker 100 Fokker 100 F-14A Tomcat F-14A Tomcat F-15 F-16 F-16 F/A-18 HORNET Embraer ERJ 145 EMB-110 EMB-120 Embraer ERJ Embraer ERJ Embraer ERJ Embraer ERJ Embraer ERJ Embraer ERJ Embraer ERJ DHC-6 DHC-6 DHC-8-400 DHC-8-300 Canadair Reg-700 Cessna 172 Skyhawk DHC-8-400 DHC-8-100 DHC-8-200 DHC-8-200 DHC-8-400 DC10-30 DC10-10 C-1A TRADER DHC-6 C-130 HERCULES DC8 DC8-71 DC8 DC8-62F DC8-60 DC8-70 DC8 DC9-30 DC9-10 DC9-10 DC9-30 DC9-30 DC9-40 DC9-40 DC9-50 DC9-50 DC9-10 DC9-10 EDMS AIRFR 3 3 3 2 2 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 4 2 2 2 2 2 1 1 2 Engines Taxi Fuel Rate (kg/hour) 0.026000001 0.163000003 0.172800004 0.0112 0.0149 0.076899998 0.128000006 0.129999995 0.128000006 0.128000006 0.135000005 0.128000006 0.128000006 0.129099995 0.129099995 0.129099995 0.129099995 0.129099995 0.145500004 0.145500004 0.147400007 0.147400007 0.129099995 0.129099995 0.000989 0.000989 0.050900001 0.04236 0.049899999 0.049899999 0.050900001 0.04236 0.0149 0.0149 0.050900001 0.050900001 0.068999998 0.000989 0.0147 0.042100001 0.046999998 0.046999998 0.048999999 0.061999999 0.061999999 0.061999999 0.061999999 0.048999999 0.048999999 0.128000006 0.119999997 0.119000003 0.119000003 0.115999997 0.115999997 0.1382 0.1382 0.1382 0.078599997 Typical Seats 12 270 270 32 44 56 99 144 144 220 220 220 220 80 80 80 105 105 125 125 139 139 139 80 8 8 37 37 37 50 78 37 8 8 37 50 85 2 18 30 44 44 50 70 78 98 108 50 50 164 261 100 100 1 1 1 1 1 1 Etaxi (kg/min) 4.680000180 29.340000540 31.104000720 1.344000000 1.788000000 18.455999520 30.720001440 31.199998800 30.720001440 30.720001440 32.400001200 30.720001440 30.720001440 15.491999400 15.491999400 15.491999400 15.491999400 15.491999400 17.460000480 17.460000480 17.688000840 17.688000840 15.491999400 15.491999400 0.059340000 0.059340000 6.108000120 5.083200000 5.987999880 5.987999880 6.108000120 5.083200000 1.788000000 1.788000000 6.108000120 6.108000120 8.279999760 0.059340000 1.764000000 5.052000120 5.639999760 5.639999760 5.879999880 7.439999880 7.439999880 7.439999880 7.439999880 5.879999880 5.879999880 15.360000720 28.799999280 14.280000360 14.280000360 13.919999640 13.919999640 16.584000000 8.292000000 8.292000000 9.431999640 Eapu (kg/min) 0.433333362 2.716666794 2.880000149 0.186666672 0.248333340 1.281666670 2.133333494 2.166666645 2.133333494 2.133333494 2.250000148 2.133333494 2.133333494 2.151666645 2.151666645 2.151666645 2.151666645 2.151666645 2.425000136 2.425000136 2.456666854 2.456666854 2.151666645 2.151666645 0.016483334 0.016483334 0.848333374 0.706000020 0.831666674 0.831666674 0.848333374 0.706000020 0.248333340 0.248333340 0.848333374 0.848333374 1.150000000 0.016483334 0.245000007 0.701666703 0.783333322 0.783333322 0.816666673 1.033333346 1.033333346 1.033333346 1.033333346 0.816666673 0.816666673 2.133333494 2.000000007 1.983333440 1.983333440 1.933333339 1.933333339 2.303333399 2.303333399 2.303333399 1.309999987 A320 E45X BIRD DH8A DH2T Same As DA50 298 Description Northrop/McDon-Doug F18 Hornet VFW Fokker Friendship F27/F227 VFW Fokker Fellowship VFW Fokker Fellowship Dassault-Breguet Falcon 2000 Cessna Aircraft Caravan2-F406 McDonnell-Douglas Phantom II Fokker BV Fokker 50/Maritime Northrop Freedom Fighter Fokker BV Fokker 70 Dassault-Breguet Mystere Falcon 900 Dassault-Breguet Falcon 10/Mystere Northrop/McDon-Doug F18 Hornet Dassault-Breguet Falcon 20/Mystere Dassault-Breguet Falcon 50/Mystere Falcon 7X Dassault-Breguet Mystere Falcon 900 Generic Military heavy fighter Fokker BV Fokker 100 Gulfstream Grumman American Gulfstream I Grumman American Gulfstream II Gulfstream American Gulfstream III Gulfstream American Gulfstream IV Gulfstream IAI Gulfstream200 Bombardier C-GBLX BD-700-1A10 Gulfstream Bombardier Global 5000 Bombardier BD-700 Global Exp Gulfstream Aerospace Gulfstream 2 Gulfstream Aerospace Gulfstream 2 Gulfstream Aerospace Gulfstream 3 Gulfstream Aerospace Gulfstream 4 Gulfstream Aerospace Gulfstream 5 Gulfstream Aerospace Gulfstream 2 C-GTWN Aerospatiale AS 355N British Aerospace Bae British Aerospace BAe HS 125/1-2-3 British Aerospace BAe HS 125/700-80 British Aerospace BAe HS 125/1000 British Aerospace BAe HS 125/1000 (Helicopter) Raytheon Hawker Ilyushin Fairchild Dornier 328JET British Aerospace BAe-3100 Jetstrea British Aerospace BAe-3200 Super British Aerospace BAe-4100 Jetstrea Boeing Company Stratotanker KC-135D Boeing Company Stratotanker KC-135R McDonnell-Douglas DC-10 Lockheed Corp L-1011 Tri-Star Lockheed Corp L-1011 Tri-Star Lockheed Corp Electra/Orion Gates Learjet Learjet 25 Lockheed Corp Jetstar Gates Learjet Learjet 24 Gates Learjet Learjet 25 Name F-18 F27 F28 F28MK2 F2TH F406 F4C F50 F5AB F70 F900 FA10 FA18 FA20 FA50 FA7X FA90 FGTH FK10 G150 G159 G2 G3 G4 G450 GALX GBLX GFL5 GL5T GLEX GLF GLF2 GLF3 GLF4 GLF5 GLS2 GTWN H25 H25A H25B H25C H25G HELO HS25 IL62 J328 JS31 JS32 JS41 K35E K35R KC10A L101 L1011 L188 L25 L29B LJ24 LJ25 I II III IV IV V II III IV V II Dornier 328JET Jetstream 31 Jetstream 32 Jetstream 41 KC-135B KC-135R KC-10A L-1011-50 L-1011-50 L-188 A/C Learjet 25B Jetstar Learjet 24D Learjet 25B Citation VII CL600 CL600 CL600 Gulfstream Gulfstream Gulfstream Gulfstream Gulfstream Gulfstream Gulfstream Galaxy (IAI) G200 Gulfstream Gulfstream Gulfstream Gulfstream CL600 F-16 Fokker 100 F/A-18 HORNET F-27 SERIES F-28-4000 F-28-2000 Falcon 2000EX Cessna 441 Conquest2 F-4 PHANTOM II Fokker 50 F-5F TIGER II Fokker 70 CL600 Falcon 100 F/A-18 HORNET Falcon 20 Falcon 50 EDMS AIRFR 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 4 4 3 3 3 4 2 4 2 2 Engines Taxi Fuel Rate (kg/hour) 0.078599997 0.0517 0.0964 0.0964 0.044799998 0.0144 0.157499999 0.049699999 0.0504 0.109999999 0.048900001 0.024 0.078599997 0.057999998 0.026000001 0.026000001 0.048900001 0.1382 0.119000003 0.0517 0.0517 0.127000004 0.127000004 0.109999999 0.0517 0.042199999 0.109999999 0.089000002 0.089000002 0.109999999 0.089000002 0.127000004 0.127000004 0.109999999 0.089000002 0.127000004 0.000989 0.026000001 0.026000001 0.048900001 0.048900001 0.048900001 0.00145 0.0296 0.112999998 0.042199999 0.0164 0.018999999 0.025 0.128000006 0.129999995 0.163000003 0.224999994 0.224999994 0.076899998 0.064000003 0.026000001 0.064000003 0.064000003 Typical Seats 1 44 85 85 10 10 2 50 2 70 15 4 1 10 12 8 15 1 100 14 14 12 12 19 14 8 18 19 13 18 12 12 12 19 19 12 5 12 12 8 8 8 13 7 177 32 19 19 29 2 2 2 256 256 104 4 10 5 4 Etaxi (kg/min) 9.431999640 6.204000000 11.568000000 11.568000000 5.375999760 1.728000000 18.899999880 5.963999880 6.048000000 13.199999880 5.868000120 2.880000000 9.431999640 6.959999760 4.680000180 4.680000180 5.868000120 8.292000000 14.280000360 6.204000000 6.204000000 15.240000480 15.240000480 13.199999880 6.204000000 5.063999880 13.199999880 10.680000240 10.680000240 13.199999880 10.680000240 15.240000480 15.240000480 13.199999880 10.680000240 15.240000480 0.059340000 3.120000120 3.120000120 5.868000120 5.868000120 5.868000120 0.174000000 3.552000000 13.559999760 5.063999880 1.968000000 2.279999880 3.000000000 30.720001440 31.199998800 29.340000540 40.499998920 40.499998920 18.455999520 7.680000360 6.240000240 7.680000360 7.680000360 Eapu (kg/min) 1.309999987 0.861666691 1.606666713 1.606666713 0.746666655 0.240000007 2.625000058 0.828333340 0.840000024 1.833333369 0.815000040 0.400000011 1.309999987 0.966666661 0.433333362 0.433333362 0.815000040 2.303333399 1.983333440 0.861666691 0.861666691 2.116666794 2.116666794 1.833333369 0.861666691 0.703333337 1.833333369 1.483333409 1.483333409 1.833333369 1.483333409 2.116666794 2.116666794 1.833333369 1.483333409 2.116666794 0.016483334 0.433333362 0.433333362 0.815000040 0.815000040 0.815000040 0.024166667 0.493333347 1.883333354 0.703333337 0.273333341 0.316666659 0.416666679 2.133333494 2.166666645 2.716666794 3.750000007 3.750000007 1.281666670 1.066666747 0.433333362 1.066666747 1.066666747 C404 BE40 B739 TB9 H25A GLEX GLF5 G159 G159 FA50 Same As 299 Description Gates Learjet Learjet 28 Gates Learjet Learjet 30 LearJet/ Inc. Learjet 31/A/B Gates Learjet Learjet 35 Gates Learjet Learjet 35 Gates Learjet Learjet 36 Gates Learjet Learjet 40 Gates Learjet Learjet 45 Gates Learjet Learjet 55 LearJet/ Inc. Learjet 60 Ayres LoadMaster Gates Learjet Learjet 25 LearJet/ Inc. Learjet 31/A/B Gates Learjet Learjet 35 Gates Learjet Learjet 36 Gates Learjet Learjet 60 Mooney Aircraft M20/Mark 21/Ranger Mooney Aircraft M20/Mark 21/Ranger Mooney Aircraft M20/Mark 21/Ranger Mooney Aircraft Turbo Mooney M20K Maule Aircraft M-7-235/Mt-7 McDonnell-Douglas DC-10 w/ MD-11 co McDonnell-Douglas MD-11 McDonnell-Douglas MD-11 McDonnell-Douglas MD-80 Series McDonnell-Douglas MD-81 McDonnell-Douglas MD-82 McDonnell-Douglas MD-83 McDonnell-Douglas MD-87 McDonnell-Douglas MD-88 McDonnell-Douglas MD-88 McDonnell-Douglas MD-90 McDonnell-Douglas MD-90 Mitsubishi Marquise/Solitaire Mitsubishi Marquise/Solitaire Mitsubishi Diamond 1/ MU3 Mitsubishi Diamond 1/ MU3 Piaggio P.180 Avanti Cessna Aircraft Pressure Centurion Piper Aircraft Cherokee/Archer Piper Aircraft Dakota/Turbo/Charger Piper Aircraft Cherokee Arrow/Turbo Piper Aircraft Cherokee Lockheed Corp Electra/Orion Piper Aircraft Twin Commanche Piper Aircraft 0 Piper Aircraft 0 Lockheed Corp Electra/Orion Piper Aircraft Malibu Meridian Partenavia AP.68TP Piper Aircraft Apache Piper Aircraft Apache Piper Aircraft Commanche Piper Aircraft Pawnee Piper Aircraft Aztec Piper Aircraft Cherokee Piper Aircraft Cherokee Arrow/Turbo Piper Aircraft Twin Commanche Piper Aircraft Navajo Name LJ28 LJ30 LJ31 LJ34 LJ35 LJ36 LJ40 LJ45 LJ55 LJ60 LOADMS LR25 LR31 LR35 LR36 LR60 M20 M20P M20R M20T M7 MD10 MD11 MD11GE MD80 MD81 MD82 MD83 MD87 MD88 MD8819 MD90 MD9025 MU2 MU2B MU30 MU300 P180 P210 P28A P28B P28R P28T P3 P30 P32R P32T P3A P46T P68 PA23 PA23AP PA24 PA25 PA27 PA28 PA28AR PA30 PA31 25B 31 35/36 35/36 25B 35/36 31 35/36 35/36 35/36 35/36 35/36 35/36 Cessna 172 Skyhawk Cessna 172 Skyhawk Cessna 172 Skyhawk Cessna 172 Skyhawk Cessna 172 Skyhawk MD-11 MD-11-11F MD-11 MD-80 MD-80-81 MD-80-82 MD-80-83 MD-80-87 MD-80-88 MD-80-88 MD-90-30 MD-90-10 DHC-6 DHC-6 DIAMOND 300 DIAMOND 300 Cessna 441 Conquest2 Cessna 441 Conquest2 Piper PA-28 Piper PA-28 Piper PA-28 Cessna 441 Conquest2 E-2 HAWKEYE Twin Comanche Comanche Cessna T337 E-2 HAWKEYE Cessna 441 Conquest2 337H Skymaster Aztec Aztec Comanche Cessna 172 Skyhawk Aztec Piper PA-28 Cessna 172 Skyhawk Twin Comanche Navajo Learjet Learjet Learjet Learjet Learjet Learjet Learjet Learjet Learjet CL600 N262 Learjet Learjet Learjet Learjet EDMS AIRFR 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 2 1 2 2 2 2 2 2 1 1 2 1 1 2 2 Engines Taxi Fuel Rate (kg/hour) 0.064000003 0.024 0.024 0.024 0.024 0.024 0.024 0.024 0.024 0.048900001 0.01 0.064000003 0.024 0.024 0.024 0.024 0.000989 0.000989 0.000989 0.000989 0.000989 0.213 0.204999998 0.213 0.1303 0.1303 0.1303 0.137199998 0.1303 0.134399995 0.134399995 0.128000006 0.118000001 0.0149 0.0149 0.0261 0.0261 0.0144 0.0144 0.000989 0.000989 0.000989 0.0144 0.094999999 0.000989 0.003158 0.00102 0.094999999 0.0144 0.00145 0.003158 0.003158 0.003158 0.000989 0.003158 0.000989 0.000989 0.000989 0.003158 Typical Seats 8 8 8 8 8 8 10 10 8 9 34 4 8 8 8 8 4 4 4 4 5 2 323 323 172 142 142 142 109 142 142 162 172 7 7 7 7 9 6 4 4 4 4 104 6 6 6 104 6 7 4 4 4 1 4 4 4 6 8 Etaxi (kg/min) 7.680000360 2.880000000 2.880000000 2.880000000 2.880000000 2.880000000 2.880000000 2.880000000 2.880000000 5.868000120 1.200000000 7.680000360 2.880000000 2.880000000 2.880000000 2.880000000 0.059340000 0.059340000 0.059340000 0.059340000 0.059340000 38.340000000 36.899999640 38.340000000 15.636000000 15.636000000 15.636000000 16.463999760 15.636000000 16.127999400 16.127999400 15.360000720 14.160000120 1.788000000 1.788000000 3.132000000 3.132000000 1.728000000 1.728000000 0.059340000 0.059340000 0.059340000 1.728000000 11.399999880 0.118680000 0.189480000 0.122400000 11.399999880 1.728000000 0.174000000 0.378960000 0.378960000 0.189480000 0.059340000 0.378960000 0.059340000 0.059340000 0.118680000 0.378960000 Eapu (kg/min) 1.066666747 0.400000011 0.400000011 0.400000011 0.400000011 0.400000011 0.400000011 0.400000011 0.400000011 0.815000040 0.166666671 1.066666747 0.400000011 0.400000011 0.400000011 0.400000011 0.016483334 0.016483334 0.016483334 0.016483334 0.016483334 3.550000101 3.416666731 3.550000101 2.171666729 2.171666729 2.171666729 2.286666699 2.171666729 2.239999981 2.239999981 2.133333494 1.966666740 0.248333340 0.248333340 0.435000012 0.435000012 0.240000007 0.240000007 0.016483334 0.016483334 0.016483334 0.240000007 1.583333362 0.016483334 0.052633335 0.017000000 1.583333362 0.240000007 0.024166667 0.052633335 0.052633335 0.052633335 0.016483334 0.052633335 0.016483334 0.016483334 0.016483334 0.052633335 LR35 Same As 300 Description Piper Aircraft Navajo Piper Aircraft Cherokee Six Piper Aircraft Cherokee Six Piper Aircraft Seneca Piper Aircraft Pawnee Brave Piper Aircraft Cheyenne III/IV Piper Aircraft Seminole Piper Aircraft Malibu Piper Aircraft Cheyenne 1 Piper Aircraft Cheyenne 2 Piper Aircraft Cheyenne 3 Piper Aircraft Cheyenne 400 Piper Aircraft Aztec Pilatus PC-12 Pilatus PC-6A/B/C Turbo Raytheon/Beechcraft 0 Boeing RC135 Boeing Company Model 727-100RE Super 27 British Aerospace Avro RJ2 British Aerospace Avro RJ85 Aerospatiale/France Corvette-SN601 Sikorsky 76 (Helicopter) Sikorsky 92 (Helicopter) Stolp SA-900 V-Star SAAB 2000 Rockwell Sabreliner 265 Rockwell Sabreliner 265 Rockwell Sabreliner 265 Short Brothers Skyvan SAAB/Fairchild SF 340 SAAB/Fairchild SF 340 Short Brothers Shorts 330 Short Brothers Shorts 360 Sikorsky 76 (Helicopter) Aerospatiale/France Corvette-SN601 Cirrus Lockheed Corp Beech Aircraft Starship 2000 Swearingen SA-26 Merlin 2 Swearingen SA-226T/TB Merlin 3 Swearingen Merlin 4/4A Metro/2 Swearingen SA-226AT/TC Merlin Swearingen SA-226AT/TC Merlin Tupolev TU-134 Tupolev TU-154 Rockwell Buckeye T20 Beech Aircraft Mentor Cessna Aircraft Cessna 318 Aerospatiale Tampica Aerospatiale/France TBM TB-700 Aerospatiale/France Trinidad TB-20/ Britten Norman BN-2A Mark III Tris Tupolev TU-134 Britten Norman VC10 Britten Norman VC10 Israel Aircraft Westwind 1124 Israel Aircraft Astra 1125 Name PA31CH PA32 PA32C6 PA34 PA36 PA42 PA44 PA46 PAY1 PAY2 PAY3 PAY4 PAZT PC12 PC6 PRM1 R135 R721 RJ2 RJ85 S601 S76 S92 SA90 SB20 SBR SBR1 SBR2 SC7 SF34 SF340 SH33 SH36 SK76 SN600 SR22 SR71 STAR SW2 SW3 SW4 SW4A SW4B T134 T154 T2 T34 T37B TB9 TBM7 TRIN TRIS TU134 VC10 VC10TF WW24 WW25 DHC-6 Swearingen Merlin DHC-6 DHC-6 Cessna 441 Conquest2 DHC-6 Tu-134 Tu-154 T-2C Buckeye Porter PC6/B2 T-37 Tweet Cessna 172 Skyhawk Cessna 172 Skyhawk Cessna 441 Conquest2 Aztec Tu-134 Vickers 953 Vanguard Vickers 953 Vanguard Westwind 2 Westwind 2 SN601 Corvette HS 748 2A SERIES CL600 CL600 CL600 DHC-6 SF-340-B PLUS SF-340-B PLUS Shorts 330 Shorts 360 AVRO-RJ85 SN601 Corvette Cessna 172 Skyhawk Porter PC6/B2 SN601 Corvette Navajo Cherokee six Cherokee six Aztec Cessna 172 Skyhawk PA-42 Cheyenne Aztec Cessna 172 Skyhawk PA-31T Cheyenne PA-31T Cheyenne PA-42 Cheyenne PA-42 Cheyenne EDMS AIRFR 2 1 1 2 1 2 2 1 2 2 2 2 2 1 1 2 3 3 4 4 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 4 2 2 2 2 2 2 2 3 2 1 2 1 1 2 2 2 4 4 2 2 Engines Taxi Fuel Rate (kg/hour) 0.003158 0.003158 0.003158 0.003158 0.000989 0.0185 0.003158 0.000989 0.0144 0.0144 0.0185 0.0185 0.003158 0.000989 0.0144 0.0261 0.163000003 0.147699997 0.045299999 0.045299999 0.0261 0.00145 0.00145 0.000989 0.0517 0.048900001 0.048900001 0.048900001 0.0149 0.015 0.015 0.021199999 0.0254 0.00145 0.0261 0.003158 0.139599994 0.0149 0.0142 0.0149 0.0149 0.0144 0.0149 0.129999995 0.207000002 0.070500001 0.0144 0.021 0.000989 0.000989 0.0144 0.003158 0.129999995 0.078000002 0.078000002 0.026000001 0.026000001 Typical Seats 8 6 6 6 1 9 4 6 8 8 9 9 4 9 6 6 2 94 112 112 14 13 13 2 50 6 6 7 19 35 35 30 36 13 6 8 2 8 8 11 19 12 12 72 164 2 6 2 5 5 5 16 72 109 109 7 7 Etaxi (kg/min) 0.378960000 0.189480000 0.189480000 0.378960000 0.059340000 2.220000000 0.378960000 0.059340000 1.728000000 1.728000000 2.220000000 2.220000000 0.378960000 0.059340000 0.864000000 3.132000000 29.340000540 26.585999460 10.871999760 10.871999760 3.132000000 0.174000000 0.174000000 0.059340000 6.204000000 5.868000120 5.868000120 5.868000120 1.788000000 1.800000000 1.800000000 2.543999880 3.048000000 0.174000000 3.132000000 0.378960000 33.503998560 1.788000000 1.704000000 1.788000000 1.788000000 1.728000000 1.788000000 15.599999400 37.260000360 8.460000120 0.864000000 2.520000000 0.059340000 0.059340000 1.728000000 0.378960000 15.599999400 18.720000480 18.720000480 3.120000120 3.120000120 Eapu (kg/min) 0.052633335 0.052633335 0.052633335 0.052633335 0.016483334 0.308333342 0.052633335 0.016483334 0.240000007 0.240000007 0.308333342 0.308333342 0.052633335 0.016483334 0.240000007 0.435000012 2.716666794 2.461666687 0.755000005 0.755000005 0.435000012 0.024166667 0.024166667 0.016483334 0.861666691 0.815000040 0.815000040 0.815000040 0.248333340 0.250000007 0.250000007 0.353333327 0.423333345 0.024166667 0.435000012 0.052633335 2.326666633 0.248333340 0.236666673 0.248333340 0.248333340 0.240000007 0.248333340 2.166666645 3.450000132 1.175000050 0.240000007 0.350000010 0.016483334 0.016483334 0.240000007 0.052633335 2.166666645 1.300000070 1.300000070 0.433333362 0.433333362 C401 C141 C404 C404 C404 BIRD KC10A B727 RJ85 PA27 Same As Appendix C: Appendix C: ARTCC Definitions CYHZ The Halifax Airport in Canada CYOW The Ottowa Macdonald Cartier Airport in Canada CYUL The Montreal Pierre Elliott Trudeau Airport in Canada CYYZ The Toronto Pearson Airport in Canada CYZ The Toronto Area Control Centre ZAB The Albuquerque Air Route Traffic Control Center ZAU The Chicago Air Route Traffic Control Center ZBW The Boston Air Route Traffic Control Center ZDC The Washington Air Route Traffic Control Center ZDV The Denver Air Route Traffic Control Center ZFW The Fort Worth Air Route Traffic Control Center ZHU The Houston Air Route Traffic Control Center ZID The Indianapolis Air Route Traffic Control Center ZJX The Jacksonville Air Route Traffic Control Center ZKC The Kansas City Air Route Traffic Control Center ZLA The Los Angeles Air Route Traffic Control Center ZLC The Salt Lake City Air Route Traffic Control Center ZMA The Miami Air Route Traffic Control Center ZME The Memphis Air Route Traffic Control Center ZMP The Minneapolis Air Route Traffic Control Center ZNY The New York Air Route Traffic Control Center ZOA The Oakland Air Route Traffic Control Center ZOB The Cleveland Air Route Traffic Control Center ZSE The Seattle Air Route Traffic Control Center ZTL The Atlanta Air Route Traffic Control Center 301 Bibliography 302 Bibliography [1] Air Transport Action Group, “The economic and social benefit of air transport 2008,” 2008. [2] USDepartment of Transportation Federal Aviation Administration Aviation Policy and Plans, “FAA aerospace forecast fiscal years 2007–2020,” 2007. [3] J. Duke and V. Torres, “Multifactor productivity change in the air transportation industry.” [4] D. Wang, “Methods for analysis of passenger trip performance in a complex networked transportation system,” PhD Thesis in Information Technology, George Mason University, Fairfax, VA, 2007, supervisor: Lance Sherry. [5] The MITRE Corporation CAASD, “Capacity needs in the national airspace system 2007-2025: An analysis of airports and metropolitan area demand and operational capacity in the future,” May 2007. [6] B. Howe, C. Richardson, M. Gordon, S. Russell, S. Sprague, G. Donohue, and F. Wieland, “Potential air traffic congestion solution: Slot allocation by auction method,” in Proceedings of the 2003 Systems and Information Engineering Design Symposium, 2003. [7] Federal Aviation Administration, “Nextgen goal: Performance-based navigation,” http://www.faa.gov/news/fact sheets/news story.cfm ?newsId8̄768, June 2008. [8] Air Transport Association (ATA), http://www.airlines.org/economics/energy/, June 2008. [9] Joint Economic Commitee Majority Staff, “Your flight has been delayed again,” Tech. Rep., May 2008. [10] B. Miller and J.-P. Clarke, “The hidden value of air transportation infrastructure,” in The 7th International Conference on Technology Policy and Innovation, Monterrey, Mexico, June 2003. [11] E. Legeza, “Opportunities of revenue increase in air passenger transport,” Periodica Polytechnica Ser. Transp. Eng., vol. 29, no. 1–2, pp. 59–70, January 2002. [12] D. Robyn, “Reforming the air traffic control system to promote efficiency and reduce delays,” The Brattle Group, Tech. Rep., October 2007. 303 [13] L. Le, “Demand management at congested airports: How far are we from utopia?” PhD Thesis in Information Technology, George Mason University, Fairfax, VA, 2006, supervisor: George L. Donohue and Chun-Hung Chen. [14] M. O. Ball, G. L. Donohue, and K. Hoffman, “Auctions for the safe, efficient, and equitable allocation of airspace system resources,” in Combinatorial Auctions. MIT Press, 2006, ch. 22, pp. 507–538. [15] R. de Neufville and A. Odoni, Airport Systems: Planning, Design and Management. McGraw–Hill Professional, 2004. [16] L. Le, G. Donohue, and C.-H. Chen, “Using auction-based slot allocation for traffic demand management at hartsfield atlanta international airport: A case study,” Journal of the Transportation Research Board, no. 1888, pp. 50–58, January 2005. [17] Cable News Network LP (CNN), “New york flight slots auction faces flak,” http://money.cnn.com/2008/06/18/news/economy/flight delays.ap/index.htm ?postversion=2008061816, June 2008. [18] T. W. Vossen, “Fair allocation concepts in air traffic management,” Ph.D. dissertation, University of Maryland, College Park, MD, 2002, supervisor: Michael O. Ball. [19] F. W. Wilson, “Probabilistic forecasts of cloud impacts at san francisco international airport,” in 20th International Conference on Interactive Information and Processing Systems (IIPS) for Meteorology, Oceanography, and Hydrology, 2004. [20] J. Hendren, “Bush orders changes to cut record air travel delays.: Short-term fixes focus on new york area airports,” September 2007. [21] M. O. Ball and G. Lulli, “Ground delay programs: Optimizing over the included flight set based on distance,” Air Traffic Control Quarterly, vol. 12, pp. 1–25, 2004. [22] G. L. Donoue, R. D. S. III, and E. Edwards, Terminal Chaos: Why U.S. Air Travel is Broken and How to Fix It. American Institute of Aeronautics and Astronautics, Library of Flight, Spring 2008. [23] K. Chang, K. Howard, R. Oiesen, M. Tanino, and M. C. Wambsganss, “Enhancements to the faa ground–delay program under collaborative decision making,” in INTERFACES, no. 31, 2001, pp. 57–76. [24] N. Xu, “Method for deriving multi-factor models for predicting airport delays,” PhD Thesis in Operations Research, George Mason University, Fairfax, VA, 2007, coDirectors: Kathryn Laskey and Lance Sherry. [25] International Air Transport Association, “Worldwide scheduling guidelines,” December 2000. [26] R. L. Hoffman, G. Davidson, and K. Streety, “Equitable allocation of limited resources (ealr): Defining, measuring, and implementing equity,” 2003. [27] R. Sankararaman, “Impact assessment of dynamic slot exchange in air traffic management,” College Park, MD, 2004, supervisor: Michael O. Ball. 304 [28] M. O. Ball, R. L. Hoffman, D. J. Lovell, and A. Mukerjee, “Response mechanisms for dynamic air traffic flow management,” in Proceedings of 6th USA/Europe Air Traffic Management RD Seminar, 2005. [29] D. Gross and C. M. Harris, Fundamentals of Queuing Theory, 3rd ed. John Wiley & Sons Inc., 1998. [30] W. L. Winston, Operations Research: Applications and Algorithms, 4th ed. Thompson Brooks/Cole, 2004. [31] A. M. Law and W. D. Kelton, Simulation Modeling and Analysis, 3rd ed. Hill Companies Inc., 2000. McGraw [32] Users Guide For Real-Time FSA Version 8.4, Metron Aviation Inc., May 2007, version 8.4 Client. [33] Federal Aviation Administration, “Enhanced http://hf.tc.faa.gov/projects/etms.htm. traffic management system,” [34] Metron Aviation Inc., “Etms functional description version 8.2 appendix c: Fsm algorithms.” [35] http://cdm.fly.faa.gov/cdmweb/index.html. [36] The International Civil Aviation Organization (ICAO), “ICAO Aircraft Engine Exhaust Emissions Data Bank,” http://www.dera.gov.uk/aviationemissionsdatabank.htm. [37] D. Bureau of Transportation http://www.transtats.bts.gov. Statistics, “T-100 domestic segment (all),” [38] C. Barnhart and S. Bratu, “Airline Passenger Delays,” in Solan Industry Centers Annual Conference, Atlanta, GA, April 2004. [39] H. P. Young, Equity: In Theory and Practice. University Press, 1994. Princeton, New Jersey: Princeton [40] Flight Schedule Monitor User’s Guide, Metron Aviation Inc., version 8.2 Client. [41] D. Gallus, “Interview,” Metron Aviation Inc. [42] Federal Aviation Administration, http://www.faa.gov/airports airtraffic/airports/ planning capacity/ passenger allcargo stats/categories. [43] B. Manley and L. Sherry, “The Impact of Ground Delay Program (GDP) Rationing Rules on Passengers and Airlines,” in The 3rd International Conference on Research in Air Transportation (ICRAT), Fairfax, VA, June 2008. [44] Bengi Manley and Lance Sherry, “The Impact of Ground Delay Program (GDP) Rationing Rules on Passengers and Airlines,” in The 2008 Integrated Communications Navigation and Surveillance (ICNS) Conference, Washington, DC, May 2008. 305 [45] B. Manley and L. Sherry, “The Impact of Ground Delay Program (GDP) Rationing Rules on Passengers and Airlines,” in The 5th International Conference on Cybernetics and Information Technologies, Systems and Applications (CITSA) 2008, Orlando, FL, June 2008. [46] R. Hoffman, M. O. Ball, and A. Mukherjee, “Ration-by-distance with equity guarantees: A new approach to ground delay program planning and control,” in the 7th ATM RD Seminar, Barcelona, Spain, 2007. [47] B. Mutzabaugh, “Urban legend? airlines cancel empty flights to save money,” http://blogs.usatoday.com/sky/2007/05/cancellations.html, May 2007. [48] Air Transport Portal of the European Commission, “Why passengers’ rights matter,” http://ec.europa.eu/transport/air portal/passenger rights/information en.htm, June 2008. 306 Curriculum Vitae Bengi Manley obtained in 1999 her B.S. in Industrial Engineering at Dokuz Eylul University in Izmir, Turkey. She then obtained in 2001 her M.B.A. at McNeese State University, Lake Charles, LA, where she also worked as a graduate teaching assistant. In Spring 2003, she began her Ph.D. program in Information Technology at Systems Engineering and Operations Research Department at George Mason University, where she worked as a graduate teaching assistant for a year. She then joined the Center of Air Transportation Systems Research (CATSR) as a graduate research assistant for her Ph.D program in Spring 2004. She also worked as an intern at Metron Aviation Inc. for two years during her Ph.D studies. In this capacity, she contributed to research efforts related to Air Transportation Systems. Her research interests include system performance and equity evaluation of Air Traffic Flow Management and system dynamics applications on air transportation system. 307