US 11,756,435 B2
Airspace network optimization method based on flight normality target
Feifei Chen, Nanjing (CN); Mingwei Zhang, Nanjing (CN); Hui Ding, Nanjing (CN); Ming Tong, Nanjing (CN); Xiaozhu Shi, Nanjing (CN); Shan'e Xu, Nanjing (CN); Jibo Huang, Nanjing (CN); Yang Zhang, Nanjing (CN); Fan Bao, Nanjing (CN); Ke Xu, Nanjing (CN); Jing Tian, Nanjing (CN); Wenyi Tang, Nanjing (CN); Zeyuan Liu, Nanjing (CN); Qingqing Tan, Nanjing (CN); and Weiyu Jiang, Nanjing (CN)
Assigned to THE 28TH RESEARCH INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY GROUP CORPORATION, Nanjing (CN)
Filed by THE 28TH RESEARCH INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY GROUP CORPORATION, Nanjing (CN)
Filed on Aug. 11, 2022, as Appl. No. 17/818,982.
Application 17/818,982 is a continuation of application No. PCT/CN2022/101840, filed on Jun. 28, 2022.
Claims priority of application No. 202111208587.1 (CN), filed on Oct. 18, 2021.
Prior Publication US 2022/0383759 A1, Dec. 1, 2022
Int. Cl. G08G 5/00 (2006.01)
CPC G08G 5/0039 (2013.01) 1 Claim
OG exemplary drawing
 
1. An airspace network optimization method based on a flight normality target, comprising a computer readable medium operable on a computer with memory for the airspace network optimization method, and comprising program instructions for executing the following steps of:
step 1: preparing basic data by acquiring required calculating data and performing preliminary processing on the data;
step 2: analyzing a flight operation efficiency according to an airspace service capability;
step 3: calculating a flight range that needs to be guaranteed by airspace expansion based on the flight normality target;
step 4: generating an airspace network optimization solution according to the flight that needs to be guaranteed;
the step 1 comprises the following steps of:
step 1-1: defining variables;
step 1-2: acquiring the basic data; and
step 1-3: processing the basic data;
the step 1-1 comprises the step of defining the following variables:
ANA_DATE: analysis date;
FltListIni: a national flight plan array, comprising all flight plans related to the analysis date ANA_DATE;
FltTotalNumIni: a total number of flight plan in the national flight plan array FltListIni;
Flti: an ith flight plan in the national flight plan array FltListIni;
ACIDi: a flight identity in the ith flight plan Flti;
Flti(PRIO): a priority of the ith flight plan Flti, wherein the value is a non-negative integer with an initial value of 0;
DepApti: a departure airport of the ith flight plan Flti;
ArrApti: an arrival airport of the ith flight plan Flti;
ETDi: an estimated time of departure of the ith flight plan Flti;
ETAi: an estimated time of arrival of the ith flight plan Flti;
STDi: a sequenced time of departure of the ith flight plan Flti, with an initial value of ETDi;
STAi: a sequenced time of arrival of the ith flight plan Flti, with an initial value of ETAi;
DepDelayi: a sequenced departure delay of the ith flight plan Flti;
AdjMarki: a sequenced adjustment mode of the ith flight plan Flti, wherein 0 represents unadjustment, 1 represents time advance, 2 represents delay, 3 represents deletion, and an initial value is 0;
PassSectorListi: a sector-passing array of the ith flight plan Flti, comprising information of all sectors passed by the ith flight plan Flti;
PassSectori,j: information of a jth sector in the sector-passing array PassSectorListi of the ith flight plan Flti;
PassSectori,j(Code): a code of the jth sector PassSectori,j in the sector-passing array PassSectorListi of the ith flight plan Flti;
PassSectori,j(InETO): an estimated entry time of the jth sector PassSectori,j in the sector-passing array PassSectorListi of the ith flight plan Flti;
PassSectori,j(InSTO): a sequenced entry time of the jth sector PassSectori,j in the sector-passing array PassSectorListi of the ith flight plan Flti;
APTLIST: an airport array, comprising information of all national airports;
AptTotalNum: a number of airports comprised in the airport array APTLIST;
APTi: an ith airport in the airport array APTLIST;
APTi(CODE): a four-character code of the airport APTi;
SECTORLIST: a sector array, comprising information of all national sectors;
SectorTotalNum: a number of sectors comprised in the sector array SECTORLIST;
SECTORi: an ith sector in the sector array SECTORLIST;
SECTORi(CODE): a code of the sector:
[tBgnTime, tEndTime]: a computing time range, wherein tBgnTime refers to 00:00:00 of the analysis date ANA_DATE, while tEndTime refers to 23:59:59 of the analysis date ANA_DATE;
CapSpanTime: a time slice span;
CapSpanNum: a number of time slices in the computing time range, with an initial value of 0;
[CapBgnTimej,CapEndTimej): a jth time slice in the computing time range [tBgnTime, tEndTime], wherein CapBgnTimej refers to a beginning time of the time slice, while CapEndTimej refers to an end time of the time slice;
AptCapi,j: a capacity value of the airport APTi in the jth time slice;
SectorCapi,j: a capacity value of the sector SECTORi in the jth time slice;
AptAARi,j: an arrival capacity of the airport APTi in the jth time slice;
AptADRi,j: a departure capacity of the airport APTi in the jth time slice;
Depi,j: a number of flights departing in the jth time slice in the airport APTi; and
Arri,j: a number of flights arrival in the jth time slice in the airport APTi;
the step 1-2 comprises:
step 1-2-1: acquiring national airspace basic data:
acquiring basis information of all national airports and sectors according to the set analysis date ANA_DATE;
acquiring information of all national airports and forming the airport array APTLIST, wherein a total number of airports is AptTotalNum; and the specific information of each airport APTi in APTLIST comprises: the code APTi(CODE); and
acquiring information of all national sectors and forming the sector array SECTORLIST, wherein a total number of sectors is SectorTotalNum; and the specific information of each sector SECTORi in SECTORLIST comprises: the code SECTORi(CODE);
step 1-2-2: extracting national flight plans:
according to the set analysis date ANA_DATE, filtering flight plans that depart from or arrive at a domestic airport, or appear in a domestic airspace within the date from a flight schedule to form the national flight plan array FltListIni, wherein a total number of plans is FltTotalNumIni; and
generating trajectory prediction information of each flight plan Flti in FltListIni, wherein i∈[1, FltTotalNumIni];
the trajectory prediction information comprising: the flight identity ACIDi, the departure airport DepApti, the arrival airport ArrApti, the flight priority Flti(PRIO), the estimated time of departure ETDi, the estimated time of arrival ETAi, and the sector-passing array PassSectorListi;
wherein the sector-passing array PassSectorListi comprises a code PassSectori,j(Code) of each sector PassSectori,j passed by Flti, and a estimated sector-entry time PassSectori,j(InETO); and an initial value of the flight priority Flti(PRIO) is 0; and
step 1-2-3: acquiring national airspace capacity data:
setting the computing time range:
generating the computing time range [tBgnTime, tEndTime] according to the set analysis date ANA_DATE, wherein tBgnTime refers to 00:00:00 of the analysis date ANA_DATE, while tEndTime refers to 23:59:59 of the analysis date ANA_DATE;
dividing the time slices:
a number of the time slices being:

OG Complex Work Unit Math
letting each time slice be [CapBgnTimej, CapEndTimej), j∈CapSpanNum, wherein CapBgnTimej refers to a beginning time of a jth time slice, while CapEndTimej refers to an end time of the jth time slice, and CapEndTimej=CapBgnTimej+CapSpanTime;
acquiring a capacity of each time slice of national airports:
filtering capacity information AptCapi,j of each time slice of each airport APTi in the array APTLIST within the computing time range [tBgnTime, tEndTime]; and
acquiring a capacity of each time slice of national sectors:
filtering capacity information SectorCapi,j of each time slice of each sector SECTORi in the array SECTORLIST within the computing time range [tBgnTime, tEndTime];
the step 1-3 comprises:
step 1-3-1: decomposing the arrival capacity and the departure capacity of the airport;
carrying out the following operations for each airport APTi in the array APTLIST:
counting departure and arrival demand of each time slice of the airport:
according to the departure airport, the arrival airport, the estimated time of departure ETDi and the estimated time of arrival ETAi of each flight Flti in the national flight plan array FltListIni, counting departure flights Depi,j and arrival flights Arri,j of each time slice j of the airport APTi in the computing time range [tBgnTime, tEndTime];
dividing the capacity according to the departure and arrival demand:
decomposing the capacity of the airport according to the departure and arrival demand of each time slice:

OG Complex Work Unit Math
and
step 1-3-2: acquiring flight sequencing information:
generating sequencing information of each flight Flti, wherein the sequencing information comprises the sequenced time of departure STDi, the sequenced time of arrival STAi, a sequencing delay DepDelayi, a flight adjustment mode AdjMarki, and an sequenced sector-entry time PassSectori,j(InSTO) of each sector PassSectori,j in the sector-passing array PassSectorListi;
the step 2 comprises the following steps of:
step 2-1: defining variables;
step 2-2: filtering flights that need to be adjusted;
step 2-3: optimizing a sequence of flight adjustment arrays; and
step 2-4: analyzing the flight operation efficiency;
the 2-1 comprises the step of defining the following variables:
FltList: a flight adjustment array, comprising all flights that need time adjustment or deletion in FltListIni;
FltTotalNum: a total number of flight plans in the array FltList, wherein an initial value is 0;
MAX_DELAY: a default maximum flight delay;
FltNormalNum: a number of flights in the national flights that need not be adjusted, wherein an initial value is 0;
FltDelayNum: a number of flights in the national flights that need to be delayed, wherein an initial value is 0;
FltDelNum: a number of flights in the national flights that need to be deleted, wherein an initial value is 0;
FltAccNum: a number of flights in the national flights that need time advance, wherein an initial value is 0;
FltAdjNum: a number of flights in the national flights that need time adjustment, wherein an initial value is 0; and
FltNormality: normality estimation of the national flights, wherein an initial value is 0;
the step 2-2 comprises:
according to the flight sequencing information in the step 1-3-2, for each flight Flti in the array FltListIni, when the flight satisfies that AdjMarki>0, indicating that the flight needs to be adjusted, adding the flight into the array FltList and letting: FltTotalNum=FltTotalNum+1;
the step 2-3 comprises:
according to the flight sequencing information in the step 1-3-2, optimizing a sequence of the flights in the array FltList in a descending sequence of severity by comprehensively consider the delay situation DepDelayi, the priority Flti (PRIO) and the adjustment mode AdjMarki of each flight Flti in the array FltList, specifically comprising the following steps of:
step 2-3-1: updating delay information of flights suggested to be deleted:
for each flight Flti in the array FltList, when the adjustment mode AdjMarki of the flight is 3, indicating that the flight is suggested to be deleted, letting the flight be that DepDelayi=MAX_DELAY;
step 2-3-2: sequencing according to the delay situations of the flights:
sequencing the flights in a descending sequence of delays according to the delay situation DepDelayi of each flight Flti in FltList, and updating a flight sequence in the array FltList;
step 2-3-3: sequencing according to the priorities of the flights:
on the basis of the step 2-3-2, sequencing the flights in a descending sequence of priorities according to the priority Flti(PRIO) of each flight Flti in the array FltList, and updating the flight sequence in the array FltList; and
the step 2-4 comprises:
step 2-4-1: calculating a flight delay number index:
for each flight Flti, in the array FltList, when satisfying that AdjMarki is 2, indicating that the flight is a delayed flight, and adding the flight into a delay number statistic magnitude, which denotes that FltDelayNum=FltDelayNum+1;
step 2-4-2: calculating a flight deletion number index:
for each flight Flti in the array FltList, when satisfying that AdjMarki is 3, indicating that the flight is a flight suggested to be deleted, and adding the flight into a deletion number statistic magnitude, which denotes that FltDelNum=FltDelNum+1;
step 2-4-3: calculating a flight time advance number index:
for each flight Flti in the array FltList, when satisfying that AdjMarki is 1, indicating that the flight is a time advanced flight, and adding the flight into a time advanced number statistic magnitude, which denotes that FltAccNum=FltAccNum+1;
step 2-4-4: calculating a flight number index without needing adjustment:
taking the time advanced flight also as the flight needing time adjustment:
FltAdjNum=FltDelayNum+FltAccNum  (4)
FltNormalNum=FltTotalNumIni−FltAdjNum−FltDelNum  (5); and
step 2-4-5: calculating a flight normality index:
a calculation formula being as follows:

OG Complex Work Unit Math
the step 3 comprises the following steps of:
step 3-1: defining variables;
step 3-2: making corresponding settings;
step 3-3: setting the flight normality optimization target; and
step 3-4: calculating a flight volume that needs to be guaranteed by airspace expansion;
the step 3-1 comprises: defining the following variables:
TargetNormality: the flight normality optimization target;
TmpNormality: a flight normality temporary variable;
TargetTotalNum: a total number of flights that need to be guaranteed by airspace expansion, wherein an initial value is 0;
TargetDelNum: a number of deleted flights that need to be guaranteed by airspace expansion, wherein an initial value is 0; and
TargetAdjNum: a number of time adjusted flights that need to be guaranteed by airspace expansion, wherein an initial value is 0;
the step 3-2 comprises:
recording the existing airspace network as an airspace network A, it is obtained on the basis of the step 2-4 that the flight normality is estimated as FltNormality when the national flight plan array FltListIni runs in the airspace network A; and
according to a sequencing result of the step 1-3-2, implementing flights in the flight adjustment array FltList that are not supported under a service capacity of the airspace network A according to original flight plan thereof; when the flight normality needs to be improved, expanding a capacity of local airports or sectors in the airspace network A, and recording the airspace network with an expanded service capacity as an airspace network C; wherein, an expansion degree of the service capability of the airspace network A is related to the set normality optimization target TargetNormality and the flights selected for guarantee in the array FltList; and
for the normality optimization target TargetNormality, the flight volume TargetTotalNum that needs to be guaranteed by airspace expansion filtered from FltList needs to satisfy a formula (7) and a formula (8):

OG Complex Work Unit Math
a formula for verifying the flight normality in the airspace network C is as follows:

OG Complex Work Unit Math
the step 3-3 comprises:
limiting the flight normality optimization target TargetNormality set by a user, which needs to satisfy that TargetNormality∈[FltNormality,1]; and
the step 3-4 comprises:
step 3-4-1: calculating a deleted flight volume:
firstly, trying to incorporate only the flights suggested to be deleted into an guarantee range, and determining whether it is possible to achieve the normality optimization target:

OG Complex Work Unit Math
when satisfying that TargetDelNum>FltDelNum, indicating that it is failed to achieve the flight normality target by guaranteeing the deleted flights only, letting TargetDelNum=FltDelNum, and continuously executing step 3-4-2; otherwise, letting TargetAdjNum=0, and skipping to step 3-4-3;
step 3-4-2: calculating a time-adjusted flight volume:

OG Complex Work Unit Math
then:
TargetAdjNum=TargetNormality*FltTotalNumIni−TargetDelNum−FltNormalNum  (11); and
step 3-4-3: calculating a total adjusted flight volume:
TargetTotalNum=TargetDelNum+TargetAdjNum  (12);
the step 4 comprises the following steps of:
step 4-1: defining variables;
step 4-2: setting parameters;
step 4-3: predicting an airspace flow based on a flight sequencing result; and
step 4-4: generating an airspace network optimization solution;
the step 4-1 comprises: defining the following variables:
AptCapMaxRatioi: an upper capacity increase limit of the airport APTi in a unit of %, wherein an initial value is 100%;
AptAARMaxRatioi: an upper arrival capacity increase limit of the airport APTi in a unit of %, wherein an initial value is 100%;
AptADRMaxRatioi: an upper departure capacity increase limit of the airport APTi in a unit of %, wherein an initial value is 100%;
SectorCapMaxRatioi: an upper capacity increase limit of the sector SECTORi in a unit of %, wherein an initial value is 100%;
DealMarki: a processing status of the flight Fit, wherein 0 represents not participating in the processing, and 1 represents being already processed;
SectorSimuFlowi,j: a number of flights entering the sector SECTORi in the jth time slice according to the flight sequencing result, wherein an initial value is 0;
DepSimuFlowi,j: a number of flights departing in the jth time slice of the airport APTi according to the flight sequencing result, wherein an initial value is 0;
ArrSimuFlowi,j: a number of flights arrived in the jth time slice of the airport APTi according to the flight sequencing result, wherein an initial value is 0;
tmpSectorSimuFlowi,j: a temporary variable of the number of flights entering the sector SECTORi in the jth time slice, wherein an initial value is 0;
tmpDepSimuFlowi,j: a temporary variable of the number of flights departing in the jth time slice of the airport APTi wherein an initial value is 0;
tmpArrSimuFlowi,j: a temporary variable of the temporary variable of the number of flights arrived in the jth time slice of the airport APTi, wherein an initial value is 0;
tmpDelCount: a temporary variable of the deleted flight volume, wherein an initial value is 0;
tmpAdjCount: a temporary variable of the time-adjusted flight volume, wherein an initial value is 0;
AspOptyList: an airspace network optimization solution, comprising a name, a type and a capacity increase value of an airspace needing to be optimized;
AspOptyListNum: a number of airspaces comprised in AspOptyList;
AspOptyi: an ith airspace that needs to be optimized in:
AspOptyi(CODE): an airspace code of AspOptyi;
AspOptyi(TYPE): an airspace type of AspOptyi, wherein 0 represents the sector, and 1 represents the airport;
AspOptyi(Cap): a capacity increase value of AspOptyi, wherein an initial value is 0;
AspOptyi(AAR): an arrival capacity increase value of AspOptyi, which is only valid for airports, with an initial value of 0;
AspOptyi(ADR): a departure capacity increase value of AspOptyi which is only valid for airports, with an initial value of 0;
MaxAspFlowVsi: a maximum value of a deviation between the flow and capacity of each time slice of an ith airspace object, wherein an initial value is 0;
MaxDepFlowVsi: a maximum value of a deviation between the departure flights and departure capacity of each time slice of the ith airspace object, wherein an initial value is 0; and
MaxArrFlowVsi: a maximum value of a deviation between the arrival flights and arrival capacity of each time slice of the ith airspace object, wherein an initial value is 0;
the step 4-2 comprises:
step 4-2-1: limiting airport capacity increase
carrying out the following settings for each airport APTi in the national airport array APTLIST:
limiting the airport capacity increase: letting AptCapMaxRatioi=120%;
limiting the airport departure capacity increase: letting AptADRMaxRatioi=120%; and
limiting the airport arrival capacity increase: letting AptAARMaxRatioi=120%;
step 4-2-2: limiting sector capacity increase:
carrying out the following settings for each sector SECTORi in the national sector array SECTORLIST:
letting SectorCapMaxRatioi=120%;
the step 4-3 comprises:
step 4-3-1: clearing a flight processing status:
for each flight Flti in the national flight plan array FltListIni, letting DealMarki=0;
step 4-3-2: filtering flights to be processed:
starting from a first flight in the array FltListIni, taking the first flight the DealMarki of which is currently 0, letting DealMarki=1, and executing step 4-3-3; when all the flights are processed, completing the calculation in the step 4-3;
step 4-3-3: judging a sequenced adjustment mode of the flights:
when the sequenced adjustment mode of the flight AdjMarki is 3, it is indicated that the flight is suggested to be deleted and is not necessary to participate in flow statistics, returning to step 4-3-2; otherwise, executing step 4-3-4;
step 4-3-4: updating a flow of the departure airport of the flight:
setting the flight Flti to departure in a kth time slice of a jth airport APTj in the array APTLIST according to the departure airport DepApti and the sequenced time of departure STDi of the flight Flti then letting DepSimuFlowj,k=DepSimuFlowj k+1;
step 4-3-5: updating a flow of the arrival airport of the flight:
setting the flight Flti to arrive in the kth time slice of the jth airport APTj in the array APTLIST according to the arrival airport ArrApti and the sequenced time of arrival STAi of the flight Flti, then letting ArrSimuFlowj,k=ArrSimuFlowj,k+1; and
step 4-3-6: updating a flow of the sector passed by the flight:
setting the flight Flti to enter a jth sector SECTORj of the array SECTORLIST in the kth time slice according to the sector array PassSectorListi passed by the flight Flti and the sequenced sector-entry time PassSectori,j(InSTO) of each sector PassSectori,j in the array, and letting SectorSimuFlowj,k=SectorSimuFlowj,k+1; and then returning to step 4-3-2;
the step 4-4 comprises:
step 4-4-1: filtering the flights suggested to be deleted according to a capacity expansion limit, specifically comprising the following steps of:
step 4-4-1-1: clearing the flight processing status:
for each flight Fit, in the flight adjustment array FltList, letting the flight processing status be that DealMarki=0; and
letting tmpDelCount=0;
step 4-4-1-2: judging whether the filtering is finished:
when satisfying that tmpDelCount>=TargetDelNum, or all the flights in the array FltList are already processed, which means that DealMarki is 1, finishing the processing of the step 4-4-1; otherwise, continuing subsequent processing;
step 4-4-1-3: filtering flights to be processed:
starting from a first flight in the array FltList, taking the first flight Flti the DealMarki of which is currently 0, letting DealMarki=1, and developing subsequent operation;
step 4-4-1-4: judging a sequenced adjustment mode of the flight:
when the sequenced adjustment mode AdjMarki of the flight is not 3, it is indicated that the flight does not belong to the flights suggested to be deleted, returning to step 4-4-1-2; otherwise, continuing subsequent operation;
step 4-4-1-5: updating the flow of the departure airport of the flight:
setting the flight Flti to departure in the kth time slice of the jth airport APTj in the array APTLIST according to the departure airport and the estimated time of departure ETDi of the flight Flti, then letting tmpDepSimuFlowj,k=DepSimuFlowj,k, and tmpDepSimuFlowj,k=tmpDepSimuFlowj,k+1;
step 4-4-1-6: judging whether the flow of the departure airport of the flight exceeds the capacity increase:
when satisfying that tmpDepSimuFlowj,k>AptADRj,k*AptADRMaxRatioj, returning to step 4-4-1-2; and
when satisfying that (tmpDepSimuFlowj,k+ArrSimuFlowj,k)>AptCapj,k*AptCapMaxRatioj, returning to step 4-4-1-2;
step 4-4-1-7: updating the flow of the arrival airport of the flight:
setting the flight Flti to arrive in the kth time slice of the jth airport APTj in the array APTLIST according to the arrival airport and the estimated time of arrival ETAi of the flight Fltj, then letting tmpArrSimuFlowj,k=ArrSimuFlowj,k, and tmpArrSimuFlowj,k=tmpArrSimuFlowj,k+1;
step 4-4-1-8: judging whether the flow of the arrival airport of the flight exceeds the capacity increase:
when satisfying that tmpArrSimuFlowj,k>AptAARj,k*AptAARMaxRatioj, returning to step 4-4-1-2; and
when satisfying that (tmpArrSimuFlowj,k+DepSimuFlowj,k)>AptCapj,k*AptCapMaxRatioj, returning to step 4-4-1-2;
step 4-4-1-9: updating the flow of the sector passed by the flight:
setting the flight Flti to enter the jth sector SECTORj of the array SECTORLIST in the kth time slice according to the sector array PassSectorListi passed by the flight Flti and the estimated sector-entry time PassSectori,j(InETO) of each sector PassSectori,j in the array, then letting tmpSectorSimuFlowj,k=SectorSimuFlowj,k, and tmpSectorSimuFlowj,k=tmpSectorSimuFlowj,k+1;
step 4-4-1-10: judging whether the flow of the sector passed by the flight exceeds the capacity increase:
for any sector SECTORj passed by the flight Flti, when tmpSectorSimuFlowj,k>SectorCapj,k*SectorCapMaxRatioj is satisfied when the flight Flti enters the sector SECTORj in the kth time slice, returning to step 4-4-1-2;
step 4-4-1-11: updating the selected deleted flight volume:
letting tmpDelCount=tmpDelCount+1;
for the departure airport of the flight Flti, setting that DepSimuFlowj,k=tmpDepSimuFlowj,k for the airport;
for the arrival airport of the flight Flti, setting that ArrSimuFlowj,k=tmpArrSimuFlowj,k for the airport; and
for each sector SECTORj passed by the flight Flti, letting SectorSimuFlowj,k=tmpSectorSimuFlowj,k; and returning to step 4-4-1-2;
step 4-4-2: filtering the flights suggested for time adjustment according to the capacity expansion limit, specifically comprising the following steps of:
step 4-4-2-1: clearing the flight processing status:
for each flight Flti in the flight adjustment array FltList, letting the flight processing status be that DealMarki=0; and
letting tmpAdjCount=0;
step 4-4-2-2: judging whether the filtering is finished:
when satisfying that tmpAdjCount>=TargetAdjNum, or all the flights in the array FltList are already processed, which means that DealMarki is 1, finishing the processing of the step 4-4-2; otherwise, continuing subsequent processing;
step 4-4-2-3: filtering flights to be processed:
starting from the first flight in the array FltList, taking the first flight Flti the DealMarki of which is currently 0, letting DealMarki=1, and developing subsequent operation;
step 4-4-2-4: judging a sequenced adjustment mode of the flight:
when the sequenced adjustment mode AdjMarki of the flight is 3, it is indicated that the flight does not belong to the flights suggested for time adjustment, returning to step 4-4-2-2; otherwise, continuing subsequent operation;
step 4-4-2-5: updating a flow of the departure airport of the flight:
setting the flight Flti to departure in the kth time slice of the jth airport APTj in the array APTLIST according to the departure airport and the estimated time of departure ETDi of the flight Flti, then letting tmpDepSimuFlowj,k=DepSimuFlowj,k, and tmpDepSimuFlowj,k=tmpDepSimuFlowj,k+1; and
setting the flight Flti to departure in an mth time slice of the jth airport APTj in the array APTLIST according to the departure airport and the sequenced time of departure STDi of the flight Flti, then letting tmpDepSimuFlowj,m=DepSimuFlowj,m, and tmpDepSimuFlowj,m=tmpDepSimuFlowj,m−1;
step 4-4-2-6: judging whether the flow of the departure airport exceeds the capacity increase:
when satisfying that tmpDepSimuFlowj,k>AptADRj,k*AptADRMaxRatioj, returning to step 4-4-2-2; and
when satisfying that (tmpDepSimuFlowj,k+ArrSimuFlowj,k)>AptCapj,k*AptCapMaxRatioj, returning to step 4-4-2-2;
step 4-4-2-7: updating a flow of the arrival airport of the flight:
setting the flight Flti to arrive in the kth time slice of the jth airport APTj in the array APTLIST according to the arrival airport and the estimated time of arrival ETAi of the flight Flti, then letting tmpArrSimuFlowj,k=ArrSimuFlowj,k, and tmpArrSimuFlowj,k=tmpArrSimuFlowj,k+1; and
setting the flight Flti to arrive in the mth time slice of the jth airport APTj in the array APTLIST according to the arrival airport and the sequenced time of arrival STAi of the flight Flti, then letting tmpArrSimuFlowj,m=ArrSimuFlowj,m, and tmpArrSimuFlowj,m=tmpArrSimuFlowj,m−1;
step 4-4-2-8: judging whether the flow of the arrival airport of the flight exceeds the capacity increase:
when satisfying that tmpArrSimuFlowj,k>AptAARj,k*AptAARMaxRatioj, returning to step 4-4-2-2; and
when satisfying that (tmpArrSimuFlowj,k+DepSimuFlowj,k)>AptCapj,k*AptCapMaxRatioj, returning to step 4-4-2-2;
step 4-4-2-9: updating the flow of the sector passed by the flight:
setting the flight Flti to enter the jth sector SECTORj of the array SECTORLIST in the kth time slice according to the sector array PassSectorListi passed by the flight Flti and the estimated sector-entry time PassSectori,j(InETO) of each sector PassSectori,j in the array, then letting tmpSectorSimuFlowj,k=SectorSimuFlowj,k, and tmpSectorSimuFlowj,k=tmpSectorSimuFlowj,k+1; and
setting the flight Flti to enter the jth sector SECTORj of the array SECTORLIST in the mth time slice according to the sector array PassSectorListi passed by the flight Flti and the sequenced sector-entry time PassSectori,j(InSTO) of each sector PassSectori,j in the array, then, letting tmpSectorSimuFlowj,m=SectorSimuFlowj,m, and tmpSectorSimuFlowj,m=tmpSectorSimuFlowj,m−1;
step 4-4-2-10: judging whether the flow of the sector passed by the flight exceeds the capacity increase:
for any sector SECTORj passed by the flight Flti, when tmpSectorSimuFlowj,k>SectorCapj,k*SectorCapMaxRatioj is satisfied when the flight Flti enters the sector SECTORj in the kth time slice, returning to step 4-4-2-2; and
step 4-4-2-11: updating the selected time-adjusted flight volume:
letting tmpAdjCount=tmpAdjCount+1;
for the departure airport of the flight Flti, setting that DepSimuFlowj,k=tmpDepSimuFlowj,k for the airport, and DepSimuFlowj,m=tmpDepSimuFlowj,m;
for the arrival airport of the flight Flti, setting that ArrSimuFlowj,k=tmpArrSimuFlowj,k for the airport, and ArrSimuFlowj,m=tmpArrSimuFlowj,k; and
for each sector SECTORj passed by the flight Flti, letting SectorSimuFlowj,k=tmpSectorSimuFlowj,k, and SectorSimuFlowj,m=tmpSectorSimuFlowj,m; and
returning to the step 4-4-2-2; and
step 4-4-3: generating the airspace network optimization solution, specifically comprising the following steps of:
step 4-4-3-1: clearing the solution:
clearing the airspace network optimization solution AspOptyList, and letting AspOptyListNum=0;
step 4-4-3-2: counting airports needing to be optimized:
circularly carrying out the following processing for each airport APTi in the national airport array APTLIST:
step 4-4-3-2-1: calculating the deviation between the flow and capacity of each time slice:
calculating a deviation (DepSimuFlowi,j−AptADRi,j) between a departure flow and a departure capacity, a deviation (ArrSimuFlowi,j−AptAARi,j) between an arrival flow and an arrival capacity, and a deviation (DepSimuFlowi,j+ArrSimuFlowi,j−AptCapi,j) between a total flow and a total capacity of the airport APTi in each time slice J; and accordingly, calculating a maximum deviation MaxDepFlowVsi between the departure flow and the departure capacity, a maximum deviation MaxArrFlowVsi between the arrival flow and the arrival capacity, and a maximum deviation MaxAspFlowVsi between the total flow and the total capacity of the airport APTi in each time slice J;
when MaxDepFlowVsi<0, letting MaxDepFlowVsi=0;
when MaxArrFlowVsi<0, letting MaxArrFlowVsi=0; and
when MaxAspFlowVsi<0, letting MaxAspFlowVsi=0;
step 4-4-3-2-2: filtering a capacity-expanded airport and calculating a capacity-expanded degree:
when the airport APTi satisfies that (MaxDepFlowVsi>0∥MaxArrFlowVsi>0∥MaxAspFlowVsi>0), defining the airport as an airspace to be optimized AspOptyk, and letting AspOptyk(CODE)=APTi(CODE), AspOptyk(TYPE)=1, AspOptyk(Cap)=MaxAspFlowVsi, AspOptyk(AAR)=MaxArrFlowVsi and AspOptyk(ADR)=MaxDepFlowVsi; and
adding AspOptyk to the airspace network optimization solution AspOptyList, and letting AspOptyListNum=AspOptyListNum+1;
step 4-4-3-3: counting sectors needing to be optimized:
circularly carrying out the following processing for each sector SECTORi in the national sector array SECTORLIST:
step 4-4-3-3-1: calculating the deviation between the flow and capacity of each time slice:
calculating a deviation (SectorSimuFlowi,j−SectorCapi,j) between the flow and the capacity of the sector SECTORi in each time slice j, and accordingly, counting a maximum deviation MaxAspFlowVsi between the flow and the capacity of the sector SECTORi in each time slice; and
when MaxAspFlowVsi<0, letting MaxAspFlowVsi=0; and
step 4-4-3-3-2: filtering a capacity-expanded sector and calculating a capacity-expanded degree:
when the sector SECTORj satisfies that MaxAspFlowVsi>0, defining the sector SECTORj as an airspace to be optimized AspOptyk, and letting AspOptyk(CODE)=SECTORi(CODE), AspOptyk(TYPE)=0, and AspOptyk(Cap)=MaxAspFlowVsi; and
adding AspOptyk to the airspace network optimization solution, and letting AspOptyListNum=AspOptyListNum+1;
step 5: the flights are controlled by the airspace network optimization method for taking off and landing within the flight normality target, which avoids flight delays, reduces flying times of the flights and saves fuels of the flights.