Method, apparatus, medium, and device for determining flight phases

By acquiring ADS-B data to calculate noise and using basic cruise altitude to divide the flight phase, the problem of noise interference in flight trajectory data is solved, and the accuracy and safety of flight phase division is improved.

CN119987407BActive Publication Date: 2025-07-04MOBILE TECH COMPANY CHINA TRAVELSKY HLDG
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510438868.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-09
Publication Date
2025-07-04
Estimated Expiration
2045-04-09

AI Technical Summary

Technical Problem

In the prior art, aircraft flight trajectory data are inaccurately divided due to noise interference, which affects flight safety and aviation operation efficiency.

Method used

By obtaining ADS-B data, the data noise Z is calculated, and when Z is greater than the preset threshold, the flight phase is divided using the preset basic cruise altitude to remove noise data. The specific methods include sorting, filtering and dichotomy.

Benefits of technology

Improve the accuracy of flight phase division, reduce noise interference, and enhance flight safety and operational efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119987407B_ABST
    Figure CN119987407B_ABST
Patent Text Reader

Abstract

The present application provides a method, device, medium, and equipment for determining flight phases, which relates to the technical field of data processing, and includes: obtaining ADS-B data corresponding to a trajectory to be processed to obtain a corresponding data list S; obtaining data noise Z corresponding to the trajectory to be processed according to S; if Z is greater than a preset data noise threshold, obtaining a preset basic cruising altitude; and dividing the flight phases of the trajectory to be processed according to the preset basic cruising altitude. The present application divides the flight phases of the trajectory to be processed according to the preset basic cruising altitude, removes some noise data, and selects a method of screening out some noise and then dividing the flight phases in the case of large noise in the overall data. The accuracy of flight phase division is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] In the aviation field, it is of great significance to accurately divide the flight phases of aircraft flight trajectories. Flight phase division can provide key data support for flight safety assessment, flight performance analysis, and air traffic management. However, in actual flight, there are many challenges in obtaining aircraft flight trajectories.

[0003] When an aircraft is flying, it will be affected by many complex factors. On the one hand, the aircraft's own sensor system will introduce a certain degree of error when collecting flight data due to hardware accuracy limitations, signal interference, etc. On the other hand, external environmental factors, such as atmospheric turbulence and electromagnetic interference, will also affect the accuracy of flight data. The combined effect of these factors may result in a large amount of noise in the acquired flight trajectory data.

[0004] The presence of noise seriously interferes with the accurate division of flight phases. For example, in the traditional flight phase division method based on flight parameter threshold judgment, noise may cause the flight parameters to exceed or fall below the normal threshold range instantly, resulting in errors in the division results. If the noise cannot be effectively quantified and the appropriate flight phase division method cannot be selected, it will not only reduce the accuracy of the flight phase division, but also may affect the reliability of subsequent analyses and decisions based on the flight phase division, thereby adversely affecting flight safety and aviation operation efficiency. Therefore, there is an urgent need for a technical solution that can effectively quantify noise and select an appropriate flight phase division method to improve the accuracy and reliability of flight trajectory analysis. Summary of the invention

[0005] In response to the above technical problems, the present application provides a flight phase determination method, device, medium and equipment, which at least partially solve the problems existing in the prior art.

[0006] In a first aspect of the present application, a flight phase determination method is provided, the method comprising:

[0007] S100, obtaining the ADS-B data corresponding to the trajectory to be processed to obtain the corresponding data list S=(S1, S2, ..., S i , …, S n ), i=1, 2, ..., n, where n is the number of ADS-B data corresponding to the trajectory to be processed; S i is the i-th ADS-B data corresponding to the trajectory to be processed; each ADS-B data has a corresponding time and flight altitude; S is arranged in chronological order;

[0008] S200, according to S, obtain the data noise Z corresponding to the trajectory to be processed; wherein Z meets the following conditions: ;tn is the time corresponding to the nth ADS-B data; t i is the time corresponding to the ith ADS-B data; v(t i ) is the speed corresponding to the ith ADS-B data; is the window average speed corresponding to the ith ADS-B data; h(t i ) is the altitude corresponding to the ith ADS-B data; is the window average altitude corresponding to the ith ADS-B data;

[0009] S300, if Z is greater than a preset data noise threshold, obtain a preset basic cruise altitude; wherein, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitudes corresponding to the ADS-B data;

[0010] S400, divide the to-be-processed trajectory into flight phases according to the preset basic cruise altitude; wherein, the flight phases include a climb phase, a cruise phase, and a descent phase.

[0011] In a second aspect of the present application, there is provided a flight phase determination device, the device includes:

[0012] An acquisition unit, configured to acquire ADS-B data corresponding to a to-be-processed trajectory to obtain a corresponding data list S = (S1, S2,..., S i ,..., S n ); i = 1, 2,..., n; wherein, n is the number of ADS-B data corresponding to the to-be-processed trajectory; S i is the ith ADS-B data corresponding to the to-be-processed trajectory; each ADS-B data has a corresponding time and flight altitude; S is arranged in chronological order;

[0013] A noise determination unit, configured to obtain data noise Z corresponding to the to-be-processed trajectory according to S; wherein, Z meets the following conditions: ; t n is the time corresponding to the nth ADS-B data; t i is the time corresponding to the ith ADS-B data; v(t i ) is the speed corresponding to the ith ADS-B data; is the window average speed corresponding to the ith ADS-B data; h(t i ) is the altitude corresponding to the ith ADS-B data; is the window average altitude corresponding to the ith ADS-B data;

[0014] An altitude determination unit, configured to obtain a preset basic cruise altitude if Z is greater than a preset data noise threshold; wherein, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitude corresponding to the ADS-B data.

[0015] A stage division unit, configured to divide the flight stage of the to-be-processed trajectory according to the preset basic cruise altitude; wherein, the flight stage includes a climb stage, a cruise stage, and a descent stage.

[0016] In a third aspect of the present application, there is provided a non-transitory computer-readable storage medium, in which at least one instruction or at least one program segment is stored, and the at least one instruction or at least one program segment is loaded and executed by a processor to implement the foregoing flight stage determination method.

[0017] In a fourth aspect of the present application, there is provided an electronic device, including a processor and the above-mentioned non-transitory computer-readable storage medium.

[0018] The present application has at least the following beneficial effects:

[0019] For the flight stage determination method provided by the present application, first, the ADS-B data corresponding to the to-be-processed trajectory is obtained to obtain a corresponding data list S, wherein each ADS-B data has a corresponding time and flight altitude. Furthermore, according to the time and flight altitude corresponding to each ADS-B data, the quantification of the data noise corresponding to the to-be-processed trajectory is realized. Here, the data noise includes speed noise and altitude noise. The speed noise and altitude noise refer to the unstable and irregular fluctuation phenomena of speed and altitude data. If Z is greater than the preset data noise threshold, it indicates that the data noise corresponding to the to-be-processed trajectory is too large. At this time, the flight stage of the to-be-processed trajectory is divided according to the preset basic cruise altitude. Here, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S, and it is the flight altitude corresponding to the ADS-B data that may be the cruise altitude selected after removing the noise data from many ADS-B data. Among them, the maximum flight altitude corresponding to the flight altitude corresponding to the ADS-B data may be noise data. Dividing the flight stage of the to-be-processed trajectory according to the preset basic cruise altitude removes some noise data. In the case where the noise of the overall data is large, a method of screening out some noise and then dividing the flight stage is selected. The accuracy of flight stage division is improved. Description of the Drawings

[0020] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the accompanying drawings required for the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.

[0021] Figure 1 It is a flowchart of the flight phase determination method provided by the embodiments of the present application;

[0022] Figure 2 It is a structural block diagram of the flight phase determination device provided by the embodiments of the present application. Detailed implementation manners

[0023] The following will clearly and completely describe the technical solutions in the embodiments of the present application in combination with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all of them. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative efforts fall within the scope of protection of the present application.

[0024] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above accompanying drawings are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence. It should be understood that such used data can be interchanged under appropriate circumstances so that the embodiments of the present application described here can be implemented in an order other than those illustrated or described here. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product or server including a series of steps or units does not necessarily have to be limited to those clearly listed steps or units, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0025] It should be noted that the following describes various aspects of the embodiments within the scope of the appended claims. It should be obvious that the aspects described herein can be embodied in a wide variety of forms, and any specific structure and / or function described herein is illustrative only. Based on the present application, those skilled in the art should understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects described herein can be used to implement a device and / or practice a method. Additionally, this device and / or practice of this method can be implemented using other structures and / or functionality in addition to one or more of the aspects described herein.

[0026] Please refer to Figure 1As shown in the figure, an embodiment of the present application provides a method for determining a flight phase, the method including:

[0027] S100, obtaining ADS-B data corresponding to a trajectory to be processed to obtain a corresponding data list S = (S1, S2, …, S i , …, S n ); i = 1, 2, …, n; where n is the number of ADS-B data corresponding to the trajectory to be processed; S i is the i-th ADS-B data corresponding to the trajectory to be processed; each ADS-B data has a corresponding time and flight altitude; S is arranged in chronological order.

[0028] Specifically, the trajectory to be processed is a flight trajectory obtained by a certain aircraft when performing a certain flight mission, which has corresponding several ADS-B data, and each ADS-B data has a corresponding time and flight altitude.

[0029] S200, obtaining the data noise Z corresponding to the trajectory to be processed according to S; where Z meets the following conditions: ; t n is the time corresponding to the n-th ADS-B data; t i is the time corresponding to the i-th ADS-B data; v(t i ) is the speed corresponding to the i-th ADS-B data; is the window average speed corresponding to the i-th ADS-B data; h(t i ) is the altitude corresponding to the i-th ADS-B data; is the window average altitude corresponding to the i-th ADS-B data.

[0030] Specifically, Z is the data noise corresponding to the trajectory to be processed. Here, the data noise includes speed noise and altitude noise. Among them, speed noise and altitude noise refer to the unstable and irregular fluctuation phenomena of speed and altitude data, just like the data is doped with "noise" interference.

[0031] It should be noted that, is the window average speed corresponding to the i-th ADS-B data, is the arithmetic mean from the (i - N / 2)-th point to the (i + N / 2)-th point; N is the number of ADS-B data included in a preset window; as an example: when N is 8 and i is 5, the window average speed corresponding to the 5th ADS-B data is the arithmetic mean of the speed corresponding to the 1st ADS-B data to the speed corresponding to the 5th ADS-B data; is the window average altitude corresponding to the i-th ADS-B data, is the arithmetic mean from the (i - N / 2)-th point to the (i + N / 2)-th point; as an example: when N is 8 and i is 5, the window average height corresponding to the 5th ADS-B data is the arithmetic mean of the height corresponding to the 1st ADS-B data to the height corresponding to the 5th ADS-B data.

[0032] S300, if Z is greater than a preset data noise threshold, obtain a preset basic cruise altitude; wherein, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitudes corresponding to the ADS-B data.

[0033] Specifically, if Z is greater than the preset data noise threshold, it indicates that the corresponding data noise in the to-be-processed trajectory is relatively large. At this time, the flight phase of the to-be-processed trajectory is divided according to the preset basic cruise altitude. Here, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S, and it is the flight altitude corresponding to the ADS-B data that may be the cruise altitude selected after removing the noise data from many ADS-B data. Among them, the maximum flight altitude corresponding to the flight altitudes corresponding to the ADS-B data may be noise data.

[0034] S400, divide the to-be-processed trajectory into flight phases according to the preset basic cruise altitude; wherein, the flight phases include a climbing phase, a cruising phase, and a descending phase.

[0035] Specifically, divide the to-be-processed trajectory into flight phases according to the preset basic cruise altitude, removing some noise data. In the case where the overall data has a large amount of noise, a method of screening out some noise and then dividing the flight phases is selected. This improves the accuracy of flight phase division.

[0036] In this embodiment, the obtained preset cruise altitude is data after removing some noise, which can improve the accuracy of flight phase division for the case where the noise in the trajectory is relatively large.

[0037] In an exemplary embodiment of the present application, step S300 includes:

[0038] S310, sort the flight altitudes corresponding to each ADS-B data in S in descending order to obtain a flight altitude list h = (h1, h2,..., h a ,..., h n ); a = 1, 2,..., n; wherein, h a is the flight altitude ranked at the a-th position.

[0039] S320, obtain a preset number of flight altitudes in h in descending order to obtain a list of critical flight altitudes Gh = (Gh1, Gh2, …, Gh x , …, Gh y ); x = 1, 2, …, y; where y is the preset number; Gh x is the x-th critical flight altitude.

[0040] S330, determine MIN(Gh) as the preset basic cruise altitude; where MIN() is a preset minimum value determination function.

[0041] Specifically, in this embodiment, the flight altitudes corresponding to each ADS-B data in S are sorted in descending order to obtain an ordered list of flight altitudes, and the smallest flight altitude among the top preset number of flight altitudes in the ordered list of flight altitudes is selected as the preset basic cruise altitude. That is, it is considered that the higher several flight altitudes corresponding to ADS0-B data may be noise. Further, in order to improve the accuracy of determining the preset basic cruise altitude, in this embodiment, y satisfies the following characteristics:

[0042] y = (n / L) × (n / 10000);

[0043] where L is the flight distance corresponding to the trajectory to be processed.

[0044] Here, y is the preset number, and the magnitude of the number of y is the amount of the so-called noise altitude. Here, y is proportional to n / L, and n / L represents the density of the ADS-B data corresponding to the trajectory to be processed; then, the greater the density of the ADS-B data, the greater the possible number of noises. Further, the number of y is adjusted according to n / 10000. That is, under the condition that L is constant, the greater n is, the greater the impact on the number of noises, which is a square multiple increase, and the impact of the flight distance on the number of noise altitudes is less than the impact of the number of ADS-B data on the number of noises.

[0045] In an exemplary embodiment of the present application, step S400 includes:

[0046] S410, according to S, obtain a list of height differences C = (C1, C2, …, C i , …, C n ); where C i is the i-th height difference; C i = |α × MIN(Gh) - h(t i )|; α is a height adjustment parameter; 0 < α < 1.

[0047] Specifically, obtain the height differences between α×MIN(Gh) and each flight altitude. Here, α is the altitude adjustment parameter. To ensure a more accurate obtained cruise altitude, an altitude adjustment parameter is set, and on the basis of the preset basic cruise altitude, a more accurate possible cruise altitude is further generated. And α meets the following conditions:

[0048] α = α’×β;

[0049] α’ is the basic altitude adjustment parameter; β is the fluctuation adjustment parameter.

[0050] Among them, β is determined according to the following steps:

[0051] S001, obtain the altitude corresponding to each ADS-B data in the cruise stage of the historical trajectory obtained when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window, so as to obtain the historical altitude list set Lh = (Lh1, Lh2,..., Lh e , …, Lh k ); e = 1, 2, …, k; where k is the number of historical trajectories obtained when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window; Lh e is the altitude list corresponding to the historical trajectory obtained when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed for the e-th time within the historical time window during the cruise stage; Lh e =(Lh e,1 , Lh e,2 , …, Lh e,r , …, Lh e,f(e) ); r = 1, 2, …, f(e); f(e) is the number of ADS-B data included in Lh e ; Lh e,r is the altitude corresponding to the r-th ADS-B data included in Lh e .

[0052] S002, obtain the historical average fluctuation value corresponding to the trajectory to be processed according to Lh ; where avg() is a preset average value determination function.

[0053] S003, if PB is greater than the preset fluctuation value threshold, then determine that β < 1, otherwise determine that β > 1.

[0054] In this embodiment, by setting the fluctuation adjustment parameter, the final value of the altitude adjustment parameter is determined. The fluctuation adjustment parameter is determined according to each ADS-B data corresponding to the historical trajectory during the cruise phase when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window. That is, according to Lh, the historical average fluctuation value corresponding to the trajectory to be processed is obtained. If PB is large, it means that the altitude fluctuation of the aircraft during the cruise phase is large when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window, exceeding the preset fluctuation value threshold. Then, it means that the altitude fluctuation of the trajectory to be processed may also be large during the cruise phase. At this time, in order to ensure the accuracy of flight phase segmentation, the cruise altitude needs to be set a little smaller, so β < 1. On the contrary, if PB is less than or equal to the preset fluctuation value threshold, it means that the cruise altitude needs to be set a little larger, so at this time β > 1. In this application, in order to highlight the adjustment role of β in ensuring the accuracy of flight phase segmentation, it is determined that β ≠ 1.

[0055] This embodiment enables the finally determined cruise altitude to consider the influence of noise and filter out the influence of part of the noise when there is noise. In order to make the determined noise more accurate, historical data is introduced to obtain the altitude fluctuation situation of the historical trajectory during the cruise phase when the aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window, so as to adjust the cruise altitude and make the finally determined cruise altitude more accurate.

[0056] S420. According to C, obtain the key altitude difference list GC = (GC1, GC2,..., GC c ,..., GC d ); c = 1, 2,..., d; where d is the number of key altitude differences; GC c is the c-th key altitude difference; GC c is less than the preset altitude difference threshold.

[0057] Specifically, after determining the most likely cruise altitude, obtain several ADS-B data whose altitude differences from this cruise altitude are less than the preset altitude difference threshold. These are all the ADS-B data included in the cruise phase.

[0058] S430. Determine the position corresponding to the earliest time in GC in the trajectory to be processed as the first division point, and the position corresponding to the latest time in the trajectory to be processed as the second division point.

[0059] Specifically, determine the position corresponding to the earliest time in GC in the trajectory to be processed as the first division point, and the position corresponding to the latest time in the trajectory to be processed as the second division point. Here, the first division point is the critical point between the climb phase and the cruise phase; the second division point is the critical point between the cruise phase and the descent phase.

[0060] S440, divide the trajectory to be processed according to the first division point and the second division point. Among them, from the start point of the trajectory to be processed to the first division point is the climbing stage; from the first division point to the second division point is the cruising stage; from the second division point to the end point of the trajectory to be processed is the descending stage.

[0061] In an exemplary embodiment of the present application, after step S200, the method further includes:

[0062] S500, if Z is less than or equal to a preset data noise threshold, determine target trajectory points on the trajectory to be processed; among them, the flight altitude of the ADS-B data corresponding to the target trajectory points is the highest.

[0063] S600, according to the bisection method, the target trajectory points and the trajectory to be processed, obtain two target segmentation points; among them, the value of the velocity-altitude determinant corresponding to all ADS-B data between the two target segmentation points is less than a preset determinant threshold.

[0064] S700, according to the two segmentation points, segment the flight trajectory to obtain a climbing stage, a cruising stage and a descending stage.

[0065] In this embodiment, if Z is less than or equal to the preset data noise threshold, it means that the data noise corresponding to the trajectory to be processed is small. At this time, no denoising process is performed on the data. First, determine the target trajectory points with the highest flight altitude in the ADS-B data. This point is probably in the middle stage of the entire cruising stage. Furthermore, according to this point and the start point and end point of the trajectory to be processed, use the bisection method to obtain two target segmentation points. The area between the two target segmentation points is the obtained cruising stage; and the value of the velocity-altitude determinant corresponding to all ADS-B data between the two target segmentation points is less than the preset determinant threshold, which means that all ADS-B data between the two target segmentation points are almost collinear. Under normal circumstances, it should be 0, but due to the fluctuations of the aircraft's altitude and speed during flight, the value of its corresponding velocity-altitude determinant is less than the preset determinant threshold. Finally, according to the two segmentation points, segment the flight trajectory to obtain a climbing stage, a cruising stage and a descending stage. This embodiment has a high degree of automation and saves manpower. When the data noise of the trajectory to be processed is small, using this method to segment the aircraft flight trajectory has better effects and more accurate segmentation results.

[0066] In an exemplary embodiment of the present application, each target segmentation point is determined through the following steps:

[0067] S610, determine the trajectory to be processed between the target trajectory point and any endpoint of the trajectory to be processed as the key trajectory.

[0068] Specifically, the trajectory to be processed has two endpoints: a start point and an end point. As an example, the trajectory to be processed between the target trajectory point and the end point of the trajectory to be processed is determined as the key trajectory.

[0069] S620, obtain the key trajectory points corresponding to the key trajectory; wherein, the key trajectory points are the trajectory points on the key trajectory corresponding to the ADS-B data with the smallest time difference from the intermediate time point among all the ADS-B data included in the key trajectory; the key trajectory includes a first key trajectory and a second key trajectory; the critical point of the first key trajectory and the second key trajectory is the key trajectory point; the first key trajectory is close to the target trajectory point; the second trajectory point is far from the target trajectory point.

[0070] Specifically, the key trajectory point is the trajectory point on the key trajectory corresponding to a certain ADS-B data, and this ADS-B data is the ADS-B data with the smallest time difference from the intermediate time point among all the ADS-B data included in the key trajectory. Here, the intermediate time point is the intermediate time point between the time of the ADS-B data corresponding to the target trajectory point and the time of the ADS-B data corresponding to the end point of the trajectory to be processed. However, due to possible delays in ADS-B data, there may be no ADS-B data at this intermediate time point. At this time, the ADS-B data with the smallest time difference between the corresponding time and the intermediate time point, that is, the ADS-B data closest to the intermediate time point, is determined as the key trajectory point on the key trajectory, that is, the first "divide into two" is completed to obtain the first key trajectory and the second key trajectory. Among them, the critical point of the first key trajectory and the second key trajectory is the key trajectory point; the first key trajectory is close to the target trajectory point; the second trajectory point is far from the target trajectory point.

[0071] S630, based on the target trajectory point and the key trajectory point; obtain the speed-altitude array list Q = (Q1, Q2,..., Q s ,..., Q t ); s = 1, 2,..., t; t is the number of ADS-B data corresponding to the trajectory to be processed between the target trajectory point and the key trajectory point; Q s is the s-th speed-altitude array; Q s = (v s , h s ); v s is the speed corresponding to the s-th speed-altitude array; h s is the flight altitude corresponding to the s-th speed-altitude array.

[0072] Specifically, the reason for obtaining the speed-altitude array corresponding to the to-be-processed trajectory between the target trajectory point and the key trajectory point is that the to-be-processed trajectory near the target trajectory point is more likely to be the trajectory corresponding to the cruise phase than the to-be-processed trajectory far from the target trajectory point. Therefore, in this embodiment, the speed-altitude array list corresponding to this section is obtained.

[0073] S640. Obtain the corresponding speed-altitude determinant according to Q .

[0074] S650. If SG is less than or equal to the preset determinant threshold, determine the second key trajectory as the key trajectory; otherwise, determine the first key trajectory as the key trajectory; and jump to step S320; until the target cut-off point is obtained; where the values of the speed-altitude determinants corresponding to all ADS-B data between the target trajectory point and the target cut-off point are less than or equal to the preset determinant threshold; and the determinant value between the target trajectory point and the trajectory points of the adjacent ADS-B data in the direction away from the target trajectory point of the target cut-off point is greater than the preset determinant threshold.

[0075] Specifically, if SG is less than or equal to the preset determinant threshold, it means that all ADS-B data included in this section are almost collinear, that is, this section is all part of the cruise phase. At this time, determine the other section (between the key trajectory point and the end point) as the key trajectory for bisection, and update the position of the key trajectory point. Then, obtain the speed-altitude determinant between the target trajectory point and the key trajectory point again and determine whether it is close to collinearity. If so, continue to determine the section between the key trajectory point and the end point as the key trajectory for bisection. If not, bisect this section until the target cut-off point is obtained. After determining the cut-off point between the target trajectory point and the end point, further, use the same method to determine the cut-off point between the target trajectory point and the start point.

[0076] In this embodiment, the bisection method and the speed-altitude determinant are used to start from the target trajectory point, and a target cut-off point is determined on each side of the target trajectory point respectively. Compared with trying each ADS-B data one by one, the efficiency is higher and the time is more saved.

[0077] In an exemplary embodiment of the present application, Z meets the following conditions:

[0078] .

[0079] In this embodiment, only the speed noise is used as the noise of the to-be-processed trajectory, and the calculation is simple, which improves the calculation efficiency.

[0080] In an exemplary embodiment of the present application, Z meets the following conditions:

[0081] .

[0082] In this embodiment, only the altitude noise is regarded as the noise of the trajectory to be processed, which is simple to calculate and improves the calculation efficiency.

[0083] In an exemplary embodiment of the present application, both of the above two segmentation methods obtain a complete trajectory as the trajectory to be processed after the flight ends for the division of flight phases. The division of flight phases can also be performed during the flight, including the following steps:

[0084] S010. In response to receiving the ADS-B data returned by the target aircraft executing the flight mission, obtain the speed-altitude array list ZS = (ZS1, ZS2,..., ZS v ,..., ZS w ) corresponding to the target aircraft executing the flight mission; v = 1, 2,..., w; where w is the number of ADS-B data received by the target aircraft executing the flight mission up to the current time and in the same flight phase; ZS v is the speed-altitude array corresponding to the v-th ADS-B data received by the target aircraft executing the flight mission up to the current time and in the same flight phase; ZS has a corresponding segmentation point recognition result sequence QF = (QF1, QF2,..., QF v ,..., QF w ); where QF v is the segmentation point recognition result corresponding to ZS v ; QF v = 0 or QF v = 1; where QF v = 0 indicates that the ADS-B data corresponding to ZS v is not a flight phase segmentation point; QF v = 1 indicates that the ADS-B data corresponding to ZS v is a flight phase segmentation point.

[0085] Specifically, every time the ADS-B data returned by the target aircraft executing the flight mission is received, the corresponding speed-altitude array list ZS is obtained. Here, all the arrays in the speed-altitude array list are arrays in the same flight phase state. As an example: if the first target segmentation point has been determined, when determining the second target segmentation point, the corresponding speed-altitude data list is not obtained from the start of the flight, but from after the first target segmentation point. That is, at this time, the flight phases corresponding to the speed-altitude arrays included in the corresponding speed-altitude array list are all cruise phases. If the first target segmentation point has not been determined, the speed-altitude array is obtained from the takeoff of the flight.

[0086] Further, ZS has a corresponding segmentation point recognition result sequence QF. Each recognition result in QF is the recognition result obtained by the HMM model on whether the ADS-B data is the target segmentation point. Among them, QF v = 0 indicates that the ZS v corresponding ADS-B data is not a flight phase segmentation point; QF v = 1 indicates that the ZS v corresponding ADS-B data is a flight phase segmentation point.

[0087] S020, input ZS and QF into the HMM model to obtain the prediction result and make a mark until two predicted target segmentation points are obtained, then the prediction ends; among them, the prediction result is used to represent whether an ADS-B data received after the current time is a flight phase segmentation point; ZS is the observation sequence of the HMM model; QF is the hidden sequence of the HMM model.

[0088] Specifically, input the above ZS and QF into the HMM model, where ZS is the observation sequence of the HMM model; QF is the hidden sequence of the HMM model. Obtain the prediction result corresponding to an ADS-B data received after the current time according to the HMM model. Here, the prediction result represents whether an ADS-B data received after the current time is the target segmentation point.

[0089] The HMM model is the Hidden Markov Model. Here, the HMM model is trained according to the complete trajectory to be processed that has been completed in several historical times, and each ADS-B data on the trajectory has been labeled (whether it is the target segmentation point). It has corresponding parameters: the initial state probability vector, the state transition probability matrix, and the observation probability matrix. Among them, the initial state probability vector represents the probability of being in each hidden state at the initial moment, providing the initial conditions for the subsequent state transition and the generation of observation values. The state transition probability matrix describes the probability of transitioning between different hidden states, depicting the law of the change of hidden states over time, which is the core of the dynamic change of the HMM model. The observation probability matrix gives the probability of generating each observation value in each hidden state, establishing the connection between the hidden state and the observation value, enabling us to infer the hidden state through the observed data.

[0090] In the observations of the above model in this application, the speed and time in each ADS-B data are included because during the flight climb or descent process, there is a process of climb - level flight - climb - level flight - climb, or descent - level flight - descent - level flight. During this process, the speed and altitude restrict each other. In this embodiment, the HMM model is used as the prediction model because the HMM model has a learning function. During the level flight stage of the climb or descent phase, since the relationship between the corresponding speed and time is different from that in the cruise stage, the HMM model will not identify the process of climb - level flight - climb - level flight - climb or descent - level flight - descent - level flight during the flight climb or descent as a cruise process, making the predicted result more accurate. Therefore, in this embodiment, the speed and altitude are used as the observation sequence of the HMM model, which is more convenient for the HMM model to predict the hidden state corresponding to the next ADS-B data. Due to the learning ability of the HMM model, the predicted result is more accurate.

[0091] In an exemplary embodiment of this application, it is also possible to input only ZS into the model to obtain a prediction result and perform marking until two predicted target segmentation points are obtained, and then the prediction ends.

[0092] In an exemplary embodiment of this application, after step S010, the method further includes:

[0093] S030, input ZS and QF into the HMM model. When a target segmentation point is predicted, for each ADS-B data returned by a target aircraft received, obtain the corresponding key speed - altitude array list GQ = (GQ1, GQ2,..., GQ z ,..., GQ η ); z = 1, 2,..., η; where η is the number of ADS-B data returned by the target aircraft currently received when a target segmentation point is predicted; GQ z is the speed - altitude array corresponding to the z-th ADS-B data returned by the target aircraft currently received when a target segmentation point is predicted; GQ z = (gv z , gh z ); gv z is the speed corresponding to GQ z ; gh z is the altitude corresponding to GQ z .

[0094] S040, according to GQ, obtain the corresponding key speed - altitude determinant .

[0095] S050. If GH is greater than a preset determinant threshold, then delete GQ1, update GQ, and jump to step S400; until GH is less than or equal to the preset determinant threshold; and determine GQ1 as the target segmentation point.

[0096] In this embodiment, when a target segmentation point is predicted, the target segmentation point is the segmentation point between the climb phase and the cruise phase predicted by the HMM model. However, due to various reasons, the ADS-B data during the flight phase may be delayed or for other reasons. After the target segmentation point is determined, the ADS-B data after the target segmentation point is used as the observation sequence for predicting the next target segmentation point. If the predicted target segmentation point is too early, that is, it has not reached the actual target ball segmentation point, but the HMM model determines the trajectory point corresponding to the ADS-B data before the actual target segmentation point as the target segmentation point, then the first part of the subsequent observation state contains the speed-altitude data corresponding to part of the climb phase, which will cause inaccurate prediction of the next target segmentation point. Therefore, after obtaining the first target segmentation point predicted by the HMM model, it needs to be further verified. The determination method is to check whether the speed-altitude arrays corresponding to each ADS-B from the target segmentation point to the latest ADS-B data obtained at the current time are approximately collinear. If they are continuously approximately collinear (GH is less than or equal to the preset determinant threshold), it means that the speed-altitude data of the climb phase is not included after the first target segmentation point obtained by the HMM model, and all are data of the cruise phase. On the contrary, if they are not approximately collinear (GH is greater than the preset determinant threshold), it means that the speed-altitude data of part of the climb phase is included after the first target segmentation point obtained by the HMM model. At this time, this part of the data should be deleted. GQ1 can be deleted sequentially to obtain the updated GQ, or the bisection method can be used to re-determine the target segmentation point. The speed-altitude determinants formed by the ADS-B data between the re-determined target segmentation point and the next target segmentation point should all be approximately collinear (GH is less than or equal to the preset determinant threshold). Therefore, this embodiment verifies the first target segmentation point determined by the HMM model and makes timely corrections to avoid affecting the accuracy of the second target segmentation point determined by the HMM model.

[0097] Please refer to Figure 2 As shown, an embodiment of the present application provides a flight phase determination device 100, which includes: an acquisition unit 110, a noise determination unit 120, an altitude determination unit 130, and a phase division unit 140, where

[0098] The acquisition unit 110 is configured to acquire ADS-B data corresponding to a trajectory to be processed to obtain a corresponding data list S=(S1, S2,..., S i ,…, S n); i = 1, 2, …, n; where n is the number of ADS - B data corresponding to the trajectory to be processed; S i is the i - th ADS - B data corresponding to the trajectory to be processed; each ADS - B data has a corresponding time and flight altitude; S is arranged in chronological order.

[0099] The noise determination unit 120 is configured to obtain the data noise Z corresponding to the trajectory to be processed according to S; where Z meets the following conditions: ; t n is the time corresponding to the n - th ADS - B data; t i is the time corresponding to the i - th ADS - B data; v(t i ) is the speed corresponding to the i - th ADS - B data; is the window average speed corresponding to the i - th ADS - B data; h(t i ) is the altitude corresponding to the i - th ADS - B data; is the window average altitude corresponding to the i - th ADS - B data.

[0100] The altitude determination unit 130 is configured to obtain a preset basic cruise altitude if Z is greater than a preset data noise threshold; where the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS - B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitudes of the ADS - B data.

[0101] The stage division unit 140 is configured to divide the flight stage of the trajectory to be processed according to the preset basic cruise altitude; where the flight stage includes a climb stage, a cruise stage, and a descent stage.

[0102] Those skilled in the art can understand that various aspects of the present application can be implemented as a device, a method, or a program product. Therefore, various aspects of the present application can be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or an implementation combining hardware and software aspects, which can be collectively referred to as "circuit", "module", or "device" here.

[0103] An electronic device according to this embodiment of the present application. The electronic device is only an example and should not impose any limitation on the functions and usage scope of the embodiments of the present application.

[0104] The electronic device is presented in the form of a general - purpose computing device. The components of the electronic device may include, but are not limited to: at least one of the above - mentioned processors, at least one of the above - mentioned memories, and a bus connecting different device components (including the memory and the processor).

[0105] Among them, the memory stores program code, which can be executed by the processor, so that the processor executes the steps according to various exemplary embodiments of the present application described in the "Exemplary Method" section above in this specification.

[0106] The memory may include a readable medium in the form of a volatile memory, such as a random access memory (RAM) and / or a cache memory, and may further include a read-only memory (ROM).

[0107] The memory may also include a program / utilities having a set (at least one) of program modules, such program modules including but not limited to: an operating device, one or more application programs, other program modules, and program data, and the implementation of a network environment may be included in each or some combination of these examples.

[0108] The bus may represent one or more of several types of bus structures, including a memory bus or a memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus structures.

[0109] The electronic device may also communicate with one or more external devices (such as a keyboard, a pointing device, a Bluetooth device, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device, and / or communicate with any device that enables the electronic device to communicate with one or more other computing devices (such as a router, a modem, etc.). Such communication may be carried out through an input / output (I / O) interface. And, the electronic device may also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter. As shown in the figure, the network adapter communicates with other modules of the electronic device through the bus. It should be understood that although not shown in the figure, other hardware and / or software modules may be used in combination with the electronic device, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID devices, tape drives, and data backup storage devices, etc.

[0110] Through the description of the above embodiments, those skilled in the art can easily understand that the exemplary embodiments described herein can be implemented by software, or can be implemented by a manner of software combined with necessary hardware. Therefore, the technical solution according to the embodiments of the present application can be embodied in the form of a software product, and the software product can be stored in a non-volatile storage medium (which may be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which may be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiments of the present application.

[0111] In an exemplary embodiment of the present application, a computer-readable storage medium is further provided, on which a program product capable of implementing the above-described method of this specification is stored. In some possible implementation manners, various aspects of the present application can also be implemented in the form of a program product, which includes program code. When the program product runs on a terminal device, the program code is used to cause the terminal device to execute the steps according to various exemplary embodiments of the present application described in the above "Exemplary Method" section of this specification.

[0112] The program product can adopt any combination of one or more readable media. The readable media can be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor device, apparatus, or device, or any combination of the above. More specific examples (non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0113] The computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries the readable program code. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The readable signal medium can also be any readable medium other than the readable storage medium, which can send, propagate, or transmit a program for use by or in combination with an instruction execution device, apparatus, or device.

[0114] The program code included on the readable medium can be transmitted by any suitable medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the above.

[0115] The program code for performing the operations of the present application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, etc., and also including conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, executed as a stand-alone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (e.g., by connecting through the Internet using an Internet service provider).

[0116] In addition, the above-mentioned drawings are only schematic illustrations of the processes included in the method according to the exemplary embodiments of the present application, and are not for limiting purposes. It is easy to understand that the processes shown in the above-mentioned drawings do not indicate or limit the chronological order of these processes. Additionally, it is also easy to understand that these processes can be executed synchronously or asynchronously in, for example, multiple modules.

[0117] It should be noted that although several modules or units of the device for action execution are mentioned in the above detailed description, such a division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of the two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0118] The above is only the specific embodiment of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed by the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method for determining a flight phase, characterized in that, The method includes: S100. Obtain the ADS-B data corresponding to the trajectory to be processed to obtain the corresponding data list S=(S1, S2, …, S i , …, S n ); i = 1, 2, …, n; where n is the number of ADS-B data corresponding to the trajectory to be processed; S i is the i-th ADS-B data corresponding to the trajectory to be processed; each ADS-B data has a corresponding time and flight altitude; S is arranged in chronological order; S200. Obtain the data noise Z corresponding to the trajectory to be processed according to S. Wherein, Z meets the following conditions: ; t n is the time corresponding to the nth ADS-B data; t i is the time corresponding to the ith ADS-B data; v(t i ) is the speed corresponding to the ith ADS-B data; is the window average speed corresponding to the ith ADS-B data; h(t i ) is the altitude corresponding to the ith ADS-B data; is the window average altitude corresponding to the ith ADS-B data; S300. If Z is greater than the preset data noise threshold, obtain the preset basic cruise altitude. Wherein, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitudes corresponding to the ADS-B data. S400. Divide the trajectory to be processed into flight phases according to the preset basic cruise altitude. Wherein, the flight phases include a climbing phase, a cruising phase, and a descending phase. Step S300 includes: S310, sort the flight altitudes corresponding to each ADS-B data in S in descending order to obtain a flight altitude list h = (h1, h2, …, h a , …, h n ); a = 1, 2, …, n; where h a is the flight altitude ranked at the a-th position; S320, obtain a preset number of flight altitudes in h in descending order to obtain a list of key flight altitudes Gh = (Gh1, Gh2,..., Gh x ,..., Gh y ); x = 1, 2,..., y; where y is the preset number; Gh x is the x-th key flight altitude; S330. Determine MIN(Gh) as the preset basic cruise altitude. Wherein, MIN() is a preset minimum value determination function.

2. The method for determining a flight phase according to claim 1, wherein y meets the following characteristics: y = (n / L)×(n / 10000); Wherein, L is the flight distance corresponding to the trajectory to be processed.

3. The method for determining a flight phase according to claim 2, wherein Step S400 includes: S410. Obtain a height difference list C = (C1, C2, …, C i , …, C n ) according to S; where C i is the i-th height difference; C i = |α × MIN(Gh) - h(t i )|; α is the height adjustment parameter; 0 < α < 1; S420, obtain the key height difference list GC = (GC1, GC2,..., GC c ,..., GC d ); c = 1, 2,..., d; where d is the number of key height differences; GC c is the c-th key height difference; GC c is less than the preset height difference threshold; S430. Determine the position corresponding to the earliest time in GC in the trajectory to be processed as the first division point, and the position corresponding to the latest time in the trajectory to be processed as the second division point. S440. Divide the trajectory to be processed according to the first division point and the second division point. Among them, from the start point of the trajectory to be processed to the first division point is the climbing phase; from the first division point to the second division point is the cruising phase; from the second division point to the end point of the trajectory to be processed is the descending phase.

4. The method for determining a flight phase according to claim 3, wherein α meets the following conditions: α=α’×β; α’ is the basic altitude adjustment parameter; β is the fluctuation adjustment parameter.

5. The method for determining a flight phase according to claim 4, wherein β is determined according to the following steps: S001. Obtain the altitude corresponding to each ADS - B data of the historical trajectory during the cruise phase when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window, so as to obtain the historical altitude list set Lh=(Lh1, Lh2, …, Lh e , …, Lh k ); e = 1, 2, …, k; where k is the number of historical trajectories obtained when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed within the historical time window; Lh e is the altitude list corresponding to the historical trajectory obtained when the executing aircraft corresponding to the trajectory to be processed executes the flight route corresponding to the trajectory to be processed for the e - th time within the historical time window during the cruise phase; Lh e =(Lh e,1 , Lh e,2 , …, Lh e,r , …, Lh e,f(e) ); r = 1, 2, …, f(e); f(e) is the number of ADS - B data included in Lh e ; Lh e,r is the altitude corresponding to the r - th ADS - B data included in Lh e . S002. Obtain the historical average fluctuation value corresponding to the trajectory to be processed according to Lh. ; where avg() is a preset average value determination function; S003. If PB is greater than the preset fluctuation value threshold, determine that β < 1, otherwise determine that β > 1.

6. A flight phase determination device, characterized in that, The device includes: An acquisition unit is configured to acquire ADS-B data corresponding to a trajectory to be processed, so as to obtain a corresponding data list S = (S1, S2, …, S i , …, S n ); i = 1, 2, …, n; where n is the number of ADS-B data corresponding to the trajectory to be processed; S i is the i-th ADS-B data corresponding to the trajectory to be processed; each ADS-B data has a corresponding time and flight altitude; S is arranged in chronological order; A noise determination unit, configured to obtain data noise Z corresponding to a trajectory to be processed according to S; wherein, Z meets the following conditions: ; t n is the time corresponding to the nth ADS-B data; t i is the time corresponding to the ith ADS-B data; v(t i ) is the speed corresponding to the ith ADS-B data; is the window average speed corresponding to the ith ADS-B data; h(t i ) is the height corresponding to the ith ADS-B data; is the window average height corresponding to the ith ADS-B data; An altitude determination unit, configured to obtain the preset basic cruise altitude if Z is greater than the preset data noise threshold. Wherein, the preset basic cruise altitude is determined according to the flight altitude corresponding to each ADS-B data in S; the preset basic cruise altitude is less than the maximum flight altitude corresponding to the flight altitudes corresponding to the ADS-B data. A phase division unit, configured to divide the trajectory to be processed into flight phases according to the preset basic cruise altitude. Wherein, the flight phases include a climbing phase, a cruising phase, and a descending phase. Wherein, the altitude determination unit is further configured to execute the following steps: Sort the flight altitudes corresponding to each ADS-B data in S in descending order to obtain a flight altitude list h = (h1, h2, …, h a , …, h n ); a = 1, 2, …, n; where h a is the flight altitude ranked at the a-th position; Obtain a preset number of flight altitudes in h in descending order to obtain a list of key flight altitudes Gh = (Gh1, Gh2, …, Gh x , …, Gh y ); x = 1, 2, …, y; where y is the preset number; Gh x is the x-th key flight altitude; Determine MIN(Gh) as the preset basic cruise altitude. Wherein, MIN() is a preset minimum value determination function.

7. A non-transitory computer-readable storage medium, characterized in that, At least one instruction or at least one program is stored in the storage medium, and the at least one instruction or the at least one program is loaded and executed by a processor to implement the method according to any one of claims 1-5.

8. An electronic device, characterized in that, It includes a processor and the non-transitory computer-readable storage medium described in claim 7.

Citation Information

Patent Citations

  • ADS-B data filtering method and device, computer device and storage medium

    CN113257044A

  • Pilot situation awareness enhancement method for free flight stage of commercial aircraft

    CN117216569A