An empirically grounded agent based model for modeling directs, conflict detection and resolution operations in air traffic management

We present an agent based model of the Air Traffic Management socio-technical complex system aiming at modeling the interactions between aircraft and air traffic controllers at a tactical level. The core of the model is given by the conflict detection and resolution module and by the directs module. Directs are flight shortcuts that are given by air controllers to speed up the passage of an aircraft within a certain airspace and therefore to facilitate airline operations. Conflicts between flight trajectories can occur for two main reasons: either the planning of the flight trajectory was not sufficiently detailed to rule out all potential conflicts or unforeseen events during the flight require modifications of the flight plan that can conflict with other flight trajectories. Our model performs a local conflict detection and resolution procedure. Once a flight trajectory has been made conflict-free, the model searches for possible improvements of the system efficiency by issuing directs. We give an example of model calibration based on real data. We then provide an illustration of the capability of our model in generating scenario simulations able to give insights about the air traffic management system. We show that the calibrated model is able to reproduce the existence of a geographical localization of air traffic controllers’ operations. Finally, we use the model to investigate the relationship between directs and conflict resolutions (i) in the presence of perfect forecast ability of controllers, and (ii) in the presence of some degree of uncertainty in flight trajectory forecast.


Introduction
According to the majority of predictions the air traffic demand will increase for both business and leisure flights during the next years. This increase will bring the current air traffic management (ATM) system close to its capacity limits. As a consequence an overall improvement of the air transportation system productivity with respect to, for example, traffic flows, air traffic simulations at the level of an ACC. Also it is worth noting that in our model controllers activity is not limited to the resolution of potential safety events. By starting from the consideration that one of the main tasks of controllers is that of facilitating airlines operations we have implemented a module for the issuing of directs in our model. Directs are flight trajectory modifications that are issued by controllers at a tactical level in order to speed up the passage of aircraft within a certain airspace therefore facilitating the airline operations. We believe this is one of the novelties of our model, not present in the models we have recalled above. In our model, once trajectories have been made conflict free the controller searches for possible improvements of the system efficiency by issuing directs. Our implementation of heuristics adopted by controllers to issue directs is based on information about the current state of each specific sector of the airspace as well as on information relative to neighboring airspaces. Our model can be used to perform scenario simulations able to give insights about the ATM system. For example, our model shows the relationship between the frequency of issued directs and conflict resolution events conditioned to degree of forecasting ability of controllers. This relationship can be relevant to evaluate potentials and problems associated with the evolution of the European ATM system from the current to the so-called SESAR [1] scenario. In fact, due to the foreseen traffic increase, it is expected that the management of the European air transportation system will require major changes to overcome present and future challenges. To tackle these challenges, in 2007 the European Commission created the Single European Sky ATM Research (SESAR) with the scope of coordinating major research and development efforts about air transportation systems performed in Europe. Since then SESAR has been working on defining, exploring, testing, and implementing new solutions to cope with the foreseen air traffic increase. Among these solutions one key concept is that of freerouting [1,3]. This type of innovation has already been implemented in some limited areas of the European airspace [3]. In fact, in the current scenario, flight plans are given as a sequence of navigation points that have to be crossed at a certain time and at a certain altitude. Navigation points are specific bi-dimensional points of the airspace that are used as a reference in the planning, management and execution of all flights. According to the future SESAR scenario all aircraft will be allowed to plan an optimal trajectory without the constraint of passing through navigation points from departure to arrival. The current scenario, where flight trajectories follow a network of navigation points and pre-defined routes will be progressively abandoned. Currently, air traffic controllers have the role of avoiding conflicts in some specific areas that are mainly located around the navigation points where routes intersect. The implementation of free-routing poses therefore some challenges in terms of safety of the operations and of complexity of the situation that controllers have to manage. For instance, conflicts may become harder to detect due to the fact that they will be spread all over the airspace. Moreover, directs were also used by air traffic controllers as a way to let an aircraft avoid a possible conflict and, at the same time, avoid a conflict. The fact that in the future SESAR scenario all aircraft will follow straight trajectories, will deprive air traffic controllers of such possibility.
A previous version of our model able to perform simulations relevant for the SESAR scenario has been provided in [16,17]. The present version of the model expands the possibilities of simulations useful to evaluate robustness and performances of different implementations of the SESAR scenario and of any other scenario of evolution of the air transportation system. The paper is organized as follows. In section 2 we present the data used for the empirical characterization of the system and for model calibration. In section 3 we describe the main features of the modules of the ABM. In section 4 we summarize the model calibration. In section 5 we show a few results obtained with our ABM using the model parameters obtained with the calibration procedure and in section 6 we show a few results obtained with our ABM and trying to exploit the possible range of model parameters. In section 7 we finally draw our conclusions.

Data
Original data are collected by Eurocontrol, the European public institution that coordinates and plans air traffic control for all Europe. Data were obtained as part of the SESAR Joint Undertaking WP-E research project ELSA "Empirically grounded agent based model for the future ATM scenario". Data can be accessed by asking permission to the owner (Eurocontrol). Eurocontrol databases include all flights occurring in the enlarged European Civil Aviation Conference (ECAC) airspace even if they departed and/or landed in airports external to the enlarged ECAC airspace. Countries in the enlarged ECAC space are: Iceland (BI), Kosovo Original data are recorded in the demand data repository (DDR) files where information consists of the trajectories of flights, along with some additional information about flights (IATA code, type of aircraft, among the others). The other source of information is given by the network estimation visualization of ACC capacity (NEVAC) files. NEVAC files [18] contain the definition (borders, altitude, relationships, time of opening and closing) of airspace elements, namely airblocks, sectors, Flight Information Region (FIR), etc. The active elements, at a given time, constitute the configuration of the airspace at that time. Thus, they give the configuration of the airspaces for an entire AIRAC cycle. In the present study we only use the information on sectors, FIRs or ACCs and configurations to rebuild the European airspace.
To properly process this large amount of structured data. We have populated a specialized database using selected records of DDR and NEVAC original files. The structure and the type of data retained in this specialized database have been described in Ref. [19]. In the present paper, we analyze data referring to the Aeronautical Information Regulation and Control (AIRAC) cycle beginning on May 6th, 2010 and ending on June 3rd, 2010, corresponding to the AIRAC cycle number 334. We use the information of the DDR files in order to set some filters. In fact, from the database we remove a certain number of flights that are not directly related to commercial air traffic management. For example we remove military flights in operation. Hereafter we list the filters we used to select our set of data: (a) all flights occurring during weekdays; (b) flights having at least two points in the Italian ACC airspace (LIRR); (c) flights with at least two navigation points crossed at an altitude higher than 240FL in the flight plan; (d) only non-military and commercial flights having a IATA code; (e) only landplane aircraft, i.e. no helicopter, gyrocopter, etc; (f) flights with a duration longer than 10 minutes.
A planned or a realized trajectory is made by a sequence of navigation points planned or crossed by the aircraft, together with altitudes and timestamps. For each flight, we have access to two different flight plans: the last filled plan (labeled as M1 type file)-filed from 6 months to one or two hours before the real departure-and the realized flight plan (labeled as M3 type file), describing the real trajectory updated by radar tracks. Our study investigates air traffic management on the en-route phase. After the filtering procedure 35704 flights are retained in the investigated AIRAC. In order to include the local constrains of the sector capacities, sectors are defined as described in reference [20]. These sectors are static bi-dimensional projection of the sectors higher than FL 350.

The model
In our agent-based model we have two types of agents: (i) aircraft/pilots that are active within an ACC of the European airspace, and (ii) air traffic controllers (ATCOs) that manage the flight trajectories in the different sectors of the ACC. The pilots are passive agents, in fact they follow the flight plan or the instructions of the ATCOs if they were different. The ATCOs monitor the execution of the flight plan. The type of actions decided by controllers depends by the current workload of their own sector and by the workload of the neighboring sectors as well as by the details of the flight plans. Our ABM simulates realizations of the en-route phase of the flight trajectories originally planned.
The interaction between the aircraft/pilots and air traffic controllers is needed in order to manage the changes from the planned flight due to unforeseen events, e.g. weather events, conflict resolutions, etc. Another important task involves the issuing of directs. A direct is a change of trajectory from the planned one such that the aircraft is allowed to follow a shorter flight trajectory by skipping one or more navigation points of the M1 flight-plan. In fact, whenever possible, the model allows directs that are given within an ACC in order to speed up the passage of the aircraft, provided that no additional conflict is created. In these modules the model computes the position of the aircraft with a certain look-ahead, estimates the sectors workload and defines the pairs of aircraft to be verified the one against the other in order to check for possible conflicts. The logical blocks shown in the right part of the figure are described in sections 3.5 and 3.7. They refer to the enroute management of flight trajectories needed either to solve possible conflicts or to issue directs in order to shorten the passage of an aircraft in a sector. In section 3.5 we describe (i) how distances between aircraft pairs are computed within the model, (ii) how this information is used in order to identify the aircraft pairs that are below a safety threshold and (iii) how trajectories are modified in order to solve the conflicts. Finally, in section 3.7 we describe how directs are issued, after checking that safety requirements and capacity constraints are not infringed.

Overview of the model
We have designed the code in a modular way that allows to swap the priority of the strategies adopted by the controllers. In fact, as a default controllers first check for the possibility of doing re-routings and then change the flight altitude (FL change). Therefore, due to the modularity of the code, the sequence among the different modules can be changed by the user of the code.
The code that implements the present model is written in C [21] and it is available at the following URL: http://ocs.unipa.it/software.html:ELSATacticalLayer. A previous version of the code specifically dedicated for performing simulations in the SESAR scenario is available at the following URL: http://ocs:unipa:it/software:html:ELSASESARSimulator.

Navigation points
The planned flight trajectories are sequences of specific points of the airspace called navigation points that are crossed by the aircraft at specific times, flight levels, and within a specific sector. The velocity of each aircraft during the flight interval between two navigation points is assumed to be constant and its value is estimated from the schedule of the flight plan. In our simulations all navigation points present in the last-filed flight-plans are used. When controllers decide a flight trajectory change they might use temporary navigation points that are set by the ABM model in a way similar to what is done by controllers in real cases documented in the historical data we use. In the simulations we present in this paper the temporary navigation points are randomly uniformly distributed within the Italian ACC.
It should be noted that not all temporary navigation points will be used in the flight deviations. Only a set of them will be selected, as we will explain below. All the unused ones will be eliminated from the analysis after all the flights in the ACC will be managed. As we will explain in section 3.6.1, they are generated to allow the aircraft to deviate from the planned trajectories without necessarily passing over a predefined navigation point which might be too far.

Time-step configuration
The ABM is a discrete-time model. At each time-step the ReadyToFly module selects the active aircraft, then the Expected Position module computes the expected dynamical evolution of all trajectories within a look-ahead Δt. In fact, we have two possible look-ahead Δt, that are used depending on the controllers' activity. The look-ahead assumes the value Δt = Δt d when the Indeed, in the basic setup, the controller forecast of the aircraft position is exact within its time look-ahead. Our ABM allows to introduce some errors in the forecast of the controller. This is done by setting a parameter l 6 ¼ 0 which is controlling the uncertainty in the estimation of the velocity of the aircraft. Specifically, the uncertainty in the controller's forecast is introduced by the following procedure: (i) between time t (current time) and t + Δt s , each aircraft maintains the planned velocity, (ii) between t + Δt s and t + Δt l , the model introduces an where v is drawn at random from a uniform distribution in the range −l and l . With this choice the controller makes bigger errors on positions on longer times. The choice of considering a uniform distribution is done for the sake of simplicity. That gives us the opportunity of exploring the impact of uncertainty in the ATCOs management procedures. Hereafter, we will consider two rather different cases: l = 0 (no uncertainty) and l = 0.1 (10% of maximal uncertainty).
The velocity of aircraft is always the one of the planned flight trajectories in the time interval between t and t + Δt s . The only possible exception is in the case of re-routings, as explained below. The Sectors workload module is used to set up the configuration of airspace sectors and to determine the number of aircraft present in each sector analyzed by ATCOs. In fact, any ACC is divided into a number of sectors. Each sector is characterized by its geographical boundaries and its capacity. Usually such capacity is set in advance by the service providers. Since we do not have such information, we infer the capacity from data and we estimate it as the maximum number of aircraft that are simultaneously present in a sector within a time window of one hour [20]. This information is obtained from the flight plans of the AIRAC used in our simulations. In addition to the inferred capacity of a sector, we also dynamically estimate its workload. Specifically, we estimate a sector workload as the number of flights planned to cross the sector during the time window of an hour. At each time-step the ABM evaluates the workload of each sector of the ACC.

Priority list of controllers' actions
At each time step we create a list of flights active in the considered time-step. The list is randomly ordered. The order of the list is followed by the controller in her attempt to solve potential conflicts and to issue directs. Specifically, the i-th aircraft trajectory in the list is checked against the trajectories of previous listed i − 1 flights. For example, the first aircraft in the list will perform its planned trajectory whereas the trajectory of the second one will be checked with respect to the trajectory of the first one. The trajectory of the third aircraft will be checked with respect to the trajectories of the second and the first ones and so on. Indeed, to speed computation, the trajectory check between two aircraft is not performed when the two trajectories are too far to interact within the look-ahead time interval.
The random reordering of the flight priority list is done in order to be sure that the trajectories to be deviated are not always the same ones. If a conflict involving the i − th aircraft is not solved by one of the procedures followed by the controller, then the list is modified by putting the i − th aircraft in the first position of the list and the trajectory analysis of the time step is repeated from the beginning. When this redefinition of the priority list is repeated more than 50 times for a time step the simulation is aborted. It is worth reporting that we never had to abort a simulation in the runs performed to obtain the results presented in this paper.

Conflict detection module
The collision detection module calculates the minimum distance for each pair of aircraft positions between the flight i and the flights labeled as i − 1 in the priority list. This operation is repeated for all the times t + kδt with k ranging from 1 to N such that t + Nδt t + Δt m where Δt m is equal to Δt l or Δt d depending whether the conflict detection module has been activated by a re-routing procedure or by a direct procedure. are computed by using the Haversine distance [22] between each pair of flight positions. It is worth mentioning that the computation of the Haversine distance is particularly time-consuming. Therefore we have also implemented in the code the possibility that in some specific cases the Euclidean distance is used instead of the Haversine one. This is for example advised when it is necessary to perform a very large number of simulations in a limited portion of the airspace.
For pairs of aircraft flying at different flight levels at time t + kδt the distance is set to infinity because aircraft flying at different flight level are not raising minimum separation issues. For each column we select the minimum value and obtain a vector d i min ðkÞ of length N. A possible conflict between two aircraft flying at the same flight level is detected at time t + kδt whenever the elements of d i min ðkÞ are smaller than the safety distance threshold d thr that is usually set to 5 NM. This reference value is the standard value used in ATM for conflict detection, see Ref. [23].
In order to mimic some heuristics typically used by air traffic controllers when detecting conflicts we introduce in the ABM a linear growth of the safety threshold d thr as a function of the time interval from the present time. In fact when an air traffic controller forecasts the position of an aircraft at a far future time he uses an additional space of separation between the aircraft to be safe in the forecast. Our model therefore uses a safety distance threshold defined as: where Δd thr is one of the model parameters.
When a conflict is detected the algorithm proceeds to the next module that performs the de-conflicting of flight trajectories.

Conflict resolution module
After the conflict detection module has detected a conflict, this module searches for a new conflict free trajectory. It is conceived as a two-step algorithm that acts on the search of a new trajectory. The first step attempts to perform a re-routing of the flight trajectory. When the rerouting is successful the new trajectory is accepted. If the re-routing module fails to find an appropriate new trajectory the algorithm moves to the second step that requires a change of flight level for the aircraft.
3.6.1 Re-rerouting submodule. The procedure of the re-routing attempt is illustrated in Fig 3. We first identify the position B (not necessarily a navigation point) defined by k = 0 at the considered time step. We then identify the navigation point A which is the first navigation point after the area of the potential collision (filled circle in the figure). With such procedure we are attempting to re-route the trajectory so that all navigation points that are in the conflict area plus the A navigation point are avoided. These navigation points are replaced by one temporary navigation point (see T point in Fig 3). The temporary navigation point is selected from several possibilities (see grey points in Fig 3) by choosing the navigation point solving the conflict that presents the shortest path between position B and navigation point E, i.e. the navigation point where the flight trajectory is re-routed. Another constraint about the re-routing trajectory is the request that the deviated trajectory from the planned one cannot exceed an angle α M both for the α in and αout angles observed between the planned and the re-routed trajectories (see Fig 3). We set the average velocity of the aircraft in the new trajectory segments equal to the average velocity of the replaced planned trajectory segments.
If the re-routing trajectory is not able to find a solution the re-routing submodule attempts to re-route the flight trajectory by moving forward the navigation point E and by looking again for a re-routing trajectory. When a possible solution is found, the result of the search is accepted if the re-routing trajectory deviates from the planned trajectory for less than a maximal time T max . T max is the maximal time that an aircraft can spend away from its planned trajectory each time its flight trajectory is modified. If the solution found has a deviation time longer than T max the re-routing submodule is not selecting any new trajectory and the resolution of the conflict is passed to the flight level module. In the right panel we show the distance between the two aircraft for the planned trajectory (blue dots) and the ones considered by the ABM module (gray lines). Amongst those, the trajectory that satisfies the requirement of minimum separation distance is highlighted in red, as in the left panel.
3.6.2 Flight level change submodule. The second step of the conflict resolution module involves changes of flight level. A flight level (FL) is a unit measure defined as altitude above sea-level in 100 feet units measured according to a standard atmosphere. Allowed flight levels are separated by 1000 feet, i.e. 10 flight levels (separation levels). This is the standard separation vertical distance between any pair of aircraft, see Ref. [23]. Moreover, in our model the semicircular rule has been considered, meaning that aircraft flying in opposite directions are allowed to fly only along odd or even levels respectively. Therefore when an aircraft needs to be moved to another separation level, it will not be moved to the next first one but to the second one in order to respect the semicircular rule, thus performing a jump of 2000 feet or 20 FLs.
All flights are considered to be available in the planned trajectories. In our agent based model aircraft can move two Flight Levels (FL) first upwards and, if the conflict cannot be solved by a move upwards, downwards. The model assumes that the flight level change is abrupt occurring when the conflict resolution is settled. If no flight level is available to solve the conflict then the list is reshuffled by moving the considered flight in the first position of the priority list.
When a flight level change is executed the flight remains in the new flight level for a time equals to T max . After T max the aircraft goes back to the flight level of the planned flight.

Direct module
A direct, i.e. a change of the planned trajectory significantly shortening the flight path, is made by skipping one or more navigation points of the flight plan and flying straightly from the current navigation point to a distant navigation point of the flight plan. In our algorithm this module is executed with a probability depending on the workload of sectors of initial and ending navigation points of the direct.
When the monitored workload of a sector exceeds its inferred capacity all requests of directs that come from other sectors are not allowed while re-routing due to safety issues are still allowed. This means that, no change with respect to the planned trajectories is allowed when the workload equals or exceeds the inferred capacity with the exception of those changes triggered by the need of a resolution of a safety event. Under this workload condition incoming flights have to enter the sector through the navigation point specified in the original flight plan.
Specifically, let n i be the first navigation point to be crossed of the current time step, and n m the navigation point where the flight will return on its original flight plan. By issuing a direct trajectory from n i to n m therefore m − i − 1 navigation points will be eliminated from the new trajectory, as illustrated in the left panel of Fig 4. The direct module first evaluates how many navigation points can be skipped with the constraint that the flight has to come back to the planned trajectory within a time interval equal to T max = 20 min, and the direct is conditioned to the inferred sectors' capacity of the adjacent sectors. Such choice of T max has been done in agreement with the indications of the air traffic controllers consulted within the ELSA project of SESAR. Successively, the model evaluates if the new trajectory will be involved in conflicts. In order to do this check we use the Conflict Detection module of section 3.5 where we set the lookahead Δt = Δt d . If the direct is safe and the angle between the new and original trajectory is larger than a sensitivity threshold value α s = 1˚then the new trajectory is accepted, otherwise the algorithm tries a suboptimal solution, see the left panel of Fig 4. The probability to issue a direct for an ATCO operation on a sector s is dependent on the workload and by the inferred capacity of the considered sector. Let C s be a constant of the ssector that in our calibration procedure we fixed to be the inferred sector capacity obtained from real data [20]. Let P s (N s ) be the probability to issue a direct in the s-sector when the workload of sector s is N s . For the sake of simplicity we model P s (N s ) as a linear decreasing function of N s , see the right panel of Fig 4, The probability to attempt a direct is function of two parameters p d and x c . The first P s (N s = 1) = p d is the probability to attempt a direct if just one flight is in the sector. The second parameter x c is used to control the slope of probability as a function of the workload, as illustrated in the right panel of Fig 4. The p d parameter plays the role of a scale factor for the overall probability. The x c parameter measures the controllers confidence in approaching the maximum sector's inferred capacity. While N s and C s are parameters depending on each specific sector, p d and x c are global parameters that are set across the whole considered ACC.
In the present version of the model, air traffic controllers behave in the same way in the different sectors. However, by introducing a direct probability P s that depends on the actual inferred capacity of each sector, see Eq 2, we have realized a genuinely multi-sector ABM where directs are issued differently across the ACC and across the day. The choice of the use of the same parameters for different controllers and sectors (except inferred capacity) is done in order to make the ABM model as parsimonious as possible.

Model's parameters
In Table 1 we summarize the model's parameters used in the different modules described above. In the third column of the Table we give a short description of the parameter and in the fourth column we give a categorization of the parameters describing whether the parameter is calibrated from data (CD) or it is set according to information obtained by interviewing ATM experts and ATCOs (CV).
The parameters that need to be calibrated from data are a few. There are also several parameters (CV category) that can be inferred from the typical behavior of controllers. These are

Calibration of the model
In this section we want to discuss the calibration activities that have to be performed in order to use our model. We will here refer to the air-traffic of LIRR ACC (Rome, Italy) between 2010-05-06 and 2010-06-03, i.e. the 334 AIRAC. The input data of the model are taken from the database developed within the ELSA [24,25] project and briefly described in section 2. We consider as an input to the model the M1 flight plans with the constraints indicated in section 2. To focus our attention on the en-route phase we filtered out from the flight plans all navigation points crossed at an altitude lower then 240FL. After the filtering procedure 35704 flights were retained in the entire AIRAC. In order to include the local constrains of the sector capacities, it is important to remember that the sectors are not static geometric regions but they are merged together and split dynamically to fulfill the occupancy requirement. For the sake of simplicity we will refer to the collapsed sector defined in the reference [20]. These are a static bi-dimensional projection of the sectors higher than FL 350. The sectors capacity inferred from data is defined as the maximum number of flight expected within a time-window of one hour inside the collapsed sector.
In this section we describe our calibration procedure. In our simulations we consider the scheduled flights of the LIRR ACC (Rome, Italy) of the AIRAC 334 described in section 2. The calibration procedure is performed by choosing a specific stylized fact observed in real data and requesting that model simulations are able to reproduce them.
Indeed, there is some degree of arbitrariness in selecting the specific stylized fact. Different ones can be chosen depending on the specific aspects of the ATM researchers want to investigate. In the present work, in order to calibrate the models parameters related to controllers' behavior we choose as stylized fact a statistical regularity concerning the intraday pattern of directs issued by ATCOs. Specifically we calibrate our model to reproduce the intraday evolution of the deviation rate metric that has been recently introduced in Ref. [26].
The deviation rate introduced in Ref. [26] quantifies the deviations observed from the planned flight trajectories. We call deviation the event such that an aircraft passing over a scheduled navigation point does not go to the next planned one. The deviation rate is defined as the ratio between the observed number of deviations and the number of possible deviations in the airspace estimated in a one hour time window. The number of possible deviations is defined as the number of planned navigation points that are actually crossed by the aircraft. This metric is computed for each hour of the day by using the information about all planned and realized flight trajectories.
This metric describes an unknown mixture of ATCO operations, i.e. re-routing and direct. In [26] it is shown that, in relative terms, directs are mainly issued during night-time i.e. in low traffic conditions while they are relatively less issued during day-time. Our choice is to reproduce this intraday statistical regularity. In the right panel of Fig 5 we show (blue circles) the empirical behavior of the deviation rate estimated over the entire 334 AIRAC cycle as a function of the time of the day. The deviation rate presents a U-shape having higher values during night hours and lower values during day hours. The error bars are computed as the 95% Wilson score interval [27] used to associate a confidence interval to a proportion in a statistical population.
Hereafter we detail the procedure we have used to calibrate p d , x c and Δt l parameters. In our calibration procedure we considered p d 2 [0.03, 0.5] with steps of 0.01567, x c 2 [0.34, 1.5] with step of 0.03867 and Δt l 2 [5,15] minutes with steps of 2.5 minutes and for each triplet of parameters we performed one single simulation for each considered day in the AIRAC, totaling 20 days of simulations-with Saturday and Sundays excluded. From the output of the ABM we estimated the deviation rate with a time window of one hour. By using the results of simulations, we minimized the chi-squared χ 2 computed starting from the deviation rates obtained with the ABM and the values estimated from real data. The χ 2 is therefore computed over 24 points. In the left panel of Here we want to assess the importance of the calibration procedure. In fact, in Fig 6 we show results that can be obtained by our model by choosing sets of parameters different from the calibrated ones. The first example sets that no direct is issued (left panel of Fig 6). The "No Directs" case is obtained by setting p d = 0 and Δt l = 7.5 min. The second example sets that the probability to issue a direct is independent from the sector workload (right panel of Fig 6). This second example is obtained by setting to the case when p d = 0.24, Δt l = 7.5, as in the calibrated case and x c = 1000. Such a value of x c ensures that the sector workload plays no role when directs are issued. With the chosen parameters we have that the deviations rate simulated during night-time corresponds to the empirical case.

Statistical regularities of ABM simulations
In this section we give some examples of the simulation outputs of our model obtained with the parameters of the calibration procedure of section 4 for the evolution of the planned flight trajectories of the LIRR ACC (Rome, Italy) of the AIRAC 334.   An agent based model for tactical air traffic management interval. Similarly, N R is the number of re-routings and N F is the number of flight level changes. In Fig 7 we show the ratio of directs N D /N O (blue circles), the ratio of re-routings N R / N O (green circles), and the ratio of flight level changes N F /N O (red circles). The error bar is to the 95% Wilson confidence interval. The ratio of flight level changes (red circles) and the ratio of re-routings (green circles) issued to solve possible conflicts are larger during day-time rather than during night-time. It is worth noting that the number of re-routing is always higher than the number of flight level changes. This is a satisfactory outcome of our model consistent with the feedback we have received from ATM experts. The ratio of directs (blue circles) behaves in the opposite way. This is again expected, given the fact that lower traffic conditions during night allows for the possibility of optimizing trajectories more easily [26]. During day-time, the sector workload can be different for different sectors and therefore maximal sector capacity is not reached at the same time for all sectors. This can be an explanation why directs are also issued during day-time.

Conflict resolution in the ABM
In this section we discuss the ability of our model in performing conflict resolution by investigating the distance observed between all pairs of aircraft flying during a given day.
In Fig 8 we show the cumulated distribution of the distance between any pair of aircraft for a simulation performed for the first day of AIRAC 334. The red curve shows the distribution of the planned trajectories, the blue curve (labeled as simulation I) is the cumulated distribution of the flight trajectories simulated with our model by using the safety threshold of 5 NM. The green curve (labeled as simulation II) is the cumulated distribution of the flight trajectories simulated with our model by using a safety threshold that increases with the lookahead, as described in section 3.5. Specifically, in the second simulation we set Δd thr = 0.33.
In the figure we highlight as a vertical line the value of 5 NM. It is worth noting that both the blue and the green lines show values that are on the right of the vertical line. This means that our ABM solves all conflicts that were present in the planned flight of the day. The blue line presents values that are quite close to the 5 NM threshold whereas, as expected, the green line has lower values for distances slight above 5NM, thus indicating that aircraft are more separated.
The parameter Δd thr therefore allows the model to fine tuning the probability of observing a pair of aircraft with a given minimal distance in a given day. As also recalled in Table 1, Δd thr is a parameter that might in principle reflect the ATCOs behavior when managing traffic with a large look-ahead. In fact, a large Δd thr would indicate that human controllers tend to be overly safe when managing trajectories with a large look-ahead and tend to separate aircraft pairs more than it is needed. The model shows that this might end up in having aircraft separated more the 5 NM and therefore in a non-optimal usage of the available airspace that in turn leads to a reduction of the maximal sector capacity. On the other hand, a small Δd thr would indicate that human controllers are rather confident about their procedures even for aircraft that are far away. In this case our simulations indicate that all available airspace is used which might lead to an optimal assessment of sector capacity.  Two comments are in order. On one hand, one can notice that the ABM well reproduces the empirical observations. On the other hand, it is worth noticing that these two distributions show tails that are fatter than those of the distribution obtained with the random sampling. This indicates that there are trajectory segments where the number of operations done by the controllers is higher than what should be expected by the random null model. This clearly suggests that ATCO operations tend to be focused on specific regions of the ACC. The comparison with such simple random null model therefore allows us to highlight the presence of specific regions in the airspace that cannot be explained just with the heterogeneity of the flux of aircraft: it is therefore a genuine effect produced by the ATCOs and it is quite well reproduced by the ABM.

Spatial heterogeneity of the operations
However, although the ABM well reproduces the existence of regional heterogeneity, it is worth emphasizing that there are airspace regions where the ABM and human ATCOs manage traffic in a different way. In Fig 11 we show the difference M in a specific region of the ACC located close to Genoa and characterized by high traffic conditions. The left panel refers to the empirical case while the right panel refers to numerical simulations performed with our ABM. The difference M is here shown through a color scale reported on the right of each panel. One can see that there are trajectory segments where ATCOs do not modify planned trajectories (lighter colors) that are instead quite heavily affected by the ABM (darker colors) and viceversa.
In fact, this should not be surprising given the fact that ATCOs have to deal with tactical conditions (weather events, aircraft problems, . . ..) that our ABM does not take into account. Moreover, this different behavior might also be due to the fact that human controllers tend to be overly safe and therefore have a conservative style in managing the aircraft trajectories.

Dependence of directs and conflict resolution rates from model parameters
Finally, we report on how our model performs under parameters different from the ones chosen for calibration. Specifically, we evaluate the performances of our model with respect to These results refer to ATCOs able to do a perfect forecast within the look-ahead Δt d used when directs are issued. In reality, many unexpected factors can contribute to make uncertain a forecast. Uncertainty can result for example from a flight entering the airspace within Δt d unexpectedly or a weather event, or some errors in the forecast of aircraft positions. We evaluate the performance of our ABM model with respect to this type of uncertainty by performing a series of simulations in the presence of a source of noise. Specifically, the source of noise is introduced in the velocity of aircraft. In the right panel of Fig 12 we show the results of a numerical simulation obtained by introducing noise in the velocity estimation of the aircraft. The parameter used is l = 0.1 which is a quite large value. This produces the effect of increasing the number of needed conflict resolutions especially for simulations with a high value of the look-ahead.
In Table 2 we report the result of a linear fitting procedure on the five sets of simulations obtained for different values of Δt l and shown in Fig 12 as points of different colors. The upper part of the table refers to simulations with perfect forecast whereas the lower part refers to simulations in the presence of noise. The p − value reported in a column is the two-sided p − value of the null hypothesis that the slope of the linear relationship is zero. Indeed, the low p − values observed support the existence of a linear relationship between directs and conflict resolution events, although the slope value can be quite small in all considered cases. In fact, the correlation values reported in the fourth column are indicating a statistically robust negative relationship between directs and conflict resolution events. An agent based model for tactical air traffic management It is worth noting that slopes observed in the presence of noise are systematically higher in absolute value that in the case of perfect forecast. This seems to suggest that also in the presence of enhanced uncertainty issuing directs reduces the number of conflicts to be resolved.

Conclusions
In this work we have presented an agent-based model of the ATM system that aims at modeling the interactions between aircraft and air traffic controllers at a tactical level. We have presented in detail the different modules of the model whose core is given by the conflict detection and resolution module of section 3.5 and by the directs module of section 3.7.
In section 4 we have given an example of the calibration of our model done in order to obtain simulations describing the statistical regularities about the rate of flight trajectory deviations observed in empirical data.
In section 5 we have reported results obtained with our model. First, we explicitly show that the calibrated model is able to reproduce the existence of regional localization of ATM operations, i.e. the fact that ATCO operations tend to be focused on specific points of the ACC. Finally, we have shown scenario simulations results about the relationship between directs and conflict resolution events conditioned to model parameters.
Our model can be used to give useful insights about the functioning of the ATM system. We are aware that our model is very basic. For example, our basic agent based model does not implement any learning mechanism as done for example in other models [8] or specific fitness measures besides the fact that in the conflict resolution module we must consider the shortest trajectory amongst the possible ones. Furthermore, the model implements a local resolution of conflicts according to a priority list randomly ordered. The way our model solves conflicts is fast from a computational point of view but provides solutions that are not optimized at a global level. In fact, our ABM does not take into account all flight trajectories simultaneously in order to solve potential conflicts. This characteristic of our approach implies that our ABM checks potential conflicts of a flight trajectory several times during its flight across the ACC. We are fully aware of this limitation of our model. We implemented such a solution because we wanted to develop an ABM mimicking the way air traffic controllers work in reality.
Indeed, we believe that such solution might be quite effective in the SESAR scenario simulations. In fact, we might simulate a scenario where controllers have a role less preeminent than in the current scenario and some basic conflict-resolution actions are left to the single aircraft. In this respect, our model might mimic a scenario where pilots, that clearly have not a global  An agent based model for tactical air traffic management vision of the system, endowed with a set of policy rules assigned by their airlines, will perform an active conflict resolution at a tactical level, thus realizing a sort of self-organization amongst aircraft. Along similar lines, other possible ways for further research starting from the present model regard the possibility of augmenting our model capabilities by implementing learning and self-adaptation mechanisms as well as some level of intelligence for the agents.