NOMENCLATURE
- ATC
Air Traffic Controller
- ATM
Air Traffic Management
- CG
centre of gravity
- CI
Cost Index [kg of fuel/min]
- ECON SPEED
Economic Speed (The speed that yields the minimum total cost for the flight with a given CI value) [MACH]
- FCU
Flight Control Unit
- flight_time
predicted flight time [h]
- ft
Feet
- FMS
Flight Management System
- GPP
Geometric Point to Point
- GPS
Global Positioning System
- GS
Ground Speed [kn]
- IAS
Indicated Air Speed [kn]
- ICA
Initial Cruise Altitude [ft]
- IRU
Inertial Reference Unit
- ISADEV
Deviation from the Standard Atmosphere Temperature [ $^\circ\text{K}$ ]
- kn
knots
- LARCASE
Research Laboratory in Active Control, Avionics and Aeroservoelasticity (LARCASE), at the École de technologie supérieure
- MACH
Mach number
- MMO
Maximum Operational MACH number [MACH]
- MRC
SPEED Maximum-range cruise speed [MACH]
- NextGen
Next Generation Air Transportation System
- OAT
Outside Air Temperature [ $^\circ\text{K}$ ]
- $\text{Q}_{\text{fuel}}$
predicted fuel burn [kg]
- rta
Flight time constraint [h]
- RCI
RTA Cost Index [kg of fuel/s]
- RTA
Required Time of Arrival [h]
- TAS
True Air Speed [kn]
- $\text{TAS}_{\text{H}}$
Horizontal component of the TAS [kn]
- Total_cost
Total cost for the flight along the evaluated flight profile [kg of fuel]
- VMA
Maximum Operation IAS value [kn]
- WPT
Waypoint
- ZFGW
Zero Fuel Gross Weight – the aircraft weight (base weight plus load weight) without fuel [kg]
- 4D-BT
Four-dimensional Business Trajectory – flight trajectory that is best suited for the specific flight (departure-destination pair, aircraft performance and load, atmospheric conditions, etc.)
- $\Delta\text{rta}$
Acceptable Required Time of Arrival deviation [s]
1.0 INTRODUCTION
The constant increase in the number of aircraft flying in the same airspace, which require shared access to the same resources (airways, airway intersections, runways etc.), demands an increase in the throughput capacity of these resources.
This throughput increase can be achieved, in a first step, by using more accurate navigation systems, that give a more precise knowledge of an aircraft’s current location and allow for a better prediction of its future positions. This increased precision, in turn, makes it possible to safely reduce the separation between aircrafts.
Another way to increase the airspace throughput capacity is to address the conflicts arising from the shared access. During the flight plan creation, or each time a flight plan modification occurs, an “aircraft” (a flight planning system or crew) negotiates with the Air Traffic Management (ATM) system an access time, called required time of arrival (RTA), for each resource with a possibility of shared access conflict. The aircraft must be equipped with navigation systems and flight management systems (FMS) that are capable of flying the aircraft along the flight plan and observe the time constraints: reach the navigation point within a prescribed time window centered around the RTA constraint ( ${rta} \pm \Delta {rta}$ ).
One consequence of the increase in the number of flights is the increase in fossil fuel usage and, therefore, in pollutant emissions. This increase furthermore accentuates the necessity to optimise flight trajectories in order to reduce fuel consumption, which will have a direct impact on the environment and on the economic performance of aircraft operators.
This study is the result of a research(Reference Dancila1) conducted at the Laboratoire de recherche en commande active, avionique et aéroservoélasticité (LARCASE), at École de technologie supérieure, and is part of a larger effort to develop new algorithms, strategies, and models(2–11) that can be applied for flight trajectory optimisation in FMS platforms.
The paper is focused on the optimisation of a cruise segment bounded by two waypoints (WPTs) with RTA constraints (Fig. 1), thus, with an imposed flight time for the segment. The optimisation algorithm evaluated in this paper is adapted for Flight Management Systems (FMS), to provide the optimal flight trajectory for the imposed lateral flight profile and time constraints. The optimisation is performed for the vertical profile only, the lateral flight profile is considered fixed. The criterion utilised for the optimisation is the minimisation of the total cost associated with the flight along the segment, constrained that the flight time is within the limits imposed by the RTA (rta) and the acceptable time window width ( $\Delta {rta}$ ).
2.0 FLIGHT TRAJECTORY OPTIMISATION
A flight trajectory optimisation consists in identifying the combination of lateral and vertical navigation profiles that conform to a set of imposed constraints (flight time, range of flight altitudes and/or speeds etc.) and minimise the selected cost function (fuel burn, flight time, total cost etc.).
The optimisation criterion used in this study is the minimisation of the total costs, expressed as a fuel quantity equivalent, for the flight along a given cruise segment. The total cost calculation is based on two key performance parameters for the flight: the fuel burn and the flight time. These two parameters are dependent upon the flight trajectory (defined by the lateral and vertical flight profiles), the aircraft’s configuration and flight performance characteristics, and the atmospheric conditions (winds and temperature deviation from the standard atmosphere — ISADEV).
The structure of the total cost, i.e. the elements that intervene in the calculation of the total cost, is similar with the cost structure presented by Liden(Reference Liden12) for a flight with required time of arrival at the destination: fuel cost, operational costs proportional with the flight time and a cost element calculated as a function of the difference between the RTA constraint and the actual arrival time. The difference between the cost structure used by Liden(Reference Liden12) and the one proposed in this study is the model used for the evaluation of the cost associated with the difference between the RTA and the actual time of arrival.
The total cost value used in this study is calculated with the formula presented in Eq. (1):
where:
rta is the imposed flight time for the cruise segment, in hours. It equals to the time difference between the required time of arrival for the initial and final WPTs of the cruise segment’s flight profile;
flight_time is the predicted flight time along the evaluated trajectory, in hours;
${Q}_{fuel}$ is the predicted quantity of fuel consumed during the flight along the evaluated trajectory, in kilograms;
CI - cost index, expressed as kilograms of fuel per minute of flight, is a factor that quantifies the operational costs proportional to the flight time. Robertson(Reference Robertson13), Robertson et al(Reference Robertson, Root and Adams14) and DeJonge et al(Reference Dejonge and Syblon15) present the cost elements proportional to the flight time, the CI value calculation and its use in the context of total cost calculations for a flight and flight path optimisation; and
RCI - RTA cost index, expressed in kilograms of fuel per second, is the factor used for associating a cost to the difference between the imposed flight time on the segment (rta value) and the flight time obtained for a given vertical flight profile (flight_time). This parameter allows an optimisation fine-tuning based on the weight assigned to the difference between the imposed and the actual flight times. An RCI value equal to zero signifies that the time difference is not important, as long the flight time is within the acceptable flight time window. A large RCI value signifies that the optimal profile should have a flight time as close as possible to the required flight time on the segment.
The optimal profile yields a combination of minimum fuel consumption and a flight time on the segment as close as possible to the RTA. The balance between the fuel consumption optimisation and the flight time optimisation is determined by the values of the CI and RCI cost indexes.
For a given flight altitude, atmospheric conditions, and aircraft configuration (gross weight, centre of gravity position etc.), the speed that yields the minimum fuel burn is called the Maximum Range Cruise Speed (MRC SPEED) and the speed that yields the minimum total cost is called economic cruise speed (ECON SPEED). The MRC SPEED and ECON SPEED are function of the atmospheric conditions and aircraft’s weight and, therefore, vary along the flight profile as the atmospheric conditions change and the aircraft weight changes due to burned fuel.
This study is conducted in the context of Free Flight, 4D Business Trajectory (4D-BT). In this context, the aircraft is free to fly along the trajectory that is best suited for the specific flight (departure-destination pair, aircraft performance and load, atmospheric conditions, etc.), subjected to clearance from ATM/ATC for conflict resolution. The paper considers the case of a cruise segment with a fixed (selected) lateral flight profile and an imposed flight time (delimited by WPTs with RTA constraints). It investigates the flight trajectory optimisation performance (total cost reduction) for the case when both the flight altitude and speed are part of the trajectory optimisation, and takes into account the flight time and costs associated with the climb and descent sub-segments. The change in altitude is intended to take advantage of possible more favorable winds, air temperature, as well as the True Air Speed (TAS) and fuel burn rate variation with altitude. In this study, the step descents in cruise are included in order to evaluate their impact on the optimisation results (e.g. more favorable winds at lower altitudes), as well as on the range of achievable RTA constraints. The reference total cost for the algorithm performance evaluation corresponds to the flight at the optimal speed for the leveled flight at the initial cruise altitude.
The set of limitations considered in this study refer to the elements that define the flight profiles (lateral and vertical):
The lateral flight profile is fixed; only the vertical flight profile (altitude and speed) is modified to obtain the optimum flight trajectory. The set of sub-segments that define the cruise segment under optimisation (their lengths, headings and succession - i.e. the set of waypoints that define the cruise segment’s lateral flight profile) do not change.
Vertical flight profile:
° The profiles evaluated in the optimisation have an identical altitude and speed at the initial and final points of the segment under optimisation (equal to the aircraft’s altitude and speed on the cruise segment prior to the segment under optimisation);
° The flight along the cruise segment is at constant speed (no acceleration and deceleration sub-segments). It is considered that the estimation difference for the fuel burn and flight time, due to the initial acceleration/deceleration (at the beginning of the segment), are balanced by the estimation error due to deceleration/acceleration at the end of the segment (to bring the aircraft to the same speed as at the beginning of the segment under optimisation);
° For each [IAS, MACH] speed schedule (see the next paragraph) the values of the IAS and MACH speeds are linked, for a given IAS (or MACH) speed value there is only one possible MACH (or IAS) speed value; and
° The profiles evaluated in the optimisation contain no more than one altitude step (relative to the initial altitude). For example: if the cruise altitude of the vertical profile is different than the altitude at the initial point, then, the vertical profile starts with a climb/descent to the selected cruise altitude, and ends with a descent/climb that reaches the final point of the segment at the same altitude as the initial point.
The speed model used in this study is the scheduled speed, defined as a pair of Indicated Air Speed (IAS) and Mach number (MACH) values. IAS speed is used at altitudes below the crossover altitude, the altitude where the TAS calculated from the IAS is equal to the TAS calculated from MACH, and MACH is used above the crossover altitude. This change of the reference speed at the crossover altitude is determined by the variation with altitude of the TAS computed from the IAS and MACH. A climb at constant IAS above crossover altitude, or a descent at constant MACH below the crossover altitude, can result in a TAS that exceeds the aircraft’s maximum operational values for the IAS (VMO) or MACH (MMO) - see Fig. 2.
The set of analyzed vertical flight profiles, the candidate profiles for the optimisation, are defined by a set of cruise altitudes ( $\text{alt}_{1}$ , $\text{alt}_{2}$ ,, $\text{alt}_{\text{n}}$ ) and a set of scheduled speeds ( $\text{sv}_{1}$ , $\text{sv}_{2}$ ,, $\text{sv}_{\text{m}}$ ). Each combination of altitude and scheduled speed values defines a vertical flight profile.
The set of cruise altitudes and speed schedules are discrete values, usually multiples of 1 000 ft for the cruise altitude (determined by navigation regulations), and a multiple of 1 knot / 0.001 Mach for the speed schedule values (the speed resolution in the FMS and Flight Control Unit - FCU - systems). As a result, the fuel burn and the flight times corresponding to the ensemble of evaluated vertical flight profiles are also a set of discrete values. It is therefore necessary to define a time window width ( $\Delta rta$ ), centreed around the imposed flight time (rta) for the segment under optimisation, for which the time constraint is considered to be satisfied: a vertical flight profile with a flight time within these limits ( $rta\text{-}\Delta rta \leq flight\_time \leq rta+ \Delta rta$ ) is considered a valid candidate for optimal profile, otherwise the profile is rejected.
For a given flight segment, the flight time is determined by its horizontal length and the average ground speed (GS). As the horizontal length of the segment under optimisation is fixed, the element that determines the flight time is the GS. The GS at a point along the flight path (position on the flight path and altitude) is calculated using the wind triangle algorithm (Botez(Reference Botez16)), based on the horizontal component of the TAS ( ${TAS}_{H}$ ), the wind speed at that location, and the angle difference between the segment and wind headings.
The wind model used in this study is defined by a data structure (Liden(Reference Liden17)) that contains the wind values (speed and angle relative to the geographic north) for a maximum of four altitudes. For a given altitude, the wind value is calculated through a linear interpolation.
In this study the wind is considered constant along the sub-segments. The wind data for the flight profile is defined by a list of wind data structures, each element of the list is associated to a WPT situated at the beginning of a sub-segment, and defines the wind structure for that sub-segment of the flight profile.
In a flight trajectory optimisation, the performance parameters (the fuel burn and the flight time) for the flight along a given trajectory are calculated through an accelerated simulation. This calculation is performed using the aircraft performance model and configuration, predicted weather condition, speed, altitude, and navigation constraints. The atmospheric conditions (air temperature and winds) encountered during a flight may be different than the estimated / predicted values used in the optimisation. The magnitude of the difference between the predicted and the real atmospheric parameters encountered during the flight is function of the precision of the atmospheric data forecast, and of the difference between the time when the forecast is generated and the time instance for which the atmospheric conditions are estimated. This difference will impact the flight trajectory performance parameters estimation results (fuel burn, flight time, total cost), and, as a consequence, the optimisation algorithm results (e.g. selection of a non-optimal or near-optimal flight profile, non-compliance with the time constraint, etc). The impact of the atmospheric data error (flight time and fuel burn estimation errors) will be higher for longer flight profiles and/or smaller RTA constraint windows (e.g. +/- 20 seconds).
A FMS platform can determine the difference between the predicted and the real atmospheric conditions at the current location along the trajectory through “dead-reckoning,” based on the estimated aircraft position and the data collected from the aircraft’s sensors: Outside Air Temperature (OAT), Global Positioning System (GPS), Inertial Reference Unit (IRU), etc. This difference can then be used in the prediction process to better estimate the atmospheric conditions along the flight profile, and the flight performance parameters. Known or estimated atmospheric data prediction statistics can be used to mitigate the effects of the atmosphere prediction error in order to select near-optimal flight trajectories that, for example, yield a high probability to meet a RTA constraint along the selected flight trajectory, and/or offers a larger speed correction margin. These optimisation strategies, that take into account the stochastic nature of the atmospheric parameters, require more complex approaches, and a larger number of flight profile calculations that are considered to be beyond the computation capabilities of current FMS platforms in order to conduct a real-time trajectory optimisation. Therefore, this approach was not considered in this study.
The methodology (Schreur(Reference Schreur18)) used to construct a flight trajectory and to calculate its performance parameters is specific for the aircraft performance model used by the FMS platforms, described by linear interpolation tables.
A trajectory optimisation analysis that employs a flight performance parameters calculation model in accordance with the current implementations of the FMS systems employs two types of data: in a first category are the data used to compute the performance data for the flight; in the second category are the configuration data specific for the optimisation case. The data used to compute the flight performance parameters are:
The aircraft performance data, described by linear interpolation tables (Liden(Reference Liden19)). This model is less precise than the model based on state and energy equations (Sorensen et al(Reference Sorensen, Morello and Erzberger20), Liden(Reference Liden12) et Sorensen(Reference Sorensen21)), but less complex and better suited for the accelerated simulation calculations;
Aircraft configuration data, determined by the specific structure (input parameters) of the aircraft performance data tables. These are the primary data utilised in the calculations using the linear interpolation tables;
The lateral flight profile, specified as a list of sub-segments characterised by a length and an orientation relative to the geographic north;
The wind, specified as a list of wind definition structure data. Each element of the list defines the wind structure for a sub-segment of the lateral flight profile;
The ISADEV, the temperature deviation from the standard atmosphere model; and
The vertical flight profile parameters for the climb/descent sub-segments in cruise: constant vertical speed, constant climb/descent angle (Geographic Point to Point, or GPP) or standard (corresponding to the aircraft performance model data).
The optimisation case configuration data are:
The set of vertical flight profiles to be evaluated in the optimisation — the set of cruise altitudes and scheduled speeds that define the vertical flight profiles;
rta — the flight time constraint for the segment under optimisation (determined by the RTA constraints imposed for the WPT delimiting the segment);
$\Delta$ rta — the acceptable time of arrival window width; and
CI and RCI — the cost indexes used in the optimisation.
A review of the literature and of the aircraft performance data tables available at LARCASE revealed that, given an aircraft’s configuration, the specific fuel consumption (fuel flow) has a nonlinear variation and it decreases if:
The cruise altitude increases, for a flight at constant speed; or
The speed decreases, for a flight at a constant altitude.
First, in the next section, a description of the proposed algorithm is presented. Then, the following section details the performance of the algorithm, and the results obtained for tests using an aircraft flight performance data model of a medium haul transport aircraft.
3.0 ALGORITHM DESCRIPTION
The proposed algorithm must identify the vertical flight profile, among the given set of vertical flight profiles, for the specific optimisation conditions (aircraft performance model, lateral flight profile, winds, cost indexes etc.), which satisfies the flight time constraint and produces the minimum total costs. It is therefore necessary to first identify the vertical flight profiles that satisfy the flight time constraint and, then, retain the profile that yields minimum total costs.
A constraint imposed for the algorithm is that it must be deterministic: an identical set of input data would generate identical results, i.e. an identical optimal vertical flight profile and number of flight profile calculations.
In an implementation of the algorithm on a FMS platform, the flight performance parameters (the fuel burn and the flight time) for a given flight profile are calculated using the function already existent in the FMS. This function is not considered to be part of the algorithm.
An analysis of the aircraft performance model data revealed that, due to the limitations determined by the aircraft’s flight envelope, some vertical flight profiles might be invalid (the aircraft cannot fly at that altitude and speed). For a subset of vertical flight profiles, characterised by an identical cruise altitude, the limitation could be:
The vertical flight profiles at speeds lower than a specific value are invalid;
The vertical flight profiles at speeds higher than a specific value are invalid;
Only the vertical flight profiles at a subdomain of speeds are valid; and
The entire subset of vertical flight profiles is invalid (the step altitude is higher than the aircraft’s maximum valid flight altitude for the configuration).
The fuel burn and flight time values returned by the profile performance calculation function for an invalid vertical flight profile were assumed to be zero. An illustration of the limitations imposed on the usable vertical flight profiles, among the set of vertical flight profiles considered in the optimisation, is presented in Table 1. In this table ${Fuel}_{i,j}$ is the fuel consumption and ${Time}_{i,j}$ is the flight time for the vertical flight profile characterised by altitude i and speed schedule j.
As noted in the previous section, the fuel burn rate increases when the flight altitude decreases or the speed increases. However, the fuel burn rate variation is not linear. For a flight segment of a given length, the fuel burn is obtained by integrating of the fuel burn rate over time. Flights along the given segment, at constant altitude, have a higher fuel burn rate at higher speeds but shorter flight times.
For a given lateral flight profile (a set of segments with given lengths and angles relative to the geographic north) and wind conditions, the flight time in cruise, at a constant altitude, decreases when the speed is increased. This variation is non-linear due to the relationship between the GS, the TAS, and the wind (determined by the calculation of the GS using the wind triangle algorithm), and the inverse proportional variation of the flight time with GS.
For a subset of vertical flight profiles, characterised by an identical speed schedule and different step altitudes, it is impossible to establish a universally valid model for the flight time variation as a function of the step altitude. This impossibility is due to:
The variation of the crossover altitude with the speed schedule;
The variation of the TAS with the altitude, as determined by the speed reference used in the calculation (IAS or MACH);
The wind variation with the altitude. This variation is nonlinear, with a different mode of variation for each altitude domain, and is specific for the optimisation case and sub-segment; and
The non-linear dependence between the GS, the TAS, and the wind (since the GS is computed using the wind triangle algorithm).
The vertical flight profiles can be grouped as a function of the step altitude value. For such a sub-group, characterised by an identical step altitude and different speed schedules (Fig. 3), the vertical flight profiles can be divided into three sections:
A common cruise sub-section, at the step altitude;
An initial climb/descent sub-section. This sub-section might be followed by a cruise segment, at the step altitude, with a length equal to the distance between the end of the initial climb/descent sub-segment and the beginning of the common cruise sub-section; and
A final descent/climb sub-section. This sub-section might be preceded by a cruise segment, at the step altitude, with a length equal to the distance between the final point of the common cruise sub-section and the beginning of the final descent/climb sub-segment.
If the common cruise sub-section of the vertical profiles’ sub-set has the main contribution to the flight time, i.e. the length of the common sub-section is longer than the sum of the other two subsections, and it dictates the flight time variation with speed (the flight time variation for the initial and final sub-sections is smaller than the flight time variation for the common sub-section), then the flight time has a monotonous variation with speed. This situation is equivalent to the case of a flight in cruise at a constant altitude, as presented in a previous paragraph: an increase in speed determines a reduction of the flight time. In this study it is assumed that, for a sub-set of vertical flight profiles characterised by an identical step altitude, the flight time has a monotonous variation with speed. Given the speed schedule range for the vertical flight profiles [ $\text{sv}_{1}$ , $\text{sv}_{2}$ ,, $\text{sv}_{\text{Q}}$ ], with $\text{sv}_{1} < \text{sv}_{2} < \dots < \text{sv}_{\text{Q}}$ , the flight time corresponding to a sub-set of vertical flight profiles characterised by an identical step altitude can be considered to be an ordered list [ $\text{t}_{1}$ , $\text{t}_{2}$ ,, $\text{t}_{\text{Q}}$ ], with $\text{t}_{1} > \text{t}_{2} > \dots > \text{t}_{\text{Q}}$ . Therefore, finding a vertical flight profile that satisfies the RTA constraint, among the sub-set of vertical flight profiles, is equivalent to finding an element with a specific value (the required flight time) in an ordered list.
Due to the limitations imposed by the aircraft’s flight envelope, as mentioned previously and illustrated in Table 1, some of the vertical flight profiles may be invalid - the aircraft cannot fly at those altitude and speed pairs. Thus, the list containing the flight times for a sub-set of vertical flight profiles with an identical step altitude might contain one or more values of zero at one end (for minimum or maximum speeds), at both ends, or on the entire list. Such a list is no longer an ordered list.
As presented earlier, for a given set of vertical flight profiles (sets of flight altitudes and scheduled speeds), generally the variation of the flight time and fuel burn as a function of the flight altitude and scheduled speed is non-linear and not monotonous. It follows that the optimisation function, expressed by Eq. (1), is generally non-linear and not monotonous.
The methodology proposed in this paper is based on the binary search algorithm (Knuth(Reference Knuth22)). This choice was determined by the binary search algorithm simplicity and the fact that, among the search algorithms that use comparisons to find an element in an ordered list, it requires the minimum number of comparisons.
The binary search algorithm can only be used for finding elements in ordered lists. In this study it is assumed that for each sub-set of vertical flight profiles, characterised by the same step altitude, if the minimum speed, maximum speed and the speed located in the middle of the speed domain are invalid (outside the aircraft’s flight envelope) the entire sub-set of vertical flight profiles is invalid. This assumption is consistent with the range of altitudes and speeds used for flights in cruise and it ensures that, within the first steps of the algorithm, an ordered sub-list is identified, on which the binary search algorithm can be applied.
In a first step the acceptable flight time domain (rta - $\Delta$ rt, rta + $\Delta$ rta) is determined, where rta is the flight time constraint and $\Delta$ rta is the width of the acceptable time window. Next, the set of vertical flight profiles are grouped into sub-sets that have an identical step altitude. For each sub-set of flight profiles, a valid profile (a scheduled speed) that yields a flight time within the RTA constraint limits, if it exists, is found via a binary search. This speed is different than the Economic Speed (ECON SPEED) as it considers the climb and descent sub-segments and the RTA constraint. If a valid vertical flight profile is found, then, the lower and higher speeds of the vertical flight sub-set are verified with respect to the RTA constraint. At each step, the total cost is calculated and the vertical flight profile with the minimum cost is retained as the optimal profile. The evaluation of the higher (or lower) speeds in the scheduled speed set, relative to the speed identified by the binary search, stops when the limit of the scheduled speed set is attained, or the resulted flight time is outside the acceptable time window or the corresponding vertical flight profile is outside the aircraft’s flight envelope.
4.0 RESULTS
This section contains the results obtained by a MATLAB implementation of the proposed algorithm for a medium haul transport aircraft model, corresponding to the FMS simulation platform (a PC-based application) used to validate the flight performance calculation function (fuel burn and flight time) used in the tests. The algorithm validation could not be done using an existing FMS platform because none of them implement a similar functionality. Therefore, the validations were performed by comparing the optimal profiles determined by the proposed algorithm with the optimal profiles found by an exhaustive search within the same set of candidate profiles. For each valid speed (that determines a flight time within the acceptable window) the total cost was calculated and the profile with the minimum total cost was retained.
The analysis of the results focused on four aspects:
Algorithm validity - The degree to which the algorithm correctly identifies the optimal vertical profile for an imposed flight time, or the impossibility of satisfying the time constraint;
Algorithm performance - The time and computing resources necessary to determine an optimal profile (evaluated as the number of profile calculations required to reach a result);
RTA domain extension - The increase of the domain of flight time constraint values which can be satisfied by a flight along the vertical flight profile, versus a flight in cruise, at the initial cruise altitude; and
Total cost reduction - The reduction of the total cost for the flight along the optimal vertical profile versus the flight at the optimal speed for the initial cruise altitude (for RTA constraints that can be achieved both on a vertical flight profile and in cruise, at the initial altitude).
The parameter chosen to quantify the algorithm performance, the time and computing resources necessary to obtain a result, was the number of flight profile calculations. This number was selected because the time required to compute the performance parameters for a flight along a given flight profile is platform-specific, and it is the major contributor to the overall computing time. The complexity of the proposed search algorithm is insignificant relative to the complexity of the algorithm that computes the performance parameters for a flight profile (fuel burn and flight time).
The unlimited number of possible value combinations for the input variables — lateral flight profiles (number of sub-segments, length and orientation for each sub-segment), atmospheric conditions (ISADEV value and wind structure for each sub-segment) and initial cruise altitudes — combined with the impossibility of predicting specific values or combinations of values with a particular signification (limit cases), led to the use of a reduced set of values for these input variables.
The set of analyzed test scenarios, defined by the ensemble of values considered for the input variables, are:
Aircraft configuration:
° Zero fuel weight (zfgw): 80% of the maximum zfgw for the aircraft model
° Centre of gravity position: at 50% within the cg range for the aircraft model
° Fuel quantity: 45% of the maximum fuel capacity for the aircraft model
Lateral flight profiles:
° LAT1 (500 n.m), LAT2 (1 000 n.m) and LAT3 (1 500 n.m)
° Heading: $90^\circ$
Initial cruise altitude: 20 000 ft, 25 000 ft, 30 000 ft and 35 000 ft
Atmospheric conditions:
° ISADEV 0
° Winds:
No winds
WIND1: [20 000 ft / $90^{\circ}$ / 50 kn; 37 000 ft / $270^{\circ}$ / 50 kn]
WIND2: [20 000 ft / $270^{\circ}$ / 50 kn; 37 000 ft / $90^{\circ}$ /50 kn]
Vertical flight profiles:
° Step altitudes: 20 000 ft to 37 000 ft with 1 000 ft increments
° Speed: [280, 0.78] to [335, 0.835] with [1, 0.001] increments
CI: 0, 50 and 100
RCI: 0, 5, 10, 25, 50 and 100
Two sets of required flight times were used. A first set, composed of values that are multiples of 15 seconds contained within the flight time domain achievable for the flight in cruise at the initial altitude, was used for comparing the performance of the flight on the optimal vertical flight profile versus the flight in cruise. The second set was composed of values that are multiples of 15 seconds contained within the flight time domain achievable for the flights in vertical flight profiles, plus two values outside this domain: one smaller than the minimum achievable flight time and one that is larger than the maximum flight time achievable on the vertical flight profiles. This second set of test values were used for algorithm performance characterisation, including when the time constraint is not achievable. The first set of required flight test values is included in the second set as the initial cruise altitude is included in the set of vertical flight profile step altitudes.
The combination of values considered for the input variables generated 116 622 individual test cases. The validity of the results produced by the algorithm was confirmed by a comparison with the results produced by the reference method (an exhaustive search) — the results are identical (see Table 2).
For 270 test cases with imposed flight time within the flight time domain attainable by a flight on the flight vertical profile (the maximum and minimum flight time achievable on the vertical flight profile), none of the profiles produced a flight time within the acceptable time window. This was determined by the fact that the scheduled flight speeds (IAS and MACH) and the flight altitudes have discrete values; therefore, the average ground speed has discrete values.
The number of flight profiles that need to be evaluated to determine the optimal profile (for an achievable RTA), or to verify the impossibility of meeting the time constraint (for an unachievable RTA), are summarised in Table 3.
A first observation results from the fact that, in the case of an achievable imposed flight time (RTA), the number of profile calculations for a test case with a longer lateral flight profile (such as LAT3) is smaller than the number of profile calculations for a test case with a shorter lateral flight profile (such as LAT1). This is determined by the fact that, for a shorter lateral flight profile, the flight time difference between two flight profiles having the same step altitude and consecutive speed values (in the vertical flight profile’s definition speed set) is smaller. Therefore, for a test case with a shorter lateral flight profile, there may be more vertical flight profiles that satisfy the flight time constraint and must be evaluated.
The second observation concerns the number of profiles evaluated when the flight time constraint cannot be satisfied. Due to the implementation of the algorithm, the minimum number of profile calculations for the case when the imposed flight time is larger than the maximum achievable flight time is equal to the number of step altitudes that define the vertical flight profile set. The minimum number of profile calculations for the case where the imposed flight time is smaller than the minimum achievable flight time is double the number of step altitudes in the vertical flight profile definition set. It can be observed that, for the case when the imposed flight time is smaller than the minimum achievable flight time, the maximum number of calculated profiles was 144 — more than the estimated minimum of 36 (double the number of step altitudes in the vertical flight profile definition). This high number is caused by the invalid flight profiles, the limitation resulted from the aircraft’s flight envelope at high speeds and, therefore, the necessity to evaluate more profiles to determine the highest valid speed (lowest achievable flight time).
The values of the cost indexes do not influence the number of profile calculations necessary to determine the optimal profile, or the fact that the time constraint cannot be satisfied. Their value, however, does determine which of the vertical flight profiles that satisfies the time constraint is the optimal profile.
For the evaluated test cases, the minimum increase of the achievable flight time constraint domain was 34.78% (for an initial cruise altitude of 20 000 ft, LAT1, WIND2) and the maximum increase was 374.59% (for an initial cruise altitude of 30 000 ft, LAT3 and WIND1) — see Table 4.
As expected, the initial cruise altitude and the wind have an influence on the domain of flight time constraint values that can be satisfied. The first mechanism of influence, the modification of the imposed flight time domain used as a reference, corresponding to the flight in cruise at the initial cruise altitude, is attributed to the variation of the TAS (determined by a [IAS, MACH] speed schedule). Another factor that influences these results is the aircraft’s flight envelope, a factor that can reduce the set of valid scheduled speeds. The third factor is the modification of the vertical flight profiles — climb/descent angles and segment lengths and, as a consequence, the lengths of the cruise segment at the step altitude. These modifications cause a modification of the flight time and fuel burn.
The influence of the initial cruise altitude on attainable imposed flight times can be determined by analyzing the results for the test cases without wind, with identical lateral flight profiles and different initial cruise altitudes. For the test cases with a LAT1 profile and initial cruise altitudes of 20 000 ft, 25 000 ft, 30 000 ft and 35 000 ft, the improvement of the attainable imposed flight time domain, for the flight on a vertical flight profile relative to the flight in cruise at the initial altitude, were 53%, 70%, 152% and 54% (see Table 4). The maximum improvement of 152% was obtained for an initial cruise altitude of 30 000 ft, close to the crossover altitude for the set of speed schedules that define the vertical flight profiles, for which the reference attainable flight time domain is reduced due to the TAS variation function of the speed schedule.
The modification of the vertical flight profiles due to the initial cruise altitude (climb/cruise/ descent profile flight times) does not have a large influence on the domain of attainable flight times. The results obtained for initial cruise altitudes of 20 000 ft, 25 000 ft and 30 000 ft are similar. The reduction of the domain of attainable flight times for the initial cruise altitude of 35 000 ft was determined by the limitations imposed by the aircraft’s flight envelope (valid speeds).
The wind influences the domain of attainable flight times for the vertical flight profiles, as well as the flights at the initial cruise altitude, due to the modification of the ground speed. This fact can be observed by analyzing the results obtained for test cases having the same lateral fight profile and initial cruise altitude but different wind values. The best results were obtained for the test cases with their wind defined by WIND1 — favorable wind (tail wind) at high altitudes and non-favorable wind (head wind) at low altitudes. The smallest improvements were obtained for WIND2 — non-favorable winds at high altitudes and favorable winds at low altitudes.
A graphical representation of the domains of imposed flight time that can be satisfied by a flight in cruise, at the initial cruise altitude, and by a flight on a vertical flight profile, for LAT1, are presented in Figs. 4–6, respectively.
The flight times that can be realised in cruise, at the initial cruise altitude, are a sub-set of the flight times that can be realised on the vertical flight profiles — the initial cruise altitude is included in the set of altitudes that define the vertical flight profiles. For the test cases without wind, or with a wind defined by WIND1, the minimal ground speed (maximum flight time) was obtained for a flight at 20 000 ft (Figs. 4 and 5). Therefore, for the test cases where the initial cruise altitude was 20 000 ft, the maximum flight time for the flight in cruise at the initial cruise altitude was equal to the maximum flight time on the vertical flight profiles. Therefore, the improvement of the maximum RTA value was 0% — see Table 4.
The influence of the lateral flight profile length can be observed by analyzing the results for tests that have the same initial cruise altitude and wind conditions but different lateral flight profiles (Table 4). A longer lateral flight profile produced a larger improvement of the attainable flight time constraint domain. This outcome can be attributed to the increased contribution of the cruise segment, at the step altitude, to the average ground speed.
The reduction of the total cost for a flight along the optimal vertical flight profile, relative to a flight along the optimal profile in cruise, at the initial cruise altitude, is dependent upon the specific configuration for the optimisation case (the values of the input data).
For the set of tests analyzed in this paper, the maximum reduction of the total cost was 64%, obtained when the initial cruise altitude is 30 000 ft, with LAT2, WIND1, CI=0 and RCI=100 (see Table 5).
Table 5 contains a synthesis of the results obtained for the test cases characterised by the same aircraft configuration, lateral flight profile, atmospheric conditions, initial cruise altitude and set of vertical flight profiles. The RTA values are those contained in the set of RTA values attainable in cruise at the initial cruise altitude. Each row summarises the results for a different combination of CI and RCI cost indexes. A minimal total cost improvement value of 0% signifies that the optimal vertical flight profile for the RTA constraint (the flight time imposed on the segment) is identical to the optimal profile in cruise, at the initial cruise altitude.
5.0 CONCLUSION
The algorithm presented in this paper was developed based on the aircraft and atmospheric models used in current FMS platforms. A constraint imposed in the development of the algorithm is that the results must be replicable and the time required to obtain the results is reduced to a minimum.
A total of 116 622 tests were conducted for the transport aircraft model used in this study. These tests confirmed that the algorithm correctly identified the optimal vertical flight profile for an RTA constraint, if it existed, or the impossibility to satisfy the time constraint, if none of the vertical flight profiles resulted in a flight time within the acceptable time window.
The optimisation results, the improvement for each of the parameters of interest, are dependent upon the particular case of optimisation. For the test cases evaluated in this study:
The total cost improvement, for the optimal flight profile, relative to the optimal flight profile in cruise at the initial cruise altitude, had a minimum value of 0% (when the optimal vertical flight profile was a flight in cruise at the initial cruise altitude) and a maximum value of 64%.
The increase of the domain of RTA constraint values (flight times on the segment under optimisation) that could be satisfied for a flight along the vertical flight profile, relative to a flight in cruise at the initial altitude, varied between 34% and 374%.
The number of altitudes and speeds that define the set of vertical flight profiles and the length of the lateral flight profile influence the number of profile calculations. An increase in the number of speeds and/or altitudes that define the vertical flight profiles set will result in an increased number of vertical flight profiles and, therefore, would likely increase the number of profiles that must be evaluated.
An increase of the length of the lateral flight profile might decreases the number of vertical flight profiles that have to be evaluated. The increase in length determines an increase in the flight time difference corresponding to vertical flight profiles with the same step altitude and different speed values. Therefore, it is possible that a smaller number of vertical flight profiles will satisfy the RTA constraint.
The value of the imposed flight time on the segment, relative to the domain of flight times that can be satisfied by the flights on the vertical flight profile, influences the number of profile calculations. This influence is determined by the number of steps the binary search algorithm requires in order to identify a profile with a flight time value compatible with the flight time constraint.
Invalid vertical flight profiles (step altitudes and/or speeds that are outside the aircraft’s flight envelope) might increase the number of profiles evaluated by the algorithm. This is especially true for RTA values that are close to or beyond the limit of the domain of flight time constraints that can be satisfied.
A vertical flight profile optimisation for a cruise flight segment with RTA constraints, as proposed by the algorithm presented in this paper, has a number of advantages:
An increased range of flight time constraint values that can be satisfied;
The total cost for the optimal vertical flight profile is always smaller or equal to the optimal profile for a flight in cruise, at the initial cruise altitude (optimal speed at the initial cruise altitude for the time constraint); and
A reduced number of profile calculations relative to other evaluation methods that are based on searches and comparison with a reference value.
A disadvantage of the proposed method is that the required number of profile calculations is still too high for the computational capacity of current FMS platforms. This algorithm would be better suited for future versions of FMS platforms, with higher processing power.