This application claims priority to Chinese Patent Application No. 202210383583.5, filed on Apr. 13, 2022, which is hereby incorporated by reference in its entireties.
The present application relates to the technical field of civil aviation management, in particular to a multi-objective collaborative optimization approach for large-scale air traffic management.
With the continuous development of the aviation industry and the gradual increase of aviation flight demand, the congestion of the existing airspace and the probability of conflicts between flights also increase, causing serious security threats as well as flight delays. When resolving flight conflicts, flight delays may inevitably occur, and minimizing flight delays may increase the probability of conflicts. The problem is essentially an optimization problem with two conflicting goals.
In the past, many researchers have conducted systematic research on this problem, mainly focusing on the single objective mathematical programming formula. The basic 0-1 integer programming model was proposed in 1998, which aims to minimize flight delays under the constraints of airport capacity and department capacity by optimizing the time slots for flight departure and arrival. It should be noted that airspace congestion and flight conflict are often caused by a variety of factors, such as flight routes, traffic density, etc., which are difficult to describe with linear functions. With the increasing scale of the problem and the complexity of the objective function, traditional mathematical methods are not suitable for solving such problems, and it is difficult to adapt to the requirements of the actual situation.
Genetic algorithm (GA), a stochastic optimization technique, can efficiently solve multi-objective and high-dimensional complex optimization problems by using heuristic algorithms. In recent years, coevolutionary methods have been successfully applied to such problems. The main idea is to adopt a random grouping strategy to randomly divide the variables of large-scale problems into equal groups, to divide the problem into several sub-components for divide and conquer. The key step in this idea is the decomposition method of the problem, such as random grouping, or decomposing the n-dimensional problem into two n/2-dimensional problems to solve them recursively. However, when the variables of the problem are interactive, the grouping method still needs to be improved. For many flights, due to the complexity of the interaction between them, the random grouping strategy is not very appropriate, so it is necessary to explore new grouping schemes under the constraint of satisfaction.
Given the above analysis, the embodiment of the present application aims to provide a multi-objective collaborative optimization approach for large-scale air traffic management, so as to solve the problems of inappropriate existing grouping strategies and not considering multi-objective collaborative optimization.
The embodiment of the present application provides a multi-objective collaborative optimization approach for large-scale air traffic management, including the following steps:
Based on the further improvement of the above method, the flight conflict information obtained by detecting the flight conflict at each time includes:
Based on the further improvement of the above method, the state vector of each flight at each time includes abscissa and ordinate, flight altitude, and corresponding time;
Based on the further improvement of the above method, according to the overlapping degree of flight time of any two flights, a plurality of flight groups can be obtained by grouping, including:
Based on the further improvement of the above method, the delay time vector of each flight is based on {0, ts, 2×ts, 3×ts, . . . , δmax} as the selection range of delay time, randomly select S times from them to get the delay time vector pi=(δ1i, δ2i, . . . , δSi), where 1≤i≤N, N is the total number of flights in the flight data, ts is the sampling time, δmax is the maximum flight delay time and can be divided by ts.
Based on the further improvement of the above method, the method generates a subspecies according to the delay time vector of each flight in each flight group, including taking the delay time vector of each flight in each flight group as each row of the matrix, taking the delay time of the same column of each flight as a chromosome of the current subspecies, and taking each delay time as a gene.
Based on the further improvement of the above method, the delay variable of each flight is obtained according to the flight conflict information, including:
Based on the further improvement of the above method, the mutation based on the delay variable includes:
Based on the farther improvement of the above method, the sudden change value is obtained according to the delay variable of the flight to be changed, including:
Based on the further improvement of the above method, the fitness is calculated according to the following formula:
wherein, Fitnessk(l) is the fitness of the first chromosome in the k-th subspecies group, and mk is the total number of flights in the k-th subspecies group; δmax is the maximum flight delay time, which δl(j) is the j-th gene of the first chromosome in the k-th subspecies, and NCkj is the total number of conflicts of flights corresponding to the j-th gene in the k-th subspecies.
Compared with the prior art, the present application can achieve at least one of the following beneficial effects:
In the present application, the above technical solutions can also be combined to achieve more preferred combination solutions. Other features and advantages of the present application will be outlined in a subsequent specification, and some of the advantages may become apparent from the specification or may be understood by the implementation of the present application. The object and other advantages of the present application can be realized and obtained through the description and the contents specially indicated in the drawings.
The drawings are only to show specific embodiments and are not considered as a limitation of the present application. In the whole drawings, the same reference symbols represent the same components.
The preferred embodiments of the present application are described in detail below in combination with the accompanying drawings. The accompanying drawings form part of the application and, together with the embodiments of the present application, are used to explain the principle of the present application, not to limit the scope of the present application.
A specific embodiment of the present application discloses a multi-objective collaborative optimization approach for large-scale air traffic management. In this method, first, the conflict situation of each flight is obtained according to flight information, and then, each flight is dynamically grouped according to the overlap of takeoff and landing times between flights, to achieve the division and conquer of the original problem; Secondly, a fast genetic algorithm is used to cross and mutate chromosomes in the corresponding subspecies of each grouping, and fitness selection is conducted at the gene level. When the subpopulation evolution reaches a certain algebra, the method of fitness evaluation of chromosomes is used to select the optimal solution of each subpopulation, and further merge it into the optimal solution of the original problem. Under the premise of reasonable divide and conquer, the conflict and delay of each flight are weighed to optimize the flight takeoff time slot. As shown in
It should be noted that the obtained flight data include: flight number, departure time, arrival time, delay time, departure airport coordinates, landing airport coordinates, and flight path. The maximum flight delay time δmax of all flights in the flight data can be obtained through statistics.
According to the sampling time ts of flight data, the delay time vector is generated for each flight, which is composed of multiple times with the same number randomly selected and divisible by the sampling time within the range of less than or equal to the maximum flight delay time.
Specifically, take {0, ts, 2×ts, 3×ts, . . . , δmax} as the selection range of delay time, select one of δmax/ts+1 times randomly and repeat for S times to get the delay time vector pi=(δ1i, δ2i, . . . , δSi) of flight Fi. Where, l≤i≤N, N is the total number of flights in the flight data, δmax can be divided by ts, 80≤S≤100, and can be randomly selected multiple times at the same time.
For example, ts is 0.5 minutes, δmax is 90 minutes, and S is 80.
The initial setting of the first delay time of each flight is 0, which is continuously updated through the subsequent steps. The final first delay time is used to regulate the departure time of the corresponding flight to optimize the flight departure time slot.
It should be noted that the protection area of aircraft in flight is defined as a cylindrical area with a radius of 5 nautical miles and a height of 2000 feet. When the protection areas of two flights overlap, a conflict will occur.
Update the departure time and arrival time of each flight, that is, add the corresponding first delay time to the departure time and arrival time of each flight.
Through the detection of flight conflicts at all times, the flight conflict information obtained includes:
It should be noted that the state vector includes the abscissa x and ordinate y on the horizontal plane, the flight height h, and the corresponding time t, expressed as (x, y, h, t). According to the flight path and takeoff time, the flight path is divided at a fixed time interval, and the corresponding state vector of each flight at each time can be obtained, for example, at an interval of 10 seconds.
Specifically, according to the state vector of each flight, identify whether there is flight conflict between any two flights at each time, including:
Based on each time, the square of the difference between the abscissa and the ordinate of any two flights is added and then the square is derived to obtain the separation distance.
If the separation distance is less than the distance threshold, flight conflicts will occur between the corresponding two flights; otherwise, flight conflicts will not occur.
For example, when the flight altitude is h0, the state vector of flight Fi (xi, yi, h0, t) and the state vector of flight Fj (xj, yj, h0, t) at time t, if √{square root over ((xi−xj)2+(yi−yj)2)}<5 n mile, then it means that two flights will conflict, otherwise it will not. In
All flights detect flight conflicts in pairs at each time and finally get the total number of conflicts at each time and the total number of conflicts for each flight.
Then, dynamically group flights according to the overlapping degree of flight time to obtain multiple flight groups. The flow chart shown in
It should be noted that each flight in the flight data will identify the flight time overlap with other flights. Therefore, this embodiment does not limit the sorting method. For example, it can be sorted by flight number or departure time.
It should be noted that the overlap of flight time is expressed by the intersection length of flight time segments. Starting from flight F2, calculate the length of the overlapping time segment between flight Fi and the remaining flight Fj (2≤i≤N, 1≤j≤N and j≠i, N and j≠i, N is the total number of flights). That is, find the intersection of the flight time segments of the two flights to obtain the time overlap between the two flights tij=len((Di,Ai)∩(Dj,Aj)), where Di is the departure time after updating flight Fi, Ai is the arrival time after updating flight Fi, and Dj is the departure time after updating flight Fj, Aj is the updated arrival time of flight Fj.
Each flight will form an N−1 corresponding time overlap with the remaining N−1 flights, and the Fjmax of the two flights (Fjmax,Fi) corresponding to the maximum time overlap is the flight to be grouped.
Group according to the aircraft time overlap, so that each flight is divided into a group as far as possible with the flight with the largest time overlap. Time overlap means that flight conflicts may occur during this period. Therefore, this dynamic grouping is essential to dynamically divide the flights that may conflict into a group, so that the flights that interact with each other can be grouped for genetic evolution as a subspecies.
In addition, only two flights are needed to calculate and sort the overlapping time segments by using time overlap degree grouping, so its corresponding time complexity is O(N2), where N is the total number of flights. In the prior art, the time complexity of grouping according to the conflicted relationship is O(T×N2), where T is the time step of calculation conflict. It can be seen that grouping according to time overlap adopted in this embodiment greatly reduces the time required for grouping and improves the speed of each round of calculation.
It should be noted that for each flight group, genetic evolution is completed through steps S131-S134.
Specifically, the delay time vector of each flight in each flight group is formed into a subspecies group, including taking the delay time vector of each flight in each flight group as each row of the matrix, taking the delay time of the same column of each flight as a chromosome of the current subspecies group, and taking each delay time as a gene.
For group k, groupk=(Fk(1), Fk(2), . . . , Fk(m
as:
Where, pk(j) ((1≤j≤mk) is the delay time vector corresponding to the flight Fk(j), 2≤k≤sn, sn is the total number of subpopulations, fk(l)=(δl(1), δl(2), . . . , δl(m
It should be noted that the fitness of the gene δl(j) (1≤j≤mk) on the chromosome fk(l) is:
wherein, NCkj is the total number of conflicts of the j-th flight in the k group, that is, the total number of conflicts of the flights corresponding to the j-th gene in the k subspecies, δmax is the maximum flight delay time.
This crossover method does not calculate the fitness of the whole chromosome but introduces the fitness of each gene in the chromosome. In the crossover process, it takes the reduction of ground delay and conflict of each flight into account. The parameters in the formula are determined at the beginning, which has the characteristics of quickly finding a better solution.
Chromosomes of the parent subspecies are randomly paired to produce two offspring chromosomes, of which the probability of crossover is c, 0.6≤c≤0.9, preferably, c=0.7. Randomly generate a number between (0, 1). If the number is less than c, it will cross. Otherwise, it will not cross.
When crossing, compare the alleles produced on the parent chromosome fk(11) and fk(12), and select the offspring chromosome fk(13) and fk(14) the j-th gene in three cases, including:
δ14(j)=floor(0.5×[(1−γj)δ11(j)+(1+γj)δ12(j)]) Formula (3)
δ14(j)=floor(0.5×[(1−γj)δ11(j)+(1+γj)δ12(j)]) Formula (4)
Wherein, floor( ) is a function that rounds down,
and uj∈U(0,1) is selected randomly, η>0 is a distribution index, preferably, η=Io.
The crossover operator simulating binary single point crossover is used here, because γj is dynamically and randomly determined, so this operator can jump out of the local optimal solution, has good global search ability, and has excellent performance for the sparse individual space of high-dimensional objective optimization problems.
If crossing occurs in step S132, the newly generated offspring chromosome will be mutated; If no crossover occurs, the parent chromosome will be mutated directly.
Specifically, the delay variable of each flight obtained according to flight conflict information is used to mark whether the flight should take off early or be delayed. The acquisition methods include:
For example, the total number of conflicts at each time obtained in step S12 is plotted as a curve of the number of conflicts over time, as shown in
For example, one gene on the chromosome corresponds to flight Fi, and according to its updated takeoff time, the slope value Ki is obtained in
Specifically, if the Fi slope value Ki of the flight to be mutated is less than 0, it means that the total number of overall conflicts of the corresponding flight is decreasing when the flight to be mutated takes off, then the delay variable flagi=−Ki/Kmin, otherwise, the delay variable flagi=Ki/Kmin.
Thus, the delay variable flagi∈[−1,1].
Mutation based on delayed variables, including:
It should be noted that the conflict threshold NCkh is randomly selected in [0, NCkmax] to determine whether mutation should occur. Among them, NCkmax is the maximum number of conflicts in group k flights, and NCkh is the conflict threshold of group k.
Specifically, the flight to be mutated corresponding to the current gene is flight Fi, and the total number of conflicts is NCki:
If NCki>NCkh, the total number of conflicts representing flight Fi exceeds the conflict threshold, and mutation should occur. The mutation value is obtained according to the delay variable flagi of flight Fi including:
If NCki≤NCkh, the total number of conflicts representing flight Fi does not exceed the conflict threshold, no mutation occurs, and the gene value does not change.
In the process of genetic mutation, considering the increase in the overall number of conflicts when a flight departs means that the flight should take off early to avoid the upcoming conflict peak: The reduction of the overall number of conflicts when a flight departs means that the flight can be appropriately delayed, which can further balance the number of conflicts and avoid conflict concentration. At the same time, the setting of the threshold makes the probability of the flight with more conflicts changing the delay time greater and having less impact on the flight with fewer conflicts, thus effectively affecting the takeoff arrangement of the flight with more conflicts. In general, the mutation operator has the effect of “peak clipping and valley filling” by making certain adjustments near the original value, making the distribution of conflicts more balanced, facilitating the next optimization, and thus reducing conflicts.
Specifically, if the current evolution algebra is less than the maximum evolution algebra of the preset subspecies, then the evolution algebra is increased by 1, and the chromosome obtained in step S133 is used to form a population as a subspecies. Return to step S132 to start the crossover and mutation again. Otherwise, genetic evolution is completed for the current multiple flight groups, multiple optimized subspecies are obtained, and step S14 is executed. By way of example, the maximum evolutionary algebra of the subspecies is set as 80 generations.
Specifically, each optimized subspecies selects the chromosome fk(i) with the highest fitness from its chromosomes as the solution obtained by this iteration, where the fitness is calculated according to the following formula:
Wherein, Fitnessk(l) is the fitness of the first chromosome in the k-th subspecies group, and mk is the total number of flights in the k-th subspecies group; δmax is the maximum flight delay time, which δl(j) is the j-th gene of the first chromosome in the k-th subspecies, and NCkj is the total number of conflicts of flights corresponding to the j-th gene in the k-th subspecies.
Each gene value on the chromosome with the largest fitness is the latest delay time of the corresponding flight as the second delay time, and the first delay time of each flight is updated to the second delay time. If the current population evolution algebra is less than the preset population maximum evolution algebra, then the population evolution algebra is increased by 1, return, and perform steps S12 and S13 again for flight conflict detection, grouping, and genetic evolution; On the contrary, the optimization and regulation process is completed, and the first delay time finally obtained is used to regulate the departure time of the corresponding flight.
It should be noted that to ensure the stability of the solution obtained, a larger evolution algebra can be used. Preferably, the overall maximum evolution algebra is set to 800 generations.
Based on the national air traffic flow data from 9:00 a.m. to 12:00 a.m. on Oct. 1, 2018, the flight data are obtained. The traditional NSGA-II, NSGA-III, RVEA algorithms, and the regulation algorithm in this embodiment are used respectively to obtain the results, which are shown in
Compared with the prior art, a multi-objective collaborative optimization approach for large-scale air traffic management provided in this embodiment is a regulatory scheme designed by using the idea of dynamic grouping and co-evolution to meet the optimization requirements of flight conflict and delay. By using time overlap grouping, the time required for grouping is greatly reduced, and the speed of each round of calculation is improved. It also enables highly coupled flights to participate in optimization as a whole, and maximizes the grouping of flight optimization with interactions to reduce the risk of early convergence; co-evolution reasonably decomposes the original high-dimension optimization problem into several low-dimension optimization problems for a centralized solution. It adopts a mutation operator combined with a local search mechanism, which can perform mutation near the original value to meet a certain trend. It has the effect of “cutting peak and filling valley”, making the distribution of conflicts more balanced, thereby reducing conflicts and obtaining high-quality solutions, double optimization of flight conflict and delay is realized.
Those skilled in the art can understand that all or part of the process of realizing the above embodiment method can be completed by instructing the relevant hardware through a computer program, and the program can be stored in a computer-readable storage medium. Wherein, the computer-readable storage medium is a disk, optical disk, read-only storage memory or random storage memory, etc.
The above description is only a better specific embodiment of the present application, but the scope of protection of the present application is not limited to this. Any change or replacement that can easily be thought of by any person familiar with the technical field within the scope of the disclosed technology of the present application should be included in the scope of protection of the present application.
Number | Date | Country | Kind |
---|---|---|---|
202210383583.5 | Apr 2022 | CN | national |