Flight phase determination method and device in flight process, medium and equipment

Through the Hidden Markov Model (HMM) combined with the speed and altitude of ADS-B data, the accuracy problem of aircraft flight trajectory phase division is solved, and accurate flight phase identification is achieved under complex conditions.

CN120371892AActive Publication Date: 2025-07-25MOBILE TECH COMPANY CHINA TRAVELSKY HLDG

Patent Information

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

AI Technical Summary

Technical Problem

The prior art is difficult to accurately divide the various stages of the aircraft's flight trajectory under complex flight conditions. The measurement error of a single sensor data and signal interference lead to insufficient division accuracy of the flight trajectory stage.

Method used

The Hidden Markov model (HMM) is used to combine the speed and altitude of ADS-B data as the observation sequence, and the flight phase slitting points are identified through training models, and the learning ability of the HMM model is used to accurately predict flight phase transitions.

Benefits of technology

It improves the accuracy of flight phase division, ensures the precise division of aircraft flight trajectories under complex flight conditions, and reduces the impact of sensor errors and signal interference.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120371892A_ABST
    Figure CN120371892A_ABST
Patent Text Reader

Abstract

The invention provides a flight stage determination method and device in a flight process, a medium and equipment, and relates to the technical field of data processing, and the method comprises the steps: obtaining a speed-height array list ZS corresponding to a target aircraft executing a flight task in response to the received ADS-B data returned by the target aircraft executing the flight task; and inputting the ZS and the QF into an HMM (Hidden Markov Model) to obtain a prediction result, marking the prediction result until two predicted target segmentation points are obtained, and ending the prediction. According to the method, the speed and the height serve as the observation sequence of the HMM model, the HMM model can predict the hidden state corresponding to the next ADS-B data more conveniently, and due to the learning ability of the HMM model, the predicted result is more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] In the modern aviation field, with the continuous improvement of aircraft performance and the increasing complexity of flight missions, it has become increasingly crucial to accurately divide each stage of the flight trajectory during aircraft flight. This not only helps airlines conduct refined flight operation management but also provides key data support for aircraft manufacturers to optimize aircraft design.

[0003] During actual flight, an aircraft is affected by various factors such as meteorological conditions like strong wind shear and atmospheric turbulence, as well as the unique topography and runway conditions of different airports. These factors can cause deviations between the actual flight trajectory of the aircraft and the preset model, making it difficult to accurately define each stage of the flight trajectory in related technologies. Some technologies that rely on single-sensor data for trajectory division have deficiencies in data accuracy and integrity due to problems such as measurement errors and signal interference in the sensors themselves, thus affecting the accuracy of flight trajectory stage division. Therefore, there is an urgent need for a technology that can accurately divide each stage of the aircraft flight trajectory under complex flight conditions. Summary of the Invention

[0004] In view of the above technical problems, the present application provides a method, device, medium, and equipment for determining flight stages during flight, which at least partially solves the problems existing in the prior art.

[0005] In the first aspect of the present application, there is provided a method for determining flight stages during flight. S100, in response to receiving ADS-B data returned by a target aircraft executing a flight mission, obtain a 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 in the same flight stage received by the target aircraft executing the flight mission up to the current time; ZS v is the speed-altitude array corresponding to the v-th ADS-B data in the same flight stage received by the target aircraft executing the flight mission up to the current time; 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 stage segmentation point; QF v =1 indicates that ZSv The corresponding ADS-B data is the flight phase segmentation point;

[0006] S200, input ZS and QF into the HMM model to obtain the prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends; wherein, the prediction result is used to indicate 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.

[0007] In the second aspect of the present application, a flight phase determination device during flight is provided, and the device includes:

[0008] An array acquisition unit, configured to, in response to receiving ADS-B data returned by a target aircraft performing a flight mission, acquire a speed-altitude array list ZS=(ZS1, ZS2,..., ZS v ,..., ZS w ) corresponding to the target aircraft performing the flight mission; v = 1, 2,..., w; wherein, w is the number of ADS-B data in the same flight phase received by the target aircraft performing the flight mission up to the current time; ZS v is the speed-altitude array corresponding to the v-th ADS-B data in the same flight phase received by the target aircraft performing the flight mission up to the current time; ZS has a corresponding segmentation point recognition result sequence QF=(QF1, QF2,..., QF v ,..., QF w ); wherein, QF v is the segmentation point recognition result corresponding to ZS v ; QF v =0 or QF v =1; wherein, 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;

[0009] A prediction unit, configured to input ZS and QF into the HMM model to obtain the prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends; wherein, the prediction result is used to indicate 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.

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

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

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

[0013] In the method for determining a flight phase during a flight process provided by the present application, the observed values of the HMM model include the speed and time in each ADS-B data. This is 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 are mutually restricted. In this embodiment, the HMM model is used as the prediction model because the HMM model has a learning function. During the level flight phase of the climb or descent phase, since the relationship between its corresponding speed and time is different from that of the cruise phase, 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 process as a cruise process, making the predicted result more accurate. Therefore, the present application uses speed and altitude 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. Description of the Drawings

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

[0015] Figure 1 It is a flowchart of the method for determining a flight phase during a flight process provided by an embodiment of the present application;

[0016] Figure 2 It is a structural block diagram of the device for determining a flight phase during a flight process provided by an embodiment of the present application. Detailed Embodiments

[0017] The following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to 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 the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative efforts belong to the scope of protection of the present application.

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

[0019] It should be noted that the following describes various aspects of embodiments within the scope of the appended claims. It should be apparent 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 this method can be implemented using other structures and / or functionality in addition to one or more of the aspects described herein.

[0020] Please refer to Figure 1 As shown, an embodiment of the present application provides a method for determining a flight phase during flight. The method includes:

[0021] S100, in response to receiving ADS-B data returned by a target aircraft performing a flight mission, obtaining a speed-altitude array list ZS=(ZS1, ZS2,..., ZS v ,..., ZS w ); v = 1, 2,..., w; where w is the number of ADS-B data in the same flight phase received by the target aircraft performing the flight mission as of the current time; ZS vThe v-th speed-altitude array corresponding to the ADS-B data in the same flight phase received by the target aircraft performing a flight mission as of the current time; 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.

[0022] Specifically, every time the ADS-B data returned by the target aircraft performing a flight mission is received, a corresponding list of speed-altitude arrays ZS is obtained. Here, all the arrays in the list of speed-altitude arrays 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 list of speed-altitude data 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 list of speed-altitude arrays 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.

[0023] Furthermore, ZS has a corresponding segmentation point recognition result sequence QF. Among them, each recognition result in QF is the recognition result obtained by the HMM model on whether this ADS-B data is a target segmentation point. Among them, 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.

[0024] S200, input ZS and QF into the HMM model to obtain a prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends; where the prediction result is used to indicate 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.

[0025] 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 indicates whether an ADS-B data received after the current time is the target segmentation point.

[0026] The HMM model is the Hidden Markov Model. The HMM model here is trained based on the complete to-be-processed trajectories that have been completed within several historical time periods, 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 and being the core of the dynamic change of the HMM model. The observation probability matrix gives the probability of generating each observation value under 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.

[0027] In the present application, the observation values of the above model include the speed and time in each ADS-B data because during the flight climb or descent process, there are processes such as 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 its corresponding speed and time is different from that in the cruise stage, the HMM model will not identify the processes of climb - level flight - climb - level flight - climb or descent - level flight - descent - level flight during the flight climb or descent process as the cruise process, making the predicted result more accurate. Therefore, in this embodiment, using the speed and altitude as the observation sequence of the HMM model 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.

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

[0029] S300, 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 current target aircraft received when predicting a target segmentation point; GQ z is the speed-altitude array corresponding to the z-th ADS-B data returned by the current target aircraft received when predicting a target segmentation point; GQ z =(gv z , gh z ); gv z is the speed corresponding to GQ z ; gh z is the altitude corresponding to GQ z .

[0030] S400, obtain the corresponding key speed-altitude determinant according to GQ

[0031] S500, if GH is greater than the preset determinant threshold, 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.

[0032] In this embodiment, when a target segmentation point is predicted, the target segmentation point is the segmentation point between the climbing stage and the cruising stage 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 determining the target segmentation point, 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 states contains the speed-altitude data corresponding to part of the climbing stage, which will make the prediction of the next target segmentation point inaccurate. 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 climbing stage is not included after the first target segmentation point obtained by the HMM model, and all are data of the cruising stage. 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 climbing stage 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 in sequence to obtain the updated GQ, or the bisection method can be used to re-determine the target segmentation point. The speed-altitude determinants composed of 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.

[0033] In an exemplary embodiment of the present application, if the mission of the target aircraft executing the flight mission ends and a trajectory to be processed is obtained, after step S200, the method further includes:

[0034] S600, obtaining a preset basic cruising altitude; wherein, the preset basic cruising altitude is determined according to the flight altitude corresponding to each ADS-B data in S.

[0035] Specifically, the preset basic cruising 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 cruising altitude selected after removing the noise data from many ADS-B data. Among them, the maximum flight altitude corresponding to the flight altitude of the ADS-B data may be noise data.

[0036] S700. Obtain a first division point and a second division point according to a preset basic cruise altitude.

[0037] S800. If the positions of the first division point and the second division point do not correspond to the same two predicted target division points, replace the two predicted target division points according to the first division point and the second division point, and divide the to-be-processed trajectory into flight phases; wherein, the flight phases include a climb phase, a cruise phase, and a descent phase.

[0038] Specifically, since the flight trajectory will be processed after the flight of the aircraft ends, the division points determined according to the to-be-processed trajectory obtained after the flight ends are more accurate.

[0039] In an exemplary embodiment of the present application, step S600 includes:

[0040] S610. 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.

[0041] S620. Obtain a preset number of flight altitudes in h in descending order to obtain a key flight altitude list Gh = (Gh1, Gh2,..., Gh x ,..., Gh y ); y is the preset number; Gh x is the x-th key flight altitude.

[0042] S630. Determine MIN(Gh) as the preset basic cruise altitude; wherein, MIN() is a preset minimum value determination function.

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

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

[0045] wherein, L is the flight distance corresponding to the to-be-processed trajectory.

[0046] Here, y is a preset quantity, and the magnitude of the quantity of y represents the amount of the so-called noise height. 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 quantity 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 quantity of noises, showing a square multiple growth, while the impact of the flight distance on the quantity of noise height is less than the impact of the ADS-B data quantity on the quantity of noises.

[0047] In an exemplary embodiment of the present application, step S700 includes:

[0048] S710, obtaining a distance difference list C = (C1, C2,..., C i ,..., C n ); where Ci i is the i-th distance difference; Ci i = |α × MIN(Gh) - h(ti i )|; α is a distance adjustment parameter; 0 < α < 1.

[0049] Specifically, the height differences between α × MIN(Gh) and each flight height are obtained. Here, α is a height adjustment parameter. In order to ensure that the obtained cruise height is more accurate, a height adjustment parameter is set. Based on the preset basic cruise height, a more accurate possible cruise height is further generated, and α meets the following conditions:

[0050] α = α' × β;

[0051] α' is a basic height adjustment parameter; β is a fluctuation adjustment parameter.

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

[0053] S001, obtaining the height 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 a historical height 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; Lhe e is the height 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 in the cruise stage; Lhe e = (Lhe e,1 , Lhee,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 Lh e the altitude corresponding to the r - th ADS - B data included in Lh

[0054] S002, according to Lh, obtain the historical average fluctuation value PB of the trajectory to be processed, PB = avg((1 / f(e))Σ f(e) r=1 (Lh e,r - avg(Lh e )) 2 ); where avg() is a preset average value determination function

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

[0056] In this embodiment, by setting the fluctuation adjustment parameter, the final value of the altitude adjustment parameter is determined. Among them, 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 of 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 lower, 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 higher, so at this time β > 1

[0057] This embodiment makes the finally determined cruise altitude consider the influence of noise. When there is noise, part of the noise influence is filtered out. 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 to adjust the cruise altitude, so that the finally determined cruise altitude is more accurate

[0058] S720, according to C, obtain the key distance difference list GC = (GC1, GC2, …, GC c , …, GC d ); c = 1, 2, …, d; where d is the number of key distance differences; GCc is the c-th critical distance difference; GC c is less than a preset distance difference threshold value.

[0059] Specifically, after determining the most likely cruise altitude, several ADS-B data with altitude differences less than a preset altitude difference threshold value from this cruise altitude are obtained, and these are all the ADS-B data included in the cruise phase.

[0060] S730, determine the position corresponding to the earliest time in GC in the to-be-processed trajectory as the first division point, and the position corresponding to the latest time in the to-be-processed trajectory as the second division point.

[0061] Specifically, determine the position corresponding to the earliest time in GC in the to-be-processed trajectory as the first division point, and the position corresponding to the latest time in the to-be-processed trajectory 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.

[0062] In an exemplary embodiment of the present application, before step S600, the method further includes:

[0063] S601, obtain the ADS-B data corresponding to the to-be-processed trajectory 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 to-be-processed trajectory; S i is the i-th 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.

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

[0065] S602, according to S, obtain the data noise dt of the to-be-processed trajectory; where 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.

[0066] 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, the speed noise and altitude noise refer to the unstable and irregular fluctuation phenomena of speed and altitude data, just like there is "" interference doped in the data.

[0067] 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 the 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 altitude corresponding to the 5th ADS-B data is the arithmetic mean of the altitude corresponding to the 1st ADS-B data to the altitude corresponding to the 5th ADS-B data.

[0068] S603, if Z is greater than the preset data noise threshold, then jump to step S600.

[0069] Specifically, if Z is greater than the preset data noise threshold, it means that the corresponding data noise in the trajectory to be processed is relatively large, and the obtained preset cruise altitude is the data after removing part of the noise. Determining the segmentation point according to the preset cruise altitude can improve the accuracy of flight phase division and reduce the influence of noise on the segmentation result.

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

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

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

[0073] S606, according to the two segmentation points, segment the flight trajectory to obtain a climb phase, a cruise phase, and a descent phase.

[0074] In this embodiment, if Z is less than or equal to a preset data noise threshold, it indicates 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 point with the highest flight altitude in the ADS-B data. This point is most likely in the middle stage of the entire cruise phase. Then, based on this point, the start point, and the end point of the trajectory to be processed, use the bisection method to obtain two target segmentation points. The cruise phase is the part between the two target segmentation points. If 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, it indicates that all ADS-B data between the two target segmentation points is almost collinear. Under normal circumstances, it should be 0. However, 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, based on the two segmentation points, segment the flight trajectory to obtain the climb phase, cruise phase, and descent phase. 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 results and more accurate segmentation results.

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

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

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

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

[0079] Specifically, the key trajectory point is the trajectory point corresponding to a certain ADS-B data on the key trajectory, 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. In this case, the trajectory point corresponding to the ADS-B data with the smallest time difference from the intermediate time point, that is, the ADS-B data closest to the intermediate time point on the key trajectory, is determined as the key trajectory point, that is, the first "divide into two" is completed to obtain the first key trajectory and the second key trajectory. Among them, the critical points of the first key trajectory and the second key trajectory are the key trajectory points; the first key trajectory is close to the target trajectory point; the second trajectory point is far from the target trajectory point.

[0080] S6053. According to 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.

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

[0082] S6054. According to Q, obtain the corresponding speed-altitude determinant

[0083] S6055. If SG is less than or equal to a preset determinant threshold, then 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 segmentation point is obtained. Among them, the value of the speed-altitude determinant corresponding to all ADS-B data between the target trajectory point and the target segmentation point is less than or equal to the preset determinant threshold; and the value of the determinant between the target trajectory point and the trajectory point of the adjacent ADS-B data in the direction away from the target trajectory point is greater than the preset determinant threshold.

[0084] Specifically, if SG is less than or equal to the preset determinant threshold, it indicates that all ADS-B data included in this segment are almost collinear, that is, this segment is all part of the cruise phase. At this time, determine the other segment (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 segment between the key trajectory point and the end point as the key trajectory for bisection. If not, bisect this segment until the target segmentation point is obtained. After determining the segmentation point between the target trajectory point and the end point, further use the same method to determine the segmentation point between the target trajectory point and the start point.

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

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

[0087]

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

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

[0090]

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

[0092] Please refer to Figure 2 As shown in

[0093] An array acquisition unit, configured to obtain a speed-altitude array list ZS = (ZS1, ZS2, …, ZS v , …, ZS w ) corresponding to a target aircraft performing a flight mission in response to receiving ADS-B data returned by the target aircraft performing the flight mission; where v = 1, 2, …, w; and w is the number of ADS-B data in the same flight phase received by the target aircraft performing the flight mission as of the current time; ZS v is the speed-altitude array corresponding to the v-th ADS-B data in the same flight phase received by the target aircraft performing the flight mission as of the current time; 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.

[0094] A prediction unit, configured to input ZS and QF into an HMM model to obtain a prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends; where the prediction result is used to indicate 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.

[0095] In an exemplary embodiment of the present application, an electronic device capable of implementing the above method is further provided.

[0096] Those skilled in the art of the present application can understand that various aspects of the present application can be implemented as a system, method, or 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 "system" here.

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

[0098] 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 system components (including the memory and the processor).

[0099] Among them, the memory stores program code, and the program code 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 of the present specification.

[0100] 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).

[0101] The memory may also include a program / utility having a set (at least one) of program modules. Such program modules include, but are not limited to: an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include the implementation of a network environment.

[0102] 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 bus structure in a variety of bus structures.

[0103] The electronic device may also communicate with one or more external devices (such as a keyboard, a pointing device, a Bluetooth device, etc.), and 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 a 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 systems, tape drives, and data backup storage systems, etc.

[0104] 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 by a combination of software and necessary hardware. Therefore, the technical solutions according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can 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 can 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.

[0105] In an exemplary embodiment of the present application, there is also provided a computer-readable storage medium, on which there is a program product capable of implementing the above method of this specification. 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 enable 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.

[0106] 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, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0107] 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 used by or in combination with an instruction execution system, apparatus, or device.

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

[0109] 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 using an Internet service provider to connect through the Internet).

[0110] 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, rather than 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, for example, in multiple modules.

[0111] 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 two or more of the above-mentioned modules or units 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.

[0112] The above is only the specific implementation manner 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 by 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 flight phases during flight, characterized in that, The method includes: S100, in response to receiving the ADS - B data returned by the target aircraft performing a flight mission, obtain the speed - altitude array list ZS=(ZS1, ZS2, …, ZS v , …, ZS w ); where v = 1, 2, …, w; w is the number of ADS - B data in the same flight phase received by the target aircraft performing a flight mission up to the current time; ZS v is the speed - altitude array corresponding to the v - th ADS - B data in the same flight phase received by the target aircraft performing a flight mission up to the current time; 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; S200. Input ZS and QF into the HMM model to obtain a prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends. Wherein, the prediction result is used to indicate 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.

2. The method for determining a flight phase during a flight according to claim 1, wherein After step S100, the method further includes: S300, input ZS and QF into the HMM model. When a target segmentation point is predicted, for each piece of 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 pieces 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 piece of 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 . S400, obtain the corresponding key speed-altitude determinant according to GQ S500. If GH is greater than the preset determinant threshold, 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.

3. The method for determining a flight phase during a flight according to claim 1, wherein If the mission execution of the target aircraft performing a flight mission ends and a trajectory to be processed is obtained, after step S200, the method further includes: S600. 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. S700. Obtain a first segmentation point and a second segmentation point according to the preset basic cruise altitude. S800. If the positions of the first segmentation point and the second segmentation point do not correspond to the same as the two predicted target segmentation points, replace the two predicted target segmentation points according to the first segmentation point and the second segmentation point, and divide the trajectory to be processed into flight phases. Wherein, the flight phases include a climb phase, a cruise phase, and a descent phase.

4. The method for determining a flight phase during a flight according to claim 3, wherein Step S600 includes: S610, 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; S620, 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; S630. Determine MIN(Gh) as the preset basic cruise altitude; wherein, MIN() is a preset minimum value determination function.

5. The method for determining a flight phase during a flight according to claim 4, characterized in that y conforms to the following characteristics: y = (n / L)×(n / 10000); Wherein, L is the flight distance corresponding to the trajectory to be processed.

6. The method for determining a flight stage during a flight according to claim 3, wherein Step S700 includes: S710, obtain the distance difference list C = (C1, C2,..., C i ,..., C n ); where C i is the i-th distance difference; C i = |α × MIN(Gh) - h(t i )|; α is the distance adjustment parameter; 0 < α < 1; S720, according to C, obtain the critical distance difference list GC = (GC1, GC2,..., GC c ,..., GC d ); c = 1, 2,..., d; where d is the number of critical distance differences; GC c is the c-th critical distance difference; GC c is less than the preset distance difference threshold; S730. Determine the position corresponding to the earliest time in GC in the trajectory to be processed as the first segmentation point, and the position corresponding to the latest time in the trajectory to be processed as the second segmentation point.

7. The method for determining a flight phase during a flight according to claim 6, characterized in that, α conforms to the following conditions: α=α’×β; α’ is the basic distance adjustment parameter; β is the fluctuation adjustment parameter. 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, according to Lh, obtain the historical average fluctuation value PB corresponding to the trajectory to be processed, PB = avg((1 / f(e))Σ f(e) r=1 (Lh e,r - avg(Lh e )) 2 )); where avg() is a preset average value determination function; S003. If PB is greater than the preset fluctuation value threshold, determine β < 1, otherwise determine β > 1.

8. A device for determining a flight phase during flight, characterized in that, The device includes: An array acquisition unit, configured to obtain a speed-altitude array list ZS = (ZS1, ZS2,..., ZS v ,..., ZS w ) corresponding to a target aircraft performing a flight mission in response to receiving ADS-B data returned by the target aircraft performing the flight mission; where v = 1, 2,..., w; w is the number of ADS-B data in the same flight phase received by the target aircraft performing the flight mission up to the current time; ZS v is the speed-altitude array corresponding to the v-th ADS-B data in the same flight phase received by the target aircraft performing the flight mission up to the current time; 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; A prediction unit, configured to input ZS and QF into the HMM model to obtain a prediction result and perform marking until two predicted target segmentation points are obtained, then the prediction ends. Wherein, the prediction result is used to indicate 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.

9. 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-7.

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

Citation Information

Patent Citations

  • Longitudinal decoupling control method for multiple-control-surface unmanned aerial vehicle based on model predictive control

    CN105259904A

  • Method for predicting flight duration of each stage of flight, electronic equipment and storage medium

    CN115496289A

  • Aircraft trajectory prediction system based on semi-supervised learning and neural network

    CN117332327A

  • Aircraft performance monitoring model construction method and device and electronic equipment

    CN117786858A

  • HMM model-based abnormal data determination method and device, medium and equipment

    CN117896181A

Cited By

  • An ADS-B track classification method based on three-dimensional Kalman filtering and multi-dimensional motion features

    CN122673776A