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