Flight data packet data augmentation method, system and medium for flight simulator
By using Markov chain model and historical flight data in the flight simulator, flight data that is more in line with actual physical laws is generated, which solves the problem of insufficient range and volume of flight data packets in domestic flight simulators, and improves training effects and scene diversity.
Patent Information
- Application Number
- CN202411553686.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-03
- Publication Date
- 2025-04-04
AI Technical Summary
There are gaps in domestic high-level flight simulators in high-precision flight simulation technology, especially in terms of the range and volume of flight data packets, which affects the design and training effect of flight simulators.
The flight data packet data augmentation method based on the principle of flight mechanics is adopted, combined with the Markov chain model and historical flight data data, and the flight data data is generated through the state transition probability matrix to generate flight data that is more in line with the actual physical laws.
It improves the effect of the flight simulator system model training and the diversity of training scenarios, ensures that the engine parameters match the flight status of the aircraft, and improves the authenticity, scientificity and rationality of the data.
Smart Images

Figure CN119760332A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of flight simulation, in particular to data augmentation of a flight data packet, and specifically to a method, system and medium for augmenting the flight data packet of a flight simulator. Background Art
[0002] High-level flight simulators provide strong support for flight simulation training. They can digitally restore the performance and functions of real aircraft and flight characteristics in any meteorological and geographical environment at a 1:1 ratio. Flight simulators are mainly used for flight training, providing realistic training experience for pilots' basic driving, special situation training, networked confrontation and other specific combat scenarios. They have become an essential training method for pilots in the military and civil aviation fields of various countries, and an effective means to quickly improve the quality of pilot training and form combat effectiveness, ensure training safety, shorten training cycles and reduce training costs.
[0003] At present, high-level flight simulators involve high-precision flight simulation technology, which is mainly monopolized by foreign countries, such as Boeing in the United States, CAE in Canada, Thales in France, etc. The development of flight simulators in my country started late, and there is a big gap with foreign countries, especially in high-precision motion platforms, high-definition and restored visual systems, control load systems and flight data packages, which directly affect the design of flight simulators. The flight data package contains various parameter information of the aircraft during the flight, such as flight speed, altitude, attitude angle (pitch angle, roll angle, yaw angle), engine parameters (thrust, speed, fuel consumption rate), etc. These data are the basis for the flight simulator to build a virtual flight environment. By reading and parsing these data, the simulator can reproduce the flight status of the aircraft in the virtual scene, and provide scenes and flight data sources for specific combat scenarios such as basic driving, special situation training, and networked confrontation. They are also key data for manufacturing and training high-level flight simulators, and play a key role in the aircraft dynamics control model, control load training model, and scenario model of training simulation. Therefore, the integrity, accuracy, data range and volume of the flight data packet determine the realism of the flight simulator in terms of aircraft system functions, flight characteristics, sensory cues, etc., which directly affects the quality and effectiveness of flight training.
[0004] Due to the late development and start of high-level flight simulators in China, the scope and volume of flight data packets are relatively small. There is a clear gap in the system model training of high-level flight simulators and the subsequent training scenario generation compared with foreign countries. How to augment the data in the flight data packet based on the limited resource flight data packet is the key to improving the training effect of the flight simulator system model and generating diversified training scenarios in training simulation. Summary of the invention
[0005] In view of the defects and shortcomings of the prior art, according to a first aspect of the present invention, a method for augmenting flight data packets of a flight simulator is proposed, comprising:
[0006] Step 1, dividing the flight process into different flight phase states and flight condition states, and constructing a flight state space based on the flight phase state and the flight condition state combination; the flight phase state includes one of "take-off", "cruise", and "landing"; the flight condition state includes one of "normal flight", "mild airflow disturbance", "moderate airflow disturbance", and "high airflow disturbance";
[0007] Step 2: Obtain and parse historical flight data packets to obtain the flight phase status, flight condition status, and flight parameters corresponding to each flight record during the flight process;
[0008] Step 3, traverse the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis, count the number of state transitions and establish a state transition count matrix N;
[0009] Step 4: construct a state transition probability matrix P of the Markov chain model according to the state transition count matrix N;
[0010] Step 5: Starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, wherein the length of the flight state sequence is determined according to a preset flight time or flight mission;
[0011] Step 6: Generate flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence.
[0012] As an optional embodiment, in step 3, the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis are traversed, the number of state transitions is counted and a state transition count matrix N is established, including:
[0013] According to the flight parameters, determine the flight status corresponding to each flight record, that is, the combination of the flight phase status and the flight condition status;
[0014] Configure a unique code for each flight state as an index;
[0015] Traverse the flight records. For each flight record, traverse the status information in chronological order, starting from the initial flight status, and record each flight status transition;
[0016] A two-dimensional state transition count matrix N is established, in which each matrix element N[i][j] represents the number of transitions from state i to state j. Initially, all elements of the state transition count matrix N are set to 0. In the process of traversing the flight records, each time a transition from state i to state j is found, the value of N[i][j] is increased by 1. The size of the state transition count matrix N is n*n, which represents the size of the flight state space.
[0017] As an optional embodiment, in step 4, constructing a state transition probability matrix P of a Markov chain model according to the state transition count matrix N includes:
[0018] Based on the obtained two-dimensional state transition count matrix N, calculate the sum of the number of transitions in each row, that is, calculate the sum of all elements in each row, and the sum of the number of transitions in the i-th row is recorded as sum_i:
[0019] For any matrix element P[i][j] in the state transition probability matrix P, it represents the probability of transitioning from state i to state j:
[0020] P[i][j] = N[i][j] / sum_i;
[0021] That is, the probability P[i][j] of transitioning from state i to state j is determined by dividing the number of transitions from state i to state j by the number of all transitions from state i.
[0022] Thus, the state transition probability matrix P based on the historical flight data is calculated.
[0023] As an optional embodiment, starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, including:
[0024] Starting from the initial flight state, the transition probability vector of the current state is obtained according to the above state transition probability matrix P; if the current state is i, the corresponding transition probability vector P[i] is used to determine the position of the transition probability vector in the matrix N;
[0025] Use a random number generator to generate a random number r in the interval [0,1];
[0026] Starting from the first element of the transition probability vector, accumulate the values of the elements one by one, and check whether the accumulated sum exceeds the random number r; when the accumulated sum exceeds r for the first time, the corresponding index is the index j of the next state;
[0027] According to the index j of the next state, the newly determined state S[j] is added to the flight state sequence, and the flight state sequence is updated;
[0028] Update the current state, update the current state i to j, so that the new state can be used to obtain the transition probability vector in the next time step;
[0029] Repeat the above operations of updating the flight state sequence and updating the current state until a flight state sequence of the required length is generated.
[0030] As an optional embodiment, in step 6, according to the flight state sequence, flight parameters corresponding to the flight phase state and the flight condition state in each flight state space are generated, including the generation of flight data in the take-off phase, the cruising phase and the landing phase.
[0031] According to a second aspect of the present invention, a computer system is provided, comprising:
[0032] one or more processors;
[0033] The memory stores operable instructions, which, when executed by the one or more processors, enable the one or more processors to perform operations, wherein the operations include the process of executing the aforementioned method.
[0034] According to a third aspect of the present invention, a computer-readable medium storing software is provided, wherein the software includes instructions executable by one or more computers, and the instructions, when executed by the one or more computers, perform the process of the aforementioned method.
[0035] Compared with the prior art, the flight data packet data augmentation method of the flight simulator of the present invention adopts a flight data packet data augmentation method based on the principle of flight mechanics, combines a Markov chain model and historical flight data packet data, performs data augmentation on the basis of real flight data, and calculates changes in flight attitude, speed, attitude angle, thrust, etc. in different flight phases based on physical models of aerodynamics, dynamics and kinematics, so as to generate flight data that is more in line with actual physical laws, ensure that changes in engine parameters (such as thrust, fuel consumption rate) match the flight status (speed, altitude, attitude) of the aircraft, and improve the authenticity, scientificity and rationality of the data.
[0036] The present invention uses a Markov chain model to simulate the sequence change of flight state. Based on the assumption that the current state is only related to the previous state, the state transition probability matrix is defined to describe the transition between flight states. The state transition probability is determined according to historical actual flight data, and then the Markov chain model is used to generate a flight state sequence. In each state, the corresponding flight parameter data is generated in combination with a random process, and the physical model is constrained based on flight dynamics and aircraft parameters to better simulate the dynamic changes and coherence during the flight process.
[0037] It should be understood that all combinations of the aforementioned concepts and the additional concepts described in more detail below can be considered as part of the inventive subject matter of the present disclosure as long as such concepts are not mutually inconsistent. In addition, all combinations of the claimed subject matter are considered as part of the inventive subject matter of the present disclosure.
[0038] The foregoing and other aspects, embodiments and features of the present invention can be more fully understood from the following description in conjunction with the accompanying drawings. Other additional aspects of the present invention, such as the features and / or beneficial effects of the exemplary embodiments, will be apparent from the following description or learned from the practice of the specific embodiments according to the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The accompanying drawings are not intended to be drawn to scale. In the accompanying drawings, each identical or nearly identical component shown in each figure may be represented by the same reference numeral. For clarity, not every component is labeled in each figure. Embodiments of various aspects of the present invention will now be described by way of example and with reference to the accompanying drawings.
[0040] Figure 1 4 is a flow chart of a method for augmenting flight data packets of a flight simulator according to an embodiment of the present invention.
[0041] Figure 2 is an example of a state transition probability matrix according to an embodiment of the present invention. DETAILED DESCRIPTION
[0042] In order to better understand the technical content of the present invention, specific embodiments are given and described as follows in conjunction with the accompanying drawings.
[0043] Various aspects of the present invention are described in this disclosure with reference to the accompanying drawings, in which many illustrative embodiments are shown. The embodiments of the present disclosure are not necessarily intended to include all aspects of the present invention. It should be understood that the various concepts and embodiments introduced above, as well as those described in more detail below, can be implemented in any of many ways, because the concepts and embodiments disclosed by the present invention are not limited to any implementation. In addition, some aspects disclosed by the present invention can be used alone or in any appropriate combination with other aspects disclosed by the present invention.
[0044] {Example 1}
[0045] Combination Figure 1 As shown, the flight data packet data augmentation method of the flight simulator according to this embodiment includes the following steps:
[0046] Step 1, dividing the flight process into different flight phase states and flight condition states, and constructing a flight state space based on the flight phase state and the flight condition state combination; the flight phase state includes one of "take-off", "cruise", and "landing"; the flight condition state includes one of "normal flight", "mild airflow disturbance", "moderate airflow disturbance", and "high airflow disturbance";
[0047] Step 2: Obtain and parse historical flight data packets to obtain the flight phase status, flight condition status, and flight parameters corresponding to each flight record during the flight process;
[0048] Step 3, traverse the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis, count the number of state transitions and establish a state transition count matrix N;
[0049] Step 4: construct a state transition probability matrix P of the Markov chain model according to the state transition count matrix N;
[0050] Step 5: Starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, wherein the length of the flight state sequence is determined according to a preset flight time or flight mission;
[0051] Step 6: Generate flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence.
[0052] As an optional embodiment, in step 1, the flight state space of the Markov chain model is constructed according to the flight phase state and the flight condition state combination.
[0053] As an example, the flight phase state includes one of “take-off”, “cruise”, and “landing”.
[0054] As an example, the flight condition state includes one of: "normal flight", "mild airflow disturbance", "moderate airflow disturbance", and "high airflow disturbance".
[0055] It should be understood that in optional embodiments, the flight phase status may also include other phases, such as climb, descent, etc., and the flight condition status may also include other types, such as different types of "weather disturbances", "visibility levels", "communication failures", "instrument failures", "engine failures", etc.
[0056] To simplify the explanation, the flight phase status of the present invention is explained by taking "take-off", "cruise" and "landing" as examples, and the flight condition status is explained by taking "normal flight", "mild airflow disturbance", "moderate airflow disturbance" and "high airflow disturbance" as examples.
[0057] As an optional embodiment, a flight state space of the Markov chain model is constructed, and the size of the space n is the number of flight states. For example, a state space set S consisting of all flight states represents different stages and possible situations during the flight process.
[0058] S = ["Takeoff - Normal", "Takeoff - Minor Fault", "Cruise - Normal", "Cruise - Airflow Disturbance", "Landing - Normal", "Landing - Fault", ...].
[0059] Each element S[i] in the state space set S represents the i-th flight state, corresponding to a combination of a flight phase and a flight condition.
[0060] As an optional embodiment, in step 3, the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis are traversed, the number of state transitions is counted and a state transition count matrix N is established, including:
[0061] According to the flight parameters, determine the flight status corresponding to each flight record, that is, the combination of the flight phase status and the flight condition status;
[0062] Configure a unique code for each flight state as an index;
[0063] Traverse the flight records. For each flight record, traverse the status information in chronological order, starting from the initial flight status, and record each flight status transition;
[0064] A two-dimensional state transition count matrix N is established, in which each matrix element N[i][j] represents the number of transitions from state i to state j. Initially, all elements of the state transition count matrix N are set to 0. In the process of traversing the flight records, each time a transition from state i to state j is found, the value of N[i][j] is increased by 1. The size of the state transition count matrix N is n*n, which represents the size of the flight state space.
[0065] As an optional embodiment, in step 4, a state transition probability matrix P of a Markov chain model is constructed according to the state transition count matrix N, including:
[0066] Based on the obtained two-dimensional state transition count matrix N, calculate the sum of the number of transitions in each row, that is, calculate the sum of all elements in each row, and the sum of the number of transitions in the i-th row is recorded as sum_i:
[0067] For any matrix element P[i][j] in the state transition probability matrix P, it represents the probability of transitioning from state i to state j:
[0068] P[i][j] = N[i][j] / sum_i;
[0069] That is, the probability P[i][j] of transitioning from state i to state j is determined by dividing the number of transitions from state i to state j by the number of all transitions from state i.
[0070] Thus, the state transition probability matrix P based on the historical flight data is calculated.
[0071] As an optional embodiment, in step 5, starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, including:
[0072] Starting from the initial flight state, the transition probability vector of the current state is obtained according to the above state transition probability matrix P; if the current state is i, the corresponding transition probability vector P[i] is used to determine the position of the transition probability vector in the matrix N;
[0073] Use a random number generator to generate a random number r in the interval [0,1];
[0074] Starting from the first element of the transition probability vector, accumulate the values of the elements one by one, and check whether the accumulated sum exceeds the random number r; when the accumulated sum exceeds r for the first time, the corresponding index is the index j of the next state;
[0075] According to the index j of the next state, the newly determined state S[j] is added to the flight state sequence, and the flight state sequence is updated;
[0076] Update the current state, update the current state i to j, so that the new state can be used to obtain the transition probability vector in the next time step;
[0077] Repeat the above operations of updating the flight state sequence and updating the current state until a flight state sequence of the required length is generated.
[0078] As an optional embodiment, in step 5, the random number generator is a normal distribution random number generator.
[0079] As an optional embodiment, in step 6, generating flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence, including generating flight data in the take-off phase, includes the following process:
[0080] Step 1.1: Generate and update the flight speed during takeoff
[0081] For the flight speed data, obtain the reference speed range (V min -V max );
[0082] At the initial moment, the flight speed is set to static state, V0 = 0;
[0083] As the time step Δt advances, the flight speed increases according to the uniformly accelerated linear motion formula V=V0+α*Δt, where the acceleration α is calculated based on the engine thrust T, the aircraft mass m and the drag D: α=(TD) / m;
[0084] During takeoff, the engine thrust T gradually increases to the flight thrust T TO ;
[0085] The drag D is related to the flight speed and aerodynamic characteristics and is expressed as:
[0086]
[0087] Where ρ is the air density, S is the wing area, and C D is the drag coefficient;
[0088] For each time step, the speed is updated according to the engine thrust and drag at the current state until the takeoff safety speed is reached;
[0089] Step 1.2: Generation and updating of flight attitude angles during takeoff
[0090] During the takeoff phase, the pitch angle θ gradually increases so that the aircraft can obtain sufficient lift, and the initial pitch angle θ0 is set to 0;
[0091] Pre-configure the pitch rate based on the aircraft's takeoff performance and pilot operation
[0092] After each time step Δt, the pitch angle is updated to
[0093] During normal takeoff, the roll angle φ and yaw angle ψ are maintained within a preset range of less than or equal to 5° to ensure that the aircraft takes off along the runway;
[0094] When encountering crosswind, the wind speed is V wind-side The roll angle φ is adjusted according to to adjust;
[0095] Step 1.3: Generation and updating of flight altitude during takeoff
[0096] During the take-off phase, the initial flight altitude h0 is set to 0;
[0097] The flight altitude is dynamically updated according to the vertical speed of the flight. After each time step Δt, the flight altitude is updated to: h = h0 + V z Δt;
[0098] Among them, V z Represents the vertical velocity, V z =V sinθ.
[0099] As an optional embodiment, in step 6, generating flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence, including generating flight data in the cruise phase, includes the following process:
[0100] Step 2.1: When the flight state is cruise-normal flight in the flight state sequence, configure the cruise speed V cruise It conforms to the normal distribution with mean μ cruise , with standard deviation σ cruise , use the Box-Muller transformation algorithm to generate a standard normal distribution random number z, and use it to determine the fluctuation value ΔV of the cruising speed cruise :
[0101] ΔV cruise =σ cruise z;
[0102] Dynamically update the cruising speed V according to the fluctuation value of the cruising speed cruise :
[0103]
[0104] And, constrain the cruising speed to within the scope;
[0105] Step 2.2: If the flight state is cruise-air disturbance, determine the speed change range according to the different air disturbance intensities, and the speed change range is set to ±ΔV light-turb ; Use a uniformly distributed random number generator to generate a speed change value δV within the speed change range light-turb , where δ represents the random number of speed change, and its value range is [-1, 1]. Therefore, the cruising speed is updated as:
[0106]
[0107] Step 2.3: According to the balance principle between engine thrust T and resistance D in the cruise phase, according to the resistance formula Calculate the drag, taking into account the fluctuation of engine performance, use a normal distribution random number generator to generate a random number ∈, and update the actual engine thrust: T = D + ∈;
[0108] Step 2.4, calculate the fuel consumption rate FC according to the fuel consumption characteristic curve of the engine: FC = f(T); consider the fluctuation of the fuel system performance, use the normal distribution random number generator to generate a random number ξ, and update the actual fuel consumption rate: FC = f(T) + ξ;
[0109] Step 2.5, according to the atmospheric pressure change in the cruise phase, the vertical movement of the airflow affects the flight altitude in the dynamic cruise phase: First, based on the atmospheric model, establish an exponential model of the atmospheric pressure P changing with the flight altitude h: Where P0 is the sea level pressure, H is the atmospheric height;
[0110] Calculate the theoretical change in flight altitude Δh based on pressure changes pressure ;
[0111] Use the normal distribution random number generation algorithm to generate the height change value Δh caused by the vertical movement of the airflow turbulence ;
[0112] Update flight altitude: h new =h cruise +Δh pressure +Δh turbulence , where h cruise Indicates cruising altitude.
[0113] As an optional embodiment, in step 6, generating flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence, including generating flight data in the landing phase, includes the following process:
[0114] Step 3.1: When the flight state is in the landing stage in the flight state sequence, the flight speed is gradually reduced; the initial landing speed VLD is determined according to the aircraft model, weight and landing conditions; according to the aircraft resistance D and reverse thrust T reverse To calculate the speed reduction; after each time step Δt, the flight speed during the landing phase is updated to V = V0 + βΔt, where β represents the speed change rate during the landing phase:
[0115] Consider the impact of wind speed and direction during landing: if there is a headwind, the ground speed of the aircraft decreases; if there is a tailwind, the ground speed increases, where:
[0116] Under tailwind conditions, the aircraft ground speed V ground Updated to: V ground =V+V wind+head ;
[0117] Under headwind conditions, the aircraft ground speed V ground Updated to: V ground =VV wind-head;
[0118] Among them, V wind+head With V wind-head represent the downwind wind speed and headwind wind speed respectively;
[0119] Step 3.2: During the landing phase, the pitch angle is gradually reduced to allow the aircraft to land smoothly: the initial value of the initial pitch angle θ0' during the landing phase is determined according to the aircraft's approach mode and speed; the pitch angle change rate According to the aircraft's landing performance and the pilot's operating settings, k is a constant determined according to the characteristics of the aircraft;
[0120] After each time step Δt, the pitch angle is updated to
[0121] Step 3.3: The engine thrust or reverse thrust during the landing phase is adjusted according to the aircraft's landing speed and descent rate: for normal landing, the engine thrust is gradually reduced to a lower value or reverse thrust is turned on, and the reverse thrust T reverse The size is determined according to the aircraft speed and landing requirements: reverse thrust T reverse Can be proportional to the aircraft speed: T reverse =ωV, ω is a coefficient determined according to the performance of the aircraft thrust reverser system;
[0122] The fuel consumption rate FC during the landing phase decreases due to the reduction of engine thrust. Considering the fluctuation of fuel system performance, the update of the fuel consumption rate FC during the landing phase is the same as the cruising speed and shows a decreasing trend.
[0123] Step 3.4: During the landing phase, the flight altitude gradually decreases: the rate of descent R of the flight altitude is related to the flight speed V and the pitch angle θ: R = -V sinθ;
[0124] After each time step Δt, the height of the landing phase is updated as: h = h0 + RΔt;
[0125] When the flight altitude approaches the runway altitude, the descent rate and attitude angle of the aircraft are constrained to be within the standard threshold range for safe landing.
[0126] {Example 2}
[0127] In this embodiment, the operation of constructing the state transition probability matrix is described in more detail.
[0128] First, historical flight data packets are collected, which include various status information during the flight, such as flight phases (take-off, cruise, landing), aircraft system status (engine status, instrument status, etc.), and various situations encountered (airflow disturbances, failures, etc.).
[0129] The original historical flight data package data is preprocessed, including outlier / error value removal and time alignment and synchronization processing.
[0130] For example, data points with parameters such as speed and altitude that are beyond the reasonable range may be caused by sensor failure and need to be corrected or deleted to complete data cleaning. Then, different data sources are time-aligned, such as sensor data from different sensor systems of the aircraft, so that the data is consistent on the time axis, so as to accurately analyze the transition sequence between states.
[0131] The data is then divided according to flight missions or flight scenarios, so that each flight record is an independent data recording unit.
[0132] Then, according to the preprocessed flight data packet, the state division and coding are carried out, specifically including: determining the category of flight status according to the key information in the flight data, for example, it can be divided into "take-off", "cruise", and "landing" according to the flight stage; divided into "engine normal", "engine failure", "instrument normal", "instrument failure", etc. according to the aircraft system status; divided into "normal weather", "mild airflow disturbance", "moderate airflow disturbance", "severe airflow disturbance", etc. according to meteorological conditions; then state coding is carried out to assign a unique code to each determined state category. For example, "take-off-engine normal" can be coded as 0, "cruise-mild airflow disturbance" can be coded as 1, and so on. This makes it convenient to process state information in a computer program.
[0133] Then, count the number of state transitions, specifically including: for each flight record, traverse the state information in chronological order. Starting from the initial state, record each state transition. For example, in a flight record, if the initial state is "takeoff-engine normal" (coded as 0), and then transfers to "cruise-mild airflow disturbance" (coded as 1), then record a transition from state 0 to state 1; establish a two-dimensional transition count matrix (N), where N[i][j] represents the number of transitions from state i to state j, and the size of the matrix is equal to the size of the state space multiplied by the size of the state space. For example, if the flight state space has a total of 5 states, the matrix N is a 5×5 matrix. Initially, all elements in the matrix are set to 0. In the process of traversing the flight record, whenever a transition from state i to state j is found, the value of N[i][j] is increased by 1.
[0134] Finally, calculate the state transition probability matrix. Specifically, it includes: calculating the sum of the number of transitions in each row. For each row i of the transition count matrix N, calculate the sum of all elements in the row sum_i, that is: sum_i = ΣN[i][j] (j from 0 to the state space size - 1). The sum sum_i represents the number of all transitions starting from state i; then calculate the state transition probability matrix P. Any element P[i][j] in the state transition probability matrix P represents the probability of transitioning from state i to state j, which is calculated by dividing the number of transitions from state i to state j by the number of all transitions starting from state i, that is: N[i][j] / sum_i. Through such calculations, the state transition probability matrix based on historical flight data is obtained.
[0135] For example, for a state space with three flight states: state 0 (takeoff-normal), state 1 (cruise-normal), state 2 (landing-normal).
[0136] After statistics of historical flight data, the transfer count matrix N is obtained as follows:
[0137]
[0138] Calculate the sum of each row:
[0139] The sum of the first row is 30+20+0=50;
[0140] The sum of the second row is 5+40+10=55;
[0141] The sum of the third row is 0+5+30=35.
[0142] Then the state transition probability matrix P is:
[0143]
[0144] {Example 3}
[0145] In this embodiment, the operation of the aforementioned flight state sequence is described in more detail.
[0146] First, the length of the sequence is determined based on the preset flight time or flight mission.
[0147] For example, taking time collapse into consideration, if you want to simulate a complete flight process, from takeoff to landing, you can determine the sequence length based on the actual flight time of the aircraft and the simulated time step. As an example, assuming that the actual flight time is 2 hours and the simulated time step is 10 seconds, the length of the flight state sequence can be set to 2 hours × 3600 seconds / hour ÷ 10 seconds = 720 states.
[0148] For example, considering the execution of a specific flight mission / scenario, if the purpose is to simulate a specific flight mission, such as emergency response, flight on a specific route, etc., the sequence length can be determined based on the complexity of the mission and the required simulation time. For example, to simulate the emergency landing process of an aircraft after an engine failure, it is necessary to simulate a flight state of several minutes to tens of minutes, and the sequence length is correspondingly shorter.
[0149] Then, an initial state is selected from the flight state space of the Markov chain model. This state can be determined according to the specific simulation scenario. For example, if the scenario is to simulate taking off from an airport, the "takeoff-normal flight" state can be selected as the initial state.
[0150] Then, starting from the selected initial state, a random number generator and a state transition probability matrix are used to iteratively generate a state sequence, including:
[0151] Starting from the selected initial state, obtain the corresponding state transition probability row vector according to the current state. For example, if the current state is "takeoff-normal flight", obtain the row vector corresponding to the state from the state transition probability matrix. This row vector represents the probability of transitioning from the "takeoff-normal flight" state to other states;
[0152] Generate a uniformly distributed random number in the interval [0,1], which will be used to determine the next state;
[0153] Use random numbers and state transition probability row vectors to determine the next state. The specific method is: traverse the state transition probability row vector from left to right, and accumulate the value of each element into a temporary variable; when the value of the temporary variable is greater than the generated random number, the corresponding state is the next state.
[0154] For example, if the state transition probability row vector is [0.2, 0.3, 0.1, 0.4] and the random number is 0.45, first add the first element 0.2 to the temporary variable, and the temporary variable is 0.2. Then add the second element 0.3 to the temporary variable, and the temporary variable is 0.5, which is greater than the random number 0.45. So the next state is the state corresponding to the second element.
[0155] Finally, the determined next state is added to the flight state sequence and the current state is updated to the next state.
[0156] Repeat the above state update and sequence update until the length of the generated sequence reaches a predetermined length.
[0157] Combination Figure 2As shown, assuming that the state space includes the following states: takeoff-normal flight, takeoff-mild air disturbance, cruise-normal flight, cruise-moderate air disturbance, cruise-severe air disturbance, landing-normal flight, landing-low visibility, the state transition probability matrix P is as follows Figure 2 shown.
[0158] If you want to generate a flight state sequence of length 10, assume that the initial state is "take-off-normal flight".
[0159] First iteration:
[0160] The current state is "takeoff-normal flight", and the state transition probability row vector is [0.8, 0.1, 0.05, 0.03, 0.01, 0.005, 0.005].
[0161] Assume that the generated random number is 0.4.
[0162] Traversing the state transition probability row vector, when accumulated to the second element, the temporary variable is 0.8+0.1=0.9, which is greater than the random number 0.4. So the next state is "takeoff-mild air disturbance".
[0163] Add "Takeoff - Mild Air Turbulence" to the flight state sequence and update the current state to "Takeoff - Mild Air Turbulence".
[0164] Second iteration:
[0165] The current state is "takeoff-mild air disturbance", and the state transition probability row vector is [0.7, 0.2, 0.05, 0.03, 0.01, 0.005, 0.005].
[0166] Assume that the generated random number is 0.15.
[0167] Traversing the state transition probability row vector, when the third element is accumulated, the temporary variable is 0.7+0.2+0.05=0.95, which is greater than the random number 0.15. Therefore, the next state is "cruise-normal flight".
[0168] Add "cruise-normal flight" to the flight state sequence and update the current state to "cruise-normal flight".
[0169] Thus, the iteration continues in the above manner until a flight state sequence with a length of 10 is generated.
[0170] Through the above process, a flight status sequence of a certain length is generated, which reflects the transition of the aircraft between different flight states and provides a status basis for the subsequent generation of flight data packet data.
[0171] {Example 4}
[0172] In combination with the in-flight data packet augmentation method of the above embodiment, the present invention further provides a computer system, comprising:
[0173] one or more processors;
[0174] The memory stores operable instructions, which, when executed by the one or more processors, enable the one or more processors to perform operations, including the process of executing the aforementioned flight data packet augmentation method.
[0175] {Example 5}
[0176] In combination with the flight data packet augmentation method of the above embodiment, the present invention also proposes a computer-readable medium storing software, wherein the software includes instructions that can be executed by one or more computers, and the instructions, when executed by the one or more computers, perform the process of the aforementioned flight data packet augmentation method.
[0177] Although the present invention has been disclosed as above with preferred embodiments, it is not intended to limit the present invention. A person with ordinary knowledge in the technical field to which the present invention belongs may make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention shall be determined by the definition of the claims.
Claims
1. A method for augmenting flight data packets of a flight simulator, characterized in that: include: Step 1, dividing the flight process into different flight phase states and flight condition states, and constructing a flight state space based on the flight phase state and the flight condition state combination; the flight phase state includes one of "take-off", "cruise", and "landing"; the flight condition state includes one of "normal flight", "mild airflow disturbance", "moderate airflow disturbance", and "high airflow disturbance"; Step 2: Obtain and parse historical flight data packets to obtain the flight phase status, flight condition status, and flight parameters corresponding to each flight record during the flight process; Step 3, traverse the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis, count the number of state transitions and establish a state transition count matrix N; Step 4: construct a state transition probability matrix P of the Markov chain model according to the state transition count matrix N; Step 5: Starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, wherein the length of the flight state sequence is determined according to a preset flight time or flight mission; Step 6: Generate flight parameters corresponding to the flight phase state and the flight condition state in each flight state space according to the flight state sequence.
2. The flight data packet data augmentation method of the flight simulator according to claim 1, characterized in that: In step 3, the flight phase state, flight condition state and flight parameters corresponding to the flight record obtained by the analysis are traversed, the number of state transitions is counted and a state transition count matrix N is established, including: According to the flight parameters, determine the flight status corresponding to each flight record, that is, the combination of the flight phase status and the flight condition status; Configure a unique code for each flight state as an index; Traverse the flight records. For each flight record, traverse the status information in chronological order, starting from the initial flight status, and record each flight status transition; A two-dimensional state transition count matrix N is established, in which each matrix element N[i][j] represents the number of transitions from state i to state j. Initially, all elements of the state transition count matrix N are set to 0. In the process of traversing the flight records, each time a transition from state i to state j is found, the value of N[i][j] is increased by 1. The size of the state transition count matrix N is n*n, which represents the size of the flight state space.
3. The flight data packet data augmentation method of the flight simulator according to claim 2, characterized in that: In the step 4, according to the state transition count matrix N, a state transition probability matrix P of the Markov chain model is constructed, including: Based on the obtained two-dimensional state transition count matrix N, calculate the sum of the number of transitions in each row, that is, calculate the sum of all elements in each row, and the sum of the number of transitions in the i-th row is recorded as sum_i: For any matrix element P[i][j] in the state transition probability matrix P, it represents the probability of transitioning from state i to state j: P[i][j] = N[i][j] / sum_i; That is, the probability P[i][j] of transitioning from state i to state j is determined by dividing the number of transitions from state i to state j by the number of all transitions from state i. Thus, the state transition probability matrix P based on the historical flight data is calculated.
4. The flight data packet data augmentation method of the flight simulator according to claim 2, characterized in that: In step 5, starting from the initial state, a flight state sequence is generated based on the state transition probability matrix P and random number generation, including: Starting from the initial flight state, the transition probability vector of the current state is obtained according to the above state transition probability matrix P; if the current state is i, the corresponding transition probability vector P[i] is used to determine the position of the transition probability vector in the matrix N; Use the random number generator to generate a random number r in the interval [0,1]; Starting from the first element of the transition probability vector, accumulate the values of the elements one by one, and check whether the accumulated sum exceeds the random number r; when the accumulated sum exceeds r for the first time, the corresponding index is the index j of the next state; According to the index j of the next state, the newly determined state S[j] is added to the flight state sequence, and the flight state sequence is updated; Update the current state, update the current state i to j, so that the new state can be used to obtain the transition probability vector in the next time step; Repeat the above operations of updating the flight state sequence and updating the current state until a flight state sequence of the required length is generated.
5. The flight data packet data augmentation method of the flight simulator according to claim 1, characterized in that: In step 5, the random number generator is a normal distribution random number generator.
6. The flight data packet data augmentation method of the flight simulator according to claim 1, characterized in that: In step 6, according to the flight state sequence, the flight parameters corresponding to the flight phase state and the flight condition state in each flight state space are generated, including the generation of flight data in the take-off phase, including the following processes: Step 1.1: Generate and update the flight speed during takeoff For the flight speed data, obtain the reference speed range (V min -V max ); At the initial moment, the flight speed is set to static state, V0 = 0; As the time step Δt advances, the flight speed increases according to the uniformly accelerated linear motion formula V=V0+α*Δt, where the acceleration α is calculated based on the engine thrust T, the aircraft mass m and the drag D: α=(TD) / m; During takeoff, the engine thrust T gradually increases to the flight thrust T TO ; The drag D is related to the flight speed and aerodynamic characteristics and is expressed as: Where ρ is the air density, S is the wing area, and C D is the drag coefficient; For each time step, the speed is updated according to the engine thrust and drag at the current state until the takeoff safety speed is reached; Step 1.2: Generation and updating of flight attitude angles during takeoff During the takeoff phase, the pitch angle θ gradually increases so that the aircraft can obtain sufficient lift, and the initial pitch angle θ0 is set to 0; Pre-configure the pitch rate based on the aircraft's takeoff performance and pilot operation After each time step Δt, the pitch angle is updated to During normal takeoff, the roll angle φ and yaw angle ψ are maintained within a preset range of less than or equal to 5° to ensure that the aircraft takes off along the runway; When encountering crosswind, the wind speed is V wind-side The roll angle φ is adjusted according to to adjust; Step 1.3: Generation and updating of flight altitude during takeoff During the take-off phase, the initial flight altitude h0 is set to 0; The flight altitude is dynamically updated according to the vertical speed of the flight. After each time step Δt, the flight altitude is updated to: h = h0 + V z Δt; Among them, V z Indicates the vertical velocity, V z =V sinθ.
7. The flight data packet data augmentation method of the flight simulator according to claim 1, characterized in that: In step 6, according to the flight state sequence, the flight parameters corresponding to the flight phase state and the flight condition state in each flight state space are generated, including the generation of flight data in the cruise phase, including the following processes: Step 2.1: When the flight state is cruise-normal flight in the flight state sequence, configure the cruise speed V cruise It conforms to the normal distribution with mean μ cruise , with standard deviation σ cruise , use the Box-Muller transformation algorithm to generate a standard normal distribution random number z, and use it to determine the fluctuation value ΔV of the cruising speed cruise : ΔV cruise =s cruixe z; Dynamically update the cruising speed V according to the fluctuation value of the cruising speed cruise : And, constrain the cruising speed to within the scope; Step 2.2: If the flight state is cruise-airflow disturbance, determine the speed change range according to the different airflow disturbance intensities, and the speed change range is set to ±V light-turb ; Use a uniformly distributed random number generator to generate a speed change value δV within the speed change range light-turb , where δ represents the random number of speed change, and its value range is [-1, 1]. Therefore, the cruising speed is updated as: Step 2.3: According to the balance principle between engine thrust T and resistance D in the cruise phase, according to the resistance formula Calculate the drag, taking into account the fluctuation of engine performance, use a normal distribution random number generator to generate a random number ∈, and update the actual engine thrust: T = D + ∈; Step 2.4, calculate the fuel consumption rate FC according to the fuel consumption characteristic curve of the engine: FC = f(T); consider the fluctuation of the fuel system performance, use the normal distribution random number generator to generate a random number ξ, and update the actual fuel consumption rate: FC = f(T) + ζ; Step 2.5, according to the atmospheric pressure change in the cruise phase, the vertical movement of the airflow affects the flight altitude in the dynamic cruise phase: First, based on the atmospheric model, establish an exponential model of the atmospheric pressure P changing with the flight altitude h: Where P0 is the sea level pressure, H is the atmospheric height; Calculate the theoretical change in flight altitude Δh based on pressure changes pressure ; Use the normal distribution random number generation algorithm to generate the height change value Δh caused by the vertical movement of the airflow turbulence ; Update flight altitude: h new =h cruise +Δh pressure +Δh turbulence , where h cruise Indicates cruising altitude.
8. The flight data packet data augmentation method of the flight simulator according to claim 1, characterized in that: In step 6, according to the flight state sequence, the flight parameters corresponding to the flight phase state and the flight condition state in each flight state space are generated, including the generation of flight data in the landing phase, including the following processes: Step 3.1: When the flight state is in the landing stage in the flight state sequence, the flight speed is gradually reduced; the initial landing speed VLD is determined according to the aircraft model, weight and landing conditions; according to the aircraft resistance D and reverse thrust T reverse To calculate the speed reduction; after each time step Δt, the flight speed during the landing phase is updated to V = V0 + βΔt, where β represents the speed change rate during the landing phase: Consider the impact of wind speed and direction during landing: if there is a headwind, the ground speed of the aircraft decreases; if there is a tailwind, the ground speed increases, where: Under tailwind conditions, the aircraft ground speed V ground Updated to: V ground =V+V wind+head ; Under headwind conditions, the aircraft ground speed V ground Updated to: V ground =VV wind-head ; Among them, V wind-head With V wind-head represent the downwind wind speed and headwind wind speed respectively; Step 3.2: During the landing phase, the pitch angle is gradually reduced to allow the aircraft to land smoothly: the initial value of the initial pitch angle θ0' during the landing phase is determined according to the aircraft's approach mode and speed; the pitch angle change rate According to the aircraft's landing performance and the pilot's operating settings, k is a constant determined according to the characteristics of the aircraft; After each time step Δt, the pitch angle is updated to Step 3.3: The engine thrust or reverse thrust during the landing phase is adjusted according to the aircraft's landing speed and descent rate: for normal landing, the engine thrust is gradually reduced to a lower value or reverse thrust is turned on, and the reverse thrust T reverse The size is determined according to the aircraft speed and landing requirements: reverse thrust T reverse Can be proportional to the aircraft speed: T reverse =ωV, ω is a coefficient determined according to the performance of the aircraft thrust reverser system; The fuel consumption rate FC during the landing phase decreases due to the reduction of engine thrust. Considering the fluctuation of fuel system performance, the update of the fuel consumption rate FC during the landing phase is the same as the cruising speed and shows a decreasing trend. Step 3.4: During the landing phase, the flight altitude gradually decreases: the rate of descent R of the flight altitude is related to the flight speed V and the pitch angle θ: R = -Vsinθ; After each time step Δt, the height of the landing phase is updated as: h = h0 + RΔt; When the flight altitude approaches the runway altitude, the descent rate and attitude angle of the aircraft are constrained to be within the standard threshold range for safe landing.
9. A computer system, characterized in that: include: one or more processors; A memory storing operable instructions, wherein when the instructions are executed by the one or more processors, the one or more processors are caused to perform operations, wherein the operations include the process of executing the method described in any one of claims 1 to 8.
10. A computer-readable medium storing software, characterized in that: The software includes instructions that can be executed by one or more computers, and when the instructions are executed by the one or more computers, the process of the method as claimed in any one of claims 1 to 8 is performed.
Citation Information
Cited By
Aircraft state monitoring method and system based on big data
CN120397296A
Aircraft status monitoring method and system based on big data
CN120397296B