Patent Description:
A number of different parameters can be used to determine a route of an aircraft when moving through an airspace. One parameter is the acoustic impact the flight will have on an area, particularly during take-off and landing when the flight is at a lower altitude. Upon approach and departure aircraft are subject to ever-increasing noise restrictions which can limit low altitude routes or routes into particular airports that are located in or in proximity to densely populated areas. Other parameters include but are not limited to the amount of time for the aircraft to traverse a route, the amount of fuel that an aircraft uses along the route, geographic features along the route (e.g., mountains), no-fly zones, man-made features (e.g., radio towers, buildings), and an overall cost for an aircraft to fly a route.

Calculating a route for an aircraft using a single parameter is a relatively straight-forward task. The route can be optimized to reduce the ground noise as well as noise at monitoring stations. However, calculating a route that takes multiple parameters into account is more difficult. A traditional solution method of solving all the variables can be increasingly computationally expensive. Existing optimizations have been done for routes for controlling noise at a subset of specific points but they have not taken into account the entire population density. Further, these optimizations have not taken into account additional parameters.

Thus, there remains a need for an optimization system for generating routes that meet multiple parameters.

<CIT> states, according to its abstract, a dynamic aircraft routing where a request for transport services that identifies a rider, an origin, and a destination is received from a client device. Eligibility of the request to be serviced by a vertical take-off and landing (VTOL) aircraft is determined based on the origin and the destination. A transportation system determines a first and a second hub for a leg of the transport request serviced by the VTOL aircraft and calculates a set of candidate routes from the first hub to the second hub. A provisioned route is selected from among the set of candidate routes based on network and environmental parameters and objectives including predetermined acceptable noise levels, weather, and the presence and planned routes of other VTOL aircrafts along each of the candidate routes.

<CIT> states, according to its abstract, presenting suggested routes based on local route ranking where, in some implementations, a computing device can proactively determine a destination and request traffic information for routes from a starting location to the destination. In some implementations, a computing device can identify some routes between a starting location and a destination as non-recommended routes and recommend other routes. In some implementations, a computing device can rank routes between a starting location and a destination based on automatically-determined user interest. In some implementations, a computing device can determine a user is familiar with a route and adjust the information presented to the user about the route accordingly.

According to the present disclosure, a computer-implemented method and a control unit as defined in the independent claims are provided. Further embodiments of the claimed invention are defined in the dependent claims. Although the claimed invention is only defined by the claims, the below embodiments, examples, and aspects are present for aiding in understanding the background and advantages of the claimed invention.

The method comprises selecting one of the routes from the route set for the aircraft to travel while flying through the airspace.

In another aspect, ranking the routes based on the one or more objectives and constraints comprises for each of the routes: calculating an expected acoustic impact of the route on a geographic area using a sound propagation module stored in memory circuitry; and ranking the route based on the expected acoustic impact of the route on a geographic area.

In another aspect, ranking the routes based on the one or more objectives and constraints comprises for each of the routes: calculating an expected fuel consumption of the aircraft traveling the route using an aircraft kinematic module stored in memory circuitry; and ranking the route based on the expected fuel consumption of the aircraft traveling the route.

In another aspect, the method comprises deleting one or more of the routes from the route set that violate one of the constraints.

Generating the route set comprises: creating parent routes that each extend through the airspace; assigning one or more waypoints to each of the parent routes; varying the parent routes at one or more of the waypoints and creating new child routes that extend through the airspace and that are different than the parent routes; and populating the route set with both the parent routes and the child routes.

In another aspect, varying the parent routes and creating the child routes comprises changing an aircraft control setting at one or more of the waypoints on the parent routes.

In another aspect, varying the parent routes and creating the child routes comprises changing a direction of the routes at one or more of the waypoints.

In another aspect, the method comprises creating a Pareto set from the routes and ranking the routes based on a graphed position of the routes relative to a leading edge of the Pareto set.

In another aspect, the method comprises ranking the routes based on the graphed position of the routes relative to a gap in the leading edge of the Pareto set.

One aspect is directed to a method of creating a route set that comprises a plurality of routes for an aircraft to travel through an airspace. The method comprises: populating a route set with routes that extend through the airspace with each of the routes being different; ranking the routes based on one or more objectives; deleting one or more routes from the route set that rank below a predetermined threshold based on the one or more objectives; and deleting one or more of the routes that violate a constraint applied to the airspace.

In another aspect, the method comprises: after deleting the one or more routes, determining that a convergence criteria has not been met; creating additional routes that extend through the airspace; supplementing the route set with the additional routes; and selecting one of the routes from the route set for the aircraft to travel while flying through the airspace.

In another aspect, ranking the routes based on the one or more objectives comprises ranking the routes based at least on an acoustic impact of the route on a geographic area.

In another aspect, the method comprises ranking the routes based on an expected fuel consumption of the aircraft traveling along the route.

In another aspect, deleting one or more of the routes that violate the constraint applied to the airspace comprises deleting the one or more routes that extend into a prohibited airspace.

One aspect is directed to a control unit to develop routes for an aircraft to travel through an airspace. The control unit comprises: interface circuitry configured to receive one or more objectives and one or more constraints for the routes; and processing circuitry configured to optimize the routes. The processing circuitry is configured to: generate a route set comprising routes that each extends through the airspace and each comprises a different flight path through the airspace; rank the routes based on the one or more objectives and constraints; delete from the route set one or more of the routes that rank below a predetermined threshold; after deleting the one or more routes, determine that the route set is incomplete and generate additional ones of the routes based on the one or more objectives and constraints; and supplement the route set with the additional ones of the routes that rank above the predetermined threshold.

In another aspect, the processing circuitry is further configured to select one of the routes of the route set for the aircraft to travel while flying through the airspace.

In another aspect, the processing circuitry is further configured to display the route set as a Pareto set on a display.

In another aspect, the processing circuitry is configured to rank the routes based on an acoustic impact of the routes on a geographic area.

In another aspect, the processing circuitry is configured to rank the routes based on fuel consumption of the aircraft traveling the routes.

The present application is directed to methods and systems for developing a family of routes for an aircraft to travel along when moving through an airspace. As illustrated in <FIG>, control unit <NUM> initially generates a first set of routes <NUM> that extend through the airspace <NUM>. The routes <NUM> each begin at the origination <NUM> and terminate at the destination <NUM>. The control unit <NUM> that develops the family of routes <NUM> can be located in one or more locations, including on the aircraft <NUM> and one or more land-based locations.

Each of the routes <NUM> includes one or more different change points that cause the route to differentiate from the other routes <NUM>. In one example, a change point includes a change in an aircraft setting, such as a flap setting or a throttle setting. In another example, a change point includes a course alteration such as change in altitude or bearing.

In the example of <FIG>, a first set of routes 20a-20f (referred to as a whole as routes <NUM>) are generated that extend between the origination <NUM> the destination <NUM>. Each of the routes 20a-20f is a potential flight path that can be traveled by the aircraft <NUM> while traveling through the airspace <NUM> between the origination <NUM> and destination <NUM>. The number of routes <NUM> that are initially generated can vary. <FIG> illustrates an example with six routes 20a-20f. <FIG> illustrates an example with a greater number of routes <NUM>. The families can be arranged in various configurations, including a non-symmetrical configuration of routes <NUM> as illustrated in <FIG> or a symmetrical arrangement as illustrated in <FIG>.

In one example, the routes <NUM> are randomly created and provide initial solutions that cover the airspace <NUM> between the origination <NUM> and destination <NUM>. Each route <NUM> is considered a reasonable option for the aircraft <NUM> to travel through the airspace <NUM>.

Once the first routes <NUM> are created, additional child routes <NUM> are created as variations of the original parent route. One method of creating child routes <NUM> is through simple mutation as illustrated in <FIG>. For simple mutation, the parent route 20a is copied into a child route 20b and random changes are made. The control unit <NUM> randomly selects one or more waypoints <NUM> and randomly shifts their location. In the example of <FIG>, waypoint 21a is shifted away from the parent route 20a to new child waypoint 21b. Waypoint 21c is shifted away from parent route 20a to child waypoint 21d. The child route 20b is then formed by one or more sections that overlap with the parent route 20a (e.g., section <NUM>-<NUM>, section 21y-<NUM>) as well as one or more non-overlapping sections (e.g., section 21x-21y). The mean size of the shift of the waypoints <NUM> between the parent route 20a and child route 20b can vary as the algorithm progresses. Initially, the shifts can be large in an attempt to explore the airspace <NUM>. The size of the shift is eventually reduced in an effort to refine the child routes 20b. In one example, each of the child waypoints <NUM> is shifted an equal distance away from the corresponding parent waypoint <NUM>. In another example, different child waypoints <NUM> shift different amounts.

In one example, the waypoints <NUM> are randomly selected along the length of the parent and child routes 20a, 20b. In another example, the waypoints <NUM> coincide with a change point along the route <NUM>.

Another variation for generating a child route 20b is referred to as path mutation. In path mutation, a random waypoint <NUM> along the parent route 20a is selected where the child route 20b diverges. Another waypoint <NUM> is randomly selected for where the child route 20b merges back to the parent route 20a. In the example of <FIG>, the origination point <NUM> is the initial waypoint 21a where the child route 20b diverges from the parent route 20a, and waypoint 21b is where the child route 20b merges back with the parent route 20a. Another waypoint <NUM> along the child route <NUM> is randomly selected from the subset of waypoints <NUM> between the diverge and the merge. This waypoint <NUM> will have the maximum offset. In the example of <FIG>, waypoint 21c is the maximum offset that the child route 20b diverges from the parent route 20a. The extent of the offset can be randomly generated or can be based on a mathematical relationship with one or more other waypoints <NUM>. In the path mutation, an offset is applied in the same direction to all the other waypoints <NUM> along the child route 20b. The magnitude of the offset ramps up between the diverge and max offset waypoints. Then the magnitude ramps back down and the child route 20b merges back to the parent route 20a. This operation produces smoother transitions and speeds convergence.

Another example of creating child routes <NUM> combines multiple parent routes <NUM>. The control unit <NUM> randomly picks a waypoint <NUM> to diverge from one parent route <NUM> and randomly selects another waypoint <NUM> to merge into a second parent route <NUM>. The child route <NUM> is formed using sections of both parent routes <NUM> and the new intermediate section that spans between the two parent routes <NUM>. <FIG> illustrate an example with a pair of parent routes 20a, 20b. Route 20a includes waypoint 21a and route 20b includes waypoint 21b. The child route 20c as illustrated in <FIG> includes a first section <NUM> that corresponds to the beginning of parent route 20a from the origination <NUM> to waypoint 21a, and a second section <NUM> that corresponds to parent route 20b from waypoint 21b to the destination <NUM>. The child route 20c also includes a new section <NUM> that extends between waypoints 21a and 21b.

Another example of is a merge combination as illustrated in <FIG>. Parent routes 20a, 20b each extend between an origination <NUM> and a destination <NUM> and each include waypoints <NUM> along their lengths (i.e., waypoints 21a, 21a', 21b, 21b', 21c, 21c'). The child route 20c includes a first section <NUM> that corresponds to the parent route 20a and a second section <NUM>. The second section <NUM> smoothly transitions between the waypoints 21a, 21a', 21b, 21b', 21c, 21c' of the parent routes 20a, 20b.

In one example, the routes <NUM> consistent of a series of discrete sections that extend directly between the waypoints <NUM>. In another example, the control unit <NUM> converts the discrete sections and waypoints <NUM> into a path that can be flown by the aircraft <NUM>. In one example, the control unit <NUM> uses a kinematic model to calculate aspects of the route <NUM>, such as turns, climbs, and descents. The kinematic model also accounts for performance characteristics of the aircraft <NUM>, atmospheric conditions, etc. when calculating the route <NUM>.

Once the routes <NUM> are created, the control unit <NUM> evaluates the routes <NUM> based on one or more constraints and objectives. Constraints are aspects that should be met for the route to be a feasible option for traveling through the airspace <NUM>. Examples of constraints include but are not limited to geographic obstacles such as mountains, man-made obstacles such as building and towers, altitude requirements, and no-fly zones such as established at military installations and densely-populated areas. In one example, the route <NUM> is removed from the set of routes <NUM> if a constraint is violated. For example, a route <NUM> that extends through a mountain is eliminated. In another example, the route <NUM> remains in the set of routes <NUM> if a constraint is violated (e.g., a route <NUM> that moves through a no-fly zone based on population density) for further evaluation. For these routes <NUM>, the evaluation includes assigning a value to each constraint. If a route <NUM> violates a constraint, a measure of an extent of violation is calculated. For example, a route <NUM> that narrowly enters a no-fly zone has a small constraint value while a route that travels through a center of a no-fly zone has a large constraint value. Routes <NUM> with a constraint value above a predetermined value are eliminated from the set. Routes <NUM> with a constraint value below a predetermined value are evaluated to determine if the constraint violation can be removed and the route <NUM> can remain in the set. For example, the route <NUM> that barely enters a no-fly zone can be altered to prevent this violation and remain in the set.

The control unit <NUM> also evaluates the routes <NUM> based on one or more objectives. Objectives are aspects of a flight that are to be optimized. Various objectives can be evaluated, including but not limited to an acoustic impact on a geographic area, fuel consumption, travel time, and flight distance.

For acoustic impact, the amount of noise produced by the aircraft for a geographic area is driven by the aircraft state, such as but not limited to thrust, flap settings, and landing gear position. Acoustic impact is further driven by the altitude of the aircraft <NUM>. These aspects are illustrated in <FIG> that shows a propagation pattern <NUM> of the acoustic impact of an aircraft <NUM> as it moves above a geographic area <NUM>. The acoustic impact objective can be evaluated for one or more points along a route <NUM>, or is integrated along the route <NUM> to get a total acoustic impact of the route <NUM>.

In one example, calculating the acoustic impact is computationally intensive for the control unit <NUM>. To save time and processing capacity, a 3D grid <NUM> is constructed around an airspace above a geographic area <NUM> as illustrated in <FIG>. At various points on the grid <NUM>, the acoustic impact is calculated for a given aircraft state and saved by the control unit <NUM>. These saved calculations can then be used to determine the acoustic impact for a particular route <NUM>. These pre-calculations save time and computational capacity during the optimization. In one example, the system pre-calculates a 3D grid for the geographic area <NUM> around an airport.

Certain aspects of a route <NUM> can be evaluated as either a constraint or simply a factor that effects one or more objectives. For example, altitude of the aircraft <NUM> can be a constraint. If a predetermined altitude cannot be reached at one or more of the waypoints <NUM>, the route <NUM> is considered a constraint violation. The constraint can be used to eliminate the route <NUM> from the set or can be given a value and attempted to be satisfied to remain in the set. In another example, the altitude is not a constraint but rather a factor that affects an objective. In this example, the kinematic model attempts to achieve the desired altitudes at the waypoints <NUM>. If the altitude cannot be reached at a particular waypoint <NUM>, the route <NUM> provides for the aircraft <NUM> to pass through the waypoint <NUM> and continue to ascend until reaching the desired altitude. The lack of altitude at a waypoint <NUM> is not a constraint violation but may negatively affective a score of the route <NUM> for one or more objectives. For example, a route <NUM> with a lower altitude can have a higher acoustic impact on a geographic area.

The evaluated routes <NUM> are then ranked based on dominance in one or more objectives and constraints. This includes how much a route <NUM> dominates other routes <NUM> in the set. In one example, the routes <NUM> are ranked based on acoustic impact and fuel consumption objectives. <FIG> illustrates a plot that ranks routes <NUM> based acoustic impact which is measured along the x-axis and on the fuel consumption which is measured along the y-axis. In this plot, two specific routes 20a, 20b are noted, as well as an area <NUM> that generally discloses the plot locations of multiple other routes <NUM> that are not specifically illustrated. The first route 20a dominates the other routes <NUM> that fall within the area <NUM>, and specifically route 20b. In this example, the first route 20a is a better solution in both objectives and dominates the second route 20b and other routes <NUM> in area <NUM>.

<FIG> illustrates an example in which the first route 20a dominates for acoustic impact but route 20b dominates for fuel consumption. Neither route fully dominates the other and the dominance ranking is a tie.

<FIG> illustrates one method of evaluating the dominance between a first route 20A and a second route 20B. The evaluation takes constraints and objectives into account. The evaluation determines whether just one of the routes 20A, 20B violate one or more of the constraints (block <NUM>). If this situation occurs, the route <NUM> that does not violate a constraint dominates the other route <NUM> (block <NUM>).

The evaluation continues to determine whether both routes 20A, 20B violate one or more of the constraints (block <NUM>). If both routes 20A, 20B violate the constraints, the dominance is based on the extent of violation (block <NUM>). For each route <NUM> a measurement is taken on how much the constraint is violated. The multiple constraints are compared to minimize the size of the violations.

If both routes 20A, 20B do not violate the one or more constraints the dominance is based on the evaluation of the one or more objectives as explained above as illustrated in the examples of <FIG>(block <NUM>).

In another example, routes <NUM> that violate one or more constraints are eliminated from the route set. The remaining routes <NUM> are ranked based on their dominance.

After the routes <NUM> are ranked based on dominance, specific routes <NUM> are selected to remain in the population set based upon their dominance score. The selection process favors routes <NUM> that are dominated by fewer other solutions. For example using the example of <FIG>, routes 20a and 20b may be selected to remain in the population set based on their dominance scores. Routes <NUM> that have scores that fall within area <NUM> are dominated and therefore are eliminated from the set. In one example, routes <NUM> that fall within areas <NUM>, <NUM> remain in the set with other routes <NUM> being eliminated. In another example, routes <NUM> that fall along lines 96a, 96b, 97a, 97b remain and the remainder of the routes <NUM> in areas <NUM>, <NUM> are eliminated. In one example, the selected routes form a Pareto set.

<FIG> illustrates a plot of multiple routes <NUM> that are graphed according to scores for acoustic impact and distance. As illustrated, a first sub-set of the routes 20a are non-dominated and remain in the set. This sub-set of routes 20a is graphed along the leading edge of the data set. A second sub-set of the routes 20b are dominated. These dominated routes 20b are those that do not provide the best option for meeting the one or more objectives and are eliminated from the route set. The number of routes <NUM> that are generated, evaluated, and selected can vary.

As illustrated in <FIG>, gaps <NUM> can occur within the selected set of routes <NUM>. These gaps <NUM> occur due to the lack of generated routes <NUM> that provide a solution for one or more of the objectives. The selection criteria for which routes <NUM> are selected to remain in the set includes those routes <NUM> that dominate the other routes <NUM> in one or more objectives. As illustrated in the plot of <FIG>, the routes <NUM> can be displayed as a Pareto set. These selected routes 20a form an outer edge of the total graphed set of routes <NUM>.

Another selection criteria for which routes <NUM> are selected to remain in the set includes the proximity of a route <NUM> to a gap <NUM> in the selected set. A route <NUM> that falls within an existing gap <NUM> has a higher score and is more likely to be selected than a route <NUM> that is farther away from an existing gap <NUM>. In one example, a score is calculated for each of the routes <NUM> based on their dominance. The score can be further affected based on the location of the score relative to the one or more gaps <NUM>. In one example, a weighting factor is applied to the scores that weighs the position relative to one or more gaps <NUM>.

The control unit <NUM> continues to process routes <NUM> and add to the selected set until a converge criteria is met. Prior to the convergence, the processing circuitry <NUM> continues to generate, rank, and select new routes <NUM> that are included in the set. Once a convergence is obtained, the process ends and the set is used to select a route <NUM> that is flown by the aircraft <NUM> through the airspace <NUM>.

Various converge criteria can be used to determine whether additional routes <NUM> are needed to stock the set. In one example, the control unit <NUM> monitors the number of generations of new routes <NUM> without any new routes <NUM> added to the selected set. The control unit stops processing when the number moves above a predetermined threshold. In another example, the control unit <NUM> processes a predetermined number of generations of routes <NUM> and then stops.

<FIG> and <FIG> illustrate an example of optimizing routes <NUM> through an airspace <NUM>. As illustrated in <FIG>, a family of routes <NUM> are generated that each extend through the airspace <NUM> that extends between an origination <NUM> which is an airport to a destination <NUM>. In this example, the origination is an airport where the flight begins and the destination <NUM> is a point along the flight path that is away from the airport and beyond a populated area. In this example, the control unit <NUM> is optimizing two objectives: acoustic impact over the populated area; and the length of the route <NUM>. As illustrated in <FIG>, the two different objectives for the generated routes <NUM> play against each other. The shorter paths in closer proximity to the airport <NUM> immediately fly over densely populated areas. The longer paths fly along a nearby river to gain altitude and then turn toward the destination <NUM> after moving over a more rural area.

<FIG> illustrates the routes <NUM> displayed in a Pareto plot with the distance of the route <NUM> measured along a first axis and an acoustic impact measured along a second axis. Each route <NUM> provides a data point on the plot. As illustrated in the plot, most neighboring solutions in the plot are identical except for a small difference at a few waypoints along the routes <NUM>. The Pareto plot further illustrates discontinuity or inflection points <NUM> where the analysis indicates a contrast between meeting the differing objectives. In one example, the inflection points <NUM> indicate a substantial change in the route <NUM>. For example, the route <NUM> could jump from one side of a densely populated area to the other side of the area.

<FIG> illustrate one method of developing routes for an aircraft <NUM> to move through an airspace <NUM>. The method includes generating a first set of routes <NUM> that extend through the airspace <NUM> (block <NUM>). The routes <NUM> extend between an origination <NUM> and a destination <NUM>. The routes <NUM> are ranked based on dominance (block <NUM>). The dominance is calculated for each route <NUM> based on one or more objectives and/or constraints. The routes are maintained in a route set (block <NUM>). In one example, dominated routes <NUM> that fall below a predetermined threshold are eliminated from the set with the dominant routes <NUM> that are above the predetermined threshold remaining in the set.

Additional routes <NUM> are generated based on variations of the first set of routes <NUM> (block <NUM>). The additional routes <NUM> can be ranked and dominant routes <NUM> that are above the predetermined threshold are added to the set (block <NUM>). In one example, a dominance score is calculated for each route <NUM>. Routes <NUM> with a dominance score above a predetermined amount remain in the set with those with a lower score being eliminated.

In one example, one of the routes <NUM> is then selected from the maintained set for the aircraft <NUM> to travel through the airspace <NUM>.

In one example, after the routes <NUM> are generated, the routes <NUM> are evaluated to determine if they violate a constraint. The routes <NUM> that violate a constraint are eliminated from the set prior to ranking the routes.

<FIG> illustrates another method of developing routes <NUM> for an aircraft <NUM> to travel through an airspace <NUM>. The method includes generating an initial set of routes <NUM> that extend through the airspace <NUM> (block <NUM>). In one example, the initial routes <NUM> are referred to as parent routes. Additional routes <NUM> are then generated (block <NUM>). In one example, the additional routes <NUM> are referred to as child routes because these additional routes <NUM> are based on variations of the parent routes <NUM>.

The routes <NUM> are then evaluated based on the one or more objectives and constraints and are ranked according to the dominance scores (block <NUM>). The method includes selecting the routes <NUM> that are above a predetermined threshold and considered the dominant routes <NUM> (block <NUM>). In one example, this includes selecting the routes <NUM> that have the highest dominance scores (block <NUM>). The set is updated by keeping the dominant routes <NUM> and eliminating the dominated routes <NUM> (block <NUM>).

The method continues until a convergence criteria is met (block <NUM>). If the criteria is met, the method ends (block <NUM>). If the criteria is not met, the process continues by generating additional routes <NUM>.

In one example, once the route set is complete, the set is then used to determine a flight path for an aircraft <NUM> that is scheduled to fly through the airspace <NUM>.

A set of routes <NUM> can be developed for various reasons. One aspect includes developing a route set for strategic planning. For example, the set is developed to design an airspace <NUM> around an airport. The route set can apply one or more constraints and objectives to develop the routes <NUM> that can be utilized within the airspace <NUM>. Another aspect includes tactical applications. The route set can be used to plan arrival and departures for a period of time for an airport. In one example, the acoustic impact of flights can be spread around throughout a day. Another tactical application is use as a flight deck tool to optimize an approach subject to arrival procedures.

The strategic optimization provides for long-term planning, such as when designing an airspace around an airport while the tactical optimization provides for short-term planning, such as day-to-day operation of an airport or individual aircraft. The objectives and constraints can be different depending upon the type of planning that is being used by the system. For example, for a tactical optimization, constraints can include current weather conditions along a route <NUM> such as a thunderstorm within an area, location of a weather front with high winds, and other aircraft traffic in proximity to the airspace <NUM> to optimize the selected route <NUM>. Strategic optimization may consider expected growth of a community that is nearby an airport, terrain such as mountains, and long-term weather patterns (e.g., predominant wind directions).

<FIG> illustrates an control unit <NUM> for implementing the route optimization. The control unit <NUM> can be located at various locations, including but not limited to in the aircraft <NUM>, at the airport at one of the origination <NUM> and destination <NUM>, and a central control such as a Federal Aviation Administration facility which is away from the routes <NUM>.

The control unit <NUM> includes one or more processing circuitry (illustrated as processing circuitry <NUM>) that may include one or more microprocessors, microcontrollers, Application Specific Integrated Circuits (ASICs), or the like, configured with appropriate software and/or firmware. A computer readable storage medium (shown as memory circuitry <NUM>) stores data and computer readable program code that configures the processing circuitry <NUM> to implement the techniques described above. Memory circuitry <NUM> is a non-transitory computer readable medium, and may include various memory devices such as random access memory, read-only memory, and flash memory.

One or more software modules <NUM> are stored in the memory circuitry <NUM> for performing various functions of the optimization. In one example, the software module <NUM> includes an aircraft kinematic module <NUM> that functions to convert the discrete sections of the routes <NUM> into a continuous path that is able to be flown by the aircraft <NUM>. In one example, the kinematic module <NUM> determines fuel usage for each of the routes <NUM> based on various flight control settings and route settings. A sound propagation module <NUM> provides for developing and/or analyzing the acoustic impact of various settings of the routes <NUM>.

One or more databases <NUM> stores information needed for the optimization process. The one or more databases <NUM> are stored in a non-transitory computer readable storage medium (e.g., an electronic, magnetic, optical, electromagnetic, or semiconductor system-based storage device). The one or more databases <NUM> can be local or remote relative to the optimization system <NUM>. Examples of different databases <NUM> include but are not limited to a weather database, population density database, geographic terrain database, geographic obstacles database, aircraft traffic database, arrival and departure procedures database, controlled airspace database, and an aircraft signature vs state database.

Communication circuitry <NUM> comprises an interface circuit for communicating with remote devices. The communications circuitry <NUM> can provide connection to both wired and wireless networks. In one example, the communications circuitry <NUM> includes an interface circuitry for connecting to a wired network or a wireless Wi-Fi or LAN (WLAN).

User interface <NUM> includes an input device <NUM> and display <NUM>. The input device <NUM> and display <NUM> enables the user to interact with the optimizer system <NUM>. Input device <NUM> may, for example, comprise a keypad, mouse, other pointing device, or touchpad. The input device or devices <NUM> allow the user to input commands and data during the operation of the optimization system <NUM>. Display <NUM> allows the user to see graphical user interfaces and information that is output by the computer programs. In some embodiments, the display <NUM> may comprise a touch screen display that also functions as a user input device <NUM>. In one example, the display <NUM> is configured to display the route sets as a Pareto plot of data points.

Claim 1:
A computer-implemented method of creating a route set for an aircraft (<NUM>) to travel through an airspace (<NUM>), the method comprising:
generating the route set comprising routes (<NUM>) that each extend through the airspace (<NUM>) and each comprises a different flight path through the airspace (<NUM>);
ranking the routes (<NUM>) based on one or more objectives and constraints;
deleting from the route set one or more of the routes (<NUM>) that rank below a predetermined threshold;
determining that the route set is incomplete after deleting the one or more routes (<NUM>) and generating additional routes (<NUM>) based on the one or more objectives and constraints;
supplementing the route set with the additional routes (<NUM>) that rank above the predetermined threshold; and
selecting one of the routes (<NUM>) from the route set for the aircraft (<NUM>) to travel while flying through the airspace (<NUM>),
wherein generating the route set comprises:
creating parent routes (20a) that each extend through the airspace (<NUM>);
assigning one or more waypoints (<NUM>) to each of the parent routes (20a);
varying the parent routes (20a) at one or more of the waypoints (<NUM>) to create new child routes (20b) that extend through the airspace (<NUM>) and that are different than the parent routes (20a); and
populating the route set with both the parent routes (20a) and the child routes (20b) as routes (<NUM>) of the route set.