Patent Description:
<CIT>, in accordance with its abstract states a system includes an auto-flight system and a touchscreen flight mode control panel. The auto-flight system is configured to control a plurality of primary flight modes. The touchscreen flight mode control panel is communicatively coupled to the auto-flight system. The touchscreen flight mode control panel is configured to receive primary flight mode data from the auto-flight system. The touchscreen flight mode control panel is also configured to graphically present each primary flight mode of the plurality of primary flight modes to a user. The touchscreen flight mode control panel is further configured to detect touch gestures and direct executions of the user. The touchscreen flight mode control panel is additionally configured to output touch gesture data and direct execution data to the auto-flight system.

The present disclosure provides improved systems and methods for the optimization of aircraft flight paths based on various parameters.

The present disclosure provides a method, comprising: generating a plurality of waypoints with allowable parameters for a flightpath in which a course of an aircraft is adjustable, the course including elements for heading, altitude, and speed; calculating a number of unique trajectories that are allowable according to the plurality of waypoints; determining whether the number of unique trajectories is greater than a threshold number of trajectories; if it is determined that the number of unique trajectories is greater than a threshold number of trajectories assessing the unique trajectories to identify an elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the set of assessed unique trajectories by: generating an initial parameter probability distribution from the plurality of waypoints; generating a probabilistic set of trajectories of a predefined number based on the initial parameter probability distribution; and selecting the elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the probabilistic set of trajectories; identifying mobile waypoints in trajectories of the elite set of trajectories, wherein mobile waypoints are waypoints in which the course may be adjusted in the trajectory by one or more of heading, altitude, and speed; performing a global optimal path assessment, wherein positions of mobile waypoints are adjusted within an associated trajectory to identify an optimal trajectory for the aircraft on the flightpath; and providing the optimal trajectory to the aircraft to follow the flightpath according to the optimal trajectory.

In combination with any example method above or below, the method may further comprise, in response to determining that the number of unique trajectories is less than the threshold number of trajectories: generating an exhaustive set of trajectories corresponding to the unique trajectories; and performing an exhaustive assessment on the exhaustive set of trajectories to identify the elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the set of exhaustive trajectories.

In combination with any example method above or below, the probabilistic assessment of the method may further comprise: generating an initial parameter probability distribution from the plurality of waypoints; generating a probabilistic set of trajectories of a predefined number based on the initial parameter probability distribution; and selecting the elite set of trajectories from the probabilistic set of trajectories.

In combination with any example method above or below, selecting the elite set of trajectories from the probabilistic set of trajectories in the method may further comprise: generating a subsequent parameter probability distribution from waypoints included in the elite set of trajectories; generating a subsequent probabilistic set of trajectories of the predefined number based on the subsequent parameter probability distribution; and selecting new set of trajectories from the subsequent probabilistic set of trajectories as the elite set of trajectories.

In combination with any example method above or below, the mobile waypoints may be waypoints at which at least one element of the course is adjusted in a particular trajectory of the elite set of trajectories; and waypoints in the particular trajectory at which least one of the elements of the course is not adjusted may be removed from the particular trajectory when performing the global optimal path assessment.

In combination with any example method above or below, the positions of the mobile waypoints may be adjusted within the associated trajectory within a range on the trajectory defined by a halfway-points between the mobile waypoints.

In combination with any example method above or below, the waypoints with allowable parameters may specify at least one criterion selected from the group comprising: a longitude; a latitude; an in-cabin noise level; an environmental noise level; an available thrust for the aircraft; an elapsed flight time; a sea-level altitude for the aircraft; a ground-level altitude for the aircraft; a weight of the aircraft; and an operational event for the aircraft.

The present disclosure also provides a system for vertical flight path optimization, the system comprising: a processor; a memory, including instructions that when executed by the processor enable the system to: generate a plurality of waypoints with allowable parameters for a flightpath at which a course, including elements for heading, altitude, and speed, of an aircraft is adjustable; calculate a number of unique trajectories available based on the plurality of waypoints; in response to determining that the number of unique trajectories is greater than a threshold number of trajectories, perform a probabilistic assessment of the unique trajectories to identify an elite set of trajectories that include those trajectories with efficiency metrics within an upper range of a set of assessed trajectories; identify mobile waypoints in trajectories of the elite set of trajectories; perform a global optimal path assessment, wherein positions of mobile waypoints are adjusted within an associated trajectory to identify an optimal trajectory for the aircraft on the flightpath; and provide the optimal trajectory to the aircraft to follow the flightpath according to the optimal trajectory.

In combination with any example system above or below, in response to determining that the number of unique trajectories is less than the threshold number of trajectories, the system may be further enabled to: generate an exhaustive set of trajectories corresponding to the unique trajectories; and perform an exhaustive assessment on the exhaustive set of trajectories to identify the elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the set of exhaustive trajectories.

In combination with any example system above or below, when performing the probabilistic assessment the system may be further enabled to: generate an initial parameter probability distribution from the plurality of waypoints; generate a probabilistic set of trajectories of a predefined number based on the initial parameter probability distribution; and select the elite set of trajectories from the probabilistic set of trajectories.

In combination with any example system above or below, when selecting the elite set of trajectories from the probabilistic set of trajectories, the system may be further enabled to: generate a subsequent parameter probability distribution from waypoints included in the elite set of trajectories; generate a subsequent probabilistic set of trajectories of the predefined number based on the subsequent parameter probability distribution; and select a new set of trajectories from the subsequent probabilistic set of trajectories as the elite set of trajectories.

In combination with any example system above or below, the mobile waypoints may be waypoints at which at least one element of the course is adjusted in a particular trajectory of the elite set of trajectories; and waypoints in the particular trajectory at which least one of the elements of the course is not adjusted are removed from the particular trajectory when performing the global optimal path assessment.

In combination with an example system above or below, the positions of the mobile waypoints may be adjusted within the associated trajectory within a range on the trajectory defined by a halfway-points between the mobile waypoints.

In combination with any example system above or below, the waypoints with allowable parameters may specify at least one criterion selected from the group comprising: a longitude; a latitude; an in-cabin noise level; an environmental noise level; an available thrust for the aircraft; an elapsed flight time; a sea-level altitude for the aircraft; a ground-level altitude for the aircraft; a weight of the aircraft; and an operational event for the aircraft.

The present disclosure also provides a non-transitory computer readable medium including instructions that when executed by a processor enable the processor to perform an operation for vertical flightpath optimization, the operation comprising: generating a plurality of waypoints with allowable parameters for a flightpath at which a course, including elements for heading, altitude, and speed, of an aircraft is adjustable; calculating a number of unique trajectories available based on the plurality of waypoints; in response to determining that the number of unique trajectories is greater than a threshold number of trajectories, performing a probabilistic assessment of the unique trajectories to identify an elite set of trajectories that include those trajectories with efficiency metrics within an upper range of a set of assessed trajectories; identifying mobile waypoints in trajectories of the elite set of trajectories; performing a global optimal path assessment, wherein positions of mobile waypoints are adjusted within an associated trajectory to identify an optimal trajectory for the aircraft on the flightpath; and providing the optimal trajectory to the aircraft to follow the flightpath according to the optimal trajectory.

In combination with any example computer readable medium above or below, in response to determining that the number of unique trajectories is less than the threshold number of trajectories, the operation may comprise: generating an exhaustive set of trajectories corresponding to the unique trajectories; and performing an exhaustive assessment on the exhaustive set of trajectories to identify the elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the set of exhaustive trajectories.

In combination with any example computer readable medium above or below, the probabilistic assessment may further comprise: generating an initial parameter probability distribution from the plurality of waypoints; generating a probabilistic set of trajectories of a predefined number based on the initial parameter probability distribution; and selecting the elite set of trajectories from the probabilistic set of trajectories.

In combination with any example computer readable medium above or below, selecting the elite set of trajectories from the probabilistic set of trajectories may further comprise: generating a subsequent parameter probability distribution from waypoints included in the elite set of trajectories; generating a subsequent probabilistic set of trajectories of the predefined number based on the subsequent parameter probability distribution; and selecting a new set of trajectories from the subsequent probabilistic set of trajectories as the elite set of trajectories.

In combination with any example computer readable medium above or below, the mobile waypoints may be waypoints at which at least one element of the course is adjusted in a particular trajectory of the elite set of trajectories; and waypoints in the particular trajectory at which least one of the elements of the course is not adjusted may be removed from the particular trajectory when performing the global optimal path assessment.

In combination with any example computer readable medium above or below, the positions of the mobile waypoints may be adjusted within the associated trajectory within a range on the trajectory defined by a halfway-points between the mobile waypoints.

So that the manner in which the above recited features of the present disclosure can be understood in detail, a more particular description of the disclosure, briefly summarized above, may be had by reference to examples, some of which are illustrated in the appended drawings.

The present disclosure relates to improved systems and methods for optimizing flightpaths for aircraft. A flightpath generally defines the route an aircraft takes from a first point to a second point, and the aircraft may vary the speed and altitude traveled at (referred to as a trajectory) over that flightpath to affect various parameters associated with the flight. Aircraft generally alter one or more of heading, altitude and speed at points in the flightpath referred to as waypoints. The number of potential waypoints at which an aircraft can adjust heading/altitude/speed and the range of allowable waypoint parameters that can be adjusted to present a pool of possible trajectories that may be too large to effectively analyze for an optimal trajectory that maximizes the efficiency metric for a flight. In cases where the pool is small enough, an exhaustive analysis may be performed (score and rank all possibilities), but larger pools may be analyzed based on a probabilistically representative sample set. Several iterations of the probabilistic set may be analyzed until diminishing returns in efficiency gains are noted, and the current iteration's set are then scored and ranked. Once analyzed, either exhaustively or probabilistically, an "elite" set of trajectories that have the best efficiency metrics are identified. To further streamline processing, any waypoint that is not associated with a change in heading/altitude/speed in an elite trajectory may be disregarded in further analysis. The remaining waypoints are "mobile" and their positions in the elite trajectories are adjusted during a maximization analysis to find the trajectory that produces the "best" flightpath for an operator's needs. That trajectory can then be assigned to an autopilot to follow when guiding the aircraft over the flightpath.

As will be appreciated, the present disclosure provides improvements in computing devices involved in generating and using optimized flightpaths via a novel process that is markedly different than the generation processes used in prior systems by enabling a probabilistic search with enhanced accuracy and precision, rather than relying on brute force analysis of the dataset or a sampled subset thereof. The improvements provided include, but are not limited to: using fewer processing resources and memory storage space to handle the analysis of equivalently large datasets, the faster and more flexible generation of flightpaths (enabling mid-flight updates for a flightpath), and other benefits.

As used herein, an operator may refer to a pilot or crewmember of an aircraft, an operator of an aircraft (e.g., an airline), an Air Traffic Controller (ATC), or a group of coordinated ATCs. An operator may use one or more computing devices to perform one or more tasks including the methods discussed herein. A computing device includes a processor and a memory storage device including instructions contained thereon that are executable by the processor to enable the computing device to perform various actions. Examples of computing devices include servers, personal computing devices (e.g., towers, laptops, smart phones, tablets), aircraft control computing devices (e.g., a computing system providing control and sensor interfaces and autopilot functionality for an aircraft), flight control computing devices (e.g., a computing system providing command and control interfaces for an airspace), etc..

As used herein, a waypoint refers to a set of defined conditions experienced within a flight plan at which an aircraft can initiate a change of heading, speed, and/or altitude. Waypoint parameters describe various physical representations of the aircraft, airspace, atmosphere, or flight state at some point in the flightpath that the conditions are measured against. In some aspects, the condition may be satisfied with one or more locational coordinates (e.g., latitude, longitude, altitude relative to sea level, altitude relative to ground). In other aspects, the condition may be satisfied with various characteristics of the aircraft (e.g., weight, available thrust, pitch). In further aspects, the condition may be satisfied with various events occurring (e.g., landing gear deployment, flaps down, time since takeoff). A waypoint may include one or more waypoint parameter (e.g., latitude and longitude, latitude and weight, available thrust and time since takeoff), and each waypoint in a flight plan may specify the same or different waypoint parameters. Although waypoints may be referred to in relation to a "position" or "point" in a flightpath and relative to one another, it will be understood that waypoints are not limited to locational criteria but are multi-dimensional descriptions of aircraft, airspace, atmosphere, or flightpath characteristics, and that the "position" or "point" in the flightpath may refer to a completion percentage of the associated flightpath where a given waypoint parameter set is expected to be satisfied within the course of the flightpath.

As used herein, an efficiency metric refers to a combined weighted score of various waypoint parameters associated with a flight plan to describe quantitative and qualitative measures of flight efficiency as related to operational, scheduling, regulatory, and reputational constraints. For example, a fuel use rate, an impact of scheduling change (e.g., a number of passengers who will miss a connecting flight if arriving late, whether arriving early has a positive effect), an on-duty time for flight crew, a noise level (e.g., internal cabin dB or groundside dB), a wear-and-tear metric, etc. may each be included when considered an efficiency metric for a particular trajectory. The waypoint parameters may address issues related to aircraft performance, operational management, passenger comfort, and environmental impact, among other concerns. At various points in the flight plan, one or more waypoint parameters may oppose one another in optimizing the efficiency metric. For example, a lower altitude and a higher speed may increase a noise level detected on the ground, which the operator of the aircraft may wish to minimize to reduce impact of flight operations on persons living under the flightpath. However, flying at a higher altitude may cause the aircraft to experience turbulence (which the operator wishes to reduce to improve passenger comfort) and flying at a lower speed may induce longer flights (which the operator also wishes to reduce to improve operational management). Optimizing the counter-acting parameters according to the operator's preferences may weight different parameters differently at various points of the flightpath. For example, a parameter for external noise levels may be weighted lowest from <NUM> miles to X miles away from airports and highest within a range from X miles to Y miles away from an airport.

In reference now to <FIG>, an architecture <NUM> is illustrated that shows components for a system to provide vertical flightpath optimization. The architecture <NUM> may include one or more computing devices provided by one or more operators to provide the features and actions described herein. In various aspects, the architecture <NUM> represents a single computer system, while in other aspects the architecture <NUM> is provided by several computer systems working in a networked or connected environment, for example, via the Internet, a Local Area Network, an ad hoc wired network or the like.

An environmental forecast generator <NUM> receives weather and air-traffic forecast information from various external data sources to map the flightpath for analysis. The external data sources may include ATC flight maps, flight plan databases, weather services, and other entities that provide information on the environment in which the aircraft will fly. In some aspects, the environmental forecast generator <NUM> produces a four-dimensional grid of the weather features in the flightpath, including the turbulence, wind speed, wind direction, and temperature. In various aspects, the environmental forecast generator <NUM> produces a scheduling difference probability for various sectors of airspace and airports along the flightpath and produces a timing impact table that associates the effects on the efficiency metric for the given flightpath of arriving at the destination or waypoints at various times other than the scheduled time of arrival. For example, arriving at the destination airport X minutes early may have a small positive effect of the efficiency metric, arriving on-time or up to Y minutes late may have no or negligible effect on the efficiency metric, but arriving Z minutes late or later may have a large negative effect on the efficiency metric to encourage the generation of flightpaths resulting in punctual flights.

A flight object generator <NUM> receives flight plans generated by operators in various formats and the atmospheric information generated by the environmental forecast generator <NUM>. When generating a flight plan with an optimized trajectory for a given aircraft, the flight object generator <NUM> generates a flight object that specifies the initial aircraft conditions (e.g., aircraft type, fuel load, weight, weight distribution), required waypoints, a subset of the weather and forecast map that the flightpath passes through (e.g. within <NUM> miles from a designated pathway), and the timing impact table.

A performance model database <NUM> stores data related to the performance criteria of various aircraft. These data include, but are not limited to: aircraft type, passenger count, crew count, flight schedules, fuel consumption rates, altitude envelopes, speed profiles, acceleration/deceleration curves, allowable climb/descent rates, cabin profiles, engine type and number, fuel load, etc..

A weather interpolator <NUM> receives weather data from the flight object generator <NUM> and computers the most probable weather conditions at a given points inside and around a weather pattern. For example, a weather cell (e.g., a cloudbank, low/high pressure zone) may be indicated in the weather data as overlaying certain coordinates, and the weather interpolator <NUM> calculates the: wind speeds; wind directions; likelihoods and strengths of updrafts and downdrafts; regionalized chances of rain, snow, hail, ice, and/or lightning; etc. at various coordinates corresponding to the weather cell.

A trajectory space generator <NUM> breaks the horizontal elements of the flightpath into segments with various waypoints spaced along the course of the flightpath at which the aircraft may adjust speed and/or altitude along the pathway. The waypoints may include operator specified waypoints and waypoints created by the trajectory space generator <NUM>. At each waypoint, the trajectory space generator <NUM> determines the range of allowable altitudes and speeds for the aircraft based on flight control restrictions (e.g., restricted airspace, commuter flights are limited to one altitude bands and long-haul flights to another), environmental factors (e.g., buildings or mountains may set a safety floor for a lower-bound on altitude), and performance factors (e.g., an aircraft may be certified to operate at various altitudes and speeds, and not operate at others due to mechanical or operational-efficiency data).

The trajectory optimizer <NUM> searches within the range of allowable altitudes and speeds for each available waypoint to identify the "best" trajectory to satisfy the operator's preferences. The trajectory optimizer <NUM> receives the interpolated weather map from the weather interpolator <NUM>, the waypoints and ranges of values for those waypoints from the trajectory space generator <NUM>, and communicates with the trajectory score calculator <NUM> to determine which trajectories most fully satisfy the operator's preferences.

A trajectory score calculator <NUM> receives a trajectory optimized by the trajectory optimizer <NUM> and the initial aircraft conditions from the flight object generator <NUM>, and computes the efficiency metric for that trajectory. An operator sets the trajectory score calculator <NUM> to weight the various parameters according to the operator's preferences. For example, one operator may set the trajectory score calculator <NUM> to prioritize passenger comfort (e.g., keep in-cabin noise below a threshold, avoid turbulence, keep ascents/descents below a threshold pitch) while another operator may set the trajectory score calculator <NUM> to prioritize fuel efficiency. The trajectory score calculator <NUM> provides the scores for the efficiency metrics of various trajectories to the trajectory optimizer <NUM> so that the trajectory optimizer <NUM> may select the elite set of trajectories, perform recursive rounds of probabilistic analysis, and output an optimized trajectory to a piloting device <NUM>.

One or more piloting devices <NUM> may be in communication with the trajectory optimizer <NUM> to request and/or received an optimized flightpath and trajectory from the trajectory optimizer <NUM>. Piloting devices <NUM> may include hand-held or personal devices (such as a pilot's tablet, dispatcher's workstation, or onboard avionics), to request and review various flightpaths by an aircraft crewmember, a flight management computer (including an autopilot) used in the aircraft to interface with the flight controls of the aircraft and automate the operation of the aircraft to follow a supplied flightpath, airline and ATC operations devices, and the like. In various aspects, more than one piloting device <NUM> may receive the optimized flightpath requested by one piloting device <NUM>.

<FIG> is a flowchart of a method <NUM> for optimizing vertical flightpaths. Method <NUM> begins with block <NUM>, where the flight object generator <NUM> generates the flight object(s) for a given flightpath. The flight object generator <NUM> receives a flight plan generated by an operator, collects weather forecast data relevant for the flight plan, and analyzes the distances, weather, and traffic between waypoints to produce a set of waypoints where the elements of the course in the flight (i.e., heading, altitude, and/or speed) can change.

At block <NUM>, the trajectory space generator <NUM> generates a plurality of waypoints with values within the allowable set of performance parameters for the aircraft along the flightpath. This set of waypoints sets out the potential combinations of heading, speed, and altitude that the aircraft can operate at. For example, a performance envelope for a given aircraft may specify a maximum climb/descent/turn rate, stall speed, cruising speed, maximum speed, etc. at various altitudes that the aircraft is certified/allowed to operate in. In some aspects, an operator may set a minimum altitude and/or speed and/or a maximum altitude and/or speed based on efficiency considerations.

At block <NUM>, the trajectory optimizer <NUM> determines whether the total number of unique trajectories (NT) that may be constructed from the allowable parameter set is greater than or less than a threshold number of trajectories (Nmax). In response to determining that NT is less than (or equal to) Nmax, method <NUM> proceeds to block <NUM>. In response to determining that NT is greater than Nmax, method <NUM> proceeds to block <NUM>.

At block <NUM>, the trajectory optimizer <NUM> generates the set of unique trajectories from the allowable waypoint parameter values, and, at block <NUM>, performs an exhaustive assessment of the set of unique trajectories. In an exhaustive assessment, the trajectory optimizer <NUM> and the trajectory score calculator <NUM> analyze the efficiency metric for each trajectory of the set of unique trajectories using the weights and parameters specified by the operator to return a set of elite trajectories. The elite trajectories are a predefined number (e.g., x) trajectories of the analyzed set that have the x-highest efficiency metrics as determined by the trajectory score calculator <NUM>. Method <NUM> proceeds to block <NUM> after block <NUM>.

At block <NUM>, the trajectory optimizer <NUM> and the trajectory score calculator <NUM> perform a probabilistic assessment of the trajectories within the allowable waypoint parameter values. The probabilistic assessment, as may be described in greater detail in regard to <FIG>, enables the computing device providing the trajectory optimizer <NUM> to save computing resources; instead of individually analyzing an arbitrarily large amount of trajectories above the threshold set by Nmax by the operator, the trajectory optimizer <NUM> analyzes a statistically representative set of trajectories over a series of iterations to refine what trajectories belong in the elite set of trajectories. By reducing the number of trajectories that are analyzed, the trajectory optimizer <NUM> may return results faster and enable additional functionality for the operators' devices in that flightpaths may be adjusted before flight and/or while the aircraft is in-flight as new data develop (e.g., as other aircraft adjust flightpaths, weather patterns shift).

At block <NUM>, the trajectory optimizer <NUM> identifies mobile waypoints in the elite set of trajectories. The trajectory optimizer <NUM> removes waypoints from the elite trajectories at which the heading, speed, and altitude remain constant or that are mandated as required by the operator (i.e., the specified heading/speed/altitude must occur at the associated waypoint). Stated differently, those waypoints that are "static" in value for the trajectory are removed, and the remaining waypoints that the trajectory optimizer <NUM> has control over and specifies a course change in one or more of heading, altitude, and speed in the elite trajectories are retained for optimization by the trajectory optimizer <NUM>.

The trajectory optimizer <NUM> identifies ranges that these mobile waypoints may be moved within the flightpath. The trajectory optimizer <NUM> may use a preset distance, the presence of a static waypoint and/or a radial distance to another mobile waypoint to identify a range for a given mobile waypoint. For example, the trajectory optimizer <NUM> may identify a distance range for a locational waypoint that allows for the locational waypoint to occur X miles ahead or after the initially specified location. In another aspect, the position of a mobile waypoint in the course of the flightpath may be adjusted until a static waypoint is reached or a midpoint between the mobile waypoint and a neighboring waypoint is reached.

At block <NUM>, the trajectory optimizer <NUM> performs a global assessment of the multidimensional space defined for the flightpath by the ranges of the mobile waypoints determined at block <NUM>. The trajectory optimizer <NUM> retains the values of the heading, altitude, and speed that the aircraft is to change to at the mobile waypoints, but varies where those changes occur within the flightpath. In some aspects, the trajectory optimizer <NUM> performs the global assessment via the DIRECT algorithm, or another global maxima/minima detection algorithm known to those of ordinary skill in the art to detect the series of positions for the mobile positions among the elite trajectories that maximize the efficiency metric.

Once identified, the trajectory optimizer <NUM> transmits the optimal trajectory (i.e., the trajectory determined to have the highest efficiency metric) and the positions and values of the waypoints therein to one or more piloting devices <NUM>. For example, an autopilot of the aircraft for which the optimized flightpath was requested can receive the flightpath to thereby control the aircraft to follow the flightpath according to the optimal trajectory. In a further example, a pilot may request several flightpaths optimized via different efficiency metric element weightings (e.g., to prioritize one of passenger comfort, short duration flights, fuel efficiency, etc.) and select one of the several flightpaths for the aircraft to use. In another example, the piloting device <NUM> of an ATC device receives the optimized flightpath to reroute aircraft around a developing storm with minimal negative effect on those aircraft. The aircraft receives the selected optimized flightpath, and either directs the pilot to follow the flightpath and/or automatically follows the flightpath as optimized. Method <NUM> may then conclude.

<FIG> is a flowchart of a method <NUM> for performing a probabilistic assessment when optimizing vertical flightpaths. Method <NUM> may be performed as part of block <NUM> of method <NUM> described in relation to <FIG>.

At block <NUM>, the trajectory optimizer <NUM> generates an initial parameter probability distribution from the allowable waypoint parameter values. The trajectory optimizer <NUM> surveys the values for the altitudes and speeds specified in each of the initial parameters (e.g., those parameters set at block <NUM> of method <NUM>). The counts of each parameter value are tallied at each waypoint to determine what percentage of values a probabilistic set of trajectories needs to include to be representative of the exhaustive set. Table <NUM> and Table <NUM> illustrate different example counts of one hundred trajectories having three potential values for speed and for altitude respectively. Values for heading have been omitted in the current examples so as to not distract from the inventive concepts described, but heading values may be included. The trajectory optimizer <NUM> may perform separate tallies of the parameter values to create separate tables that the probabilistic set of trajectories are to represent.

At block <NUM>, the trajectory optimizer <NUM> generates a set of probabilistic trajectories from the parameter probability distribution having a predefined number of trajectories (NP). For example, a probabilistic set of trajectories generated by the trajectory optimizer <NUM> using the example distributions in Table <NUM> and Table <NUM> would include a predefined number of trajectories such that the probabilistic set of trajectories will have <NUM>% of the speeds at waypoint<NUM> set to speed<NUM>, <NUM>% set to speed<NUM>, and <NUM> % set to speeds, while also having <NUM>% of the altitudes at waypoint<NUM> set to altitude<NUM>, <NUM>% set to altitude<NUM> and <NUM>% set to altitudes. The trajectory optimizer <NUM> generates the probabilistic set of trajectories to include similarly representative values for heading, speed, and altitude for all of the waypoints included in the trajectories.

At block <NUM>, the trajectory score calculator <NUM> determines the efficiency metric for each of the trajectories in the probabilistic set of trajectories and identifies, based on the efficiency metric, a predefined number of trajectories (Ne) that are the "elite" subset of the probabilistic set of trajectories. These elite trajectories include the trajectories within the upper range of the set of assessed trajectories for the given iteration of blocks <NUM>-<NUM>. Stated differently, the trajectory score calculator <NUM> selects Ne trajectories from the probabilistic set of NP trajectories with the highest efficiency metrics, which may be output from method <NUM> or used as the basis for a subsequent set of probabilistic analysis.

At block <NUM>, the trajectory optimizer <NUM> determines whether convergence has been reached. Convergence may be reached when the efficiency metric values for all trajectories in the elite set of trajectories exceed a predefined threshold, if a predefined number of iterations have occurred, or when an observed change in average efficiency metric values for the elite set of trajectories between iterations falls below a differential threshold. If convergence has been reached, method <NUM> may output the elite set of trajectories and conclude. If convergence has not been reached, method <NUM> proceeds to block <NUM>.

At block <NUM>, the trajectory optimizer <NUM> generates a subsequent parameter probability distribution from the elite set of Ne trajectories. The trajectory optimizer <NUM> surveys the values for the altitudes and speeds specified in each of the elite trajectories. The counts of each parameter value are tallied at each waypoint to determine what percentage of values the subsequent probabilistic set of trajectories needs to include to be representative of the elite set. Method <NUM> returns to block <NUM> after block <NUM>. The trajectory optimizer <NUM> may iterate through blocks <NUM>-<NUM> several times using the parameter probability distributions from the elite trajectories from the current iteration as the basis of the probabilistic set of Np trajectories in the next iteration.

<FIG> illustrate an example flightpath being optimized for one element of a trajectory. <FIG> illustrate the example flightpath of <FIG> optimized for a different element of the trajectory. <FIG> illustrates a first state <NUM> of a first flightpath element vector <NUM>, which may by defined by one of the sets of elements of an elite trajectory (e.g., heading, speed, altitude). <FIG> illustrates a first state <NUM> of a second flightpath element vector <NUM>, which is defined by a different one of the sets of elements of the elite trajectory illustrated in <FIG> (e.g., heading or speed when altitude is illustrated in the first flightpath element vector <NUM>). As will be appreciated, a flightpath includes elements of heading, altitude, and speed for the course of the flightpath; each of which may be visualized by a separate flightpath element vector <NUM>/<NUM>. The first flightpath element vector <NUM> illustrated in <FIG> represents the values for one element of the course; the other elements may be illustrated in similar one-element formats (e.g., as in <FIG>) or several elements may be illustrated in a multi-dimensional space (e.g., <NUM> dimensional, <NUM> dimensional, <NUM> dimensional, etc.) in other aspects.

Along the first flightpath element vector <NUM>, several waypoints 420a-g (generally, waypoints <NUM>) are illustrated in <FIG>. Corresponding waypoints 520a-g (generally, waypoints <NUM>) are illustrated in <FIG>. In <FIG>, the waypoints <NUM> are classified as either static waypoints 430a-d (generally, static waypoints <NUM>) or mobile waypoints 440a-c (generally, mobile waypoints <NUM>), which are illustrated with corresponding ranges 450a-c (generally, range <NUM>). Similarly, in <FIG>, the waypoints <NUM> are classified as either static waypoints 530a-d (generally, static waypoints <NUM>) or mobile waypoints 540a-c (generally, mobile waypoints <NUM>), which are illustrated with corresponding ranges 550a-c (generally, range <NUM>).

The static waypoints <NUM>/<NUM> represent waypoints <NUM>/<NUM> at which no change in any of the elements of the course defined by the trajectory being optimized occurs (e.g., a waypoint <NUM>/<NUM> where one or more of heading, altitude, or speed could have changed, but at which none of the elements change in the particular trajectory). The mobile waypoints <NUM>/<NUM> represent waypoints <NUM>/<NUM> at which the course is adjusted in the trajectory by one or more of heading, altitude, or speed. A course element may be altered for one element, as at waypoint 420d/520d, or for multiple elements, as at waypoints 420c/520c and 420f/520f. For instance, because the value of the element represented by the second flightpath element vector <NUM> changes at waypoint 520d, even though the value of the element represented by the first flightpath element vector <NUM> remains constant at waypoint 420d, the corresponding waypoints 420d/520d are classified as being mobile.

The mobile waypoints <NUM>/<NUM> are associated with ranges over which the position of the mobile waypoint <NUM>/<NUM> is varied to assess how to optimize the flightpath represented by the flightpath vectors <NUM>/<NUM>. A search algorithm, such as the DIRECT algorithm, is used to find the positions within the space defined by the ranges <NUM>/<NUM> at which the mobile waypoints <NUM>/<NUM> may be moved in the trajectory's multidimensional space to maximize the calculated efficiency metric for the particular trajectory being optimized. The position that the mobile waypoints <NUM>/<NUM> in the second state <NUM>/<NUM> are moved in <FIG> and <FIG> from starting positions in respective <FIG> and <FIG> affect when/where the changes indicated by those mobile waypoints <NUM>/<NUM> occur in the flightpath.

Reference is made herein to examples presented in this disclosure. However, the scope of the present disclosure is not limited to specific described examples. Instead, any combination of the following features and elements, whether related to different examples or not, is contemplated to implement and practice contemplated examples. Furthermore, although examples disclosed herein may achieve advantages over other possible solutions or over the prior art, whether or not a particular advantage is achieved by a given example is not limiting of the scope of the present disclosure. Thus, the following examples, features and advantages are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim(s).

Claim 1:
A processor implemented method, comprising:
generating (<NUM>) a plurality of waypoints (<NUM>, <NUM>) with allowable parameters for a flightpath in which a course of an aircraft is adjustable, the course including elements for heading, altitude, and speed;
calculating (<NUM>) a number of unique trajectories that are allowable according to the plurality of waypoints (<NUM>, <NUM>);
determining whether the number of unique trajectories is greater than a threshold number of trajectories;
if it is determined that the number of unique trajectories is greater than a threshold number of trajectories, assessing (<NUM>) the unique trajectories to identify an elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the set of assessed unique trajectories by:
generating (<NUM>) an initial parameter probability distribution from the plurality of waypoints (<NUM>, <NUM>);
generating (<NUM>) a probabilistic set of trajectories of a predefined number based on the initial parameter probability distribution; and
selecting (<NUM>) the elite set of trajectories that include those trajectories with efficiency metrics within an upper range of the probabilistic set of trajectories;
identifying (<NUM>) mobile waypoints (<NUM>, <NUM>) in trajectories of the elite set of trajectories, wherein mobile waypoints are waypoints in which the course may be adjusted in the trajectory by one or more of heading, altitude, and speed;
performing (<NUM>) a global optimal path assessment, wherein positions of mobile waypoints (<NUM>, <NUM>) are adjusted within an associated trajectory to identify an optimal trajectory for the aircraft on the flightpath; and
providing the optimal trajectory to the aircraft to follow the flightpath according to the optimal trajectory.