Method and device for planning flight trajectories

11551561 · 2023-01-10

Assignee

Inventors

Cpc classification

International classification

Abstract

A method for planning flight trajectories for at least two aircraft aiming to subsequently approach a predefined reference point, in particular a predefined destination, wherein each aircraft travels along a flight route according to an individual flight trajectory, such that a first aircraft travels along a first flight route according to a first flight trajectory and a second aircraft travels along a second flight route according to a second flight trajectory, wherein at least the second flight trajectory is set or adjusted such that at least one predetermined minimum separation between the two aircraft approaching the predefined destination according to their respective flight trajectories is ensured and the predetermined minimum separation is ensured throughout the whole flight trajectories by setting or adjusting an adjustable trajectory parameter (θ) of the first or second flight trajectory.

Claims

1. A method comprising: planning flight trajectories for first and second aircraft aiming to subsequently approach a predefined reference point, wherein each aircraft travels along a flight route according to an individual flight trajectory, such that the first aircraft travels along a first flight route according to a first flight trajectory and the second aircraft travels along a second flight route according to a second flight trajectory, the planning comprising: setting or adjusting at least the second flight trajectory such that at least one predetermined minimum separation between the first and second aircraft approaching the predefined reference point according to their respective flight trajectories is ensured, setting and adjusting an adjustable trajectory parameter of the first flight trajectory or the second flight trajectory such that the predetermined minimum separation is ensured throughout the whole flight trajectories, determining an initial minimal value for the adjustable trajectory parameter, determining a current pair of trajectory segments comprising a first segment of the first flight trajectory and a first segment of the second flight trajectory, wherein a following node of the first segment of the first flight trajectory defines a destination at a runway and the first segment of the second flight trajectory contains the point separated by the predetermined minimum separation from the runway, applying at least one determination function to the current pair of trajectory segments for determining or changing the minimal value of the adjustable trajectory parameter of the second flight trajectory, determining a new current pair of trajectory segments based on the determined minimal value of the adjustable trajectory parameter, and repeating the applying the at least one determination function and the determining the new current pair of trajectory segments until a minimal value for the adjustable trajectory parameter of the second flight trajectory is found such that the predetermined minimum separation is ensured for the complete second flight trajectory with respect to the first flight trajectory, wherein the adjustable trajectory parameter is an arrival time difference, wherein determining the new current pair of trajectory segments comprises exchanging for each of the first flight trajectory and the second flight trajectory the current trajectory segment by a new current trajectory segment, wherein the current trajectory segment and the new current pair of trajectory segments are connected by a common node, wherein the new current pair of trajectory segments overlap in a time domain, and wherein the first and the second flight trajectories are exchanged both at the same time only when the common node connecting the current and the new current pair of trajectory segments have a same node time for the first and the second flight trajectories, wherein applying the determination function to the current pair of trajectory segments is restricted to an overlapping area, wherein the overlapping area is defined by a time interval that covers both trajectory segments of the current pair of trajectories, and wherein determining the initial minimal value includes setting the adjustable trajectory parameter of the second flight trajectory as a starting point such that the predetermined minimum separation between the first and second flight trajectories occurs at the point in time when the aircraft according to the first trajectory lands, and wherein the initial minimum value of the adjustable trajectory parameter is calculated as a flight duration of the second aircraft for a final part of its flight trajectory of a length equal to the predetermined minimum separation before reaching the predefined reference point of a runway.

2. The method according to claim 1, wherein: the first flight trajectory is associated to a preceding aircraft approaching the reference point before a following aircraft, the second flight trajectory is associated to the following aircraft reaching the reference point subsequently after the preceding aircraft, and at least part of the second flight trajectory is calculated or adjusted based on: the first flight trajectory, and the minimum separation such that the second flight trajectory ensures the minimum separation with respect to the first flight trajectory.

3. The method according to claim 1, wherein: each flight trajectory comprises at least one of: a plurality of nodes, wherein each node is defined at least by: a node location defining the location of the node; a node time defining a point in time for the respective aircraft to reach the node location; and a flight speed of the respective aircraft at the node; and at least one trajectory segment connecting a preceding node and a following node; and each flight trajectory comprises a plurality of trajectory segments.

4. The method according to claim 1 wherein: a position of the aircraft at any point in time within a trajectory segment between two nodes is modelled by a position function; the time of the aircraft at any location within the trajectory segment between two nodes is modelled by a time function, and the position function or the time function, respectively, is given by a polynomial function, and/or comprises, or is based on, a predefined constant acceleration assuming a constant acceleration of the aircraft travelling along the respective trajectory segment.

5. The method according to claim 1, wherein: a last node of each flight trajectory defines a destination at a runway, and/or a first node of each flight trajectory defines a starting point at a runway, and at least the first flight trajectory and the second flight trajectory use the same route but at different times and with individual flight speeds.

6. The method according to claim 1, wherein for each flight trajectory and each trajectory segment, a distance over ground is defined with respect to a predefined reference location by the following equation depending on time t:
D(t)=D.sub.n(t−t.sub.n)=1/2a.sub.n(t−t.sub.n).sup.2+v.sub.n(t−t.sub.n)+d.sub.n, wherein: D.sub.n defines for trajectory segment n a distance D over ground to the predefined reference location, d.sub.n defines a distance of the following node of the trajectory segment n to the predefined reference location, a.sub.n defines a constant acceleration of the aircraft throughout the trajectory segment n, of the aircraft, v.sub.n defines the speed of the aircraft at the following node of the trajectory segment n, and t.sub.n defines the point in time at which the aircraft reaches the following node of the trajectory segment n, wherein d.sub.n, a.sub.n, v.sub.n, and t.sub.n, each forms a characteristic parameter of the trajectory segment.

7. The method according to claim 1, wherein the setting or adjusting of at least the second flight trajectory uses the at least one determination function for determining the adjustable trajectory parameter of the second flight trajectory, and the at least one determination function is calculated based on: a separation function defining a separation between the first and second aircraft travelling according to the first and the second flight trajectory, at least for part of their travel, or at least for a part of the first and a part of the second flight trajectory: the separation function depends on the first and second flight trajectories; and the separation function depends on the adjustable trajectory parameter of the second flight trajectory, wherein: the at least one determination function is calculated by: determining a point in time of a local minimum of the separation function as an analytical expression and wherein, the separation function is dependent on time; the point in time of the minimum of the separation function is inserted into the separation function such that an analytical expression for the separation function at the minimum results which is independent of time; and the resulting separation function at the minimum is set equal to the predetermined minimum separation and resolved for the adjustable trajectory parameter, wherein: the separation function S(t,θ) is defined as:
S(t,θ)=D.sub.A(t)D.sub.B(t,θ), with: t as the time, θ defining as the adjustable trajectory parameter a time difference between the points of time for the first and the second aircraft to reach the predefined reference point, D.sub.A(t) defining an analytic expression for a distance of the first aircraft to the predefined reference point being dependent on time, and not being dependent on the time difference between the first and the second aircraft at the predefined reference point, and D.sub.B (t,θ) defining an analytic expression for a distance of the second aircraft to the predefined reference point being dependent on time and being dependent on the time difference between the first and the second aircraft at the predefined reference point.

8. The method according to claim 7, wherein: the separation function is determined as an analytic expression, the separation function is given: as the difference of the distance function D.sub.A(t) of the first flight trajectory and the distance function D.sub.B (t,θ) of the second flight trajectory, or as the difference of a trajectory segment of the first flight trajectory and a trajectory segment of the second flight trajectory, and wherein: the separation function is differentiated with respect to time in order to find a or the minimum, the differentiated separation function is used to find an analytical expression for the point in time at which the separation function has its minimum, the analytical expression of time is inserted into the separation function and the separation function is set equal to the predetermined minimum separation in order to find a function depending on the predetermined minimum separation and being independent of time and resolving it in order to receive the at least one determination function, and the at least one determination function is dependent on the predetermined minimum separation.

9. The method according to claim 1, wherein: a first distance function and a second distance function are each defined as analytical expressions for each trajectory segment of the first and second flight trajectory, respectively, a separation function is defined as an analytical expression for each time interval where segments of the first and second flight trajectories overlap, a point in time of the minimum of the separation function is determined as at least one analytical expression for each overlapping time interval, wherein the analytical expression depends on the adjustable trajectory parameter of the second flight trajectory, the method comprising determining the at least one determination function as an analytical expression based on each analytical expression of the point in time, the method comprising determining the adjustable trajectory parameter of the second flight trajectory using the at least one determination function such that the value of the minimum separation of the corresponding overlapping time interval will never be below the predetermined minimum separation, and wherein the separation function S(t, 0) is defined as:
S(t,θ)=D.sub.A(t)D.sub.B(t,θ), with: t as the time, θ defining the adjustable trajectory parameter a time difference between the points of time for the first and the second aircraft to reach the predefined reference point, D.sub.A(t) defining the first distance function as an analytic expression for the distance of the first aircraft to the predefined reference point being dependent on time, and not being dependent on the distance (θ) between the first and the second aircraft at the predefined reference point, and D.sub.B (t,θ) defining the second distance function as an analytic expression for the distance of the second aircraft to the predefined reference point being dependent on time and being dependent on the distance between the first and the second aircraft at the predefined reference point.

10. The method according to claim 1, wherein: the at least one determination function comprises at least one related characteristic parameter each corresponding to a characteristic parameter of the two current trajectory segments, and successively applying the at least one determination function by setting the value of each related characteristic parameter of the at least one determination function to the value of the corresponding characteristic parameter of the respective trajectory segment in order to determine a value of the adjustable trajectory parameter of the second flight trajectory.

11. The method according to claim 1, wherein: the first flight trajectory is given as a fixed trajectory, the second flight trajectory is set or adjusted such that the at least one predetermined minimum separation between the first and second aircraft is ensured, and the adjustable trajectory parameter of the second flight trajectory is adjusted such that the second flight trajectory is shifted with respect to the first flight trajectory in order to thereby ensure the predetermined minimum separation between the first and second flight trajectories.

12. A computer-readable medium having computer-executable instructions stored thereon that, in response to execution by one or more processors of a computing device, cause the computing device to perform the method according to claim 1.

Description

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

(1) The Invention is now explained in more detail according to at least one aspect as an example based on the accompanying figures.

(2) FIG. 1 shows an illustrative diagram of two trajectories of landing flights, but only the flying-distance D in relation to the flying time t.

(3) FIG. 2 illustrates three segments of a flight trajectory in an illustrative diagram.

(4) FIG. 3 shows four examples of two flight trajectories each of different interrelation as illustrative diagrams.

(5) FIG. 4 shows a flow chart for calculating determination functions.

(6) FIG. 5 shows a flow chart having an iteration for finding a minimal value for the at least one adjustable trajectory parameter.

(7) FIG. 6 shows a flow chart for determining the new minimum arrival time difference at the parameter calculation block of FIG. 5.

DETAILED DESCRIPTION

(8) FIG. 1 shows two trajectories of landing flights, but only the flying-distance D in relation to the flying-time t. Both flights decelerate and, thus, the lines are curved upward. They both end at the same point P, but at times separated by θ.

(9) The task is to determine θ. The separation S has to be greater or equal to the given a at all points in time. As an example, three separation values S.sub.1, S.sub.2, and S.sub.3 are shown.

(10) FIG. 1 also illustrates relevant parts of the trajectories. The first point in time, where the minimum separation σ has to be ensured, is when the first flight A reaches the point O, where both flights start to use the same route. At that moment, flight B has not yet reached the start of the common route O, but already has to be separated, i.e., S.sub.1≥σ. After flight A lands, separations and trajectories are not used any longer to ensure safe operations. Other measures are more appropriate. Therefore, the moment flight A lands is the last point in time, where the minimum separation has to be ensured, i.e., S.sub.3≥σ. In the FIG. 1, S.sub.2 is just an example of a separation at an arbitrary point in time within the relevant time interval. In the illustration it happens to be smaller than S.sub.1 and S.sub.3.

(11) According to one aspect, trajectories are given as a list of nodes defining points in space and time each with additional information about the predicted state of the flight at that point, e.g., the speed. These nodes are not shown in FIG. 1 but further explained with respect to FIG. 2. On the final part of the approach, these nodes are defined by the local arrival procedures which result in a set of flight maneuvers like, e.g., change of altitude (climb or descend) or change of speed (acceleration or deceleration).

(12) These trajectory nodes split a trajectory into segments. During each segment, the flight is assumed to behave in a specific way, such as: level flight with constant speed; change of altitude with constant air speed; or change of speed at a constant altitude.

(13) The trajectory nodes define the start and end conditions for these segments, which are explained in FIG. 2 below.

(14) For the purpose of the given task, the relevant information in a trajectory is the traversed distance over ground D(t) as a function of the time t (See FIG. 1). The full 3D position is not needed. It suffices to consider the lengths and flying times of the segments and the ground speeds at the trajectory nodes. These are direct results of a typical trajectory predictor.

(15) If a trajectory predictor generated regular sampling points, e.g., every 10 seconds, a linear interpolation between the points would be sufficient assuming constant speed between points. Such trajectories would comprise of a large amount of points. Ensuring separation with such trajectories would mean transferring, storing, and iterating over them, therefore impairing performance of the system. It is preferred to handle trajectories containing points only where flight behavior changes. Therefore, we cannot assume constant speed between points. Such points are described as nodes.

(16) Further explanations are given based on FIG. 2. According to at least one aspect of the invention, it is assumed that the acceleration within each segment is constant. Based on this assumption, a model is used in which the distance over ground D(t) for each segment is expressed as a quadratic polynomial and D(t) is a piecewise-defined function.

(17) This model enables us to perform analytic calculations with segments of trajectories. Specifically, it is possible to calculate in closed form the time separation θ (at the end of both trajectories) required by a segment of the trajectory A and a segment of the trajectory B such that the minimum separation σ is obeyed for all times where both segments are defined.

(18) For this, the following notation is used to describe one trajectory. We use the index n (1≤n≤N, where N is the number of segments) to denote the segment which defines the trajectory for all t with t.sub.n-1≤t≤t.sub.n, where t.sub.n-1 is the time when the flight will pass the start node of the segment and t.sub.n the corresponding time for the end node. The end node is thus the end node for the particular segment and can also be denoted as the following node. Now we can express the flying distance for any time t in that interval as
D(t)=D.sub.n(t−t.sub.n)=1/2a.sub.n(t−t.sub.n).sup.2+v.sub.n(t−t.sub.n)+d.sub.n  (1)
where a.sub.n is the acceleration throughout the segment n, v.sub.n the ground speed at the end node (i.e., when t=t.sub.n), and d.sub.n the flying distance at the end node. The function D(t) is defined piece-wise as D(t)=D.sub.n(t−t.sub.n) where t.sub.n-1<t≤t.sub.n for each n.

(19) FIG. 2 illustrates three segments. The middle one with index n−1 is a segment of constant speed, i.e., a.sub.n-1=θ and v.sub.n-1=v.sub.n-2.

(20) We require continuity, i.e., d.sub.n-1=D.sub.n(t.sub.n-1−t.sub.n), but no differentiability of the complete function D(t). Also, the speeds have to be positive at every point in time.

(21) Let us choose the function D(t) to be zero when the flight arrives at the point P (the runway). This can be achieved by shifting all the d.sub.n of one trajectory by a constant value. D(t) may then be interpreted as the negative distance to go (DTG) of the flight at the time t.

(22) It has to be noted, that even though this model corresponds to the laws of physics, this is still an approximation. In climb or descend, the Indicated Air Speed (IAS) is kept constant, which has a non-linear relationship with altitude and ground speed. The speeds v.sub.n are ground speeds.

(23) It is helpful to illuminate the variations appearing during the task of determining the time separation θ, by discussing four examples which are shown in FIG. 3. The required separation σ is represented by several horizontal black bars of the same lengths. This way it can be easily compared with the distance S of the flights.

(24) In example a), let the two flights A and B land with the same speed and altitude profile, i.e., at a given distance from the runway, both flights will have the same given ground speed. Also, both flights will only decelerate.

(25) At any point in time the second flight B will be further away from the runway and therefore be faster than the first flight A. From this it is immediately clear, that the distance S of the flights will always decrease with increasing time. Therefore, the moment of closest approach of flight B and flight A will be the time, when flight A lands, which is marked with σ in FIG. 3 which corresponds to S.sub.3 in FIG. 1.

(26) Note the optical illusion, the curve representing the trajectory of flight A seems to be steeper than that of flight B. This can be verified to be an illusion with a ruler by measuring the vertical distance of the lines at several points. They are equal.

(27) In example b), the two flights start with the same speed at point R. Let flight A use a landing speed, which is lower than that of flight B. It is immediately clear, that flight A will always be slower than flight B at the same point in time. The same reasoning as in example a) applies.

(28) In both examples, it is sufficient to ensure that flight B is at least the distance a from the runway, when flight A lands. Therefore, a planning tool shall use the time separation θ calculated as the flight duration of flight B for this last part of its approach of length σ.

(29) These examples might lead to the assumption that it is always sufficient to ensure the separation σ at the point in time when the first flight A lands and that the time separation θ may always be calculated by determining the flight duration of the second flight B for the last σ-length of its approach. On the other hand, FIG. 1 already suggested otherwise, there clearly is an earlier point in time where the two curves have a minimal horizontal distance namely S.sub.2.

(30) In example c), the two flights A and B have the same speed at point R. The first flight A does not reduce speed and lands with the same speed. However, the second flight B reduces speed starting at point R.

(31) The moment flight B starts decelerating, the distance between the two flights increases. Therefore, the minimum separation σ has to be ensured at the point in time when flight B reaches point R. The time separation θ may in this case be calculated as the flight duration of flight B from point R to point P reduced by the flight duration of flight A from a point which is the distance σ from point R to point P.

(32) The example c) shows that it is not sufficient to use flight durations of the second flight B. However, it might still suggest, that in all cases a fixed point on the route may be found, where the check has to be performed.

(33) This turns out to be wrong as example d) shows. As in example c), the flights A and B start with the same speed. Both flights reduce speed starting at point R.

(34) However, flight A reduces a little and flight B reduces a lot.

(35) When flight A arrives at point R, it will start reducing speed. Once flight B arrives at point R, flight A is slower than flight B. Flight B now starts reducing speed, but is still faster than flight A for a while. Therefore, the distance between the two flights will reduce further. Since flight B reduces its speed faster than flight A, both flights will at one point have equal speeds, unless flight A reaches point P first—which we assume not to be the case for this example. That moment in time where both have equal speeds will be the moment of closest approach of the two flights. The distance between flight A and flight B will increase afterwards, since flight B will gradually become slower than flight A.

(36) If flight A reaches the runway before the moment of equal speed, we can proceed as in example a) an b) for the calculation.

(37) The moment of equal speeds is highly dependent on the flight profiles of both flights and on the separation of the flights. Enlarging the separation will shorten the distance flight B has to slow down before flight A lands and it will decrease the speed of flight A when flight B passes point R and starts to reduce speed, thereby enlarging the speed difference flight B has to compensate.

(38) It directly follows from this last example that the time separation θ necessary to ensure the required minimum separation σ has to be calculated based on a point in time t.sub.min of closest approach, which may be anywhere in the common definition interval of both trajectories. The time t.sub.min depends not only on the flight profiles of the two flights, but also on the required and/or predetermined separation σ or —equivalently—the resulting time separation θ.

(39) Note, that there was no reference to segments defining the trajectories of flight A and B. If the points R and P are, respectively, the start and end node of a single segment of the trajectory of flight A as well as of a single segment of the trajectory of flight B, the examples still apply. Therefore, example d) shows that the point in time t.sub.min of closest approach may be a point not given by a start node or end node of a trajectory segment. Therefore, just checking at the start and end points is not sufficient. FIG. 4 basically illustrates how the determination function is found and how it is used. Therefore, FIG. 4 shows a general flow chart 400 beginning with a definition block 402. In the definition block 402 the first and second trajectories are defined and according to the illustrated aspect these are defined as distance functions for the first and the second flight trajectory and thus for the first and the second flight. For the first flight trajectory there is defined the distance function D.sub.A(t). For the second flight trajectory there is defined the distance function D.sub.B(t, θ). Accordingly, the first distance function D.sub.A does not depend on the arrival time difference θ but the second distance function D.sub.B depends on the arrival time difference θ. The arrival time difference θ can also be denoted as time separation θ at the runway. Both expression are synonyms in this description.

(40) Based on these definitions the separation function S(t, θ) is defined as a difference between the first and second distance functions. This is done in the separation block 404.

(41) Based on that, a further step is performed in the boundary check block 406. In the boundary check block 406 the first step, which is illustrated in FIG. 4 in the boundary check block 406, is to differentiate the separation function received from the separation block 404 with respect to time. The result is evaluated at the boundary times of overlapping segments, i.e., of the validity intervals of the considered analytic expressions for the separation function. The signs of the results indicate the positions of local minimum points t.sub.min of the separation function which may be situated at boundary times or within a validity interval. Depending on this result, the minimum point t.sub.min is determined in the minimum point block 408 either as the indicated boundary time or as the result of setting the derivative of the separation block obtained in the boundary check block 406 to zero and resolving for the time in order to receive an analytic expression for the minimum point t.sub.min. In the minimum point block 408 it is thus illustrated that the point in time of minimum distance t.sub.min is dependent on the arrival time difference θ and accordingly the minimum point block 408 shows t.sub.mjn(θ).

(42) This minimum time point t.sub.min is than inserted in the separation function in order to further receive an analytic expression of the separation function. This analytic expression for the separation function is than independent of time as the analytic expression for the time of minimum distance t.sub.min is inserted, which depends on θ. That is shown in the time eliminated block 410. According to that, the separation function S(t.sub.min(θ), θ) with eliminated time is described as an analytic expression which only depends on θ. For any θ the value S(t.sub.min(θ), θ) of is the minimum value of the separation function.

(43) The next step is to set this analytic expression for the separation function S(t.sub.min(θ), θ) equal to the predetermined minimum separation σ. This is illustrated in the minimum condition block 411. A further step it to resolve this equation to get an analytic expression for calculation the arrival time difference θ. This is basically the determination function and thus this further step is illustrated in the determination block 412. According to the determination block 412 the determination function is an analytic expression for calculating the arrival time difference θ=ƒ(σ). This determination function is still an analytic expression but there might be more than one determination functions depending on rules and conditions. Particularly, results of the boundary check block 406 and resolving the analytic expression for the separation function according to the time eliminated block 410 results in a plurality of determination functions. These determination functions depending on rules and conditions are described further below in more detail.

(44) The determination function or determination functions according to the determination block 412 depend on the general description of the flight trajectories according to the definition block 402, but do not depend on particular flight trajectories, i.e., do not depend on particular values of flight trajectories. Accordingly, the steps from the definition block 402 to the determination block 412 only need to be done once. Accordingly, these steps, in particular any resolving steps, may be complicated or at least be done offline. In order to now use the determination function to calculate a particular value for the arrival time difference θ for a particular pair of flight trajectories the calculation block 414 is provided. Besides receiving the determination function ƒrom the determination block 412 the calculation block also receives individual flight trajectories, in particular individual distance functions from the data block 416. The data block 416 thus constantly or at least frequently and/or repeatedly provides new individual data.

(45) Accordingly, the calculation block 414 uses the determination function which is basically an analytic expression for each determination function and applies this to the individual flight trajectories received from the data block 416. The result is a particular arrival time difference θ, i.e., a particular value for the arrival time difference θ. Based on that the second flight trajectory of the pair of flight trajectories which the calculation block 414 has just received from the data block 416 can be amended such that its arrival time is deferred by this arrival time difference θ with respect to the arrival time of the first flight trajectory of the same pair of flight trajectories.

(46) Accordingly, the particular value for the arrival time difference θ is the output of the calculation block 414 and the process then returns to the data block 416 in order to provide a new pair of flight trajectories in order to calculate a new arrival time difference θ. In such new pair of flight trajectories the first flight trajectory may be the second flight trajectory of the previous pair of flight trajectories.

(47) It is to be noted that the calculation block 414 may comprise a plurality of calculation loops which will be explained with respect to FIG. 5.

(48) Accordingly, the iteration flow chart 500 basically represents the calculation block 414 of FIG. 4. It starts with a data block 516, which may indeed be identical to the data block 416. It provides a pair of flight trajectories and delivers this data to the initialization block 502. In the initialization block 502 there is calculated as a starting value a minimum arrival time difference θ.sub.0. This initial or minimum arrival time difference θ.sub.0 is characterized by the index 0 (zero) in order to indicate that this can be understood as an initial value in the following iteration loop. However, one starting value for this minimum arrival time difference may be calculated as a flight duration of the second aircraft for a final part of its flight trajectory of length equal to the predetermined minimum separation before reaching the runway. Accordingly, the initial arrival time difference θ.sub.0 depends on the predetermined minimum separation G.

(49) This starting value is passed to the segments determination block 504. In the segment determination block 504 a pair of trajectory segments is determined.

(50) When first using this segment determination block 504 an index i is initialized with 1 and the first pair of trajectory segments comprises the segment of the first flight trajectory having the runway as one node and the segment of the second flight trajectory which contains the point with remaining flying distance equal to the predetermined minimum separation σ. In other words, when first applying the segment determination block 504 the first pair of segments comprises the segment of the first flight trajectory of the last part of the flight trajectory.

(51) During each subsequent use of the segment determination block 504 the index i is increased by one and either for the first trajectory or the second trajectory or both the current trajectory segment is exchanged by a new current trajectory segment. The new trajectory segment is chosen such that the current trajectory segment and the new current trajectory segment are connected by having a common node and the new trajectory segments of both trajectories overlap in the time domain. For this, the node times of the start nodes of the current trajectories under the assumption that the second trajectory is parametrized with the previous value of the minimal arrival time difference are compared and the current trajectory segment with the larger node time is exchanged with a new trajectory segment. Both are exchanged at the same time only if the common node connecting the current and the new trajectory segments have the same node time for the first and the second trajectory,

(52) Based on this pair of segments, a new minimum arrival time difference θ.sub.i is calculated. This new minimum arrival time difference θ.sub.i can also be named as minimal value of the arrival time difference. It is thus calculated an arrival time difference as small as possible to still ensure that the minimum separation σ is ensured for the current pair of segments. This is done in the parameter calculation block 506. The result is forwarded to the comparison block 508. In the comparison block 508 the new and the previous value of the minimal arrival time difference θ.sub.i-1 are compared and the bigger one is taken. Accordingly, if in the comparison block 508 it was found that the new minimum value of the arrival time difference, i.e., the one just calculated in the parameter calculation block 506, is smaller than the old one, the new one θ.sub.i is increased to the old one θ.sub.i-1. That is done in the allocation block 510. Otherwise, the old value will not be changed.

(53) The flow chart goes further to the all pairs block 512. In the all pairs block 512 it is evaluated whether all possible pairs of segments for the current two flight trajectories have been considered. If not, the all pairs block 512 branches back to the segment determination block 504. Otherwise, it goes on to the final block 514. In the final block 514 the value of the arrival time difference θ is set to the current new value of the minimal arrival time difference θ.sub.i. In other words in the final block the arrival time difference will be set to the maximum value of all minimal values of the arrival time difference of all minimal arrival time differences calculated in the parameter calculation block 506 or the initialization block 502. The result is output as the arrival time difference θ and can be used to adjust the current second flight trajectory.

(54) It is to be noted that the iteration flow chart 500 does not seem to receive an input from the determination block 412 according to FIG. 4. However, FIG. 4 is just illustrating that the blocks 402 to 412 make an offline calculation and the result is then used for the online calculation. In other words the result, i.e., the plurality of determination functions, calculated in the determination block 412 are implemented basically in the parameter calculation block 506 as fixed determination functions, i.e., being defined in an analytical way by analytic expression. Accordingly, for calculation or adjusting one flight trajectory after another of each current pair of flight trajectories is basically only done by using the calculation illustrated by the iterative flow chart 500.

(55) The parameter calculation block 506 comprises of steps and decisions which will be explained with respect to FIG. 6.

(56) Accordingly, the parameter calculation flow chart 600 represents the parameter calculation block 506 of FIG. 5. It starts with the segments determination block 604 which may indeed be identical with the segments determination block 504. It provides a pair of trajectory segments, one from the first trajectory and one from the second trajectory to the boundary choice block 606. Block 604 ensures that this pair of trajectory segments overlaps as described for the segments determination block 504.

(57) In the boundary choice block 606 it is checked whether the segment of the first trajectory determines the beginning of a common validity interval of both segments. If yes, it is continued with the first boundary calculation block 608, otherwise, with the second boundary calculation block 612. In the first boundary calculation block 608 a determination function ƒ.sub.bA(σ) is evaluated as a candidate minimum arrival time difference θ.sub.i. In the following candidate evaluation block 610 it is checked whether this candidate θ.sub.i is a valid choice by checking if the segment of the first trajectory determines the beginning of the common validity interval of both segments under the assumption that the adjustable trajectory parameter (θ) of the second trajectory is chosen as the candidate θ.sub.i. If this is the case, the candidate is handed to the boundary allocation block 614, otherwise the candidate is rejected and processing continues with the second boundary calculation block 612.

(58) In the second boundary calculation block 612 a determination function ƒ.sub.bB(σ) is evaluated as the candidate minimum arrival time difference θ.sub.i, which is handed to the boundary allocation block 614. In the boundary allocation block 614 the candidate arrival time difference θ.sub.i is set to the old arrival time difference θ.sub.i-1 if the latter is bigger. In the following intermediate check block 616 it is checked whether the separation function has a minimum within the common validity interval of both segments which is not at the boundaries of the common validity interval. If yes, processing continues with the intermediate calculation block 618, otherwise the candidate arrival time difference θ.sub.i is the result of the parameter calculation block 506. In the intermediate calculation block 618 a determination function ƒ.sub.m(σ) is evaluated as the candidate minimum arrival time θ.sub.i.sup.Med which in the final allocation block 620 is compared with the candidate θ.sub.i from the boundary allocation block 614. The larger of the two candidates θ.sub.i and θ.sub.i.sup.Med is then used as the result of the parameter calculation block 506.

(59) In the following further details in particular of formulas used for receiving the analytic expressions for the determination functions, i.e., basically the result according to the determination block 412 are explained in detail below. The formulas also include explanations regarding the conditions and rules to be considered. The formulas also include explanations for details illustrated by the iterative flow chart 500 of FIGS. 5 and 600 in FIG. 6. It is also noted that the flow charts 400, 500, and 600 each may use simplified formula or simplified variable expressions or parameters for illustrative purposes. In other words the formulas and expressions explained below may be different to some formulas or expressions used with respect to FIGS. 4, 5, and 6, but still explain the same thing.

(60) The task is to determine the time separation θ at the runway, i.e., the arrival time difference θ, such that the separation
S(t)=D.sub.A(t)−D.sub.B(t)
is never below a given required separation σ for all points in time t.

(61) One approximate approach would be to estimate a θ and to check that S(t)≥σ for closely spaced values of t over the valid range of t. If this check fails at one point, increase θ and start over again. Another approach would be to determine the three values S.sub.1, S.sub.2, and S.sub.3 for an estimated θ and for a given pair of segments and stepwise enlarge the estimate of θ as long as one of them is below σ. The suggested method does not do either of these.

(62) Enlarging θ means changing at least one of the trajectories of flight A and B. We choose to keep the landing time of flight A fixed and adjust the trajectory of flight B such that it lands θ seconds after flight A. Thus, D.sub.A(t) is independent of θ and D.sub.B (t)=D.sub.B(t, θ) depends on, i.e., the separation at a given point in time t depends also on θ:
S(t,θ)=D.sub.A(t)−D.sub.B(t,θ).

(63) As we have shown with example d), the point in time t.sub.min, where the separation S(t, θ) reaches its minimum will change with θ. t.sub.min(θ), i.e., it is not possible to determine t.sub.min independently of θ, insert the result in S(t.sub.min, θ)=σ, and solve for θ. The resulting θ would lead to a changed t.sub.min invalidating the result for θ. Nevertheless, this could be the basis for another iterative approach. However, the suggested method is more direct:

(64) For one pair of trajectory segments the correct θ is determined in one analytic calculation. The place of minimum of S(t.sub.min, θ) is analytically determined as t.sub.min(θ), e.g., by solving

(65) S ( t , θ ) t = 0
for t. The resulting expression for t.sub.min(θ) is then inserted in
S(t.sub.min(θ),θ)=σ
which may then be solved for θ. This will eliminate the dependency on t and give us an expression for θ which only depends on a and the parameters defining the form of S(t, θ).

(66) The results will be given below, after the dependency on the validity intervals of the trajectory segments and a number of other parameters and terminology have been defined.

(67) The presented mechanism is still iterative, since this analytic calculation has to be done for each overlapping pair of trajectory segments. In contrast to the possible approaches hinted at above, only a single calculation is needed for each overlapping pair of trajectory segments. For each segment pair, the result is determined analytically.

(68) To further explain the mechanism, let us fix the trajectory of flight A such that it lands (arrives at P) at time θ and vary the trajectory of flight B such that it arrives at time θ. Since the functions D(t) were chosen to be zero at P, this may be expressed as
D.sub.A(0)=0
D.sub.B(θ,θ)=0
The first equation may be used to fix the parameters t.sub.An and ensure that they are independent of θ. The second equation helps making the dependency of D(t, θ) on θ explicit by t.sub.Bn(θ)=θ−Δt.sub.Bn, where Δt.sub.Bn is the positive flying time (time to go) of flight B from the end node of segment n to point P. (Similarly, t.sub.Am=−Δt.sub.Am.) This results in:

(69) D B ( t , θ ) = D Bn ( t - t Bn ( θ ) ) = D Bn ( t - θ + Δ t Bn ) = 1 2 a Bn ( t - θ + Δ t Bn ) 2 + v Bn ( t - θ + Δ t Bn ) + d Bn D A ( t ) = D Am ( t - t Am ) = D Am ( t + Δ t Am ) = 1 2 a Am ( t + Δ t Am ) 2 + v Am ( t + Δ t Am ) + d Am

(70) Reference numerals shown below in parenthesis refer to blocks in the structures of FIGS. 5 and 6, i.e., said explained steps or even formulas may be implemented in the corresponding block according to the cited reference numeral.

(71) The input into the mechanism are the characteristic parameters describing all segments of the first trajectory, i.e., of the trajectory of flight A, a.sub.A, v.sub.A, d.sub.A, and Δt.sub.m A for all 1≤m≤N.sub.A and Δt.sub.A0, the characteristic parameters describing the second trajectory, i.e., the trajectory B, a.sub.Bn, v.sub.Bn, d.sub.Bn, Δt.sub.Bn for all 1≤n≤N.sub.B and Δt.sub.B0), and the required separation σ. Possibly also parameters restricting the range in which this separation shall be ensured. Accordingly, index A refers to trajectory A, i.e., the first trajectory and index B refers to trajectory B, i.e., the second trajectory. (516)

(72) This is a short overview of the mechanism, which is elaborated in the sections below: Determine the initial segment n of the trajectory B such that d.sub.n-1<σ≤d.sub.n holds. All segments of trajectory B with larger indices are considered to be handled in the following: Determine an initial θ.sub.0 with function ƒ.sub.0(σ) ensuring sufficient separation at t=0. (502) Iterate backwards according to an iteration described below handling pairs of segments starting with segment m=N.sub.A of the trajectory A and segment n of trajectory B as determined before: Choose segment m of the trajectory A and segment n of trajectory B such that: they overlap; and all segments with higher indices have been handled.
This may always be achieved by decrementing either m, or n, or both. (504) If t.sub.Bn-1 (θ.sub.i-1)≤t.sub.Am-1 (606), determine or θ.sub.i.sup.MaxA with the determination function ƒ.sub.bA(σ). (608) If then θ.sub.i.sup.MaxA≤θ.sub.i-1 holds, let θ.sub.i.sup.Max=θ.sub.i-1. (614) If θ.sub.i.sup.MaxA>θ.sub.i-1 and t.sub.Bn-1(θ.sub.i.sup.MaxA)≤t.sub.Am-1 also holds, let θ.sub.i.sup.Max=θ.sub.i.sup.MaxA. (610) Otherwise, no θ.sub.i.sup.MaxA is found, yet. If no θ.sub.i.sup.MaxA is found, determine or θ.sub.i.sup.MaxB with the determination function ƒ.sub.bB(σ). (612) If θ.sub.i.sup.MaxB>θ.sub.i-1 let θ.sub.i.sup.Max=θ.sub.i.sup.MaxB. (614) If no θ.sub.i.sup.Max is found, let or θ.sub.i.sup.Max=θ.sub.i-1. (614) If the inequalities (12) hold for θ=θ.sub.i.sup.Max (616), determine θ.sub.i.sup.Med with the determination function ƒ.sub.m(σ). (618) Select θ.sub.i=max(θ.sub.i.sup.Max, θ.sub.i.sup.Med). (620) If t.sub.Bn-1(θ.sub.i)≤t.sub.Am-1, the segment m of trajectory A is handled. Otherwise segment n of trajectory B. (504) The final θ.sub.i is the result of the mechanism. (514) Even when an iteration leads to an increased time separation (θ.sub.i>θ.sub.i-1) there is no need to re-iterate the segments of the trajectories already handled in earlier iterations.

(73) In an initializing step, θ.sub.0 is determined such that the second flight B is exactly the distance a before the point P at the time 0 when flight A arrives at point P. This may be done by solving the following equation for θ.sub.0:
D.sub.B(0,θ.sub.0)=−σ

(74) For this, the correct segment n of D.sub.B(t, θ) may be found with d.sub.n-1<σ≤d.sub.n, and with equation (1) we get:
D.sub.Bn(0−t.sub.Bn(θ.sub.0))=D.sub.Bn(0−θ.sub.0+Δt.sub.Bn)=−σ.

(75) This equation is either quadratic or linear in θ.sub.0 and therefore has three possible solutions, the two signs of the root and the linear case. The solution is the function θ.sub.0=ƒ.sub.0(σ).

(76) An iteration will be described and from now on we will use the index n for the current segment of the trajectory of flight B and the index m for the current segment of the trajectory of flight A. The indices are decreased as we iterate backward over the trajectories. D.sub.Bn and D.sub.Am are the corresponding functions describing the current segments, a.sub.Bn, v.sub.Bn, d.sub.Bn, Δt.sub.Bn the parameters determining D.sub.Bn, and a.sub.Am, v.sub.Am, d.sub.Am, Δt.sub.Am the parameters determining D.sub.Am.

(77) The initial index n for t=0 is the same as the one used when determining θ.sub.0. For it holds
t.sub.Bn-1(θ.sub.0)≤0≤t.sub.Bn(θ.sub.0)
The initial index m=N.sub.A denotes the last segment of the trajectory for which d.sub.Am=0 and t.sub.Am=Δt.sub.Am=0.

(78) Each iteration i=1, 2, . . . consists of the following steps: Determine a θ.sub.i≥θ.sub.i-1 as described below. Decrease either m if t.sub.Bn-1 (θ.sub.i)<t.sub.Am-1, or n if t.sub.Bn-1(θ.sub.i)>t.sub.Am-1, or both if t.sub.Bn-1(θ.sub.i)=t.sub.Am-1.

(79) For each pair n, m, the θ.sub.i≥θ.sub.i-1 will be determined below such that the separation σ is obeyed for all times t in the common validity interval:
S(t,θ.sub.i)≥σfor all max(t.sub.Bn-1(θ.sub.i),t.sub.Am-1)≤t≤min(t.sub.Bn(θ.sub.i),t.sub.Am).  (2)

(80) Assuming the previous check has shown that
S(t,θ.sub.i-1)≥σfor all min(t.sub.Bn(θ.sub.i-1),t.sub.Am)≤t≤0  (3)
it follows that
S(t,θ.sub.i)≥σfor all max(t.sub.Bn-1(θ.sub.i),t.sub.Am-1)≤t≤0,  (4)
assuming the speed is never negative. This is then the condition (3) for the next iteration when incrementing i and decrementing either n or m or both as explained above. The larger of t.sub.Bn-1(θ.sub.i) and t.sub.Am-1 will become t.sub.Bn(θ.sub.i-1) or, respectively, t.sub.Am.

(81) The mechanism continues traversing the trajectories backwards toward the beginning, decreasing either m or n or both and increasing i, until one of a number of end-conditions has been reached. It stops when n or m reaches zero. It may possibly stop, when other conditions are satisfied, e.g., when m reaches the point where the predecessor trajectory merges with the successor route, or when a maximum DTG is reached by the predecessor.

(82) When all iterations are done, the last θ.sub.i will be our final result. If one of the trajectories was fully iterated, it will hold
S(t,θ.sub.i)≥σfor all max(t.sub.B0(θ.sub.i),t.sub.A0)≤t≤0,  (5),
i.e., for the whole time interval where both trajectories are defined. Otherwise, in the presence of other stop-conditions, it will be true for all t where both trajectories are defined and the other conditions are satisfied.

(83) A separation of a pair of segments will now be described and it remains to show, how for a given pair of indices m and n the θ.sub.i is determined which satisfies equation (2).

(84) With t.sub.min we will denote the point in time where flight A and B have their closest approach within the current combined validity interval max(t.sub.Bn-1(θ.sub.i), t.sub.Am-1)≤t≤min(t.sub.Bn(θ.sub.i),t.sub.Am) of the current segments of both trajectories. Unless equation (2) is already satisfied for θ.sub.i=θ.sub.i-1, we will determine θ.sub.i>θ.sub.i-1 such that
S(t.sub.min,θ.sub.i)=σ  (6)
holds. Note, that t.sub.min depends on the form of S as well as on θ.sub.i.

(85) There are three candidates which have to be considered and checked separately:
t.sub.min.sup.max=max(t.sub.Bn-1(θ.sub.i),t.sub.Am-1)
t.sub.min.sup.Min=min(t.sub.Bn(θ.sub.i),t.sub.Am-1)
MAX(t.sub.Bn-1(θ.sub.i),t.sub.Am-1)<t.sub.min.sup.Med<min(t.sub.Bn(θ.sub.i),t.sub.Am)

(86) For each candidate for t.sub.min, a θ.sub.i may be found which would satisfy equation (2) if the true t.sub.min were equal to the candidate. We will call these solutions θ.sub.i.sup.Max, θ.sub.i.sup.Min, and θ.sub.i.sup.Med, respectively. The largest of these will be the solution θ.sub.i, since a larger θ always leads to a larger S(t, θ) and thus if the largest candidate satisfies equation (2), the other two candidates will, as well. This will automatically determine, which of the candidates is the true t.sub.min, i.e., the time of the closest approach within the current combined validity interval.

(87) For the candidate t.sub.min.sup.Min at the end of the interval, equation (3) and continuity of the function S(t, θ) directly show that θ.sub.i.sup.Min=θ.sub.i-1 already satisfies equation (2).

(88) The cases “Max” and “Med” will be handled as follows: The case is handed by inserting
t.sub.min.sup.Max=max(t.sub.Bn-1(θ.sub.i.sup.Max),t.sub.Am-1) in equation (2) and solving the equal case of equation (2) for θ.sub.i.sup.Max:
S(max(t.sub.Bn-1(θ.sub.i.sup.Max),t.sub.Am-1),θ.sub.i.sup.Max)=σ

(89) Due to the maximum, there are two cases, which we call “MaxB” and “MaxA”.

(90) It is important to note that t.sub.Bn-1(θ)=θ−Δt.sub.Bn-1 increases together with θ and may therefore become greater than t.sub.Am-1 for a larger θ when it initially was less or equal for a smaller θ.

(91) Since we do not know θ.sub.i.sup.Max, yet, it is not clear, which of the two cases hold, and we might have to check both. Initially, we can only use θ.sub.i-1. In the case,
max(t.sub.Bn-1(θ),t.sub.Am-1)=t.sub.Am-1  (7)
for θ=θ.sub.i-1, we have to start assuming that MaxA is relevant and have to find the solution θ.sub.i.sup.MaxA of the equation
S(t.sub.Am-1,θ.sub.i.sup.MaxA)=σ.  (8)

(92) The solution is the determination function θ.sub.i.sup.MaxA=ƒ.sub.bA(σ). If it results in θ.sub.i.sup.MaxA>θ.sub.i-1 we have to re-check, that equation (7) still holds for θ=θ.sub.i.sup.MaxA If it does not hold, θ.sub.i.sup.MaxA is not a valid candidate for θ.sub.i and the case MaxB will result in a valid candidate.

(93) Either if the MaxA case did not lead to a valid candidate, or if
max(t.sub.Bn-1(θ),t.sub.mn-1)=t.sub.Bn-1(θ),  (9)
already holds for θ=θ.sub.i-1, the case MaxB has to be used. For this, we have to find the solution or θ.sub.i.sup.MaxB of the equation
S(t.sub.Bn-1(θ.sub.i.sup.MaxB),θ.sub.i.sup.MaxB)=σ.  (10)

(94) The solution is the determination function θ.sub.i.sup.MaxB=ƒ.sub.bB(σ). This will always satisfy equation (9) for θ=θ.sub.i.sup.MaxB, if θ.sub.i.sup.MaxB≥θ.sub.i-1:
t.sub.Bn(θ.sub.i-1)=θ.sub.i-1−Δt.sub.Bn≤θ.sub.i.sup.MaxB−Δt.sub.Bn=t.sub.Bn(θ.sub.i.sup.MaxB).

(95) So far the mechanism has determined a θ.sub.i.sup.Max such that
S(t,θ.sub.i.sup.Max)≥σfor all t≥min(t.sub.Bb(θ.sub.i.sup.Max),t.sub.Am)
and for t=max(t.sub.Bn-1(θ.sub.i.sup.Max),t.sub.Am-1).  (11)

(96) This can only lead to a larger θ.sub.i.sup.Med>θ.sub.i.sup.Max, if S(t, θ) has a minimum between the boundaries of the validity interval, i.e., between max(t.sub.Bn-1(θ), t.sub.Am-1) and min(t.sub.Bn(θ), t.sub.Am), which may be checked with

(97) ( S ( t , θ ) t ) t = max ( t Bn - 1 ( θ ) , t Am - 1 ) < 0 and ( S ( t , θ ) t ) t = min ( t Bn ( θ ) , t Am ) > 0. ( 12 )

(98) These two conditions are necessary and sufficient due to the quadratic nature of S(t, θ) for a given pair of indices m and n. It suffices to check these conditions for θ=θ.sub.i.sup.Max. They will then hold for any θ.sub.i.sup.Med>θ.sub.i.sup.Max.

(99) In order to determine the formula for solution θ.sub.i.sup.Med for candidate t.sub.min.sup.Med, the time of the minimum t.sub.min.sup.Med(θ) has to be determined by solving

(100) ( S ( t , θ ) t ) t = t min Med ( θ ) = 0 .

(101) The result t.sub.min.sup.Med(θ) has to be inserted in
S(t.sub.min.sup.Med(θ.sub.i.sup.Med),θ.sub.i.sup.Med)=σ,  (13)
and solved for θ.sub.i.sup.Med. The solution is the determination function θ.sub.i.sup.Med=ƒ.sub.m(σ).

(102) The step considering a pair m and n therefore results in a θ.sub.i≥θ.sub.i-1 which is either θ.sub.i=θ.sub.i-1, θ.sub.i=θ.sub.i.sup.MaxA=ƒ.sub.bA(σ), θ.sub.iθ.sub.i.sup.MaxB=ƒ.sub.bB(σ), or θ.sub.i=θ.sub.i.sup.Med=ƒ.sub.m(σ). The analytical expressions for the determination functions ƒ.sub.bA, ƒ.sub.bB, and ƒ.sub.m are obtained by solving equations (8), (10), and (13). They only depend on a and the parameters determining the trajectory segments a.sub.Bn, v.sub.Bn, d.sub.Bn, Δt.sub.Bn, a.sub.Am, v.sub.Am, d.sub.Am, and Δt.sub.Am and may thus be efficiently implemented in a computer program.

(103) The various embodiments described above can be combined to provide further embodiments. These and other changes can be made to the embodiments in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the claims to the specific embodiments disclosed in the specification and the claims, but should be construed to include all possible embodiments along with the full scope of equivalents to which such claims are entitled. Accordingly, the claims are not limited by the disclosure.