In order to reduce fuel burn and flight cost, all possible trajectories that an aircraft could fly ... The PDB includes input information such as flying speed, altitude, ...
Speed and altitude optimization on the FMS CMA-9000 for the Sukhoi Superjet 100 using genetic algorithms Roberto Salvador Félix Patrón, Adrien Charles Oyono Owono and Ruxandra Mihaela Botez ETS, Laboratory of Research in Active Controls, Avionics and AeroServoElasticity (www.larcase.etsmtl.ca), Montreal, Quebec, H3C-1K3, Canada Dominique Labour CMC Electronics – Esterline, St. Laurent, Quebec, Canada
To obtain the most fuel-efficient trajectory for an aircraft and reduce the flight cost, all possible trajectories should be calculated, including all possible IAS/Mach combinations. The analyze of all possible trajectories would result in a large calculation time, and for a device such as the flight management system (FMS) CMA-9000, from CMC Electronics – Esterline, the calculation time is limited. In order to reduce the search space for solutions and reduce calculation time, genetic algorithms are considered. Different on-flight restrictions imposed by the air traffic control (ATC) should be considered, such as flying altitude and speed.
Nomenclature ATC CO 2 FMS GA IAS PDB TAS
= = = = = = =
air traffic control carbon dioxide flight management system genetic algorithms indicated airspeed performance database true airspeed
I. Introduction In order to reduce fuel burn and flight cost, all possible trajectories that an aircraft could fly should be analyzed. The flight management system (FMS) CMA-9000 from CMC Electronics – Esterline uses a performance database (PDB) to perform its calculations and define the flight trajectories. This PDB includes information on the climb, cruise and descent. The PDB includes input information such as flying speed, altitude, temperature and aircraft gross weight; output information is given in terms of fuel burn and distance traveled. Using the PDB, a precise trajectory can be calculated. Genetic algorithms (GA) to reduce calculation time in processes has been widely studied in the literature. GA are known for their versatility and good performance in environments where restrictions are imposed. The GA methodology consists in creating a random population of chromosomes (possible trajectories) among the search space, and evaluates them to see which are the fittest in terms of their flight cost. The selected chromosomes (parents) will create a new generation of chromosomes (children), and a new evaluation will start. The cost function in this article is defined as the optimal speed schedule (IAS/Mach pair) and altitude to find the lowest fuel consumption available during a specific flight. In [1], an algorithm that optimized the vertical flight profile for the FMS CMA-9000, from CMC Electronics – Esterline was presented. The optimization algorithm in [1] reduced the fuel burn for the Lockheed L-1011 and the Airbus A310 aircraft by 2.57% with the correct selection of the flying altitudes and speeds. All speeds and altitudes were used to search for the optimal trajectory. Calculation time was therefore affected. Different methods have been used to reduce calculation time on trajectories optimization algorithms. Dancila [2] studied a new method to estimate the fuel burn, reduce calculation time and improve precision in the calculation of trajectories on the FMS CMA-9000. 1 American Institute of Aeronautics and Astronautics
Fays [3] used meta-heuristic methods to follow 4D trajectories and avoid no-fly zones, which could be defined by weather constraints or because the airspace is too dense. Genetic algorithms have been used in aviation to resolve high complexity problems. Kouba [4] studied an aircraft modeled in six dimensions to improve the way of overtaking the flight trajectories in order to make it more efficient. Kanuary and Song [5] studied the management of multiple aerial vehicles, as well as obstacles avoidance using genetic algorithms, in order to create a more efficient flight trajectory in the presence of such obstacles. The proposed algorithm in this article defines a methodology to create more fuel efficient trajectories in order to reduce flight cost and fuel burn from different aircraft. The Sukhoi Superjet 100 is analyzed in this paper. To achieve this fuel reduction, a low calculation time algorithm is defined, using genetic algorithms as the optimization method. Due to the nature of the problem, where different constraints are usually imposed by the ATC on the creation of trajectories and different in-flight variables attached to the problem, such as speeds and altitudes, the genetic algorithms methodology was selected. Aircraft fuel burn is an important contributor for Carbon Dioxide (CO 2 ) emissions to the atmosphere, the principal Greenhouse gas. Total CO 2 emissions dues to airplane traffic represent between 2.0 and 2.5% of all carbon dioxide emissions to the atmosphere [6]. Greenhouse gases contribute to the global warming effect, which is one of the most important environmental problems encountered nowadays. The creation of more efficient trajectories for aircraft would contribute in the reduction of fuel burn, therefore in the reduction of CO 2 emissions to the atmosphere. In Canada, the Green Aviation Research & Development Network (GARDN) was founded in 2009. The first project in this network was called Optimized Descents and Cruise. The new algorithm here shown is developed in this project. The avionics well known company CMC Electronics-Esterline provided the FMS CMA-9000 data needed for validation of the new algorithm here proposed.
II. Methodology In this section, the climb and cruise are explained first. It should be noted that this algorithm focuses on the selection of the optimal speed and altitude for the climb and cruise phases. The descent, considered to be the phase which influence the less the flight cost, is not taken into account in this algorithm. The second part of the methodology defines the genetic algorithm used to obtain the optimal speed and altitude to reduce the flight cost. A. Climb and cruise cost calculation The PDB divides the true airspeed (TAS) values in two different types of speeds: IAS (indicated airspeed) and Mach number. The TAS varies with the altitude. For the IAS case, the TAS increases with the altitude, while Mach decreases with the altitude. The altitude for which the TAS due to IAS is equal to the TAS due to Mach is called the crossover altitude. The climb of an aircraft during a flight is subdivided into four different phases: 1) Initial climb. The aircraft is located at 2,000 ft and climbs up to 10,000 ft with a constant 250 IAS. 2) Acceleration. The aircraft accelerates from the initial climb speed to the selected IAS speed. 3) IAS climb. The aircraft climbs from the final altitude of the acceleration up to the crossover altitude at a constant IAS speed. 4) Mach climb. Once the aircraft reaches the crossover altitude, it climbs at a constant Mach speed up selected cruise altitude. The optimal climb is selected by defining the speed schedule and flying altitude that reduces the flight cost. Table 1 shows the speeds and crossover altitudes available for the Suckhoi Superjet 100, for a 1,000 ft interpolation step.
2 American Institute of Aeronautics and Astronautics
Table 1 Crossover altitudes table for the Sukhoi Superjet 100 PDB 16000 22000 24000 27000 29000 31000 33000 35000 36000 37000 38000 39000 40000 250
14000 20000 22000 25000 27000 30000 32000 34000 34000 35000 36000 37000 39000 260
12000 18000 21000 23000 26000 28000 30000 32000 33000 33000 35000 36000 37000 270
10000 16000 19000 21000 24000 26000 28000 30000 31000 32000 33000 34000 35000 280
10000 14000 17000 20000 22000 24000 27000 29000 29000 30000 31000 33000 34000 290
10000 12000 15000 18000 20000 23000 25000 27000 28000 28000 30000 31000 32000 300
10000 11000 13000 16000 19000 21000 23000 26000 26000 27000 28000 30000 31000 310
0,50 0,56 0,59 0,62 0,65 0,68 0,71 0,74 0,75 0,76 0,78 0,80 0,82 IAS/Mach
B. Genetic algorithm GA are stochastic algorithms which allow finding good solutions when a problem encounters randomness and non-linear data. Their principles are based on Darwin’s evolution theory which indicates that during evolution, the fittest survive. The GA are are explained in this section, starting by the composition of the individuals, the evaluation function, the selection method, crossover and mutation, and finally, the stopping criterion. 1. Individuals The individuals are composed as follows: 1) IAS: the climb speed up to the crossover altitude. 2) MACH: the climb speed after the crossover, as well as the speed during the cruise. 3) CROSSOVER: the crossover altitude. 4) FITNESS: a n – by – 2 matrix containing all the n possible cruise altitudes and the flight cost for each altitude. 2. Evaluation The evaluation quantifies the adaptation of the solution. The selection of the individuals for the creation of the subsequent generations is based on their fitness. The fitness is the function to optimize, in this case, the global flight cost. The evaluation function consists in calculating the total flight cost for each individual. In this case, in terms of fuel consumption and flight cost. 3. The selection mode In order to maintain the diversity of the population, the selection mode must not advantage completely the best individuals. However, if the individuals of the population are too diverse, the computation time can be high, depending on the number of individuals per generation. Different methods can be selected to define the evolution of the population, and are defined next. 1) Uniform selection: all the individuals have the same possibilities to be selected. 2) Tournament selection: the individuals are paired and they compete against each other. The winners of each competition are selected. 3) Rank selection: the individuals are ranked according to their fitness, and only the best are selected. 4) Proportional selection or roulette wheel: the individuals are randomly selected, but the randomness is biased. The chances for each individual are proportional to its fitness. The most fitted have more possibilities to be selected. The rank selection and the roulette wheel selection have been implemented in the proposed algorithm. With the rank mode, the population becomes homogeneous very fast, and the algorithm evolves slower. A small number of generations and a large number of individuals are necessary in each generation. The roulette wheel allows the algorithm to keep a diversified population that evolves fast, allowing a larger number of generations with a smaller number of individuals per generation. The results of both methods are explained in the Results section. The group of selected individuals will either mutate or crossover to create a second generation of individuals (children). Mutation is defined as the alteration of one or more of the genes, which would change the composition of a 3 American Institute of Aeronautics and Astronautics
given chromosome. The crossover takes one part of a chromosome, and combines it with a different part of a second chromosome. This is made to create diversified individuals. 4. Crossover The effectiveness of the crossover operator lays on how it is implemented and on the quality of the individuals crossing, which depends on the effectiveness of the selection operator. One of the methods to perform the crossover is to convert the data into a binary genetic mix. An example of a simple crossover is shown on Figure 1. Father 1 350/0.75
Father 2 260/0.78
Crossover operator
Son 1 350/0.78
Son 2 260/0.75
Figure 1. Individuals crossover example. Binary representation simplifies the understanding of the natural principles of chromosomes and genes. In this article, IAS can be considered as the X chromosome and Mach speed as the Y chromosome. The first stage of the crossover is the localisation of the place where the chromosomes are divided in genes. Table 2 shows an example of a binary crossover applied to the trajectory optimization problem. This table shows how the IAS and Mach speeds are used in their binary form. The first 3 digits of each chromosome represent the gene 1, and the last 6 the gene 2. Father 1 and Father 2 are crossed to obtain Son 1 and Son 2. The Mach number is multiplied by 10 to obtain its binary form. Table 2 Binary crossover example for the trajectories optimization algorithm.
0 0 1 0 0 0 1 0
Gene 1 1 0 Gene 1 0 0 Gene 1 1 0 Gene 1 0 0
1 1
1 0
1 0
1 0
0 1
1 0
0 1
1 0
1 1
1 0
0 1
1 0
0 1
1 0
1 0
1 0
Gene 2 0 1 Gene 2 1 0 Gene 2 1 0 Gene 2 0 1
1 0
0 0
0 1
0 0
0 1
0 0
1 0
0 0
Speed 250 IAS 0.68 Mach Speed 300 IAS 0.82 Mach Speed 236 IAS 0.82 Mach Speed 314 IAS 0.68 Mach
Father 1
Father 2 Son 1 (Father 1 gene 1 – Father 2 gene 2) Son 2 (Father 2 gene 1 – Father 1 gene 2)
After obtaining the sons presented in binary form, they are reconverted into decimal numbers. Since the crossover is done with binary numbers, a number not available in the PDB could be obtained. An example of this can be seen on Table 2, where Son 2 has an IAS of 314 knots. Since 314 IAS is not on the PDB, its value will be modified to its closest value on the PDB (310 IAS). One of the project constraints is not to interpolate the speeds, therefore, a crossover correction function has been created. This function takes into account the IAS and Mach speeds limits and the steps between those speeds. Assume that for an aircraft, the lowest IAS speed is 𝑎 and the largest IAS speed is 𝑏. If the step in the PDB file is 𝑖 and the speed resulting from the crossover is 𝑥, the tool searches the sub-interval of 4 American Institute of Aeronautics and Astronautics
[ 𝑎 ; 𝑏] where 𝑥 is located, and then change 𝑥 into one of the extremes values of the sub-interval. The equation below summarises this principle, where 𝑉 is the speed available in the PDB: �
if x ∈ �V;
if x ∈ �
2V+i 2
2V+i 2
� , x=V
(1)
; V + i� , x = V + i
The first value of 𝑉 is 𝑎 and the last value of 𝑉 + 𝑖 is 𝑏. The interval [𝑉; 𝑉 + 𝑖] is split into two parts. The variable 𝑥 takes either the lowest or the largest value of the interval depending on whether it is found between the lowest value and the center of the interval or between the center and the largest value. 5. Mutation The mutation is another way to evolve a population. It can be used alone and systematically or coupled with the crossover operator. In this algorithm, it is set randomly with a fixed rate. It is an useful tool that can ensure by itself the evolution of the population, but it can also take a larger computation time to reach an acceptable solution. Since the algorithm had to be fast, as it is meant to be implemented in the FMS CMA-9000 from CMC Electronics – Esterline, it has been coupled with the crossover, at a fixed rate. The mutation operator is used by the crossover. Since the crossover is binary, the implementation of the mutation was simple. After the crossover, each bit of the binary representation of each son is mutated with a probability of 1%. This choice is justified in the Results section. The mutation consists in changing the concerned bit into its opposite bit. An example can be seen in Figure 2.
1
0
1
0
1
1
1
1
0
1
0
1
0
1
1
0
1
0
Figure 2. Mutation example. 6. Stopping criterion The processes described are repeated continuously, therefore, a stopping criterion is necessary. The calculations are stopped either after that the algorithm has reached a maximum number of generations or a certain number of generations without improving the solution. If the genetic mix is too diversified, the algorithm turns unstable and does not keep the same solution over a large number of generations. The stopping criterion has to be selected depending on how the genetic mix has been implemented. The diversity in this algorithm is small, and the selection mode turns into a fast homogenization of the population. Thus, the stopping criterion is selected low enough to avoid high computation time and high enough to ensure the efficiency of the solution.
III. Results Since the genetic algorithm is a heuristic algorithm, different results are obtained at each computation. To measure the stability of our algorithm, a statistical analysis has been made. The algorithm is executed automatically 100 times with the same parameters. For each execution, the number of occurrences of each solution is automatically stored, as well as the execution time. Then, the percentage of appearance of each solution and the mean execution time for obtaining this solution are established. Through this method, the influence of each parameter on the quality of the solution and the execution time of the algorithm is obtained. All the tests are performed for one type of aircraft (Sukhoi Superjet 100) and one flight (Montreal to Cancun), but the algorithm could be implemented in any other aircraft using the FMS CMA – 9000 from CMC Electronics Esterline.
5 American Institute of Aeronautics and Astronautics
To see the influence of the selection mode on the quality of the solution, the flight cost against the number of individuals per generation are plotted in Figure 3 and Figure 4. Figure 3 shows the roulette wheel selection mode with a stopping criterion of 5 generations. Figure 4 shows the rank selection mode with a stopping criterion of 5 generations. 6700 6680 6660
Flight cost (Kg)
6640 6620 6600 6580 6560 6540 6520 6500 0
2
4
6 8 10 12 14 16 Number of individuals per generation
18
20
22
18
20
22
Figure 3. Flight cost for the roulette wheel selection for 5 generations.
6700 6680 6660
Flight cost (Kg)
6640 6620 6600 6580 6560 6540 6520 6500 0
2
4
6 8 10 12 14 16 Number of individuals per generation
Figure 4. Flight cost for the rank selection for 5 generations. As it can be sen, the set of solutions is larger for the roulette wheel selection mode ( [6560 Kg; 6685 Kg] ) than for the rank selection mode ( [6560 Kg; 6665 Kg] ). Furthermore, the number of different solutions obtained for a given number of individuals per generation is lower for the rank selection mode, which means that for this mode, the algorithm is more stable. 6 American Institute of Aeronautics and Astronautics
These results were predictable, since the roulette wheel selection provides the every individual the possibility to be selected. The rank selection mode is selected because it fits better the stability objective. The number of individuals per generation influences the execution time of the algorithm. Different tests have been performed to determine the right population size. Figure 5 shows the variation of the execution time in respect of the population size. The execution time increased almost linearly. The statistical results of the algorithm variating the size of the population can be seen in Figure 6. 2.2
Execution time (seconds)
2
1.8
1.6
1.4
1.2
1
0.8
4
6
8
10 12 14 Size of population
16
18
20
Figure 5. Execution time versus the size of the population.
6700 6680 6660
Flight cost (Kg)
6640 6620 6600 6580 6560 6540 6520 6500 0
2
4
6 8 10 12 14 16 Number of individuals per generation
18
Figure 6. Flight cost versus the size of the population.
7 American Institute of Aeronautics and Astronautics
20
22
In Figure 6 show the results for a population size from 12 to 20. The original choice of 20 individuals per generation was kept. The mutation tool has been essential in this genetic algorithm. The solutions obtained have improved after its insertion. Until now, the graphs presented have been obtained without the mutation function. With a mutation rate of 1%, however, the results improved drastically. Figure 7 shows the results after inserting the mutation function. For 14 individuals per generation or more, only 2 different solutions were found. The evolution of the execution time is the same as if the mutation tool was not used. The reasons of selecting 1% as the mutation rate, is because for tests at 0.1%, the mutation rate is too small to influence the evolution of population, while at 10% is too big and creates a population excessively diversified one generation after another. The 1% rate gave the best results for this algorithm. 6700 6680 6660
Optimal cost (Kg)
6640 6620 6600 6580 6560 6540 6520 6500 0
2
4
6 8 10 12 14 16 Number of individuals per generation
18
20
22
Figure 7. Flight cost for the rank selection for 5 generations with the mutation function. The choice of the number of generations is important for the execution time of the algorithm. After choosing the other parameters, the influence of the stopping criterion on both the execution time and the quality and stability of the solution has been studied. In Figure 8 and Figure 9 it can be noticed that the most adecuated stopping criterion is located between 5 and 10 generations. The calculation time after 10 generations becomes very important, and the upgrade to the optimal solution does not.
8 American Institute of Aeronautics and Astronautics
Optimal cost versus Stopping criterion (20 individuals per generation) 6700 6680 6660
Flight cost (Kg)
6640 6620 6600 6580 6560 6540 6520 6500 0
5
10 15 20 Stopping criterion (number of generations)
25
Figure 8. Flight cost against number of generations. Execution time versus Stopping criterion (20 individuals per generation) 7 6.5
Execution time (seconds)
6 5.5 5 4.5 4 3.5 3 2.5 2
5
10 15 Stopping criterion (number of generations)
20
Figure 9. Calculation time against number of generations. After different tests were performed, the optimal number of generations for this algorithm was obtained at 6. Table 3 shows the results. In this case, the percengage of finding the optimal solution is 98%, while only 2% for one suboptimal solution. The mean execution time is of 3.12s.
9 American Institute of Aeronautics and Astronautics
Table 3 Results for the genetic algorithm with 6 generations.
36000 ft
Optimal global cost 6567 Kg
Percentage of occurrences 98%
34000 ft
6621 Kg
2%
Climb IAS/MACH
Cruise altitude
310/0.78 310/0.74
Mean execution time 3.12 s
IV. Conclusion The genetic algorithm applied to the fuel burn reduction problem presents an alternative for the calculation of the optimal trajectory. The optimal flight cost results here presented match those presented in [1]. The genetic algorithm algorithm would be a very interesting alternative if applied to a PDB with a larger number of IAS and Mach speeds, since the genetic algorithms work better in a larger search space and when it is permitted for it to run through many generations. However, this algorithm presents a methodology that could be applied to different type of PDBs and aircrafts, and would reduce calculation time.
Acknowledgments The authors would like to thank for the financial support to Green Aviation Research & Development Network (GARDN), CMC Electronics – Esterline and CONACYT. Software support for the use of the FlightSIM product was also obtained from Presagis.
References 1
Félix Patrón, R.S., Botez, R. M., and Labour, D. "Vertical profile optimization for the Flight Management System CMA-9000 using the golden section search method," IECON 2012 - 38th Annual Conference on IEEE Industrial Electronics Society. 2012, pp. 5482-5488. 2 Dancila, B., Botez, R., and Labour, D. "Altitude Optimization Algorithm for Cruise, Constant Speed and Level Flight Segments," AIAA Guidance, Navigation, and Control Conference. American Institute of Aeronautics and Astronautics, 2012. 3 Fays, J. "Creation et suivi de trajectoire en quatre dimensions avec evitement automatique des No-Fly Zones et calculs de sorties supplementaires pour l'aide au pilotage," ProQuest Dissertations and Theses. Ecole de Technologie Superieure (Canada), Canada, 2010, p. 86. 4 Kouba, G. "Calcul des trajectoires utilisant les algorithmes genetiques en trois dimensions pour un avion modelise en six dimensions." Ecole de Technologie Superieure (Canada), Canada, 2010, p. 93. 5 Kanury, S., and Song, Y. D. "Flight management of multiple aerial vehicles using genetic algorithms," 38th Southeastern Symposium on System Theory, March 5, 2006 - March 7, 2006. Vol. 2006, Institute of Electrical and Electronics Engineers Inc., Cookeville, TN, United states, 2006, pp. 33-37. 6 ICAO. "Aviation's contribution to climate change," Environmental report. International Civil Aviation Organization, Montreal, Canada, 2010, p. 260.
10 American Institute of Aeronautics and Astronautics