Apparatus, method and computer program product for generating alternative flight plans

By analyzing historical flight data and using clustering algorithms to generate alternative flight paths, the suboptimal problem caused by static planning in existing air traffic management systems has been solved, enabling dynamic responses to weather and traffic changes and improving flight efficiency and fuel utilization.

CN120833688APending Publication Date: 2025-10-24THE BOEING CO
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510486016.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-04-18
Filing Date
2025-04-17
Publication Date
2025-10-24

AI Technical Summary

Technical Problem

Existing air traffic management systems rely on static flight plans, which cannot effectively capture real-time changes in weather, traffic, etc., resulting in suboptimal routes and fuel waste. They also lack dynamic adjustment capabilities and need to generate alternative flight plans that can respond to changes in real time.

Method used

By analyzing historical flight data, clustering algorithms are used to group flight paths and generate alternative flight paths based on efficiency criteria. These alternative paths are then provided to aircraft, operators, or a combination thereof to enable rapid adjustments to plans when deviations are detected.

Benefits of technology

It enables the prediction of deviations before takeoff or during flight, provides efficient alternative flight paths, reduces fuel consumption and delays, and improves the flexibility and efficiency of air traffic management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120833688A_ABST
    Figure CN120833688A_ABST
Patent Text Reader

Abstract

The present disclosure relates to an apparatus, a method, and a computer program product for generating alternative flight plans. The apparatus includes one or more processors configured to determine a probability that the aircraft will follow the submitted flight path. The one or more processors are further configured to provide one or more alternative flight paths to the device in response to determining that the probability is less than the threshold.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates generally to generating alternative flight plans. BACKGROUND

[0002] Existing air traffic management (ATM) systems primarily rely on predetermined flight plans for aircraft navigation. These flight plans define aircraft paths, altitudes, and speeds. They can be created through static models (e.g., fixed rules), air traffic control adjustments for real-time conditions, or pilot deviations. This reliance on predetermined plans and manual adjustments to plans can result in several limitations, including: inefficiencies, as static models can not capture real-time changes in weather, traffic, or other factors, which can result in suboptimal routes and inefficient fuel usage; lack of adaptability to dynamically adjust predetermined plans to accommodate unforeseen changes, which can potentially require human intervention and delays; and limited ability to optimize efficiency goals associated with conflicts in flight.

[0003] Accordingly, there is a need for a method and system configured to generate alternative flight plans that can use real-time changes in weather, traffic, or other factors, as well as balancing goals associated with usage of resources, timeliness, and impact on other flights. SUMMARY

[0004] In a particular implementation, an apparatus includes one or more processors configured to determine a probability that an aircraft will follow a submitted flight path. The one or more processors are further configured to provide one or more alternative flight paths to another apparatus in response to determining that the probability is less than a threshold.

[0005] In a particular implementation, a method includes determining, at a computing apparatus, a probability that an aircraft will follow a submitted flight path. The method includes providing one or more alternative flight paths to another apparatus via the computing apparatus in response to determining that the probability is less than a threshold.

[0006] In another particular implementation, a non-transitory computer-readable medium stores instructions that, when executed by one or more processors, cause the one or more processors to determine a probability that an aircraft will follow a submitted flight path. The instructions further cause the one or more processors to provide one or more alternative flight paths to an apparatus in response to determining that the probability is less than a threshold.

[0007] The features, functions, and advantages described herein can be implemented in various embodiments with or without additional benefits, alone or in combination with other features, functions, and advantages. Further details can be found in the following description and the attached drawings. BRIEF DESCRIPTION OF DRAWINGS

[0008] Figure 1is a schematic diagram illustrating a system configured to generate an alternative flight path.

[0009] Figure 2 is a diagram of an illustrative example of a horizontal historical flight path group having a flight path similarity metric determined.

[0010] Figure 3 is a diagram of an illustrative example of a vertical historical flight path group having a flight path similarity metric determined.

[0011] Figure 4 is a flowchart of a method of generating an alternative flight path.

[0012] Figure 5 is a block diagram of a computing environment of a computing device including aspects configured to support computer-implemented methods and computer-executable program instructions (or code) in accordance with the present disclosure. DETAILED DESCRIPTION

[0013] Current air traffic management (ATM) systems rely heavily on predetermined flight plans that dictate paths, altitudes, and speeds for aircraft navigation. Unfortunately, these plans often hinder optimal air traffic management due to their static nature and reliance on various limitations. For example, static models impose rigid constraints based on aircraft capabilities and airspace limitations, potentially ignoring dynamic factors such as unpredictable weather patterns or evolving air traffic density. While air traffic controllers attempt to adjust plans based on real-time conditions, manual intervention by air traffic controllers can introduce limitations and potential bottlenecks. Furthermore, even necessary deviations from these predetermined plans by pilots can disrupt overall business flow and efficiency. Moreover, the static nature of traditional flight plans often results in suboptimal outcomes. Static models currently in use do not capture real-time changes in weather, traffic, or other variables, resulting in suboptimal routes and increased fuel consumption. Furthermore, predetermined plans are difficult to dynamically adjust to unforeseen circumstances, such as sudden wind changes or unexpected turbulence, potentially requiring manual intervention resulting in delays. Therefore, there is a need for a method and system configured to generate optimal alternative flight plans that can use real-time changes in weather, traffic, or other factors and balance safety and efficiency.

[0014] Aspects disclosed herein provide systems and methods for generating potential alternative flight paths based on historical data. An apparatus predicts whether a plane will not fly as planned (e.g., an original flight plan) prior to takeoff, during flight, or both prior to takeoff and during flight. The apparatus makes this determination based on information such as weather issues, capacity constraints in sectors, previous flights that deviated from the flight plan, or a combination thereof. Based on the determination that the original flight path will not be followed, the apparatus obtains historical flight path data for a particular operator (e.g., an airline or other entity), a plane type, or both, that flew from a departure airport to an arrival airport. This historical flight data includes individual flight paths for comparable planes (e.g., planes of the same type or similar types) associated with the operator that flew from the departure airport to the arrival airport. The apparatus takes the flight paths and analyzes the horizontal flight paths by clustering or categorizing them into groups based on their similarity using selected metrics such as distance, direction, one or more maneuvers performed by the operator, or a combination thereof. This results in multiple groups of similar horizontal flight paths.

[0015] The apparatus analyzes corresponding vertical flight paths for each group of similar horizontal flight paths. These vertical flight paths are clustered or categorized using relevant metrics such as altitude profiles or maneuvers that affect the altitude at which the plane is at based on their own similarity. This results in several groups of similar vertical flight paths within each horizontal group. The apparatus uses information such as weather issues, capacity constraints in sectors, etc. to determine one or more alternative flight paths and provides the one or more alternative flight paths to the plane, the operator of the plane, or both, to enable personnel associated with the operator to change the flight plan based on the one or more alternative flight paths.

[0016] The technology and systems described herein provide the technical advantage of predicting whether a plane is likely to deviate from its submitted flight path prior to takeoff or during flight. Based on historical flight path data, the system then provides a prioritized list of alternative flight paths ranked based on efficiency criteria (e.g., predicted fuel consumption, flight time, predicted carbon emissions, etc.).

[0017] The accompanying drawings and following description illustrate specific exemplary embodiments. It will be appreciated that those of ordinary skill in the art will be able to devise various arrangements without departing from the principles described herein and without the use of the specific descriptive terminology set forth herein, and that such arrangements are intended to fall within the scope of the claims that follow. Further, any example described herein is intended to help illustrate the principles of the disclosure and is understood not to limit the disclosure. Thus, the disclosure is not limited to the specific embodiments and examples described below, but is defined by the claims and their equivalents.

[0018] The present invention is described in detail with reference to the accompanying drawings.In the description, common features are represented by common reference numerals throughout the drawings.

[0019] As used herein, various terms are used for the purpose of describing particular embodiments only and are not intended to be limiting. For example, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. In addition, some features described herein are singular in some embodiments and plural in other embodiments. For illustration, Figure 5 Depicts a system comprising one or more processors ( Figure 5 520), indicating that in some embodiments, computing device 510 includes a single processor 520, while in other embodiments, computing device 510 includes multiple processors 520. For ease of reference herein, such features are generally introduced as "one or more" features and are subsequently referenced in the singular or optionally the plural (as generally indicated by "(s)") unless aspects are being described that relate to multiple features.

[0020] The terms "comprise," "comprises," and "comprising" are used interchangeably with "include," "includes," or "including." Additionally, the term "wherein" is used interchangeably with the term "wherein." As used herein, "exemplary" indicates an example, implementation, and / or aspect and should not be construed as limiting or indicating a preference or preferred implementation. As used herein, ordinal terms (e.g., "first," "second," "third," etc.) used to modify an element (such as a structure, component, operation, etc.) do not, by themselves, indicate any priority or order of an element relative to another element, but merely distinguish the element from another element having the same name (but with respect to the use of the ordinal term). As used herein, the term "set" refers to a grouping of one or more elements, and the term "plurality" refers to a plurality of elements.

[0021] As used herein, “generating,” “calculating,” “using,” “selecting,” “accessing,” and “determining” are interchangeable, unless context indicates otherwise. For example, “generating,” “calculating,” or “determining” a parameter (or signal) can refer to generating, calculating, or determining the parameter (or signal) from scratch or can refer to using, selecting, or accessing a parameter (or signal) that has already been generated, such as by another component or device. As used herein, “coupled” can include “communicatively coupled,” “electrically coupled,” or “physically coupled,” and can also (or alternatively) include any combination thereof. Two devices (or components) can be coupled (e.g., communicatively coupled, electrically coupled, or physically coupled) directly or indirectly via one or more other devices, components, wires, buses, networks (e.g., wired networks, wireless networks, or combinations thereof), etc. As an illustrative, non-limiting example, two devices (or components) that are electrically coupled can be included in the same device or different devices and can be connected via electronics, one or more connectors, or inductive coupling. In some implementations, two devices (or components) that are communicatively coupled (such as electrically communicating) can send and receive electrical signals (digital signals or analog signals) directly or indirectly, such as via one or more wires, buses, networks, etc. As used herein, “directly coupled” is used to describe two devices that are coupled (e.g., communicatively coupled, electrically coupled, or physically coupled) without an intervening component.

[0022] Figure 1 is a diagram illustrating a system 100 configured to generate an alternative flight path. The system 100 includes a device 102 coupled to a device 122. The device 102 includes a memory 104 coupled to one or more processors 112.

[0023] In particular aspects, the device 102 can include or be integrated in at least one of an aircraft, a ground device, a watercraft, a ground vehicle, an unmanned vehicle, a tablet, a smartphone, a server, a computer-based tool, a laptop, or an input assistive device. The device 122 can include or be integrated in at least one of an aircraft, a ground device, a watercraft, a ground vehicle, an unmanned vehicle, a display device, a tablet, a smartphone, a computer-based tool, a laptop, or an input assistive device.

[0024] The processor 112 includes an alternative flight path generator 114 configured to determine a probability 116 that the aircraft will follow the submitted flight path 110. In response to determining that the probability 116 is less than the threshold 106 (e.g., 90%, 80%, 70%, or some other percentage), the alternative flight path generator 114 generates one or more alternative flight paths 118 and provides the one or more alternative flight paths 118 to the device 122. The memory 104 includes a non-transitory computer-readable medium (e.g., computer-readable storage device) that stores instructions 108 executable by the processor 112. The instructions 108 can perform initiating, performing, or controlling the operations described herein with reference to the alternative flight path generator 114. The memory 104 is configured to store data used or generated by the alternative flight path generator 114. For example, the memory 104 is configured to store the threshold 106 and the submitted flight path 110, historical flight path data 128 indicative of individual flight paths associated with an operator of the aircraft between the departure airport and the arrival airport.

[0025] During operation, the alternative flight path generator 114 obtains data including the threshold 106, the submitted flight path 110, and information data 130 associated with the submitted flight path 110 from a first city (e.g., a departure airport) to a second city (e.g., an arrival airport). The information data 130 can include weather information (e.g., current weather and weather forecasts) occurring along the submitted flight path, congestion information occurring along the submitted flight path, delay information associated with the departure airport, the arrival airport, or both, notifications of air tasks occurring along the submitted flight path, or a combination thereof. The alternative flight path generator 114 obtains the information data 130 from the memory 104, one or more ground devices, one or more network devices, or a combination thereof. In an example, the alternative flight path generator 114 obtains the data in response to a user pre-flight check-in or a user request to generate the alternative flight paths 118. To illustrate, the alternative flight path generator 114 obtains data including the threshold 106, the submitted flight path 110, and information data 130 (e.g., weather information, capacity constraints, etc.) associated with the submitted flight path 110 in response to receiving user input from a pilot indicating a starting location (e.g., a first city or a departure airport) of the submitted flight path 110 and an ending location (e.g., a second city or an arrival airport) of the submitted flight path 110.

[0026] The alternative flight path generator 114 uses the obtained data to determine whether the aircraft is likely to follow the submitted flight path 110. For example, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 prior to the aircraft taking off. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information at the departure airport, congestion information occurring along the submitted flight path 110, delay information occurring at the departure airport, a notification of an air mission related to the submitted flight path, or a combination thereof. In an example, the current weather information can indicate that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106) based on wind patterns around the departure airport. The alternative flight path generator 114 provides one or more alternative flight paths 118 (e.g., output 120) to the device 122 in response to determining that the probability is less than the threshold 106. The one or more alternative flight paths 118 can be ranked based on criteria such as fuel consumption reduction, flight time reduction, CO2 emission reduction, or a combination thereof.

[0027] Prior to providing the one or more alternative flight paths 118, the alternative flight path generator 114 determines the one or more alternative flight paths 118 based on historical flight path data 128. The alternative flight path generator 114 obtains the historical flight path data 128 from the memory 104, one or more ground devices, one or more network devices, or a combination thereof. The historical flight path data 128 includes individual flight paths associated with an operator of an aircraft between a first city (e.g., a departure airport) and a second city (e.g., an arrival airport). During operation, the alternative flight path generator 114 can determine one or more sets of horizontal flight paths, one or more sets of vertical flight paths, or both, as described further with reference to FIGS. 2-4. Figure 2 and Figure 3 The alternative flight path generator 114 determines the one or more alternative flight paths 118 based on the information data 130 and the historical flight path data 128. The alternative flight path generator 114 then provides the one or more alternative flight paths 118 to the device 122 (e.g., output 120).

[0028] The device 122 displays the one or more alternative flight paths 118. The display can be viewed by a person associated with the operator (e.g., a pilot of the aircraft, a flight manager, etc.) and can utilize the presented information. In some implementations, the device 122 receives user input selecting one or more of the alternative flight paths 118. In this implementation, the device 122 displays the selected alternative flight path 124 and the vehicle representation 126. In some implementations, the device 122 is configured to select the alternative flight path 124 and display the alternative flight path 124 and the vehicle representation 126.

[0029] In some aspects, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 during the flight. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information along the remaining portion of the flight path and at the arrival airport, congestion information occurring along the submitted flight path 110, delay information occurring at the arrival airport, or notifications of air tasks related to the submitted flight path or combinations thereof. In an example, the congestion information indicates that the aircraft will experience a delay if the aircraft continues to follow the submitted flight path 110. Based on this information, the alternative flight path generator 114 determines that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106). The alternative flight path generator 114 obtains the historical flight path data 128 in response to determining that the probability is less than the threshold 106. The alternative flight path generator 114 determines one or more alternative flight paths 118 based on the historical flight path data 128 and the information data 130. The alternative flight path generator 114 then provides the one or more alternative flight paths 118 (e.g., the output 120) to the device 122. The device 122 displays the one or more alternative flight paths 118 (e.g., to a pilot of the aircraft).

[0030] A technical advantage of the system 100 is predicting whether an aircraft is likely to deviate from its submitted flight path 110 before takeoff or during the flight. Based on the historical flight path data 128, the system 100 then provides a prioritized list of alternative flight paths 118 ranked based on efficiency criteria.

[0031] Figure 2 is a diagram of an illustrative example 200 of a set of horizontal historical flight paths 206 having a flight path similarity metric 208. The device 102 includes Figure 1The described memory 104 and processor 112. The alternative flight path generator 114 obtains information data 130 to determine whether the aircraft is likely to follow the submitted flight path 110. For example, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 prior to takeoff of the aircraft or during the flight. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information at the departure airport, congestion information occurring along the submitted flight path 110, delay information occurring at the departure airport, a notification of an air mission related to the submitted flight path, or a combination thereof. In an example, the current weather information can indicate that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106) based on wind patterns around the departure airport. The alternative flight path generator 114 obtains historical flight path data 128 in response to determining that the probability 116 is less than the threshold 106, the historical flight path data 128 including individual horizontal historical flight paths 206 of flights of an aircraft (e.g., the same or similar type of aircraft as the aircraft) associated with the operator between a first city 202 (e.g., the departure airport) and a second city 204 (e.g., the arrival airport). In some implementations, the alternative flight path generator 114 detects that the aircraft has deviated from the submitted flight path 110 while the aircraft is in flight.

[0032] The alternative flight path generator 114 can determine one or more groups of horizontal historical flight paths 206 having a flight path similarity measure 208 based on the historical flight path data 128. For example, the alternative flight path generator 114 can determine a first group of horizontal historical flight paths 206A, a second group of horizontal historical flight paths 206B, and a third group of horizontal historical flight paths 206C. Each of these groups of horizontal historical flight paths 206A, 206B, 206C has a different flight path similarity measure 208.

[0033] The alternative flight path generator 114 can determine one or more groups of horizontal historical flight paths 206 by using a clustering algorithm. In some implementations, the alternative flight path generator 114 converts the historical flight path data 128 into a form suitable for the clustering algorithm. This can involve several aspects, such as trajectory segmentation, which divides the horizontal historical flight paths 206 into smaller segments based on certain criteria, such as time intervals or significant maneuvers; feature extraction, which extracts relevant features from each segment, such as average speed, altitude profile (including climb and descent rates), and turn characteristics; dimensionality reduction, which applies techniques like principal component analysis (PCA) to reduce the number of features in the historical flight path data 128, or a combination thereof.

[0034] The alternative flight path generator 114 is configured to define similarity metrics for determining the flight path similarity measure 208. Different similarity metrics capture various aspects of a flight. For example, a geographic similarity metric, such as a Hausdorff distance or a Fréchet distance, quantifies the geometric difference between two separate horizontal historical flight paths; a flight profile similarity compares factors such as the altitude profile, average climb / descent rate, and speed variation along the historical flight paths; and a contextual similarity that includes additional contextual information that can enhance the robustness of the clustering process. Examples of additional contextual information include weather patterns (e.g., wind vectors, turbulence zones, etc.), time of day, and air traffic congestion zones.

[0035] The alternative flight path generator 114 is configured to determine one or more groups of horizontal historical flight paths 206 using one or more clustering algorithms. The one or more clustering algorithms can include K-means clustering, density-based clustering (e.g., DBSCAN, OPTICS), hierarchical clustering, etc.

[0036] After one or more groups of horizontal historical flight paths 206 have been determined, the alternative flight path generator 114 generates one or more alternative flight paths 118 based on the information data 130. For example, the alternative flight path generator 114 uses the information data 130 relative to the submitted flight path 110, the first city 202, and the second city 204 to generate one or more alternative flight paths 118 from the first group of horizontal historical flight paths 206A, the second group of horizontal historical flight paths 206B, or the third group of horizontal historical flight paths 206C. The alternative flight path generator 114 sends the one or more alternative flight paths 118 (e.g., the output 120) to the device 122. The device 122 displays the one or more alternative flight paths 118 and the submitted flight path 110 on a display device. The device 122 is configured to obtain, via an input device, user input selecting one or more of the alternative flight paths 118 or the submitted flight path 110 to follow. Based on the user input, the device 122 displays a selection of one or more of the alternative flight paths 118 or the submitted flight path 110.

[0037] In some implementations, as Figure 3As described in further detail, the alternative flight path generator 114 determines one or more sets of vertical flight paths having a vertical flight path similarity measure for each of one or more sets of horizontal historical flight paths 206. After determining the one or more sets of vertical flight paths, the alternative flight path generator 114 generates one or more alternative flight paths 118 based on a selected set of the one or more sets of horizontal historical flight paths 206 and a selected set or sets of vertical flight paths within the set. The alternative flight path generator 114 sends the alternative flight paths 118 (e.g., the output 120) to the device 122.

[0038] During pre-flight operations, the alternative flight path generator 114 can select a particular set of horizontal historical flight paths 206 (e.g., horizontal historical flight paths 206A) and generate one or more alternative flight paths 118, or generate one or more alternative flight paths 118 for each of the sets of horizontal historical flight paths 206 (e.g., horizontal historical flight paths 206A, 206B, 206C). The selection of the particular set of horizontal historical flight paths 206 can be based on the information data 130. For example, the information data 130 can indicate that the set of horizontal historical flight paths 206A is selected based on a wind pattern around the first city 202 (e.g., the departure airport). As previously described in Figure 1 and Figure 2 The alternative flight path generator 114 generates one or more alternative flight paths 118 and provides the one or more alternative flight paths 118 to the device 122 as the output 120.

[0039] During flight operations, the alternative flight path generator 114 can determine that one or more alternative flight paths 118 are to be generated based on the information data 130 or a detected deviation from the submitted flight plan. The alternative flight path generator 114 selects a particular set of horizontal historical flight paths 206 based on the information data 130, the detected deviation from the submitted flight path 110, or both. For example, the information data 130 indicates congestion information occurring along the submitted flight path 110 or a notification of an air mission related to the submitted flight path 110. Based on the information data 130, the alternative flight path generator 114 selects a particular set of horizontal historical flight paths 206 (e.g., horizontal historical flight paths 206B). As previously described in Figure 1 and Figure 2 Based on the selection, the alternative flight path generator 114 generates one or more alternative flight paths 118 and provides the one or more alternative flight paths 118 to the device 122 (e.g., the output 120).

[0040] In Figure 2In the illustrated implementation, three horizontal historical flight paths 206 are described, but in other implementations, a different number (e.g., 2, 4, 5, or some other number) of horizontal historical flight paths 206 can be determined by the alternative flight path generator 114 and used to generate one or more alternative flight paths 118.

[0041] A technical advantage of the example 200 of using clustering to generate one or more alternative flight paths 118 includes establishing a baseline and identifying deviations. Clustering the historical flight path data 128 establishes well-defined historical flight corridors, which provides a robust baseline against which deviations from the submitted flight path 110 can be easily identified. This facilitates prompt attention to potential issues, such as emergency landings or unforeseen weather disturbances. Another technical advantage is generating relevant one or more alternative flight paths 118. Upon detecting a deviation, the system 100 can quickly identify the most likely cluster based on the historical flight path data 128. This reduces the computational load of the alternative flight path generator 114 as it generates alternative flight paths 118 based on the identified cluster. Another technical advantage of the example 200 is that the one or more alternative flight paths 118 generated based on the relevant cluster share similar altitude and speed profiles, which ensures compatibility with the aircraft type and prevailing weather conditions.

[0042] Figure 3 is a diagram of an illustrative example 300 of determining a group of vertical historical flight paths 302 having a flight path similarity measure 304. The apparatus 102 includes Figure 1The memory 104 and processor 112 described in the middle. The alternative flight path generator 114 obtains information data 130 to determine whether the aircraft is likely to follow the submitted flight path 110. For example, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 prior to takeoff of the aircraft or during the flight. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information at the departure airport, congestion information occurring along the submitted flight path 110, delay information occurring at the departure airport, a notification of an air mission related to the submitted flight path, or a combination thereof. In an example, the current weather information can indicate that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106) based on weather around a particular city along the path of the submitted flight path 110. The alternative flight path generator 114 obtains historical flight path data 128 for flights of an aircraft (e.g., the same or similar type of aircraft as the aircraft) associated with the operator between the first city 202 (e.g., the departure airport) and the second city 204 (e.g., the arrival airport) in response to determining that the probability 116 is less than the threshold 106. In some implementations, the alternative flight path generator 114 detects that the aircraft has deviated from the submitted flight path 110 while the aircraft is in flight.

[0043] As shown in Figure 2 the alternative flight path generator 114 determines one or more sets of horizontal historical flight paths 206. In one aspect, the alternative flight path generator 114 can determine one or more sets of vertical historical flight paths 302 for each of the one or more sets of horizontal historical flight paths 206. In another aspect, the alternative flight path generator 114 selects a particular set of horizontal historical flight paths 206 and then determines one or more vertical historical flight paths 302 for the selected set of horizontal historical flight paths. The alternative flight path generator 114 selects the particular set of horizontal historical flight paths 206 based on the information data 130, the detected deviation from the submitted flight path 110, or both.

[0044] As shown in Figure 3 the alternative flight path generator 114 selects the horizontal historical flight path 206B. The alternative flight path generator 114 determines one or more sets of vertical historical flight paths 302 having a flight path similarity measure 304. As described above in Figure 2As described in FIG. 1, the alternative flight path generator 114 can determine one or more groups of vertical historical flight paths 302 by using a clustering algorithm. In a first example, the alternative flight path generator 114 determines a vertical historical flight path 302A that has a flight path similarity measure 304 of a one-step climb and a one-step descent. In a second example, the alternative flight path generator 114 determines a vertical historical flight path 302B that has a flight path similarity measure 304 of a lateral path without a horizontal offset. In a third example, the alternative flight path generator 114 determines a vertical historical flight path 302C that has a flight path similarity measure 304 of a lateral path with a one-step descent. In a fourth example, the alternative flight path generator 114 determines a vertical historical flight path 302D that has a flight path similarity measure 304 of a lateral path with a two-step climb.

[0045] During the pre-flight operation, the alternative flight path generator 114 can select a particular group of vertical historical flight paths 302 (e.g., the vertical historical flight path 302A) and generate one or more alternative flight paths 118, or generate one or more alternative flight paths 118 for each group of vertical historical flight paths 302 (e.g., the vertical historical flight paths 302A, 302B, 302C, 302D). The selection of the particular group of vertical historical flight paths 302 can be based on the information data 130. For example, the information data 130 can indicate to select the group of vertical historical flight paths 302A based on a wind pattern at the first city 202 (e.g., the departure airport). As described in FIG. 1, the alternative flight path generator 114 can generate one or more alternative flight paths 118 based on the selected group of vertical historical flight paths 302A. Figure 1 and Figure 2 As described in FIG. 1, the alternative flight path generator 114 generates one or more alternative flight paths 118 and provides the one or more alternative flight paths 118 to the device 122 as the output 120.

[0046] During the flight operation, the alternative flight path generator 114 can determine to generate one or more alternative flight paths 118 based on the information data 130 or detected deviations from the submitted flight plan. The alternative flight path generator 114 selects a particular set of horizontal historical flight paths 206 and / or vertical historical flight paths 302 based on the information data 130, the detected deviations from the submitted flight path 110, or both. For example, the information data 130 indicates congestion information occurring along the submitted flight path 110 or a notification of an air mission related to the submitted flight path 110. Based on the information data 130, the alternative flight path generator 114 selects a particular set of horizontal historical flight paths 206 (e.g., horizontal historical flight paths 206B) and a particular set of vertical historical flight paths 302 (e.g., vertical historical flight paths 302B). Based on the selection, the alternative flight path generator 114 generates one or more alternative flight paths 118 and provides the one or more alternative flight paths 118 to the device 122 (e.g., output 120).

[0047] In Figure 3 In the illustrated embodiment, four (4) vertical historical flight paths 302 are described, but in other embodiments, a different number (e.g., 2, 3, 5, or some other number) of vertical historical flight paths 302 can be determined by the alternative flight path generator 114 and used to generate one or more alternative flight paths 118.

[0048] Figure 4 is a flowchart of a method 400 of generating alternative flight paths 118. The method 400 can be performed by the system 100 of Figure 1 The method 400 includes, at block 402, determining a probability 116 that the aircraft will follow the submitted flight path 110. For example, the alternative flight path generator 114 determines the probability 116 that the aircraft will follow the submitted flight path 110 prior to the aircraft taking off. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information at the departure airport, congestion information occurring along the submitted flight path 110, delay information occurring at the departure airport, a notification of an air mission related to the submitted flight path, or a combination thereof. In an example, the current weather information can indicate that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106) based on wind patterns around the departure airport.

[0049] At block 404, the method 400 includes providing one or more alternative flight paths 118 (e.g., output 120) to the device 122 in response to determining that the probability 116 is less than the threshold 106. For example, in response to receiving user input indicating a starting location (e.g., a first city or a departure airport) of the submitted flight path 110 and an ending location (e.g., a second city or an arrival airport) of the submitted flight path 110, the alternative flight path generator 114 obtains data including the threshold 106, the submitted flight path 110, and information data 130 (e.g., weather information, capacity constraints, etc.) associated with the submitted flight path 110.

[0050] The alternative flight path generator 114 uses the obtained data to determine whether the aircraft will follow the submitted flight path 110. For example, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 prior to the aircraft taking off. In determining the probability 116, the alternative flight path generator 114 uses information data 130, such as current weather information at the departure airport, congestion information occurring along the submitted flight path 110, delay information occurring at the departure airport, a notification of an air mission related to the submitted flight path, or a combination thereof. In an example, the current weather information can indicate that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106) based on a wind pattern around the departure airport. The alternative flight path generator 114 provides one or more alternative flight paths 118 (e.g., output 120) to the device 122 in response to determining that the probability is less than the threshold 106. The one or more alternative flight paths 118 can be ranked based on criteria such as possible fuel consumption, flight time, carbon dioxide emissions, or a combination thereof.

[0051] Prior to providing the one or more alternative flight paths 118, the alternative flight path generator 114 determines the one or more alternative flight paths 118 based on historical flight path data 128. The alternative flight path generator 114 obtains the historical flight path data 128 from the memory 104, one or more ground devices, one or more network devices, or a combination thereof. The historical flight path data 128 includes various flight paths for an aircraft (e.g., a same or similar type of aircraft as the aircraft) associated with an operator for flights between a first city (e.g., a departure airport) and a second city (e.g., an arrival airport). During operation, as referenced above, the alternative flight path generator 114 determines the probability 116 that the aircraft will follow the submitted flight path 110 based on the historical flight path data 128. Figure 2 and Figure 3The described, alternative flight path generator 114 can determine one or more sets of horizontal flight paths, one or more sets of vertical flight paths, or both, having a similarity value. The alternative flight path generator 114 determines one or more alternative flight paths 118 based on the information data 130 and the historical flight path data 128. The alternative flight path generator 114 then provides the one or more alternative flight paths 118 to the device 122 (e.g., the output 120).

[0052] The device 122 displays the one or more alternative flight paths 118 to a person associated with the operator. In some implementations, the device 122 obtains user input selecting one or more alternative flight paths 118. In this implementation, the device 122 displays the selected alternative flight path 124 and the vehicle representation 126. In some implementations, the device 122 is configured to select the alternative flight path 124 and display the alternative flight path 124 and the vehicle representation 126.

[0053] In some aspects, the alternative flight path generator 114 determines a probability 116 that the aircraft will follow the submitted flight path 110 during the flight. In determining the probability 116, the alternative flight path generator 114 uses the information data 130, such as current weather information at the arrival airport, congestion information occurring along the submitted flight path 110, delay information occurring at the arrival airport, a notification of an air mission related to the remaining portion of the flight path, or a combination thereof. In an example, the congestion information indicates that the aircraft will experience a delay if the aircraft continues to follow the submitted flight path 110. Based on this information, the alternative flight path generator 114 determines that the probability 116 that the aircraft will follow the submitted flight path 110 is low (e.g., less than the threshold 106). The alternative flight path generator 114 obtains the historical flight path data 128 in response to determining that the probability is less than the threshold 106. The alternative flight path generator 114 determines one or more alternative flight paths 118 based on the historical flight path data 128 and the information data 130. The alternative flight path generator 114 then provides the one or more alternative flight paths 118 to the device 122 (e.g., the output 120). The device 122 displays the one or more alternative flight paths 118 to a person associated with the operator (e.g., a pilot of the aircraft).

[0054] Figure 5 is a block diagram of a computing environment 500 of a computing device 510 that includes aspects configured to support computer-implemented methods and computer-executable program instructions (or code) in accordance with the present disclosure. For example, the computing device 510, or portions thereof, are configured to execute instructions to initiate, perform, or control one or more operations described herein. Figures 1 to 4 One or more operations described.

[0055] The computing device 510 includes one or more processors 520. The processor(s) 520 are configured to communicate with system memory 530, one or more storage devices 540, one or more input / output interfaces 550, one or more communication interfaces 560, or any combination thereof. The system memory 530 includes volatile memory devices (e.g., random access memory (RAM) devices), non-volatile memory devices (e.g., read-only memory (ROM) devices, programmable ROM, and flash memory), or both. The system memory 530 stores an operating system 532 that can include a basic input / output system for starting the computing device 510 and a complete operating system that enables the computing device 510 to interact with users, other programs, and other devices, as described with reference to Figure 1 As described with reference to FIG. 4, the system memory 530 stores system program data 536, such as any data used or generated by the system 100, one or more modules, one or more machine learning models, or a combination thereof.

[0056] The system memory 530 includes one or more applications 534 (e.g., sets of instructions) that are executable by the processor(s) 520. For example, the one or more applications 534 include instructions that are executable by the processor(s) 520 to initiate, control, or perform the operations described with reference to Figures 1 to 4 FIG. 4. For illustration, the one or more applications 534 include the alternative flight path generator 114.

[0057] In particular embodiments, the system memory 530 includes a non-transitory computer-readable medium storing instructions that, when executed by the processor(s) 520, cause the processor(s) 520 to initiate, perform, or control operations to determine one or more alternative flight paths. The operations include determining a probability that an aircraft will follow a submitted flight path. The operations include providing the one or more alternative flight paths to the device 122 in response to determining that the probability is less than a threshold value.

[0058] The one or more storage devices 540 include non-volatile storage devices such as magnetic disks, optical disks, or flash devices. In particular examples, the storage devices 540 include removable storage devices and non-removable storage devices. The storage devices 540 are configured to store operating systems, images of operating systems, applications (e.g., the one or more applications 534), and program data (e.g., the program data 536). In particular aspects, the system memory 530, the storage devices 540, or both include tangible computer-readable media (e.g., storage devices) and not just signals. In particular aspects, the one or more storage devices 540 are external to the computing device 510.

[0059] One or more input / output interfaces 550 enable computing device 510 to communicate with one or more input / output devices 570 to facilitate user interaction. For example, one or more input / output interfaces 550 may include a display interface, an input interface, or both. For example, input / output interface 550 is adapted to receive input from a user, receive input from another computing device, or a combination thereof. In some embodiments, input / output interface 550 conforms to one or more standard interface protocols, including a serial interface (e.g., a Universal Serial Bus (USB) interface or an Institute of Electrical and Electronics Engineers (IEEE) interface standard), a parallel interface, a display adapter, an audio adapter, or a custom interface ("IEEE" is a registered trademark of the Institute of Electrical and Electronics Engineers, Piscataway, New Jersey). In some embodiments, input / output device 570 includes one or more user interface devices and displays, including some combination of buttons, keyboards, pointing devices, displays, speakers, microphones, touch screens, and other devices.

[0060] The processor 520 is configured to communicate with a device or controller 580 via one or more communication interfaces 560. For example, the one or more communication interfaces 560 may include a network interface. The device or controller 580 may include, for example Figure 1 device 102.

[0061] In some embodiments, a non-transitory computer-readable medium stores instructions that, when executed by one or more processors, cause the one or more processors to initiate, perform, or control operations to perform some or all of the functions described above. For example, the instructions may be executed to implement Figures 1 to 4 In some embodiments, the process may be implemented by one or more processors (e.g., one or more central processing units (CPUs), one or more graphics processing units (GPUs), one or more digital signal processors (DSPs)) executing instructions, by dedicated hardware circuits, or any combination thereof. Figures 1 to 4 Part or all of one or more operations or methods in .

[0062] The description of the examples described herein is intended to provide a general understanding of the structure of different embodiments. These descriptions are not intended to be a complete description of all elements and features of the apparatus and system utilizing the structure or method described herein. After reviewing the present invention, many other embodiments may be apparent to those skilled in the art. Other embodiments may be utilized and derived from this disclosure so that structural and logical replacements and changes can be made without departing from the scope of this disclosure. For example, method operations may be performed in an order different from the order shown in the figures or one or more method operations may be omitted. Therefore, this disclosure and the figures are considered to be illustrative and not restrictive.

[0063] Moreover, although specific examples have been illustrated and described herein, it will be appreciated that any subsequent arrangement designed to achieve the same or similar results can be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the description.

[0064] The submission of this disclosure is intended to be illustrative of the broader aspects of the present disclosure. It is not intended to limit the scope of the claims to the specific embodiments shown. Furthermore, in the foregoing detailed description, various features can be grouped together or described in a single embodiment for the purpose of streamlining the disclosure. This disclosure is not to be interpreted as being limited to the exemplary embodiments. It is also understood that numerous modifications and changes can be made to the details of the present disclosure without departing from the underlying principles. The scope of the disclosure is not limited to the specific examples described herein, but only to the claims and their equivalents.

[0065] Particular aspects of the present disclosure are described in the following, interrelated examples:

[0066] According to Example 1, an apparatus comprises one or more processors configured to determine a probability that an aircraft will follow a submitted flight path; and in response to determining that the probability is less than a threshold, provide one or more alternative flight paths to the apparatus.

[0067] Example 2 includes the apparatus of Example 1, wherein the one or more processors are further configured to obtain historical flight path data comprising individual flight paths associated with an airline between a first city and a second city; obtain data related to the submitted flight path, the first city, and the second city; and determine the one or more alternative flight paths based on the historical flight path data.

[0068] Example 3 includes the apparatus of Example 2, wherein the data comprises one or more of: weather information occurring along the submitted flight path at the first city, at the second city, or a combination thereof, congestion information occurring along the submitted flight path, delay information occurring at the first city, at the second city, or at both the first city and the second city, and a notification of an air mission related to the submitted flight path.

[0069] Example 4 includes the apparatus of Example 3, wherein the determination of the probability is based on the data.

[0070] Example 5 includes the apparatus of any of Examples 1-4, wherein the determination of the probability occurs prior to the aircraft taking off.

[0071] Example 6 includes the apparatus of any of Examples 1-5, wherein the determination of the probability occurs during the flight.

[0072] Example 7 includes the apparatus of any of Examples 1-6, wherein the processor is further configured to display, on the apparatus, the one or more alternative flight paths and the submitted flight path; and obtain user input selecting one of the one or more alternative flight paths.

[0073] Example 8 includes the apparatus of any of Examples 1-7, wherein the processor is further configured to display, on the apparatus, the one or more alternative flight paths and the submitted flight path; and obtain user input selecting the submitted flight path.

[0074] Example 9 includes the apparatus of any of Examples 1-8, wherein the processor is further configured to obtain historical flight path data comprising individual flight paths associated with airlines between the first city and the second city; determine, based on the historical flight path data, a first set of horizontal flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of horizontal flight paths having a second flight path similarity measure, wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths; obtain data related to the submitted flight path, the first city, and the second city; and generate, based on the data, the one or more alternative flight paths from the first set of horizontal flight paths or the second set of horizontal flight paths.

[0075] Example 10 includes the apparatus of any of Examples 1-9, wherein the processor is further configured to obtain historical flight path data comprising individual flight paths associated with airlines between the first city and the second city; determine, based on the historical flight path data, a first set of vertical flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of vertical flight paths having a second flight path similarity measure, wherein the second set of vertical flight paths is different from the first set of vertical flight paths; obtain data related to the submitted flight path, the first city, and the second city; and generate, based on the data, the one or more alternative flight paths from the first set of vertical flight paths or the second set of vertical flight paths.

[0076] Example 11 includes the apparatus of any of Examples 1-10, wherein the processor is further configured to obtain historical flight path data comprising individual flight paths associated with airlines between the first city and the second city; determine, based on the historical flight path data, a first set of horizontal flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of horizontal flight paths having a second flight path similarity measure, wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths; determine, based on the first set of horizontal flight paths, a first set of vertical flight paths having a first vertical flight path similarity measure; determine, based on the first set of horizontal flight paths, a second set of vertical flight paths having a second vertical flight path similarity measure; determine, based on the second set of horizontal flight paths, a third set of vertical flight paths having a third vertical flight path similarity measure; determine, based on the second set of horizontal flight paths, a fourth set of vertical flight paths having a fourth vertical flight path similarity measure; obtain data related to the submitted flight path, the first city, and the second city; and based on the data, generate one or more alternative flight paths from one or more of: the first set of horizontal flight paths and the first set of vertical flight paths, the first set of horizontal flight paths and the second set of vertical flight paths, the second set of horizontal flight paths and the third set of vertical flight paths, or the second set of horizontal flight paths and the fourth set of vertical flight paths.

[0077] Example 12 includes the apparatus of any of Examples 1-11, wherein the one or more alternative flight paths are ranked.

[0078] According to Example 13, a method includes determining, at a computing device, a probability that an aircraft will follow a submitted flight path; and responsive to determining that the probability is less than a threshold, providing, via the computing device, one or more alternative flight paths to a device.

[0079] Example 14 includes the method of Example 13, further comprising obtaining historical flight path data comprising individual flight paths associated with airlines between the first city and the second city; obtaining data related to the submitted flight path, the first city, and the second city; and determining the one or more alternative flight paths based on the historical flight path data.

[0080] Example 15 includes the method of Example 14, wherein the data comprises one or more of: weather information occurring along the submitted flight path at the first city, at the second city, or a combination of the first city and the second city, congestion information occurring along the submitted flight path, delay information occurring at the first city, at the second city, or at both the first city and the second city, and a notification of an air mission related to the submitted flight path.

[0081] Example 16 includes the method of Example 15, wherein the probability is determined based on the data.

[0082] Example 17 includes the method of any of Examples 13-16, wherein the determining the probability occurs before the aircraft takes off.

[0083] Example 18 includes the method of any of Examples 13-17, wherein the determining the probability occurs during the flight.

[0084] Example 19 includes the method of any of Examples 13-18, further comprising displaying, on the device, the one or more alternative flight paths and the submitted flight path; and obtaining user input selecting one of the one or more alternative flight paths.

[0085] According to Example 20, a non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to determine a probability that an aircraft will follow a submitted flight path; and in response to determining that the probability is less than a threshold, provide one or more alternative flight paths to a device.

[0086] For the sake of completeness, various aspects of the present disclosure are set out in the numbered clauses below:

[0087] Clause 1. A data processing device (102) for generating alternative flight plans, the device comprising:

[0088] one or more processors (112) configured to:

[0089] determine a probability (116) that an aircraft will follow a submitted flight path (110); and

[0090] in response to determining that the probability is less than a threshold (106), provide one or more alternative flight paths (118) to a device (122).

[0091] Clause 2. The device of Clause 1, wherein the one or more processors are further configured to:

[0092] obtain historical flight path data (128) comprising individual flight paths (206, 302) associated with an operator between a first city (202) and a second city (204);

[0093] obtain data (130) related to the submitted flight path, the first city, and the second city; and

[0094] determine the one or more alternative flight paths based on the historical flight path data.

[0095] Clause 3. The apparatus of clause 2, wherein the data comprises one or more of:

[0096] weather information occurring along the submitted flight path in the first city, in the second city, or a combination of the first city and the second city,

[0097] congestion information occurring along the submitted flight path,

[0098] delay information occurring at the first city, the second city, or both the first city and the second city, and

[0099] notification of an air mission related to the submitted flight path.

[0100] Clause 4. The apparatus of clause 3, wherein the determination of the probability is based on the data.

[0101] Clause 5. The apparatus of any one of clauses 1-4, wherein the determination of the probability occurs before the aircraft takes off.

[0102] Clause 6. The apparatus of any one of clauses 1-4, wherein the determination of the probability occurs during the flight.

[0103] Clause 7. The apparatus of any one of clauses 1-6, wherein the one or more processors are further configured to:

[0104] display, on the apparatus, the one or more alternative flight paths and the submitted flight path; and

[0105] obtain user input selecting one of the one or more alternative flight paths.

[0106] Clause 8. The apparatus of any one of clauses 1-7, wherein the one or more processors are further configured to:

[0107] display, on the apparatus, the one or more alternative flight paths and the submitted flight path; and

[0108] obtain user input selecting the submitted flight path.

[0109] Clause 9. The apparatus of any one of clauses 1-8, wherein the processor is further configured to:

[0110] obtain historical flight path data (128) comprising individual flight paths (206) associated with an airline between the first city (202) and the second city (204);

[0111] determine, based on the historical flight path data, a first set of horizontal flight paths (206A) having a first flight path similarity measure (208);

[0112] determine, based on the historical flight path data, a second set of horizontal flight paths (206B) having a second flight path similarity measure (208), wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths;

[0113] obtain data (130) related to the submitted flight path, the first city, and the second city; and

[0114] generate, based on the data, one or more alternative flight paths from the first set of horizontal flight paths or the second set of horizontal flight paths.

[0115] Clause 10. The apparatus of any of clauses 1-9, wherein the processor is further configured to:

[0116] obtain historical flight path data (128) comprising individual flight paths (302) associated with an operator between a first city (202) and a second city (204);

[0117] determine, based on the historical flight path data, a first set of vertical flight paths (302A) having a first flight path similarity measure (304);

[0118] determine, based on the historical flight path data, a second set of vertical flight paths (302B) having a second flight path similarity measure (304), wherein the second set of vertical flight paths is different from the first set of vertical flight paths;

[0119] obtain data (130) related to the submitted flight path, the first city, and the second city; and

[0120] generate, based on the data, one or more alternative flight paths from the first set of vertical flight paths or the second set of vertical flight paths.

[0121] Clause 11. The apparatus of any of clauses 1-8, wherein the processor is further configured to:

[0122] obtain historical flight path data (128) comprising individual flight paths (206, 302) associated with an operator between a first city (202) and a second city (204);

[0123] determine, based on the historical flight path data, a first set of horizontal flight paths (206A) having a first flight path similarity measure (208);

[0124] based on the historical flight path data, determine a second set of horizontal flight paths (206B) having a second flight path similarity measure (208), wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths;

[0125] based on the first set of horizontal flight paths, determine a first set of vertical flight paths (302A) having a first vertical flight path similarity measure (304);

[0126] based on the first set of horizontal flight paths, determine a second set of vertical flight paths (302B) having a second vertical flight path similarity measure (304);

[0127] based on the second set of horizontal flight paths, determine a third set of vertical flight paths (302C) having a third vertical flight path similarity measure (304);

[0128] based on the second set of horizontal flight paths, determine a fourth set of vertical flight paths (302D) having a fourth vertical flight path similarity measure (304);

[0129] obtain data (130) related to the submitted flight path, the first city, and the second city; and

[0130] based on the data, generate one or more alternative flight paths according to one or more of:

[0131] the first set of horizontal flight paths and the first set of vertical flight paths,

[0132] the first set of horizontal flight paths and the second set of vertical flight paths,

[0133] the second set of horizontal flight paths and the third set of vertical flight paths, and

[0134] the second set of horizontal flight paths and the fourth set of vertical flight paths.

[0135] Clause 12. The apparatus of any one of Clauses 1-11, wherein the one or more alternative flight paths are ranked.

[0136] Clause 13. A computer-implemented method of generating alternative flight plans, the method comprising:

[0137] determining, at a computing apparatus (102, 510), a probability (116) that an aircraft will follow a submitted flight path (110); and

[0138] in response to determining that the probability is less than a threshold (106), providing, via the computing apparatus, one or more alternative flight paths (118) to an apparatus (122).

[0139] Clause 14. The method of clause 13, further comprising:

[0140] obtaining historical flight path data (128) comprising individual flight paths (206, 302) associated with the operator between the first city (202) and the second city (204);

[0141] obtaining data (130) related to the submitted flight path, the first city, and the second city; and

[0142] determining one or more alternative flight paths based on the historical flight path data.

[0143] Clause 15. The method of clause 14, wherein the data comprises one or more of:

[0144] weather information occurring along the submitted flight path at the first city, at the second city, or a combination of the first city and the second city,

[0145] congestion information occurring along the submitted flight path,

[0146] delay information occurring at the first city, the second city, or both the first city and the second city, and

[0147] notification of an aerial mission related to the submitted flight path.

[0148] Clause 16. The method of clause 15, wherein the probability is determined based on the data.

[0149] Clause 17. The method of any one of clauses 13 to 16, wherein determining the probability occurs before the aircraft takes off.

[0150] Clause 18. The method of any one of clauses 13 to 16, wherein determining the probability occurs during the flight.

[0151] Clause 19. The method of any one of clauses 13 to 18, further comprising:

[0152] displaying the one or more alternative flight paths and the submitted flight path on a device; and

[0153] obtaining user input selecting one of the one or more alternative flight paths.

[0154] Clause 20. A computer program product comprising instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the method according to any one of clauses 13 to 19.

Claims

1. A data processing apparatus for generating alternative flight plans, the apparatus comprising: one or more processors configured to: determine a probability that an aircraft will follow a submitted flight path; and in response to determining that the probability is less than a threshold, provide one or more alternative flight paths to another apparatus.

2. The apparatus of claim 1, wherein, the one or more processors are further configured to: obtain historical flight path data comprising individual flight paths associated with an operator associated with the aircraft between a first city and a second city; obtain data related to the submitted flight path, the first city, and the second city; and determine the one or more alternative flight paths based on the historical flight path data.

3. The apparatus of claim 2, wherein, the data comprises one or more of: weather information occurring along the submitted flight path at the first city, at the second city, or a combination of the first city and the second city, congestion information occurring along the submitted flight path, delay information occurring at the first city, at the second city, or both the first city and the second city, and notifications of air tasks related to the submitted flight path.

4. The apparatus of claim 3, wherein, the determination of the probability is based on the data.

5. The apparatus of any one of claims 1 to 4, wherein, the determination of the probability occurs before the aircraft takes off.

6. The apparatus of any one of claims 1 to 4, wherein, the determination of the probability occurs during the flight.

7. The apparatus of any one of claims 1 to 6, wherein, the one or more processors are further configured to: display the one or more alternative flight paths and the submitted flight path on the other apparatus; and obtain user input selecting one of the one or more alternative flight paths.

8. The apparatus of any one of claims 1-7, wherein, the one or more processors are further configured to: display the one or more alternative flight paths and the submitted flight path on the other apparatus; and obtain user input selecting the submitted flight path.

9. The apparatus of any one of claims 1-8, wherein, the processors are further configured to: obtain historical flight path data comprising individual flight paths associated with an airline between a first city and a second city; determine, based on the historical flight path data, a first set of horizontal flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of horizontal flight paths having a second flight path similarity measure, wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths; obtain data related to the submitted flight path, the first city, and the second city; and generate the one or more alternative flight paths from the first set of horizontal flight paths or the second set of horizontal flight paths based on the data.

10. The apparatus of any one of claims 1 to 9, wherein, the processors are further configured to: obtain historical flight path data comprising individual flight paths associated with an operator between a first city and a second city; determine, based on the historical flight path data, a first set of vertical flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of vertical flight paths having a second flight path similarity measure, wherein the second set of vertical flight paths is different from the first set of vertical flight paths; obtain data related to the submitted flight path, the first city, and the second city; and generate the one or more alternative flight paths from the first set of vertical flight paths or the second set of vertical flight paths based on the data. determine, based on the historical flight path data, a second set of vertical flight paths having a second flight path similarity measure, wherein the second set of vertical flight paths is different from the first set of vertical flight paths; obtain data related to the submitted flight path, the first city, and the second city; and generate, based on the data, the one or more alternative flight paths from the first set of vertical flight paths or the second set of vertical flight paths.

11. The apparatus of any one of claims 1 to 8, wherein, the processor is further configured to: obtain historical flight path data, the historical flight path data comprising individual flight paths associated with an operator between a first city and a second city; determine, based on the historical flight path data, a first set of horizontal flight paths having a first flight path similarity measure; determine, based on the historical flight path data, a second set of horizontal flight paths having a second flight path similarity measure, wherein the second set of horizontal flight paths is different from the first set of horizontal flight paths; determine, based on the first set of horizontal flight paths, a first set of vertical flight paths having a first vertical flight path similarity measure; determine, based on the first set of horizontal flight paths, a second set of vertical flight paths having a second vertical flight path similarity measure; determine, based on the second set of horizontal flight paths, a third set of vertical flight paths having a third vertical flight path similarity measure; determine, based on the second set of horizontal flight paths, a fourth set of vertical flight paths having a fourth vertical flight path similarity measure; obtain data related to the submitted flight path, the first city, and the second city; and generate, based on the data, the one or more alternative flight paths from one or more of: the first set of horizontal flight paths and the first set of vertical flight paths, the first set of horizontal flight paths and the second set of vertical flight paths, the second set of horizontal flight paths and the third set of vertical flight paths, and the second set of horizontal flight paths and the fourth set of vertical flight paths.

12. A computer-implemented method of generating alternative flight plans, the method comprising: determining, at a computing device, a probability that an aircraft will follow a submitted flight path; and in response to determining that the probability is less than a threshold value, providing, via the computing device, one or more alternative flight paths to another device.

13. The method of claim 12, further comprising: obtaining historical flight path data, the historical flight path data comprising individual flight paths associated with an operator between a first city and a second city; obtaining data related to the submitted flight path, the first city, and the second city; and determining the one or more alternative flight paths based on the historical flight path data.

14. The method of claim 13, wherein, the data comprising one or more of: weather information occurring along the submitted flight path in the first city, in the second city, or in a combination of the first city and the second city, congestion information occurring along the submitted flight path, delay information occurring at the first city, at the second city, or at both the first city and the second city, and notification of an aerial mission related to the submitted flight path.

15. A computer program product comprising instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the method according to any one of claims 12 to 14.