EP4004824A1 - Dispositif et procede de prediction - Google Patents
Dispositif et procede de predictionInfo
- Publication number
- EP4004824A1 EP4004824A1 EP20774881.5A EP20774881A EP4004824A1 EP 4004824 A1 EP4004824 A1 EP 4004824A1 EP 20774881 A EP20774881 A EP 20774881A EP 4004824 A1 EP4004824 A1 EP 4004824A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- predictor
- arrival
- input data
- neural network
- predictors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Definitions
- the present invention relates generally to control systems and in particular to a device and a method for predicting the value of a quantity intended for use by a control system.
- the prediction device comprises a first neural network-based predictor configured to calculate an estimate of said non-explicit parameter and a second neural network-based predictor configured to calculate an estimate of said value of the magnitude from the estimation of the non-explicit parameter, the two predictors receiving a set of input data, each neural network being associated with a set of weights.
- the prediction device is configured to apply a plurality of iterations of a single learning function to the two predictors, the learning function comprising: The invention improves the situation.
- a device for predicting the value of a quantity intended for use by a control system implemented on a computer, the quantity depending on several parameters, the parameters comprising a non-explicit parameter.
- the prediction device comprises a first neural network-based predictor configured to calculate an estimate of said non-explicit parameter and a second neural network-based predictor configured to calculate an estimate of said value of the magnitude from the estimation of the non-explicit parameter, the two predictors receiving a set of input data, each neural network being associated with a set of weights.
- the prediction device is configured to apply a plurality of iterations of a single learning function to the two predictors, the learning function comprising:
- a forward propagation block configured to calculate, based on the input data of the two predictors, the gradient of a minimization function of a cost function of the first predictor;
- a backpropagation block configured to update the weights of the neural networks of the two predictors by backpropagating the gradients calculated by the forward propagation block.
- the prediction device is configured to estimate said value of the magnitude at a future instant, after said iterations of the learning function, by applying input data to the neural networks of the two predictors using the weights updated by the learning function.
- the back propagation block can be configured to update the weights of the second predictor, while the weights of the first predictor are frozen.
- the first predictor may comprise a neural network receiving generic input data, the block of
- the first predictor can comprise a set of elementary neural networks each receiving specific input data.
- the second predictor can be configured to apply the predicted value as input to the first predictor.
- the first predictor can be configured to broadcast the output value of the non-explicit parameter to external systems.
- control system is an air traffic control system
- the prediction device then being configured to predict the arrival time of a given aircraft making a trajectory between a starting point and a point arrival point, the non-explicit parameter being relative to the arrival point of the airplane.
- the non-explicit parameter may be the congestion rate at the end point.
- the non-explicit parameter can be a global delay parameter.
- the input data of the first predictor can include characteristics relating to the given aircraft, information relating to the aircraft arriving at the point of arrival, and a number representing the maximum number of aircraft associated with the point d 'arrival.
- the input data for aircraft arriving at the point of arrival may include the number and type of aircraft scheduled to land at the point of arrival by time range.
- the input data of the second predictor can include characteristics relating to the given aircraft, information relating to the aircraft. arriving at the point of arrival, and capacity information associated with the point of arrival.
- the input data for the second predictor may further include a time slot representing the expected landing range for the given aircraft, and a history of values of the non-explicit parameter over a period of time.
- the embodiments thus improve the prediction of the value of quantities depending on a non-explicit parameter, by the use of two jointly trained neural networks, the predicted quantity thus being more precise and improving the control performed by the systems. control using the predicted value.
- FIG. 1 shows an example of an environment using a prediction device, according to embodiments of the invention.
- FIG. 2 is a diagram showing an example of a neural network used to implement a predictor of the prediction device, according to one embodiment.
- FIG. 3 is a diagram illustrating the learning function implemented to jointly train two neural networks corresponding to two predictors of the prediction device, according to certain embodiments.
- FIG. 4 represents the first neural network-based predictor, in an example of application of the invention to predicting the time of arrival of an aircraft.
- FIG. 5 represents the second neural network-based predictor, according to the exemplary embodiment of Figure 6.
- FIG. 6 shows the interactions between the first predictor and the second predictor in the learning phase, according to the example embodiment of Figures 5 and 6.
- FIG. 7 is a flowchart showing the method of learning the two predictors, according to certain embodiments.
- FIG. 8 is a flowchart representing the method for predicting the non-explicit quantity implemented by the first predictor, in a generalization phase, according to one embodiment.
- FIG. 9 represents the method for predicting the value of magnitude implemented by the second predictor, in the generalization phase, according to one embodiment.
- FIG. 10 represents a plurality of elementary neural networks used by the first predictor to take account of specific data, according to an exemplary embodiment.
- FIG. 1 shows an example of an environment using a prediction device 100, according to embodiments of the invention.
- the prediction device 100 is configured to calculate (or predict) an estimate of the value that a magnitude P (also called 'control magnitude') will take at a final instant in response to the triggering or to the occurrence of an event between an initial instant Ti and a final instant Tf.
- the magnitude P depends on a plurality of parameters comprising at least one 'non-explicit' parameter Q.
- the predicted value P is intended for use by a computer implemented control system 200 for optimization purposes.
- a 'non-explicit' parameter refers to a parameter having no reality in the field, such as for example a parameter having no explicit formula, not defined by a formula or values and / or of which only the link with the other parameters on which the magnitude P depends.
- a “non-explicit” parameter can also be defined as a parameter calculated from a method based on the data.
- the predicted quantity may be the estimated time of arrival ETA (ETA is the acronym for "Estimated Time of Arrivai” literally meaning “ Estimated Time of Arrival) ”of an airplane in a given airport (destination airport), for a given flight from a departure airport, the event being the flight that occurs between the take-off time (initial time Ti) and the arrival time (final instant Tf).
- the predicted quantity P depends on a set of parameters relating to the event (such as the flight plan, the weather forecast on the route of the aircraft, etc.), to data relating to past occurrences of the event (for example historical data of one or more relative parameters flight over given past periods).
- the non-explicit parameter Q may for example be a
- the prediction device 100 comprises a first predictor 101, based on a neural network, configured to calculate an estimate of the 'non-explicit' Q parameter (for example, the parameter total instantaneous delay on the arrival airport for a prediction of an ETA) and a second predictor 102, based on neural networks, configured to calculate an estimate (or prediction) of the value P (for example ETA) from a first predictor 101, based on a neural network, configured to calculate an estimate of the 'non-explicit' Q parameter (for example, the parameter total instantaneous delay on the arrival airport for a prediction of an ETA) and a second predictor 102, based on neural networks, configured to calculate an estimate (or prediction) of the value P (for example ETA) from
- Both predictors 101 and 102 are configured to receive a set of input data.
- Each neural network corresponding to the predictors 101 and 102 is also associated with a set of weights.
- the non-explicit parameter Q, delivered at the output of the first predictor 101 can for example be a data vector.
- the non-explicit parameter Q provided by the first predictor 101 is intended to improve the estimate made by the second predictor.
- FIG. 2 is a diagram representing the neuron network corresponding to each predictor 101 or 102.
- a neural network constitutes a computational model imitating the functioning of biological neural networks.
- a neural network 2 comprises neurons interconnected with one another by synapses generally implemented in the form of digital memories (resistive components for example).
- a neural network 2 can comprise a plurality of successive layers, comprising an input layer carrying the input signal and an output layer carrying the result of the prediction made by the neural network (result of the network), and a or more intermediate layers.
- the first entry layer contains dummy neurons that pass the supplied inputs to the network.
- Each layer of a neural network takes its inputs from the outputs of the previous layer.
- the number of neurons on each layer is equal to the number of inputs from neurons in the next layer.
- a given layer of neural network 2 is thus composed of a set of generalization neurons taking their inputs from the neurons of the previous layer.
- the signals propagated at the input and at the output of the layers of the network can be digital values (information encoded in the value of the signals), or electrical pulses in the case of pulse encoding (information encoded temporally according to the order arrival of pulses or according to pulse frequency).
- the pulses can come from a sensor.
- a neural network 2 comprises a set of input data 20 (also called 'input coefficients'), denoted xi, and output data 25 (also called' coefficients of output '), denoted Oj.
- the output coefficients Oj correspond to the output values of the neurons of the neural network 2.
- the output values Oj are calculated from the inputs xi and the synaptic weights 21, denoted Wij.
- Each output output coefficient Oj is calculated by applying an activation function f to the input coefficients xi (block 23).
- Each neuron of the neural network is configured to calculate a weighted sum of its inputs xi (20) using a combination function ⁇ (block 22) and the weights Wij (block 21), before applying the function d 'activation f (block 23) at this resulting weighted sum to produce its output Oj:
- a 'non-explicit' parameter refers to a parameter having no reality in the field, such as for example a parameter having no explicit formula, not defined by a formula or values and / or of which only the link with the other parameters on which the magnitude P depends.
- a “non-explicit” parameter can also be defined as a parameter calculated from a method based on the data.
- the predicted quantity may be the estimated time of arrival ETA (ETA is the acronym for "Estimated Time of Arrivai” literally meaning “Estimated Time of Arrival” of a plane in a given airport (destination airport), for a given flight from a departure airport, the event being the flight which occurs between the take-off time (initial instant Ti) and the arrival time (final instant Tf).
- the predicted quantity P depends on a set of parameters relating to the event (such as the flight plan, the weather forecast on the path of the airplane, etc.), to data relating to occurrences past periods of the event (for example historical data of one or more parameters relating to the flight over given past periods).
- the non-explicit parameter Q may for example be a
- the prediction device 100 comprises a first predictor 101, based on a neural network, configured to calculate an estimate of the 'non-explicit' Q parameter (for example, the parameter total instantaneous delay on the arrival airport for a prediction of an ETA) and a second predictor 102, based on neural networks, configured to calculate an estimate (or prediction) of the value P (for example ETA) from a first predictor 101, based on a neural network, configured to calculate an estimate of the 'non-explicit' Q parameter (for example, the parameter total instantaneous delay on the arrival airport for a prediction of an ETA) and a second predictor 102, based on neural networks, configured to calculate an estimate (or prediction) of the value P (for example ETA) from
- Both predictors 101 and 102 are configured to receive a set of input data.
- Each neural network corresponding to the predictors 101 and 102 is also associated with a set of weights.
- the non-explicit parameter Q, delivered at the output of the first predictor 101 can for example be a data vector.
- the non-explicit parameter Q provided by the first predictor 101 is intended to improve the estimate made by the second predictor.
- FIG. 2 is a diagram representing the neuron network corresponding to each predictor 101 or 102.
- a neural network constitutes a computational model imitating the functioning of biological neural networks.
- a neural network 2 comprises neurons interconnected with each other by generally implemented synapses in the form of digital memories (resistive components for example).
- a neural network 2 can comprise a plurality of successive layers, comprising an input layer carrying the input signal and an output layer carrying the result of the prediction made by the neural network (result of the network), and a or more intermediate layers.
- the first input layer contains dummy neurons that pass the supplied inputs to the network.
- Each layer of a neural network takes its inputs from the outputs of the previous layer.
- the number of neurons on each layer is equal to the number of inputs from neurons in the next layer.
- a given layer of neural network 2 is thus composed of a set of generalization neurons taking their inputs from the neurons of the previous layer.
- the signals propagated at the input and at the output of the layers of the network can be digital values (information encoded in the value of the signals), or electrical pulses in the case of pulse encoding (information encoded temporally according to the order arrival of pulses or according to pulse frequency).
- the pulses can come from a sensor.
- a neural network 2 comprises a set of input data 20 (also called 'input coefficients'), denoted xi, and output data 25 (also called' coefficients of output '), denoted Oj.
- the output coefficients Oj correspond to the output values of the neurons of the neural network 2.
- the output values Oj are calculated from the inputs xi and the synaptic weights 21, denoted Wij.
- Each output output coefficient Oj is calculated by applying an activation function f to the input coefficients xi (block 23).
- Each neuron of the neural network is configured to calculate a weighted sum of its inputs xi (20) using a combination function ⁇ (block 22) and the weights Wij (block 21), before applying the function d 'activation f (block 23) at this resulting weighted sum to produce its output Oj:
- the activation function f can take different values depending on the value of the weighted sum of the weights of the neural network with respect to a threshold (also called 'bias'):
- the neuron is in a transition phase
- the threshold therefore represents the threshold from which a neuron will emit a signal.
- the activation function of f neurons can be, for example, a sigmoid or thresholding function capable of introducing non-linearity.
- the input signal propagates from one layer of the neural network to another until the output, with or without activating the neurons.
- Synaptic weights can be determined by learning in a learning phase. Random values are initially assigned to the weights of the neural network and then a set of data xi is used to perform the training. Learning a neural network involves determining the optimal values of synaptic weights, for each neuron in the neural network, from the last layer of the network to the first, using a learning function.
- the learning phase can implement a plurality of iterations of the learning function, each iteration comprising a forward propagation step ('forward) and a backward' step for correct the errors between the outputs obtained in the forward propagation phase and the outputs expected for the input sample considered.
- 'forward forward propagation step
- backward' step for correct the errors between the outputs obtained in the forward propagation phase and the outputs expected for the input sample considered.
- the learning phase thus makes it possible to compare the output obtained with respect to the expected output (in the case of a supervised method), and according to this comparison, to update the links between the neurons represented. by synaptic weights to improve the final result (weights can be changed to strengthen or inhibit the bonds between neurons).
- the signal corresponding to the input sample is propagated forward in the layers of the neural network from the first layer, from one layer (k-1) to the next layer (k) until the last layer .
- the activation function f and the synaptic weights connecting neurons of a previous layer (k-1) and a subsequent layer (k) are used.
- any errors obtained by a neuron are back-propagated to its synapses and to the neurons which are connected to it.
- the backpropagation can be a gradient backpropagation to modify the synaptic weights while taking into account their impact on the errors generated.
- the synaptic weights that contribute to causing a large error can be changed more significantly than the weights that cause a smaller error.
- the error ei between the output yi output calculated by the neural network and the expected output ti in the current sample is determined, using the derivative of the activation function cp '.
- the error is then back-propagated backwards from the last layer, layer by layer, to the first layer.
- the synaptic weights are then modified by a gradient descent algorithm.
- each iteration of the learning function makes it possible, from a sample at the input of the network, to calculate the output of the network, to compare it with the expected output and to back-propagate an error signal in the network to modify synaptic weights.
- examples of each class are provided at the input of the neural network 2 (input data) and the output provided by the neural network in response to these input data represents the number of the class considered.
- the network is then driven by the gradient descent algorithm to minimize the error between the obtained output and the expected output (by applying a cost minimization function), which leads to the modification of the weights of the neurons at each iteration of the learning algorithm.
- the duration of the training phase may depend on the size of the database storing the samples used for training and on the size of the network. It can therefore be relatively long.
- a so-called generalization phase which is faster, is implemented.
- the weights learned from the learning phase are used (static neural network in which the weights are frozen).
- Input data is presented to the neural network and a response from the neural network is obtained (for example, representing the number of the class to which the input data for a classification network belongs).
- the prediction device 100 is configured to apply a single function
- Figure 3 is a diagram illustrating the learning function implemented to jointly train the two neural networks 2A and 2B (commonly designated by the reference 2 'in Figure 2) corresponding to the predictors 101 and 102.
- the common learning function 3 applied to the two predictors 101 and 102 comprises two blocks 31 and 32 called successively at each iteration of the learning function:
- a forward propagation block 31 ⁇ forward ' configured to calculate, at each iteration, the gradient of a set of minimization functions of the cost function of the first predictor 101 (P2), in response to the data of entry applied two predictors 101 and 102;
- back-propagation block 32 (“backward") configured to update the weights of the neural networks of the two predictors 101 and 102 by back-propagating the gradients calculated by the forward propagation block, at the current iteration.
- the cost function of the first predictor 101 can for example be the quadratic error on the learning base which consists in minimizing the sum of the squares of the errors between the value yi obtained at the output of the neural network 2A and the value expected ti at the output of the neural network 2A.
- the cost function of the first predictor 101 can be cross entropy.
- the cost function of the first predictor 101 is not limited to squared error or cross-entropy and may be defined by other functions.
- the minimization of the cost function of the first predictor 101 uses the calculation of the gradient of the cost function with respect to the weights of the network.
- the gradient can be defined as the sum of all the partial gradients calculated for each of the examples of the learning base:
- the modification of the weights of the two neural networks 2A and 2B of the predictors 101 and 102 can be carried out after each partial gradient calculation or alternatively after the total gradient calculation.
- the prediction device 100 is further configured to then implement a generalization phase in which the synaptic weights thus updated are fixed.
- the prediction device 100 applies input data received at the input of the neural networks of the two predictors 101 and 102 and calculates the response to these inputs using the weights determined during the learning phase, this which provides an estimate (or prediction) of the value of the quantity P (for example ETA).
- P for example ETA
- the remainder of the description will be given with reference to an example of application of the invention to the prediction of the time of arrival of an aircraft (ETA).
- ETA time of arrival of an aircraft
- the invention applies similarly to the prediction of other parameters whose value depends on a non-explicit parameter, the predicted parameter P and the non-implicit parameter Q depending on the nature. of the control system 200.
- the invention can be applied to the prediction of the time of arrival at another intermediate point of the trajectory of the aircraft ETO (acronym for 'Estimated Time of Overflight' meaning Time of Overflight Valued').
- the prediction of 4D trajectories is a major issue in many fields.
- the prediction of the ETA arrival time of an aircraft makes it possible in particular to optimize the management of aircraft flows by an air traffic control system 200. It is however useful to be able to have a prediction that is as reliable as possible. in order to be able to deduce therefrom a prediction of the instants of passage of the aircraft from one sector to another or to predict flight delays.
- the trajectory of an airplane between a departure airport and an arrival airport is estimated by an airline, according to available information relating to the departure and arrival airports, weather conditions and aircraft characteristics.
- the flight plan of an airplane is conventionally planned taking into account the information available on the departure and arrival airports, weather forecasts on the path of the airplane, the weight of the airplane and the aircraft fuel.
- the flight plans are then transmitted before the departure of the aircraft and processed by the ATC air traffic control center. Enroute updates of these flight plans may be made as a function of events occurring during the journey, such as exceptional weather conditions, and / or incidents en route or at the arrival airport.
- the updates are then carried out by operators between the various ATC centers concerned by the flight (arrival ATC center, departure ATC center).
- arrival ATC center departure ATC center
- Such approaches can be supplemented by calculating an estimated time of arrival from historical flight data, representing data relating to flights made between the departure airport and the arrival airport over a past period of time, such as that the weather and air traffic conditions observed on such past flights.
- ETAs conventionally calculated on the basis of formulas and / of historical data lack precision.
- the prediction device 100 improves the prediction of I ⁇ TA by using the two predictors 101 and 102 which interact and are jointly trained by a single learning function.
- the prediction device can thus provide an I ⁇ TA prediction that can be used by an air traffic control system to optimize traffic in the arrival airport.
- FIG. 4 represents the first predictor 101 based on a neural network, in an example application of the invention to the prediction of the estimated time of arrival ETA of an aircraft on a route between an arrival airport and a departure airport.
- the first predictor 101 is used to predict the non-explicit parameter Q which can represent for example the instantaneous overall delay at the arrival airport or a congestion parameter at the arrival airport such as the congestion of arrival airport (global congestion parameter).
- the first predictor 101 can receive as input information relating to estimates calculated for the aircraft considered and to a set of planes (hereinafter referred to as “arriving planes”) whose arrival is planned at the same airport. arrival that the aircraft considered, such as:
- the first predictor 101 can more generally take into account the capacity of the arrival airport and the traffic information expected at each instant (number of planes with the same ETA).
- the first predictor 101 thus continuously provides a future prediction of the non-explicit parameter Q (for example instantaneous global delay parameter or congestion parameter).
- the outputs of the first predictor 101 can be represented in the form of a prediction table providing the congestion parameter of the arrival airport per interval. of future time.
- the time interval can be a future time range corresponding to the next hours with respect to the current instant (corresponding to the instant at which the prediction method is launched by the first predictor 101).
- FIG. 4 shows an example of the implementation of the neural network 2A of the first predictor 101, in an example of the application of the invention to the estimation of the time of arrival of an airplane.
- the neural network 2A of the first predictor 101 can be activated by a set of inputs which can include capacity information of the arrival airport (for example number of runways of the airport, status indicator runways, etc.), outputs from arrival management systems configured to manage and optimize aircraft arrivals.
- the output of the first predictor 101 can be a congestion parameter such as an instantaneous global delay parameter representing the landing delay of the airplane considered at the arrival airport or the representative congestion parameter. congestion at the arrival airport per future time interval.
- the global congestion parameter Q can be represented by an occupancy rate of the runways of the arrival airport with respect to the capacity maximum of the arrival airport, for each time slot (for example, a quarter of an hour or an hour).
- the neural network 2A of the first predictor 101 can be activated by a set of inputs which can include:
- FIG. 5 represents the second predictor 102 based on a neural network 2B, in the application of the invention to the prediction of the estimated time of arrival ETA of an aircraft on a route between an arrival airport and a departure airport.
- the second predictor 102 based on a neural network 2B, outputs a prediction of I ⁇ TA of the flight considered.
- the second predictor 102 can receive as input data relating to the flight plan of the aircraft, the weather conditions forecast on the trajectory, and / or landing time slot information as calculated for the aircraft. before the plane takes off.
- the second predictor 102 receives as input the non-explicit parameter Q determined at the output of the first predictor 101 (for example, the instantaneous global delay parameter).
- the second predictor 102 can also receive as input historical data of values of the non-explicit parameter Q output from the first predictor 101 over a past period of time.
- the input data of the second predictor 102 may include:
- Flight history data stored for example in a database or cache, the history data relating to previous flights corresponding to the route of the flight in question (between the place of origin and the place of
- the history can include information relating to a multitude of previous flights (millions of flights for example);
- the delay in take-off (“Delay at departure”) predicted at the time of take-off (it can be transmitted by the aircraft in the last message sent by the aircraft at the time of take-off); the delay corresponds to the difference between the actual take-off time and the initially planned take-off time (Estimated take-off time).
- the input data of the second predictor 102 comprises for example a set of K ’input characteristics
- the predictors 101 and / or 102 can be implemented by any form of neural network (such as convolutional networks, totally connected networks, etc.).
- the first predictor 101 can also be configured to broadcast the output parameter Q to the control systems of a plurality of airplanes which are on the way to neighboring sectors of the airport. arrival, using suitable means of communication.
- the means of communication can include one or more private and / or public networks that allow the exchange of data, such as the internet, a local area network (LAN), a virtual local area network (VLAN), an area network wide area (WAN), a cellular voice / data network, air-to-ground communication such as CPDLC (acronym for 'Control Pilot Data Link Communications' meaning 'Communications between Controller and Pilot via Data Link') and / or others types of communication networks of this kind.
- LAN local area network
- VLAN virtual local area network
- WAN area network wide area
- CPDLC air-to-ground communication
- CPDLC acronym for 'Control Pilot Data Link Communications' meaning 'Communications between Controller and Pilot via Data Link'
- Each communication network can use normal communication technologies and / or protocols such as HTTP (Hypertext Transport Protocol).
- the prediction device 100 can be configured to refine the estimate of the predicted value for the magnitude P constituting the response of the second predictor 102 using an initial estimate of the time of arrival ETA calculated from the speed, the path and the physical parameters of the airplane, this initial estimate being made when filing a flight plan, or intermediate estimates of the arrival time calculated from a formula or made by the device 100 at some point.
- FIG. 6 shows the interactions between the first predictor 101 and the second predictor 102 in the learning phase.
- the output Q of the first predictor 101 in this example, represents the congestion of the arrival airport which has no field reality available and therefore cannot be trained independently by a separate learning function.
- the non-explicit output Q of the first predictor 101 is supplied as the input of the second predictor 102, while in the phase
- the two predictors 101 and 102 are jointly trained using a single learning function for the two neural networks 2A and 2B, which makes it possible to reliably and accurately predict the value of the quantity P (ETA in l 'example considered) despite the non-explicit nature of the parameter Q.
- Such an arrangement of the two predictors makes it possible to capture the impact of the non-explicit parameter on the second predictor 102 in the learning phase. It further allows to provide a network (network of the first predictor 101) capable of predicting the non-explicit parameter in a way which also maximizes the precision of the second predictor 102, without the need to define an analytical function for this. setting.
- FIG. 7 represents the method of learning the two predictors 101 and 102, according to certain embodiments.
- the learning process comprises at least one iteration of the following steps:
- step 600 input data is applied to the input of the two
- step 602 a forward propagation is performed in which gradients of a set of minimization functions of the cost function of the first predictor 101 are calculated, in response to the application of the input data of the two predictors 101 and 102 and to the responses obtained by the neural networks of the predictors 101 and 102;
- step 604 the weights of the neural networks of the two predictors 101 and 102 are updated by backpropagation of the gradients calculated in step 602.
- FIG. 8 represents the method for predicting the non-explicit quantity Q implemented by the first predictor 101, in the generalization phase (after the learning phase) from several parameters, according to a method of embodiment, in an example of application of the invention to the estimation of the flight time of an airplane.
- the synaptic weights of the neural network used by the first predictor 101 are frozen in the generalization phase (static).
- step 700 input data relating to the arrival airport is applied to the first predictor.
- This input data may include:
- step 702 the output parameter Q of the first predictor (for example instantaneous global delay parameter) is generated as a function of the inputs received (response to the input data applied to the neural network of the predictor 101) .
- step 704 the response (output parameter Q) of the first predictor is transmitted to the second predictor.
- step 706 the output parameter Q can be further broadcast to all control systems of airplanes en route to sectors adjacent to the arrival airport, using suitable communications means.
- steps 704 and 706 are shown consecutively, in one embodiment these two steps can be carried out in a different order or substantially in parallel.
- FIG. 9 represents the method for predicting the value of the quantity P (I ⁇ TA of an aircraft in this example) implemented by the second predictor 102, in the generalization phase from the non-explicit parameter Q (the instantaneous global delay parameter in this example) transmitted by the first predictor 101, according to one embodiment.
- step 800 a set of input data are applied to the second predictor 102 comprising at least the output parameter Q of the first predictor 101 (which may for example be the instantaneous global delay parameter).
- step 802 the neural network of the second predictor 102 generates an output P in response to the input data, this output representing a prediction of the magnitude P (ETA of the aircraft considered, for example).
- step 804 the estimate P can be returned as the input of the first predictor 101 which, in response to this input data, can refine the estimate Q (by repeating steps 700 to 704).
- all input parameters can be updated (eg weather parameters) to improve the accuracy of the prediction.
- the predictions of the P value can be iterated periodically, according to a chosen period (eg every N minutes during the flight time for an estimate of an ETA).
- the neural network 2A of the first predictor 101 can receive as input data relating to a set airports, by way of non-limiting example.
- the prediction can be improved by using for the first predictor 101 a plurality of elementary neural networks 2Ai each relating to a specific airport, as illustrated in the example of FIG. 10.
- FIG. 10 shows for example 8 predictors 101 based on elementary neural networks (2A-1 to 2A-8), each neuron network being specific to a given airport (CGE, Atlanta, Mila, Guanghzhou, Heathrow, CdG, JFK, Abu Dhabi).
- Each elementary neural network 2A-i is trained together with the second predictor 102 as described above using the input data specific to the associated specific airport, which makes it possible to update the weights associated with each network of elementary neuron during learning.
- the weights of each elementary neural network 2A-i are only refined with data that corresponds only to the specific associated airport.
- the weights of the various neural networks 2A-i and 2B are frozen and for each airplane flight considered between an airport of departure and an arrival airport, only the neural network 2A-i corresponding to the arrival airport of the airplane is used.
- the systems or subsystems according to the embodiments of the invention can be implemented in various ways by hardware ("hardware"), software, or a combination of hardware and software, especially in the form of program code that can be distributed as a program product, in various forms.
- the program code may be distributed using computer readable media, which may include computer readable storage media and communication media.
- the methods described in the present description can in particular be implemented in the form of computer program instructions executable by one or more processors in a computer computing device. These computer program instructions may also be stored in computer readable media.
- the invention is not limited to the embodiments described above by way of nonlimiting example. It encompasses all the variant embodiments which may be envisaged by those skilled in the art. In particular, those skilled in the art will understand that the invention is not limited to the prediction of ETA quantities or more generally to air traffic control, and can be applied to other fields. Those skilled in the art will understand that the invention is also not limited to the examples of cost functions and cost function minimization described above.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Traffic Control Systems (AREA)
- Feedback Control In General (AREA)
Abstract
Les modes de réalisation de l'invention fournissent un dispositif de prédiction (100) de la valeur d'une grandeur destinée à être utilisée par un système de contrôle implémenté sur ordinateur, la grandeur dépendant de plusieurs paramètres, les paramètres comprenant un paramètre non explicite. Avantageusement, le dispositif de prédiction comprend un premier prédicteur (101) à base de réseau de neurones configuré pour calculer une estimation du paramètre non-explicite et un deuxième prédicteur (102) à base de réseau de neurones configuré pour calculer une estimation de la valeur de la grandeur à partir de l'estimation du paramètre non-explicite, les deux prédicteurs (101, 102) recevant un ensemble de données d'entrée, chaque réseau de neurones étant associé à un ensemble de poids. Le dispositif de prédiction est configuré pour appliquer une pluralité d'itérations d'une unique fonction d'apprentissage aux deux prédicteurs (101, 102), la fonction d'apprentissage comprenant : un bloc de propagation vers l'avant pour calculer, en fonction des données d'entrée des deux prédicteurs (101,102), le gradient d'une fonction de minimisation d'une fonction de coût du premier prédicteur (101); et un bloc de rétropropagation (32) pour mettre à jour les poids des réseaux de neurones des deux prédicteurs en effectuant une rétropropagation des gradients calculés par le bloc de propagation avant. Le dispositif de prédiction (100) estime la valeur de la grandeur à prédire à un instant futur, après les itérations de la fonction d'apprentissage, en appliquant des données d'entrées aux réseaux de neurones des deux prédicteurs (101, 102) et en utilisant les poids mis à jour par la fonction d'apprentissage.
Description
DESCRIPTION
Titre de l’invention : Dispositif et procédé de prédiction [0001 ] Domaine technique
[0002] La présente invention concerne de manière générale les systèmes de contrôle et en particulier un dispositif et un procédé de prédiction de la valeur d’une grandeur destinée à être utilisée par un système de contrôle.
[0003] Les performances de certains systèmes, tels que les systèmes de contrôle, peuvent être significativement accrues ou optimisées par l’utilisation d’estimations (ou de prédiction) de la valeur que prendront certaines grandeurs à un instant futur. Les prédictions de valeurs permettent d’anticiper des événements et de mettre en place des mécanismes d’ajustement pour prévenir ces événements ou optimiser le fonctionnement du système. Par exemple, dans le domaine du transport aérien, l’estimation du temps d’arrivée des avions dans un aéroport d’arrivé donné est utilisée par les systèmes de contrôle de trafic aérien pour optimiser le trafic aérien dans cet aéroport. Dans le domaine balistique, une estimation d’impact de projectile peut être utilisée pour activer des procédés de contrôle et/ou des mécanismes d’ajustement. Dans d’autres domaines encore, il peut être utile de prédire la trajectoire d’objets mobiles pour activer diverses manoeuvres ou mécanismes de contrôle.
[0004] Classiquement, pour prédire la valeur finale que prendra une telle grandeur à un instant futur (par exemple temps d’arrivée), une estimation initiale de cette valeur est calculée avant le déclenchement de l’évènement (par exemple vol) qui provoque la variation de la grandeur, l’événement se produisant entre un instant initial et l’instant futur. Il est connu d’effectuer une ou plusieurs estimations additionnelles de la valeur de la grandeur à l’instant futur, pendant l’occurrence de l’évènement en tenant compte de la variation des paramètres dont dépend la grandeur. Les différentes estimations sont en général effectuées en utilisant des équations, des prédicteurs ou des méthodes d’estimations basées sur des modèles statistiques et/ou des données historiques.
[0005] Toutefois les solutions connues d’estimation de telles grandeurs manquent de précision.
[0006] Définition générale de l'invention
L’invention vient améliorer la situation. A cet effet, il est proposé un dispositif de prédiction de la valeur d’une grandeur destinée à être utilisée par un système de contrôle implémenté sur ordinateur, la grandeur dépendant de plusieurs paramètres, les paramètres comprenant un paramètre non explicite. Avantageusement, le dispositif de prédiction comprend un premier prédicteur à base de réseau de neurones configuré pour calculer une estimation dudit paramètre non-explicite et un deuxième prédicteur à base de réseau de neurones configuré pour calculer une estimation de ladite valeur de la grandeur à partir de l’estimation du paramètre non- explicite, les deux prédicteurs recevant un ensemble de données d’entrée, chaque réseau de neurones étant associé à un ensemble de poids. Le dispositif de prédiction est configuré pour appliquer une pluralité d’itérations d’une unique fonction d’apprentissage aux deux prédicteurs, la fonction d’apprentissage comprenant : L’invention vient améliorer la situation. A cet effet, il est proposé un dispositif de prédiction de la valeur d’une grandeur destinée à être utilisée par un système de contrôle implémenté sur ordinateur, la grandeur dépendant de plusieurs paramètres, les paramètres comprenant un paramètre non explicite. Avantageusement, le dispositif de prédiction comprend un premier prédicteur à base de réseau de neurones configuré pour calculer une estimation dudit paramètre non-explicite et un deuxième prédicteur à base de réseau de neurones configuré pour calculer une estimation de ladite valeur de la grandeur à partir de l’estimation du paramètre non- explicite, les deux prédicteurs recevant un ensemble de données d’entrée, chaque réseau de neurones étant associé à un ensemble de poids. Le dispositif de prédiction est configuré pour appliquer une pluralité d’itérations d’une unique fonction d’apprentissage aux deux prédicteurs, la fonction d’apprentissage comprenant :
- un bloc de propagation vers l’avant configuré pour calculer, en fonction des données d’entrée des deux prédicteurs, le gradient d’une fonction de minimisation d’une fonction de coût du premier prédicteur ;
- un bloc de rétropropagation configuré pour mettre à jour les poids des réseaux de neurones des deux prédicteurs en effectuant une rétropropagation des gradients calculés par le bloc de propagation avant.
[0007] Le dispositif de prédiction est configuré pour estimer ladite valeur de la grandeur à un instant futur, après lesdites itérations de la fonction d’apprentissage,
en appliquant des données d’entrées aux réseaux de neurones des deux prédicteurs en utilisant les poids mis à jour par la fonction d’apprentissage.
[0008] Dans un mode de réalisation, le bloc de rétropropagation peut être configuré pour mettre à jour les poids du deuxième prédicteur, tandis que les poids du premier prédicteur sont figés.
[0009] Dans un mode de réalisation, le premier prédicteur peut comprendre un réseau de neurones recevant des données d’entrée génériques, le bloc de
rétropropagation.
[0010] Le premier prédicteur peut comprendre un ensemble de réseaux de neurones élémentaires recevant chacun des données d’entrée spécifiques.
[001 1 ] Avantageusement, le deuxième prédicteur peut être configuré pour appliquer la valeur prédite en entrée du premier prédicteur.
[0012] Dans un mode de réalisation, le premier prédicteur peut être configuré pour diffuser la valeur de sortie du paramètre non explicite à des systèmes externes.
[0013] Dans une forme de réalisation, le système de contrôle est un système de contrôle aérien, le dispositif de prédiction étant alors configuré pour prédire le temps d’arrivée d’un avion donné effectuant une trajectoire entre un point de départ et un point d’arrivée, le paramètre non explicite étant relatif au point d’arrivée de l’avion.
[0014] Dans une telle forme de réalisation, le paramètre non explicite peut être le taux d’encombrement au niveau du point d’arrivée. En variante, le paramètre non explicite peut être un paramètre global de retard.
[0015] Les données d’entrée du premier prédicteur peuvent comprendre des caractéristiques relatives à l’avion donné, des informations relatives aux avions arrivant au niveau du point d’arrivée, et un nombre représentant le nombre maximal d’avions associé au point d’arrivée.
[0016] Les données d’entrée relatives aux avions arrivant au niveau du point d’arrivée peuvent comprendre le nombre et le type d’avions prévus à l’atterrissage au niveau du point d’arrivée par plage temporelle.
[0017] Les données d’entrée du deuxième prédicteur peuvent comprendre des caractéristiques relatives à l’avion donné, des informations relatives aux avions
arrivant au niveau du point d’arrivée, et des informations de capacité associées au point d’arrivée.
[0018] Les données d’entrée du deuxième prédicteur peuvent en outre comprendre un créneau horaire représentant la plage d’atterrissage prévue pour l’avion donné, et un historique de valeurs du paramètre non explicite sur une période de temps passé.
[0019] Les modes de réalisation améliorent ainsi la prédiction de valeur de grandeurs dépendant d’un paramètre non explicite, par l’utilisation de deux réseaux de neurones entraînés conjointement, la grandeur prédite étant ainsi plus précise et améliorant le contrôle effectué par les systèmes de contrôle utilisant la valeur prédite.
[0020] Brève description des dessins
[0021 ] D’autres caractéristiques et avantages de l’invention apparaîtront à l’aide de la description qui suit et des figures des dessins annexés dans lesquels :
[0022] [Fig. 1 ] représente un exemple d’environnement utilisant un dispositif de prédiction, selon des modes de réalisations de l’invention.
[0023] [Fig. 2] est un schéma représentant un exemple de réseau de neurones utilisé pour implémenter un prédicteur du dispositif de prédiction, selon un mode de réalisation.
[0024] [Fig. 3] est un schéma illustrant la fonction d’apprentissage mise en oeuvre pour entraîner conjointement deux réseaux de neurones correspondant à deux prédicteurs du dispositif de prédiction, selon certains modes de réalisation.
[0025] [Fig. 4] représente le premier prédicteur à base de réseau de neurones, dans un exemple d’application de l’invention à la prédiction du temps d’arrivée d’un avion.
[0026] [Fig. 5] représente le deuxième prédicteur à base de réseau de neurones, selon l’exemple de réalisation de la figure 6.
[0027] [Fig. 6] montre les interactions entre le premier prédicteur et le deuxième prédicteur dans la phase d’apprentissage, selon l’exemple de réalisation des figures 5 et 6.
[0028] [Fig. 7] est un organigramme représentant le procédé d’apprentissage des deux prédicteurs, selon certains modes de réalisation.
[0029] [Fig. 8] est un organigramme représentant le procédé de prédiction de la quantité non-explicite mis en oeuvre par le premier prédicteur, dans une phase de généralisation, selon un mode de réalisation.
[0030] [Fig. 9] représente le procédé de prédiction de valeur de grandeur mis en oeuvre par le deuxième prédicteur, dans la phase de généralisation, selon un mode de réalisation.
[0031 ] [Fig. 10] représente une pluralité de réseaux de neurones élémentaires utilisés par le premier prédicteur pour tenir compte de données spécifiques, selon un exemple de réalisation.
[0032] Description détaillée de la demande
[0033] La figure 1 représente un exemple d’environnement utilisant un dispositif de prédiction 100, selon des modes de réalisations de l’invention.
[0034] Le dispositif de prédiction 100 est configuré pour calculer (ou prédire) une estimation de la valeur que prendra une grandeur P (encore appelée‘grandeur de contrôle’) à un instant final en réponse au déclenchement ou à l’occurrence d’un événement entre un instant initial Ti et un instant final Tf. La grandeur P dépend d’une pluralité de paramètres comprenant au moins un paramètre‘non explicite’ Q.
La valeur prédite P est destinée à être utilisée par un système de contrôle 200 implémenté sur ordinateur, à des fins d’optimisation.
[0035] Tel qu’utilisé ici, un paramètre‘non explicite’ fait référence à un paramètre n’ayant pas de réalité de terrain, tel que par exemple un paramètre n’ayant pas de formule explicite, non défini par une formule ou des valeurs et/ou dont on ne connaît que le lien avec les autres paramètres dont dépend la grandeur P. Un paramètre ‘non explicite’ peut être encore défini comme un paramètre calculé à partir d’une méthode s’appuyant sur les données.
[0036] Dans un exemple d’application de l’invention à un système de contrôle de trafic aérien, la grandeur prédite peut être le temps d’arrivée estimé ETA (ETA est l’acronyme pour « Estimated Time of Arrivai » signifiant littéralement « Temps Estimé d’Arrivée) » d’un avion dans un aéroport donné (aéroport de destination), pour un vol donné depuis un aéroport de départ, l’événement étant le vol qui se produit entre le temps de décollage (instant initial Ti) et le temps d’arrivée (instant final Tf). Dans un tel exemple, la grandeur prédite P dépend d’un ensemble de paramètres relatifs à
l’événement (tels que le plan de vol, la météo sur le trajet de l’avion, etc.), à des données relatives à des occurrences passées de l’événement (par exemple données d’historiques de un ou plusieurs paramètres relatifs au vol sur des périodes passées données). Dans un tel exemple d’application de l’invention à un système de contrôle de trafic aérien 200, le paramètre non explicite Q peut être par exemple un
paramètre de délai global instantané sur l’aéroport d’arrivée.
[0037] Selon les modes de réalisation de l’invention, le dispositif de prédiction 100 comprend un premier prédicteur 101 , à base de réseau de neurones, configuré pour calculer une estimation du paramètre‘non-explicite’Q (par exemple, le paramètre de délai global instantané sur l’aéroport d’arrivée pour une prédiction d’un ETA) et un deuxième prédicteur 102, à base de réseaux de neurones, configuré pour calculer une estimation (ou prédiction) de la valeur P (par exemple ETA) à partir de
l’estimation du paramètre non-explicite Q effectuée par le premier prédicteur 101.
Les deux prédicteurs 101 et 102 sont configurés pour recevoir un ensemble de données d’entrée. Chaque réseau de neurones correspondant aux prédicteurs 101 et 102 est par ailleurs associé à un ensemble de poids.
[0038] Le paramètre non-explicite Q, délivré en sortie du premier prédicteur 101 , peut être par exemple un vecteur de données. Le paramètre non-explicite Q fourni par le premier prédicteur 101 est destiné à améliorer l’estimation effectuée par le deuxième prédicteur.
[0039] La figure 2 est un schéma représentant le réseau de neurone correspondant à chaque prédicteur 101 ou 102.
[0040] Pour faciliter la compréhension des modes de réalisation de l’invention, des définitions ou notions relatives aux réseaux de neurones sont détaillées ci-après.
[0041 ] Un réseau de neurone constitue un modèle de calcul imitant le fonctionnement des réseaux de neurones biologiques. Un réseau de neurones 2 comprend des neurones interconnectés entre eux par des synapses généralement implémentées sous la forme de mémoires numériques (composants résistifs par exemple). Un réseau de neurones 2 peut comprendre une pluralité de couches successives, comprenant une couche d’entrée portant le signal d’entrée et une couche de sortie portant le résultat de la prédiction effectuée par le réseau de neurones (résultat du réseau), et une ou plusieurs couches intermédiaires. La première couche d’entrée
contient des neurones factices qui transmettent les entrées fournies au réseau.
Chaque couche d’un réseau de neurones prend ses entrées sur les sorties de la couche précédente. Le nombre de neurones sur chaque couche est égal au nombre d’entrées des neurones de la couche suivante. Une couche donnée du réseau de neurones 2 est ainsi composée d’un ensemble de neurones de généralisation prenant leurs entrées sur les neurones de la couche précédente.
[0042] Les signaux propagés en entrée et en sortie des couches du réseau peuvent être des valeurs numériques (information codée dans la valeur des signaux), ou des impulsions électriques dans le cas d’un codage impulsionnel (information codée temporellement selon l’ordre d’arrivée des impulsions ou selon la fréquence des impulsions). Dans le cas d’un codage impulsionnel, les impulsions peuvent provenir d’un capteur.
[0043] Comme montré sur la figure 2, un réseau de neurones 2 comprend un ensemble de données d’entrée 20 (encore appelées‘coefficients d’entrée’), notés xi, et des données de sortie 25 (encore appelées‘coefficients de sortie’), notés Oj.
[0044] Les coefficients de sortie Oj correspondent aux valeurs de sortie des neurones du réseau de neurones 2. Les valeurs de sorties Oj sont calculées à partir des entrées xi et des poids synaptiques 21 , notées Wij.
[0045] Chaque coefficient de sortie de sortie Oj est calculé en appliquant une fonction d’activation f aux coefficients d’entrée xi (bloc 23).
[0046] Chaque neurone du réseau de neurones est configuré pour calculer une somme pondérée de ses entrées xi (20) en utilisant une fonction de combinaison å (bloc 22) et les poids Wij (bloc 21 ), avant d’appliquer la fonction d'activation f (bloc 23) à cette somme pondérée résultante pour produire sa sortie Oj :
[0047] Tel qu’utilisé ici, un paramètre‘non explicite’ fait référence à un paramètre n’ayant pas de réalité de terrain, tel que par exemple un paramètre n’ayant pas de formule explicite, non défini par une formule ou des valeurs et/ou dont on ne connaît que le lien avec les autres paramètres dont dépend la grandeur P. Un paramètre ‘non explicite’ peut être encore défini comme un paramètre calculé à partir d’une méthode s’appuyant sur les données.
[0048] Dans un exemple d’application de l’invention à un système de contrôle de trafic aérien, la grandeur prédite peut être le temps d’arrivée estimé ETA (ETA est
l’acronyme pour « Estimated Time of Arrivai » signifiant littéralement « Temps Estimé d’Arrivée) » d’un avion dans un aéroport donné (aéroport de destination), pour un vol donné depuis un aéroport de départ, l’événement étant le vol qui se produit entre le temps de décollage (instant initial Ti) et le temps d’arrivée (instant final Tf). Dans un tel exemple, la grandeur prédite P dépend d’un ensemble de paramètres relatifs à l’événement (tels que le plan de vol, la météo sur le trajet de l’avion, etc.), à des données relatives à des occurrences passées de l’événement (par exemple données d’historiques de un ou plusieurs paramètres relatifs au vol sur des périodes passées données). Dans un tel exemple d’application de l’invention à un système de contrôle de trafic aérien 200, le paramètre non explicite Q peut être par exemple un
paramètre de délai global instantané sur l’aéroport d’arrivée.
[0049] Selon les modes de réalisation de l’invention, le dispositif de prédiction 100 comprend un premier prédicteur 101 , à base de réseau de neurones, configuré pour calculer une estimation du paramètre‘non-explicite’Q (par exemple, le paramètre de délai global instantané sur l’aéroport d’arrivée pour une prédiction d’un ETA) et un deuxième prédicteur 102, à base de réseaux de neurones, configuré pour calculer une estimation (ou prédiction) de la valeur P (par exemple ETA) à partir de
l’estimation du paramètre non-explicite Q effectuée par le premier prédicteur 101.
Les deux prédicteurs 101 et 102 sont configurés pour recevoir un ensemble de données d’entrée. Chaque réseau de neurones correspondant aux prédicteurs 101 et 102 est par ailleurs associé à un ensemble de poids.
[0050] Le paramètre non-explicite Q, délivré en sortie du premier prédicteur 101 , peut être par exemple un vecteur de données. Le paramètre non-explicite Q fourni par le premier prédicteur 101 est destiné à améliorer l’estimation effectuée par le deuxième prédicteur.
[0051 ] La figure 2 est un schéma représentant le réseau de neurone correspondant à chaque prédicteur 101 ou 102.
[0052] Pour faciliter la compréhension des modes de réalisation de l’invention, des définitions ou notions relatives aux réseaux de neurones sont détaillées ci-après.
[0053] Un réseau de neurone constitue un modèle de calcul imitant le fonctionnement des réseaux de neurones biologiques. Un réseau de neurones 2 comprend des neurones interconnectés entre eux par des synapses généralement implémentées
sous la forme de mémoires numériques (composants résistifs par exemple). Un réseau de neurones 2 peut comprendre une pluralité de couches successives, comprenant une couche d’entrée portant le signal d’entrée et une couche de sortie portant le résultat de la prédiction effectuée par le réseau de neurones (résultat du réseau), et une ou plusieurs couches intermédiaires. La première couche d’entrée contient des neurones factices qui transmettent les entrées fournies au réseau.
Chaque couche d’un réseau de neurones prend ses entrées sur les sorties de la couche précédente. Le nombre de neurones sur chaque couche est égal au nombre d’entrées des neurones de la couche suivante. Une couche donnée du réseau de neurones 2 est ainsi composée d’un ensemble de neurones de généralisation prenant leurs entrées sur les neurones de la couche précédente.
[0054] Les signaux propagés en entrée et en sortie des couches du réseau peuvent être des valeurs numériques (information codée dans la valeur des signaux), ou des impulsions électriques dans le cas d’un codage impulsionnel (information codée temporellement selon l’ordre d’arrivée des impulsions ou selon la fréquence des impulsions). Dans le cas d’un codage impulsionnel, les impulsions peuvent provenir d’un capteur.
[0055] Comme montré sur la figure 2, un réseau de neurones 2 comprend un ensemble de données d’entrée 20 (encore appelées‘coefficients d’entrée’), notés xi, et des données de sortie 25 (encore appelées‘coefficients de sortie’), notés Oj.
[0056] Les coefficients de sortie Oj correspondent aux valeurs de sortie des neurones du réseau de neurones 2. Les valeurs de sorties Oj sont calculées à partir des entrées xi et des poids synaptiques 21 , notées Wij.
[0057] Chaque coefficient de sortie de sortie Oj est calculé en appliquant une fonction d’activation f aux coefficients d’entrée xi (bloc 23).
[0058] Chaque neurone du réseau de neurones est configuré pour calculer une somme pondérée de ses entrées xi (20) en utilisant une fonction de combinaison å (bloc 22) et les poids Wij (bloc 21 ), avant d’appliquer la fonction d'activation f (bloc 23) à cette somme pondérée résultante pour produire sa sortie Oj :
[0060] La fonction d’activation f peut prendre différentes valeurs en fonction de la valeur de la somme pondérée des poids du réseau de neurones par rapport à un seuil (encore appelé‘biais’) :
- si la somme pondérée des poids du réseau est inférieure à un seuil, le neurone est dit‘non-actif : la sortie du neurone peut alors être mise à une première valeur V1 (telle que V1 = 0 ou -1 ) ;
- si la somme pondérée des poids du réseau est située au voisinage du seuil, le neurone est dans une phase de transition ;
- si la somme pondérée des poids du réseau est supérieure au seuil, le neurone est dit‘actif : la sortie du neurone peut alors être mise à une deuxième valeur V2 (telle que V2 = 1 ).
[0061 ] Le seuil représente donc le seuil à partir duquel un neurone va émettre un signal.
[0062] La fonction d’activation des neurones f peut être par exemple une fonction sigmoïde ou de seuillage capable d’introduire une non-linéarité.
[0063] Ainsi, le signal d’entrée se propage d’une couche à l’autre du réseau de neurones jusqu’à la sortie, en activant ou non au fur et à mesure des neurones.
[0064] Les poids synaptiques peuvent être déterminés par apprentissage dans une phase d’apprentissage. Des valeurs aléatoires sont initialement assignées aux poids du réseau de neurones puis un ensemble de données xi sont utilisées pour réaliser l'apprentissage. L'apprentissage d’un réseau de neurones consiste à déterminer les valeurs optimales des poids synaptiques, pour chaque neurone du réseau de neurones, de la dernière couche du réseau à la première, en utilisant une fonction d’apprentissage.
[0065] La phase d’apprentissage peut mettre en oeuvre une pluralité d’itérations de la fonction d’apprentissage, chaque itération comprenant une étape de propagation vers l’avant (‘forward) et une étape de rétropropagation (‘backward’) pour corriger les erreurs entre les sorties obtenues dans la phase de propagation avant et les sorties attendue pour l’échantillon d’entrée considéré.
[0066] La phase d’apprentissage permet ainsi de comparer la sortie obtenue par rapport à la sortie attendue (dans le cas d’une méthode supervisée), et en fonction de cette comparaison, de mettre à jour les liaisons entre les neurones représentées
par les poids synaptiques pour améliorer le résultat final (les poids peuvent être modifiés pour renforcer ou inhiber les liaisons entre neurones).
[0067] Dans la phase de propagation vers l’avant, des ensembles de données d’entrée sont utilisées pour qui mettre en oeuvre l'apprentissage. Chaque ensemble de données formant un échantillon (vecteur x= [x1 ,. .ch]) est associé à des valeurs souhaitées (ou valeurs attendues). Le signal correspondant à l’échantillon d’entrée est propagé en avant dans les couches du réseau de neurones à partir de la première couche, d’une couche (k-1 ) à la couche suivante (k) jusqu’à la dernière couche. Dans la phase de propagation vers l'avant, la fonction d'activation f et les poids synaptiques connectant les neurones d’une couche précédente (k-1 ) et d’une couche suivante (k) sont utilisées.
[0068] Lorsque la propagation vers l'avant est terminée, on obtient à la sortie un résultat y (y=[yi, .... . yu])·
[0069] Dans la phase de rétropropagation, les erreurs éventuelles obtenues par un neurone sont rétropropagées à ses synapses et aux neurones qui lui sont reliés. Avantageusement, la rétropropagation peut être une rétropropagation par gradient pour modifier les poids synaptiques en tenant compte de leur impact dans les erreurs engendrées. Ainsi, les poids synaptiques qui contribuent à engendrer une erreur importante peuvent être modifiés de manière plus significative que les poids qui ont engendré une erreur moins importante.
[0070] Dans une phase de rétropropagation par gradient, pour chaque neurone de la couche de sortie, l'erreur eisortie entre la sortie yi calculée par le réseau de neurones et la sortie attendue ti pour l’échantillon considéré est déterminée, en utilisant la dérivée de la fonction d’activation cp’. L’erreur est ensuite rétropropagée vers l’arrière à partir de la dernière couche, de couche en couche, jusqu’à la première couche. Pendant la rétro-propagation du signal d’erreur, les poids synaptiques sont ensuite modifiés par un algorithme de descente du gradient.
[0071 ] Ainsi chaque itération de la fonction d’apprentissage permet, à partir d’un échantillon en entrée du réseau, de calculer la sortie du réseau, de la comparer à la sortie attendue et de rétro-propager un signal d’erreur dans le réseau pour modifier les poids synaptiques.
[0072] Par exemple, en considérant un réseau de neurones utilisé pour la classification d’image, à chaque itération de la fonction d’apprentissage, pendant la phase de propagation avant, des exemples de chaque classe sont fournis en entrée du réseau de neurones 2 (données d’entrée) et la sortie fournie par le réseau de neurones en réponse à ces données d’entrée représente le numéro de la classe considérée. Dans la phase de rétropropagation par gradient, le réseau est ensuite entraîné par l’algorithme de descente de gradient pour minimiser l’erreur entre la sortie obtenue et la sortie attendue (en appliquant une fonction de minimisation de coût), ce qui conduit à la modification des poids des neurones à chaque itération de l’algorithme d’apprentissage.
[0073] La durée de la phase d’apprentissage peut dépendre de la taille de la base de données stockant les échantillons utilisés pour l’apprentissage et de la taille du réseau. Elle peut donc être relativement longue.
[0074] Après la phase d’apprentissage, une phase dite de généralisation, plus rapide, est mise en oeuvre. Dans la phase de généralisation, les poids appris de la phase d’apprentissage sont utilisés (réseau de neurones statique dans lequel les poids sont figés). Des données d’entrée sont présentées au réseau de neurones et une réponse du réseau de neurones est obtenue (représentant par exemple le numéro de la classe auquel appartiennent les données d’entrée pour un réseau de classification).
[0075] Avantageusement, le dispositif de prédiction 100 selon les modes de réalisation de l’invention est configuré pour appliquer une unique fonction
d’apprentissage aux deux prédicteurs 101 et 102 pour les entraîner conjointement.
[0076] La figure 3 est un schéma illustrant la fonction d’apprentissage mise en oeuvre pour entraîner conjointement les deux réseaux de neurones 2A et 2B (désigné communément par la référence‘2’ sur la figure 2) correspondant aux prédicteurs 101 et 102.
[0077] La fonction d'apprentissage commune 3 appliquée aux deux prédicteurs 101 et 102 comprend deux blocs 31 et 32 appelés successivement à chaque itération de la fonction d’apprentissage:
- un bloc de propagation vers l’avant 31 Çforward’) configuré pour calculer, à chaque itération, le gradient d’un ensemble de fonctions de minimisation de la fonction de coût du premier prédicteur 101 (P2), en réponse aux données d’entrée appliquées
des deux prédicteurs 101 et 102;
- un bloc de rétropropagation 32 (‘backward’) configuré pour mettre à jour les poids des réseaux de neurones des deux prédicteurs 101 et 102 en effectuant une rétropropagation des gradients calculés par le bloc de propagation avant, à l’itération courante.
[0078] La fonction de coût du premier prédicteur 101 peut être par exemple l'erreur quadratique sur la base d'apprentissage qui consiste à minimiser la somme des carrés des erreurs entre la valeur obtenue yi en sortie du réseau de neurones 2A et la valeur attendue ti en sortie du réseau de neurones 2A. En variante, la fonction de coût du premier prédicteur 101 peut être l'entropie croisée. L’homme du métier comprendra cependant que la fonction de coût du premier prédicteur 101 n’est pas limitée à l’erreur quadratique ou à l’entropie croisée et peut être défini par d’autres fonctions.
[0079] Dans un mode de réalisation, la minimisation de la fonction de coût du premier prédicteur 101 utilise le calcul du gradient de la fonction de coût par rapport aux poids du réseau. Le gradient peut être défini comme la somme de tous les gradients partiels calculés pour chacun des exemples de la base d'apprentissage :
[0080] V/(w) = åf=1 V/i(w)
[0081 ] Le gradient partiel V/^w) peut être calculé en utilisant l’algorithme de rétropropagation qui utilise la différence entre la sortie obtenue yi et la sortie attendue ti (erreur yi - ti=ei), la formule dépendant de la fonction de coût utilisée.
[0082] La modification des poids des deux réseaux de neurones 2A et 2B des prédicteurs 101 et 102 peut être effectuée après chaque calcul de gradient partiel ou alternativement après le calcul du gradient total.
[0083] Le dispositif de prédiction 100 est en outre configuré pour mettre en oeuvre ensuite une phase de généralisation dans laquelle les poids synaptiques ainsi mis à jour sont fixés. Dans la phase de généralisation, le dispositif de prédiction 100 applique des données d’entrées reçues en entrée des réseaux de neurones des deux prédicteurs 101 et 102 et calcule la réponse à ces entrées en utilisant les poids déterminés pendant la phase d’apprentissage, ce qui fournit une estimation (ou prédiction) de la valeur de la grandeur P (par exemple ETA).
[0084] La suite de la description sera faite en référence à un exemple d’application de l’invention à la prédiction du temps d’arrivée d’un avion (ETA). Cependant, l’homme du métier comprendra facilement que l’invention s’applique similairement à la prédiction de d’autres paramètres dont la valeur dépend d’un paramètre non explicite, le paramètre prédit P et le paramètre non implicite Q dépendant de la nature du système de contrôle 200. Par exemple, l’invention peut s’appliquer à la prédiction du temps d’arrivée à un autre point intermédiaire de la trajectoire de l’avion ETO (acronyme pour‘Estimated Time of Overflight’ signifiant Temps de Survol Estimé’).
[0085] La prédiction de trajectoires 4D est un enjeu majeur dans de nombreux domaines. En particulier, la prédiction du temps d’arrivée ETA d’un avion permet notamment d’optimiser la gestion des flux d’avions par un système de contrôle aérien 200. Il est cependant utile de pouvoir disposer d’une prédiction aussi fiable que possible pour pouvoir en déduire une prédiction des instants de passage des avions d’un secteur à l’autre ou prédire les retards de vol.
[0086] Classiquement, la trajectoire d’un avion entre un aéroport de départ et un aéroport d’arrivée (plan de vol) est estimée par une compagnie aérienne, en fonction d’informations disponibles relatives aux aéroports de départ et d’arrivée, aux conditions météorologiques et aux caractéristiques de l’avion. Par exemple, le plan de vol d’un avion est classiquement prévu en tenant comptes des informations disponibles sur les aéroports de départ et d’arrivée, des prévisions météorologiques sur le trajet de l’avion, de la masse de l’avion et du carburant de l’avion. Dans l’art antérieur, les plans de vol sont ensuite transmis avant le départ de l’avion et traités par le centre de contrôle de trafic aérien ATC. Des mises à jour en route de ces plans de vol peuvent être effectuées en fonction d’événements intervenus pendant le trajet, telles que des conditions météorologiques exceptionnelles, et/ou des incidents en route ou sur l’aéroport d’arrivée. Dans les approches existantes, les mises à jour sont ensuite effectuées par des opérateurs entre les différents centres ATC concernés par le vol (centre ATC d’arrivée, centre ATC de départ). De telles approches peuvent être complétées en calculant un temps d’arrivée estimé à partir de données historiques de vols, représentant des données relatives aux vols réalisés entre l’aéroport de départ et l’aéroport d’arrivée sur une période de temps passée, telles que les conditions météorologiques et les conditions de trafic aérien observées
sur de tels vols passés. Cependant, les ETA classiquement calculés à bases de formules et/de données historiques manquent de précision.
[0087] Le dispositif de prédiction 100 selon les modes de réalisation améliore la prédiction de IΈTA en utilisant les deux prédicteurs 101 et 102 qui interagissent et sont entraînés conjointement par une fonction d’apprentissage unique. Le dispositif de prédiction peut ainsi fournir une prédiction de IΈTA pouvant être utilisée par un système de contrôle aérien pour optimiser le trafic dans l’aéroport d’arrivée.
[0088] La figure 4 représente le premier prédicteur 101 à base de réseau de neurones, dans un exemple application de l’invention à la prédiction du temps d’arrivée estimé ETA d’un avion sur un trajet entre un aéroport d’arrivée et un aéroport de départ.
[0089] Le premier prédicteur 101 est utilisé pour prédire le paramètre non explicite Q qui peut représenter par exemple le délai global instantané sur l’aéroport d’arrivée ou un paramètre de congestion sur l’aéroport d’arrivée tel que l’encombrement de l’aéroport d’arrivée (paramètre d’encombrement global).
[0090] Le premier prédicteur 101 peut recevoir en entrée des informations relatives à des estimations calculées pour l’avion considéré et à un ensemble d’avions (ci-après appelés « avions arrivant ») dont l’arrivée est planifiée sur le même aéroport d’arrivée que l’avion considéré, tels que :
- une plage de temps d’arrivée d’avion estimée pour l’avion considéré ;
- le nombre d’avions arrivant par catégorie dans la plage de temps courante ;
- le nombre d’avions par catégorie dans la plage de temps précédente.
[0091 ] Le premier prédicteur 101 peut prendre plus généralement en compte la capacité de l’aéroport d’arrivée et les informations de trafic prévu à chaque instant (nombre d’avions avec un même ETA).
[0092] Le premier prédicteur 101 fournit ainsi en continu une prédiction future du paramètre non explicite Q (par exemple paramètre de délai global instantané ou paramètre d’encombrement). Dans un mode de réalisation où le paramètre non explicite est le paramètre d’encombrement, les sorties du premier prédicteur 101 peuvent être représentées sous la forme d’un tableau de prédiction fournissant le paramètre d’encombrement de l’aéroport d’arrivée par intervalle de temps futur. L’intervalle de temps peut être une plage de temps future correspondant aux
prochaines heures par rapport à l’instant courant (correspondant à l’instant de lancement du procédé de prédiction par le premier prédicteur 101 ).
[0093] La figure 4 représente un exemple d’implémentation du réseau de neurone 2A du premier prédicteur 101 , dans un exemple d’application de l’invention à l’estimation du temps d’arrivée d’un avion.
[0094] Le réseau de neurone 2A du premier prédicteur 101 peut être activé par un ensemble d’entrées qui peuvent comprendre des informations de capacité de l’aéroport d’arrivée (par exemple nombre de pistes de l’aéroport, indicateur d’état des pistes, etc.), des sorties de systèmes de gestion d’arrivée configurés pour gérer et optimiser les arrivées des avions. La sortie du premier prédicteur 101 (paramètre Q non explicite) peut être un paramètre de congestion tel que paramètre de délai global instantané représentant le délai d’atterrissage de l’avion considéré sur l’aéroport d’arrivé ou le paramètre d’encombrement représentatif de l’encombrement de l’aéroport d’arrivée par intervalle de temps futur. Dans le mode de réalisation où le paramètre non-explicite est le paramètre d’encombrement global instantané, le paramètre d’encombrement global Q peut être représenté par un taux d’occupation des pistes de l’aéroport d’arrivée par rapport à la capacité maximale de l’aéroport d’arrivée, pour chaque créneau horaire (par exemple, un quart d’heure ou une heure).
[0095] Comme montré sur la figure 4, le réseau de neurone 2A du premier prédicteur 101 peut être activé par un ensemble d’entrées qui peuvent comprendre :
- La plage de temps d’arrivée estimée;
- Le nombre d’avions arrivant par catégorie;
- Le nombre d’avions arrivant par catégorie sur une plage de temps précédente.
[0096] La figure 5 représente le deuxième prédicteur 102 à base de réseau de neurones 2B, dans l’application de l’invention à la prédiction du temps d’arrivée estimé ETA d’un avion sur un trajet entre un aéroport d’arrivée et un aéroport de départ.
[0097] Le deuxième prédicteur 102, basé sur un réseau de neurones 2B, fournit en sortie une prédiction de IΈTA du vol considéré.
[0098] Le deuxième prédicteur 102 peut recevoir en entrée des données relatives au plan de vol de l’avion, les conditions météorologiques prévues sur la trajectoire, et/ou des informations de plage horaire d’atterrissage telles que calculées pour l’avion
avant le décollage de l’avion. Avantageusement, le deuxième prédicteur 102 reçoit en entrée le paramètre non-explicite Q déterminé en sortie du premier prédicteur 101 (par exemple, le paramètre de délai global instantané). Le deuxième prédicteur 102 peut en outre recevoir en entrée des données historiques de valeurs du paramètre non explicite Q de sortie du premier prédicteur 101 sur une période de temps passée.
[0099] Dans un mode de réalisation appliqué à l’estimation du temps de vol d’un avion, les données d’entrée du deuxième prédicteur 102 peuvent comprendre:
- La plage de temps d’arrivée estimée ;
- Le temps en route estimé (ou‘temps de trajet estimé’ correspondant à l’expression anglo-saxonne‘Estimated en-route time’), l’estimation de ce temps étant calculée avant le décollage de l’avion à partir de formules de calcul;
- Des données d’un historique de vols, stockées par exemple dans une base de données ou un cache, les données d’historique étant relatives à des vols précédents correspondant au trajet du vol considéré (entre le lieu d’origine et le lieu de
destination) sur des fenêtres de temps passées ; l’historique peut inclure des informations relatives à une multitude de vols précédents (millions de vols par exemple);
-La distance entre l’aéroport de départ (au niveau du lieu de départ) et l’aéroport d’arrivée (au niveau du lieu d’arrivée) correspondant au trajet de l’avion considéré (‘Distance de Vol’);
- Le retard au décollage (‘Retard au départ’) prédit au moment du décollage (il peut être transmis par l’avion dans le dernier message envoyé par l’avion au moment du décollage) ; le retard correspond à la différence entre l’instant de décollage effectif et l’instant de décollage initialement planifié (Estimated take-off time).
[0100] Dans l’exemple de la figure 5, les données d’entrée du deuxième prédicteur 102 comprennent par exemple un ensemble de K’ caractéristiques d’entrée
incluant :
- E1 : La vitesse de croisière de l’avion considéré ;
- E2 : La distance de vol ;
- E3 : Le retard de départ ;
- E4 : La plage de temps d’arrivée estimée (plage d’horaires d’arrivée estimés) ;
- E5 : Le temps de trajet estimé (Estimated In Route Time);
- E6 : Les coordonnées de l’aéroport de départ (sous forme de coordonnées de
Latitude, Longitude, Altitude par exemple) ;
- E7 : Les coordonnées de l’aéroport d’arrivée (sous forme de coordonnées de Latitude, Longitude, Altitude par exemple) ;
- E8: Une classe de catégorie d’avion encodée en utilisant n classes (n=6 par exemple);
-E9 : La catégorie de compagnies encodée en utilisant m classes (m=15 par exemple).
[0101 ] Les prédicteurs 101 et/ou 102 peuvent être implémentés par toute forme de réseau de neurones (tels que des réseaux convolutionnels, des réseaux totalement connectés, etc.).
[0102] Dans un mode de réalisation, le premier prédicteur 101 peut en outre être configuré pour diffuser le paramètre de sortie Q aux systèmes de contrôle d’une pluralité d’avions qui sont en cours de trajectoire vers des secteurs voisins de l’aéroport d’arrivée, en utilisant des moyens de communications adaptés. Les moyens de communication peuvent inclure un ou plusieurs réseaux privés et/ou publics qui permettent l’échange de données, tels qu’internet, un réseau de zone locale (LAN), un réseau de zone locale virtuel (VLAN) un réseau de zone étendue (WAN), un réseau cellulaire voix/données, une communication air-sol telle que le CPDLC (acronyme pour‘Contrôler Pilot Data Link Communications’ signifiant ‘Communications entre Contrôleur et Pilote par Liaison de Données’) et/ou d’autres types de réseaux de communication de ce genre. Chaque réseau de communication peut utiliser des technologies de communication normales et/ou des protocoles tels que HTTP (Protocole de transport hypertexte). Dans un tel mode de réalisation, le dispositif de prédiction 100 peut être configuré pour raffiner l’estimation de la valeur prédite pour la grandeur P constituant la réponse du deuxième prédicteur 102 en utilisant une estimation initiale du temps d’arrivée ETA calculée à partir de la vitesse, du trajet et des paramètres physiques de l’avion, cette estimation initiale étant faite au moment du dépôt d’un plan vol, ou des estimations intermédiaires du temps d’arrivée calculées à partir d’une formule ou effectuées par le dispositif 100 à un instant passé.
[0103] La figure 6 montre les interactions entre le premier prédicteur 101 et le deuxième prédicteur 102 dans la phase d’apprentissage. La sortie Q du premier prédicteur 101 , dans cet exemple, représente l’encombrement de l’aéroport d’arrivée
qui n’a pas de réalité de terrain disponible et ne peut donc être entraîné indépendamment par une fonction d’apprentissage séparée. Selon les modes de réalisation de l’invention, la sortie Q non explicite du premier prédicteur 101 est fournie en entrée du deuxième prédicteur 102, tandis que dans la phase
d’apprentissage les deux prédicteurs 101 et 102 sont entraînés conjointement en utilisant une unique fonction d’apprentissage pour les deux réseaux de neurones 2A et 2B, ce qui permet de prédire de manière fiable et précise la valeur de la grandeur P (ETA dans l’exemple considéré) malgré le caractère non explicite du paramètre Q. Dans un mode de réalisation, il peut être avantageux d’effectuer une normalisation d’échantillons pendant la rétro-propagation entre les deux réseaux, pour améliorer l’apprentissage conjoint des deux réseaux de neurones. Un tel agencement des deux prédicteurs permet de capturer l’impact du paramètre non explicite sur le deuxième prédicteur 102 dans la phase d’apprentissage. Il permet en outre de fournir un réseau (réseau du premier prédicteur 101 ) capable de prédire le paramètre non explicite d'une manière qui maximise également la précision du la deuxième prédicteur 102, sans qu’il soit nécessaire de définir une fonction analytique pour ce paramètre.
[0104] La figure 7 représente le procédé d’apprentissage des deux prédicteurs 101 et 102, selon certains modes de réalisation.
[0105] Le procédé d’apprentissage comprend au moins une itération des étapes suivantes :
- A l’étape 600 des données d’entrées sont appliquées à l’entrée des deux
prédicteurs 101 et 102 ;
- A l’étape 602, une propagation vers l’avant est effectuée dans laquelle des gradients d’un ensemble de fonctions de minimisation de la fonction de coût du premier prédicteur 101 sont calculés, en réponse à l’application des données d’entrée des deux prédicteurs 101 et 102 et aux réponses obtenues par les réseaux de neurones des prédicteurs 101 et 102;
- A l’étape 604, les poids des réseaux de neurones des deux prédicteurs 101 et 102 sont mis à jour par rétropropagation des gradients calculés à l’étape 602.
[0106] Une pluralité d’itérations des étapes 600 à 604 peuvent être ensuite
effectuées.
[0107] La figure 8 représente le procédé de prédiction de la quantité non-explicite Q mis en oeuvre par le premier prédicteur 101 , dans la phase de généralisation (après la phase d’apprentissage) à partir de plusieurs paramètres, selon un mode de réalisation, dans un exemple d’application de l’invention à l’estimation du temps de vol d’un avion.
[0108] Les poids synaptiques du réseau de neurones utilisés par le premier prédicteur 101 sont figés dans la phase de généralisation (statiques).
[0109] A l’étape 700, des données d’entrée relatives à l’aéroport d’arrivée sont appliquées au premier prédicteur. Ces données d’entrée peuvent comprendre :
- des informations de capacité relatives à l’aéroport d’arrivée ; et/ou
- des sorties de système de contrôle (données d’optimisation des arrivées d’avions) ;
- le nombre et le type d’avions prévus (ETA par avion) dans une fenêtre temporelle donnée.
[01 10] A l’étape 702, le paramètre de sortie Q du premier prédicteur (par exemple paramètre de délai global instantané) est généré en fonction des entrées reçues (réponse aux données d’entrée appliquées au réseau de neurones du prédicteur 101 ).
[01 1 1 ] A l’étape 704, la réponse (paramètre de sortie Q) du premier prédicteur est transmise au deuxième prédicteur.
[01 12] A l’étape 706, le paramètre de sortie Q peut être en outre diffusé à tous les systèmes de contrôle des avions en route vers des secteurs voisins de l’aéroport d’arrivée, en utilisant des moyens de communications adaptés.
[01 13] Bien que les étapes 704 et 706 soient représentées de manière consécutives, dans un mode de réalisation ces deux étapes peuvent être réalisées selon un ordre différent ou sensiblement en parallèle.
[01 14] La figure 9 représente le procédé de prédiction de la valeur de la grandeur P (IΈTA d’un avion dans cet exemple) mis en oeuvre par le deuxième prédicteur 102, dans la phase de généralisation à partir du paramètre non explicite Q (le paramètre de délai global instantané dans cet exemple) transmis par le premier prédicteur 101 , selon un mode de réalisation.
[01 15] A l’étape 800, un ensemble de données d’entrées sont appliquées au deuxième prédicteur 102 comprenant au moins le paramètre Q de sortie du premier prédicteur 101 (qui peut être par exemple le paramètre de délai global instantané).
[01 16] A l’étape 802, le réseau de neurones du deuxième prédicteur 102 génère une sortie P en réponse aux données d’entrée, cette sortie représentant une prédiction de la grandeur P (ETA de l’avion considéré par exemple).
[01 17] A l’étape 804, l’estimation P peut être retournée en entrée du premier prédicteur 101 qui, en réponse à cette donnée d’entrée peut raffiner l’estimation Q (en réitérant les étapes 700 à 704). Chaque itération de la prédiction de valeur P, tous les paramètres d’entrée peuvent être mis à jour (ex. paramètres météo) pour améliorer la précision de la prédiction. Les prédictions de la valeur P peuvent être itérée périodiquement, selon une période choisie (par exemple toutes les N minutes pendant la durée de vol pour une estimation d’un ETA).
[01 18] Dans les modes de réalisation décrits ci-dessus en relation avec un exemple d’application de l’invention à une prédiction de IΈTA, le réseau de neurone 2A du premier prédicteur 101 peut recevoir en entrée des données relatives à un ensemble d’aéroports, à titre d’exemple non limitatif.
[01 19] En variante, la prédiction peut être améliorée en utilisant pour le premier prédicteur 101 une pluralité de réseaux de neurones élémentaires 2Ai relatifs chacun à un aéroport spécifique, comme illustré dans l’exemple de la figure 10.
[0120] La figure 10 montre par exemple 8 prédicteurs 101 à base de réseaux de neurones élémentaires (2A-1 à 2A-8), chaque réseau de neurone étant spécifique à un aéroport donnée (CGE, Atlanta, Mila, Guanghzhou, Heathrow, CdG, JFK, Abu Dhabi). Chaque réseau de neurones élémentaire 2A-i est entraîné conjointement avec le deuxième prédicteur 102 comme décrit ci-avant en utilisant les données d’entrée spécifiques à l’aéroport spécifique associé, ce qui permet de mettre à jour les poids associés à chaque réseau de neurone élémentaire pendant l’apprentissage. Les poids de chaque réseau de neurones élémentaire 2A-i ne sont raffinés qu’avec les données qui correspondent uniquement à l’aéroport spécifique associé.
[0121 ] Dans la phase de généralisation, les poids des différents réseaux de neurones 2A-i et 2B sont gelés et pour chaque vol d’avion considéré entre un aéroport de
départ et un aéroport d’arrivée, seul le réseau de neurone 2A-i correspondant à l’aéroport d’arrivée de l’avion est utilisé.
[0122] L’homme du métier comprendra que le systèmes ou des sous-système selon les modes de réalisation de l’invention peuvent être mis en oeuvre de diverses manières par matériel (« hardware »), logiciel, ou une combinaison de matériel et de logiciels, notamment sous la forme de code de programme pouvant être distribué sous la forme d'un produit de programme, sous diverses formes. En particulier, le code de programme peut être distribué à l'aide de supports lisibles par ordinateur, qui peuvent inclure des supports de stockage lisibles par ordinateur et des supports de communication. Les procédés décrits dans la présente description peuvent être notamment implémentés sous la forme d’instructions de programme d’ordinateur exécutables par un ou plusieurs processeurs dans un dispositif informatique d'ordinateur. Ces instructions de programme d’ordinateur peuvent également être stockées dans un support lisible par ordinateur.
[0123] Par ailleurs, l'invention n'est pas limitée aux modes de réalisation décrits ci- avant à titre d’exemple non limitatif. Elle englobe toutes les variantes de réalisation qui pourront être envisagées par l'homme du métier. En particulier, l’homme du métier comprendra que l’invention n’est pas limitée à la prédiction de grandeurs ETA ni plus généralement au contrôle de trafic aérien, et peut s’appliquer à d’autres domaines. L’homme du métier comprendra que l’invention n’est pas limitée non plus aux exemples de fonctions de coûts et de minimisation de fonction de coûts décrites ci-avant.
Claims
1. Dispositif de prédiction (100) de la valeur d’une grandeur destinée à être utilisée par un système de contrôle implémenté sur ordinateur, la grandeur dépendant de plusieurs paramètres, les paramètres comprenant un paramètre non explicite, caractérisé en ce que le dispositif de prédiction comprend un premier prédicteur (101 ) à base de réseau de neurones (2A) configuré pour calculer une estimation dudit paramètre non-explicite et un deuxième prédicteur (102) à base de réseau de neurones (2B) configuré pour calculer une estimation de ladite valeur de la grandeur à partir de l’estimation du paramètre non-explicite, les deux prédicteurs (101 , 102) recevant un ensemble de données d’entrée, chaque réseau de neurones (2A, 2B) étant associé à un ensemble de poids, le dispositif de prédiction (100) étant configuré pour appliquer une pluralité d’itérations d’une unique fonction
d’apprentissage aux deux prédicteurs (101 , 102), la fonction d’apprentissage comprenant :
- un bloc de propagation vers l’avant (31 ) configuré pour calculer, en fonction des données d’entrée des deux prédicteurs (101 ; 102), le gradient d’une fonction de minimisation d’une fonction de coût du premier prédicteur (101 ) ;
- un bloc de rétropropagation (32) configuré pour mettre à jour les poids des réseaux de neurones des deux prédicteurs en effectuant une rétropropagation des gradients calculés par le bloc de propagation avant,
le dispositif de prédiction (100) étant configuré pour estimer ladite valeur de la grandeur à un instant futur, après lesdites itérations de la fonction d’apprentissage, en appliquant des données d’entrées aux réseaux de neurones des deux prédicteurs (101 , 102) en utilisant les poids mis à jour par la fonction d’apprentissage.
2. Dispositif selon la revendication 1 caractérisé en ce que le bloc de
rétropropagation (32) est configuré pour mettre à jour les poids du deuxième prédicteur (102), tandis que les poids du premier prédicteur (101 ) sont figés.
3. Dispositif selon l’une des revendications 1 ou 2, caractérisé en ce que le premier prédicteur (101 ) comprend un réseau de neurones recevant des données d’entrée génériques.
4. Dispositif selon l’une des revendications 1 ou 2, caractérisé en ce que le premier prédicteur (101 ) comprend un ensemble de réseaux de neurones
élémentaires recevant chacun des données d’entrée spécifiques.
5. Dispositif selon l’une des revendications précédentes, caractérisé en ce que le deuxième prédicteur (102) est configuré pour appliquer la valeur prédite en entrée du premier prédicteur (101 ).
6. Dispositif selon l’une quelconque des revendications précédentes caractérisé en ce que le premier prédicteur (101 ) est configuré pour diffuser la valeur de sortie du paramètre non explicite à des systèmes externes.
7. Dispositif selon l’une quelconque des revendications précédentes caractérisé en ce que le système de contrôle est un système de contrôle aérien, le dispositif de prédiction étant configuré pour prédire le temps d’arrivée d’un avion donné effectuant une trajectoire entre un point de départ et un point d’arrivée, le paramètre non explicite étant relatif au point d’arrivée de l’avion.
8. Dispositif selon la revendication 7, caractérisé en ce que le paramètre non explicite est le taux d’encombrement au niveau du point d’arrivée.
9. Dispositif selon la revendication 7, caractérisé en ce que le paramètre non explicite est un paramètre global de retard.
10. Dispositif selon l’une des revendications 7 à 9, caractérisé en ce que les données d’entrée du premier prédicteur (101 ) comprennent des caractéristiques relatives audit avion donné, des informations relatives aux avions arrivant au niveau du point d’arrivée, et le nombre maximal d’avions associé au point d’arrivée.
11. Dispositif selon la revendication 10, caractérisé en ce que les données d’entrée relatives aux avions arrivant au niveau du point d’arrivée comprennent le nombre et le type d’avions prévus à l’atterrissage au niveau du point d’arrivée par plage temporelle.
12. Dispositif selon l’une des revendications précédentes, caractérisé en ce que les données d’entrée du deuxième prédicteur (102) comprennent des
caractéristiques relatives audit avion donné, des informations relatives aux avions arrivant au niveau du point d’arrivée, et des informations de capacité associées au point d’arrivée.
13. Dispositif selon l’une des revendications 7 à 12, caractérisé en ce que les données d’entrée du deuxième prédicteur comprennent un créneau horaire
représentant la plage d’atterrissage prévue pour ledit avion donné, et un historique de valeurs du paramètre non explicite sur une période de temps passé.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1908665A FR3099612B1 (fr) | 2019-07-31 | 2019-07-31 | Dispositif et procede de prediction |
PCT/EP2020/071207 WO2021018865A1 (fr) | 2019-07-31 | 2020-07-28 | Dispositif et procede de prediction |
Publications (1)
Publication Number | Publication Date |
---|---|
EP4004824A1 true EP4004824A1 (fr) | 2022-06-01 |
Family
ID=69903208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP20774881.5A Pending EP4004824A1 (fr) | 2019-07-31 | 2020-07-28 | Dispositif et procede de prediction |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220277201A1 (fr) |
EP (1) | EP4004824A1 (fr) |
AU (1) | AU2020319653A1 (fr) |
FR (1) | FR3099612B1 (fr) |
WO (1) | WO2021018865A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11960904B2 (en) * | 2021-11-22 | 2024-04-16 | Accenture Global Solutions Limited | Utilizing machine learning models to predict system events based on time series data generated by a system |
-
2019
- 2019-07-31 FR FR1908665A patent/FR3099612B1/fr active Active
-
2020
- 2020-07-28 WO PCT/EP2020/071207 patent/WO2021018865A1/fr unknown
- 2020-07-28 US US17/631,487 patent/US20220277201A1/en active Pending
- 2020-07-28 AU AU2020319653A patent/AU2020319653A1/en active Pending
- 2020-07-28 EP EP20774881.5A patent/EP4004824A1/fr active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2021018865A1 (fr) | 2021-02-04 |
AU2020319653A1 (en) | 2022-03-10 |
FR3099612B1 (fr) | 2022-12-16 |
FR3099612A1 (fr) | 2021-02-05 |
US20220277201A1 (en) | 2022-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11842281B2 (en) | Reinforcement learning with auxiliary tasks | |
CN110073426B (zh) | 估计到达时间的系统和方法 | |
CN112400192B (zh) | 多模态深度交通信号控制的方法和系统 | |
EP3273272A1 (fr) | Systèmes et procédés de modelage nequick au moyen de réseaux neuronaux | |
CN110431544B (zh) | 行驶时间和距离预估系统和方法 | |
JP6516660B2 (ja) | 異なる周期階層のデータによる学習を行うデータ予測装置、情報端末、プログラム及び方法 | |
US10902311B2 (en) | Regularization of neural networks | |
EP2991274B1 (fr) | Procédé d'exécution de services en temps réel adaptatif, notamment de gestion de vol et système temps réel mettant en oeuvre un tel procédé | |
EP4066224A1 (fr) | Dispositif et procede d'aide a la decision pour la gestion de conflits aeriens | |
EP3671391A1 (fr) | Optimisation d'un modèle paramétrique de performances d'un aéronef | |
US11556827B2 (en) | Transferring large datasets by using data generalization | |
WO2021018865A1 (fr) | Dispositif et procede de prediction | |
Miletić et al. | State complexity reduction in reinforcement learning based adaptive traffic signal control | |
WO2020048770A1 (fr) | Prédiction d'un paramètre de recalage cartographique par apprentissage profond | |
Li et al. | Cycle-based signal timing with traffic flow prediction for dynamic environment | |
JP2023179397A (ja) | リアルタイム航空機飛行遅延予測 | |
US11631055B2 (en) | Multi-task deep learning of time record events | |
WO2022117875A1 (fr) | Système et procédé de contrôle de véhicule à base d'apprentissage machine | |
EP4165619A1 (fr) | Systeme et methode pour la determination amelioree de parametres de trajectoire d'aeronefs | |
CN116453333B (zh) | 用于预测主要车流路径的方法及模型训练方法 | |
FR3144363A1 (fr) | Système et procédé de prédiction de données utilisant un apprentissage de données multivariées par filtrage collaboratif | |
FR3134363A1 (fr) | Procédé de prédiction de trajectoires de piétons pour le renforcement de la sécurité de la conduite autonome d’un véhicule, véhicule muni de moyens pour la mise en œuvre de ce procédé | |
De Oliveira et al. | Reroute Prediction Service | |
FR3084506A1 (fr) | Procede de commande d'un vehicule automobile pour la formation de pelotons | |
FR3138718A1 (fr) | Dispositif électronique et procédé de traitement de données comportant au moins un modèle d’intelligence artificielle auto-adaptatif avec apprentissage local, système électronique et programme d’ordinateur associés |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20220125 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) |