A dynamic air traffic flow regulation method

By generating multiple tree individuals through genetic programming and constructing flight routes and priority functions, the problem of insufficient resource utilization in existing aviation traffic control is solved, and real-time response and effective aviation network scheduling are achieved.

CN119649652BActive Publication Date: 2025-10-10BEIHANG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411805707.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-10
Publication Date
2025-10-10
Estimated Expiration
2044-12-10

AI Technical Summary

Technical Problem

Existing air traffic control methods are unable to fully utilize airspace resources, resulting in excessive pressure on the aviation network. It is difficult to effectively alleviate air traffic congestion, especially on busy routes and in severe weather conditions.

Method used

A dynamic air traffic control method is adopted. Multi-tree individuals are generated through genetic programming. The flight route rule function and flight priority function are constructed by combining the sector state set and the aircraft state set. The genetic algorithm is used for evolutionary learning to generate the optimal scheduling solution.

Benefits of technology

It achieves better route planning in a short period of time, responds to emergencies in real time, improves the generalization ability to deal with complex scenarios, and does not rely on knowledge and experience. The rule framework is flexible and structured, ensuring the effectiveness of the scheduling plan.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119649652B_ABST
    Figure CN119649652B_ABST
Patent Text Reader

Abstract

The application relates to a dynamic air traffic flow regulation method, and belongs to the technical field of air traffic flow management. The method solves the problems that global airspace information cannot be utilized, airspace resources cannot be fully utilized, and a decision is not comprehensive in the prior art. The method comprises the following steps: S1, obtaining initial data and building a simulation environment according to the obtained initial data; S2, determining a state set and a function set according to the initial data, which are used to generate multiple-tree individuals; S3, setting selection operators, crossover operators and mutation operators of the multiple-tree individuals in genetic programming; S4, setting a multiple-tree individual initialization method to obtain multiple-tree individuals with a set population number; S5, calculating fitness values of the multiple-tree individuals based on the simulation environment; S6, performing evolution learning based on the obtained multiple-tree individuals, and outputting a trained best multiple-tree individual and an optimal rule; and S7, simulating the obtained best multiple-tree individual and the optimal rule to obtain and output a scheduling scheme.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of aviation traffic management, and in particular to a dynamic aviation traffic control method. Background Art

[0002] With the booming growth of China's economy and the rapid development of the aviation transportation industry, the country's flight traffic has exploded. The continued rapid growth of flight traffic has brought tremendous pressure and challenges to aviation traffic safety. Limited by airspace resources such as sector capacity, air traffic congestion has become a focal issue affecting the development of my country's aviation transportation industry, especially near busy routes and airports, where flight delays are frequent. In addition, severe weather is a major challenge to air traffic control. Weather factors can cause changes in sector capacity, thereby interfering with pre-set route plans and making control plans easily ineffective. Existing measures often require dispatchers to control flights based on historical information. This method cannot utilize global airspace information, and the decisions made are not comprehensive enough. It is difficult to fully utilize airspace resources and alleviate the pressure on the aviation network.

[0003] Therefore, there is a need in this field for an aviation traffic control method that can fully utilize airspace resources and alleviate the pressure on the aviation network. Summary of the Invention

[0004] In view of the above problems, the present invention provides a dynamic aviation traffic control method to solve the problem of excessive pressure on aviation networks in the prior art.

[0005] The present invention provides a dynamic air traffic control method, comprising the following steps:

[0006] Step S1, obtaining initial data and building a simulation environment based on the obtained initial data, wherein the initial data includes historical weather information, historical flight information, route information, and actual aviation sector planning obtained from a database, as well as real-time weather, special control conditions, and current aircraft routes and flight information;

[0007] Step S2: determining a state set and a function set based on the initial data to generate a multi-tree individual, wherein the state set includes a sector state set and an aircraft state set. The sector state set is used to construct a flight route rule function, and the aircraft state set is used to construct a flight priority function.

[0008] Step S3, setting the selection operator, crossover operator and mutation operator of the multi-tree individuals in genetic programming, for performing selection, crossover and mutation operations on the generated multi-tree individuals;

[0009] Step S4, setting a multi-tree individual initialization method, initializing each knowledge tree in the majority of individuals, and obtaining a multi-tree individual with a set population size;

[0010] Step S5, determining a method for evaluating the fitness of multiple tree individuals, and calculating the fitness values ​​of multiple tree individuals based on a simulation environment;

[0011] Step S6, performing evolutionary learning based on the obtained multi-tree individuals, and outputting the best multi-tree individuals and optimal rules after training;

[0012] Step S7: simulate the obtained optimal multi-tree individuals and optimal rules to obtain and output a scheduling solution.

[0013] Optionally, step S2 specifically includes the following steps:

[0014] Step S2.1, select a sector state set to construct a flight route rule function. The sector state set includes the following features: the flight distance L from the current sector node i to the next neighbor sector node j i,j ; Flight distance S from the next neighbor sector node j to the destination sector node d j,d , the destination sector node d is the sector where the destination airport is located; according to the initial data obtained, the maximum flight capacity C on the route formed by the current sector node i to the next neighboring sector node j is calculated i,j , get the number of flights on the current route in real time as f i,j , the neighboring sector node set v of the current sector node i i , the estimated flight time ET of the flight from the current sector node i to the neighboring sector node j i,j ; The number of aircraft assigned to the current sector node i PN i , the normalized flight flow density on the route formed by the current sector node i and the neighbor sector node j, and the average flow density between the current sector node i and all neighbor sector nodes;

[0015] Step S2.2, select an aircraft state set to construct a flight priority function. The aircraft state set includes the following features: the distance LD from the sector node i where the aircraft is currently located to the sector node d where the target airport is located. i,d , the distance ND from the next sector node j where the aircraft is expected to arrive to the sector node d where the target airport is located j,d , the number of sector nodes that the current flight has flown through FS, the flight time T of the current flight, and the delay FD of the start time of the current flight relative to the departure time of the first flight of the day;

[0016] Step S2.3, select the function set related to the problem, including selecting features from operators: {+,-,*,÷,max,min};

[0017] Step S2.4, constructing a flight route rule function knowledge tree based on the selected sector state set and function set, and constructing a flight priority function knowledge tree based on the selected aircraft state set and function set, and forming multiple tree individuals together.

[0018] Optionally, the sector status set further includes:

[0019] Based on the characteristics of the obtained sector state set, the normalized flight flow density on the route formed by the current sector node i and the neighboring sector node j is obtained:

[0020] ρ i,j =f i,j / C i,j ;

[0021] And, based on the characteristics of the obtained sector state set, the average traffic density between the current sector node i and all neighboring sector nodes is obtained:

[0022]

[0023] Optionally, step S3 specifically includes the following steps:

[0024] Step S3.1, set the selection operator: calculate the fitness of each multi-tree individual and convert the fitness into a ratio; assign a corresponding sector on the wheel to each multi-tree individual according to the ratio; then rotate the wheel and select the multi-tree individual according to the sector it falls into;

[0025] Step S3.2, setting a crossover operator: In the crossover process of two parent multi-tree individuals selected by the selection operator, first, randomly select one knowledge tree from the two knowledge trees in each of the two parent multi-tree individuals and directly exchange them, then randomly select a subtree structure from the other knowledge tree in each of the two parent multi-tree individuals, and migrate the subtree structures to the tree structure of the other knowledge tree, thereby obtaining two child multi-tree individuals;

[0026] Step S3.3, set the mutation operator, randomly select a non-leaf node of a knowledge tree in the multi-tree individual, use the knowledge tree of the new expression to replace the subtree with the non-leaf node as the root, and obtain the offspring multi-tree individual. The new expression is the formula after the knowledge tree is decoded.

[0027] Optionally, step S4 specifically includes the following steps:

[0028] Step S4.1: Select features from the sector status set as leaf nodes and features from the function set as non-leaf nodes to construct a flight routing rule function knowledge tree. Select features from the aircraft status set as leaf nodes and features from the function set as non-leaf nodes to construct a flight priority knowledge tree.

[0029] Step S4.2, specifying the minimum height of the generated knowledge tree and the maximum height of the generated knowledge tree;

[0030] Step S4.3, selecting an initialization function from the genFull function and the genGrow function;

[0031] Step S4.4, initialize the population, randomly generate multi-tree individuals of the set population size, each multi-tree individual is composed of two knowledge trees: the flight route rule function knowledge tree and the flight priority function knowledge tree.

[0032] Optionally, step S6 specifically includes the following steps:

[0033] Step S6.1: Determine the basic parameters required for evolutionary calculation based on the problem and computing power, including population size, evolutionary generations, crossover probability, and mutation probability;

[0034] Step S6.2, initializing the population, including randomly generating a multi-tree individual of the determined population size, each multi-tree individual consisting of two knowledge trees representing the flight routing rule function and the flight priority function, and initializing the current generation to 0;

[0035] Step S6.3, traverse each multi-tree individual in the current population and perform operations to generate a descendant population;

[0036] Step S6.4, evaluating the fitness values ​​of multiple tree individuals in the current population and the offspring population;

[0037] Step S6.5: Merge the multi-tree individuals in the current population and the offspring population, sort them from high to low according to their fitness values, and select the multi-tree individuals of the determined population size to form a new population;

[0038] Step S6.6, determine whether the current new population meets the termination condition. If so, proceed to the next step; otherwise, return to step S6.3. The termination condition is the set termination generation number.

[0039] Step S6.7: Select the individual with the highest fitness value from the current new population as the best multi-tree individual, decode the two knowledge trees of the multi-tree individual into specific executable expressions as the extracted optimal rule, and save the best multi-tree individual and the optimal rule.

[0040] Optionally, step S6.3 specifically includes the following steps:

[0041] Step S6.3.1, randomly select a multi-tree individual from the current population and generate a random operation selector, which generates a random number in the range [0,1] to determine the operation type;

[0042] Step S6.3.2, compare the random number with the determined crossover probability. If the random number is less than the crossover probability, randomly select another multi-tree individual from the population and use it as the parent multi-tree individual with the current multi-tree individual. Perform a crossover operation using the crossover operator to obtain two child multi-tree individuals. Add the two child multi-tree individuals to the child population.

[0043] Step S6.3.3: Compare the random number with the determined mutation probability. If the random number is less than the mutation probability, perform a mutation operation on the current multi-tree individual using the mutation operator, add the resulting offspring multi-tree individual to the offspring population, and execute step S6.3.5. If the random number is not less than the mutation probability, execute step S6.3.4.

[0044] Step S6.3.4, compare the random number with the determined crossover probability. If the random number is not less than the crossover probability, directly add the current multi-tree individual to the offspring population; otherwise, do nothing.

[0045] Step S6.3.5, repeat the above steps S6.3.1 to S6.3.4 until every multi-tree individual in the current population is traversed to obtain the offspring population.

[0046] Optionally, step S7 specifically includes the following steps:

[0047] Step S7.1, setting the simulation deadline T for this simulation, the random seed for random perturbation of sector capacity, and obtaining the flight route rule function and flight priority function;

[0048] Step S7.2, initialize the current simulation time t to 0 and the number of scheduled flights to 0;

[0049] Step S7.3: Add the newly departing flights at the current simulation time t to the simulation environment and update the number of flights accommodated by the corresponding starting sector node; update the number of flights accommodated by all sector nodes at the current simulation time t based on the number of arrived aircraft; and update the flight traffic on all routes at the current simulation time t.

[0050] Step S7.4, for each flight to be scheduled in the current sector node i at the current simulation time t, calculate the specific value of the flight priority function state set determined in stage 1: LD i,d , ND j,d ,FS,T,FD, substitute the obtained state into the flight priority function to calculate the flight priority, and sort the flights in the current sector node i from high to low according to the priority; the same sorting operation is performed on the flights of other sector nodes;

[0051] Step S7.5, for each to-be-scheduled flight in the current sector node i at the current simulation time t, the specific value of the flight route rule function state set determined in stage one is calculated respectively: L i,j , S j,d , p i,j , ET i,j , PN i , the obtained state is substituted into the flight route rule function to calculate the priority of the neighbor sector node, and the sector node with the highest priority is selected as the next target node;

[0052] Step S7.6, check whether each flight arrives at the target sector node at the current simulation time t, and update the number of flights that have been scheduled accordingly;

[0053] Step S7.7, if the current simulation time t is not less than the simulation cutoff time T, stop the simulation and output the number of flights that have been scheduled ret, and output the current scheduling scheme, otherwise update the current simulation time t to t+1, and return to step S7.3.

[0054] Compared with the prior art, the dynamic air traffic regulation method provided by the embodiment of the application has at least the following beneficial effects:

[0055] 1. The application can obtain a relatively optimal route planning in a short time, respond to emergencies in real time, and does not depend on knowledge and experience.

[0056] 2. The application has strong generalization ability in dealing with complex scenarios.

[0057] 3. The application is closer to the real air traffic control scene, and learns two kinds of rules of aircraft heading and waypoint flight.

[0058] 4. The rule representation framework of the application is flexible enough to accommodate a wide range of variables and parameters, while maintaining sufficient structure to ensure the effectiveness and interpretability of the rules. BRIEF DESCRIPTION OF DRAWINGS

[0059] In order to more clearly illustrate the technical solutions in the embodiments of the application or the prior art, the drawings needed in the embodiments will be briefly introduced below. The features and advantages of the application can be more clearly understood by referring to the drawings. The drawings are schematic and should not be construed as any limitation on the application. For those skilled in the art, other drawings can be obtained without creative labor on the basis of these drawings.

[0060] Figure 1 The flowchart of the dynamic air traffic regulation method according to the embodiment of the application.

[0061] Figure 2 The diagram schematically shows the current sector and adjacent sectors in aviation sector planning.

[0062] Figure 3 This is a schematic diagram of multiple tree individuals consisting of a flight route rule function knowledge tree and a flight priority function knowledge tree in an example of applying the dynamic air traffic control method provided according to an embodiment of the present invention.

[0063] Figure 4 A schematic diagram of a process of performing a crossover operation on two multi-tree individuals in an example of applying the dynamic air traffic control method provided in an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0064] In order to more clearly understand the above-mentioned objects, features and advantages of the present invention, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present invention and the features therein can be combined with each other without conflict.

[0065] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the scope of protection of the present invention is not limited to the specific embodiments disclosed below.

[0066] A dynamic air traffic control method according to an embodiment of the present invention is described in detail below with reference to the accompanying drawings.

[0067] Explanation of symbols:

[0068] L i,j , the flight distance from the sector node i where the aircraft is currently located to the next neighboring sector node j;

[0069] S j,d , the flight distance from the next neighbor sector node j to the destination sector node d;

[0070] ρ i,j , the normalized density of flight traffic on the route formed by the current sector node i and its neighbor sector node j;

[0071] C i,j , the maximum flight capacity on the route between the current sector node i and its neighbor sector node j;

[0072] f i,j , the number of flights on the route at the current moment is;

[0073] The average traffic density between the current sector node i and all neighboring sector nodes;

[0074] V i , the set of neighboring sector nodes of the current sector node i;

[0075] ET i,j , the estimated flight time of the flight from the current sector node i to the neighboring sector node j;

[0076] PN i , the number of aircraft assigned to the current sector node i;

[0077] LD i,d , the distance from the sector node i where the aircraft is currently located to the sector node d where the target airport is located;

[0078] ND j,d , the distance from the next sector node j where the aircraft is expected to arrive to the sector node d where the target airport is located;

[0079] FS, the number of sector nodes that the current flight has flown through;

[0080] T, the elapsed time of the current flight;

[0081] FD, the delay of the current flight start time relative to the departure time of the first flight of the day;

[0082] min, the minimum height of the knowledge tree;

[0083] max, the maximum height of the knowledge tree;

[0084] population_size, population size;

[0085] current, current algebra;

[0086] seed, random seed;

[0087] T, simulation deadline;

[0088] t, current simulation time;

[0089] ret, the number of flights that have completed scheduling.

[0090] like Figure 1 As shown, a dynamic aviation traffic control method provided according to an embodiment of the present invention includes the following steps.

[0091] Step S1, obtain historical weather information, historical flight information, route information and actual aviation sector planning from the database, as well as real-time weather, special control conditions, current aircraft routes and flights, etc. as initial data, and build a simulation environment based on the obtained initial data.

[0092] The aviation sectors are divided according to the actual aviation sector planning in my country. The historical flight information may include take-off and landing time, flight path, flight speed, total number of flights, sectors passed, delay time, etc. In this embodiment, the neighbor sector is a sector that has an adjacent edge with the current sector, and the distance from the current sector node to the neighbor sector node can be regarded as approximately the distance between the geometric centers of the two sectors. For example, Figure 2 As shown, Xi'an sector 10 is adjacent to Xi'an sector 6, and their node distance is the distance between the two center points represented by dots in the two sectors.

[0093] Step S2: Determine a state set and a function set based on the initial data to generate multiple tree individuals.

[0094] Genetic programming is an algorithm based on natural evolutionary mechanisms that is used to automatically generate computer programs to solve problems. An individual in genetic programming can be an allocation rule, which is usually represented by a tree structure. The tree structure includes leaf nodes and non-leaf nodes, where non-leaf nodes are members of a function set, including common operators (such as addition, subtraction, logical operations, etc.), and leaf nodes are members of a state set, consisting of characteristic variables that are strongly related to the problem. Step S2 specifically includes the following steps.

[0095] Step S2.1, select a sector state set, which includes the following features: the flight distance L from the current sector node i to the next neighbor sector node j i,j ; Flight distance S from the next neighbor sector node j to the destination sector node d j,d , the destination sector node d is the sector where the destination airport is located; according to the initial data obtained, the maximum flight capacity C on the route formed by the current sector node i to the next neighboring sector node j is calculated i,j , get the number of flights on the current route in real time as f i,j , the neighbor sector node set V of the current sector node i i , the estimated flight time ET of the flight from the current sector node i to the neighboring sector node j i,j ; The number of aircraft assigned to the current sector node i PN i , the normalized flight flow density on the route formed by the current sector node i and its neighboring sector node j, and the average flow density between the current sector node i and all neighboring sector nodes. The current sector node is the geometric center of the sector where the flight is currently located.

[0096] Based on the above characteristics of the sector state set, the normalized density of flight flow on the route formed by the current sector node i and the neighboring sector node j is obtained:

[0097] ρ i,j =f i,j / C i,j

[0098] Add the flight flow normalized density to the sector state set.

[0099] Based on the above characteristics of the sector state set, the average traffic density between the current sector node i and all neighboring sector nodes is obtained:

[0100]

[0101] Add the average traffic density to the sector state set.

[0102] The selected sector state set is used to construct a flight routing rule function (routing rule).

[0103] Step S2.2, select an aircraft state set, which includes the following features: the distance LD from the sector node i where the aircraft is currently located to the sector node d where the target airport is located i,d ; The distance ND from the next sector node j where the aircraft is expected to arrive to the sector node d where the target airport is located j,d ; The number of sector nodes FS that the current flight has passed; The flight time T of the current flight; The delay FD of the start time of the current flight relative to the departure time of the first flight of the day, where the departure time delay of the first flight of the day is 0.

[0104] The selected aircraft status is used to construct the flight priority function (sequencing rule).

[0105] Step S2.3: Select a function set related to the problem, including the features: {+, -, *, ÷, max, min}. The features of the function set can be common operators, such as addition, subtraction, multiplication, division, and logical operations.

[0106] Step S2.4, construct the knowledge tree of flight route rule function based on the selected sector state set and function set, and construct the knowledge tree of flight priority function based on the selected aircraft state set and function set, and form a multi-tree individual. Figure 3 Figure 1 shows a schematic diagram of a multi-tree consisting of a knowledge tree for the flight routing rule function and a knowledge tree for the flight priority function. In the knowledge tree for the flight routing rule function, features from the sector state set are selected to form leaf nodes, and features from the function set are selected to form non-leaf nodes. In the knowledge tree for the flight priority function, features from the aircraft state set are selected to form leaf nodes, and features from the function set are selected to form non-leaf nodes.

[0107] Step S3, setting the selection operator, crossover operator and mutation operator of the multi-tree individuals in genetic programming, which are used to perform selection, crossover and mutation operations on the generated multi-tree individuals. In traditional multi-tree representations, genetic operators usually only act on one tree in the individual, and other trees are directly copied from the parent generation to the offspring, and genetic operators are limited to one type of tree. However, this will result in the offspring not being much different from the parent generation, the population diversity is reduced, the exploration ability is reduced, and the crossover operation cannot improve the diversity of the combination of different types of trees. In order to overcome these shortcomings, the dynamic air traffic control method provided in this embodiment provides a crossover operator that is more suitable for the problem of dynamic air traffic control. This step S3 specifically includes the following steps.

[0108] Step S3.1: Set the selection operator: Using a roulette wheel selection method, the probability of selection for each multi-tree individual is proportional to its fitness value, with individuals with higher fitness being more likely to be selected. Specifically, this involves calculating the fitness of each multi-tree individual and converting the fitness into a ratio; assigning each multi-tree individual a corresponding "sector" on the roulette wheel based on the ratio; then, rotating the wheel and selecting a multi-tree individual based on the sector it lands on.

[0109] During the evolution process, a multi-tree individual is first randomly selected as the parent through the selection operator. If a crossover operation is required, the parent is excluded and then a roulette wheel selection is performed. This operation can retain the structure of the better individuals.

[0110] Step S3.2, setting a crossover operator: During the crossover process of two parent multi-tree individuals selected by the selection operator, first, randomly select one of the two knowledge trees in each of the two parent multi-tree individuals and directly exchange them, then randomly select a subtree structure from the other knowledge tree in each of the two parent multi-tree individuals, and migrate the subtree structures to the tree structure of the other knowledge tree, forming two child multi-tree individuals. For example, if a flight route rule function knowledge tree is selected, first, the two parent flight route rule function knowledge trees are directly exchanged, and then randomly select a subtree structure from the two flight priority function knowledge trees, and migrate the subtree structures to the tree structure of the other knowledge tree, forming two child multi-tree individuals.

[0111] During the crossover operation, to avoid overfitting and overly complex tree structures, the maximum depth and maximum number of nodes in the knowledge tree can be limited. For example, the maximum depth is 10 and the maximum number of nodes is 35. If the migrated subtree structure exceeds these limits, a new subtree structure will be selected for crossover. The depth of the knowledge tree is the number of layers in the knowledge tree where the leaf node is farthest from the root node, and the number of nodes in the knowledge tree is the number of leaf nodes in the knowledge tree.

[0112] See also Figure 4, shows the crossover process of two parent multi-tree individuals. The dotted circle indicates that the subtree is selected and will be exchanged. The conventional standard crossover operator will stop here, but in this embodiment, the other type of tree without the dotted circle in each parent multi-tree individual in the figure will also be exchanged with each other as a whole. Therefore, two offspring are generated. The advantages of this crossover method of two parent multi-tree individuals mainly include that useful subtree blocks are not easily destroyed, and the combination of flight route rule function and flight priority function is more diverse, effectively improving the diversity of the population.

[0113] Step S3.3, set the mutation operator, randomly select a non-leaf node of a knowledge tree in the multi-tree individual, and use the knowledge tree of the new expression to replace the subtree with the non-leaf node as the root. In this embodiment, the new knowledge tree is randomly composed of a state set and a function set, and the height of the knowledge tree is set to 2. The height of the knowledge tree is the total number of edges from the root node to the leaf node. The new expression is the formula after the knowledge tree is decoded

[0114] Step S4, setting a multi-tree individual initialization method, initializing each knowledge tree in the majority of individuals, and obtaining a multi-tree individual of a set population size. Step S4 specifically includes the following steps for initializing each knowledge tree in the majority of individuals.

[0115] Step S4.1: Select leaf nodes from the state set and features from the function set as non-leaf nodes. Specifically, leaf nodes are selected from the sector state set, and features are selected from the function set as non-leaf nodes to form the flight routing rule function knowledge tree. Features are selected from the aircraft state set as leaf nodes, and features are selected from the function set as non-leaf nodes to form the flight priority knowledge tree.

[0116] Step S4.2, specifying the minimum height (min) and maximum height (max) of the generated knowledge tree, which indicates how many layers the generated knowledge tree has at least and at most. In one example, the specified minimum height of the generated knowledge tree is 1 and the maximum height is 6.

[0117] Step S4.3: Select the initialization function. During the initialization process, there is a 50% chance of selecting the genFull function and a 50% chance of selecting the genGrow function. The genFull function indicates that all leaf nodes have the same height, i.e., a full binary tree. In the genGrow function, leaf nodes can have different heights, resulting in a more random structure.

[0118] Step S4.4 initializes the population (population). This randomly generates a multi-tree of a set population size (population_size). Each multi-tree consists of two knowledge trees: one representing the flight routing rule function and the other representing the flight priority function. Leaf nodes in the knowledge trees are randomly selected from the state set, and non-leaf nodes are randomly selected from the function set. Initialize the current generation (current) to 0.

[0119] Step S5: Determine a multi-tree individual fitness evaluation method and calculate the fitness values ​​of the multi-tree individuals based on the simulation environment. In this embodiment, each multi-tree individual participating in the evolutionary iteration consists of two knowledge trees, representing a flight routing rule function and a flight priority function, respectively. The fitness values ​​of the multi-tree individuals are calculated using the flight routing rule function and the flight priority function.

[0120] A simulation is created based on all scheduled flights for a given day, with these flights added to the simulation environment at their actual departure times. During flight, if adjustments are needed due to unexpected events in the simulation environment, such as changes in sector capacity due to weather conditions or changes in the order of aircraft arrival, the flight routing rule function and flight priority function decoded from the two knowledge trees in the multi-tree individual are used to select and control the flight schedule. The total number of flights scheduled before the simulation deadline is calculated as the fitness value. A higher fitness value indicates a more robust multi-tree individual.

[0121] To ensure the generalization of the flight routing rule function and flight priority function, the impact of the sudden event in this step is a random perturbation, potentially affecting different sectors and with varying degrees of impact. Therefore, for each multi-tree individual, it is simulated multiple times in the simulation environment, and the cumulative fitness values ​​are used as the final fitness value.

[0122] Step S6: performing evolutionary learning based on the obtained multi-tree individuals, and outputting the best multi-tree individuals and optimal rules after training.

[0123] Step S6.1, determine the basic parameters required for evolutionary calculation according to the problem and computing power, including population size (population_size), evolutionary generations (iteration), crossover probability (cxpb), and mutation probability (mutpb). The population size is the number of multi-tree individuals involved in the calculation during each iteration, the evolutionary generations are the number of iterations experienced until the calculation stops, the crossover probability is the probability that a multi-tree individual crosses with other multi-tree individuals through a crossover operator during the evolution process, and the mutation probability is the probability that a multi-tree individual mutates through a mutation operator during the evolution process. In one example, the evolutionary generations can be optionally set to 50 generations, which can achieve better training effects while ensuring a smaller amount of computation.

[0124] Step S6.2: Initialize the population. This involves randomly generating a multi-tree population of the specified number of individuals. Each multi-tree individual consists of two knowledge trees representing the flight routing rule function and the flight priority function. Leaf nodes in the tree are randomly selected from the state set, and non-leaf nodes are randomly selected from the function set. Initialize the current generation to 0.

[0125] Step S6.3, traverse each multi-tree individual in the current population and perform the following operations to generate an offspring population (offspring).

[0126] Step S6.3.1, generate a random operation selector (op_choice): Generate a random number in the range [0,1] to determine the operation type;

[0127] Step S6.3.2, compare the random number with the determined crossover probability. If the random number (op_choice) is less than the crossover probability, randomly select another multi-tree individual from the population and use it as the two parent multi-tree individuals with the current multi-tree individual. Perform a crossover operation using the crossover operator, and add the two resulting child multi-tree individuals to the child population.

[0128] Step S6.3.3: Compare the random number with the determined mutation probability. If the random number is less than the mutation probability, perform a mutation operation on the current multi-tree individual using the mutation operator, add the resulting offspring multi-tree individual to the offspring population, and execute step S6.3.5. If the random number is not less than the mutation probability, execute step S6.3.4.

[0129] Step S6.3.4, compare the random number with the determined crossover probability. If the random number is not less than the crossover probability, directly add the current multi-tree individual to the offspring population; otherwise, do nothing.

[0130] Step S6.3.5, repeat the above steps S6.3.1 to S6.3.4 until each multi-tree individual in the current population is traversed to obtain the offspring population.

[0131] Step S6.4, evaluate the fitness values of the multi-tree individuals in the current population and the offspring population. That is, decode the two-tree structure, generate the flight route rule function and the flight priority function, and substitute the two rules into the simulation environment established in step S7.2 to simulate and output the number of flights completed within a specified time as the fitness value of the individual. During the simulation, the capacity of the sector will fluctuate randomly within the historical data range to simulate the restrictions brought by weather, special control conditions, etc. This operation can ensure that individuals with high fitness values can output good scheduling schemes for different situations, ensuring the generalization ability of the algorithm. This step is the main time-consuming operation in the evolution process, and parallel computing can be performed on different individuals according to the actual computing power.

[0132] Step S6.5, merge the multi-tree individuals in the current population and the offspring population, sort them according to the fitness values from high to low, and select the determined population size (population_size) of multi-tree individuals to form a new population (population).

[0133] Step S6.6, determine whether the current new population meets the termination condition. If it meets the termination condition, continue to the next step, otherwise return to step S6.3.

[0134] The termination condition can be a set termination number of generations, for example, set the termination number of generations to 50 generations, then end after 50 rounds of selection, crossover and mutation operations, and execute the next step. In each iteration before the iteration ends, the individuals in the population change after returning to a new round of selection, crossover and mutation, and better individuals are updated.

[0135] Step S6.7: select the individual with the highest fitness value from the current new population as the best multi-tree individual, decode the two knowledge trees of the multi-tree individual into specific executable expressions as the extracted optimal rules, and save the best multi-tree individual and the optimal rules.

[0136] Step S7, simulate the obtained best multi-tree individual and optimal rules to obtain and output a scheduling scheme. The scheduling scheme is used to regulate air traffic.

[0137] Step S7 is the process of applying the optimal rules obtained in step S6 to actual flight scheduling. Step S7 specifically includes the following steps.

[0138] Step S7.1, setting the simulation deadline T, the random seed for random perturbation of sector capacity, and obtaining the flight route rule function and the flight priority function.

[0139] Step S7.2: Initialize the current simulation time t to 0 and the number of scheduled flights (ret) to 0. Randomly initialize the maximum flight capacity of each route sector and the maximum flow limit on the route based on the historical data range and the random seed (seed).

[0140] Step S7.3, add the newly departing flights at the current simulation time t to the simulation environment, and update the number of flights accommodated by the corresponding starting sector node; update the number of flights accommodated by all sector nodes at the current simulation time t according to the number of arrived aircraft; update the flight traffic on all routes at the current simulation time t.

[0141] Step S7.4, for each flight to be scheduled in the current sector node i at the current simulation time t, calculate the specific value of the flight priority function state set determined in stage 1: LD i,d , ND j,d , FS, T, FD. Substitute the obtained state into the flight priority function to calculate the flight priority, and sort the flights in the current sector node i from high to low according to priority.

[0142] The same sorting operation is performed for flights of other sector nodes.

[0143] Step S7.5, for each flight to be scheduled in the current sector node i at the current simulation time t, calculate the specific value of the flight route rule function state set determined in the first stage: L i,j , S j,d ,ρ i,j , ET i,j , PN i The obtained state is substituted into the flight routing rule function to calculate the priority of neighboring sector nodes, and the sector node with the highest priority is selected as the next target node. If multiple flights occupy the same route and the maximum flow capacity of the route is exceeded, the high-priority flights are allowed to pass according to the flight order of step 4, and the low-priority flights are temporarily blocked until the route resources are released.

[0144] Step S7.6, check whether each flight has arrived at the target sector node at the current simulation time t, and update the number of flights that have completed scheduling (ret) accordingly.

[0145] Step S7.7, if the current simulation time t is not less than the simulation deadline T, stop the simulation and output the number of flights that have completed scheduling ret, as well as the current scheduling plan; otherwise, update the current simulation time t to t+1 and return to S7.3.

[0146] All of the above optional technical solutions can be combined in any way to form optional embodiments of the present application, and will not be described in detail here.

[0147] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0148] The above description is only a preferred specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by any technician familiar with this technical field within the technical scope disclosed by the present invention should be covered by the scope of protection of the present invention.

Claims

1. A dynamic air traffic control method, characterized in that: The following steps are involved: Step S1, obtaining initial data and building a simulation environment based on the obtained initial data, wherein the initial data includes historical weather information, historical flight information, route information, and actual aviation sector planning obtained from a database, as well as real-time weather, special control conditions, and current aircraft routes and flight information; Step S2: determining a state set and a function set based on the initial data to generate a multi-tree individual, wherein the state set includes a sector state set and an aircraft state set. The sector state set is used to construct a flight route rule function, and the aircraft state set is used to construct a flight priority function. Step S3, setting the selection operator, crossover operator and mutation operator of the multi-tree individuals in genetic programming, for performing selection, crossover and mutation operations on the generated multi-tree individuals; Step S4, setting a multi-tree individual initialization method, initializing each knowledge tree in the majority of individuals, and obtaining a multi-tree individual with a set population size; Step S5, determining a method for evaluating the fitness of multiple tree individuals, and calculating the fitness values ​​of multiple tree individuals based on a simulation environment; Step S6, performing evolutionary learning based on the obtained multi-tree individuals, and outputting the best multi-tree individuals and optimal rules after training; Step S7, simulating the obtained optimal multi-tree individuals and optimal rules to obtain and output a scheduling solution; Wherein, the step S2 specifically includes the following steps: Step S2.1, select the sector state set to construct the flight route rule function. The sector state set includes the following features: the current sector node To the next neighbor sector node Flight distance ; Next neighbor sector node To the end sector node Flight distance , end sector node The sector where the destination airport is located; the current sector node is calculated based on the initial data obtained To the next neighbor sector node The maximum flight capacity on the formed route , get the number of flights on the current route in real time , current sector node The set of neighboring sector nodes , the flight is controlled by the current sector node To neighbor sector node Estimated flight time ; Assigned to the current sector node Number of aircraft , current sector node With neighboring sector nodes Normalized density of flight traffic on the formed route, current sector node Average traffic density between all neighboring sector nodes; Step S2.2, select an aircraft state set to construct a flight priority function. The aircraft state set includes the following features: the sector node where the aircraft is currently located; To the sector node where the target airport is located distance , the next sector node the aircraft is expected to arrive at To the sector node where the target airport is located distance , the number of sector nodes that the current flight has passed through , the time the current flight has flown , the delay of the current flight's start time relative to the first flight's departure time of the day ; Step S2.3, select the function set related to the problem, including selecting features from the operators: ; Step S2.4, constructing a flight route rule function knowledge tree based on the selected sector state set and function set, and constructing a flight priority function knowledge tree based on the selected aircraft state set and function set, and forming multiple tree individuals together.

2. The dynamic air traffic control method according to claim 1, characterized in that: The sector status set also includes: Based on the characteristics of the obtained sector state set, the current sector node is obtained With neighboring sector nodes The normalized density of flight traffic on the resulting route is: ; And, based on the characteristics of the obtained sector state set, the current sector node is obtained Average traffic density between all neighboring sector nodes: 。 3. The dynamic air traffic control method according to claim 2, characterized in that: The step S3 specifically includes the following steps: Step S3.1, set the selection operator: calculate the fitness of each multi-tree individual and convert the fitness into a ratio; assign a corresponding sector on the wheel to each multi-tree individual according to the ratio; then rotate the wheel and select the multi-tree individual according to the sector it falls into; Step S3.2, setting a crossover operator: In the crossover process of two parent multi-tree individuals selected by the selection operator, first, randomly select one knowledge tree from the two knowledge trees in each of the two parent multi-tree individuals and directly exchange them, then randomly select a subtree structure from the other knowledge tree in each of the two parent multi-tree individuals, and migrate the subtree structures to the tree structure of the other knowledge tree, thereby obtaining two child multi-tree individuals; Step S3.3, set the mutation operator, randomly select a non-leaf node of a knowledge tree in the multi-tree individual, use the knowledge tree of the new expression to replace the subtree with the non-leaf node as the root, and obtain the offspring multi-tree individual. The new expression is the formula after the knowledge tree is decoded.

4. The dynamic air traffic control method according to claim 3, characterized in that: The step S4 specifically includes the following steps: Step S4.1, selecting features from the sector status set as leaf nodes and features from the function set as non-leaf nodes to construct a flight routing rule function knowledge tree, and selecting features from the aircraft status set as leaf nodes and features from the function set as non-leaf nodes to construct a flight priority knowledge tree; Step S4.2, specifying the minimum height of the generated knowledge tree and the maximum height of the generated knowledge tree; Step S4.3, selecting an initialization function from the genFull function and the genGrow function; Step S4.4, initialize the population, randomly generate multi-tree individuals of the set population size, each multi-tree individual is composed of two knowledge trees: the flight route rule function knowledge tree and the flight priority function knowledge tree.

5. The dynamic air traffic control method according to claim 4, characterized in that: The step S6 specifically includes the following steps: Step S6.1: Determine the basic parameters required for evolutionary calculation based on the problem and computing power, including population size, evolutionary generations, crossover probability, and mutation probability; Step S6.2, initializing the population, including randomly generating a multi-tree individual of the determined population size, each multi-tree individual consisting of two knowledge trees representing the flight routing rule function and the flight priority function, and initializing the current generation to 0; Step S6.3, traverse each multi-tree individual in the current population and perform operations to generate a descendant population; Step S6.4, evaluating the fitness values ​​of multiple tree individuals in the current population and the offspring population; Step S6.5: Merge the multi-tree individuals in the current population and the offspring population, sort them from high to low according to their fitness values, and select the multi-tree individuals of the determined population size to form a new population; Step S6.6, determine whether the current new population meets the termination condition. If so, proceed to the next step; otherwise, return to step S6.

3. The termination condition is the set termination generation number. Step S6.7, select the individual with the highest fitness value from the current new population as the best multi-tree individual, decode the two knowledge trees of the multi-tree individual into specific executable expressions as the extracted optimal rule, and save the best multi-tree individual and the optimal rule.

6. The dynamic air traffic control method according to claim 5, characterized in that: The step S6.3 specifically includes the following steps: In step S6.3.1, a multi-tree individual is randomly selected from the current population and a random operation selector is generated to generate a random number in the range [0, 1] to determine the operation type; Step S6.3.2, compare the random number with the determined crossover probability. If the random number is less than the crossover probability, randomly select another multi-tree individual from the population and use it as the parent multi-tree individual with the current multi-tree individual. Perform a crossover operation using the crossover operator to obtain two child multi-tree individuals. Add the two child multi-tree individuals to the child population. Step S6.3.3: Compare the random number with the determined mutation probability. If the random number is less than the mutation probability, perform a mutation operation on the current multi-tree individual using the mutation operator, add the resulting offspring multi-tree individual to the offspring population, and execute step S6.3.

5. If the random number is not less than the mutation probability, execute step S6.3.

4. Step S6.3.4, compare the random number with the determined crossover probability. If the random number is not less than the crossover probability, directly add the current multi-tree individual to the offspring population; otherwise, do nothing. Step S6.3.5, repeat the above steps S6.3.1 to S6.3.4 until every multi-tree individual in the current population is traversed to obtain the offspring population.

7. The dynamic air traffic control method according to claim 6, characterized in that: The step S7 specifically includes the following steps: Step S7.1, setting the simulation deadline T for this simulation, the random seed for random perturbation of sector capacity, and obtaining the flight route rule function and flight priority function; Step S7.2, initialize the current simulation time t to 0 and the number of scheduled flights to 0; Step S7.3: Add the newly departing flights at the current simulation time t to the simulation environment and update the number of flights accommodated by the corresponding starting sector node; update the number of flights accommodated by all sector nodes at the current simulation time t based on the number of arrived aircraft; and update the flight traffic on all routes at the current simulation time t. Step S7.4, for the current simulation time t, the current sector node For each flight to be scheduled in , calculate the specific value of the flight priority function state set determined in stage 1: , , , , , substitute the obtained state into the flight priority function to calculate the flight priority, and set the current sector node The flights in the sector are sorted from high to low according to the priority; the same sorting operation is performed on the flights of other sector nodes; Step S7.5, for the current simulation time t, the current sector node For each flight to be scheduled in , calculate the specific value of the flight route rule function state set determined in stage 1: , , , , , , substitute the obtained state into the flight route rule function to calculate the priority of the neighboring sector nodes, and select the sector node with the highest priority as the next target node; Step S7.6, check whether each flight has arrived at the target sector node at the current simulation time t, and update the number of scheduled flights accordingly; Step S7.7, if the current simulation time t is not less than the simulation deadline T, stop the simulation and output the number of flights that have completed scheduling ret, as well as the current scheduling plan; otherwise, update the current simulation time t to t+1 and return to step S7.3.

Citation Information

Patent Citations

  • Air transportation resource scheduling method, electronic equipment and storage medium

    CN117035276A

  • Flight control plan generation method based on genetic programming algorithm

    CN117273275A