URANUS: Radio Frequency Tracking, Classification and Identification of Unmanned Aircraft Vehicles

Safety and security issues for Critical Infrastructures are growing as attackers adopt drones as an attack vector flying in sensitive airspaces, such as airports, military bases, city centers, and crowded places. Despite the use of UAVs for logistics, shipping recreation activities, and commercial applications, their usage poses severe concerns to operators due to the violations and the invasions of the restricted airspaces. A cost-effective and real-time framework is needed to detect the presence of drones in such cases. In this contribution, we propose an efficient radio frequency-based detection framework called URANUS. We leverage real-time data provided by the Radio Frequency/Direction Finding system, and radars in order to detect, classify and identify drones (multi-copter and fixed-wings) invading no-drone zones. We adopt a Multilayer Perceptron neural network to identify and classify UAVs in real-time, with 90% accuracy. For the tracking task, we use a Random Forest model to predict the position of a drone with an MSE <inline-formula><tex-math notation="LaTeX">$\approx 0.29$</tex-math></inline-formula>, MAE <inline-formula><tex-math notation="LaTeX">$\approx 0.04$</tex-math></inline-formula>, and <inline-formula><tex-math notation="LaTeX">$R^{2}\approx 0.93$</tex-math></inline-formula>. Furthermore, coordinate regression is performed using Universal Transverse Mercator coordinates to ensure high accuracy. Our analysis shows that URANUS is an ideal framework for identifying, classifying, and tracking UAVs that most Critical Infrastructure operators can adopt.


I. INTRODUCTION AND MOTIVATION
I n the last years, Unmanned Aerial Vehicles (UAVs) com- monly known as drones have become a crucial technology for several types of applications such as environmental monitoring [1]- [3], smart grids control [4], crime prevention [5], [6], smart cities management [7], and the military operations [8].According to authoritative marketing research industries, the UAV market is estimated to be 500, 000 units in 2025 and is projected to reach 6.9 million units by 2030.The global drone logistics & transportation market accounted for US$ 24.58 million in 2018 and is expected to grow at a Compound Annual Growth Rate (CAGR) of 60.6% over the forecast period 2019 − 2027, to account for US$ 1, 626.98 million in 2027 [9].Factors including increasing developments in the e-commerce sector [10] and rising acceptance owing This is a personal copy of the authors.Not for redistribution.The final published version of the paper accepted in IEEE Open Journal of Vehicular Technology Journal is available through the IEEExplore Digital Library, with the DOI: 10.1109/OJVT.2023.3333676.
to various benefits offered are significantly driving the global drone logistics [11] & transportation market [12].
Most commercial drones are autonomous or remotely controlled vehicles, that leverage the standard Wi-Fi frequency bands, i.e. 2.4 GHz [13] and 5.0 GHz [14].They can be programmed to execute tasks that span from object tracking [15], and delivery, to committing illegal activities such as privacy violations, destroying critical infrastructures, and harming public safety during crowded events [16].Given the above threats, several countermeasures [17] based on audio, video, thermal, and Radio Frequency signals have been exploited in the last few years for drone identification and tracking.However, the performance of these systems is affected when the surrounding environment is impaired (e.g.weather conditions, noise, low light visibility).Indeed, most critical infrastructures adopt Radio Frequency / Direction Finding (RFDF) and kinematics radar sensors that track all types of drones by analyzing the reflected signals and comparing them to a database for drone characterization.Due to the high number of unauthorized UAVs operating in the skies, it is crucial to deploy a system framework to track, classify and identify timely, malicious UAVs by leveraging the data provided by radar sensors.
In this paper, we design URANUS, a Machine Learning (ML) framework that analyzes a dataset with data extracted from two RFDF sensors namely Diana and Venus, and two radar sensors namely Arcus and Alvira to (i) identify, (ii) classify, and (iii) track drone(s) on a North Atlantic Treaty Organization (NATO) military base (placed in the Counter Unmanned Aerial System (C-UAS) test centre in the Netherlands).
Our framework is trained over a real dataset derived from a data source of UAVs flights provided by NATO [18].
Our prototype adopts popular libraries and tools such as PyTorch, scikit-learn and pandas, available online as open source code [19].
Our main contributions include the following: 1) Identify, classification, and tracking of one or more flying drones; 2) Classification of fixed-wing and multi-copter drones; 3) Analysis of both RFDF, and kinematics sensors to detect drones in Critical Infrastructure (CI); 4) Real-time framework execution.
The remainder of this paper is organized as follows: Section II introduces the technical background.Section III describes the reference scenario and adversarial model, while Section IV details the dataset analysis.Section V shows the proposed architecture, while experiments and results are described in Section VI.Section VII reviews the related works, and Section VIII concludes the paper.

II. PRELIMINARIES
In this section, we introduce some preliminary knowledge adopted throughout the rest of the manuscript.Specifically, section II-A describes the coordinate systems adopted in this work, while section II-B and II-C describes the radar parameters and the ML models used in the URANUS, respectively.

A. GCS and UTM Coordinate Systems
The Geographic Coordinate System (GCS) [20] and the Universal Transverse Mercator (UTM) coordinate system [21] are two standard techniques to represent locations on the Earth's surface.Coordinates systems often use a tuple of real numbers (x 1 , x 2 ) to identify an object's unique location, where x 1 ∈ R, and x 2 ∈ R.
Geographic Coordinate System (GCS).Latitude and longitude are used to specify the location of a point on the Earth's surface.The latitude (Eq. 1) measures the distance north or south of the Equator, while the Longitude (Eq.2) measures the distance east or west of the Prime Meridian: where X, Y , and Z, represent the Cartesian coordinates of the object to track.Longitude and latitude are defined in the Degrees Minutes Seconds (DMS) form or using Decimal Degrees (DDs) values.An example with coordinates expressed in DMS format is: while the same place expressed in DD format is: (−73.967385, 40.749598).

Universal Transverse Mercator (UTM).
The Earth is segmented into 60 longitudinal zones, each spanning 6 degrees of longitude [22].Within each zone, a transverse Mercator projection is used to represent locations: Northing = Northern Hemisphere Constant + Northing Value, (4) where Zone Number, Easting Value, and Northing Value represent the longitudinal zone, the distance east of the central meridian in meters, and the distance north of the Equator in meters, respectively.Further, the Northern Hemisphere has a constant of 0, and the Southern Hemisphere has a value of 10, 000, 000 [22].The Zone Number and the Hemisphere are adopted to uniquely identify locations within the UTM grid.An example of coordinates in UTM is: where 18 in the UTM zone, N is the Northern Hemisphere, 587173 is the Easting value and 4511473 is the Northing value.
To the best of our knowledge, we are the first to highlight better performances of an ML model that adopts UTM coordinates instead of the canonical GCS.In our regression tests with Random Forest (RF) models, the mean difference between real and predicted values is around 18 meters, a relevant value.Furthermore, the minimum margin between real values and positions provided by Radar Sensor Systems was set to 50 meters by project settings.

B. Range and Bearing Radar Parameters
In radar systems, Range and Bearing are two fundamental concepts used to determine the location of a target.
Range.The range refers to the distance between the radar system and the target.It represents the radial distance from the radar transmitter/receiver to the reflecting point on the target.The range (Eq.5) is typically measured in units such as meters or nautical miles, as follows: where c = 3 • 10 8 m/s is the speed of the light, and T R is the transmitted pulse [23].
Bearing.In radar systems, bearing refers to determining the direction from which a detected signal or echo comes.The True Bearing, referenced to true north, for a radar target is the angle formed between true north and a line directly aimed at the target [24].Radar systems determine bearing by analyzing the angle at which the received signal is stronger.This latter is usually achieved by using an antenna array or rotating the antenna to scan the surrounding environment.

C. Machine Learning Algorithms
This section introduces the ML algorithms adopted in our framework.
Multilayer Perceptron (MLP).Multilayer Perceptron (MLP), also known as Deep Feedforward Networks or Feedforward Neural Networks [25], it is a type of Artificial Neural Network (ANN) [26] [25] widely used in Machine Learning and pattern recognition tasks.Specifically, we adopted this technique for the classification task.A MLP mimics how neurons interact and work in the human brain.It is characterized by a layered architecture consisting of multiple interconnected nodes organized into three primary layers: the input layer, one or more hidden layer(s), and the output layer.The hidden and output layers have neurons connected to the neurons of their preceding layers and network connections; further, the topology can be fully connected or partially connected.In MLP neural networks, each unit performs a biased, weighted sum of inputs and passes this activation level through a transfer function to generate output.The Rectified Linear Unit (ReLU) activation function is the preferred default activation function for most feed-forward neural networks.When applied to the output of a linear transformation, it results in a nonlinear transformation.MLPs have demonstrated outstanding capabilities in modelling complex data patterns for several deep learning architectures.They can be customized with several hidden layers and neurons to accommodate the complexity of different tasks.Each unit resembles a neuron, i.e., it receives input from many other units and computes its activation value.By tuning the weights of the connections between the nodes in the network, the model learns to predict the target output.Further, an optimization algorithm is adopted to adjust the weights (i.e.stochastic gradient descent).In particular, it minimises the difference between the predicted and the actual target output.The MLP model is represented as a function f (x) that maps the input data x to the output y.The function f (x) is expressed as a composition of other functions, as shown in the following equation: where f i is the nonlinear transfer function of the i th hidden layer, θ i represents the weights connecting the nodes in layer i and layer i + 1, and L is the number of layers in the MLP.
Random Forest (RF).It is a typical ML algorithm [27], [28] used for the regression task.A RF model is an ensemble of decision trees that can handle high-dimensionality datasets.Each decision tree is trained on a subset of the data and a subset of the features.The output of the individual decision tree is the average or mode for regression or classification, respectively.
Let Sum of Squared Errors (SSE) be the sum of the squared differences between the predicted and actual values of the target variable.In the regression form, the splitting criteria for node creation follows the largest reduction in the value of the SSE for the predicted output.The splitting process continues until a stopping criteria (such as a maximum tree depth or a minimum number of data points in a leaf node) is defined.The output of the RF for regression is the average of the predicted values of the individual decision tree.The output value of a RF for regression is: where ŷ is the predicted value of the target variable, M is the number of decision trees in the RF model, and f i (x) are the predictions of the i − th decision tree for the input features.We adopt the Random Forest in URANUS for the coordinates regression task.

D. Preprocessing Primitives
This section introduces the preprocessing primitives used to transform the original data for the ML models [29].
Dataset Standardization.It is an essential preprocessing step in ML, suitable for algorithms sensitive to the scale of input features [30].In order to identify patterns and relationships with high accuracy, input features should have the same scale.Input data should be adapted to have 0 mean and a standard deviation equal to 1.To this aim we apply Eq. 8 to every single feature of the initial dataset: where, x is the considered feature value, µ and σ represents the mean and the standard deviation of the feature, and x sf is the final scaled feature value.
One-hot Encoding.It is a widely used technique [31], [32] for converting categorical data into a binary matrix format suitable for ML models.Different algorithms require numerical input, and the one-hot encoding makes the representation of discrete categories as unique binary vectors.Specifically, the Eq. 9 shows how this technique encodes categories: The vector and category index are represented by i and j, respectively, while the output is a binary vector namely b.For any given observation, the binary vector b column corresponding to its category is marked with a 1, while all other columns are set to 0. This representation ensures the avoidance of incorrect relational order between categories.
Label encoding.This widely used technique converts categorical data into numerical form [25] and makes it machine-readable, as algorithms work exclusively with numerical data.In this approach, each unique category or label within a feature is assigned a distinct integer value.For instance, for a categorical variable with values like low, medium, and high, label encoding might assign these categories values of 0, 1, and 2, respectively.The primary advantage of label encoding is its simplicity and ability to retain a compact dataset representation.

III. REFERENCE SCENARIO AND ADVERSARIAL MODEL
This section introduces the scenario and the adversarial model considered in our work.Specifically, section III-A depicts the system model and describes the assumptions, while section III-B describes the adversary model.

A. System Model and Assumptions
The scenario assumed in this work is depicted in Figure 1.We consider the problem of tracking, classifying, and identifying one or multiple drones (multi-copter or fixed wing) in a No-Drone Zone [33].It is worth noticing that we refer to the scenario described by NATO in [18].
The main components of the considered scenario are the following: • No-Drone Zone (NDZ) -The Federal Aviation Administration (FAA) introduced the term NDZ to describe an area that does not allow to operate by using a drone or unmanned aircraft system.Examples of NDZ areas are airports, restricted airspaces, government agencies, or also temporary flight restrictions areas such as sports events, presidential movements, and security-sensitive areas.
• Drone -The drone(s) assumed in this scenario are classified with the features reported in Table I.Each drone is characterized by the commercial name, a code field, and a unique identifier assigned during the drone configuration phase.The airframe represents the type of drone, i.e. a multi-copter or a fixed-wing drone; the weight specifies the maximum weight of the drone, and velocity indicates the maximum speed of the drone.Radar cross-section (RCS) or radar signature measures how much energy the drone reflects towards a radar, i.e. the area seen by radar.
Frame Cross Section Frontal (FCSF) defines a frame of the frontal measurement of the cross-section.• Counter Unmanned Aerial System -It is a central server unit adopted to collect and process (via URANUS) the data generated by the sensor network.The system is used to detect, identify and track the presence of any unauthorized or malicious drone in the No-Drone Zone.As mentioned above, our scenario assumes the presence of a C-UAS operator in a NDZ, e.g., the one controlling a generic critical infrastructure.Such operators are interested in monitoring the critical infrastructure, looking for malicious and unauthorized UAVs approaching a sensitive area.To this aim, the operators adopt an RFDF Radar sensor network to capture crucial information in the monitored area to identify, classify and track the owner of the UAV.In this paper, we consider three macro-scenarios as follows: • Scenario 1.1, 1.2, 1.3, and 1.4.In these scenarios, we assume a single UAV (multi-copter) is flying in the NDZ.
• Scenario 2.1 and 2.2.In these scenarios, we assume two UAVs (multi-copter) are flying in the NDZ.
• Scenario 3. In this scenario, we assume one UAVs (fixedwing) is flying in the NDZ.Each flight scenario involves one or more drones with individual flight patterns.According to Table III, the various scenarios include different drones.We highlight that the aforementioned scenarios are only a reference for the considered dataset.Our framework can be applied to other potential environments, such as surveillance towers in critical infrastructures, military bases, ports, and airports.

B. Adversary Model
In all the scenarios, we assume that an adversary E has the capabilities to radio-control a single drone or a swarm of drones, and it is interested in reaching a target inside a NDZ.The aims of the adversary can be manifold, e.g., violating the privacy of the area by recording video and/or taking photos of a sensitive area, using it as a bomb in critical infrastructures such as airports, oil&gas industries, nuclear power plants, water treatment facilities, ports, telecommunication networks, or to threat people safety by carrying explosives or radioactive materials or colliding with airplanes during the take-off and landing procedures.Moreover, the adversary E can control a drone in several ways: (i) through a wireless remote controller, (ii) remotely via the Internet (i.e. the drone supports embedded Subscriber Identity Module (SIM), standard SIM, and cellular Long Term Evolution (LTE) or 5G technology), (iii) by preprogramming it through way-points to enable the autonomous flight.Conversely, we assume that the drones broadcast data (for several purposes) via the onboard radio transmitter for the whole flight [34].

IV. DATASET ANALYSIS
In this section, we describe the data source used to develop the URANUS framework.Further, we outline the challenges and the proposed techniques to make the dataset suitable for the training and testing phases for our ML models.
Dataset Preprocessing.Preparing raw data for ML analysis and modelling is a critical step.This step is crucial to guarantee that the data are (i) consistent, (ii) flawless, and (iii) complete.These characteristics allow ML models to learn efficiently from the data and make highly accurate predictions.We considered a data source provided by NATO containing real UAV flight measurements recorded in 2020.
The data source is available online as Comma-separated Values (CSV) format [18] which contains 65 files (366 MBs) organized in two main sub-folders, namely training and test folder.
Due to the lack of label information, the test data folder is not considered in our work.We leveraged only the training folder data that contains 37 files (194 MBs) organized in seven scenarios.In detail, for each scenario, we have data related to (i) radar and RFDF systems sensor and (ii) UAV flight parameters.Specifically, Table IV and Table V report data examples from log and sensor data files.It is worth noticing that for every single drone, the log file records UAVs parameters such as the timestamp, latitude, longitude, speed, altitude, and drone type.
Furthermore, the sensor data features such as the RCS, RF, and the UAV parameters are stored along with the related timestamp.Accordingly, the timestamp is adopted as the index of each data sample to merge and correlate the sensor readings and the drone data logs.
Dataset Generation.This procedure includes a summary of the operations performed in the dataset generation.The steps are detailed in Algorithm 1 as following: 1) For each scenario, the algorithm starts by loading the log file of the drone and filtering the data considering the sample window of 1 sec, used as the index.Suppose multiple samples are associated with the same timestamp index (i.e. when the difference between each of them is less than 1 ms).In that case, the algorithm considers the first one appearing in the CSV file of the log file being analyzed.2) After selecting the row from the log, the algorithm scans the CSV file of each radar and RFDF system of the same scenario to bind the rows found based on the value of the timestamp index.If multiple samples are selected, the algorithm filters consider the closest one to the log's timestamp; otherwise, the algorithm inserts a blank row.3) Data enhancement operations are performed on every sample, i.e. (i) the conversion of the coordinates from the GCS to UTM coordinates system, (ii) adding columns with extra data valuable to help training algorithms or (iii) the number of expected drones in the scenario or its classification.Table VI shows an example of coordinates conversion from the GCS system to the UTM system.The final dataset consists of 5, 685 samples with 57 columns, used for the dataset analysis described in Section VI.Table VII shows the full list of the columns of the merged dataset, while Table X shows a small dataset sample with a subset of its real columns.

V. PROPOSED ARCHITECTURE
In this work, we propose a real-time ML framework called URANUS to identify, classify and track UAVs.As shown in Figure 2 the input is a vector x with the processed information coming from radar and RFDF systems.At the same time, the output is the identification, classification, and position of an UAV, represented as y = [class, coord x , coord y ].
In particular, the class can assume the following values {0, 1, 2, 3, 4, 5, 6}, where 0 defines the case in which no drone is inside the NDZ, and the remaining values outline the presence of drones.More information are detailed in Section VI-VI-A.
In the following sections, we describe each part of the model schema shown in Figure 2. Specifically, in Section V-A, we present dataset preparation steps, while in Section V-B, we describe the several components adopted in the framework.

A. Dataset Preparation
Let us consider as input vector x = {alv t ∪ arc t ∪ dian t ∪ ven t } ∈ R 1,n , where alv t , arc t , dian t , ven t are the vector data of Alvira, Arcus, Diana, and Venus at time t, respectively.Specifically, n is the sum of the columns of the vector data provided by the aforementioned sensors.The output vector is y = [class, coord x , coord y ] ∈ R 1,3 , where class ∈ N, coord x ∈ R and coord y ∈ R. The parameter class represents the identification and classification of an object, while coord x and coord y depict the position of an UAV.The features from the sets x 1,i , x 2,i , x 3,i , x 4,i where i is the scenario index -sourced from Arcus, Alvira, Diana, and Venus, respectively -are combined with the two log files l

B. Model Settings
The developed framework is designed to perform multiple operations to identify, track, and classify potential drones.The main tasks of URANUS performed in real-time are: • The framework starts by collecting all the information from the available sensors (both the Radar systems and the RFDF systems).
• Then URANUS identifies if there is a drone in the NDZ zone, using a binary classification, i.e., DRONE -NO DRONE.
• When a drone is detected, the framework shows its position on a map and classification information.Moreover, we verify the the design of the proposed ML model to achieve a high performance.After evaluating differ- ent network configurations, the final setting is the following: • Radar Sensor Data: This module communicates with information sources -radars and RFDF systems, specifically -to collect data and make it available for subsequent modules.
• Dataset Filter: It is composed of a Label Encoder and a Standard Scaler [35], as described in Section II-D.This module converts the input sensor data to values compatible with the network, for instance, adapting numerical values to be more suitable for ML models or converting raw categorical data into numbers.This module is also responsible for selecting specific parts of the input features provided as input to ML models according to their needs.
• MLP Network: This network performs the identification and classification tasks, returning an output indicating whether a single drone or multiple drones are present within the NDZ.The network is defined by 12 input neurons, 2 18 (512 × 512) hidden neurons, and 7 output neurons.Further we adopt the One-Hot encoding [32] in order to represent the 7 categorical classes (CASE_UNKNOWN, CASE_FIXED_WING, CASE_MAVIC_PRO, CASE_PHANTOM4_PRO, CASE_MAVIC2, CASE_PHANTOM4_PRO_MAVIC2, CASE_PHANTOM4_PRO_MAVICPRO-further details are described in Section VI).For example, the scenario that involves the presence of two drones in the NDZ (CASE_PHANTOM4_PRO_MAVICPRO) will be encoded with the array [0, 0, 0, 0, 0, 1].
• RF Regressor: This model has 250 estimators used to Algorithm 1 Algorithm for dataset generation.Functions: • load log f iles(i): It loads the log file(s) of i-th scenario.
• load data(i): loads the CSV files related to Alvira, Arcus, Venus, and Diana of i-th scenario.
• load sample data close to timestp(k): It scans the scenario CSV files of Alvira, Arcus, Venus, and Diana and considers, for each of them, the sample with the closest timestamp of the considered one.
• preprocess data(k): For each element of the k-th sample, this function applies the Standard Scaler and the Label Encoder.
• enhancement operations(k): It enhances the k-th sample with extra information (e.g.conversion of coordinates or information related to the scenario). Inputs: • l i : log file(s) of the i-th scenario.
• t i : sensor Data, coming from Alvira, Arcus, Venus, and Diana, of the i-th scenario.

Output:
The dataset T is used to train ML models.
1: procedure DATASETGENERATION 2: i ← 0 3: for i ← 0 to len(scenarios) do 4: for k ← 0 to len(l i ) do preprocess data(k) end for 17: end procedure predict the position of the identified drones, and it uses a mix of information from the dataset T and the MLP network.
• Output: This module interacts with both the MLP Network and the RF Regressor, consolidating their outcomes in a single output array.The results are then displayed on the interface, such as on a map.According to the proposed defined model (Fig. 2), the MLP layer only accepts standardized data (for continuous values) or categorical data expressed using a Label Encoder (for categorical values), whereas the RF Classification and Regressor layer accepts raw, unprocessed data.

VI. EXPERIMENT AND RESULTS
In this section, we summarize the rationale of the dataset analysis, the metrics and the results, and the implementation

Op(Nh)
---Fig.3: Schema representation of a MLPs network used in the URANUS framework for classification task.The considered version is structured with 12 neurons in the input layer, 2 18 (512 × 512) neurons in the hidden layer(s), and 7 neurons in the output layer.
details of the URANUS framework.In Section VI-A, we present the preliminary analysis.In this step, we estimate the useful and exploitable information of the dataset T and some details regarding the labelling procedure required to train the considered ML models.Next, in Section VI-B, we evaluate the performance of the MLP and RF trained models.Finally, we provide the implementation details in Section VI-C.

A. Rationale of the Analysis
As depicted in Figure 1, RFDF sensors are positioned close to each other in the center of the test field, while radars are positioned at the edges of the NDZ.Radar sensors provide data on the classification, position, bearing (degrees), range (meters), and reflection of the flying entities.These data are based on the kinematic and reflectivity characteristics of the radar.RFDF sensors, on the other side, contribute to identify UAVs (or the drone controller) based on the RF  signature.Before the design phase of ML algorithms used in URANUS, a preliminary analysis phase is performed in order to (i) estimate the number of useful information used, (ii) set project parameters, and (iii) split the dataset into subsets (train, validation, and test).
In order to train the MLP network using a supervised procedure, the reference classification column is added to the dataset during the preprocessing phase, as shown in Tab.VII.The adopted procedure assigns one of the following values for every row of the dataset T : • CASE_UNKNOWN: No drone is identified.
• CASE_PHANTOM4_PRO_MAVIC2: Both a Phantom 4 Pro and Mavic 2 are identified.
• CASE_PHANTOM4_PRO_MAVICPRO: Both a Phantom 4 Pro and a Mavic Pro are identified.The classification highlighted corresponds to the position detected by the radar sensor systems, specifically Alvira and Arcus.If the position of the identified object by the radars is within a deviation of 50 meters from the drone's current position -recorded in the log file(s) -then the procedure assigns to the highlighted row a category ranging from CASE_FIXED_WING to CASE_PHANTOM4_PRO_MAVICPRO, depending on the nature of the identified object(s).If not, it assigns CASE_UNKNOWN.Specifically, fixed-wing and quadcopters (also known as multi-rotor drones) show specific differences.Indeed, the adopted classification procedures take into account their different properties, such as (i) speed, (ii) flight time, and (iii) manoeuvrability.For instance, fixed-wing drones fly faster than multi-rotor drones, making them ideal for exploring large sites quickly.Based on these assumptions, it is possible to estimate the number of useful samples to train ML algorithms, as shown in Table IX.In particular, the table shows a summary of the information available in the generated dataset T , starting from the (i) drone logs, (ii) radar sensor data, and (iii) RFDF sensors data.
As the dataset is divided into scenarios and not all samples contain helpful information for training, the amount of useful information is considerably limited.Indeed, on average, only 31% of the dataset contains a real drone position that is useful for our training.

B. Metrics and Results
This section describes the training and design procedures to build the modules that process the raw input data.We introduce the metrics and the results for the MLP classifier in Section VI-B1, as well as for the RF regressor in Section VI-B2.
1) MLP classifier: The first network trained during our development phase is the MLP classifier.In general, a large amount of data is required to train MLPs for minimizing the selected loss function and train them on how to generalize from the input dataset.The initial 5, 685 samples of the dataset T are split into three sets: 70% for training, 1.5% for validation and 28.5% for testing.A standardization procedure is employed to enhance the network's training process, and a Label Encoder is used to encode categorical data in numerical values.For the output layer, One-Hot encoding is applied to represent the categories.
The training procedure aims to minimize a loss function evaluated during the training process on the train and validation sets.At the end of the process, the final network performances are evaluated on the test set.For the MLP network classifier, the selected loss function is the Categorical Cross-Entropy Loss, defined by Eq. 10.The predicted probability distribution for each input is a vector of C values, where C is the number of classes.Each value represents the probability of the input belonging to a specific class.The true probability distribution for each input is also a vector of C values with the same meaning.The categorical cross-entropy loss is defined as: where CE is the value of the Categorical Cross-Entropy Loss, y i and ŷi are the true and predicted probability of the input belonging to class i, respectively.
The training procedure is performed during the development phase for 50 epochs, specifically with a mini-batch size of 5 and a Learning Rate of 0.003.Further, we adopt the Adam optimizer [36] to provide adaptive learning rates for faster and more stable convergence of our Deep Learning (DL) model.Figure 4 shows the evolution of the loss value with the epochs.
The final values of the loss for the last epoch are 0.18 and 0.13, for the training and validation phases, respectively.Table XI shows a summary of the final performances of the MLP classifier, while Figure 5 shows its Confusion Matrix.Specifically, the Confusion Matrix is used to evaluate the performance of classification models by summarizing the counts of true and false positives and negatives.The four metrics derived from the confusion matrix are Precision, Recall, F1score, and the Support of each class, represented in Eq. 11,12, 13, and the number of samples in each class, respectively.

P recision =
T P T P + F P (11) In details, the True Positive (TP) represents the model accurately predicts the presence of a drone, False Positive (FP) provides the inaccurate prediction of a drone's presence, and False Negative (FN) depicts an inaccurate prediction of a drone's absence.
2) RF regressor: Considering the RF network, we filtered the main dataset T by obtaining a sub-dataset with 1, 343 samples.The 80% (1, 074 samples) are used for the training phase, and the 20% (269 samples) for the test phase.It is worth noticing that we do not adopt any standardization procedure in this case, unlike what is done for the MLP classifier.We use the Label Encoder only for the categorical input columns in the derived subset of the initial dataset to manage them as numbers.
The final training results for the RF regressor are evaluated by using the Mean Squared Error (MSE), Mean Absolute Error (MAE), and R 2 metrics as depicted in Eq. 14, 15 and 16, respectively: where n is the number of data points, y i is the i-th observed value of the dependent variable, ŷi is the i-th predicted value of the dependent variable, and ȳ is the mean value of the dependent variable across all observations.The M SE, M AE, and R 2 amount to 0.29, 0.04, 0.93, respectively.The results confirm the robustness and validity of the chosen model to perform this regression task.
Further, to assess the performance of the regressor, the trained model uses each scenario of the dataset T as input to estimate the medium difference between the real positions of the drone(s) and the predicted ones.Figure 7 shows the mean differences between predicted and real drone positions in each scenario.In all the considered scenarios, the mean regression error is below 100 meters, and the models perform better when there is only one drone in the scenario.This behaviour is highly predictable, given the low number of sensors available for training the models and detecting drones.

C. Setup and Implementation
The development and test phases are performed on a custom desktop machine running Arch Linux with the Linux Kernel 6.2.11 and CUDA 12.1 [37].The hardware includes an AMD Ryzen 7 2700X Eight-Core Processor with 32 GB of RAM and an NVIDIA 1080 GPU.
For the ML models design and implementation, we developed the solution in Python 3. In particular, we adopted the following libraries: • PyTorch 1.13.1 [38]: machine learning framework used for developing and training neural network-based deep learning models in Python.We used this library to model the MLP network.
• sklearn 1.2.2 [39]: for the Standard Scaler and Label Encoder, the train/test dataset split and the Random Forest algorithm implementation.
• numpy 1.24.2: a common Python library useful to work with arrays and matrices.
• matplotlib 3.7.2:used to show and save graphs.
• PyQt 6.5 [38]: the binding of the Qt libraries for Python.This library has been used to create the application's main Graphical User Interface (GUI), exploiting its crossplatform nature.
• Leaflet 1.9.4 [41]: the Javascript Geographic Information System (GIS) library used to show real and predicted objects on the interactive map of the base.approaches adopted to detect, identify and track drones.Table XII summarizes the information of related literature and presents the main features of these methods.For instance, Al-Sa'd et al. [42] collected, analysed, and recorded raw RF signals from several types of drones in different states.Furthermore, they leveraged a deep learning technique to detect and identify malicious drones and their flight mode.The authors designed three Deep Neural Networks (DNNs) to (i) detect the drone, (ii) detect the drone and recognize its type, and (iii) detect the drone, and recognize its type and its state.The authors do not consider fixed-wing drones, and they do not perform any path-tracking operation.
Basak et al. [43] focused on the development of (i) RF drone signal detection, (ii) spectrum localization, and (iii) drone classification by using a two-stage technique.In the first stage, they adopt the Goodness-of-Fit (GoF) sensing for drone detection and the Deep Recurrent Neural Network (DRNN) framework for drone classification.In the second stage, they use the You Only Look Once -lite (YOLO-lite) framework to perform the combined drone RF signal detection, spectrum localization, and drone classification.However, neither multiple detections of drones nor trajectory tracking on a map are considered.
Al-Emadi et al. [44] proposed a real-time RF drone detection and identification framework to inspect the radio spectrum between the drone and its controller.The solution adopts a Convolutional Neural Network (CNN) to train and test an RF dataset released by [42].The experimental results show the effectiveness and feasibility of using RF signals in combination with a CNN to detect and identify a drone.The proposed solution achieves an F1 score of 99.7% for drone identification.Nevertheless, the authors do not consider fixedwing drones and drone path-tracking operations.
Allahham et al. [45] investigated deep learning techniques to perform (i) drone detection, (ii) drone detection and type identification, and (iii) drone detection, type and state identification by using a three multi-channel 1-dimensional CNN.The dataset adopted in the experiments is Drone RF dataset [51].The performance for (i) shows an average accuracy of 100%, while (ii) has an accuracy of 94.6%, and, finally, the last one (iii) presents an accuracy of 87.4%.
The authors in [46] developed an RF machine-learning drone detection and identification system by analyzing the low-band RF signals emitted by the flight controller.They proposed three machine learning models based on eXtreme Gradient Boosting (XGBoost) algorithm to detect and identify (i) the presence of a drone, (ii) the presence of a drone and type, and (iii) the presence of a drone, type and the operational mode.The accuracy achieved by the three models is 99.96%, 90.73%, and 70.09%, respectively.The higher the model complexity, the lower the model accuracy.This latter implies the low effectiveness of using the frequency components of a signal as a signature to detect the activities performed by drones.From the results achieved by the models, we deduced that using the frequency components of a signal as a signature to detect drone activities is not very effective.Trajectory tracking on a map is not considered in this case.
Sazdić-Jotić et al. [47] proposed RF detection and identification algorithms to detect and identify single or multiple drones.They built an RF dataset by considering scenarios with (i) a single drone, (ii) two drones, and (iii) three drones.They detect and identify a single drone with an accuracy of 99.8% and 96.1%, respectively, while the results of detecting multiple drones show an average accuracy of 97.3%.The deep learning algorithms used are mainly Fully Connected Deep Neural Networks (FC-DNN).Although the approach performs well, the authors do not consider path tracking.
The authors in [48] presented a DRNN that classifies different drone signals in single-drone and multiple-drone scenarios.The authors built an RF dataset with nine commercial drone types, and further, they evaluated the proposed model in Additive white Gaussian noise (AWGN) and multipath conditions.The model achieved roughly 99% classification accuracy for single and simultaneous multi-drone scenarios.However, The described approach does not take into account drone path tracking and fixed-wing drones.
Ibrahim et al. [49] presented a UAV identification and hierarchical detection approach by leveraging an ensemble learning based on K-Nearest Neighbor (KNN) and XGBoost.The proposed solution can (i) check the availability of a UAV, (ii) specify the type of the UAV, and (iii) determine the flight mode of the detected UAV.This approach reaches a classification accuracy of around 99%.However, the authors do not consider drone path tracking.
Wei et al. [50], proposed a drone detection and identification system based on WiFi signals and high-frequency RF fingerprints.The system (i) performs UAV detection, (ii) extracts the features Fractal Dimension (FD), (iii) Axially Integrated Bispectra (AIB) and Square Integrated Bispectra (SIB) (iii) adopts the Principal Component Analysis (PCA) algorithm for the feature dimensionality reduction, and (iv) applies the Neighborhood Component Analysis (NCA) algorithm for metric learning.Finally, the authors test KNN, Support Vector Machine (SVM), and RF to identify UAVs.They verified their model in two different scenarios, i.e., indoor with a Signal-to-Noise Ratio (SNR) of 10 dB and outdoor with a SNR of 3 dB.In the indoor scenario, the average identification accuracy of FD, AIB, SIB is 100%, 97.23%, and 96.11% respectively.In the outdoor scenario, the identification accuracy of the same features is 100%, 95.00%, and 93.50%, respectively.The authors do not consider drone trajectory tracking.
To sum up, the discussion above confirms that despite there are several contributions to the state-of-the-art, none of them analyze and evaluate the proposed techniques on both fixed-wing and multi-copter drones for the (i) detection, (ii) classification and (iii) simultaneous tracking, as well as the drone path tracking.Such constraints make previous solutions unsuitable for this problem and call for new domain-specific approaches.Moreover, none of the approaches in the current literature perform tracking, identification, and classification in real-time, but only offline.

VIII. CONCLUSION
In this paper, we proposed URANUS, a framework to prevent and detect unauthorized UAVs for Critical Infrastructures.URANUS can identify, classify, and track multi-copter and fixed-wing drones in real time.Our solution leverages two components: (i) a network of Radio Frequency / Direction Finding radar sensor network distributed in the No-Drone Zone, and (ii) Counter Unmanned Aerial System, a system adopted to collect and process the data generated by the radar sensor network and detect the presence of any unauthorized or malicious drone.URANUS features several properties such as: (i) it relies only on the wireless data collected from the RFDF sensor network; (ii) it can be extended to detect, classify and track different aerial vehicles at the same time; and (iii) it can be integrated with pre-existing drone detection solutions in compliance with the existing regulations.At the same time, our model has been trained on a dataset comprising UAV flights provided by NATO [18].Our results show that the trained models achieve a good accuracy of 90% for the identification and classification tasks, and we can discriminate between UAVs and fixed-wings.The MLP model achieves an accuracy of 90% with a True Positive Rate (Recall) of ≈ 0.71, and a True Negative Rate of ≈ 0.98.The RF model achieves a MSE ≈ 0.29, MAE ≈ 0.04, R 2 ≈ 0.93 on the final dataset.Finally, we highlight that we also released the source code of URANUS as open-source to foster the replicability of our results, encourage the deployment and extension of URANUS, and check the viability of further research directions.

Fig. 4 :Fig. 5 :
Fig. 4: Training and Validation losses for the MLP classifier used for the Identification and Classification tasks.

Figure 6 Fig. 6 :Fig. 7 :
Figure 6 depicts the main functionalities of the URANUS framework, such as drone(s) identification, classification, and real-time tracking on the map.

TABLE I :
Classification and characteristics of the drones.thebearing of an intercept; it only reports detections in a 180 • sector even if the target is located in the opposite sector.Venus uses a circular array antenna with no bearing ambiguity and provides no range information.Conversely, Arcus and Alvira sensors are 2D radar and 3D radar, respectively.These sensors provide crucial information such as latitude, longitude, altitude, and timestamp, as well as the bearing and range of the drone during the flight.TableIIsummarizes the name, the type, and the sensor location (latitude and longitude coordinates).
• RFDF-Radar Sensor Network -The No-Drone Zone is monitored by two RFDF sensors, namely Diana and Venus, and two radar sensors i.e.Arcus and Alvira (all of them are fictitious names).From one side, Diana and Venus sensors acquire data such as time-of-arrival (timestamp), Receiving Signal Strength (RSS), and beamforming to localize the target.Diana adopts a linear array antenna to estimate

TABLE II :
Description of the sensor types with their respective positions.

TABLE III :
Drone(s) model involved in each scenario.

TABLE IV :
Data sample from drone log of scenario 1.1.

TABLE V :
Data sample from radar sensor ARCUS, in scenario 1.1.

TABLE VI :
Example of coordinates conversion from GCS to UTM.
namely l 1,i (log file of the first drone) and l 2,i (log file of the second drone).The goal is to build a consolidated dataset, namely T , for training ML models.Table VIII summarises the notations throughout this article.

TABLE VII :
Full representation of the columns in the merged dataset.− means that the unit measurement is not specified.

TABLE VIII :
Notation and brief description.

TABLE IX :
Study of the useful information exploitable for the ML models for each scenario.

TABLE X :
Representation of a portion of the generated dataset as an example with some rows and columns.

TABLE XI :
Summary of the performances of the MLP classifier network.

TABLE XII :
Comparison and overview of related contributions on drones RF identification, classification, and tracking using Machine Learning and Deep Learning techniques.A ✓ symbol indicates the fulfillment of a particular feature, and a ✕ symbol denotes the miss of the feature or that the feature is not applicable.