Systems, methods, and apparatus for improving aircraft traffic control
The ART prediction system uses machine learning to predict aircraft traffic data in airspace segments and generates accurate traffic counts, solving the problem of low efficiency in aircraft traffic control in existing technologies and achieving more efficient flight management and cost reduction.
Patent Information
- Application Number
- CN202110234050.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-04-07
- Filing Date
- 2021-03-03
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2041-03-03
AI Technical Summary
The existing aircraft traffic control system is unable to effectively manage the increased aircraft traffic, resulting in increased flight delays and costs for airlines, passengers and other stakeholders.
The ART prediction system uses a machine learning model to predict aircraft traffic data in airspace segments, generate accurate aircraft traffic counts, and adjust flight plans based on this.
It improves the efficiency of aircraft traffic control, reduces flight delays and reduces related costs.
Smart Images

Figure CN113496629B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to aircraft and, more particularly, to systems, methods, and apparatus for improving aircraft traffic control. Background Art
[0002] The National Airspace System (NAS) manages airspace, navigational facilities, and airports in the United States, while different airspace systems govern the rest of the world. Civil aviation has experienced significant growth in recent years, particularly within the NAS, and is projected to continue growing in the coming years. However, the NAS is unable to efficiently manage this increased aircraft traffic, leading to an expected increase in flight delays, which imposes costs on airlines, passengers, and other stakeholders. Summary of the Invention
[0003] An example apparatus for improving aircraft traffic control is disclosed herein. The apparatus includes: a network interface for obtaining air route traffic data associated with a plurality of aircraft flying in an airspace segment, the air route traffic data associated with a first time period; a database controller for generating a first database entry by mapping one or more extracted portions of the air route traffic data to a first database entry field included in the first database entry, the first database entry field associated with a corresponding aircraft from the plurality of aircraft; and an air route traffic (ART) segment service for executing a machine learning model using the database entry to generate a first aircraft traffic count for the airspace segment during the first time period, the database entry including the first database entry; in response to selecting a first machine learning model from the plurality of machine learning models based on the first aircraft traffic count, executing the first machine learning model to generate a second aircraft traffic count for the airspace segment during a second time period subsequent to the first time period, and sending the second aircraft traffic count to a computing device to cause an adjustment to a flight plan of a first aircraft from the plurality of aircraft.
[0004] Disclosed herein is an example non-transitory computer-readable storage medium for improving aircraft traffic control. The example non-transitory computer-readable storage medium includes instructions that, when executed, cause a machine to at least perform the following operations: obtain airway traffic data associated with a plurality of aircraft flying in an airspace segment, the airway traffic data associated with a first time period; generate a first database entry having a first database entry field by mapping one or more extracted portions of the airway traffic data to the first database entry field, the first database entry field associated with a corresponding aircraft from the plurality of aircraft; execute a plurality of machine learning models using the database entry to generate a first aircraft traffic count for the airspace segment during the first time period, the database entry including the first database entry; in response to selecting a first machine learning model from the plurality of machine learning models based on the first aircraft traffic count, execute the first machine learning model to generate a second aircraft traffic count for the airspace segment during a second time period subsequent to the first time period, and send the second aircraft traffic count to a computing device to cause an adjustment to a flight plan of a first aircraft from the plurality of aircraft.
[0005] An example method for improving aircraft traffic control is disclosed herein. The example method includes the following steps: obtaining airway traffic data associated with a plurality of aircraft flying in an airspace segment, the airway traffic data associated with a first time period; generating a first database entry by mapping one or more extracted portions of the airway traffic data to a first database entry field included in a first database entry, the first database entry field associated with a corresponding aircraft from the plurality of aircraft; executing a plurality of machine learning models using the database entry to generate a first aircraft traffic count for the airspace segment during the first time period, the database entry including the first database entry; in response to selecting a first machine learning model from the plurality of machine learning models based on the first aircraft traffic count, executing the first machine learning model to generate a second aircraft traffic count for the airspace segment during a second time period subsequent to the first time period, and sending the second aircraft traffic count to a computing device to cause an adjustment to a flight plan of a first aircraft from the plurality of aircraft. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Figure 1 Depicted is an example implementation of an Air Route Traffic (ART) environment that includes an ART prediction system to facilitate air route traffic management.
[0007] Figure 2 Depicts including Figure 1An example traffic count determination system of an example implementation of an ART prediction system includes a database controller and an ART prediction controller including an ART segment service.
[0008] Figure 3 yes Figure 2 Example implementation of a database controller for .
[0009] Figure 4 yes Figure 2 An example implementation of the ART segment service.
[0010] Figure 5 is Figure 2 and / or Figure 3 The database controller generates a sample database entry.
[0011] Figure 6 An example ART bucket curve is depicted as a function of the number of time buckets and bucket count.
[0012] Figure 7 Depicted is an example of Figure 2 and / or Figure 4 An example graphic of the outlier removal processing performed by the ART segment service.
[0013] Figure 8A Depicted through Figure 2 and / or Figure 4 An example ART segment curve before the ART segment service performs an example outlier removal operation.
[0014] Figure 8B Depicts Figure 8A Through Figure 2 and / or Figure 4 An example ART segment curve after the ART segment service performs an example outlier removal operation.
[0015] Figure 9 is a schematic illustration illustrating adjusting a flight plan of an aircraft based on the examples disclosed herein.
[0016] Figure 10 Depicted are example source code representing example computer-readable instructions that may be executed by Figure 1 and / or Figure 4 ART segment services and / or more generally by Figure 1 and / or Figure 2 The ART forecasting system is executed to determine traffic counts for the airway traffic segment of interest.
[0017] Figure 11is a flowchart representing example machine readable instructions that may be executed to implement Figure 1 and / or Figure 2 ART forecasting system to determine traffic counts for airway traffic segments.
[0018] Figure 12 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 and / or Figure 3 The database controller and / or more generally Figure 1 and / or Figure 2 ART prediction system to generate a sample preprocessing database.
[0019] Figure 13 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 and / or Figure 3 The database controller and / or more generally Figure 1 and / or Figure 2 ART prediction system to determine traffic counts for airway traffic segments based on relevant information.
[0020] Figure 14 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 and / or Figure 4 ART sector services and / or more generally Figure 1 and / or Figure 2 ART prediction system to select a machine learning model to train using a database preprocessed with examples.
[0021] Figure 15 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 and / or Figure 4 ART sector services and / or more generally Figure 1 and / or Figure 2 ART prediction system to determine the training data used to train the machine learning model.
[0022] Figure 16 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 ART predictive controller and / or more generally Figure 1 and / or Figure 2 An ART prediction system is provided to determine traffic counts based on queries from a computing device or system.
[0023] Figure 17is a flowchart representing example machine readable instructions that may be executed to implement Figure 1 and / or Figure 2 ART prediction system to process ART data.
[0024] Figure 18 is a flowchart representing example machine readable instructions that may be executed to implement Figure 2 ART predictive controller and / or more generally Figure 1 and / or Figure 2 ART prediction system to calculate airspace traffic counting parameters.
[0025] Figure 19 is constructed to execute Figures 10 to 18 Example machine readable instructions to implement Figure 1 and / or Figure 2 Block diagram of an example processing platform for an ART prediction system.
[0026] These drawings are not drawn to scale. Generally, the same reference numerals are used throughout the drawings and the associated description to refer to the same or like parts. DETAILED DESCRIPTION
[0027] Descriptors such as "first," "second," and "third" are used herein when identifying multiple elements or components that can be referenced individually. Unless otherwise specified or understood based on the context of use, such descriptors do not imply any meaning of assigning priority, physical order, or arrangement to a list, or ordering in time, but are merely used as labels to individually reference multiple elements or components to facilitate understanding of the disclosed examples. In some examples, the descriptor "first" may be used to reference an element in the detailed description, while a different descriptor such as "second" or "third" may be used to reference the same element in the claims. In such cases, it should be understood that such descriptors are merely used to facilitate ease of reference to multiple elements or components.
[0028] In air traffic control (e.g., aircraft traffic control, airspace traffic control, etc.), an area control center (ACC), also known as an en-route center, is a facility responsible for controlling aircraft flying at altitude within a specific airspace volume (e.g., a flight information region) between airport arrival and departure. The International Civil Aviation Organization (ICAO) is responsible for managing the general operations of ACCs worldwide and the airspace boundaries controlled by each ACC. Most ACCs are operated by the national governments of the countries in which they are located. The National Airspace System (NAS) manages such ACCs in the United States. ACCs in the United States are called air route traffic control centers (ARTCCs). Today, NAS partially manages the airspace, navigation facilities, and airports in the United States by managing 22 ARTCCs. For example, an ARTCC of the NAS typically receives traffic controlled by a terminal control center or other ARTCCs and ultimately passes traffic to the control of the terminal control center or other ARTCCs.
[0029] The airspace controlled and managed by NAS can be subdivided into multiple areas or segments (e.g., air route traffic segments, airspace segments, etc.). ARTCC can manage multiple segments. For example, ARTCC can manage flight information regions comprising two to nine segments. Each ARTCC is equipped with a group of controllers (controllers) (e.g., air traffic controllers) who have been trained for all segments of the flight information region. The controller uses radar to monitor flight progress and instructs the aircraft to perform heading adjustments (e.g., flight route or flight plan adjustments) as needed to maintain separation from other aircraft. The pilot may accept or refuse altitude adjustments or heading changes for reasons including avoiding turbulence or adverse weather conditions. Typically, the ARTCC obtains advance notice of the arrival and intention of the aircraft from a flight plan or flight route submitted in advance.
[0030] Because the NAS air traffic control model requires significant involvement from both pilots and controllers, the dramatic growth of civil aviation in recent years has exposed its inefficiencies. The massive increase in the number of aircraft controllers must manually track, and the corresponding frequency of aircraft entering and exiting flight information regions, leads to frequent flight delays, which can be further compounded by adverse weather conditions. Consequently, the projected growth trend over the coming years will only exacerbate these inefficiencies. This inefficiency will lead to an increase in flight delays, which incurs costs for airlines, passengers, and other stakeholders.
[0031] The NAS, managed by the Federal Aviation Administration (FAA), coordinates and / or otherwise manages air route traffic (ART) using the Traffic Flow Management (TFM) data service, which aggregates ART data from ARTCCs located throughout the United States. The TFM data service provides near-real-time streaming flight and flow data to users of the TFM data service (e.g., airlines, Air Navigation Service Providers (ANSPs), etc.). However, the data delivered to users is (1) uncorrelated and noisy, (2) substantial in volume, and (3) generated at high frequencies, all of which can prevent human personnel from efficiently determining aircraft traffic control decisions.
[0032] The TFM data service collects and / or otherwise obtains ART data related to a flight information region. ART data may include Flight Information Exchange Model (FIXM) data or messages (e.g., FIXM data, FIXM messages, FIXM data messages, data messages, etc.). FIXM is a data exchange model that can capture globally standardized flight and flow information. FIXM messages are formatted using Extensible Markup Language (XML). FIXM messages may include ART data such as the aircraft's flight number, the aircraft's location (e.g., altitude, latitude, longitude, sector, etc.), aircraft characteristics or parameters (e.g., aircraft brand or model, airspeed, etc.), a timestamp corresponding to the generation of the ART data, and / or combinations thereof. For example, an aircraft may obtain and / or otherwise collect data of interest associated with the aircraft, compile the data into a FIXM message, and send the FIXM message to the ARTCC with which the aircraft is in contact or communication. Therefore, the ARTCC receives millions of FIXM messages every day and billions of FIXM messages every year, wherein the FIXM messages correspond to airway traffic within the flight information region managed by NAS.
[0033] Examples disclosed herein include an ART prediction system that improves aircraft traffic control by accurately predicting the count or volume of aircraft for a particular airspace segment managed by an airspace system such as a NAS (e.g., predicting with a sufficiently small standard deviation, predicting with a standard deviation of less than one, etc.). The example ART prediction system can parse, correlate, and index incoming ART data from a TFM data service to be stored in a first database (e.g., a raw ART data database). The example ART prediction system can adaptively maintain the first database for efficient query processing. The example ART prediction system can extract and / or otherwise identify significant features from the ART data stored in the first database and store the significant features in a second database (e.g., a pre-processed database). The example ART prediction system can also identify other significant features, such as historical trajectories, segment boundary crossings, and / or weather information.
[0034] In some disclosed examples, an ART prediction system inputs features of interest into an artificial intelligence (AI)-based computer model to efficiently predict accurate counts (e.g., aircraft counts, sector counts, traffic counts, etc.) with sufficiently small standard deviations, error margins, etc. As used herein, the terms "sector count," "sector traffic count," and "traffic count" refer to the number of aircraft in an airspace sector during a discretized time interval (e.g., a time bucket) and may be used interchangeably. An example ART prediction system may select an AI-based computer model from a plurality of AI-based computer models to predict future traffic counts for a sector.
[0035] In some disclosed examples, the ART prediction system can select an AI-based computer model by using a cross-validation technique. In some disclosed examples, the ART prediction system can select an AI-based computer model by executing the multiple AI-based computer models on ART data with known traffic counts and comparing the traffic counts predicted by the AI-based computer models with the known traffic counts. For example, the ART prediction system can execute the multiple AI-based computer models on the following ART data: ART data associated with a segment during a first time segment of interest (e.g., a 15-minute time interval, a 30-minute time interval, etc.). In such an example, the ART prediction system can predict a first traffic count for the first segment of interest during the first time segment. The example ART prediction system can compare the first traffic count with the known traffic count associated with the first segment during the first time segment. The example ART prediction system can identify one of the AI-based computer models to be trained to predict future traffic counts based on which of the AI-based computer models generates traffic counts with the smallest error, generates traffic counts with the highest accuracy, etc.
[0036] In some disclosed examples, the ART prediction system uses previously collected and / or newly incoming ART data to train and execute the identified AI-based computer model to predict and / or otherwise generate the traffic count of the section of interest. In some disclosed examples, the ART prediction system sends the traffic count of the section of interest to a computing system (e.g., an ARTCC computing system, an airline computing system, etc.). In such disclosed examples, the ART prediction system can send instructions, recommendations, etc. to the computing system to adjust the air route traffic of the section of interest based on the traffic count of the section of interest. For example, the ARTCC can guide an aircraft with a first flight plan associated with flying over a first section (e.g., a first set of one or more waypoints) to adjust a second flight plan associated with flying over a second section (e.g., a second set of one or more waypoints), wherein the first section is a congested section and the second section is an uncongested or low congested section. In some disclosed examples, the first flight plan of the aircraft can be adjusted while the aircraft is parked on the ground before executing the first flight plan. In some disclosed examples, a first flight plan of an aircraft may be adjusted while the aircraft is in flight executing the first flight plan.
[0037] AI (including machine learning (ML), deep learning (DL), and / or other artificial machine-driven logic) enables a machine (e.g., a computer, computing system, logic circuit, etc.) to process input data using a model to generate output based on patterns and / or associations previously learned by the model through a training process. For example, the model can be trained with data to recognize patterns and / or associations, and follow such patterns and / or associations when processing input data, so that other inputs result in outputs consistent with the recognized patterns and / or associations.
[0038] There are many different types of machine learning models and / or machine learning architectures. In the examples disclosed herein, in addition to neural networks such as recurrent neural networks (RNNs), linear regression, nonlinear regression, and overall regression models are used. Such a regression model can implement a multi-layer perceptron (MLP). MLP is a supervised learning algorithm that learns a function by training on a data set. When given a set of features and targets, MLP can learn a nonlinear function approximator for regression (and / or classification in other examples). MLP can be trained using backpropagation without an activation function in the output layer, or it can be viewed as using the identity function as the activation function. Therefore, MLP can use squared error as a loss function, and the output can be a set of continuous values.
[0039] RNN corresponds to a type of artificial neural network in which the connections between nodes form a directed graph along a time series. Advantageously, RNN can therefore exhibit temporal dynamic behavior (which is different from feedforward neural networks) and can use the internal state (memory) of RNN to process input sequences. Typically, machine learning models / architectures suitable for use in the example methods disclosed herein will be linear regression, nonlinear regression, holistic regression, RNN, etc. However, in addition or alternatively, other types of machine learning models may be used, such as convolutional neural networks (CNN), deep neural networks (DNN), graph neural networks, etc.
[0040] Typically, implementing an ML / AI system involves two phases, a learning / training phase and an inference phase. In the learning / training phase, a training algorithm is used to train a model, for example, based on training data (e.g., ART data), to perform operations based on patterns and / or associations. Typically, a model includes internal parameters that guide how input data is transformed into output data, such as by transforming input data into output data through a series of nodes and connections within the model. In addition, hyperparameters are used as part of the training process to control how learning is performed (e.g., learning rate, number of layers to be used in the machine learning model, etc.). Hyperparameters are defined as training parameters that are determined before the training process is started.
[0041] Different types of training can be performed based on the type of ML / AI model and / or the expected output. For example, supervised training uses inputs and corresponding expected (e.g., labeled) outputs to select parameters for the ML / AI model that reduce model error (e.g., by iterating on combinations of selected parameters). As used herein, labeling refers to the expected output of the machine learning model (e.g., classification, expected output value, etc.). Alternatively, unsupervised training (e.g., used for deep learning, subsets of machine learning, etc.) involves inferring patterns from the inputs to select parameters for the ML / AI model (e.g., without the benefit of expected (e.g., labeled) outputs).
[0042] In the examples disclosed herein, supervised learning is used to train the ML / AI model. However, any other training algorithm may be used in addition or alternatively. In the examples disclosed herein, training is performed until an acceptable amount of error is obtained (e.g., one or less standard deviation of error) and / or additional ART data identified as ART learning data has not yet been processed. In the examples disclosed herein, training is performed at a central facility representing one or more physical and / or virtual servers. Training is performed using hyperparameters that control how learning is performed (e.g., learning rate, number of layers to be used in the machine learning model, etc.). In some disclosed examples, retraining may be performed in response to identifying additional ART learning data for training.
[0043] Training is performed using training data. In some examples, the training data includes segment information associated with one or more segments managed by the NAS. For example, the segment information can include: the number of aircraft, including the first aircraft, in a segment (e.g., a time bucket) or a time period, an entry time associated with the first aircraft indicating that the first aircraft entered the segment (e.g., a segment entry time), an exit time associated with the first aircraft indicating that the first aircraft left the segment (e.g., a segment exit time), etc., and / or combinations thereof. In the examples disclosed herein, the training data is derived from the FAA TFM data service and / or different data services related to the FAA and / or ICAO. Because supervised training is used, the training data is labeled. The labels are applied to the training data by a computing system that has determined traffic counts associated with the segment of interest.
[0044] Once training is complete, the model is deployed as an executable construct that processes inputs and provides outputs based on the network of nodes and connections defined in the model. The model is stored at a central facility that can be accessed by computing systems that subscribe to access the ART prediction system. The model can then be executed by the ART prediction system.
[0045] Once trained, the deployed model can be run in the inference phase to process data (e.g., ART data). In the inference phase, the data to be analyzed (e.g., real-time data or near real-time data from the FAA TFM data service) is input into the model, and the model is executed to create an output. This inference phase can be thought of as the AI "thinking" or processing to generate an output based on what the AI has learned from training (e.g., by executing the model to apply the learned patterns and / or associations to real-time data). In some examples, the input data is subjected to pre-processing before being used as input to the machine learning model. In addition, in some examples, after the AI model generates output data, the output data can be subjected to post-processing to transform the output into a useful result (e.g., a display of data, instructions to be executed by a machine, etc.).
[0046] In some examples, the output of the deployed model can be captured and provided as feedback. By analyzing the feedback, the accuracy of the deployed model can be determined. If the feedback indicates that the accuracy of the deployed model is less than a threshold or other criterion, the feedback and updated training dataset, hyperparameters, etc. can be used to trigger training of the updated model to generate an updated deployed model.
[0047] Figure 1An example implementation of an air route traffic management environment 100 including an air route traffic (ART) prediction system 104 that facilitates ART management is depicted. For example, the ART management environment 100 may correspond to NAS, ICAO, etc. In such an example, the ART management environment may correspond to an aircraft traffic control environment, an aircraft traffic control system, etc.
[0048] exist Figure 1 In the illustrated example, the ART management environment 100 includes example air route traffic control centers (ARTCCs) 105A to 105B, including a first example ARTCC 105A and a second example ARTCC 105B. Alternatively, the ART management environment 100 may include more than one example ARTCC. Figure 1 The ARTCCs 105A to 105B depicted in FIG are less or more ARTCCs. Figure 1 In the embodiment, each of the ARTCCs 105A to 105B may correspond to and / or otherwise represent one or more processor platforms, such as servers (e.g., computer servers). For example, the first ARTCC 105A may correspond to one or more servers and / or be implemented using one or more servers in other ways.
[0049] exist Figure 1 In the example shown, the ARTCCs 105A to 105B are managed by NAS. Alternatively, the ARTCCs 105A to 105B may be managed by a different entity such as ICAO. Figure 1 In the embodiment of the present invention, ARTCCs 105A to 105B manage flight information regions including multiple sectors (e.g., two sectors, nine sectors, etc.). For example, the first ARTCC 105A can manage a first flight information region including two sectors, and the second ARTCC 105B can manage a second flight information region including nine sectors, wherein the first flight information region is different from the second flight information region. In other examples, the first ARTCC 105A and / or the second ARTCC 105B can manage different numbers of sectors. Each of the ARTCCs 105A to 105B can house a group of controllers (e.g., air traffic controllers) who are trained for the sectors of the corresponding flight information regions in the flight information regions.
[0050] exist Figure 1 In the illustrated example, the ARTCCs 105A-105B receive and / or otherwise obtain ART data from one or more example aircraft 106A-106F. Figure 1The aircraft 106A through 106F include a first example aircraft 106A, a second example aircraft 106B, a third example aircraft 106C, a fourth example aircraft 106D, a fifth example aircraft 106E, and a sixth example aircraft 106F. Figure 1 The aircraft 106A to 106F are manned commercial aircraft (e.g., cargo planes, passenger planes, etc., with one or more human pilots on board to control and / or otherwise fly the aircraft). Figure 1 One or more of the aircraft 106A to 106F may include an unmanned aerial vehicle (UAV) (e.g., a drone, a remotely piloted aircraft system (RPAS), etc.). Alternatively, the ART management environment 100 may include more than Figure 1 Fewer or more aircraft 106A through 106F are depicted.
[0051] exist Figure 1 In the example shown, the first ARTCC 105A communicates with the first aircraft 106A and the second aircraft 106B. For example, when the first aircraft 106A and / or the second aircraft 106B are in a section monitored by the first ARTCC 105A, the first ARTCC 105A can track the first aircraft 106A and / or the second aircraft 106B via radar. In other examples, the first aircraft 106A and / or the second aircraft 106B can send (e.g., wirelessly send) data to the first ARTCC 105A. In such an example, the data may include one or more data messages (e.g., FIXM messages, FIXM data messages, etc.) based on the FIXM format and / or otherwise having the FIXM format. Similarly, in Figure 1 In FIG. 1 , the second ARTCC 105B communicates with the third aircraft 106C and the fourth aircraft 106D. Alternatively, Figure 1 The first ARTCC 105A may communicate with fewer or more aircraft than the first aircraft 106A and the second aircraft 106B depicted in FIG. Figure 1 The second ARTCC 105B may communicate with fewer or more aircraft than the third aircraft 106C and the fourth aircraft 106D depicted in FIG.
[0052] In some examples, aircraft 106A-106D obtain and / or otherwise aggregate data of interest associated with aircraft 106A-106D to be transmitted to corresponding ARTCCs 105A-105B. For example, first aircraft 106A may identify data of interest (e.g., aircraft data, flight data, etc.) that is collected, determined, and / or otherwise generated by a computing system (e.g., a flight control computer (FCC), a remote electronics unit (REU), etc.) of first aircraft 106A. In such an example, the computing system of first aircraft 106A may identify aircraft data that includes an aircraft number or flight number of first aircraft 106A, a make and / or model of first aircraft 106A, and / or the like. In some examples, the computing system of first aircraft 106A may identify the following aircraft data: the aircraft data includes one or more characteristics or parameters associated with first aircraft 106A (e.g., flight characteristics, flight parameters, etc.), such as the position or orientation of first aircraft 106A (e.g., altitude, latitude, longitude, etc., and / or combinations of these), the airspeed of first aircraft 106A, waypoint information (e.g., previous waypoint, current or immediate waypoint, upcoming waypoint, etc.), etc.
[0053] In some examples, aircraft 106A to 106D formats, packages, and / or otherwise compiles aircraft data into one or more FIXM messages. For example, first aircraft 106A may generate one or more FIXM messages based on aircraft data collected, determined, and / or otherwise generated by a computing system of first aircraft 106A. In some examples, aircraft 106A to 106D transmits the one or more FIXM messages to a corresponding ARTCC in 105A to 105B, with the transmitting aircraft of aircraft 106A to 106D being in contact or communication with the corresponding ARTCC. For example, the FIXM messages transmitted by aircraft 106A to 106D to ARTCC 105A to 105B may correspond to ART data.
[0054] exist Figure 1 In the illustrated example, the ART management environment 100 includes an example ART data system 108 that aggregates and / or otherwise obtains ART data from the ARTCCs 105A and 105B. For example, the first ARTCC 105A may send ART data obtained from the first aircraft 106A and the second aircraft 106B to the ART data system 108, and the second ARTCC 105B may send ART data obtained from the third aircraft 106C and the fourth aircraft 106D to the ART data system 108. Figure 1The ART data system 108 may correspond to and / or otherwise represent one or more processor platforms that collect ART data from the ARTCCs 105A-105B. Figure 1 ART data system 108 may correspond to the TFM data service managed by the FAA.
[0055] exist Figure 1 In the illustrated example, the ART management environment 100 includes a first example network (Network 1) 110 to facilitate communication (e.g., transmission and / or reception of data) between at least one of the ART prediction system 104, the ART data system 108, the first example computing system 112, or the second example computing system 114. Figure 1 The first network 110 of the illustrated example comprises a System Wide Information Management (SWIM) network. SWIM is a global air traffic management (ATM) industry initiative designed to coordinate the exchange of aviation, flight, and weather information among all airspace users and stakeholders. Within the FAA, the FAA SWIM program is a high-level technical program designed to facilitate greater sharing of ATM system information, such as airport operational status, flight data, special-use airspace status, NAS restrictions, weather information, and the like. In some examples, the FAA SWIM program can coordinate and / or otherwise facilitate the exchange of weather data from the National Oceanic and Atmospheric Administration (NOAA). In such an example, weather data, such as atmospheric pressure and wind speed, can be collected from NOAA via the SWIM network. In some examples, the weather data can be included in FIXM messages from the FAA SWIM program and can be obtained via the first network 110. In some examples, the weather data may be included in a different data message from NOAA (eg, not included in a FIXM message) and may be obtained via first network 110 .
[0056] In some examples, the SWIM network includes, corresponds to, and / or otherwise represents a plurality of computer servers, network switches, etc., to implement a data sharing network. Additionally or alternatively, the first network 110 may be the Internet. However, the first network 110 may be implemented using any suitable wired and / or wireless network, including, for example, one or more data buses, one or more local area networks (LANs), one or more wireless LANs, one or more cellular networks, one or more private networks, one or more public networks, etc.
[0057] exist Figure 1 In the illustrated example, the ART management environment 100 includes a first computing system 112 that directs operations of an airline's fleet of aircraft based on ART data, where the fleet includes a fifth aircraft 106E. For example, the first computing system 112 may obtain the ART data from the ART data system 108 via the first network 110. In some examples, the first computing system 112 may correspond to one or more processor platforms associated with the airline. For example, the first computing system 112 may correspond to one or more mobile devices, tablet computers, etc., which may be used by a pilot of the fifth aircraft 106E to evaluate a flight plan to be executed by the fifth aircraft 106E.
[0058] In some examples, first computing system 112 corresponds to one or more servers controlled, managed, etc. by an airline to direct the operations of the aircraft formation including fifth aircraft 106E. For example, first computing system 112 may obtain ART data via first network 110 and direct the operations of fifth aircraft 106E based on the obtained ART data. In such examples, first computing system 112 may determine a flight plan for fifth aircraft 106E based on the obtained ART data, adjust the flight plan of fifth aircraft 106E based on the obtained ART data, and so on. In some examples, first computing system 112 adjusts the flight plan of fifth aircraft 106E while fifth aircraft 106E is parked on the ground. In some examples, first computing system 112 adjusts the flight plan of fifth aircraft 106E while fifth aircraft 106E is in flight executing the flight plan.
[0059] exist Figure 1 In the illustrated example, the ART management environment 100 includes an ART prediction system 104 to improve aircraft traffic control in conjunction with control operations associated with the first through sixth aircraft 106A through 106F. In some examples, the ART prediction system 104 determines existing traffic counts for one or more sectors monitored by the ART management environment 100 based on ART data obtained from the first network 110. For example, the ART prediction system 104 can determine a current or instantaneous number of aircraft in a specified sector based on a plurality of FIXM messages obtained from the ART data system 108 and / or the first network 110 via the first network 110.
[0060] In some examples, the ART prediction system 104 determines and / or otherwise predicts traffic counts for one or more segments during a time period of interest that has not yet occurred. For example, the ART prediction system 104 can predict the number of aircraft that can fly in the segment 15 minutes in advance, 1 hour in advance, 1 week in advance, etc.
[0061] In some examples, the ART prediction system 104 determines future traffic counts in response to executing multiple ML models on the ART data obtained from the first network 110. For example, the ART prediction system 104 can execute multiple different ML models (e.g., different types of ML models) and determine which of these different ML models achieves the best performance based on specified criteria. For example, the ART prediction system 104 can use cross-validation techniques to evaluate the performance of different ML models. In other examples, the ART prediction system 104 can execute different ML models using ART data associated with a first segment with known traffic counts. In such an example, the first ML model in the ML model can be selected, identified, etc. based on the following first ML model: the first ML model determines a traffic count with a value that matches or is approximately close to (e.g., within a standard deviation) the known traffic count, or has the smallest amount of error when compared to traffic counts generated by other ML models. Advantageously, the ART prediction system 104 can execute the first ML model to determine the traffic count for the segment of interest for an upcoming period, a period that has not yet occurred, a future period, etc.
[0062] exist Figure 1 In the illustrated example, the ART management environment 100 includes an ART prediction system 104, which transmits determined, predicted, and / or other traffic counts for a sector of interest to a second computing system 114 via a second example network 116. In some examples, the second computing system 114 directs operations of an airline fleet based on the traffic counts determined by the ART prediction system 104, where the airline fleet includes a sixth aircraft 106F. For example, the second computing system 114 may obtain traffic counts for the sector of interest from the ART prediction system 104 via the second network 116. In some examples, the second computing system 114 may correspond to one or more processor platforms associated with the airline. For example, the second computing system 114 may correspond to one or more mobile devices, tablet computers, and / or the like, which may be used by a pilot of the sixth aircraft 106F to evaluate a flight plan to be executed by the sixth aircraft 106F.
[0063] In some examples, second computing system 114 corresponds to one or more servers controlled, managed, etc. by an airline to direct operations of the airline's fleet of aircraft, including sixth aircraft 106F. For example, second computing system 114 may obtain traffic counts for a plurality of sectors via second network 116 and direct operations of sixth aircraft 106F based on the obtained traffic counts. In such an example, second computing system 114 may determine a flight plan for sixth aircraft 106F based on traffic counts obtained before takeoff of sixth aircraft 106F, adjust the flight plan for sixth aircraft 106F based on traffic counts obtained while in flight, and / or combinations thereof.
[0064] exist Figure 1 In the example shown, the second network 116 is the Internet. However, the second network 116 can be implemented using any suitable wired and / or wireless network, including, for example, one or more data buses, one or more LANs, one or more wireless LANs, one or more cellular networks, one or more private networks, one or more public networks, etc.
[0065] Figure 2 Depicts including Figure 1 An example traffic count determination system 200 of an example implementation of the ART prediction system 104 is based on Figure 1 The example ART data 222 obtained by the first network 110 is used to determine the traffic count for the segment of interest. Figure 2 In the example shown, the ART prediction system 104 includes: a first example network interface 202, an example database controller 204, a first example database (original database) 206, a second example database (pre-processed database) 208, and an example ART prediction controller 210. Figure 2 In FIG. 2 , the ART prediction controller 210 includes an example second network interface 212 , an example query controller 214 , an example ART segment service 216 , an example segment data generator 218 , and an example graphic resource renderer 220 .
[0066] exist Figure 2 In the example shown, the ART prediction system 104 includes a first network interface 202, which receives Figure 1 In the example shown, the first network interface 202 implements a web server that receives and / or otherwise obtains ART data 222 via the first network 110. For example, the ART data 222 may be a Figure 1 ART Data System 108, Figure 1One or more of ARTCCs 105A to 105B, Figure 1 One or more of the aircraft 106A to 106F, etc., and / or a combination of these. Figure 2 In , ART data 222 includes one or more example messages (eg, data messages, FIXM messages, etc.) 223. Figure 2 In the example embodiment, each of the one or more messages 223 includes one or more example data fields 225. In some examples, the data fields 225, the messages 223, and / or more generally the ART data 222 include: aircraft data associated with one or more of the first aircraft 106A through the sixth aircraft 106F, weather data or information associated with one or more sectors, waypoint information, etc. For example, the first data field in the data fields 225 may be a header including data indicating the type of message. In other examples, one or more data fields in the data fields 225 may be payload fields including aircraft data, weather data, etc.
[0067] In some examples, the ART data 222 is formatted as a FIXM message. For example, the message 223 may be a FIXM message that may be sent from the first network 110 to the first network interface 202 using the Transmission Control Protocol / Internet Protocol (TCP / IP), the Hypertext Transfer Protocol (HTTP), or the like. However, in addition or alternatively, any other message format and / or protocol may be used, such as, for example, the File Transfer Protocol (FTP), the Simple Message Transfer Protocol (SMTP), the HTTP Secure (HTTPS) protocol, or the like.
[0068] exist Figure 2 In the illustrated example, the ART prediction system 104 includes a database controller 204 that generates and / or updates a first database 206, a second database 208, etc. based on ART data 222. In some examples, the database controller 204 generates the first database 206 by identifying FIXM messages 223 of interest included in the ART data 222 to be stored in the first database 206. For example, because the first database 206 can store unaltered portions or all of the FIXM messages 223, the first database 206 can represent an original database or an original ART data database.
[0069] In some examples, database controller 204 examines the header of FIXM message 223, determines the type of FIXM message 223 (e.g., message type, object type, etc.), and determines whether to store FIXM message 223 in first database 206 based on the type. In such an example, database controller 204 may determine that a first FIXM message has a first message type of an aircraft object, a second FIXM message has a second message type of a weather object, etc. For example, an aircraft object may be a data object that includes one or more data fields in data fields 225, each data field including aircraft data, such as an aircraft's flight number, an aircraft's location, aircraft characteristics, a timestamp corresponding to the generation of the aircraft data or ART data, and / or combinations thereof. In other examples, a weather object may be a data object that includes one or more data fields, each data field including weather data or weather information, such as atmospheric pressure, humidity, precipitation amount and / or type (e.g., hail, rain, snow, sleet, etc.), wind direction, wind speed, and / or combinations thereof.
[0070] In some examples, the database controller 204 stores the message 223 as a database entry in the first database 206. For example, the database controller 204 may store a portion and / or all of the first FIXM message as a first database entry having one or more database entry fields. In such an example, the database controller 204 may store the flight number included in the first FIXM message in the first database entry field of the first database entry. In other examples, the database controller 204 may store departure information (e.g., a timestamp indicating when the aircraft departs or takes off from an airport), arrival information (e.g., a timestamp indicating when the aircraft arrives or lands at an airport), the flight segment, waypoint, etc. that the aircraft is in during a certain period of time in one or more database entry fields of the first database entry. In still other examples, the database controller 204 may store other data messages (e.g., weather data messages from NOAA) in the second database entry field of the second database entry, the other data messages including atmospheric pressure, wind speed, etc., or any other type of weather data associated with a segment. In such an example, the data may be retrieved via Figure 1 The first network 110 or Figure 1 The ART management environment 100 is associated with any other network to obtain weather data messages.
[0071] Advantageously, the database controller 204 can identify relevant FIXM messages 223 based on the message type and store them in the first database 206, thereby improving aircraft traffic control by storing the relevant FIXM messages 223 rather than storing and analyzing additional FIXM messages 223 that may not be relevant to aircraft traffic control for the sector of interest. For example, the database controller 204 can discard part or all of one or more FIXM messages 223 in the ART data 222 based on the header of the FIXM messages 223, the data included in the FIXM messages 223, etc.
[0072] In some examples, database controller 204 generates second database 208 by indexing a first database entry in first database 206 based on a database entry field, updating the first database entry with segment information, generating a second database entry in second database 208 based on the segment information, and populating the second database entry based on the segment information. For example, database controller 204 may index a first database entry included in first database 206 based on a flight number. In such an example, database controller 204 may update the first database entry with segment information such as departure information, arrival information, flight segment information (e.g., segment name or identifier), waypoint information, weather information, etc. Database controller 204 may generate a second database entry in second database 208 and identify the second database entry by a corresponding segment name from the segment names included in first database 206.
[0073] In some examples, in response to generating the second database entry, database controller 204 populates the second database entry by mapping data from first database 206 to second database 208, where the data is associated with the corresponding segment name. For example, database controller 204 may map one or more first database entries in the first database entry with a first flight number to one or more second database entries in the second database entry with the first flight number. In such an example, database controller 204 may store the data included in the one or more first database entries in the first database entry in the one or more second database entries in the second database entry. In other examples, database controller 204 may correlate information included in the populated second database entry in the second database entry. For example, database controller 204 may correlate the departure airport, arrival airport, aircraft type, airline name, etc. with the corresponding segment name in the segment name. Advantageously, the database controller 204 can improve the operation of the second database 208 (e.g., indexing the second database 208, querying the second database 208, etc.) by performing data structuring, sorting, etc. on the reduced data set included in the second database 208 compared to the first database 206.
[0074] exist Figure 2 In the illustrated example, the ART prediction system 104 includes databases 206, 208 to record data (e.g., data fields 225, messages 223, and / or more generally, ART data 222). The databases 206, 208 may be implemented by volatile memory (e.g., synchronous dynamic random access memory (SDRAM), dynamic random access memory (DRAM), RAMBUS dynamic random access memory (RDRAM), and / or non-volatile memory (e.g., flash memory). Additionally or alternatively, the databases 206, 208 may be implemented by one or more double data rate (DDR) memories (e.g., DDR, DDR2, DDR3, DDR4, mobile DDR (mDDR), etc.). Additionally or alternatively, the databases 206, 208 may be implemented by one or more large capacity The databases 206 and 208 are implemented by a storage device (such as a hard drive, an optical drive, a digital versatile disk drive, a solid-state disk drive, etc.). Although the databases 206 and 208 are illustrated as a single database in the illustrated example, the databases 206 and 208 can be implemented by any number and / or type of databases. Moreover, the data stored in the databases 206 and 208 can be in any data format, such as binary, comma-delimited, hexadecimal, JavaScript Object Notation (JSON), tab-delimited, Structured Query Language (SQL), XML, etc.
[0075] exist Figure 2 In the example shown, the ART prediction system 104 includes an ART prediction controller 210 that executes one or more ML models to determine traffic counts for the segment of interest. Figure 2 In the example, the ART prediction controller 210 includes a second network interface 212, which is connected via Figure 1 The second network 116 obtains information from and / or sends information to example computing devices (e.g., processor platforms) 226, 228, 230. Figure 2 In FIG, the second network interface 212 implements a web server that receives requests from computing devices 226, 228, and 230. Figure 2 In the embodiment, the second network interface 212 can implement a web server that sends data to the computing devices 226, 228, and 230, wherein the data may include: traffic counts for the section of interest, graphic resource presentations based on traffic counts, data reports including traffic counts, graphic resource presentations, and Figure 1 Recommendations for adjusting the flight plans of aircraft 106A to 106F. Figure 2 In the embodiment, the second network interface 212 can receive and / or send information formatted as HTTP messages. However, in addition or alternatively, any other message format and / or protocol can be used, for example, as FTP, SMTP, HTTPS protocols etc.
[0076] exist Figure 2 In the illustrated example, the ART prediction controller 210 and / or more generally the ART prediction system 104 retrieves and / or otherwise obtains requests from an example host application (HOST APP) 224 for operation and / or other execution at computing devices 226, 228, 230. Figure 2 In the embodiment, the host application 224 includes one or more routines (e.g., software routines) or programs (e.g., software programs) executed by machine-readable instructions. For example, the host application 224 can be a standard operating system (e.g., Windows-based TM operating system, operating system, Operating system, ANDROID TM operating system, Host application 224 is a software application related to aircraft traffic control that runs on a host computer (such as an operating system). Host application 224 is executed by computing devices 226, 228, 230 to enable users, airlines, etc. to obtain data or information associated with one or more sectors of interest.
[0077] exist Figure 2 In the illustrated example, the computing devices 226, 228, 230 include a first example computing device 226, a second example computing device 228, and a third example computing device 230. Figure 2 In the embodiment, the first computing device 226 is an Internet-enabled tablet computer (e.g., APPLE MICROSOFT For example, when the first computing device 226 is in Figure 1 The device may be used by a flight crew while on board one of aircraft 106A through 106F.
[0078] exist Figure 2 In the illustrated example, the second computing device 228 is an Internet-enabled mobile phone (e.g., a smartphone) and can thus facilitate interaction with the ART prediction controller 210 and / or more generally with the ART prediction system 104 via the host application 224. For example, the second computing device 228 when in Figure 1 The device may be used by a flight crew while on board one of aircraft 106A through 106F.
[0079] exist Figure 2 In the example shown, the third computing device 230 is a server. For example, the third computing device 230 can be a physical server (e.g., a rack-mounted server, a blade server, etc.), a virtual server (e.g., one or more virtual machines composed of virtual hardware resources (e.g., virtual computing resources, virtual network resources, virtual storage resources, etc.)), etc., and / or a combination thereof, and thus can facilitate interaction with the ART prediction controller 210 and / or more generally the ART prediction system 104 via the host application 224. Alternatively, with Figure 2 The ART prediction system 104 may facilitate interaction with a fewer or greater number and / or types of computing devices than the depicted computing devices 226 , 228 , 230 .
[0080] Although Figure 1The host application 224 is depicted as being the same on each of the computing devices 226, 228, 230, but alternatively, the host application 224 can be tailored and / or otherwise customized based on the corresponding platform. For example, the host application 224 executing on the first computing device 226 can be different from the host application 224 executing on the second computing device 228. In such an example, the host application 224 can have a different user interface, different communication drivers, different application programming interfaces (APIs), etc., to interoperate with the corresponding platform.
[0081] exist Figure 2 In the illustrated example, the ART prediction controller 210 includes a query controller 214 that generates commands (e.g., machine-readable commands), directions (e.g., machine-readable directions), instructions (e.g., machine-readable instructions), etc., for the ART prediction controller 210 based on requests, queries, etc. obtained from the second network 116. In some examples, the query controller 214 generates a query to the second database 208 based on a first request from a host application 224 of a first computing device 226, wherein the first request is to obtain a first traffic count for a first segment during a near-current or instantaneous time period. In such an example, in response to the query, the second database 208 may send the first traffic count to the query controller 214 to be sent to the first computing device 226.
[0082] In some examples, the query controller 214 generates the first command based on a second request from the host application 224 of the first computing device 226, wherein the second request is to obtain a first traffic count for the first segment during a future time period. In such an example, the query controller 214 can call the ART segment service 216 via the first command to execute the ML model to determine the first traffic count.
[0083] In some examples, the query controller 214 configures one or more request parameters for traffic count requests from the computing devices 226, 228, and 230. In such examples, the query controller 214 can identify request parameters based on the request, such as a segment name, a time segment or time range, a segment output type, etc. For example, the segment output type can be a segment count for a segment during the time period of interest, a segment count parameter such as an average segment count representing the average segment count for a segment during the time period of interest, a predicted number of segments for a segment during the time period of interest, etc.
[0084] In some examples, the query controller 214 generates a command based on a third request from the host application 224 of the second computing device 228, wherein the third request is to obtain a graphic resource for presenting traffic counts for a plurality of segments. In such an example, the query controller 214 can call the graphic resource renderer 220 via the second command to generate a graphic resource for presenting traffic counts for the plurality of segments.
[0085] exist Figure 2 In the example shown, the ART prediction controller 210 includes an ART segment service 216 that determines and / or otherwise predicts traffic counts for a segment of interest by executing one or more ML models. In some examples, the ART segment service 216 includes and / or otherwise represents one or more services (e.g., microservices, containerized applications (e.g., virtual containers), etc.) that, when executed, can perform a specified computational task. For example, the ART segment service 216 can include a first service that obtains traffic counts from the second database 208. In other examples, the ART segment service 216 can include a second service that trains one or more ML models based on the ART data 222, executes the one or more ML models based on the ART data 222, and the like. In still other examples, the ART segment service 216 may include: a third service that configures segment counting operations (e.g., determining segments to be processed, time ranges of ART data 222 to be processed in conjunction with segments, etc.); a fourth service that determines traffic counts; a fifth service that determines parameters or statistics associated with traffic counts (e.g., airspace segment count parameters, airspace traffic count parameters, segment count parameters, traffic count parameters, etc.); a sixth service that predicts future traffic counts, etc.
[0086] In some examples, the ART segment service 216, the ART prediction controller 210, and / or more generally the ART prediction system 104 can be implemented and / or otherwise executed using virtual hardware resources. For example, the ART segment service 216 can be deployed and / or otherwise hosted on a cloud computing platform. In such an example, the ART segment service 216 can be executed using the following virtual resources: virtual computing resources (e.g., virtualization of a physical central processing unit (CPU)), virtual storage resources (e.g., virtualization of physical memory, hard drives, solid-state disk drives, etc.), virtual network resources (e.g., virtualization of network switches, network routers, spline switches, rack switches, edge gateways, etc.), etc., and / or combinations thereof.
[0087] exist Figure 2In the illustrated example, the ART prediction controller 210 includes a segment data generator 218 that packages segment data for the host application 224 to be sent to the computing devices 226, 228, and 230. In some examples, the segment data generator 218 obtains traffic counts from the ART segment service 216, graphical resource renderings from the graphical resource renderer 220, and the like. In such examples, the segment data generator 218 can package and / or otherwise convert the traffic counts, graphical resource renderings, and the like into a data format that can be read by a requesting computing device among the computing devices 226, 228, and 230. For example, the first computing device 226 may require data obtained from the ART prediction controller 210 and / or more generally the ART prediction system 104 in a first data format, while the third computing device 230 may require data obtained in a second data format that is different from the first data format.
[0088] In some examples, segment data generator 218 generates recommendations for adjustments to the flight plan of an aircraft based on traffic counts. For example, segment data generator 218 may determine that traffic in a segment during a certain time period meets a threshold (e.g., a value of the threshold) representing a maximum number of aircraft recommended, scheduled, etc., to fly in the segment during the time period.
[0089] In some examples, the segment data generator 218 may obtain a first predicted traffic count for a first segment and a second predicted traffic count for a second segment (e.g., from the ART segment service 216) during a first time period, wherein the predicted traffic counts are for a second time period subsequent to the first time period. The segment data generator 218 may determine that during the second time period, the first segment is predicted to have a first traffic count of 100 and the second segment is predicted to have a second traffic count of 50, where the threshold value is 75. The segment data generator 218 may compare the first traffic count and the second traffic count to the threshold value.
[0090] In response to determining that the first traffic count is greater than a threshold value and thus satisfies the threshold value, segment data generator 218 may determine to generate a recommendation for the aircraft to relocate from the first segment during a second time period. For example, segment data generator 218 may generate a recommendation to adjust the aircraft's flight plan, which includes the first segment, to a new flight plan, which includes the second segment. In such an example, segment data generator 218 may send the recommendation to one of computing devices 226, 228, or 230. In response to receiving the recommendation, computing device 226, 228, or 230 may instruct an aircraft, whether on the ground, in flight, or otherwise, with a flight plan that includes the first segment, to relocate to the second segment during the second time period. Advantageously, segment data generator 218 and / or more generally, ART prediction system 104 may reduce segment congestion by predicting future traffic counts and adjusting flight plans to avoid congested segments based on the predicted traffic counts, thereby alleviating segment congestion.
[0091] exist Figure 2 In the illustrated example, the ART prediction controller 210 includes a graphical resource renderer 220 that generates visual data for administrators, users, and the like associated with the computing devices 226, 228, and 230. For example, the graphical resource renderer 220 can generate a graph, a plot, a table, or any other type of graphical image or data that can be presented as a graphical representation of data. In such an example, the graphical resource renderer 220 can generate machine-readable instructions that, when executed by one of the computing devices 226, 228, and 230, can generate a graphical representation of the requested data on a display, a user interface, and the like of the computing device 226, 228, and 230.
[0092] Although Figure 2 The implementation is illustrated in Figure 1 Example of ART prediction system 104, but Figure 2 One or more of the illustrated elements, processes, and / or devices may be combined, divided, rearranged, omitted, eliminated, and / or implemented in any other manner. In addition, the first example network interface 202, the example database controller 204, the first example database 206, the second example database 208, the example ART prediction controller 210, the second example network interface 212, the example query controller 214, the example ART segment service 216, the example segment data generator 218, the example graphic resource renderer 220, and / or more generally Figure 1The example insertion opportunity analyzer 104 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, any of the first example network interface 202, the example database controller 204, the first example database 206, the second example database 208, the example ART prediction controller 210, the second example network interface 212, the example query controller 214, the example ART segment service 216, the example segment data generator 218, the example graphic resource renderer 220, and / or more generally the example insertion opportunity analyzer 104 may be implemented by one or more analog or digital circuits, logic circuits, programmable processors, programmable controllers, graphics processing units (GPUs), digital signal processors (DSPs), application specific integrated circuits (ASICs), programmable logic devices (PLDs), and / or field programmable logic devices (FPLDs). When any of the apparatus or system claims of this patent are interpreted as covering pure software and / or firmware implementations, at least one of the first example network interface 202, the example database controller 204, the first example database 206, the second example database 208, the example ART prediction controller 210, the second example network interface 212, the example query controller 214, the example ART segment service 216, the example segment data generator 218, and / or the example graphic resource renderer 220 is thereby expressly defined to include: a non-transitory computer-readable storage device or storage disk, such as a memory, a digital versatile disk (DVD), a compact disk (CD), a Blu-ray disk, etc., including the software and / or firmware. Further, Figure 1 Example ART prediction system 104 except Figure 2 Elements, processes and / or devices other than or in place of the illustrated elements, processes and / or devices Figure 2 The illustrated elements, processes, and / or devices may also include one or more other elements, processes, and / or devices, and / or may include more than one of any or all of the illustrated elements, processes, and devices. As used herein, the phrase "in communication" (including variations thereof) encompasses direct communication and / or indirect communication through one or more intermediate components, and does not require direct physical (e.g., wired) communication and / or continuous communication, but rather includes selective communication at periodic intervals, scheduled intervals, non-periodic intervals, and / or one-time events.
[0093] Figure 3 yes Figure 2 In some examples, the database controller 204 generates a first database 206 and a second database 208. In some examples, the database controller 204 generates Figure 2 The ART data 222 includes Figure 2The parts and / or the entirety of the message 223 (eg, a FIXM message) are determined to be stored in at least one of the first database 206 or the second database 208. Figure 3 In the illustrated example, the database controller 204 includes an example data extractor 310 , an example index generator 320 , an example data mapper 330 , an example data correlator 340 , and an example traffic count generator 350 .
[0094] exist Figure 3 In the example shown, the database controller 204 includes a data extractor 310 that extracts Figure 2 The information of interest included in the ART data 222 is identified as being stored in the first database 206. In some examples, the data extractor 310 stores the identified information of interest as a database entry in the first database 206. For example, the data extractor 310 may store, in the first database 206, the first FIXM message (e.g., the first message in the messages 223) as a first database entry, the second FIXM message (e.g., the second message in the messages 223) as a second database entry, the first part (e.g., one or more data fields in the data field 225) of the third FIXM message (e.g., the third message in the messages 223) as a third database entry, the second part (e.g., one or more data fields in the data field 225) and the third part (e.g., one or more data fields in the data field 225) of the fourth FIXM message (e.g., the fourth message in the messages 223) as a fourth database entry, and so on.
[0095] In some examples, data extractor 310 evaluates ART data 222 based on a set of one or more rules (e.g., inspection rules, storage rules, etc.). In some examples, data extractor 310 parses message 223 to identify one or more data fields in data fields 225. In some examples, data extractor 310 examines a first data field in data fields 225, compares a value of the first data field in data fields 225 to one or more rules, and determines, based on the comparison, whether the value violates one of the one or more rules.
[0096] In some examples, data extractor 310 stores all of one or more of messages 223 based on a comparison of the one or more messages 223 to one or more rules. For example, data extractor 310 can examine a first FIXM message included in messages 223 that includes a first data field, a second data field, and a third data field in data field 225. In such an example, in response to determining that no data field violates a rule, data extractor 310 can store the first FIXM message in first database 206.
[0097] In some examples, data extractor 310 discards the entire first FIXM message based on the comparison. For example, data extractor 310 may determine that the first data field is a header of the first FIXM message and that the header includes data indicating a first message type. In such an example, data extractor 310 may compare the first message type to a rule indicating that the entire FIXM message having the first message type is discarded.
[0098] In some examples, data extractor 310 discards a portion of the FIXM message based on the comparison. For example, data extractor 310 may determine that the second data field is a first payload data field, and that the first payload data field includes data representing a first type of aircraft. In such an example, data extractor 310 may compare the first aircraft type to a rule that indicates discarding payload data fields associated with the first aircraft type.
[0099] In some examples, data extractor 310 discards the first part of the FIXM message while storing the second part of the FIXM message. For example, data extractor 310 can discard the first payload data field based on the violation of the rule of the first payload data field. In such an example, data extractor 310 can determine that the third data field is the second payload data field, and the second payload data field includes data representing weather information associated with the first section. In such an example, data extractor 310 can compare the first section with a rule indicating that the payload field associated with the first section is stored. In other examples, data extractor 310 can compare the first section with a different rule indicating that the payload field associated with the second section is discarded, and the second section is different from the first section. In such an example, data extractor 310 can store the payload associated with the first section and discard the payload associated with the second section.
[0100] exist Figure 3In the illustrated example, database controller 204 includes an index generator 320 that indexes at least one of first database 206 or second database 208. In some examples, data extractor 310 stores a plurality of first database entries based on ART data 222 in first database 206. In such an example, index generator 320 can index the first database entries based on data fields included in the first database entries. For example, index generator 320 can index the first database entries based on flight numbers, sector names or identifiers, etc. Advantageously, index generator 320 can optimize and / or otherwise improve the performance of first database 206 by reducing the number of read accesses (e.g., accesses by a storage disk or storage device) required to perform queries on first database 206.
[0101] In some examples, the index generator 320 generates a second database entry in the second database 208 based on a first database entry in the first database 206. For example, the index generator 320 may determine a first database entry stored in the first database 206 that is indexed by flight number. In such an example, the index generator 320 may generate a second database entry based on the flight number. For example, the index generator 320 may generate a database entry in the second database 208 for each flight number among the flight numbers indexed in the first database 206. In such an example, each of the generated database entries in the second database 208 may include a database entry field that stores the flight number. For example, the index generator 320 may: (1) identify the flight number 1201 in one of the first database entries, and (2) generate a database entry in the second database 208 having a database entry field that includes the flight number 1201.
[0102] exist Figure 3 In the illustrated example, the database controller 204 includes a data mapper 330 that associates data included in a first database entry stored in the first database 206 with a second database entry stored in the second database 208. In some examples, the data mapper 330 populates the second database entry by mapping one or more first database entries in the first database entry to one or more second database entries in the second database entry based on the database entry fields. For example, the data mapper 330 may identify the following: (1) a first set of first database entries that include a database entry field that represents flight number 1201, and (2) a second set of second database entries that include a database entry field that represents flight number 1201.
[0103] In some examples, in response to the identification, the data mapper 330 stores a portion and / or all of the data included in the first group in the second group. For example, the data mapper 330 may identify a first database entry in the first database 206, where the first database entry has three data fields, where one of the three data fields includes the flight number 1201. In such an example, the data mapper 330 may identify a second database entry in the second database 208, where the second database entry has a data field that includes the flight number 1201. In response to identifying the second database entry, the data mapper 330 may store the second database entry field and the third database entry field of the first database entry as the second database entry field and the third database entry field of the second database entry.
[0104] exist Figure 3 In the illustrated example, database controller 204 includes a data correlator 340 that correlates data within at least one of first database 206 or second database 208 to determine segment information. In some examples, the segment information includes a segment name that identifies the segment. In some examples, the segment information includes an aircraft ID indicating when the aircraft entered the segment (e.g., Figure 1 In some examples, the segment information includes a segment departure time of the aircraft, which indicates when the aircraft departed the segment. In some examples, the data correlator 340 determines the segment information by identifying a database entry associated with the segment stored in the second database 208. For example, the data correlator 340 may determine the first segment of interest for processing by identifying a first segment name corresponding to the first segment in the second database 208. The data correlator 340 may identify the first segment by correlating data included in the database entry of the second database 208 based on the segment information. Figure 1 One or more aircraft among aircraft 106A-106F that have entered and / or exited the first segment.
[0105] exist Figure 3In the illustrated example, the database controller 204 includes a traffic count generator 350 that determines traffic counts based on database entries included in the second database 208. In some examples, the traffic count generator 350 determines the number of aircraft 106A-106F that were in the first sector during the period of interest based on correlated data (e.g., corresponding sector entry times and / or sector exit times included in the second database entries determined by the data correlator 340). Advantageously, the traffic count generator 350 can determine traffic counts for the sector of interest and the period of interest based on the sector entry times and sector exit times identified in response to correlating the internal database entries with the second database 208 based on the sector information.
[0106] Although Figure 3 The implementation is illustrated in Figure 2 The example method of the database controller 204 is as follows: Figure 3 One or more of the illustrated elements, processes, and / or devices may be combined, divided, rearranged, omitted, eliminated, and / or implemented in any other manner. In addition, the example data extractor 310, the example index generator 320, the example data mapper 330, the example data correlator 340, the example traffic count generator 350, and / or more generally Figure 2 The example database controller 204 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, any of the example data extractor 310, the example index generator 320, the example data mapper 330, the example data correlator 340, the example traffic count generator 350, and / or more generally the example database controller 204 may be implemented by one or more analog or digital circuits, logic circuits, programmable processors, programmable controllers, GPUs, DSPs, ASICs, PLDs, and / or FPLDs. When any of the apparatus or system claims of the present disclosure are interpreted as covering pure software and / or firmware implementations, at least one of the example data extractor 310, the example index generator 320, the example data mapper 330, the example data correlator 340, and / or the example traffic count generator 350 is thereby expressly defined to include: a non-transitory computer-readable storage device or storage disk, such as a memory, DVD, CD, Blu-ray disk, etc., including the software and / or firmware. Further, Figure 2 The example database controller has Figure 3 Elements, processes and / or devices other than or in place of the illustrated elements, processes and / or devices Figure 3The illustrated elements, processes and / or devices may also include one or more other elements, processes and / or devices, and / or may include more than one of any or all of the illustrated elements, processes and devices.
[0107] Figure 4 yes Figure 2 An example implementation of the ART segment service 216 of ART segment service 216. In some examples, the ART segment service 216 may correspond to a service that, when executed, may use physical and / or virtual hardware resources to perform computational tasks. In some examples, the ART segment service 216 executes an ML model to determine the accuracy of the ML model in determining traffic counts for the segment of interest for time periods that have already occurred. In some examples, the ART segment service 216 trains (e.g., iteratively trains based on new incoming ART data) one or more of the ML models to improve the accuracy of the one or more ML models to predict and / or otherwise determine traffic counts for the segment of interest for time periods that have not yet occurred. Figure 4 In the illustrated example, the ART segment service 216 includes representation services (e.g., microservices) such as an example database interface 410 , an example ML controller 420 , an example traffic count determiner 430 , an example traffic count predictor 440 , an example segment parameter determiner 450 , and an example ART segment service database 460 including an example ML model 470 .
[0108] exist Figure 4 In the example shown, the ART segment service 216 includes a database interface 410 to facilitate Figure 2 In some examples, the database interface 410 is based on the query of the second database 208 from Figure 2 In response to the request of the host application 224, a query for traffic counts for the segment of interest during the previous period is sent to the second database 208. In such an example, in response to the query, the database interface 410 can obtain database entries corresponding to the traffic counts, database entry fields of the database entries, etc. from the second database 208.
[0109] exist Figure 4 In the example shown, the ART segment service 216 includes an ML controller 420 that executes and / or trains one or more ML models. In some examples, the ML controller 420 executes and / or trains one or more ML models, including: one or more regression ML models, one or more nonlinear regression ML models, one or more holistic regression ML models, one or more neural networks (e.g., CNN, DNN, RNN, etc.), etc., and / or combinations thereof.
[0110] In some examples, the ML controller 420 executes and / or trains one or more ML models based on and / or otherwise uses learning data (e.g., a learning dataset), training data (e.g., a training dataset), etc. In some examples, the ML controller 420 determines the learning data, training data, etc. based on analyzing, evaluating, etc., segment information including traffic counts obtained from the second database 208. The ML controller 420 can obtain traffic counts for the segment of interest for a previous time period, and thus, the traffic counts can correspond to known and / or otherwise previously determined traffic counts.
[0111] In some examples, the ML controller 420 can determine the training data by deleting and / or otherwise removing anomalous segment information from the segment information to be used for the training data. For example, the ML controller 420 can select a time range of interest to be processed (e.g., a thirty-second time segment representing 8:00-8:15 AM Central Standard Time, or any other time segment). The ML controller 420 can determine traffic counts for each segment included in the segment information within the selected time range. For example, the ML controller 420 can determine a first traffic count for a first segment, a second traffic count for a second segment, and so on, within the thirty-second time segment. In such an example, the first traffic count, the second traffic count, and so on are known traffic counts (e.g., historical traffic counts).
[0112] In some examples, the ML controller 420 determines a threshold value based on the traffic counts. For example, the ML controller 420 may determine an average, median, or other value of the traffic counts and compare the traffic counts to the average, median, or other value. In such examples, the ML controller 420 may compare the traffic counts to the threshold value and determine whether to identify segment information associated with the traffic counts as training data. For example, based on the comparison, the ML controller 420 may identify first segment information associated with a first segment as training data, and second segment information associated with a second segment as non-training data. In such an example, the ML controller 420 may determine, based on the comparison, that the first traffic count for the first segment is not greater than the threshold value, that the second traffic count for the second segment is greater than the threshold value, and so on. Advantageously, the ML controller 420 may identify segment information that does not correspond to typical segment behavior (e.g., segment density behavior) and may reject, remove, and / or otherwise discard such segment information so that it is not included in the training data used to train one or more ML models.
[0113] In some examples, the ML controller 420 evaluates one or more ML models using cross-validation (e.g., k-fold cross-validation, stratified k-fold cross-validation, leave-one-out cross-validation, etc.). For example, the ML controller 420 can train several ML models on a subset of the available input data (e.g., data included in the second database 208) and evaluate the ML models on complementary subsets of the data. The ML controller 420 can use cross-validation to detect overfitting (e.g., an inability to generalize patterns).
[0114] In some examples, the ML controller 420 uses k-fold cross-validation to evaluate the ML model. For example, the ML controller 420 can split or partition the input data into k subsets or k groups of data (also known as k-folds). In such an example, the ML controller 420 can train the ML model on all but one (e.g., k-1) of the subsets and then evaluate the ML model based on the subsets not used for training. For example, the k-1 groups can be used as training data sets, and the remaining groups can be used as test data sets.
[0115] The ML controller 420 may repeat the evaluation process k times, each time retaining a different subset for testing or evaluation (and excluding it from training). The ML controller 420 may fit the model on the training set and evaluate the model on the test set to calculate and / or otherwise determine a score (e.g., a cross-validation score, an evaluation score, etc.). The ML controller 420 may determine the score of each of the ML models based on cross-validation. In some examples, the ML controller 420 selects the ML model to be trained based on the ML model with the highest total score among the ML models during all k runs, the ML model with the highest average score among the ML models during all k runs, etc.
[0116] In some examples, the ML controller 420 identifies one or more ML models to be trained by evaluating their execution using historical or previously acquired ART data. In such examples, the ML controller 420 can train the identified ML models using the determined training data. In some examples, when traffic counts are determined based on historical ART data including known traffic counts, the ML controller 420 can identify the ML model to be trained by determining which of the ML models being evaluated generates the smallest amount of error.
[0117] For example, you can Figure 2The ART data 222 is associated with a segment having a first traffic count known within a past time period. The ML controller 420 may execute multiple ML models on the ART data 222 to generate traffic counts. The ML controller 420 may compare the generated traffic counts with the known traffic counts associated with the historical ART data. Based on the comparison, the ML controller 420 may identify one of the ML models to train and then perform a prediction of traffic counts for a future time period. For example, the ML controller 420 may identify a first ML model among the ML models in response to determining that the first ML model determined traffic counts that had the smallest amount of error when compared to traffic counts generated by a different ML model. In some examples, the ML controller 420 may compile the identified ML model into one or more machine- or computer-readable executable files and store the one or more machine- or computer-readable executable files in the ART segment service database as ML model 470.
[0118] exist Figure 4 In the example shown, the ART segment service 216 includes a traffic count determiner 430 based on Figure 2 The traffic count determiner 430 determines the traffic count for a segment during a time period based on the ART data 222 that has been processed and stored in the second database 208. In some examples, the traffic count determiner 430 determines the traffic count for the segment based on historical ART data. For example, the traffic count determiner 430 can determine the traffic count for a time period that has already occurred based on the ART data 222 that has been processed and stored in the second database 208. In some examples, the traffic count determiner 430 determines the current or substantially instantaneous traffic count for the segment of interest. For example, the traffic count determiner 430 can determine the number of aircraft that are located in the segment and / or otherwise flying in the designated segment during the current or substantially instantaneous time period.
[0119] exist Figure 4 In the illustrated example, the ART segment service 216 includes a traffic count predictor 440 that predicts and / or otherwise determines traffic counts for a segment during a future time period. In some examples, the traffic count predictor 440 executes one of the ML models 470 to determine traffic counts. For example, the traffic count predictor 440 can execute a trained RNN to determine traffic counts for a segment of interest for an upcoming time period of interest.
[0120] exist Figure 4In the illustrated example, the ART segment service 216 includes a segment parameter determiner 450 that calculates and / or otherwise determines statistics or other metrics associated with the segment of interest based on the determined traffic counts. For example, the segment parameter determiner 450 may determine metrics, including averages, patterns, ranges, etc., of the traffic counts for one or more segments. In other examples, the segment parameter determiner 450 may determine trends based on the metrics and / or more generally the determined traffic counts. For example, the segment parameter determiner 450 may determine that a segment is becoming increasingly congested based on a previous time period. In other examples, the segment parameter determiner 450 may predict that a segment will become congested within one or more future time periods based on the predicted traffic counts.
[0121] In some examples, the segment parameter determiner 450 configures and / or otherwise determines the segment parameters that may be determined by Figure 2 The threshold value used by the segment data generator 218 of the embodiment. For example, the segment parameter determiner 450 can determine the value of the threshold value for the corresponding segment of interest in the future period based on at least one of the following: (1) the first flight plan of the plurality of aircraft 106A to 106F during the future period; (2) weather information associated with the segment of interest during the future period; or (3) historical information including at least one of a second flight plan and second weather information associated with the segment during a previous period, a historical period, a period before the future period, etc. Advantageously, the segment parameter determiner 450 can dynamically adjust the value of the threshold value for the corresponding segment of interest in the future period based on information stored in the second database 208, traffic counts predicted by the ML model 470, etc., and / or a combination thereof.
[0122] exist Figure 4In the example shown, the ART segment service 216 includes an ART segment service database 460 that records and / or otherwise stores machine-readable executable files (e.g., ML models 470, learning data, training data, etc.). The ART segment service database 460 can be implemented using volatile memory (e.g., SDRAM, DRAM, RDRAM, etc.) and / or non-volatile memory (e.g., flash memory). Additionally or alternatively, the ART segment service database 460 can be implemented using one or more DDR memories (e.g., DDR, DDR2, DDR3, DDR4, mDDR, etc.). Additionally or alternatively, the ART segment service database 460 can be implemented using one or more mass storage devices (e.g., hard disk drives, optical disk drives, digital versatile disk drives, solid-state disk drives, etc.). Although the ART segment service database 460 is illustrated as a single database in the example shown, the ART segment service database 460 can be implemented using any number and / or type of databases. Furthermore, the machine-readable executable files in the ART segment service database 460 may be in any data format, such as binary, comma-delimited, hexadecimal, JSON, tab-delimited, SQL, XML, and the like, for example.
[0123] exist Figure 4 In the example shown, the ART segment service database 460 includes an ML model 470 that is Figure 2 The host application 224 and / or more generally Figure 2 The computing devices 226, 228, 230 determine the traffic count for the requested segment. Figure 4 In the example, ML model 470 may include one or more trained ML models. For example, ML model 470 may include and / or otherwise correspond to one or more trained regression ML models, one or more trained nonlinear regression ML models, one or more trained ensemble regression ML models, one or more trained neural networks (e.g., CNN, DNN, RNN, etc.), etc., and / or combinations thereof. In some examples, ML model 470 is stored as a machine or computer-readable executable file. For example, ML model 470 may be one or more binary files, one or more executable files, etc.
[0124] Although Figure 4 The implementation is illustrated in Figure 2 Example of ART segment service 216, but Figure 4One or more of the illustrated elements, processes, and / or devices may be combined, divided, rearranged, omitted, eliminated, and / or implemented in any other manner. In addition, the example database interface 410, the example ML controller 420, the example traffic count determiner 430, the example traffic count predictor 440, the example segment parameter determiner 450, the example ART segment service database 460, the example ML model 470, and / or more generally Figure 2 The example ART segment service 216 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, the example database interface 410, the example ML controller 420, the example traffic count determiner 430, the example traffic count predictor 440, the example segment parameter determiner 450, the example ART segment service database 460, the example ML model 470, and / or more generally Figure 2 Any of the example ART segment services 216 may be implemented by one or more analog or digital circuits, logic circuits, programmable processors, programmable controllers, GPUs, DSPs, ASICs, PLDs, and / or FPLDs. When any of the apparatus or system claims of the present disclosure are interpreted as covering pure software and / or firmware implementations, at least one of the example database interface 410, the example ML controller 420, the example traffic count determiner 430, the example traffic count predictor 440, the example segment parameter determiner 450, the example ART segment service database 460, and / or the example ML model 470 is thereby expressly defined to include: a non-transitory computer-readable storage device or storage disk, such as a memory, DVD, CD, Blu-ray disk, etc., including software and / or firmware. Further, Figure 2 Example ART Segment Service 216 except Figure 4 Elements, processes and / or devices other than or in place of the illustrated elements, processes and / or devices Figure 4 The illustrated elements, processes and / or devices may also include one or more other elements, processes and / or devices, and / or may include more than one of any or all of the illustrated elements, processes and devices.
[0125] Figure 5 Depicted by Figure 2 and / or Figure 3 The example database entry 500 generated by the database controller 204. Figure 5 In the example, database entry 500 may correspond to Figure 2 One of the database entries stored in the second database 208. Figure 5In
[0045] , database entry 500 represents segment information associated with a segment for a period of interest (e.g., a time segment of 15 minutes, 1 hour, 1 day, 1 week, etc.). For example, database entry 500 may represent the first segment managed by the NAS for a 24-hour period. Figure 5 In , database entry 500 includes: a key field that includes and / or otherwise represents a description of the stored data, a value field that includes and / or otherwise represents the stored data, and a type field that includes and / or otherwise represents the data type of the stored data. Figure 5 In FIG, the database entry 500 is identified by the database identifier "ZNYNC1", and the database entry 500 has a document data type. For example, the database entry 500 can be a document, a database document, etc.
[0126] exist Figure 5 In the illustrated example, the database entry 500 includes at least seven example database entry fields 502, 504, 506, 508, 510, 512, 514, including: a first example database entry field 502, a second example database entry field 504, a third example database entry field 506, a fourth example database entry field 508, a fifth example database entry field 510, a sixth example database entry field 512, and a seventh example database entry field 514. Alternatively, the database entry 500 may have more than Figure 5 Fewer or more database entry fields than depicted in .
[0127] exist Figure 5 In the example shown, the database entry 500 includes a first database entry field 502 depicted as "_id" that stores a database identifier (eg, a database entry identifier). Figure 5 In , the database identifier represents an example segment name (e.g., flight segment name). Alternatively, the database identifier may represent a flight number, aircraft type, etc. In Figure 5 In , the first database entry field 502 has a string data type. Figure 5 , the first database entry field 502 has a value of "ZNYNC1," which indicates that the database entry 500 corresponds to the segment identified as "ZNYNC1."
[0128] exist Figure 5 In the example shown, the database entry 500 includes a second database entry field 504 described as "art:flightInList" that stores an array of flight numbers. Figure 5 In the flight quantity array, the flight quantity array includes multiple elements or the following aircraft flight numbers (for example, Figure 1 The flight number of the first aircraft 106A, the flight number of the second aircraft 106B, etc.) that the aircraft has entered, left, and / or otherwise passed through the segment associated with the database entry 500. Figure 5 In , the second database entry field 504 has an array data type. Figure 5 , the second database entry 504 has a value of "2770," which represents 2770 elements or 2770 different or unique flight numbers that have entered or left the ZNYNC1 segment.
[0129] exist Figure 5 In the example shown, the database entry 500 includes a third database entry field 506 described as "art:departureTimelist" that stores an array of departure times. Figure 5 In the example, the departure time array includes multiple elements or the departure time of the following aircraft (for example, Figure 1 The departure time of the first aircraft 106A, the departure time of the second aircraft 106B, etc.) indicates that the aircraft has entered and / or left the segment associated with the database entry 500. For example, the departure time may be in Coordinated Universal Time (UTC) format. Figure 5 In , the third database entry field 506 has an array data type. Figure 5 In the example, third database entry 506 has a value of "2770," which indicates 2770 elements or 2770 departure times of aircraft that have entered or departed the ZNYNC1 segment. In some examples, the departure times correspond one-to-one (1:1) with the elements in second database entry field 504. For example, the first array element in second database entry field 504 may correspond to the first array element in third database entry field 506.
[0130] exist Figure 5 In the example shown, the database entry 500 includes a fourth database entry field 508 described as "art:timeBuckets" that stores the amount of the time bucket of the period of interest. Figure 5 In the fourth database entry field 508, a plurality of discretized time elements or time segments are included. Figure 5 In , the fourth database entry field 508 has an array data type. Figure 5, the fourth database entry 508 has a value "1440" indicating 1440 time segments. For example, the fourth database entry field 508 may indicate the number of one-minute time segments in a day (e.g., 1400 one-minute time segments per day = (60 minutes per hour) x (24 hours per day)). In other examples, the fourth database entry field 508 may indicate different time segment sizes, such as 5-minute time segments, 15-minute time segments, 1-hour time segments, etc.
[0131] exist Figure 5 In the example shown, the database entry 500 includes a fifth database entry field 510 described as "art:dailyCount" that stores a daily count value. Figure 5 In , the daily count value represents an example amount of aircraft that have entered and / or left the segment identified as "ZNYNC1" during a day, a 24-hour period, etc. Alternatively, the daily count value may correspond to a different period, such as 1 hour, 1 week, etc. In Figure 5 In , the fifth database entry field 510 has an integer data type. Figure 5 , fifth database entry field 510 has a value of "2770," which indicates that a total of 2770 aircraft have entered or departed the sector identified as "ZNYNC1."
[0132] exist Figure 5 In the example shown, the database entry 500 includes a sixth database entry field 512 described as "art:version" that stores the database entry version. Figure 5 In , the database entry version represents an iteration, version, etc. of the database entry 500. Figure 5 In , the sixth database entry field 512 has an integer data type. Figure 5 , the sixth database entry field 512 has a value of "3" indicating the third version of the database entry 500. For example, the database controller 204 may increment the version from "3" to "4" in response to updating the database entry 500 with new ART data. In such an example, the database controller 204 may increment the version in response to adding one or more elements to the second database entry field 504, the third database entry field 506, and so on.
[0133] exist Figure 5In the example shown, the database entry 500 includes a seventh database entry field 514 described as "art:msgType" that stores a message type. For example, the message type can be based on the type of the message 223. In such an example, the message type can be based on the message type included in the header data field of the data field 225. Figure 5 In , the message type indicates the type of the database entry 500. For example, the message type may be a sector count (sectorCOUNT) indicating data associated with the sector of interest, a weather type, etc. Figure 5 In , the seventh database entry field 514 has a string data type. Figure 5 , the seventh database entry field 514 has a value of "sectorCOUNT," which indicates that the database entry 500 corresponds to storing data associated with a sector count, traffic count, etc. for a sector.
[0134] Figure 6 An example graph (e.g., a three-dimensional (3D) graph corresponding to orthogonal X-axis, Y-axis, and Z-axis representation) 600 is depicted, including example ART segment curves 602, 604, 606, 608, according to the number of time segments and segment counts. Figure 6 In FIG, the graph 600 has an X-axis 610 that delineates a curve index or curve identifier. Figure 6 In FIG, the graph 600 has a Y-axis 612 that delineates the number of 15-minute time segments or the amount of time segments. Figure 6 In , each of the time segments represents a 15-minute time span, increment, range, etc. Figure 6 , graph 600 has a Z-axis 614 that delineates the segment count (eg, the amount of aircraft in a segment).
[0135] exist Figure 6 In the example shown, the ART segment curves 602, 604, 606, 608 are based on Figure 2 ART data 222. For example, Figure 2 The database controller 204 can store the data included in the ART segment curves 602, 604, 606, 608 by extracting, processing, and analyzing the ART data 222. In some examples, Figure 4 The ML controller 4204 and / or more generally Figure 2 The ART segment service 216 generates the ART segment curves 602, 604, 606, 608. For example, the ML controller 420 can generate the ART segment curves 602, 604, 606, 608 to identify a learning set for training one or more ML models.
[0136] exist Figure 6 In the example shown, the ART segment curves 602, 604, 606, 608 include a first example ART segment curve 602 corresponding to curve index 1, a second example ART segment curve 604 corresponding to curve index 2, a third example ART segment curve 606 corresponding to curve index 3, and a fourth example ART segment curve 608 corresponding to curve index 4. Alternatively, the ML controller 420 may generate a ratio Figure 6 ART segment curves 602, 604, 606, 608 depicted in the figure may be fewer or more ART segment curves.
[0137] In some examples, the ML controller 420 and / or more generally the ART segment service 216 selects training data for use by one or more ML models in response to identifying and removing anomalous ART data. Figure 6 In the example embodiment, the ML controller 420 may identify outliers by determining whether one or more of the ART segment curves 602 , 604 , 606 , 608 represent atypical ART data relative to the other ART segment curves 602 , 604 , 606 , 608 .
[0138] exist Figure 6 In the example shown, the ML controller 420 and / or more generally the ART segment service 216 identifies a time range of interest to be processed with reference to the ART segment curves 602, 604, 606, 608. Figure 6 In , the ML controller 420 identifies the time segment 20 to be processed. Figure 6 In FIG, the ML controller 420 determines the segment count of each of the ART segment curves 602, 604, 606, and 608 in time segments 20. Figure 6 , the ML controller 420 may identify a first example segment count (sample 1) 616 of the first ART segment curve 602, a second example segment count (sample 2) 618 of the second ART segment curve 604, a third example segment count (sample 3) 620 of the third ART segment curve 606, and a fourth example segment count (sample 4) 622 of the fourth ART segment curve 608. The ML controller 420 may determine whether to exclude and / or otherwise remove one or more of the ART segment curves 602, 604, 606, 608 from the learning set for training the ML model based on the determined segment counts 616, 618, 620, 622, as follows: Figure 7 described.
[0139] Figure 7 Depicted is an example of Figure 4 The ML controller 420 and / or more generally Figure 2and / or Figure 4 An example graph (e.g., a two-dimensional (2D) graph corresponding to orthogonal X-axis and Y-axis representation) 700 of an example outlier removal process performed by the ART segment service 216 of FIG. Figure 7 In FIG. 7 , the graph 700 has an X-axis 702 representing a curve index or curve identifier. For example, in Figure 7 The first rejection index value at curve index 1 of may correspond to Figure 6 The first normalized value of sample 1 of curve index 1, in Figure 7 The second rejection index value at curve index 2 may correspond to Figure 6 The second normalized value of sample 2 at curve index 2, Figure 7 The third rejection index value at curve index 3 of may correspond to Figure 6 The third normalized value of sample 3 at curve index 3 of Figure 7 The fourth rejection index value at curve index 4 of may correspond to Figure 6 The fourth normalized value of sample 4 at curve index 4 of , and so on. Figure 7 , graph 700 has a Y-axis 704 representing a rejection index.
[0140] exist Figure 7 In the example shown, the rejection index corresponds to a parameter, metric, etc. that indicates atypical or abnormal ART data. Figure 7 In , the rejection index is based on the normalized value of the absolute error value of the ART segment curves 602, 604, 606, 608 within the time range of interest. For example, Figure 4 The ML controller 420 may determine Figure 6 The average value of a plurality of segment counts at the time segment 20 of the graph 600, wherein the plurality of segment counts include Figure 6 The first to fourth segment counts 616, 618, 620, 622. The ML controller 420 may determine the Figure 7 The example threshold value (e.g., the value of the rejection threshold, the ART rejection threshold, the ART curve rejection threshold, etc.) 706 is represented by the horizontal dashed line in FIG. The ML controller 420 may determine the threshold value by normalizing the average or mean of the plurality of bin counts within the range of 0 to 1. Figure 7 In FIG. 4 , the ML controller 420 determines the value of the threshold to be 0.5 by normalizing the average value of the plurality of segment counts to 0.5.
[0141] exist Figure 7 In the example shown, the ML controller 420 may determine a score for each of these curve indices based on the corresponding absolute error differences. Figure 7 In , the ML controller 420 may determine the absolute error difference for a segment between (1) the segment count for the segment and (2) the average of the plurality of segment counts. Figure 7 , the ML controller 420 may normalize the absolute error difference within the range of 0 to 1.0 for each of these curve indices.
[0142] exist Figure 7 In the example shown, the ML controller 420 may identify the curve index as being associated with anomalous ART data based on the score. Figure 7 In , when a curve index has a score higher than a threshold value, the ML controller 420 may identify the curve index as not to be included in the learning set. Figure 7 In the example, when a curve index has a score below a threshold value, the ML controller 420 may identify the curve index as included in the learning set. For example, the ML controller 420 may determine that curve indices 3, 7, 10, and 15 above the segment count are above the threshold value. In such an example, the ML controller 420 may determine Figure 6 The third ART segment curve 606 represents data that is atypical, abnormal, abnormal, etc., and is not included in the learning set used to train the ML model. Advantageously, the ML controller 420 can identify ART data associated with curve indices 1, 2, 4 to 6, 8, 9, 11 to 14, and 16 to 20 as included in the learning set.
[0143] Figure 8A Depicted in Figure 4 The ML controller 420 and / or more generally Figure 2 and / or Figure 4 A first example graph 800 including example ART segment curves 802, 804 prior to an example outlier removal operation performed by the ART segment service 216. Figure 8A In FIG, ART segment curves 802, 804 represent the segment count according to the number of time segments. Figure 8A In FIG. 8 , the first graph 800 includes ART segment curves 802 and 804 , and the ART segment curves include a first example ART segment curve 802 and a second example ART segment curve 804 . Figure 8A In the first ART segment curve 802, the first ART segment curve 802 may correspond to Figure 6 and / or Figure 7 The curve index is 1. Figure 8A In the second ART segment curve 804, the second ART segment curve 804 may correspond to Figure 6 and / or Figure 7 The curve index is 3.
[0144] exist Figure 8AIn the example shown, the ML controller 420 may determine that the second ART segment curve 804 includes abnormal data and / or otherwise includes data that is atypical, anomalous, etc. relative to other ART data (e.g., the first ART segment curve 802). In some examples, the ML controller 420 may identify the first ART segment curve 802 as being included in a learning set for training the ML model. In some examples, the ML controller 420 may perform an outlier removal operation by identifying the second ART segment curve 804 as not being included in the learning set. In such an example, the ML controller 420 may discard the second ART segment curve 804, annotate and / or otherwise identify the data associated with the second ART segment curve 804 as not being used for learning data, instructions, and / or otherwise call Figure 2 The database controller 204, to Figure 2 The data associated with the second ART segment curve 804 is removed from the second database 208 , etc., and / or a combination thereof.
[0145] Figure 8B Depicted in Figure 4 The ML controller 420 and / or more generally Figure 2 and / or Figure 4 After the outlier removal operation performed by the ART segment service 216, Figure 8A 804 . For example, the second graph 806 may indicate that the ML controller 420 identified the first ART segment curve 802 as learning data, but did not identify the second ART segment curve 804 as learning data. Additionally or alternatively, in some examples, the ML controller 420 may perform an outlier removal operation on multiple ART segment curves including the first ART segment curve 802 and the second ART segment curve 804.
[0146] Figure 9 is a schematic illustration of adjusting a first example flight plan (e.g., a first flight route) 902 of an aircraft to a second example flight plan (e.g., a second flight route) 904 in an example air traffic management (ATM) environment 900. Figure 9 In the ATM environment 900, the ATM environment 900 may be an airspace managed by NAS. Figure 9 In FIG. 1 , the ATM environment 900 includes a plurality of example sections 906, 908, 910, and 912. The sections 906, 908, 910, and 912 are merely exemplary for describing the examples disclosed herein and are not drawn to scale. For example, the ATM environment 900 may include a plurality of example sections 906, 908, 910, and 912. Figure 9906, 908, 910, 912. For example, an ATM environment managed by a NAS may include more than one thousand segments.
[0147] exist Figure 9 In the illustrated example, the segments 906, 908, 910, 912 include a first example segment 906, a second example segment 908, a third example segment 910, and a fourth example segment 912. Figure 9 In FIG, the first segment 906 includes New York City, the second segment 908 includes Chicago, and the fourth segment 912 includes Seattle. Figure 9 , a first segment 906 has a first traffic density corresponding to a first amount of aircraft during a time period, a second segment 908 has a second traffic density corresponding to a second amount of aircraft during the time period, a third segment 910 has a third traffic density corresponding to a third amount of aircraft during the time period, and a fourth segment 912 has a second traffic density corresponding to a fourth amount of aircraft during the time period. Figure 9 Among them, the first quantity of the aircraft is the largest, followed by the second and fourth quantities of the aircraft, and then the third quantity of the aircraft. Figure 9 , the second and fourth quantities of the aircraft are substantially similar to each other (e.g., within a tolerance range of 1 to 10 aircraft). Figure 9 , first segment 906 is the most congested segment, third segment 910 is the least congested segment, and second segment 908 and fourth segment 912 have average congestion levels between the congestion levels of first segment 906 and third segment 910. In such an example, congestion is based on the amount of aircraft in a segment during a time period.
[0148] exist Figure 9 In the example shown, the first flight plan 902 represents an aircraft (e.g., Figure 1 Aircraft 106A to 106F) depart from New York in the first segment 906, fly through the second segment 908 and the third segment 910, and then arrive at Seattle in the fourth segment 912. Figure 9 In FIG, the second flight plan 904 indicates that the aircraft departs from New York in the first segment 906, flies through the third segment 910, and then arrives at Seattle in the fourth segment 912. Figure 9 , the second flight plan 904 avoids flying through the congested second segment 908 .
[0149] In some examples, second computing system 114 queries Figure 1The ART prediction system 104 may be configured to predict and / or otherwise determine traffic counts for the first through fourth segments 906, 908, 910, 912 during periods when aircraft are expected to fly over these segments. For example, Figure 2 The query controller 214 can call Figure 2 ART segment service 216 to execute the trained one of ML models 470 to determine traffic counts for the first to fourth segments 906, 908, 910, 912 in the upcoming time period. In such an example, Figure 2 The segment data generator 218 may package, aggregate, and / or otherwise compile the traffic counts in a data format to be sent to the second computing system 114 (e.g., a compatible data format of the second computing system 114).
[0150] In some examples, in response to obtaining traffic counts from ART prediction system 104, second computing system 114 may adjust first flight plan 902 to second flight plan 904 before the aircraft departs from New York. For example, second computing system 114 may determine that the aircraft can avoid congested sectors, such as second sector 908, by flying around second sector 908 via third sector 910. In such an example, second computing system 114 may instruct the aircraft to execute second flight plan 904 before departing from New York.
[0151] In some examples, in response to obtaining traffic counts from ART prediction system 104, second computing system 114 may adjust first flight plan 902 to second flight plan 904 after the aircraft departs from New York. For example, the aircraft may be in first sector 906 after takeoff. In such an example, second computing system 114 may determine that the aircraft can avoid congested sectors, such as second sector 908, by flying around second sector 908 via third sector 910. In such an example, second computing system 114 may instruct the aircraft to adjust from first flight plan 902 to second flight plan 904 after taking off from New York. Advantageously, ART prediction system 104 may reduce congestion in a sector by redirecting an aircraft with a flight plan that includes a congested sector to a less congested sector before the aircraft takes off or while the aircraft is in flight.
[0152] Figures 10 to 18 Shown is the implementation Figure 1 and / or Figure 2 Example hardware logic, machine readable instructions, flowcharts and / or source code for the ART prediction system 104 of the embodiment of the present invention, a hardware-implemented state machine and / or any combination thereof. The machine readable instructions may be instructions for executing the ART prediction system 104 by a computer processor (such as the following in combination with Figure 19The processor 1912 shown in the example processor platform 1900 discussed above is one or more executable programs or portions of executable programs executed by the processor 1912. The programs may be embodied in software stored on a non-transitory computer-readable storage medium such as a CD-ROM, floppy disk, hard drive, DVD, Blu-ray disk, or memory associated with the processor 1912, but all programs and / or portions thereof may alternatively be executed by other means besides the processor 1912 and / or embodied in firmware or dedicated hardware. Furthermore, although reference is made to Figures 10 to 18 The example program is described with reference to the flowcharts and / or source code illustrated in the accompanying drawings, but many other methods of implementing the example ART prediction system 104 may alternatively be used. For example, the order of execution of the blocks may be changed, and / or some of the blocks may be changed, eliminated, or combined. Additionally or alternatively, any or all of the blocks may be implemented by one or more hardware circuits (e.g., discrete and / or integrated analog and / or digital circuits, FPGAs, ASICs, comparators, operational amplifiers (op-amps), logic circuits, etc.) configured to perform the corresponding operations without executing software or firmware.
[0153] The machine-readable instructions described herein may be stored in one or more of a compressed format, an encrypted format, a segmented format, a compiled format, an executable format, a packaged format, and the like. The machine-readable instructions described herein may be stored as data (e.g., portions of instructions, code, representations of code, and the like) that can be used to create, manufacture, and / or generate machine-executable instructions. For example, the machine-readable instructions may be segmented and stored on one or more storage devices and / or computing devices (e.g., a server). The machine-readable instructions may require one or more of installation, modification, adaptation, updating, combination, supplementation, configuration, decryption, decompression, unpacking, distribution, reassignment, compilation, and the like so that the machine-readable instructions can be directly read, interpreted, and / or executed by a computing device and / or other machine. For example, the machine-readable instructions may be stored in multiple parts that are individually compressed, encrypted, and stored on separate computing devices, where the parts, when decrypted, decompressed, and combined, form an executable instruction set that implements a program such as described herein.
[0154] In another example, the machine-readable instructions may be stored in a computer-readable state, but may require the addition of a library (e.g., a dynamic link library (DLL)), a software development kit (SDK), an application programming interface (API), etc., in order to execute the instructions on a particular computing device or other device. In another example, the machine-readable instructions and / or corresponding program may need to be configured (e.g., stored settings, data inputs, recorded network addresses, etc.) before they can be executed in whole or in part. Thus, the disclosed machine-readable instructions and / or corresponding program are intended to encompass such machine-readable instructions and / or programs, regardless of the particular format or state of the machine-readable instructions and / or program when stored or otherwise at rest or in transit.
[0155] The machine-readable instructions described herein may be expressed in any past, present, or future instruction language, scripting language, programming language, etc. For example, the machine-readable instructions may be expressed in any of the following languages: C, C++, Java, C#, Perl, Python, JavaScript, Hypertext Markup Language (HTML), SQL, Swift, etc.
[0156] As mentioned above, Figures 10 to 18 The example processes of can be implemented using executable instructions (e.g., computer and / or machine readable instructions) stored on a non-transitory computer and / or machine readable medium, such as a hard drive, flash memory, read-only memory, compact disc, digital versatile disc, cache memory, random access memory, and / or any other storage device or storage disk in which information is stored for any duration (e.g., for an extended period, permanently, for temporary buffering, and / or for caching of information). As used herein, the term non-transitory computer readable medium is expressly defined to include any type of computer readable storage device and / or storage disk and to exclude propagating signals and to exclude transmission media.
[0157] "Including" and "comprising" (and all forms and tenses thereof) are used herein as open-ended terms. Thus, whenever a claim adopts any form of "include" or "comprise" (e.g., comprises, includes, comprising, including, having, etc.) as a preamble or used within any type of claim recitation, it is to be understood that additional elements, terms, etc. may be present without falling outside the scope of the corresponding claim or recitation. As used herein, the phrase "at least" when used as a transitional term, such as in the preamble of a claim, is open-ended in the same manner as the open-ended terms "comprising" and "including." The term "and / or," when used, for example, in a form such as A, B, and / or C, refers to any combination or subset of A, B, and C, such as (1) only A, (2) only B, (3) only C, (4) A and B, (5) A and C, (6) B and C, and (7) A and B and C. As used herein in the context of describing structures, components, items, objects, and / or things, the phrase "at least one of A and B" is intended to refer to implementations that include any of (1) at least one A, (2) at least one B, and (3) at least one A and at least one B. Similarly, as used herein in the context of describing structures, components, items, objects, and / or things, the phrase "at least one of A and B" is intended to refer to implementations that include any of (1) at least one A, (2) at least one B, and (3) at least one A and at least one B. As used herein in the context of describing the performance or execution of processes, instructions, actions, activities, and / or steps, the phrase "at least one of A or B" is intended to refer to implementations that include any of (1) at least one A, (2) at least one B, and (3) at least one A and at least one B. As used herein in the context of describing the performance or execution of processes, instructions, actions, activities, and / or steps, the phrase "at least one of A and B" is intended to refer to implementations that include any of (1) at least one A, (2) at least one B, and (3) at least one A and at least one B. Similarly, as used herein in the context of describing the performance or execution of processes, instructions, actions, activities, and / or steps, the phrase "at least one of A or B" is intended to refer to implementations that include any of (1) at least one A, (2) at least one B, and (3) at least one A and at least one B.
[0158] As used herein, singular references (e.g., "a," "first," "second," etc.) do not exclude a plurality. As used herein, the term "a or an" entity refers to one or more of that entity. The terms "a and an," "one or more," and "at least one" may be used interchangeably herein. Moreover, although listed separately, multiple means, elements, or method actions may be implemented by, for example, a single unit or processor. Additionally, although separate features may be included in different examples or claims, these separate features may be combined, and such inclusion in different examples or claims does not mean that a combination of features is not feasible and / or disadvantageous.
[0159] Figure 10 Depicted is an example source code 1000 representing example computer-readable instructions that may be executed by Figure 2 and / or Figure 4 ART Segment Service 216 is executed to determine the traffic count for the segment of interest. In some examples, source code 1000 represents a service (e.g., a microservice) that, when executed, can call Figure 4 The ML model 470 is used to determine traffic counts, predict traffic counts, etc. for one or more segments of interest.
[0160] For example, Figure 4 The traffic count determiner 430 and / or more generally the ART segment service 216 may execute a service "getOneSectorCount" and when executed, the service may be based on the Figure 2 ART data 222 included in the second database 208 of , to determine the segment count of a segment during a period spanning one or more days. In other examples, Figure 4 The traffic count predictor 440 and / or more generally the ART segment service 216 may execute a service "predictSectorCountWeekDay", and when executed, the service may call the ML model 470 to determine the segment counts for one or more segments during a period spanning a day (e.g., a twenty-four (24) hour period). In still other examples, Figure 4The segment parameter determiner 450 and / or more generally the ART segment service 216 may execute a service “getMeanPastDailySectorCountAllDays” and when executed, the service may determine the mean, average, etc. of the daily segment counts for a segment for one or more consecutive days in the past. Additionally or alternatively, the traffic count determiner 430, the traffic count predictor 440, the segment parameter determiner 450 and / or more generally the ART segment service 216 may execute a service included in Figure 10 The source code 1000 and / or a service associated with the source code to generate segment count related data for one or more segments of interest.
[0161] Figure 11 is a flow chart representing example machine readable instructions 1100 that may be executed to implement Figure 1 and / or Figure 2 The ART prediction system 104 is used to determine traffic counts for airway traffic segments. Figure 11 The machine readable instructions 1100 begin at block 1102 where the ART prediction system 104 obtains ART data. For example, the first network interface 202 ( Figure 2 ) can obtain ART data 222 from the first network 110. In such an example, the first network interface 202 can obtain the ART data 222 associated with the aircraft 106A to 106F ( Figure 1 ), such as flight number and / or corresponding arrival and / or departure airports, aircraft airspeed, aircraft altitude, aircraft position, aircraft waypoint information (e.g., previous, current or immediate, or future waypoints of the aircraft), airspace segment information (e.g., previous, current or immediate, or future segments of the aircraft), etc., and / or combinations thereof.
[0162] At block 1104, the ART prediction system 104 generates a pre-processed database. For example, the database controller 204 ( Figure 2 ) can inspect, discard, parse, and / or store part or all of the FIXM messages (e.g., one of the messages 223) included in the ART data 222 based on one or more rules. In such an example, the database controller 204 can generate the first database 206 ( Figure 2 ) and the second database 208 ( Figure 2 ). The following is combined Figure 12 1104. Example processing that may be performed to implement block 1104 is described below.
[0163] At block 1106, the ART prediction system 104 uses the pre-processed database to train the ML model. For example, the ML controller 420 ( Figure 4 ) and / or more generally ART segment services 216 ( Figure 2 ) can train the RNN using data stored in the second database 208. In such an example, the ML controller 420 can store the trained ML model as the ART segment service database 460 ( Figure 4 ) included in the ML model 470 ( Figure 4 ). The following is combined Figure 14 1106. Example processing that may be performed to implement block 1106 is described below.
[0164] At block 1108, the ART prediction system 104 executes the trained ML model to generate traffic counts for the segment. For example, the ML controller 420 and / or more generally the ART segment service 216 may execute the trained ML model 470 to generate, during the period of interest, Figure 9 Traffic counts for at least one of the first segment 906, the second segment 908, the third segment 910, and the fourth segment 912 in FIG.
[0165] At block 1110, the ART prediction system 104 sends the traffic counts for the segments to the computing system. For example, the second network interface 212 may send the traffic counts for at least one of the first segment 906, the second segment 908, the third segment 910, and the fourth segment 912 to the computing system. Figure 1 one or more computing systems in the second computing system 114, Figure 2 One or more computing devices among computing devices 226, 228, 230, etc., and / or combinations of these.
[0166] At block 1112, the ART prediction system 104 adjusts the airway traffic based on the traffic counts of the segments. For example, in response to the second network interface 212 sending the traffic counts of at least one of the first segment 906, the second segment 908, the third segment 910, and the fourth segment 912, Figure 1 one or more computing systems in the second computing system 114, Figure 2 One or more of the computing devices 226, 228, 230, etc. may direct, instruct, and / or otherwise invoke the aircraft (e.g., Figure 1 In such an example, Figure 1 one or more computing systems in the second computing system 114, Figure 2One or more computing devices 226, 228, 230 of the aircraft may invoke the aircraft from Figure 9 The first flight plan 902 was transformed into Figure 9 In some examples, the aircraft transitions to second flight plan 904 before taking off from the departure airport. In some examples, the aircraft transitions to second flight plan 904 while in flight and / or otherwise executing first flight plan 902.
[0167] At block 1114, the ART prediction system 104 determines whether there is new ART data to be processed. For example, the database controller 204 may determine whether there is unprocessed ART data that can be retrieved from the first network 110, via the first network 110, etc. At block 1114, if the ART prediction system 104 determines that there is new ART data to be processed, then control returns to block 1102 to obtain the new ART data; otherwise, the database controller 204 may determine whether there is unprocessed ART data that can be retrieved from the first network 110, via the first network 110, etc. Figure 11 The machine readable instructions 1100 end.
[0168] Figure 12 is a flow chart representing example machine readable instructions 1200 that may be executed to implement Figure 2 and / or Figure 3 The database controller 204 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is used to generate a pre-processed database. Figure 12 The machine-readable instructions 1200 may be executed to implement Figure 11 Frame 1104. Figure 12 The machine readable instructions 1200 begin at block 1202 where the database controller 204 identifies the aircraft based on data fields included in the first and second messages of the ART data. For example, the ART data 222 ( Figure 2 ) may include message 223( Figure 2 ), wherein the first message includes a first data field, the first data field including Figure 2 In such an example, data extractor 310 ( Figure 3 ) may identify the second aircraft 106B based on the first data field.
[0169] At block 1204, the database controller 204 generates a first database entry field in the original database by storing the first data field in the data field of the first message in the first database entry field. For example, the index generator 320 ( Figure 3 ) can be achieved by sending message 223( Figure 2 ) data field 225( Figure 2 ) is stored in one or more data fields in the database entry fields 502, 504, 506, 508, 510, 512, 514 ( Figure 5 ) to generate the one or more database entry fields 502, 504, 506, 508, 510, 512, 514.
[0170] At block 1206, the database controller 204 generates a first database entry in the original database by storing the first database entry field in the first database entry. For example, the index generator 320 may generate a first database entry by storing one or more of the database entry fields 502, 504, 506, 506, 508, 510, 512, 514 in the database entry 500 ( Figure 5 ) to generate the database entry 500.
[0171] At block 1208, the database controller 204 generates a second database entry in the pre-processed database based on the first database entry field. For example, the index generator 320 may generate a second database entry in the second database 208 ( Figure 2 ), each second database entry includes database entry fields, such as flight number, message type, etc. For example, the index generator 320 may generate a database entry with the first database entry field 502 ( Figure 5 )'s database entry 500( Figure 5 ), and stores the database entry 500 in the second database 208.
[0172] At block 1210, the database controller 204 stores one (or more) of the data fields of the second message in the second database entry based on the fields of the first database entry. For example, the data mapper 330 ( Figure 3 ) can identify a first set of one or more first database entries in a first data entry of the first database 206 that includes a first flight number, a first message type, etc. In such an example, the data mapper 330 can identify a second set of one or more second database entries in a second data entry of the second database 208 that includes the first flight number, the first message type, etc. The data mapper 330 can map the first set to a second set based on the identification. The data mapper 330 can populate the second set with data or information included in and / or associated with the first set. For example, the data mapper 330 can populate the database entry 500 with data stored in a database entry field of a mapped database entry in the first database entry.
[0173] At block 1212, the database controller 204 indexes the second database entries to improve query operations associated with the pre-processed database. For example, the index generator 320 may perform one or more data structuring, data sorting, and other operations on the second database 208 to reduce latency and / or increase query processing speed.
[0174] At block 1214, the database controller 204 correlates the information included in the second database entry to determine the segment information. For example, the data correlator 340 ( Figure 3 ) can correlate and / or otherwise associate the arrival airport, departure airport, aircraft type, airline, etc. within the second database entry with one or more segments. In such an example, the data correlator 340 can determine one or more segments that the flight number has flown previously, is currently flying, or will fly in the future. For example, the data correlator 340 can do one of the following: (1) determine that the database entry in the second database 208 is associated with the departure airport, New York, based on the database entry for the departure airport. Figure 9 (2) determining, based on the database entry including the first waypoint in the second section 908, that the database entry in the second database 208 is associated with Figure 9 (3) determining, based on the database entry including the second waypoint in the third section 910, that the database entry in the second database 208 is associated with Figure 9 or (4) determining, based on a database entry including an arrival airport in Seattle, that a database entry in the second database 208 is associated with Figure 9 The fourth segment 912 is associated with .
[0175] At block 1216, the database controller 204 determines a traffic count for the segment based on the orrelated information. For example, the traffic count generator 350 may determine, based on the orrelated information, for one or more previous time periods, Figure 9 The traffic count of at least one of the first segment 906, the second segment 908, the third segment 910 and the fourth segment 912 in FIG. Figure 13 In response to determining the traffic count for the segment based on the relevant information at block 1216, control returns to Figure 11 Block 1106 of the machine readable instructions 1100 of the embodiment of the present invention may be to use the pre-processed database to select an ML model to train.
[0176] Figure 13is a flow chart representing example machine readable instructions 1300 that may be executed to implement Figure 2 and / or Figure 3 The database controller 204 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is used to determine the traffic count of the segment based on the relevant information. Figure 13 The machine-readable instructions 1300 may be executed to implement Figure 12 Box 1216. Figure 13 The machine readable instructions 1300 begin at block 1302 where the database controller 204 identifies a segment associated with a second database entry. For example, the traffic count generator 350 ( Figure 3 ) can determine the second database 208 ( Figure 2 ) and the second database entry included in Figure 9 The first to fourth sections 906, 908, 910, 912 are associated.
[0177] At block 1304, the database controller 204 selects a time range of interest for processing. For example, the traffic count generator 350 may select a first time bucket for processing. At block 1306, the database controller 204 selects a time bucket of interest for processing. For example, the traffic count generator 350 may select Figure 9 The first segment 906 is processed.
[0178] At block 1308, the database controller 204 determines a traffic count for the selected sector for the selected time range based on the timestamps of the sector entry and exit. For example, the traffic count generator 350 may determine the number of aircraft (e.g., Figure 1 The amount of aircraft 106A to 106F).
[0179] At block 1310, the database controller 204 determines whether to select another segment of interest for processing. For example, the traffic count generator 350 may determine to select Figure 9 The second segment 908 of the traffic count generator 350 may be processed. In other examples, the traffic count generator 350 may determine that all segments of interest have been processed.
[0180] At block 1310, if the database controller 204 determines that another segment of interest is selected for processing, control returns to block 1306 to select another segment of interest for processing. If the database controller 204 determines that another segment of interest is not selected for processing at block 1310, then at block 1312, the database controller 204 determines whether to select another time range of interest for processing. For example, the traffic count generator 350 may determine that a second time segment is selected for processing. In other examples, the traffic count generator 350 may determine that all time segments of interest have been processed.
[0181] At block 1312, if the database controller 204 determines to select another time segment of interest for processing, the control returns to block 1304 to select another time segment of interest for processing. At block 1312, if the database controller 204 determines not to select another time segment of interest for processing, the control returns to block 1304 to select another time segment of interest for processing. Figure 11 Block 1106 of the machine readable instructions 1100 of the embodiment of the present invention may be to use the pre-processed database to select an ML model to train.
[0182] Figure 14 is a flow chart representing example machine readable instructions 1400 that may be executed to implement Figure 2 and / or Figure 4 ART Segment Service 216 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is configured to select an ML model to be trained using the preprocessed database. Figure 14 The machine-readable instructions 1400 may be executed to implement Figure 14 Frame 1106.
[0183] Figure 14 The machine readable instructions 1400 begin at block 1402 where the ART segment service 216 executes the ML model based on cross validation using the pre-processed database. For example, the ML controller 420 ( Figure 4 ) may perform and / or otherwise execute a cross-validation operation on a plurality of ML models including a first ML model (e.g., a regression model), a second ML model (e.g., an RNN), etc. In such an example, the ML controller 420 may execute the plurality of ML models in response to executing the cross-validation operation.
[0184] At block 1404 , the ART segment service 216 determines ML model scores based on cross-validation. For example, the ML controller 420 may determine cross-validation scores for the first ML model, the second ML model, and so on.
[0185] At block 1406, the ART segment service 216 determines a difference between the observed aircraft traffic count (ATCS) and the generated ATC using the ML model. For example, the ML controller 420 may determine a difference between a first aircraft traffic count and a second aircraft traffic count. The ML model may generate a first aircraft traffic count for the airspace segment for a period of interest (e.g., a past or historical period). The second aircraft traffic count may represent a value of an aircraft traffic count associated with the airspace observed for the period of interest. In such an example, the ML controller 420 may determine that the first ML model has a first difference based on a difference between: (1) a first count generated by the first ML model and (2) a second count stored in the second database 208. The ML controller 420 may determine that the second ML model has a second difference based on a difference between: (1) a third count generated by the second ML model and (2) the second count. In such an example, the ML controller 420 may determine that the first difference is less than the second difference.
[0186] At block 1408, the ART segment service 216 selects the ML model with the highest score and / or lowest variance. For example, the ML controller 420 may identify and / or otherwise determine that the first ML model has the highest cross-validation score relative to the plurality of ML models and / or that the first ML model has the lowest variance.
[0187] At block 1410, the ART segment service 216 obtains segment information including traffic counts from a pre-processed database. For example, the ML controller 420 may obtain the segment information from the second database 208 ( Figure 2 ) to get traffic counts.
[0188] At block 1412, the ART segment service 216 determines the training data for training the ML model with the highest score. For example, the ML controller 420 may identify segment information corresponding to one or more segments as training data that may be used to train a regression model, RNN, etc. with the highest cross-validation score. Figure 15 1412 to describe an example process that may be used to implement block 1412 .
[0189] At block 1414, the ART segment service 216 trains the ML model using the training data. For example, the ML controller 420 may train the first ML model with the highest cross-validation score using the training data from which outlier data has been removed.
[0190] At block 1416, the ART segment service 216 compiles the trained ML model into a computer-readable executable file. For example, the ML controller 420 may compile the trained instance or version of the first ML model into a computer-readable executable file. In such an example, the computer-readable executable file may be a binary file, an executable file, etc. The ML controller 420 may use the computer-readable executable file as the ML model 470 ( Figure 4 ) is stored in the ART segment service database 460 ( Figure 4 In response to compiling the trained ML model into a computer-readable executable file at block 1416, control returns to Figure 11 Block 1108 of the machine readable instructions 1100 of FIG. 1104 may be used to execute the trained ML model to generate traffic counts for the segment.
[0191] Figure 15 is a flow chart representing example machine readable instructions 1500 that may be executed to implement Figure 2 and / or Figure 4 ART Segment Service 216 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is used to determine training data for training the machine learning model. Figure 15 The machine-readable instructions 1500 may be executed to implement Figure 14 Frame 1412.
[0192] Figure 15 The machine readable instructions 1500 begin at block 1502 where the ART segment service 216 selects a time range of interest for processing. For example, the ML controller 420 ( Figure 4 ) can select the twentieth time segment for processing.
[0193] At block 1504, the ART segment service 216 determines traffic counts for each segment of interest within the selected time range. For example, the ML controller 420 may determine that Figure 6 The first to fourth segments are counted 616, 618, 620, 622.
[0194] At block 1506 , the ART segment service 216 determines a threshold based on the traffic counts. For example, the ML controller 420 may determine the threshold value to be 0.5 by normalizing the average values of the first to fourth segment counts 616 , 618 , 620 , and 622 within a range of 0 to 1.0.
[0195] At block 1508, the ART segment service 216 selects a segment of interest for processing. For example, the ML controller 420 may select Figure 6 The first segment of the first ART segment curve 602 corresponds to the first segment.
[0196] At block 1510, the ART segment service 216 determines whether the rejection index of the selected segment satisfies a threshold value. For example, the ML controller 420 may determine that the rejection index of the first segment corresponding to the first ART segment curve 602 is approximately 0.3. In such an example, the ML controller 420 may determine that the rejection index of the first segment corresponding to the first ART segment curve 602 is approximately 0.3. Figure 6 The absolute index 0.3 is determined by normalizing the absolute value difference between the first segment count 616 and the average of the plurality of segment counts including the first to fourth segment counts 616, 618, 620, and 622. The ML controller 420 may determine that the rejection index 0.3 does not meet the threshold value 0.5 by determining that the rejection index 0.3 is less than the threshold value 0.5.
[0197] At block 1510, if the ART segment service 216 determines that the rejection index of the selected segment does not satisfy the threshold value, control proceeds to block 1514 to determine whether to select another segment of interest for processing. At block 1510, if the ART segment service 216 determines that the rejection index of the selected segment satisfies the threshold value, then at block 1512, the ART segment service 216 identifies the segment information corresponding to the segment as training data, and control proceeds to block 1514. For example, the ML controller 420 may determine that the segment of interest may be selected for processing. Figure 6 Segment information associated with the first ART segment curve 602 is included in the training data to train one or more ML models.
[0198] At block 1514, the ART segment service 216 determines whether to select another segment of interest for processing. For example, the ML controller 420 may determine whether to select another segment of interest for processing. Figure 6 The second segment of the ART segment curve 604 corresponds to the second ART segment curve 604. In other examples, the ML controller 420 may determine that all segments of interest have been processed and, thus, may determine that there is no further segment of interest to process.
[0199] At block 1514, if the ART segment service 216 determines that there is another segment of interest to be processed, control returns to block 1508 to select another segment of interest for processing. At block 1514, if the ART segment service 216 determines that there is no more segment of interest to be processed, then at block 1516, the ART segment service 216 determines whether to select another time range of interest for processing. For example, the ML controller 420 may determine to select the 21st time segment, the 30th time segment, and so on for processing. In other examples, the ML controller 420 may determine that all time segments of interest have been processed and, therefore, may determine that there is no more time segment of interest to be processed.
[0200] At block 1516, if the ART segment service 216 determines that another time range of interest is selected for processing, then control returns to block 1502 to select another time range of interest for processing. At block 1516, if the ART segment service 216 determines that another time range of interest is not selected for processing, then control returns to block 1502 to select another time range of interest for processing. Figure 14 Block 1412 of the machine readable instructions 1400 of FIG. 1404 may further include executing step 1412 of the machine readable instructions 1400 to train the ML model with the highest score using the training data.
[0201] Figure 16 is a flow chart representing example machine readable instructions 1600 that may be executed to implement Figure 2 The ART predictive controller 210 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is based on Figure 1 one or more computing systems in the second computing system 114, Figure 2 The traffic count is determined by querying one or more of the computing devices 226, 228, 230, etc., and / or combinations thereof.
[0202] Figure 16 The machine readable instructions 1600 begin at block 1602 where the ART prediction controller 210 generates a query for a spatial segment to the ART prediction system 104. For example, the query controller 214 ( Figure 2 ) can be based on the second network interface 212 ( Figure 2 ) to generate a query. In such an example, the second network interface 212 can generate a query from a request obtained by the third computing device 230 ( Figure 2 ) executed on the host application 224 ( Figure 2 ) to obtain Figure 9The query controller 214 may call the ART segment service 216 ( Figure 2 ) to determine traffic counts.
[0203] At block 1604, the ART prediction controller 210 determines a segment count for the airspace segment of the first time period based on the query. For example, the ART segment service 216 may determine a first segment count for the second segment 908 for the first time segment. In such an example, the traffic count determiner 430 ( Figure 4 ) can query the first segment count from the second database 208.
[0204] At block 1606, the ART prediction controller 210 predicts a segment count for the airspace segment for the second time period. For example, the ART segment service 216 may determine a second segment count for the second segment 908 for the second time segment. In such an example, the ML controller 420 ( Figure 4 ) can execute ML model 470( Figure 4 ) to predict and / or otherwise determine a second segment count for a second time segment.
[0205] At block 1608, the ART prediction controller 210 determines that the segment count for the second time period meets a threshold. For example, the ART segment service 216 may determine that the number of aircraft predicted to be in the second segment 908 during the second time segment is greater than a threshold (e.g., a predefined threshold of aircraft that may be in the segment during the time segment, a government-regulated threshold of aircraft that may be in the segment during the time segment, etc.).
[0206] At block 1610, the ART prediction controller 210 determines a flight plan that includes an airspace segment. For example, the ART segment service 216 may determine that the first flight plan 902 includes the second segment 908 during the second time segment. In such an example, the ART segment service 216 may generate a recommendation to the requesting computing system to adjust from the first flight plan 902 to the second flight plan 904, wherein the second flight plan 904 does not include the second segment 908 during the second time segment.
[0207] At block 1612, the ART prediction controller 210 generates a graphics resource rendering. For example, the graphics resource renderer 220 ( Figure 2 ) can generate a graph, a plot, a table, etc. based on the first segment count, the first segment count parameter, the second segment count and / or the second count parameter.
[0208] At block 1614, the ART prediction controller 210 generates segment data. For example, the ART segment service 216 may determine a first segment count parameter based on the first segment count. In such an example, the segment parameter determiner 450 ( Figure 4 ) can be executed and / or otherwise called Figure 10 The source code 1000 of the ART segment service 216 may be configured to use a service "getMeanPastDailySectorCountAllDays" to calculate the average daily segment count for a first segment for one or more past continuous days. In other examples, the ART segment service 216 may determine a second segment count parameter based on the second segment count. In such an example, the segment parameter determiner 450 may execute and / or otherwise call a service to calculate the average daily segment count for a second segment for one or more upcoming continuous days. The segment data generator 218 ( Figure 2 ) can package, encapsulate and / or otherwise convert segment counts, segment count parameters, graphics resource presentations, etc. into a data format that can be read by a requesting computing device in the computing devices 226, 228, and 230.
[0209] At block 1616, the ART prediction controller 210 sends the recommendation and the segment data to the computing system. For example, the second network interface 212 can send (1) the recommendation for adjusting to the second flight plan 904 and (2) the segment data to the host application 224 of the third computing device 230 via the second network 116. In response to sending the recommendation and the segment data to the computing system at block 1616, Figure 16 The machine readable instructions 1600 end.
[0210] Figure 17 is a flow chart representing example machine readable instructions 1700 that may be executed to implement Figure 1 and / or Figure 2 The ART prediction system 104 is used to process the ART data. Figure 17 The machine readable instructions 1700 begin at block 1702 where the ART prediction system 104 obtains ART data. For example, the network interface 202 ( Figure 2 ) can obtain ART data 222 via the first network 110 ( Figure 2 ).
[0211] At block 1704, the ART prediction system 104 identifies data messages included in the ART data. For example, the database controller 204 ( Figure 2 ) can determine that the ART data 222 includes a message 223 ( Figure 2 ) in the first and second messages.
[0212] At block 1706, the ART prediction system 104 identifies the data fields included in the data message. For example, the database controller 204 may determine that the first message includes at least the data field 225 ( Figure 2 ), and the second message includes at least the second data field and the third data field in data field 225.
[0213] At block 1708, the ART prediction system 104 determines whether the data field violates the first rule. For example, when the data field of the data message and / or more generally the data message includes weather data and / or is otherwise associated with weather data, the database controller 204 may determine that the first data field and / or more generally the first data message violates the first rule indicating that the data message should be discarded.
[0214] At block 1708, if the ART prediction system 104 determines that the data field does not violate the first rule, control passes to block 1712 to determine whether the data field violates the second rule. At block 1708, if the ART prediction system 104 determines that the data field violates the first rule, at block 1710, the ART prediction system 104 discards the message associated with the data field that violates the first rule, and control passes to block 1712. For example, when the first data field violates the first rule, the database controller 204 may discard the first data message.
[0215] At block 1712, the ART prediction system 104 determines whether the data field violates the second rule. For example, when the data field includes and / or is otherwise associated with a non-interest segment or an unanalyzed segment, the database controller 204 may determine that the second data field violates the second rule indicating a discarded data field.
[0216] At block 1712, if the ART prediction system 104 determines that the data field does not violate the second rule, control proceeds to block 1716 to store the remaining data fields and / or data messages that do not violate the first rule and the second rule. At block 1712, if the ART prediction system 104 determines that the data field violates the second rule, at block 1714, the ART prediction system 104 discards the data field that violates the second rule. For example, when the second data field violates the second rule, the database controller 204 may discard the second data field.
[0217] At block 1716, the ART prediction system 104 stores the remaining data fields and / or data messages that do not violate the first rule and the second rule. For example, when the third data field does not violate multiple rules including the first rule and the second rule, the database controller 204 may store the third data field. In response to storing the remaining data fields and / or data messages that do not violate the first rule and the second rule at block 1716, Figure 17 The machine readable instructions 1700 end.
[0218] Figure 18 is a flow chart representing example machine readable instructions 1800 that may be executed to implement Figure 2 The ART predictive controller 210 and / or more generally Figure 1 and / or Figure 2 The ART prediction system 104 is used to calculate airspace traffic counting parameters. Figure 18 The machine readable instructions 1800 begin at block 1802 where the ART prediction controller 210 configures the thresholds for the spatial domain segments for a certain time period. For example, the segment parameter determiner 450 ( Figure 4 ) can be configured and / or otherwise determined by: Figure 2 The segment parameter determiner 450 may determine the value of the threshold for the corresponding segment of interest in the segments of interest for the future period based on at least one of: (1) a first flight plan for the plurality of aircraft 106A to 106F during the future period; (2) weather information associated with the segment of interest during the future period; or (3) historical information including at least one of a second flight plan and second weather information associated with the segment during a previous period, a historical period, a period before the future period, or the like.
[0219] At block 1804, the ART prediction controller 210 determines a first aircraft traffic count by querying a database. For example, the traffic count determiner 430 ( Figure 4 ) can be obtained by querying the second database 208 ( Figure 2 ), to determine Figure 9 The first traffic counts for the first segment 906, the second segment 908, etc. In such examples, the first traffic counts may be observed traffic counts or previously determined traffic counts for the first segment 906, the second segment 908, etc.
[0220] At block 1806, ART prediction controller 210 predicts the second aircraft traffic count by executing a machine learning (ML) model. For example, ML controller 420 may execute ML model 470 ( Figure 4) to predict second aircraft traffic counts for the first segment 906, the second segment 908, and so on for future time periods.
[0221] At block 1808, the ART prediction controller 210 calculates an airspace traffic count parameter based on at least one of the first or second aircraft traffic counts. For example, the segment parameter determiner 450 may calculate and / or otherwise determine one or more airspace traffic count parameters based on at least one of the first aircraft traffic count and the second aircraft traffic count. In such an example, the segment parameter determiner 450 may perform Figure 10 In response to calculating the airspace traffic counting parameters at block 1808, one or more of the services depicted in the source code 1000 of FIG. Figure 18 The machine readable instructions 1800 end.
[0222] Figure 19 is constructed to execute Figures 10 to 18 Instructions to achieve Figure 1 and / or Figure 2 1. Block diagram of an example processor platform 1900 for the ART prediction system 104. The processor platform 1900 may be, for example, a server, a personal computer, a workstation, a self-learning machine (eg, a neural network), or any other type of computing device.
[0223] The processor platform 1900 of the illustrated example includes a processor 1912. The processor 1912 of the illustrated example is hardware. For example, the processor 1912 may be implemented by one or more integrated circuits, logic circuits, microprocessors, GPUs, DSPs, or controllers from any desired family or manufacturer. The hardware processor may be a semiconductor (e.g., silicon-based) device. In this example, the processor 1912 implements Figure 3 The example data extractor 310, the example index generator 320, the example data mapper 330, the example data correlator 340, and the example traffic count generator 350 and / or more generally Figure 2 and / or Figure 3 In this example, the processor 1912 implements Figure 4 The example ML controller 420, the example traffic count determiner 430, the example traffic count predictor 440, and the example segment parameter determiner 450 and / or more generally Figure 2 and / or Figure 4 Example ART segment service 216. In this example, the processor 1912 implements Figure 2The example query controller 214, the example ART segment service 216, the example segment data generator 218, and the example graphic resource renderer 220 and / or more generally Figure 2 ART prediction controller 210.
[0224] The processor 1912 of the illustrated example includes a local memory 1913 (e.g., a cache memory). The processor 1912 of the illustrated example communicates with a main memory including a volatile memory 1914 and a non-volatile memory 1916 via a bus 1918. The volatile memory 1914 may be implemented by SDRAM, DRAM, RDRAM, and / or any other type of random access memory device. The non-volatile memory 1916 may be implemented by flash memory and / or any other desired type of memory device. Access to the main memory 1914, 1916 is controlled by a memory controller.
[0225] The processor platform 1900 of the illustrated example also includes an interface circuit 1920. The interface circuit 1920 may be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), Interface, Near Field Communication (NFC) interface and / or PCI expansion interface. In this example, the interface circuit 1920 implements Figure 2 A first example network interface 202, Figure 2 The second example network interface 212 and Figure 4 An example database interface 410 is provided.
[0226] In the example shown, one or more input devices 1922 are connected to the interface circuit 1920. The input devices 1922 permit a user to enter data and / or commands into the processor 1912. The input devices 1922 may be implemented, for example, by an audio sensor, a microphone, a camera (still or video), a keyboard, buttons, a mouse, a touch screen, a trackpad, a trackball, an isopoint device, and / or a voice recognition system.
[0227] One or more output devices 1924 are also connected to the interface circuit 1920 of the illustrated example. The output device 1924 can be implemented, for example, by a display device (e.g., a light-emitting diode (LED), an organic light-emitting diode (OLED), a liquid crystal display (LCD), a cathode ray tube display (CRT), an in-place switching (IPS) display, a touch screen, etc.), a touch output device, a printer, and / or a speaker. The interface circuit 1920 of the illustrated example thus typically includes a graphics driver card, a graphics driver chip, and / or a graphics driver processor.
[0228] The interface circuitry 1920 of the illustrated example also includes a communication device (such as a transmitter, receiver, transceiver, modem, residential gateway, wireless access point, and / or network interface) to facilitate data exchange with an external machine (e.g., any kind of computing device) via a network 1926. This communication may be, for example, via an Ethernet connection, a digital subscriber line (DSL) connection, a telephone line connection, a coaxial cable system, a satellite system, a field-line wireless system, a cellular telephone system, etc.
[0229] The processor platform 1900 of the illustrated example also includes one or more mass storage devices 1928 for storing software and / or data. Examples of such mass storage devices 1928 include floppy disk drives, hard disk drives, optical disk drives, Blu-ray disk drives, redundant array of independent disks (RAID) systems, and digital versatile disk (DVD) drives. In this example, the one or more mass storage devices 1928 implement Figure 2 The first example database 206, Figure 2 The second example database 208 and Figure 4 The exemplary ART segment service database 460 (which includes Figure 4 Example ML model 470).
[0230] You can Figures 10 to 18 The machine-executable instructions (INSTR) 1932 are stored in the mass storage device 1928, in the volatile memory 1914, in the non-volatile memory 1916, and / or on a removable non-transitory computer-readable storage medium such as a CD or DVD.
[0231] In light of the foregoing, it will be appreciated that example systems, methods, apparatus, and articles of manufacture for improving aircraft traffic control have been disclosed. The examples disclosed above represent data management and analysis systems that can accurately predict and / or otherwise determine aircraft traffic counts for airspace segments within a NAS or other air traffic management environment. The examples disclosed above illustrate an ART prediction system that can be used by airlines and ANSPs as a ground-based decision support tool, or by flight crews as an air-based decision support tool. The ART prediction system can predict and / or otherwise determine aircraft traffic counts for an air traffic segment of interest to enable airlines to adjust flight plans or reroute aircraft to less densely trafficked or less congested airspace. Such adjustments can improve the efficiency of a NAS or other air traffic management environment, which can lead to greater automation, thereby reducing the workload currently managed by air traffic controllers.
[0232] The ART prediction system can continuously consume and learn from an average of millions of FIXM messages per day provided by the TFM data service. The ART prediction system can clean, correlate, index and store FIXM messages to be used by a set of microservices deployed on a cloud computing platform. Advantageously, by deploying the set of microservices on a cloud computing platform, the ART prediction system can be distributed, scalable and highly available. The disclosed systems, methods, devices and articles of manufacture improve the efficiency of using computing devices by executing ML models on the cleansed and correlated ART data, which enables the ART prediction system to evaluate multiple different types of ML models to identify which of the ML models can determine a high accuracy value. Therefore, the disclosed methods, devices and articles of manufacture are directed to one or more improvements in computer functionality.
[0233] Furthermore, this disclosure includes examples according to the following clauses:
[0234] Clause 1. A device (104), comprising: a network interface (202) for obtaining (1102) airway traffic data (222) associated with a plurality of aircraft (106A to 106F) flying in an airspace segment (906, 908, 910, 912), the airway traffic data being associated with a first time period; a database controller (204) for generating (1204) a first database entry (500) by mapping one or more extracted portions of the airway traffic data to first database entry fields (502, 504, 506, 508, 510, 512, 514) included in the first database entry, the first database entry fields being associated with respective aircraft of the plurality of aircraft; and an airway traffic (ART) segment service. The ART segment (216) service is configured to: execute (1402) a plurality of machine learning models (470) using database entries (500) including the first database entry to generate a first aircraft traffic count (510) for the airspace segment during a first time period; in response to selecting (1406) a first machine learning model (470) from the plurality of machine learning models based on the first aircraft traffic count, execute (1108) the first machine learning model to generate a second aircraft traffic count (510) for the airspace segment during a second time period subsequent to the first time period; and send (1110) the second aircraft traffic count to a computing device (226, 228, 230) to cause an adjustment to a flight plan (902, 904) of a first aircraft (106A) from the plurality of aircraft.
[0235] Clause 2. An apparatus according to clause 1, wherein the airway traffic data includes a data message (223) having one or more data fields (225), the data message including a first data message (223) having a first data field (225), and a second data message (223) having a second data field (225) and a third data field (225), and the database controller is used to: discard (1710) the first data message when the first data field violates a rule; discard (1714) the second data field when the second data field violates the rule; and store (1716) the third data field when the third data field does not violate multiple rules including the rule.
[0236] Clause 3. An apparatus according to any one of clauses 1 to 2, wherein the airway traffic data includes a first data message (223) having a first data field (225), and the database controller is configured to: identify (1202) a second aircraft (106B) of the plurality of aircraft based on the first data field, the first data field including a flight number of the second aircraft; generate (1204) the first database entry field by storing the flight number in the first database entry field; generate (1206) the first database entry by storing the first database entry field in the first database entry; and store (1210) one or more second data fields (225) of the one or more second data messages (223) included in the airway traffic data in the first database entry in response to identifying the flight number in the one or more second data messages (223).
[0237] Clause 4. An apparatus according to any one of clauses 1 to 3, wherein the ART segment service is used to: determine (1406) a difference between the first aircraft traffic count and a third aircraft traffic count (510), the third aircraft traffic count representing the amount of aircraft traffic counts observed to be associated with the airspace segment during the first time period, the first machine learning model having a first difference among the differences; and in response to the first difference being less than the remaining differences, select (1408) the first machine learning model for execution.
[0238] Clause 5. An apparatus according to any one of clauses 1 to 4, wherein the second aircraft traffic count includes a third aircraft traffic count for a first airspace segment (908) in the airspace segment, the flight plan is a first flight plan (902), and the ART segment service is used to: determine (1608) that the third aircraft traffic count meets the following threshold: the threshold represents the amount of aircraft to be flown in the first airspace segment during the second time period; determine (1610) that the first flight plan includes the first airspace segment during the second time period; and send (1616) a recommendation to the first aircraft to adjust from the first flight plan to a second flight plan (904), the second flight plan not including the first airspace segment during the second time period.
[0239] Clause 6. The apparatus of any one of clauses 1 to 5, wherein the ART segment service comprises at least one microservice (410, 420, 430, 440, 450, 460), the at least one microservice (410, 420, 430, 440, 450, 460) configured to: generate a first flight plan (902, 904) for the plurality of aircraft during the second time period, first weather information associated with the airspace segment during the second time period, and a second flight plan associated with the airspace segment during the first time period; configuring (1802) a threshold value for a corresponding airspace segment in the airspace segments for the second time period based on at least one of the plan (902, 904) and historical information of at least one of the second weather information; determining (1804) the first aircraft traffic count by querying a database (208); predicting (1806) the second aircraft traffic count by executing the first machine learning model; and calculating (1808) one or more airspace traffic count parameters based on at least one of the first aircraft traffic count and the second aircraft traffic count.
[0240] Clause 7. The apparatus of clause 6, wherein the at least one microservice is executed using at least one of virtual computing resources, virtual network resources, and virtual storage resources of a cloud computing platform.
[0241] Clause 8. A non-transitory computer-readable storage medium (1913, 1914, 1916, 1928) comprising instructions (1932) that, when executed, cause at least one machine (1900) to at least perform the following operations: obtain (1102) airway traffic data (222) associated with a plurality of aircraft (106A to 106F) flying in an airspace segment (906, 908, 910, 912), the airway traffic data being associated with a first time period; generate (1204) a first database entry (500) having a first database entry field that is associated with the plurality of aircraft (106A to 106F) flying in an airspace segment (906, 908, 910, 912); and generate (1204) a first database entry (500) having a first database entry field that is associated with the plurality of aircraft (106A to 106F) flying in an airspace segment (906, 908, 910, 912). executing (1402) a plurality of machine learning models (470) using database entries (500) including the first database entry to generate a first aircraft traffic count (510) for the airspace segment during a first time period; in response to selecting (1406) a first machine learning model (470) from the plurality of machine learning models based on the first aircraft traffic count, executing (110) the first machine learning model to generate a second aircraft traffic count (510) for the airspace segment during a second time period subsequent to the first time period; and sending (1110) the second aircraft traffic count to a computing device (226, 228, 230) to cause an adjustment to a flight plan (902, 904) of a first aircraft (106A) from the plurality of aircraft.
[0242] Clause 9. A non-transitory computer-readable storage medium according to clause 8, wherein the airway traffic data includes a data message (223) having one or more data fields (225), the data message including a first data message (223) having a first data field (225), and a second data message (223) having a second data field (225) and a third data field (225), and the instructions, when executed, cause the at least one machine to: discard (1710) the first data message when the first data field violates a rule; discard (1714) the second data field when the second data field violates the rule; and store (1716) the third data field when the third data field does not violate multiple rules including the rule.
[0243] Clause 10. A non-transitory computer-readable storage medium according to any one of clauses 8 to 9, wherein the airway traffic data includes a first data message (223) having a first data field (225), and the instructions, when executed, cause the at least one machine to: identify (1202) a second aircraft (106B) of the plurality of aircraft based on the first data field; generate (1204) the first database entry field based on the first data field; generate (1204) the first database entry including the first database entry field; and store (1210) one or more second data fields (225) of the one or more second data messages (223) in the first database entry in response to identifying the first data field in the one or more second data messages, the second data messages being included in the airway traffic data.
[0244] Clause 11. A non-transitory computer-readable storage medium according to any one of clauses 8 to 10, wherein the instructions, when executed, cause the at least one machine to perform the following operations: determine (1406) a difference between the first aircraft traffic count and a third aircraft traffic count (510), the third aircraft traffic count representing the amount of aircraft traffic counts observed to be associated with the airspace segment during the first time period, the first machine learning model having a first difference among the differences; and in response to the first difference being less than the remaining differences, select (1408) the first machine learning model for execution.
[0245] Clause 12. A non-transitory computer-readable storage medium according to any one of clauses 8 to 11, wherein the second aircraft traffic count includes a third aircraft traffic count (510) for a first airspace segment (908) in the airspace segments, the flight plan is a first flight plan (902), and the instructions, when executed, cause the at least one machine to perform the following operations: determine (1608) that the third aircraft traffic count meets the following threshold, the threshold representing the amount of aircraft to be flown in the first airspace segment during the second time period; determine (1610) that the first flight plan includes the first airspace segment during the second time period; and send (1616) a recommendation to the first aircraft to adjust from the first flight plan to a second flight plan (904), the second flight plan not including the first airspace segment during the second time period.
[0246] Clause 13. The non-transitory computer-readable storage medium of any one of clauses 8 to 12, wherein the instructions, when executed, cause the at least one machine to perform the following operations: executing instructions using at least one microservice (410, 420, 430, 440, 450, 460) based on first flight plans (902, 904) of the plurality of aircraft during the second time period, first weather information associated with the airspace segment during the second time period, and historical information including at least one of second flight plans (902, 904) and second weather information associated with the airspace segment during the first time period. the first aircraft traffic count by querying a database (208) using the at least one microservice execution instruction; predicting (1806) the second aircraft traffic count by executing the first machine learning model using the at least one microservice execution instruction; and calculating (1808) one or more airspace traffic count parameters based on at least one of the first aircraft traffic count and the second aircraft traffic count using the at least one microservice execution instruction.
[0247] Clause 14. The non-transitory computer-readable storage medium of Clause 13, wherein at least one of (1) the at least one machine or (2) the at least one microservice corresponds to a virtual hardware resource.
[0248] Clause 15. A method comprising the steps of: obtaining (1102) airway traffic data (222) associated with a plurality of aircraft (106A to 106F) flying in an airspace segment (906, 908, 910, 912), the airway traffic data being associated with a first time period; generating (1204) a first database entry (500) by mapping one or more extracted portions of the airway traffic data to first database entry fields (502, 504, 506, 508, 510, 512, 514) included in the first database entry, the first database entry fields being associated with respective aircraft of the plurality of aircraft; and performing (1402) using the database entry (500). a plurality of machine learning models (470) to generate a first aircraft traffic count (510) for the airspace segment during a first time period, the database entries including the first database entries; in response to selecting (1406) a first machine learning model (470) from the plurality of machine learning models based on the first aircraft traffic count, executing (1108) the first machine learning model to generate a second aircraft traffic count (510) for the airspace segment during a second time period subsequent to the first time period; and sending (1110) the second aircraft traffic count to a computing device (226, 228, 230) to cause an adjustment to a flight plan (902, 904) of a first aircraft (106A) from the plurality of aircraft.
[0249] Clause 16. A method according to clause 15, wherein the airway traffic data includes a data message (223) having one or more data fields (225), the data message including a first data message (223) having a first data field (225), and a second data message (223) having a second data field (225) and a third data field (225), and the method further comprises the steps of: discarding (1710) the first data message when the first data field violates a rule; discarding (1714) the second data field when the second data field violates the rule; and storing (1716) the third data field when the third data field does not violate multiple rules including the rule.
[0250] Clause 17. A method according to any of clauses 15 to 16, wherein the airway traffic data includes a first data message (223) having a first data field (225), and the method further comprises the steps of: identifying (1202) a second aircraft (106B) of the plurality of aircraft based on the first data field, the first data field including a flight number of the second aircraft; generating (1204) the first database entry field by storing the flight number in the first database entry field; generating (1206) the first database entry by storing the first database entry field in the first database entry; and storing (1210) one or more second data fields (225) of the one or more second data messages (223) included in the airway traffic data in the first database entry in response to identifying the flight number in the one or more second data messages (223).
[0251] Clause 18. The method of any one of clauses 15 to 17, further comprising the steps of: determining (1406) a difference between the first aircraft traffic count and a third aircraft traffic count (510), the third aircraft traffic count representing an observed amount of aircraft traffic counts associated with the airspace segment during the first time period, the first machine learning model having a first difference among the differences; and in response to the first difference being less than the remaining differences, selecting (1408) the first machine learning model for execution.
[0252] Clause 19. A method according to any one of clauses 15 to 18, wherein the second aircraft traffic count includes a third aircraft traffic count (510) for a first airspace segment (908) in the airspace segments, the flight plan is a first flight plan (902), and the method further comprises the steps of: determining (1608) that the third aircraft traffic count satisfies a threshold value representing a quantity of aircraft to be flown in the first airspace segment during the second time period; determining (1610) that the first flight plan includes the first airspace segment during the second time period; and sending (1616) a recommendation to the first aircraft to adjust from the first flight plan to a second flight plan (904) that does not include the first airspace segment during the second time period.
[0253] Clause 20. The method according to any one of clauses 15 to 19, further comprising the step of executing instructions using at least one microservice (410, 420, 430, 440, 450, 460) for the plurality of aircraft during the second time period based on at least one of first flight plans (902, 904) of the plurality of aircraft during the second time period, first weather information associated with the airspace segment during the second time period, and historical information including at least one of second flight plans (902, 904) and second weather information associated with the airspace segment during the first time period. The invention also provides a method for determining (1804) the first aircraft traffic count by querying a database (208) using the at least one microservice to execute instructions; predicting (1806) the second aircraft traffic count by executing the first machine learning model using the at least one microservice to execute instructions; and calculating (1808) one or more airspace traffic count parameters based on at least one of the first aircraft traffic count and the second aircraft traffic count using the at least one microservice to execute instructions.
[0254] Although certain example systems, methods, apparatus, and articles of manufacture have been disclosed herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all systems, methods, apparatus, and articles of manufacture fairly falling within the scope of the claims of this patent.
[0255] The following claims are hereby incorporated into this Detailed Description by reference, with each claim standing on its own as a separate embodiment of the disclosure.
Claims
1. A device for improving aircraft traffic control, the device comprising: a network interface for obtaining airway traffic data associated with a plurality of aircraft flying in the airspace segment, the airway traffic data being associated with a first time period; a database controller that generates the first database entry by mapping one or more extracted portions of the airway traffic data to first database entry fields included in the first database entry, the first database entry fields being associated with respective aircraft of the plurality of aircraft; and Airline Traffic Sector Service, namely ART Sector Service, which is used for: executing a first machine learning model from a plurality of machine learning models to generate a second aircraft traffic count for the airspace segment during a second time period following the first time period in response to selecting the first machine learning model based on the first aircraft traffic count for the airspace segment during the first time period; as well as sending the second aircraft traffic count to a computing device to cause an adjustment to a flight plan of a first aircraft in the plurality of aircraft, wherein selecting the first machine learning model in the plurality of machine learning models based on the first aircraft traffic count comprises: executing the plurality of machine learning models on ART database entries associated with a first one of the airspace segments during the first time period, the ART database entries including the first database entry, and predicting the first aircraft traffic count for the first airspace segment during the first time period, comparing the predicted first aircraft traffic count to known traffic counts associated with the first airspace segment during the first time period, and A model of the plurality of machine learning models that has the smallest error or the highest accuracy in predicting traffic counts is identified.
2. The device according to claim 1, wherein The airway traffic data includes a data message having one or more data fields, the data message including a first data message having a first data field, and a second data message having a second data field and a third data field, and the database controller is configured to: When the first data field violates a rule, discarding the first data message; When the second data field violates the rule, discarding the second data field; and The third data field is stored when the third data field does not violate a plurality of rules including the rule.
3. The apparatus according to any one of claims 1 to 2, wherein: The airway traffic data includes a first data message having a first data field, and the database controller is configured to: identifying a second aircraft from the plurality of aircraft based on the first data field, the first data field including a flight number of the second aircraft; generating the first database entry field by storing the flight number in the first database entry field; generating the first database entry by storing the first database entry field in the first database entry; and In response to identifying the flight number in one or more second data messages included in the airway traffic data, one or more second data fields of the one or more second data messages are stored in the first database entry.
4. The device according to any one of claims 1 to 2, wherein The second aircraft traffic count includes a third aircraft traffic count for the first airspace segment in the airspace segment, the flight plan is a first flight plan, and the ART segment service is for: determining that the third aircraft traffic count satisfies a threshold value: the threshold value representing a quantity of aircraft to be flown in the first airspace segment during the second time period; determining that the first flight plan includes the first airspace segment during the second time period; as well as A recommendation is sent to the first aircraft to adjust from the first flight plan to a second flight plan that does not include the first airspace segment during the second time period.
5. The apparatus according to any one of claims 1 to 2, wherein The ART segment service includes at least one microservice, and the at least one microservice is configured to: configuring, for the second time period, a threshold value for a corresponding airspace segment in the airspace segments based on at least one of: first flight plans of the plurality of aircraft during the second time period, first weather information associated with the airspace segment during the second time period, and historical information including at least one of a second flight plan and second weather information associated with the airspace segment during the first time period; determining the first aircraft traffic count by querying a database; predicting the second aircraft traffic count by executing the first machine learning model; and One or more airspace traffic count parameters are calculated based on at least one of the first aircraft traffic count and the second aircraft traffic count.
6. The device according to claim 5, wherein The at least one microservice is executed using at least one of virtual computing resources, virtual network resources, and virtual storage resources of the cloud computing platform.
7. A method for improving aircraft traffic control, the method comprising the steps of: obtaining airway traffic data associated with a plurality of aircraft flying in the airspace segment, the airway traffic data being associated with a first time period; generating the first database entry by mapping one or more extracted portions of the airway traffic data to a first database entry field included in the first database entry, the first database entry field being associated with a respective aircraft of the plurality of aircraft; executing a first machine learning model from a plurality of machine learning models to generate a second aircraft traffic count for the airspace segment during a second time period following the first time period in response to selecting the first machine learning model based on the first aircraft traffic count for the airspace segment during the first time period; as well as sending the second aircraft traffic count to a computing device to cause an adjustment to a flight plan of a first aircraft in the plurality of aircraft, The step of selecting the first machine learning model from the plurality of machine learning models based on the first aircraft traffic count includes: executing the plurality of machine learning models on airway traffic data associated with a first one of the airspace segments during the first time period and predicting the first aircraft traffic count for the first airspace segment during the first time period, comparing the predicted first aircraft traffic count to known traffic counts associated with the first airspace segment during the first time period, and A model of the plurality of machine learning models that has the smallest error or the highest accuracy in predicting traffic counts is identified.
8. The method according to claim 7, wherein: The airway traffic data includes a data message having one or more data fields, the data message including a first data message having a first data field, and a second data message having a second data field and a third data field, and the method further includes the following steps: When the first data field violates a rule, discarding the first data message; When the second data field violates the rule, discarding the second data field; and The third data field is stored when the third data field does not violate a plurality of rules including the rule.
9. The method according to any one of claims 7 to 8, wherein: The airway traffic data comprises a first data message having a first data field, and the method further comprises the steps of: identifying a second aircraft from the plurality of aircraft based on the first data field, the first data field including a flight number of the second aircraft; generating the first database entry field by storing the flight number in the first database entry field; generating the first database entry by storing the first database entry field in the first database entry; and Responsive to identifying the flight number in one or more second data messages included in the airway traffic data, one or more second data fields of the one or more second data messages are stored in the first database entry.
10. The method according to any one of claims 7 to 8, wherein The second aircraft traffic count includes a third aircraft traffic count for the first airspace segment in the airspace segment, the flight plan is a first flight plan, and the method further includes the steps of: determining that the third aircraft traffic count satisfies a threshold value: the threshold value representing a quantity of aircraft to be flown in the first airspace segment during the second time period; determining that the first flight plan includes the first airspace segment during the second time period; and A recommendation is sent to the first aircraft to adjust from the first flight plan to a second flight plan that does not include the first airspace segment during the second time period.
11. The method according to any one of claims 7 to 8, further comprising the steps of: Configuring, by executing instructions using at least one microservice, a threshold value for a corresponding airspace segment in the airspace segments for the second time period based on at least one of: first flight plans of the plurality of aircraft during the second time period, first weather information associated with the airspace segment during the second time period, and historical information including at least one of second flight plans and second weather information associated with the airspace segment during the first time period; determining the first aircraft traffic count by querying a database by executing instructions using the at least one microservice; predicting the second aircraft traffic count by executing the first machine learning model by executing instructions utilizing the at least one microservice; as well as One or more airspace traffic count parameters are calculated based on at least one of the first aircraft traffic count and the second aircraft traffic count by executing instructions using the at least one microservice.
Citation Information
Patent Citations
A probability density prediction system applied to airway sector traffic
CN109740818A
System and method for determining an alternative flight route based on sector geometry
EP3104119A1