Method for selecting aircraft cruise phase route
A deep learning-based approach predicts fuel burn and emissions by classifying flights based on wind and weather suitability, addressing the challenge of optimizing flight routes to reduce fuel consumption and emissions by selecting wind-optimal paths.
Patent Information
- Application Number
- JP2024199362
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-22
- Filing Date
- 2024-11-15
- Publication Date
- 2025-07-11
AI Technical Summary
Airlines face challenges in optimizing flight routes to minimize carbon emissions and fuel burn due to the lack of quantified impact of wind suitability on emissions, making it difficult to choose between tailwind and adverse wind routes, especially for transoceanic flights.
A deep learning, data-driven methodology that predicts fuel burn and emissions by classifying flights based on wind and weather suitability using machine learning techniques, employing an encoder-decoder LSTM architecture to analyze multivariate flight data and atmospheric conditions, providing a probabilistic tool for selecting wind-optimal routes.
The methodology quantifies fuel burn and emission reductions by identifying weather-favorable routes, enabling airlines to optimize flight paths and achieve lower fuel consumption and carbon dioxide emissions.
Smart Images

Figure 2025106070000001_ABST
Abstract
Description
Technical Field
[0001] Cross - Reference to Related Applications
[0001] This application claims priority to U.S. Provisional Application No. 63 / 600,986, filed on November 20, 2023, entitled "METHODS FOR DETERMINING FUEL BURN SAVINGS IN WIND - PREFERRED ROUTES", the entire contents of which are hereby incorporated by reference for all purposes.
[0002]
[0002] The present disclosure broadly relates to civil aviation, and in particular, to predicting the fuel consumption and carbon dioxide emissions of aircraft based on the wind - preferredness of candidate routes.
Background Art
[0003]
[0003] As efforts to combat global warming and climate change become a priority for both the public and private sectors, it has become increasingly important to monitor and record carbon dioxide emissions into the atmosphere. A major cause of carbon dioxide emissions in the atmosphere is air transportation. Therefore, both governments and the aviation industry are increasingly focusing on monitoring the carbon footprint of air transportation, setting emissions targets, and implementing mitigation measures.
Summary of the Invention
[0004]
[0004] A method for selecting a cruise phase route for an aircraft is presented. The method includes receiving a sequence of multivariate flight data from at least one previous flight and receiving a set of candidate cruise phase routes. A future atmospheric state including at least future headwinds is received for each of the set of candidate cruise phase routes. For each candidate cruise phase route, a sequence of fuel burn is predicted based on the sequence of multivariate flight data and the future atmospheric data. To obtain the predicted fuel burn, the fuel burn over the candidate cruise phase route is summed. A suitable candidate cruise phase route having the predicted lowest fuel burn is indicated.
[0005]
[0005] This summary is provided to introduce a simplified form of some concepts that will be further described in the detailed description of the invention. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. The claimed subject matter is not limited to embodiments that solve any disadvantages described in any part of this disclosure.
Brief Description of the Drawings
[0006]
Figure 1
[0006] Exemplary flight takeoff, cruise, and descent phases are schematically shown.
Figure 2
[0007] A map of an exemplary cruise route between New York and London is shown.
Figure 3
[0008] An exemplary plot of delta headwind versus delta fuel flow is shown.
Figure 4
[0009] An exemplary machine learning pipeline is schematically shown.
Figure 5
[0010] An exemplary machine aspect that can be trained to predict fuel burn and emissions for an aircraft flight is shown.
Figure 6
[0011] An exemplary mechanical aspect trained to predict fuel burn and emissions for aircraft flight is shown.
Figure 7
[0012] A flowchart of an exemplary method for training a machine to predict the fuel burn of an aircraft over a cruise phase route of a flight is shown.
Figure 8
[0013] A flowchart of an exemplary method for selecting a cruise phase route for an aircraft is shown.
Figure 9
[0014] An aspect of an exemplary computing system is schematically shown. **DETAILED DESCRIPTION OF THE INVENTION**
[0007]
[0015] The operating cost of an aircraft is directly related to the amount of fuel consumed by that aircraft. In the aviation industry, that amount is referred to as "fuel burn." Fuel burn is also directly related to the emissions of carbon dioxide, nitrogen oxides, ozone, and the noise from the aircraft. All of these have an adverse impact on the climate and health. Thus, economic and environmental factors, in parallel, provide a strong motivation to limit fuel burn in commercial aviation.
[0008]
[0016] To systematically meet that objective, the ability to predict and reduce fuel burn for each flight is necessary. The main mitigation strategies are to reduce carbon emissions by utilizing various operating efficiency solutions such as choosing a tailwind route rather than an adverse wind route. The qualitative value of a tailwind route versus an adverse wind route is well known, but since the impact on carbon emissions has not been quantified, it is difficult for airlines to calculate the carbon emissions expected to be generated by a flight when choosing a tailwind route rather than an adverse wind route. For this reason, airlines have difficulty optimizing flight routes, especially for transoceanic flights, based on minimizing carbon emissions or fuel burn according to the degree of tailwind suitability.
[0009]
[0017] Each flight profile can be divided into a climb phase, a cruise phase, and a descent phase, as represented at 100 in FIG. 1. The climb phase extends from takeoff from the departure airport to the top of the climb where the cruise phase begins. The cruise phase is typically characterized by long horizontal flight at an altitude above the crossover altitude (where the indicated airspeed becomes the Mach number). The descent phase extends from the end of the cruise phase (the top of the descent) to touchdown and landing.
[0010]
[0018] The operational efficiency of airspace functions using a set of established parameters such that it is advantageous to select one type of flight path over another. In this specification, the cruise phase of flight is analyzed where the aircraft levels off and then flies at generally the same altitude (in the absence of convective weather). Generally, the aircraft attempts to reach the highest achievable altitude at which the minimum amount of fuel is burned, based on temperature, pressure, and other factors.
[0011]
[0019] The greatest emissions are generated during transoceanic flights. A flight route can be segmented along a series of airways. In transoceanic flights, these airways are more restricted than domestic flights. FIG. 2 shows an exemplary route map 200 between New York 202 and London 204. There are many potential transitions between airways between the start and end of an airway segment. Based on wind suitability, a route that reduces emissions or fuel burn may be selected. In many situations, this will involve selecting a route from within a set of airways at takeoff. However, just as the flight plan can be changed due to changes in the atmosphere's state, it is also possible to select a transition between airways during flight. When there are many options, the disclosed methodology aims to determine which route has the highest degree of wind suitability and / or weather suitability, and thus the lowest emissions and fuel burn, based on the constraints and circumstances of the flight. Such a determination may be made during flight, enabling an advantageous dynamic selection of airway segments.
[0012]
[0020] It is well known that fuel efficiency improves when the tailwind is greater than the headwind. In this specification, a methodology quantifies the impact of a wind - favorable route on emissions, calculates the emissions generated by wind - favorable routes versus non - wind - favorable routes, and compares them. First, a classification of "wind - favorable routes" can be defined. Using the true bearing of the aircraft, the wind speed, and the wind direction, the tailwind can be calculated and averaged over time (through the cruise phase of the flight). In addition, the average outside air temperature during cruise is calculated. Using Continuous Parameter Logging (CPL) data, a more practical approach might simply determine that the tailwind is equal to (ground speed - airspeed).
[0013]
[0021] Using a combination of parameters, a spectrum of tailwinds can be created. Flights with strong tailwinds and low temperatures can be labeled as weather - favorable routes. In some examples, the cruise altitude can be used in addition to or instead of temperature. This is because as altitude increases, temperature tends to decrease. The cruise altitude represents temperature but is less affected by temporal climate / weather changes (e.g., temperatures can be lower in winter flights).
[0014]
[0022] In a preliminary example, an average tailwind classification was given and two subsets of flights were compared based on their average tailwind, flight level (e.g., the top of the climb), and weight. The aircraft symbol and route direction were ignored, but it is known that east - west flights (i.e., from London to New York) have zero or negative tailwinds, and west - east flights (i.e., from New York to London) have positive average tailwinds.
[0015]
[0023] To evaluate the impact of wind on the emissions / fuel burn, discrete classifications or buckets were created for each parameter. For example, the cruise level parameter was set at 38k feet, 39k feet, 40k feet, etc. The weight parameter was set at 400k pounds, 410k pounds, 420k pounds, etc. Using these classifications, two sets of data were created. In that case, both sets had the same cruise level and weight but different tailwinds. The fuel flows for the two sets were compared to obtain data representing the impact of wind on emissions. Further, by padding the shorter flights, the difference in lateral cruise distance was taken into account.
[0016]
[0024] Table 1 shows some results of this analysis. By clustering flight data in this way, the degree of wind suitability for each flight can be determined. This is because the "wind-suitable route" is not a binary choice but rather a spectrum of flight profiles. In this specification, the discretization of the tailwind is applied in 10-knot steps, from -50, -40, -30, -20 to +80. This allows for highly accurate results regarding how much fuel is burned or how much emissions are generated based on the tailwind and temperature, and a wind-suitable route can be defined. TIFF2025106070000002.tif255170TIFF2025106070000003.tif255170TIFF2025106070000004.tif255170TIFF2025106070000005.tif255170TIFF2025106070000006.tif112170
[0017]
[0025] From this data classification, as shown at 300 in Figure 3, the change in the tailwind can be plotted against the fuel flow savings. Of note is that there is an approximately linear correlation between the delta tailwind and the delta fuel flow (%), for example, the greater the difference in the tailwind, the greater the difference in the fuel burn (%) also becomes. That difference does not seem to be affected by the route, whether analyzing the same route or the reverse route. Overall, there is a rough correlation that a 10 knot tailwind reduces the fuel burn by up to 2%, and thus saves emissions.
[0018]
[0026] The impact of the wind-optimal route on carbon emissions has not been quantified thus far. Overall, this methodology could be of great value to the global aviation industry. With this methodology, the total carbon emissions generated by flights worldwide can be calculated under various conditions, namely wind-optimal routes versus non-wind-optimal routes, in order to monitor and achieve the goal of net zero carbon emissions by 2050.
[0019]
[0027] To address these issues and provide further advantages, the present disclosure presents a deep learning, data-driven, probabilistic tool for predicting aircraft fuel burn per flight. The fuel burn prediction is formulated as a sequence learning problem. In that case, it is assumed that the fuel burn can be described as a function of the time-resolved flight data recorder (FDR) and the air data. Given such data and a set of previous flights of varying lengths, the trained model predicts the fuel burn at each time step along the planned flight. In some embodiments, the model employs an encoder-decoder (E-D) long short-term memory (LSTM) architecture.
[0020]
[0028] Given a set of previous flights with associated FDR and atmospheric data, the goal of training is to train a model to predict fuel burn for another pre-departure flight. To address this problem, a flight is defined as a sequence of sensor readings at a specific frequency. A "sequence" is a set of values in a specified order, and herein, the values are ordered according to rising or falling time. In some embodiments, the time steps between adjacent values within a sequence are constant. This type of sequence may also be referred to as a "time series". If the flight duration is 8 hours and the frequency of sensor readings is 1 Hz, for all sensors, the flight is defined by 28,800 time steps. One reading per sensor is recorded at each time step. Due to the variations observed in flight duration, even between a fixed departure and arrival airport, past FDR data has lengths that vary for each flight and flight phase. Thus, the models disclosed herein must address a multivariate, multi-step sequence prediction problem for the ascent, cruise, and descent phases of a flight. For this purpose, sequences of flight phases of different lengths are adjusted to sequences of flight phases of a constant length for each route. This can be achieved by padding shorter sequences.
[0021]
[0029] Once the model is trained and validated against other competing models, it can be used to predict fuel burn for the cruise phase of a flight based on wind suitability and / or weather suitability.
[0022]
[0030] The disclosed methodology provides quantitative values for reduction of fuel burn and CO2 emissions when a flight utilizes a wind-suitable route versus a non-wind-suitable route. The disclosed methodology also uses machine learning techniques to formulate reductions in carbon emissions and fuel burn for each flight based on various methodological parameters that define the wind suitability of a route. These methodological parameters include headwind / tailwind and temperature.
[0023]
[0031] To supply these capabilities, the disclosed methodology uses CPL data to classify flights based on origin-destination pairs, aircraft types, and operators (airlines). Then, based on the labels of the flights in the CPL data, the flights in each classification are divided into three phases (climb, cruise, and descent). Using only the cruise phase, the flights are further sub-classified based on the tailwind values calculated using various parameters of the CPL data.
[0024]
[0032] To identify what constitutes a weather-favorable route, the disclosed methodology uses the true bearing of the aircraft as well as the wind speed and wind direction to calculate the tailwind over time throughout the entire cruise phase of the flight and then averages them. In addition, the disclosed methodology calculates the average outside air temperature during cruise. Using these combinations, the disclosed method creates a spectrum, i.e., a discrete classification of tailwinds, and considers those flights with strong tailwinds and low temperatures as weather-favorable routes.
[0025]
[0033] Once weather-favorable and non-weather-favorable routes are identified, the disclosed methodology performs a comparative analysis. However, to make a fair comparison, the disclosed methodology uses a set of weather-favorable and non-weather-favorable routes that match in their cruise altitude and weight at the top of climb (ToC). Further, to match the lateral distance between any two sets, the disclosed methodology adds additional fuel burn to the flight set presenting the shorter average lateral distance.
[0026]
[0034] Using the classified CPL dataset, the disclosed methodology also executes a series of machine learning (linear, non-linear, ensemble) and deep learning algorithms (recurrent neural networks) based on at least two methodological parameters (e.g., wind speed / direction and temperature), and constructs several regression models. These regression models compete with each other for higher accuracy. The top-ranking algorithm is used to formulate the reduction of carbon emissions and fuel consumption for each flight. A further advantage is that the prediction can be made before fuel refueling, thus reducing the initial weight of the aircraft and further reducing fuel consumption and emissions.
[0027]
[0035] FIG. 4 shows an exemplary machine learning pipeline 400 that can be used to train a model for inferring fuel consumption and emissions for the cruise phase of a flight based on wind suitability. The machine learning pipeline 400 uses a data-driven approach, e.g., using past data for actual flights. Thus, the quantified value of the calculated fuel consumption is based on ground truth. The mapping of fuel consumption and emissions trains various regression models and infers the fuel consumption / emissions as sorted by wind suitability and / or weather suitability. Using the classified CPL dataset, the machine learning pipeline 400 executes a series of machine learning (linear, non-linear, ensemble) based on configurable parameters (e.g., tailwind vector and temperature), and constructs several regression models. These regression models compete with each other for higher accuracy. The top-ranking algorithm is used to formulate the reduction of carbon emissions and fuel consumption for each cruise phase. Such a machine learning pipeline can be selected as being specific to aviation. The resulting model is specific to fuel consumption / emissions and can be specific to the cruise phase of each flight. Since there is a time series in the data, the machine learning pipeline 400 can be specific to the per-sequence learning problem. Thus, a long short-term memory model can be used.
[0028]
[0036] Past CPL data 402 may include multivariate data for one or more previous flights. A set of parameters is extracted from the past CPL data in a time series format of time, latitude, longitude, altitude, aircraft weight, flight phase, fuel flow - left engine, fuel flow - right engine. The state of the atmosphere may also be provided as historical data such as wind speed, wind direction, temperature, pressure, humidity, etc.
[0029]
[0037] The machine learning pipeline 400 takes in historical data such as CPL data and supplies it to raw data processing 404. Raw data processing 404 includes at least dimensionality reduction and feature engineering to select significant features of the data. Raw data processing 404 helps to develop a more granular and more adaptable dataset and can lead to more accurate results. Raw data processing 404 may further include data normalization, such as by normalizing the cruise phase by distance. This may include padding the cruise phase in some cases and paring the cruise phase in other cases to generate clusters of data with the same or similar distances.
[0030]
[0038] Raw data processing may include iteratively reducing the number of parameters supplied to model training. Processing of the raw data may include performing parameter correlation. The historical data and CPL data may include hundreds of parameters recorded at a frequency of 1 Hz, and not all of them can predict wind suitability over the cruise phase.
[0031]
[0039] In some embodiments, the processed raw data is selected as training data 408 and fed directly into model training 410. However, to improve accuracy and reliability, the processed raw data may first be fed into wind search 406. Wind search 406 is performed on the processed data. Wind search is a heuristic algorithm first used to identify tailwinds from multivariate data. If the cruise phases have not already been extracted from the flight data, they are extracted in wind search. In some embodiments, tailwinds may be considered continuously. Otherwise, wind search may group flights into discretized buckets of the cruise phase based on a tailwind range (e.g., wind suitability). Tailwinds may be based on wind speed, wind direction, air temperature, air pressure, ground speed, airspeed, etc. Each discretized bucket may include a cruise phase with a range of tailwinds (e.g., 0 - 10 mph, 10 - 20 mph, etc.). In some embodiments, the cruise phases may be sorted by air temperature and / or altitude (e.g., weather suitability). Wind search then examines how these cruise phases map to further emissions or fuel burn. The search step can take into account the takeoff weight, the weight at the top of the climb (cruise start weight), the type of aircraft, the origin-destination pair, the airline, etc.
[0032]
[0040] Some or all of the past wind exploration data is treated as training data 408 and supplied to model training 410. Two or more prediction models, including various types of prediction models, can be used for model training 410. Such prediction models can include linear regression, lasso, elastic net for non-linear classification regression, trees, support vectors, regression views, k-nearest neighbors, ensemble models, extra gradient boosting, random forests, extra tree regression, as well as ordinary artificial neural networks. Several architectures can be used competitively to determine the single best model. The input to each model can be the same or similar, but the output, hidden layers, the number of neurons in each layer, etc. can vary by model. For the purpose of selecting the model with the best performance as the prediction model, multiple models can be executed in parallel and distributedly.
[0033]
[0041] Sequence prediction often involves predicting the next value within a sequence. This can be formulated as a sequence prediction problem with one input time step for one output time step, or a sequence of multiple input time steps for one output time step. However, a more difficult problem is to take a sequence as input and return a predicted different sequence as output. This is the sequence-to-sequence (seq2seq) prediction problem, which is more difficult when the lengths of the input and output sequences can vary. As an effective approach to the seq2seq prediction problem, there is the encoder-decoder long short-term memory (E-D LSTM) architecture. This system includes two cooperative models. That is, an encoder that reads the input sequence and encodes it into a fixed-length vector, and a decoder that decodes the fixed-length vector and outputs the predicted sequence.
[0034]
[0042] Consider a sequence X = {x (1) , x (2) , …, x (L)} of length L. In that case, each point x (i) ∈ R m is at time sequence t iIt is an m-dimensional vector of the read values of m variables in. This is converted into a scenario where the flight includes L time steps. In that case, at each time step t i m sensor readings are recorded. In one embodiment, an E-D LSTM model is trained to reconstruct the recorded cases of fuel combustion. The LSTM encoder learns a fixed-length vector representation of the input sequence, and the LSTM decoder uses this representation to reconstruct the output sequence using the current hidden state and the values predicted at the previous time step.
[0035]
[0043] A given X , h E (i) is the hidden state of the encoder at time t for each i ∈ {1, 2,..., L}. In that case, h i is. E (i) ∈ R c where c is the number of LSTM units in the hidden layer of the encoder. The encoder and decoder are jointly trained to reconstruct the time series in reverse order. That is, the target time series is {x (L) , x (L-1) , …, x (1)}. The final state h E (i) of the encoder is used as the initial state for the decoder. The linear layer on top of the LSTM decoder layer is used to predict the target. During training, the decoder uses x D (i-1) as input to obtain the state h (i) , and then predicts x’ (i-1) corresponding to the target x (i-1) . During inference, the predicted value x’ (i) obtains h D (i-1) and is input to the decoder to predict x’ (i-1) . The model is trained to minimize the objective. TIFF2025106070000007.tif21170 Here, s N is a set of training sequences.
[0036]
[0044] In this spirit, FIG. 5 shows an exemplary trainable machine 500. The machine 500 is trainable to predict fuel consumption and emissions for an aircraft's flight during a cruise segment of the flight, based at least on the wind suitability of a candidate flight route. The trainable machine particularly includes an input engine 502, a training engine 504, an output engine 506, and a trainable model 508.
[0037]
[0045] The input engine 502 is configured to receive training data for the cruise phase for each of a preselected series of previous flights. The training data includes a corresponding sequence of multivariate flight data recorded during the previous flight for each cruise phase of each of the series of previous flights. In some embodiments, each corresponding sequence includes FDR data selected by principal component analysis. In some embodiments, each corresponding sequence includes atmospheric data.
[0038]
[0046] The trainable machine may further include an adjustment engine 510. When included, the adjustment engine may be configured to adjust each corresponding sequence to provide a common cruise length for the cruise phase. In some embodiments and scenarios, adjusting each corresponding sequence includes padding the corresponding sequence in the cruise phase. A given phase may be padded to adjust the length of the phase. In some embodiments and scenarios, each corresponding sequence may include trimming a longer corresponding sequence.
[0039]
[0047] The training engine 504 is configured to process each corresponding sequence of multivariate flight data according to the trainable model 508. As described herein, such processing progressively develops the hidden state of the trained model. When fully developed, the hidden state minimizes the overall residue for replicating the fuel burn in each corresponding sequence. As described above, replicating the fuel burn includes transforming the multivariate flight data from previous time steps in each corresponding sequence based on the hidden state.
[0040]
[0048] In some embodiments, the trainable model 508 includes a trainable encoder 512 disposed logically upstream of the trainable decoder 514. The encoder is trainable to output a vector characterizing an input sequence of multivariate flight data, and the decoder is trainable to replicate the fuel burn of the input sequence based on the vector, thereby generating an output sequence. The number of parameters included in the input sequence can vary by example. In some embodiments, the parameters include, without limitation, flight date, flight time, flight duration, latitude, longitude, aircraft weight, wind speed, wind direction, air temperature, air pressure, altitude, ground speed, airspeed, etc. These parameters can be used, inter alia, to calculate the headwind. In other embodiments, other parameters, additional parameters, or fewer parameters can be used. Generally speaking, a model trained for a particular track and a particular aircraft can make more accurate predictions based on fewer input parameters than a more generally applicable model.
[0041]
[0049] In some embodiments, the encoder and decoder are configured according to a long short-term memory (LSTM) architecture. In some embodiments, the trainable model includes an encoder-decoder LSTM (E-D LSTM) model, a convolutional neural network (CNN) LSTM encoder-decoder (CNN LSTM E-D) model, or a convolutional LSTM encoder-decoder (ConvLSTM E-D) model. In some embodiments, the trainable model further includes a fully connected layer 516 configured to interpret the fuel burn at each time step of the output sequence, before the final output layer. More specifically, the fully connected layer can be the second-to-last layer of the trainable model. The fully connected layer can be configured to feed the output layer (described below). The output layer predicts a single step in the output sequence (e.g., does not predict all L steps at once). By way of example, consider a flight that includes 10-minute time steps. At the output layer, the fuel flow rate can be predicted as the series {120, 1130, 2142, …}. In that case, the first number 120 corresponds to the amount of fuel burned in the first time step of the first minute, the next number corresponds to the amount of fuel burned in the first two time steps (e.g., the first 11 minutes), and so on. The trainable model 508 can include one or more hyperparameters 518 that can manage the training of the machine learning model. The hyperparameters are set manually at the start of training and can be adjusted manually or automatically during the model training process.
[0042]
[0050] When included, the E-D LSTM model may include an encoder that reads the input sequence and outputs a vector that captures features from the input sequence. The number of time steps L can vary according to the duration of the cruise phase. This duration defines a fixed length as the input. The internal representation of the input sequence is repeated multiple times in a repeating layer and presented to the LSTM decoder. Such an E-D LSTM model may include a fully connected layer for interpreting each time step in the output sequence, before the final output layer. The output layer can predict a single step in the output sequence, rather than all L steps at once. For this purpose, the interpretation layer and the output layer can be wrapped within a TimeDistributed wrapper. The TimeDistributed wrapper enables the wrapped layer to be used for each time step from the decoder. Such a TimeDistributed wrapper can generate a fully connected (e.g., dense) layer that is applied separately to each time step. This allows the LSTM decoder to capture the context necessary for each step in the output sequence, and the wrapped dense layer to interpret each time step separately, while reusing the same weights for interpretation.
[0043]
[0051] When included, the CNN LSTM E-D model may include first and second CNN layers that function as an encoder. The first CNN layer reads the entire input sequence and projects the result onto a feature map. The second CNN layer may perform the same operation on the feature map generated by the first CNN layer and attempt to amplify prominent features. A max pooling layer can simplify the feature map by retaining one quarter of the values with the maximum signal. The feature map extracted downstream of the max pooling layer is flattened into one long vector in a flattening layer, and that vector can be used as input to the decoding process after being repeated in a repeating layer. The decoder is another LSTM hidden layer, followed by a TimeDistributed wrapper that feeds into the output layer.
[0044]
[0052] When included, the ConvLSTM E-D model may use a CNN layer to read the input into the LSTM units. ConvLSTM is a type of recurrent neural network for spatio-temporal prediction, providing a convolutional structure for both the transition from input to state and the transition from state to state. ConvLSTM determines the future state of a particular cell within the grid from the input and past states of its local neighboring cells. In some embodiments, the CNN layer is logically upstream of the flattening layer, the repeating layer, the LSTM decoder, and the time-distributed layer.
[0045]
[0053] As the output engine 506 is developed by training, it is configured to expose at least a portion of the hidden state of the trainable model 508. The manner in which a portion of the hidden state is "exposed" may vary depending on the implementation. In particular, the present disclosure contemplates the following scenarios. That is, one computer system receives, processes training data for a very large number of previous flights, and is then tasked with making predictions based on the internally developed hidden state. In other words, the trainable machine is a trained machine after the development of the hidden state. In this scenario, exposure means only the following. That is, a portion of the hidden state required for prediction becomes available to the prediction engine (described later). For example, the data structure holding the weights and coefficients characterizing the hidden state can be examined in detail in a way that allows access by the prediction engine. The present disclosure also contemplates the following scenario. That is, the computer system that receives and processes the training data is different from one or more computers tasked with making predictions. In other words, the trainable machine can be different from the trained machine. In that scenario, the exposure of a portion of the hidden state means the following. That is, the weights and coefficients required for prediction are transmitted from the computer system that processed the training data to one or more computer systems tasked with making predictions. After appropriate training, the trainable machine 500 or another trained machine can be used to predict the fuel consumption and emissions for an aircraft flight.
[0046]
[0054] Returning to FIG. 4, model training 410 yields a training evaluation result 412. Model training 410 has the objective of approximating a function that maps input parameters (e.g., step profile, altitude, temperature) to fuel burn, and thus is a regression problem. Accordingly, function approximation is used to predict the fuel burn for a particular flight under specific flight parameters and conditions. The training evaluation result 412 can evaluate such function approximation and quantify the quality and performance of the trained model using appropriate metrics such as root mean square error (RMSE), mean absolute error (MAE), and mean absolute percentage error (MAPE).
[0047]
[0055] Using the training evaluation result 412, a hyperparameter adjustment step 414 is performed. The adjusted hyperparameters are iteratively fed back into the model training 410. Each distinct model type can expose its own set(s) of hyperparameters. In some examples, a single model can be trained and evaluated using multiple sets of hyperparameters. For each model, the hyperparameters can be adjusted depending on whether it is linear (e.g., linear regression, lasso regression, elastic net regression), non-linear (e.g., classification tree, regression tree, support vector regression, k-nearest neighbor), ensemble (e.g., adaptive boosting, extragradient boosting, random forest regression, or extra tree regression), or neural network-based (e.g., a variant of LSTM). This is done using various search techniques (e.g., grid search, optuna, bohb, random). These techniques reach the highest performance value for each model. The models are then ranked.
[0048]
[0056] Some of the wind data explored is treated as test data. For example, if one year of flight data is given, 11 months may be used as training data 408 for building the model, and 1 month can be treated as "new" test data even though the results are known. In some embodiments, the contents of the training data 408 and the test data 416 are rotated over various training and prediction iterations until, for example, all available data is evaluated as test data. The test data 416 is supplied to one or more trained prediction models 418 that are informed by the model training 410.
[0049]
[0057] FIG. 6 shows aspects of an exemplary trained machine 600 trained to predict fuel burn and emissions for an aircraft flight. The trained machine 600 particularly includes an input engine 602, a prediction engine 620, a total engine 622, an output engine 606, and a trained model 608.
[0050]
[0058] The input engine 602 is configured to receive at least one sequence of multivariate flight data 630 recorded during a previous flight. The input engine 602 is further configured to receive flight parameters 632. The flight parameters can include the type of aircraft, the airline, the weight of the aircraft, any constraints regarding the flight, and the like. The input engine 602 is further configured to receive one or more candidate routes 634. Any number of unique candidate routes can be input, but the candidate routes can share one or more cruise segments. The candidate routes can include the cruise routes available for the selection of the flight. The input engine 602 is further configured to receive the state of the atmosphere 636. The state of the atmosphere can include the state of the wind, temperature, humidity, and other weather conditions that can affect the flight of the aircraft during the cruise phase. The state of the atmosphere is associated with one or more candidate routes 634 and can include the current state of the atmosphere as well as the state of the atmosphere predicted over the course of a future flight.
[0051]
[0059] The prediction engine 620 is configured to predict a sequence of fuel burn amounts over a candidate route based on at least one sequence of multivariate flight data recorded during a previous flight and based on the hidden state of the trained machine 600.
[0052]
[0060] In some embodiments, the trained model 608 includes a trained encoder 612 disposed logically upstream of the trained decoder 614. The encoder is trained to output a vector characterizing an input sequence of multivariate flight data, and the decoder is trained to replicate the fuel burn amount of the input sequence based on the vector, thereby generating an output sequence. In some embodiments, the encoder and decoder are configured according to a long short-term memory (LSTM) architecture. In some embodiments, the trained model includes an encoder-decoder LSTM (E-D LSTM) model, a convolutional neural network (CNN) LSTM encoder-decoder (CNN LSTM E-D) model, or a convolutional LSTM encoder-decoder (ConvLSTM E-D) model. In some embodiments, the trained model further includes a fully connected layer 616 configured to interpret the fuel burn amount at each time step of the output sequence, prior to the final output layer. In some embodiments, the fully connected layer can be the second-to-last layer of the trained model. The trained model 608 can be operated with a set of hyperparameters 618 that can evolve as the trained model 608 is developed.
[0053]
[0061] Returning to FIG. 4, the results of the prediction model are evaluated via a heuristic 420 for a top-ranking algorithm. The heuristic 420 is used to determine which model is performing best, and can then be used to select which models proceed to the next evaluation round. The number of models that proceed can depend on the relative performance of the models, such as if the performance has significantly degraded.
[0054]
[0062] Heuristic 420 is supplied to verification evaluation result 422. Verification evaluation result 422 is used to provide iterative information to hyperparameter tuning 414. Verification evaluation result 422 may include various performance metrics such as accuracy, standard deviation, reliability, RMSE, absolute error, percent error, etc. Hyperparameter tuning can be carried out while repeatedly training, retraining, and testing the successful models.
[0055]
[0063] In this way, multiple models can be evaluated in parallel. The most performant model is repeatedly selected to provide information to the prediction model. For example, several neural networks can be developed, run in parallel, and then ranked. The top k are advanced to determine the single most performant model that can ultimately be used for inference. The multiple models can vary with respect to the number of layers, the number of neurons in each layer, the activation function used, the optimization algorithm, hyperparameter values, etc.
[0056]
[0064] Returning to FIG. 6, the trained machine 600 includes a total engine 622. Total engine 622 is configured to sum the fuel burn over the candidate cruise phase to obtain a fuel replenishment estimate, as described above. Output engine 606 is configured to output the estimated fuel burn for each candidate route 624. In some embodiments, output engine 606 is further configured to output an emissions estimate based on the fuel replenishment estimate. For example, the output engine may multiply the fuel burn estimate (in mass units) by 3.16 to output an estimate of carbon dioxide emissions.
[0057]
[0065] Fuel flow varies over time steps and the weight of the aircraft changes over time. Thus, the predictive engine 620 can be applied to identify the fuel burn for each time step over each candidate route. The total engine generates the total of the fuel burn for each candidate route 624. The fuel burn for each candidate route 624 can be used to determine the amount of fuel to load before departure, notify the pilot and air traffic control of which candidate route results in the minimum fuel burn, optimize the control of a fully autonomous or semi-autonomous aircraft, etc. The fuel burn for each candidate route 624 can be output as the total fuel burn, as the fuel flow of the left engine, and as the fuel flow of the right engine, etc. When the state of the atmosphere 636 is updated (as real-time or predicted conditions), different candidate routes and route segments can be predicted to have higher tailwinds and thus reduced fuel burn.
[0058]
[0066] FIG. 7 shows a flowchart of an exemplary method 700 for training a machine to predict the fuel burn of an aircraft over a cruise phase route of a flight. Method 700 can be applied to a trainable machine such as trainable machine 500.
[0059]
[0067] At 710, method 700 includes receiving corresponding sequences of multivariate data for a plurality of previously occurring flights. Each sequence of multivariate flight data can be recorded during a previous flight at a certain frequency (e.g., 1 Hz). In some embodiments, the multivariate flight data can include FDR data (e.g., CPL data) selected by principal component analysis. Parameters included are time, latitude, longitude, altitude, aircraft weight, flight phase, fuel flow (left engine), fuel flow (right engine), etc. The state of the atmosphere can also be provided as historical data such as wind speed, wind direction, temperature, pressure, humidity, etc.
[0060]
[0068] At 720, method 700 includes analyzing the corresponding sequences for the cruise phase of each of a plurality of previous flights. The multivariate flight data can be separated into flight phases such as the ascent phase, the cruise phase, and the descent phase, and the cruise phase is extracted. Each cruise phase can be defined as extending from the top of the ascent to the top of the descent in a previous flight.
[0061]
[0069] Optionally, at 730, method 700 includes adjusting each corresponding sequence to provide a common cruise length for each cruise phase. For example, shorter cruise phases can be padded in length and / or longer cruise phases can be trimmed in length, because flights having a common origin airport and destination airport can extend over different lengths. Parameters for the padded cruise phases can be extrapolated from the multivariate flight data.
[0062]
[0070] At 740, method 700 includes discretizing the multivariate data based at least on the tailwind and fuel burn for each cruise phase. Thus, multivariate data for flights having similar characteristics can be grouped into a plurality of buckets. The multivariate flight data can also be discretized based on ranges of other parameters such as altitude, temperature, takeoff weight, etc.
[0063]
[0071] At 750, method 700 includes processing each corresponding sequence to develop a hidden state. This hidden state minimizes the overall residual for replicating the fuel burn in each corresponding sequence. Replicating the fuel burn includes transforming the multivariate flight data from previous time steps in each corresponding sequence based on the hidden state.
[0064]
[0072] At 760, method 700 includes disclosing at least a portion of the hidden state. In particular, the present disclosure contemplates the following scenario. That is, one computer system is tasked with receiving, processing training data for a very large number of previous flights, and then making predictions based on an internally developed hidden state. For example, disclosure may only mean the following. That is, a portion of the hidden state required for prediction becomes available to the prediction engine. For example, a data structure holding weights and coefficients characterizing the hidden state can be examined in detail in a way that allows access by the prediction engine. In a plurality of other embodiments, disclosure only means the following. That is, a portion of the hidden state required for prediction becomes available to the prediction engine. For example, a data structure holding weights and coefficients characterizing the hidden state can be examined in detail in a way that allows access by the prediction engine.
[0065]
[0073] In some embodiments, method 700 may further include training two or more machines to predict the fuel burn of an aircraft over a cruise phase of a flight, evaluating the training results for each of the two or more machines, and adjusting hyperparameters for at least one machine based on the training results. Some models may compete with each other for higher accuracy.
[0066]
[0074] FIG. 8 shows a flowchart of an exemplary method 800 for selecting a cruise phase route for an aircraft. Method 800 may be performed by a trained machine such as trained machine 600. At 810, method 800 includes receiving a sequence of multivariate flight data from at least one previous flight. Each sequence of multivariate flight data may be recorded during a previous flight at a certain frequency (e.g., 1 Hz). In some embodiments, the multivariate flight data may include FDR data (e.g., CPL data) selected by principal component analysis. Parameters included may be time, latitude, longitude, altitude, aircraft weight, flight phase, fuel flow rate (left engine), fuel flow rate (right engine), etc. The state of the atmosphere may also be provided as historical data such as wind speed, wind direction, temperature, pressure, humidity, etc.
[0067]
[0075] The number of input sequences received is not particularly limited. Each input sequence includes flight data recorded during a previous flight that shares at least some characteristics of the planned flight. In some embodiments, at least one sequence of the multivariate flight data shares the departure airport, destination airport, and aircraft model of the planned flight. In some embodiments, at least one sequence of the multivariate flight data includes data similar to the training data described above herein. These data may include, for example, FDR data selected via principal component analysis (PCA). In some embodiments, at least one sequence of the multivariate flight data includes atmospheric (e.g., weather) data.
[0068]
[0076] In some embodiments, the input data may include fewer parameters than the training sequence. For example, an appropriate model may be trained for a particular airline, a particular type of aircraft, and a particular departure airport and destination airport. In that case, the parameters required to predict fuel burn will be fewer than for a more general model.
[0069]
[0077] In some embodiments, each sequence of multivariate flight data may share the departure airport, destination airport, and aircraft specifications of a planned flight. The multivariate flight data can be separated into flight phases such as the ascent phase, cruise phase, and descent phase, and the cruise phase is extracted. Each cruise phase may be defined from the top of the ascent to the top of the descent in a previous flight. In some embodiments, the length of one or more cruise phases included in the multivariate data is adjusted to a common cruise phase length. For example, shorter cruise phases can be padded in length and / or longer cruise phases can be trimmed in length because flights with the same departure and destination airports can extend over different lengths. Parameters for padded cruise phases can be extrapolated from the multivariate flight data. In some embodiments, the multivariate flight data is discretized based on a range of tailwind speeds. The multivariate flight data can also be discretized based on ranges of other parameters such as altitude, temperature, takeoff weight, etc.
[0070]
[0078] At 820, method 800 includes receiving a set of candidate cruise phase routes. Each candidate cruise phase route can be a predetermined route between the top of the ascent from the departure airport and the top of the descent approaching the destination airport. The set of candidate cruise phase routes can include routes available for a planned flight (e.g., not assigned to another aircraft, not within a bad weather route). A cruise phase route can include a plurality of segments. The segments of various cruise phases can intersect. Thus, two or more candidate cruise phase routes include one or more overlapping segments.
[0071]
[0079] At 830, method 800 includes receiving, for each of the set of candidate cruise phase routes, a future atmospheric state including at least a future tailwind. The atmospheric state can include wind speed, wind direction, temperature, pressure, humidity, weather conditions, and other suitable atmospheric states. The future atmospheric state includes the predicted atmospheric state for the current and planned time frames before and after the flight.
[0072]
[0080] Method 800 may further include receiving flight parameters for an aircraft. The received flight parameters may be assigned to a planned flight. The flight parameters may include an airline, an aircraft, a takeoff weight, fuel, air regulations, and the like.
[0073]
[0081] At 840, method 800 includes an iteration for each candidate cruise phase route. At 850, method 800 includes predicting a sequence of fuel burn based at least on a sequence of multivariate flight data and the future state of the atmosphere. Each sequence of fuel burn may further be based on the received flight parameters for the aircraft.
[0074]
[0082] In other words, in a flight (or portion of a flight) characterized by N time steps, a separate fuel burn prediction is made for each of the N time steps. The prediction is based on at least one input sequence and on the hidden state of a trained machine. During training, as described above, the corresponding sequences of multivariate flight data recorded during each of a preselected series of previous flights are processed in a trainable machine to develop the hidden state. The hidden state is a state that minimizes the overall residue for replicating the fuel burn in each corresponding sequence.
[0075]
[0083] Predicting the sequence of fuel burn may further be based on the hidden state of a trained machine. Predicting the sequence of fuel burn may include transforming multivariate flight data from previous time steps in at least one sequence based on the hidden state. For each of a preselected series of previous flights, the corresponding sequence of multivariate flight data recorded during the previous flight may be processed in a trainable machine to develop the hidden state. The hidden state may be configured to minimize the overall residue for replicating the fuel burn in each corresponding sequence.
[0076]
[0084] Predicting a sequence of fuel burn may involve transforming multivariate flight data from previous time steps in at least one sequence based on a hidden state. For this purpose, an encoder may output a vector characterizing the input sequence. A decoder may decode the vector to generate an output sequence.
[0077]
[0085] At 860, method 800 includes summing the fuel burn over a candidate cruise phase route to obtain a predicted fuel burn. In some embodiments, the predicted fuel burn may be separated into the fuel burn of the left engine and the fuel burn of the right engine. At 870, method 800 includes indicating a suitable candidate cruise phase route having the predicted lowest fuel burn. For example, a suitable candidate cruise phase route may be shown to the pilot, shown in a flight plan, transmitted to the Federal Aviation Administration, etc.
[0078]
[0086] In some embodiments, method 800 may be performed before refueling the aircraft for takeoff. Thus, in some embodiments, method 800 further includes refueling the aircraft based at least on the predicted lowest fuel burn. For example, the aircraft may be refueled based on the predicted fuel burn for the climb phase, the predicted fuel burn for the descent phase, and the predicted lowest fuel burn for the cruise phase. The aircraft may be refueled based on a fuel safety margin.
[0079]
[0087] In some embodiments, the aircraft is at least partially autonomous. In such embodiments, method 800 may further include controlling the aircraft to follow a suitable candidate cruise phase route.
[0080]
[0088] In some embodiments, method 800 may be performed during flight of an aircraft. Thus, the method may include receiving candidate cruise phase routes from the current position of the aircraft to the top of descent at the destination airport. The current cruise route may be adjusted or changed as a change in the state of the atmosphere, and an updated cruise phase route is determined to indicate a reduced fuel burn. For example, an aircraft may be instructed to follow segments of different cruise phase routes at intersections of cruise phase route segments.
[0081]
[0089] FIG. 9 schematically shows a non-limiting embodiment of a computing system 900 that may implement one or more of the methods and processes described above. Computing system 900 is illustrated in a simplified form. Computing system 900 may take the form of one or more personal computers, server computers, tablet computers, home entertainment computers, network computing devices, gaming devices, mobile computing devices, mobile communication devices (e.g., smartphones), and / or other computing devices.
[0082]
[0090] Computing system 900 includes a logic machine 910 and a storage machine 920. Computing system 900 may optionally include a display subsystem 930, an input subsystem 940, a communication subsystem 950, and / or other components not shown in FIG. 9. Machine learning pipeline 400, trainable machine 500, and trained machine 600 are examples of computing system 900.
[0083]
[0091] The logic machine 910 includes one or more physical devices configured to execute a plurality of instructions. For example, the logic machine may be configured to execute a plurality of instructions. The plurality of instructions may be part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical configurations. Such a plurality of instructions may be implemented to perform operations, implement data types, transform the state of one or more components, achieve technical effects, or otherwise reach a desired result.
[0084]
[0092] The logic machine may include one or more processors configured to execute a plurality of software instructions. Additionally or alternatively, the logic machine may include one or more hardware or firmware logic machines configured to execute a plurality of hardware or firmware instructions. The processor of the logic machine may be single-core or multi-core, and the plurality of instructions executed by the processor may be configured to be processed sequentially, in parallel, and / or distributively. The individual components of the logic machine may optionally be distributed across two or more separate devices. These devices may be located remotely and / or configured for coordinated processing. The plurality of aspects of the logic machine may be virtualized and executed by a remotely accessible network computing device configured as a cloud computing configuration.
[0085]
[0093] The storage machine 920 includes one or more physical devices configured to hold a plurality of instructions executable by a logic machine for implementing the methods and processes described herein. When such methods and processes are implemented, the state of the storage machine 920 may be transformed, for example, to hold various data.
[0086]
[0094] Storage machine 920 may include removable and / or built-in devices. Storage machine 920 may include, among other things, optical memory (e.g., CD, DVD, HD-DVD, Blu-Ray Disc, etc.), semiconductor memory (e.g., RAM, EPROM, EEPROM, etc.), and / or magnetic memory (e.g., hard disk drive, floppy disk, tape drive, MRAM, etc.). Storage machine 920 may include volatile devices, non-volatile devices, dynamic devices, static devices, read / write devices, read-only devices, random access devices, location-addressable devices, file-addressable devices, and / or content-addressable devices.
[0087]
[0095] It will be appreciated that storage machine 920 includes one or more physical devices. However, alternative aspects of the plurality of instructions described herein may be propagated by a communication medium (e.g., electromagnetic signal, optical signal, etc.) that is not held by a physical device for a finite duration.
[0088]
[0096] Aspects of logic machine 910 and storage machine 920 may be integrated within one or more hardware logic components. Such hardware logic components may include, for example, field programmable gate arrays (FPGA), application specific integrated circuits / application specific standard products (PASIC / ASIC), application specific standard products / application specific standard products (PSSP / ASSP), system on a chip (SOC), and complex programmable logic devices (CPLD).
[0089]
[0097] The terms "module", "program", and "engine" can be used to describe multiple aspects of a computing system 900 implemented to perform a specific function. In some cases, a module, program, or engine can be instantiated via a logic machine 910 that executes a plurality of instructions held by a storage machine 920. It will be understood that various modules, programs, and / or engines can be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Similarly, the same module, program, and / or engine can be instantiated by various applications, services, code blocks, objects, routines, APIs, functions, etc. The terms "module", "program", and "engine" can encompass individual ones or groups such as executable files, data files, libraries, drivers, scripts, database records, etc.
[0090]
[0098] As used herein, it will be understood that a "service" is an application program executable over multiple user sessions. A service can be available to one or more system components, programs, and / or other services. In some embodiments, a service can be executed on one or more server computing devices.
[0091]
[0099] When included, the display subsystem 930 can be used to present a visual representation of data held by the storage machine 920. This visual representation can take the form of a graphical user interface (GUI). When the methods and processes described herein change the data held by the storage machine and thus transform the state of the storage machine, the state of the display subsystem 930 can be similarly transformed to visually represent the underlying data changes. The display subsystem 930 can include one or more display devices that utilize virtually any type of technology. Such display devices can be combined with the logic machine 910 and the storage machine 920 within a shared housing. Alternatively, such display devices can be peripheral display devices.
[0092]
[0100] When included, the input subsystem 940 can include or interact with one or more user input devices such as a keyboard, mouse, touch screen, or game controller. In some embodiments, the input subsystem can include or interact with selected natural user input (NUI) components. Such components can be integrated or peripheral, and the transmission and / or processing of input actions can be handled on-board or off-board. Exemplary NUI components can include microphones for speech and / or voice recognition, infrared cameras, color cameras, stereo cameras, and / or depth cameras for machine vision and / or gesture recognition, head trackers, eye trackers, accelerometers, and / or gyroscopes for motion detection and / or intent recognition, and electric field sensing components for evaluating brain activity.
[0093]
[0101] If included, the communication subsystem 950 may be configured to communicatively couple the computing system 900 with one or more other computing devices. The communication subsystem 950 may include wired and / or wireless communication devices that are compatible with one or more different communication protocols. By way of non-limiting examples, the communication subsystem may be configured to communicate via a radiotelephone network, or a wired or wireless local or wide area network. In some embodiments, the communication subsystem may enable the computing system 900 to send and / or receive messages to and from other devices via a network such as the Internet.
[0094]
[0102] Further, the present disclosure includes a plurality of configurations according to the following plurality of embodiments.
[0095]
[0103] Example 1. A method for selecting a cruise phase route for an aircraft, comprising receiving a sequence of multivariate flight data from at least one previous flight, receiving a set of candidate cruise phase routes, for each of the set of candidate cruise phase routes, receiving a future atmospheric state including at least a future headwind, for each candidate cruise phase route, predicting a sequence of fuel burn based at least on the sequence of multivariate flight data and the future atmospheric state, and summing the fuel burn over the candidate cruise phase route to obtain a predicted fuel burn, and indicating a preferred candidate cruise phase route having the predicted lowest fuel burn.
[0096]
[0104] Example 2. The method according to Example 1, further comprising refueling the aircraft based at least on the predicted lowest fuel burn.
[0097]
[0105] Example 3. The aircraft is at least partially autonomous, and the method further includes controlling the aircraft to follow the preferred candidate cruise phase route, the method according to embodiment 1 or 2.
[0098]
[0106] Example 4. Each sequence of fuel burn is further based on flight parameters received for the aircraft, the method according to any one of embodiments 1 to 3.
[0099]
[0107] Example 5. The state of the atmosphere further includes temperature, the method according to any one of embodiments 1 to 4.
[0100]
[0108] Example 6. The state of the atmosphere further includes altitude, the method according to any one of embodiments 1 to 5.
[0101]
[0109] Example 7. The multivariate flight data is discretized based on a range of tailwind speeds, the method according to any one of embodiments 1 to 6.
[0102]
[0110] Example 8. The length of one or more cruise phases included in the multivariate flight data is adjusted to a common cruise phase length, the method according to any one of embodiments 1 to 7.
[0103]
[0111] Example 9. Two or more candidate cruise phase routes include one or more overlapping segments, the method according to any one of embodiments 1 to 8.
[0104]
[0112] Example 10. Predicting the sequence of the fuel burn amounts further based on the hidden state of a trained machine, for each of a selected series of previous flights, the corresponding sequence of multivariate flight data recorded during the previous flight is processed in a machine trainable to develop the hidden state, the hidden state minimizing an overall residual for replicating the fuel burn amount in each corresponding sequence, the method according to any one of Examples 1 to 9.
[0105]
[0113] Example 11. A machine trained to predict fuel burn amounts for an aircraft flight, including an input engine, a prediction engine, a total engine, and an output engine, the input engine configured to receive a sequence of multivariate flight data from at least one previous flight, receive a set of candidate cruise phase routes, and for each of the set of candidate cruise phase routes, receive a future atmospheric state including at least future headwinds, the prediction engine configured to predict a sequence of fuel burn amounts for each candidate cruise phase route based on at least the sequence of multivariate flight data and the future atmospheric state, the total engine configured to sum the fuel burn amounts across each candidate cruise phase route to obtain a predicted fuel burn amount, and the output engine configured to indicate a suitable candidate cruise phase route having the predicted lowest fuel burn amount.
[0106]
[0114] Example 12. The input engine is further configured to receive flight parameters for the aircraft, and each sequence of fuel burn amounts is further based on the received flight parameters for the aircraft, the machine according to Example 11.
[0107]
[0115] Example 13. The multivariate flight data is discretized based on a range of headwind speeds, the machine according to Example 11 or 12.
[0108]
[0116] Example 14 The machine according to any one of Examples 11 to 13, further comprising an adjustment engine configured to adjust the length of one or more cruise phases included in the multivariate flight data to a common cruise phase length.
[0109]
[0117] Example 15 The machine according to any one of Examples 11 to 14, further comprising a trained encoder disposed logically upstream of the trained decoder, wherein the encoder is trained to output a vector characterizing an input sequence of multivariate flight data, and the decoder is trained to replicate the fuel burn of the input sequence based on the vector, thereby generating an output sequence.
[0110]
[0118] Example 16 The machine according to any one of Examples 11 to 15, wherein the encoder and the decoder are configured according to a long short-term memory (LSTM) architecture.
[0111]
[0119] Example 17 The machine according to any one of Examples 11 to 16, further comprising a fully connected layer configured to interpret the fuel burn at each time step of the output sequence.
[0112]
[0120] Example 18 A method of training a machine to predict an aircraft's fuel burn over a cruise phase of flight, the method comprising receiving corresponding sequences of multivariate data for a plurality of previously performed flights, analyzing the corresponding sequences for each cruise phase of the plurality of previously performed flights, discretizing the multivariate data based at least on headwind and fuel burn for each cruise phase, processing each corresponding sequence to develop a hidden state, the hidden state minimizing an overall residual for replicating the fuel burn in each corresponding sequence, processing each corresponding sequence, and exposing at least a portion of the hidden state.
[0113]
[0121] Example 19. The method of Example 18, further comprising adjusting each corresponding sequence to provide a common cruise length for each cruise phase.
[0114]
[0122] Example 20. The method of Example 18 or 19, further comprising training two or more machines to predict the aircraft's fuel burn over each cruise phase, evaluating training results for each of the two or more machines, and adjusting hyperparameters for at least one machine based on the training results.
[0115]
[0123] It should be understood that the configurations and / or approaches described herein are in fact exemplary, and these specific embodiments or examples should not be considered in a limiting sense, as numerous variations are possible. The specific routines or methods described herein may represent one or more of any number of processing strategies. In that way, the various operations shown and / or described may be performed in other orders, concurrently in parallel, or omitted, in the order shown and / or described. Similarly, the order of the processes described above may be changed.
[0116]
[0124] The subject matter of the present disclosure includes all novel and non-obvious combinations and sub-combinations of the various processes, systems, and configurations disclosed herein, as well as all other features, functions, operations, and / or characteristics, and any and all equivalents thereof.
Description of Signs
[0117] 100 Plot 200 Route Map 202 New York 204 London 300 Plot 400 Machine Learning Pipeline 402 Past CPL Data 404 Raw Data Processing 406 Wind Exploration 408 Training Data 410 Model Training 412 Training Evaluation Results 414 Hyperparameter Tuning Step 416 Test Data 418 Prediction Model 420 Heuristic 422 Verification Evaluation Results 500 Exemplary Trainable Machine 502 Input Engine 504 Training Engine 506 Output Engine 508 Trainable Model 510 Tuning Engine 512 Trainable Encoder 514 Trainable Decoder 516 Fully Connected Layer 518 Hyperparameters 600 Trained Machine 602 Input Engine 606 Output Engine 608 Trained Model 612 Trained Encoder 614 Trained Decoder 616 Fully Connected Layer 618 Hyperparameters 620 Prediction engine 622 Total engine 624 Fuel combustion amount for each candidate route 630 Multivariate flight data 632 Flight parameters 634 Candidate routes 636 Atmospheric conditions 700 Method 710, 720, 730, 740, 750, 760 800 Method 810, 820, 830, 840, 850, 860, 870 Method steps 900 Computing system 910 Logic machine 920 Storage machine 930 Display subsystem 940 Input subsystem 950 Communication subsystem
Claims
Claim 1 A method (800) for selecting a cruise phase route for an aircraft, comprising: receiving (810) a sequence of multivariate flight data (630) from at least one previous flight; receiving (820) a set of candidate cruise phase routes (634); for each of the set of candidate cruise phase routes (634), receiving (830) a future atmospheric state (636) including at least a future headwind; for each candidate cruise phase route (634) (840), predicting (850) a sequence of fuel burn based at least on the sequence of multivariate flight data (630) and the future atmospheric state (636), and summing (860) the fuel burn over the candidate cruise phase route (634) to obtain a predicted fuel burn (624), and indicating (870) a preferred candidate cruise phase route having a predicted lowest fuel burn (624). Claim 2 The method (800) according to claim 1, further comprising refueling the aircraft based at least on the predicted lowest fuel burn (624). Claim 3 The aircraft is at least partially autonomous, and the method (800) further comprises: controlling (800) the aircraft to follow the preferred candidate cruise phase route. Claim 4 The method (800) according to claim 1, wherein each sequence of fuel burn is further based on received aircraft flight parameters (632). Claim 5 The method (800) according to claim 1, wherein the atmospheric state (636) further includes temperature. Claim 6 The method (800) according to claim 1, wherein the atmospheric state (636) further includes altitude. Claim 7 The method (800) according to claim 1, wherein the multivariate flight data (630) is discretized based on a range of headwind speeds. Claim 8 The method (800) according to claim 1, wherein the length of one or more cruise phases included in the multivariate flight data (630) is adjusted to a common cruise phase length. Claim 9 The method (800) according to claim 1, wherein two or more candidate cruise phase routes (634) include one or more overlapping segments. Claim 10 Predicting the sequence of the fuel burn further based on the hidden state of the trained machine (600), for each of a selected series of previous flights, the corresponding sequence of multivariate flight data (630) recorded during the previous flight is processed in a machine (500) trainable to develop the hidden state, the hidden state minimizing the overall residual for replicating the fuel burn in each corresponding sequence, the method (800) according to claim 1.
11. A machine (600) trained to predict fuel burn for an aircraft flight, including an input engine (602), a prediction engine (620), a total engine (622), and an output engine (606), wherein the input engine (602) is configured to receive (810) a sequence of multivariate flight data (630) from at least one previous flight, receive (820) a set of candidate cruise phase routes (634), and for each of the set of candidate cruise phase routes (634), receive (830) a future atmospheric state (636) including at least future tailwinds, wherein the prediction engine (620) is configured to predict (850) a sequence of fuel burn for each candidate cruise phase route (634) based on at least the sequence of the multivariate flight data (630) and the future atmospheric state (636), wherein the total engine (622) is configured to sum (860) the fuel burn over each candidate cruise phase route (634) to obtain a predicted fuel burn (624), and wherein the output engine (606) is configured to indicate (870) a suitable candidate cruise phase route having the predicted lowest fuel burn (624), a machine (600).
12. The machine (600) according to claim 11, wherein the input engine (602) is further configured to receive flight parameters (632) for the aircraft, and each sequence of fuel burn is further based on the received flight parameters (632) for the aircraft.
13. The machine (600) according to claim 11, wherein the multivariate flight data (630) is discretized based on a range of tailwind speeds.
14. The machine (600) according to claim 11, further comprising an adjustment engine (610) configured to adjust the length of one or more cruise phases included in the multivariate flight data (630) to a common cruise phase length.
15. The machine (600) according to claim 11, further comprising a trained encoder (612) disposed logically upstream of the trained decoder (614), wherein the encoder (612) is trained to output a vector characterizing an input sequence of multivariate flight data (630), and the decoder (614) is trained to replicate the fuel burn of the input sequence based on the vector, thereby generating an output sequence.
16. The machine (600) according to claim 15, wherein the encoder (612) and the decoder (614) are configured according to a long short-term memory (LSTM) architecture.
17. The machine (600) according to claim 16, further comprising a fully connected layer (616) configured to interpret the fuel burn at each time step of the output sequence.
18. A method (700) of training a machine (500) to predict the fuel burn of an aircraft over a cruise phase of a flight, comprising: receiving (710) corresponding sequences of multivariate data (630) for a plurality of previously performed flights; analyzing (720) the corresponding sequences for each cruise phase of the plurality of previously performed flights; discretizing (740) the multivariate data (630) based at least on the headwind and fuel burn for each cruise phase; processing (750) each corresponding sequence to develop a hidden state, the hidden state minimizing an overall residual for replicating the fuel burn in each corresponding sequence, and publishing (760) at least a portion of the hidden state.
19. The method (700) according to claim 18, further comprising adjusting (730) each corresponding sequence to provide a common cruise length for each cruise phase.
20. training two or more machines (500) to predict the fuel burn of the aircraft over each cruise phase evaluating the training result (412) for each of the two or more machines (500), and the method (700) according to claim 18, further comprising adjusting hyperparameters (414) for at least one machine (500) based on the training result (412).