AIRLINE ASSIGNMENT AND ROUTING PROBLEM: A...
Transcript of AIRLINE ASSIGNMENT AND ROUTING PROBLEM: A...
AIRLINE ASSIGNMENTAND
ROUTING PROBLEM:A NETWORK PROGRAMMING MODEL
byMargarita D. Garcia
OREM 4390
SENIOR DESIGN INENGINEERING MANAGEMENT
8 May 1982
Dr. Richard S. Barr, Professor
TABLE OF CONTENTS
PageIntroduction 1
Background and Overview 2
Model Description 4
Solution Phase 9
Analysis 10
Conclusion 12
FIGURES AND TABLES
Figure 1 14
Figure 2 15
Figure 3 16
Figure 4 17
Figure 5 18
Figure 6 19
Figure 7 20
Figure 8 21
Table A 22
INTRODUCTION
The airline assignment and routing problem was originally
developed and solved as a standard linear programming model by
Jorge Casaus, a senior engineering student at SMU, in 1981.
Professor Richard Barr, however, has suggested that a network pro-
gramming approach be taken in finding an optimal solution to the
problem. The following report describes and discusses how a net-
work programming model can be used in the selection of aircraft
assigned to cover various flight schedules. This model utilizes a
computer program available at SMU's computer center, called OPTNET,
for generating the best possible solution to the problem.
BACKGROUND & OVERVIEW
The problem addressed by this network programming model is
described as follows:
An airline company owns different types of aircraft, and for each
type, a maximum number is available to cover various flight sche-
dules. The flight schedule for a given day identifies, for each
flight number, the origination city and departure time, and the
termination city and arrival time. Based on forecasts of passenger
demand and operating costs, the profitability of operating each
aircraft type on every flight has been estimated (for example, the
profit contribution on a particular flight may be $1000 if a 7271d~?
is used, -$500 with a 707, and $400 with a DC-10).
In addition, due to ground servicing requirements, there is
a minimum ground time between the arrival and subsequent departure
of an aircraft. This ground time may vary by city but is the same
for all aircraft types at a given city. In an airline routing (a
one-day sequence of flights), each departure follows the preceding
arrival by at least the ninimum ground time specific to the city
i n question. In general, there may be more than one aircraft of a
particular type on the ground that is available for use at the next
departure flight needing that type of plane. If such instances occur
the airline routing should follow the first-in-first-out (FIFO)
rule: the aircraft type required which has been on the ground the
l ongest should be assigned to the next departure.
Having collected all this information, the airline company
wishes to determine the optimal assignment of aircrafts to flights
2
on a single day so as to maximize profit and -minimize the number
of planes i.n the system. Data used in solving the model was generated
in spring 1981 and has not been updated.
3
( 3) the
MODEL DESCRIPTION
Before any analysis of the problem can be done, the flight
schedule data has to be constructed into a circularized network
flow diagram, consisting of a series of nodes connected by a set
of lines (see figure 1a). In an airline routing problem, the nodes
represent the cities (or airports), and the lines connecting them
represent the different flight routes (see figure 1b). Note that a
line connecting two nodes with the same city name represents any
number of planes on the ground waiting for the next departure
flights.
For simplification, this airline routing problem is formulated
and solved with the assumption that only one type of plane exists.
In addition, other assumptions have been incorporated into the
model, and they include the following:
( 1) a flight schedule is said to be "balanced" if it ends
the day with the same number of planes(at each city)
that-it started out with. A lack of balance may repre-
sent the existence of flights which operate only on
certain days of the week. No imbalance penalty is charged
to any city that has a balanced schedule;
( 2) the cost of covering a flight (= -$100) and the minimum
ground time required (= 45 minutes) are assumed to be
the same for all cities;
cost of planes waiting on the ground for the next
departure flights is assumed to be zero; and
( 4) each airport begins the day with a starting inventory
equal to the sum of all flights coming in and going out
4
of the city on a single day. In addition, based on
assumption #1, the city's ending inventory should equal
i ts starting inventory.
There are 25 cities and 61 flights in this routing problem,
and the complete airline network is drawn out in figure 2. Notice
that some nodes have arrows coming in that are not coming from any
of the other nodes (for example, SAN715, SAN915, PHX1445, PHX1609).
These arrows indicate the points where each of the 61 flights be-
gin. They also connect the city nodes to a special node called
SOURCE, as. seen in figure 3. Similarly, the last node of each city
is
connected to another special node called SINK (see figure 4).
The purpose of adding these special nodes is to ensure that the
network model becomes circularized. In addition, each arc (or line)
in the network must haveJspecific upper and lower bounds. This en-
sures that the number of planes used in the system will not be more
than what the company can assign. Consequently, lines representing
flight paths have upper and lower bounds equal to 1, ensuring that
all flights are covered and that each flight is flown only by one
plane. Also, lines representing planes waiting on the ground have
no upper limits but must have lower bounds equal to zero (there
i s no such thing as a negative number of planes). Combining all
these characteristics of a network into one, figure 6 illustrates
how a segment of the network looks like once its upper/lower bounds
and costs have been defined.
For this airline routing problem, there exists a cost called
i mbalance penalty (=$1000) that comes into effect if the number of
of planes udd by each city exceeds its starting inventory. Inven-
5
tory is calculated by adding up the flights departing and ar-
riving in a city, so LAS has a starting inventory of 8 planes,
BOS has 18 planes, and LAX has 12. Figure 5 shows more clearly how
the imbalance penalty is modelled into the network. Thus, if SAN's
supply of planes for the day is less than or equal to its start-
i ng inventory, no penalty is incurred; otherwise, $1000 is added
to thelmodel's total cost.for
Since the OPTNET/program only solves the optimal minimum
cost value, the objective function of this problem, that calls
for maximizing profit, has to be changed to minimizing cost. Thus,
i f P j is the profit from operating flight j, and xj
stands for
flight j, then the objective function of this problem is:
61
max
P.xj=1
J j
This is equivalent to
61min 1; (-C)x
J=1
J
J
i f it is assumed that changing the signs of the profit values
would turn them into cost values. There are only two other con-
straints that have not been discussed in this report, and they
include:
(1) flow balance equations which ensure that at no airport
can a plane be created or destroyed. That is,
/ units of
flow into the
node
/
/ units
+
of supply
at the node/
units of
units
flow out of + of dema
the node
nd
at the node /
and
( 2) nonnegativity constraints which ensure that the flow of
the network will travel in only one direction.
One special constraint that has been mentioned at the
beginning of the report is called the minimum ground time re-
striction. To find out just how much this constraint will
affect the optimal solution, Two models are set up: one with the
constraint, and one without. Model 1 requires that all flights are
covered and that the starting inventory, costs, and bounds for
each node and arc are specified. Model 2 carries all these re-
quirements, too, but'it has the minimum ground time constraint
added in. To better understand how this constraint works, consider
figure 7. The figure shows a segment of the BOS network, and the
numbers inside the nodes indicate thejdeparture/arrival times.
When calculating the lower bounds of theinodes affected by the
constraint, only arrival nodes are considered. So the nodes
affected by the constraint from the BOS segment are BOS-1209,
1214, 1301, and 1346. To each of these times, the minimum ground
time of 45 minutes is added; this gives the next departure times
that the planes (used in the 4 flights) can cover. Once departure
time is estimated, it is then necessary to change the lower
bounds of the inventory arcs affected. This will force the planes,
that had just arrived, to stay on the ground until the time re-
striction has expired. Thus, if a plane arrives in BUS at 1209
( and can only leave at 1254), the arcs between 1209-1214 and
1214-1255 will have a lower bound greater than or equal to 1.
Similarly, the next plane arriving at 1214 (and leaves at 1259)
7
will cause the arcs between 1214-1255 and 1255-1301 to have a
l ower bound greater than or equal to 1. Notice that there is an
overlap of lower bounds for the arc between 1214-1255. Because two
planes have just arrived and are affected by the time constraint,
the lower bound for this arc ensures that'those planes will not leave
the city until they have fulfilled their 45-minute restriction.
Notice also that the arc between 1435-1520 has a lower bound greater
than or equal to 0. This indicates that any plane can be used to
cover the flights departing at these times.
8
SOLUTION PHASE
Once formulated, both models are put into input files to be
used in the OPTNET program (see computer listings #1 and #2).
The models are specified as a series of arcs entered into their
respective files as follows:
line-
from-
to-
unit-
upper-
l ower
number
node
node
cost
bound
bound
wich one arc per linenuinber. All numeric values must be integers
with no decimal points, and to simplify data input, the following
defaults are used: (a) if upper and lower bounds are not specified,
-chey are assumed to be 9999999 and zero, respectively, and (b) if
the unit cost is not speciifed, it is assumed to be zero.
When
OPTNET is executed, the problem is read in and solved, and the
program provides a summary report of the network in its optimized
state. The optimal solution for model 1 resulted in a minimum cost
of -$6100 with 33 planes being used in the system (see computer
listing #3). After the model was modified to include the minimum
ground time constraint, the optimal solution for model 2 generated
a minimum cost of -$6100 with 50 planes covering the various flights
(see computer listing #4).
9
ANALYSIS
Now that optimal solutions for both models have been gene-
rated, analysis of the output can begin. For this airline routing
problem, output is analyzed by taking a particular plane used in
the system and following its flight schedule through the network.
OPTNET generated the same minimum cost for models 1 and 2, and this
i ndicates that covering all 61 flights with this type of plane is
profitable. But model 2 is different from model 1 since the
minimum ground time restriction had been added. This constraint
may appear redundant (since it did not change the optimal cost
value for model 2), but it did affect the number of planes pre-
sent in the system: 33 in the first model against 50 in the se-
cond. Figure 8 shows how such a constraint determines the flights
a plane will cover and the city at which it will stop at the end
of the day.
The assumption that only one type of plane exists now seem to
be unrealistic since an airline company would surely have at least
two types of planes available for use in its flights. There is
usually a limit to the load of flights that one type of planes can
take on a single day.
The balance of schedule and starting inventory assumptions
prevented any imbalance penalty to be incurred by any city;
consequently, the cost accumulated from this part of the network
model was zero and had no effect on the optimal solution. In
addition, these assumptions seem to be valid since it would be
l ogical to require that the number of planes be the same at the
beginning and end of a day. If such was not the case, the airline
10
company would have empty planes flown around (to keep the in-
ventory levels at each city balanced) and incur more costs.
Furthermore, the cost of covering a flight may not be the
same at all times because there are some places where it would
cost more to fly to than others. Similarly, the cost of planes
waiting for the next departure flights may not be zero at all
times, too. Nevertheless, the fact that these costs were zero for
this type of plane affected the optimal solution to the problem
in a positive way: it kept the minimum cost from getting worse.
11
CONCLUSION
To summarize, there were several steps taken to find the
best solution to the problem, and they included the following:
(1) construction of a circularized network diagram based
on the flight schedule information provided;
( 2) defintion of costs, upper and lower bounds, and
starting inventory levels forithe different nodes and
arcs of the network;
( 3) generation of the optimal flight routes for models 1
and 2 using the OPTNET computer program; and
( 4) analysis of the different solutions generated. Flight
routes for the models were mapped into the network
diagram.
Based on the solution generated by OPTNET, the optimal mini-
mum cost for both models was the same. The only effect of adding
the minimum ground time constraint (in model 2) was to increase
the number of planes in the starting inventory for some airports.
Because the problem had only considered using one type of
plane, several limitations that would have been used were omitted.
For future projects concerning the airline routing problem, it
would be interesting to consider the following:
(1) airports are now charging landing fees
according to the type of plane used. This cost would have
to be included in the objective function of the problem.
(it becomes a fixed cost in the model);
( 2) realistically, the minimum ground time restriction will
vary for the different cities
12
that vary
(3) in response to various marketing considerations, it may
be necessary to specify the type of plane assigned to
certain flights, so an initial assignment of an aircraft
type to each flight may be included in the model; and
( 4) a multiperiod routing problem should be considered since
there are fluctuations in passenger demand at certain
months of the year (for example, more people fly to
Colorado during -che skiing season).
In conclusion, the network programming model provided an
efficient alternative means of integrating data for the analysis
of an airline routing problem. It was easy to use and to under-
stand it made visualizing the system (before and after a solu-
tion was found) easier. As mentioned at the beginning of the,
report, this problem was solved with the assumption that only one
type of aircraft existed. This model, however, can be extended
to solve a multi-aircraft type routing problem.
13
FIGURESAND
TABLES
(Q)
(b)
FIGURE 1.(Q) CIRCULARIZED NETWORK 'IAGg J
(b) SEGM ' OF THE AHZUNE NETWORk
I
FrGvRE 3.
1 6
LINK €ETWEEN ZOU(ZCE
AND GT1y NODES
1 7
r--rGvRE 4. LINK b"EEN SINk
AND CITY NODES
~rGvRE ~. NETWo J4 WM IMBALANCE
PENALTY C05TS
18
wM¢ac C1 < C2
SUPPLYt4
CITY i
( nix )
FIGVRE C.
1 9
CITY 2
( CLE)
t.E6 E N D
C
(
' •)
5EG11AENT of AT2uN E N "O(ZK
141Tµ COSTS `1 SOUNDS TEPT14ED
SurPLY+2
Bos:
2 0
;~s
(PCPART. 134C)
(DEPWs 1431)
PiCVRer 1. SECMFI4T of CITY WETWo(ZK WITH
MINI MUM GROUND TIME GoNgT(ZAINT
:~i
MODEL i
I IaURE ~. COMPAJSON of FLIGHT Rouiss
$ oR MOVE .S i A 2
2 1
(2
D
LAX-SINK
MODEL 2
TABLE A
LIGHT SCHEDULE DATA
22
INDEX FLT. NO . ORIG DEST DEPART ARRIVE
1 420 lax bos 105 1214
2 321 bos lax 1335 1959
3 410 lax las 700 759
4 486 las bos 945 1833
5 153 bos dfw 1918 2327
6 084 dfw ind 640 929
7 234 ind lga 1037 1347
8 243 lga san 1430 1943
9 284 san bos 715 1650
10 383 bos cvg 1815 2146
11 071 cvg ord 755 759
12 226 ord lga 900 1150
13 285 lga bos 1230 1346
14 309 bos cvg 1435 1923
15 047 cvg sfo 2020 2332
16 220 sfo bos 710 1543
17 217 bos ont 1650 1952
18 408 ont lga 840 1756
19 259 lga ord 1900 2033
20 46o ord bdl 655 946
21 599 bdl iah 1035 1506
22 490 iah msp 1625 2037
23 302 msp lga 755 1247
2 3
INDEX FLT. NO . ORIG DEST DEPART ARRIVE
24 491 lga lax 1345 1805
25 304 lax dfw 2100 10137
26 244 dfw lga 640 1033
27 573 lga dtw 1230 1407
28 236 dtw lga 1500 1619
29 391 lga sat 1700 2140
30 367 sat lax 855 1218
31 092 lax sat 1400 2048
32 328 sat lga 710 1418
33 041 lga lax 1530 1920
34 580 tul bos 715 1301
35 545 bos tus 1520 2022
36 108 tus lga 845 1753
37 223 lga buf 1845 1953
38 566 buf lga 700 803
39 565 lga las 905 1450
40 522 las lax 740 1415
41 193 lax las 1635 1935
42 156 las sat 1010 1613
43 578 sat dfw 1705 1802
44 278 dfw pit 1250 1616
45 283 pit dfw 1705 2021
46 113 dfw phx 1115 1324
47 274 phx cle 1445 2123
48 347 cle phx 955 1328
Cost of waiting for the next departure -- $0.00
Cost of covering a flight-- -$100 (equal to profit)
Imbalance penalty -- $1000
24
INDEX FLT. NO . ORIG DEST DEPART ARRIVE
49 286 phx okc 1609 2036
50 504 okc bos 705 1209
51 409 bos las 1255 1624
52 239 las lax 1025 1119
53 072 lax roc 121.0 2037
54 501 roc iah 715 1116
55 680 iah dca 1225 2000
56 245 dca bos 725 1024
57 351 bos sfo 1110 2029
58 140 sfo bos 925 2214
59 481 bos san 1015 1507
60 028 san iga 915 2001
61 231 lga tul 825 1318