Navigation in GPS Spoofed Environment Using M-Best Positioning Algorithm and Data Association

Intentionally misguiding a global positioning system (GPS) receiver has become a potential threat to almost all civilian GPS receivers in recent years. GPS spoofing is among the types of intentional interference, in which a spoofing device transmits spoofed signals towards the GPS receiver to alter the GPS positioning information. This paper presents a robust positioning algorithm, followed by a track filter, to mitigate the effects of spoofing. It is proposed to accept the authentic GPS signals and spoofed GPS signals into the positioning algorithm and perform the robust positioning with all possible combinations of authentic and spoofed pseudorange measurements. The pseudorange positioning algorithm is accomplished using an iterative least squares (ILS). Further, to efficiently represent the robust algorithm, the M-best position algorithm is proposed, in which a likelihood-based cost function optimizes the positions and only provides M-best positions at a given epoch. However, during robust positioning, the positions evolved due to spoofed pseudorange measurements are removed to overcome GPS spoofing. In order to remove the fake positions being evolved owing to wrong measurement associations in the ILS, a gating technique is applied within the Kalman filter (KF) framework. The navigation filter is a three-dimensional KF with a constant velocity (CV) model, all the position estimates evolved at a specific epoch are observations. Besides, to enhance this technique’s performance, the track to position association is performed by using two data association algorithms: nearest neighbor (NN) and probabilistic data association (PDA). Simulations are carried out for GPS receiver positioning by injecting different combinations of spoofed signals into the receiver. The proposed algorithm’s efficiency is given by a success rate metric (defined as the navigation track to follow the true trajectory rather than spoofing trajectory) and position root mean square error (PRMSE).


I. INTRODUCTION
Global navigation satellite system (GNSS) is generally used for providing the position, navigation, and time (PNT) for many civilian and military applications. GNSS, such as GPS, Galileo, GLONASS, BeiDou, NavIC uses a receiver to receive the signals transmitted by the satellites. The received signals are processed to provide the receiver's position with an accuracy of a few meters [1]. Most of the autonomous vehicles rely on GPS, an inertial navigation system (INS), external sensors like radar, lidar, and camera for accurate The associate editor coordinating the review of this manuscript and approving it for publication was Laxmisha Rai . positioning and navigation [2]. The un-intentional degradation of positional accuracy in GPS is due to multi-path, weak signals, urban environment, indoor environment [3]. However, the recent advancements, in radio frequency (RF) generation, result in the simulation of various types of RF signals with inexpensive devices [4]. Hence, intentionally jamming a GPS receiver or adegradation of positional accuracy or false positioning is possible with the transmission of false GPS like signals [5]. Spoofing is a process of transmitting mimic GPS signals either by using a simulator or a repeater with boosted power. Those fake signals are locked onto the receiver and produces false positioning and results in degraded autonomous navigation for vehicles.
One of the fastest-growing industries throughout the world is autonomous vehicular technology. The primary motivation of this development is to provide assistance to drivers, decrease the number of accidents, and autonomous driving [6]. GPS is an integral part of most of the autonomous vehicular designs for accurate navigation [7]. The misleading of GPS positioning, using false (spoofed) measurements, leads to either degradation in its autonomous navigation performance or threat to the vehicle. The development of novel and efficient spoofing detection and mitigation algorithms is a major requirement for the successful deployment of autonomous vehicular technology. The anti-spoofing techniques for GPS receivers, proposed to date have been reviewed in [5], [8]- [10]. Spoofing attack detection is achieved by trusted reference signals, monitoring the power of the individual signals, calculating the average power of received signals, checking the clock, estimating the bias, considering code and phase consistency rate which has been reported from [11]- [14]. Here, trusting a reference signal includes the availability of software-defined signals, which can simulate the target's trajectories, based on prior knowledge. In a recent communication, the automatic gain control (AGC) and monitoring auto-correlation based method to detect spoofing are proposed in [15] (with an assumption that spoofing signals have higher power than legitimate GPS signals). The signal monitoring techniques demand the receiver's re-design, as these detection algorithms are based upon the internal signal measurements available outside the receiver. One can apply these signal processing techniques, to autonomous navigation of vehicles, to detect the spoofing attack, however, they are unable to diminish the spoofing effects. Therefore, deployment of mitigating methods for spoofing consequences and securing the navigation track is a significant consideration in the civilian GPS receiver design.
The optimal way to counter spoofing threats is by the deployment of authentication techniques, which can effectively combat this intentional interference. In [16], a cryptographic authentication is employed to counter spoofing signals. Additionally, cryptographic based encoding and decoding have been successfully employed to prohibit potential hacking of autonomous vehicles and is presented in [17], [18]. It is expensive to deploy these cryptographic based methods in the GPS receiver design, and to integrate them into relatively inexpensive and widespread civilian GPS receivers. Besides these techniques, there are spatial processing and navigation track-based anti-spoofing techniques [19]. The spatial processing techniques include the direction of arrival (DOA) discrimination, using multiple antennas, by applying spatial diversity [20]. Further, in [21], the exchange of measured GPS code based pseudoranges with neighboring vehicles (by using dedicated short-range communications) has been suggested to safeguard the vehicle from spoofing. In addition, the inertial sensor-based antispoofing techniques are proposed in [22]. The range sensors, bearing sensors, and vision sensors are integrated to generate efficient anti-spoofing algorithms and are introduced in [23]. Furthermore, the unknown sudden changes in system state variables are addressed in [24]. Managing the simultaneous localization and mapping (SLAM) and sensor fusion capabilities are presented in [25]. The information of each vehicle's position and their relative distances are incorporated to effectively counter the spoofing and achieving the desired group performance has been suggested in [26].
Recently, a significant portion of the GPS market has been occupied by hand-held devices, emphasizing fast acquisition and reliable positioning, over accurate positioning. Examples like positioning in an urban environment using ill-conditioned GPS, positioning in dense forest, and indoor localization are the problems investigated from [27], [28], and [29] respectively. The least-squares (LS) solution is widely used in GNSS positioning. In such cases, LS gives a reasonable solution, by minimizing the sum of squares of the errors between measurements and the estimated model [1]. On the other hand, another segment of the GPS market is looking for quick navigation solutions on time, than possessing only positional accuracy. For example, a scenario may be considered in which navigation solution's integrity is crucial (autonomous vehicles, surveillance drones, and mobiles). In such instances, a Kalman filtering (KF) based techniques are generally applied to establish navigation over the dynamic trajectory of the target [30].
In all the above contributions of autonomous vehicle positioning in GPS spoofing environment [17], [21], [24]- [26], either authentication of signals or communication among the vehicles is applied to either detect the spoofing or secure the navigation track. Further, multiple vehicles and communications among them are seldom present in practical situations. Moreover, huge buildings and other man-made structures in the urban environment may create low observability of satellites. The majority of contributions reviewed so far reveal that most of the spoofing literature focus on detecting a spoofing attack. Since alleviating measures of this spoofing effect has been scarcely addressed in recent contributions, there is a need to develop mitigating methods with equal importance to GPS receiver design. Accordingly, the proposed work is motivated to investigate novel techniques and algorithms, to alleviate spoofing consequences, without altering / re-designing GPS receiver architecture. Hence, there is a strong requirement to develop an algorithm that should address the problem of a single GPS receiver in the low observable case, which can effectively counter the GPS spoofing. Therefore, this paper introduces a novel approach of combining the epoch-by-epoch robust positioning, followed by KF, to secure the navigation track. In a particular epoch, all the pseudorange measurements (spoofed and true) available at a receiver are considered to calculate all possible positions. Later, to decrease the algorithm's complexity, the M-best position algorithm is employed, in which only M-best positions are evolved at a specific epoch by formulating a cost function based on likelihood. Once this robust positioning is performed at a specific epoch, it results in huge position estimates at an epoch, which contains both VOLUME 9, 2021 true and spoofed positions. Interestingly, once the multiple positions are obtained at a given epoch, this navigation problem is partially modified into a well-established target tracking problem. The ambiguity of selecting one position from all the available positions, at a particular epoch, is resolved by using data association and gating technique within a Kalman filter framework.
The key contributions of the paper are as follows: • It is proposed to accept the authentic GPS signals and spoofed GPS signals into the positioning algorithm and perform the robust positioning in a given epoch with all possible combinations of real and spoofed pseudorange measurements.
• To reduce the complexity of the proposed robust algorithm, M-best positioning algorithm is introduced based on the cost minimization problem for given measurements to form M-best likelihoods.
• The estimation of the vehicle's time-varying dynamics and removal of the unwanted position estimates is accomplished using a gating technique within the KF framework.
• The study has also explored the measurement-to-track association using nearest neighbor association and probabilistic data association.
• Moreover, the impact of proposed algorithm is also evaluated against the urban environment The remainder of this paper is organized as follows. In the next Section II, a single GPS receiver in the spoofing environment, is formulated, along with the underlying assumption of accepting all the measurements available at a particular scan. In Section III, the iterative least squares framework for position estimation using the combinations of pseudorange measurements at a given epoch is presented, and later the M-best position algorithm is derived. Further, in Section IV, the KF framework with gating technique is described, and the data association algorithms are explored. In Section V and VI, results and discussions, and conclusions of the work are presented, respectively.

II. PROBLEM FORMULATION
This section describes GPS receiver in a clean environment, GPS receiver in spoofer only environment, and GPS receiver with an authentic and spoofed environment.

A. GPS RECEIVER IN CLEAN ENVIRONMENT
The GPS receiver uses S i number of satellite transmitters located at X t i ∈ R 3 . The satellite-based transmitted signals are s t i (t) I i=1 , where I represents the number of satellites governing in the range. Here, we assumed that all the satellite transmitters are equipped with synchronized clock with no clock offset to extract the exact system time t as given in [31]. However, this assumption is not valid in reality due to presence of clock offset in the satellites. In practice, this offset is transmitted in the navigation message, the receiver decodes the navigation message and uses the information to remove the clock offset from the measurement. The navigation signal s t i (t) consists of satellite position, transmission timestamp, satellite health, and satellite trajectory deviation information. These satellite signals are propagated with the speed of light c and received by the GPS receiver, located at x t ∈ R 3 to estimate its position. The received combined signals of all satellites in the range are A i is the signal's attenuation due to the propagation of the signal from the satellite location to the target receiver. w t (x t , t) is the background noise. Due to the properties of the navigation signal s i (t), the receiver separates individual terms and extract the satellite ID, relative spreading code phase using replica of the used spreading code. Highly stable clocks like cesium oscillators are costly to employ in civilian GPS receivers. The GPS receivers cannot have two-way clock synchronization, yields in clock offset δ. The exact time at receiver is equal to summation of satellite system time and offset. Therefore, the exact time is t = t + δ. The modified received combined signals is The true pseudorange measurements, corresponding to received authentic satellite signals, are given by The received pseudorange measurement set is denoted by is the measurement noise with zero mean Gaussian probability density function with variance (σ t ) 2 . Since the pseudorange measurement consists of four unknowns, at-least four authentic satellite measurements are required to estimate three dimensional GPS receiver's location.

B. GPS RECEIVER IN SPOOFER ONLY ENVIRONMENT
The simulation of fake constillation and exact satellite time is hard. But, one can acheive this by using a meaconing technique as given in [32]. Spoofer is a device that transmits mimic GPS signals s f (t) J j=1 onto the target receiver with higher power than the authentic satellite signals, to achieve easy locking into the receiver and thereby forcing the GPS receiver to wrong positioning. Let us assume that a stealthy spoofer simulates J mimic satellite signals and project them towards the target, and one cannot mitigate it using clock bias based detection technique as given in [33]. The composite signal representation of all the signals due to the presence of spoofer (fake signals) in the range is Here A j is the attenuation of the signal due to propagation from spoofer to the target and are the set of fake satellite positions.
This fake satellite position set is different from the true satellite position set due to the simulated signals, or they have captured signals at some other place or time. X f is the fake location projected by the spoofer. The spoofed pseudorange measurement is given by The received fake pseudorange measurement set is z . Here Due to locking of fake signals into the target receiver, the position estimation with these processed fake measurements results in spoofed locations. Even though the target is physically present at x t , the position estimate on account of fake pseudoranges results in x f as shown in Fig. 1. The noise statistics of the spoofed pseudoranges are considered the same as true measurements, n f j follows white Gaussian distribution with mean zero and variance (σ f ) 2 ; assuming that the spoofer is ideal, and the spoofing attack cannot be detected by the signal processing techniques, like power thresholding, satellite observations, power across the individual signals, and clock bias analysis. The attenuation A i , bias δ and noise n are same in (1) and (4) owing to ideal spoofer assumption.

C. GPS RECEIVER IN AUTHENTIC AND SPOOFING ENVIRONMENT
Based on the correlation of signals, the receiver receives all the available signals, and few measurements are considered for the position estimation. Here it is assumed that, the GPS receiver is receiving all the authentic and spoofed signals. The received signals in the range are expressed as a composed signal of true and spoofed signals as Here, (6) is composite form of (2) and (4). However, to avoid the ambiguity, we represented (6) in the simplified form. Here . The total number of independent signals available in the composite signal is K = I + J . The extraction of navigation signal components from the composite signal can be obtained by spread spectrum techniques [34], [35]. For the above (6), the equivalent measurement equation is given by where , and The function h has a real and non linear relation between x and X. The non-linear geometry matrix is . Here x can be real position or fake position. The measurement noise vector is n = [n 1 , n 2 , . . . n K ] .
From K measurements, only four measurements are involved in the correlation to compute the 3D positioning. However, for 2D positioning, three measurements are adequate. Out of K measurements, I measurements are from authentic, and J measurements from the spoofer. For a given measurement, suppose the fake pseudorange probability is p, and true pseudorange probability is q. Accordingly, sum of probabilities p + q = 1. If L measurements are selected randomly out of available K measurements, the probability of correct solution by selecting authentic measurements from the set of received measurements is For example, the number of authentic measurements I = 6, the number of spoofed measurements in the range J = 4, the probability of a correct solution by selecting L = 4 measurements is 0.0714, which is very low. Therefore, there is a strong need to develop robust algorithms to compute all possible combinations or at least M-best combinations of measurements, and to eliminate unwanted positions to increase detection probability.

III. ROBUST POSITIONING
This section deals with the problem of position spoofing of a true target by imposing fake measurements, as shown VOLUME 9, 2021 in Fig. 1. In this section, the robust positioning algorithm is described, and the M-best position estimates algorithm is proposed to reduce the complexity at a particular epoch.

A. ILS FRAMEWORK FOR ROBUST POSITIONING
Least squares is the most popular technique in determined and overdetermined systems. Usually, in GPS positioning, the number of pseudorange equations are more than the unknowns to be estimated or some times equal. LS usually solves the whole set to offer a solution that minimizes the sum of squared errors. In LS estimation, linear LS and non-linear LS solutions exist. The closed-form of the solution is linear LS, and iterative refinement of the solution is non-linear LS.
Considering the user position x = [x, y, z] , the position x ∈ x t , x f depends on the tuple of measurements considered from all possible pseudoranges, arrived due to true and spoofed measurements. The generalized pseudorange measurement equation combining (3) and (5) is given by To solve the above nonlinear equation using LS technique, z k has to be linearized using Taylor series expansion around the approximate user position [x,ŷ,ẑ] . Definingẑ k as z k at [x,ŷ,ẑ] can be written as Here, H.O.T is the higher-order terms in the Taylors series expansion. The higher-order terms are ignored in further calculations, and the resultant is the linear approximation to (9).
The partial derivatives are given by The resultant equation after substituting the partial derivatives is In the above, replace Where h x k , h y k , and h z k , are direction cosines of unit vector pointing from approximate GPS position to the k th satellite. The unit vector is given by H is a geometry matrix, given by H = [h 1 , . . . , h L ] The linearized measurement model is given by where z is a measurement vector to represent the difference between actual pseudorange measurement and computed pseudorange measurement, i.e., z = [ z 1 , . . . , z L ] . γ = [ x, δ] is a vector of unknown parameters to be estimated, and n is a pseudorange measurement error vector, given by n = [n 1 , . . . , n L ] . For (13), linear model exists and the noise vector n has Gaussian distribution with zero mean and covariance C. The best linear unbiased estimator (BLUE) of position isγ The covariance of the estimator is given by This LS algorithm can run iteratively by using the old position estimates to estimate the new positions. In the above equation, once the unknowns are computed, these unknowns can be used to obtain the new estimatesx,ŷ, andẑ. The iterative least squares (ILS) has termination criteria based on the maximum number of iterations or based on the maximum amount of correction. At a given epoch with K pseudoranges (true and spoofed), this ILS runs K C L times to produce K C L position estimates, in which I C L are true position estimates and rest are spoofed position estimates as shown in the Fig. 2. Here in the given Fig. 2, The bottlenecks of this robust algorithm are complexity and decision making. The complexity of the robust algorithm increases exponentially with every single injection of spoofed pseudorange. we can clearly see that the true position estimates are forming a cluster and similarly fake position estimates creating another cluster. Consider an example with I = 5 and J = 5 to understand the problem clearly. In this case, I C 4 true position estimates are available in true cluster and J C 4 position estimates are present in fake cluster. The remaining number of K C 4 −( I C 4 + J C 4 ) estimates are biased estimates neither fall in true cluster nor fake cluster. So, the algorithm should be intelligent enough to compute M-best pseudorange sets from the given scan of measurements rather than finding all the possible combinations. After that, for the best sets, the ILS algorithm computes position estimates as presented in Section III-B. It is very hard to decide which cluster of positions belong to true positions. Hence, there is a need to discard unwanted position estimates from the given estimates.

B. M-BEST POSITIONING ALGORITHM
In a given scan of measurements (true and spoofed), the spoofer simulated measurements are totally different from the authentic satellite measurements by satellite ID, or few spoofer simulated signals match with the authentic satellite signals, thus the measurement set is given as Here, the measurement index i to j have the same satellite ID. Hence there exist total of S active satellites, where S ≤ K and s = 1, 2, · · · , S. We wish to associate the observations from S lists of n s measurements. For a single spoofed signal case, n s = 3, since {z t i s , z f i s , 0}, here zero is the dummy variable. The index i s = 1, 2, · · · , n s . The measurement corresponding to every index i s is with detection probability either one or zero.
Here, the source may be an authentic satellite, then the true measurements are assumed to be a function of the true state and the additive measurement noise is as given in (3). Whereas, in case the source is a spoofer, the spoofed measurements are assumed to be a function of the spoofed state and the additive measurement noise is as given in (5). The problem is formulated as a multi-sensor state estimation problem with association and estimation. Association is the process of linking the measurements, and the linked measurements are filtered with estimation. Thus, the measurements have been selected in such a way that one measurement is selected from each index. The measurement index is appended to the dummy variable of zero. This problem is commonly seen in assignment problem formulations in multi-sensor multi-target scenarios [36]. Here estimation refers to position estimate by using pseudorange algorithms.
The target state uniquely determines as a true position or spoofed position. For convenience, the target state is given by To associate the list of measurements obtained for sources ζ (s) ∈ [1, 2, . . . S], where ζ (i s ) is the source of measurement either generated by satellite or spoofer. Let the selection of measurement from i s index be z i s . Where z i s The measurement z i s either originated from satellite or spoofer or missed detection (zero measurement), in which case, weather true or fake it is taken as H (x, X i s ) plus some additive white Gaussian noise. Besides, each ζ (i s ) has a known detection probability PD ζ (i s ) and it depends on the characteristics of the signal as given in (16). The likelihood of S-tuple of measurements z = {z 1 , . . . , z L } originating from target x is The likelihood of set of measurements are spurious with ψ ζ (i s ) as a field of view for sensor ζ (i s ) is given by u(i s ) is a indicator function, given by The cost of associating the set of measurements to target x is defined with negative log likelihood ratio However, x is unknown and replaced by maximum likelihood estimatex ML . The likelihood can be written as where σ = σ t = σ f from ideal spoofer assumption. Here Z = [z i 1 , . . . , z i S ] and h = [h i 1 , . . . , h i S ]. Similarly the log likelihood is written as Therefore maximizing the log likelihood is given bŷ Therefore, the cost of associating the measurements to target x is The main goal of this formulation is to get most likely set of S-tuples such that either the measurement assigned to target or declared as false by taking at most one measurement from each list. This can be reformulated as a well known optimization problem of S-D assignment in multi-sensor multi-target as subjected to where, ξ i 1 i 2 ···i S are binary association variables such that ξ i 1 i 2 ···i S = 1 if the S-tuple is associated with true target or spoof target. Otherwise, it is set to zero. The above assignment problem (24) solved using the murthy assignment algorithm [37], [38],

IV. KALMAN FILTERING AND DATA ASSOCIATION
In this section, trajectory spoofing problem is presented. Initially, how the spoofer misleads the true trajectory of the target is explored and then the navigation filter solution is presented.

A. TRAJECTORY SPOOFING
The final goal of spoofer in trajectory spoofing is to mislead the true target trajectory by continuously imposing the false measurements and change the destination of the target. An abrupt positioning by the spoofing effect can be easily detected by using a normalized innovation square test (NIS) or gating technique. So the ideal spoofer must possess a strategy to mislead the target. Here, we are dealing with the spoofing technique namely position gate pull-off [39]. The stealthy trajectory spoofing involves three phases, i.e., carry-off, deceive, and hand-off. In the carry-off phase, the projected spoofed location and the true location of the target almost coincide with each other for a certain duration of the time. The spoofing starts at t(o), replicates the target position for the time duration of T , as shown in Fig. 3. During this interval, the spoofer boosts the spoofed signal to capture the receiver. Once the target is captured by the spoofer, the second phase of spoofing is called as deceiving starts. Deceiving is slightly moving the spoofed location from the actual true location with lower turn rates. After a time duration of T , the spoofer generates measurements in such a fashion so as to separate the target from the planned path with any realistic trajectory models. During this phase, if the autonomous vehicles are more reliable on the inertial navigation system (INS) rather than the GPS, one can move the spoofed trajectory with very small deviations because the IMU sensors are incapable of detecting the lower turn rates for successful spoofing in such cases [40]. Once the target totally relies on the spoofed trajectory, the target can lead to a phase called hand-off, as shown in Fig. 3. The algorithms should be intelligent enough to resolve the issue during this deception phase. The mathematical model for position pull-off based trajectory generation [39] is given by where m is a discrete time index, v 0 is velocity vector. Here sampling time t = t(m) − t(m − 1). For a selected values of vector v 0 , the spoofed target can follow any trajectory models. Let the spoofed trajectory state be X f = x fẋf , whereẋ f is the velocity vector. The dynamic state equation is given by where F is a state transition matrix and is a noise gain matrix. The F can follow constant velocity (CV) model F CV or constant turn (CT) model F CT as given in [41]. The u follows Gaussian with zero mean and covariance Q.
where t is the sampling time.
where ω is the turn rate. The noise gain matrix is given by the covariance corresponding to this noise gain matrix is Q = σ 2 .

B. KALMAN FILTERING
For a discrete time linear dynamic system the plant equation is consider as Here m is a discrete time instant. X (m) is a state with n X dimension, and u(m) is process noise which is Gaussian with mean zero whose covariance is given as E u where y(m) consists of positions related to true, spoofed, and bias. FA is false alarms representing the spoofed positions.
Since the observations and state are in positions, the measurement transition matrix is linear. w is zero-mean white Gaussian with covariance R(m) as derived in (15). The values of F (state transition matrix), H (measurement matrix), R (measurement noise covariance), and Q (process noise covariance) are assumed to be known and vary with time. The state prediction iŝ The measurement prediction iŝ The Covariance of the predicted state is Similarly, the innovation covariance is given by The Kalman gain is given by All the above equations are the same as in standard KF used in navigation. Nevertheless, in navigation, only one measurement is available to update the state and covariance. Either all possible positions or M-best positions are calculated; in both cases, a large number of observations are evolved, as is the case of a typical tracking scenario. Consider a scenario with four authentic measurements, four spoofed measurements, and four appended dummy variables. Evaluating the combinations (based on four authentic, four spoofed measurements, and four appended dummy variables) yields to eighty-one combinations. Out of these, only fifteen best positions are taken and plotted as seen in Fig. 4. In the initial phase of carry-off, all the M-best estimates forms a single cluster, hence there is no ambiguity for measurement-to-track association. Whereas, it is clearly evident that evolved M-best estimates during the deceiving phase are not forming a single cluster, which leads to ambiguity of measurement-to-track association. Further, once the track is associated with wrong measurements, true trajectory follows the fake estimate and carried away by the spoofer. A gating technique is performed with in the filter framework to resolve this issue of selecting few estimates from the M-best estimates. The validation region (gate) is ellipsoid given by where ξ is the gate threshold determined by the chosen gate probability P G . The ξ follows a chi-square distribution with a n y degree of freedom and given tail probability. For 2D and 3D case n y is equal to two and three respectively. The valid measurements falling within the gate are {y l } L * l=1 . In a given M observations, only L * observations falling within the gate, at the given discrete time instant. The innovation corresponding to the l th validated measurement is represented as v (m + 1) = y l −ŷ (m+1|m) ; l = 1, . . . , L * (m + 1) . (37) The updated state is given bŷ Similarly, the updated covariance corresponding to the state is given by (39)

C. POSITION TO TRACK ASSOCIATION
The data associations employed in this KF is the nearest neighbor (NN) and probabilistic data association (PDA) [41]. In NN, the nearest observation to the predicted track is considered, and the innovation is carried out using this observation. Whereas, in PDA probability of l th validated measurements considered, to find the correct one be β 0 (m + 1) is association probability, which shows that none of the measurement is correct. The likelihood ratio e l is given by whereas P D is the probability of detection and P G is the gating probability. The updated state is given bŷ with the combined innovation as The Updated covariance is given as

V. RESULTS AND DISCUSSIONS
This section presents scenario generation, design parameters, and robustness of the proposed algorithm. To illustrate the robustness of the proposed algorithm, different scenarios like open space (LOS measurements with I = 4 to I = 6) and a multi-path environment (Non-LOS measurements with I = 4) are examined.

A. SCENARIO GENERATION
The satellite trajectories are modeled using WGS-84, and follows an assumption of circular orbits as Here X = [X , Y , Z ] is the satellite positional information, R is the radius (R = 26, 560 Km) of circular orbit, and θ are right ascension and angular phase in the circular orbit respectively.
The true satellite positions are collected at t(0) instant, processed and re-transmitted at the same instant. Hence, the antispoofing algorithm like constellation check cannot detect the spoofing effect [11]. The initial positions of the satellite are given in Table 1   TABLE 1. The satellite initial positions (angles θ (0) and (0)).
We consider a position pull-off spoofing technique test bench trajectory [39] to evaluate the proposed algorithm. The initial state vector of the true target is x t (0) = [10, 10, 10] and its velocity vectorẋ t (0) = [30, 0, 0] . The target moves towards the east (x) throughout the simulation with 30 m/s for 80 s with a CV model. The target trajectory consists of ideal trajectory and turbulence; the turbulence is modeled as process noise, follows Gaussian with zero mean and the standard deviation vector is given by [0.05, 0.05, 0, 0.02, 0.02, 0] . The first three elements of the standard deviation vector represent the position, and the other three elements correspond to velocity. The process noise exists along x and y directions, and absent in z direction due to the ground moving target assumption.
The spoofing process starts at t = 21 s and follows till the end. Since the target is not being influenced until t = 21 s, the standard navigation solution exists during this non-spoofing phase. The spoofed trajectory follows both CV and CT models, as presented in critical examples [22]. From 21 s, the carry-off phase starts with CV model and carried out for a further duration of 20 s. After that, the deceiving phase starts and lasts for 20 s, by taking left CT with ω = 1 o /s. Thereafter, the hand-off phase is carried out with the CV model for another 20 s duration as shown in Fig. 5.

B. DESIGN PARAMETERS
Since the ideal spoofer is considered in this paper, spoofer can process the spoofed pseudorange measurements with the same noise as of true pseudoranges. Both the pseudorange measurements are corrupted by white Gaussian noise with standard deviation, i.e., σ t i = σ f j = 1 m. The sampling time of KF is t = 1 s. Two-point initialization method [41] is used to initialize the filter. If the spoofing is carried out from the initial timestamp, the same two-point initialization method can be applied with the values of means of a cluster. The means of the cluster of positions formed at t(0) and t (1) epoch are x t µ (0) and x t µ (1) respectively. The state vector is The state transition matrix in the filter design is F CV and the noise gain is . The measurement transition matrix is given by H = [I 3 0 3 ], where I 3 represents the identity matrix and 0 3 is the zero matrix with dimension three. Moreover, the process noise covariance of the filter is initialized using the CRLB as given in [42]. To resolve the ambiguity of observation to track, NN and PDA techniques are deployed.

C. ROBUSTNESS OF ALGORITHM
The robustness of the algorithm is verified by varying the number of authentic signals and spoofed signals available at the receiver. Here, the robustness is evaluated for open space environment and urban environment. Open space environment implies that there are no multi-path measurements in the received set. Whereas, the urban environment introduces multi-path measurements in the authentic set. The position root mean square error (PRMSE) and track swap (TS) are the two quantifying measures considered in this paper. The TS is defined as the deceiving of navigation track from the true trajectory.

1) OPEN SPACE ENVIRONMENT
Assuming that the GPS receiver is located in low visibility scenario with I = 4 authentic satellite signals. Here all the signals are LOS with the receiver without any multi-path. In this case, a determined solution (number of unknowns to be estimated, equal to the number of available pseudoranges) exists for navigation. In the presence of spoofing, in addition to four true satellite signals, the spoofed signals are introduced with a variable number of J = 1, . . . , 6. Here, during the initial phase of trajectory m ∈ [1,20], the navigation filter follows a true trajectory without any spoofing. Due to the lack of initial velocity of the filter, two-point initialization is used, a decrease is seen in PRMSE of navigation filter after initialization, till m = 20 s. Thereafter, the carry-off phase is implemented for m ∈ [21,40], in which both true and spoofed trajectories follow the same path. Even though huge measurement-to-measurement associations occur in this interval, insignificant deflection in PRMSE is observed, as depicted in Fig. 6 6, 7, and 8. This is because, as number of spoofed injections increases, the measurement-to-track association ambiguity increases. As NN is a hard decision, once the track is decepted with the false measurement, it is hard to get back to the true trajectory path, and estimated path would continue to be with false measurements. Therefore, the increase in ambiguity of measurement-to-track association with number of spoof injections can be intuitively related  In another scenario, the GPS receiver receives I = 5, 6 authentic satellite signals. The available true ranges are greater than the number of parameters to be estimated, and the solution becomes over-determined. The spoofed signal injections vary as J = 1, · · · , 6. During the carry-off phase, we can observe improved PRMSE compared to the I = 4 case. This is due to the total number of ranges being involved in the position estimation and also because of the dummy variable assignment in the algorithm, the M-best solution gives positions related to all authentic satellite measurements. Due to the increase of measurements, there is a huge measurement-to-measurement association in this phase compared to the I = 4 scenario, and is computationally expensive. In the Fig. 7 and 8, an improved PRMSE is observed in the deceiving phase, compared to that of Fig. 6. The improved PRMSE is due to more number of authentic satellite signals involved in the ILS solution, compared to the I = 4 case. During the deception phase, the TS is decreased in comparison to four authentic satellite cases; this is because of either an increase in the position integrity or lesser ambiguity of selecting an observation within the gate. The TS is reported in Table 2; an increase in true measurements improves the navigation filter to choose the true trajectory rather than fake trajectory. The TS rate increases as the number of injections increase, as shown in Table 2. Similar to the previous case, the clusters are well separated in the interval of hold off, and the PRMSE settles down as shown in Fig. 8. The simulations are carried out for five authentic measurements and its corresponding spoofed measurement injection, and the TS are depicted in Table 2.
The drawback of the NN is its hard decision towards measurement-to-track association, by considering the nearest observation. So, the probabilistic data association is used for the above-stated problem. Interestingly, owing to PDA, the TS is decreasing compared to NN technique. If wrong measurement-to-track association is taken place in the initial stage of deception, there is a highly likelihood that it will get corrected, since PDA evaluate all weighted measurements within the gate to form the innovation. The number of TS by varying the authentic and spoofed signals is presented in Table 2. But, during the interval of carry-off phase, a little raise is seen in PRMSE, by using PDA technique. Since  true and spoofed follow the same path in the carry-off, the evolved M-best position estimates correspond to the same ground truth, and hence, we observe this raise in PRMSE as in Figs. 9, 10, and 11. The calculated weighted innovation, by considering the observations within the gating region is different from the actual innovation seen in the NN technique. However, in the deceiving interval, a degraded PRMSE is observed with PDA as compared to that of the NN technique. Due to the probabilistic decision during the deceiving period, the navigation track to follow spoof track decreases. In Table 2, the algorithm's TS is presented, where we can observe that the PDA outperforms NN even as the number of spoofed measurements injection increases. Furthermore, the overall computational load of the algorithm depends on the M-best positions and the total number of measurements being involved in the ILS. However, due to advancement in computational algorithms and hardware realizations, it is possible to achieve a high-speed processing hardware in a compact form.

2) URBAN ENVIRONMENT
If the available authentic measurements are greater than or equal to number of unknowns in the pseudomeasurement equation. Then unique solution exists and it is clearly depicted in the open space environment case in Section-V-C1.
To evaluate the urban environment, we assumed that the available authentic measurement set consists of four measurements, in which multi-path measurements are also present. The multi-path measurement usually differs from the actual  measurement by the phase and distance between source and receiver. Since this paper dealt with the distance as a measurement to the estimator, the phase component is ignored. In the first case, one multi-path measurement exists and it is deflecting with 150 m range, whereas the rest of the three measurements are LOS to the receiver. The simulations are carried out for this case and the PRMSE is depicted in Fig. 12. In this case, we can observe that the M-best assignment solution of (25) is minimum for the authentic measurement set even though it contains one multi-path measurement. Here, out of four measurements, one multi-path measurement exist and as a result of that the PRMSE is increased to 380 m. We can observe that the cost minimization function is able to mitigate the effect of spoofing upto three spoof measurements. On the other hand, the M-best cost minimization of (25) provides the spoof location as the best location rather than the true location for the case of four spoof measurements, which is clearly shown in Fig. 12.
However, further investigation of multi-path effect in the spoofing environment, is performed with increased number of multi-path signals. In this case, out of four measurements in the authentic set, two LOS signals and two multi-path signals are considered. The multi-path measurements are deflected by 150 m and 250 m in range respectively, and PRMSE is plotted in Fig. 13. From the fig. 13, it is observed that the average PRMSE is raised to 750 m for the spoof injections of J = 1, 2, &3. Whereas, for J = 4, the M-best cost minimization function of (25) is getting minimized for the spoof measurement set and eventually following the spoof trajectory. It is also observed that, in very few monto carlo runs, the measurement-to-track association is carried out for true rather than the spoof(only 7 runs out of 100 runs possess correct measurement-to-track association). Hence the TS is not tabulated for this special case.
From the results obtained, it is apparent that, the algorithm has a limitation to mitigate more than four spoof signals in the urban environment. Even though, the NN and PDA data associations are deployed, we observe insignificant improvement in the PRMSE value. There is a future scope to formulate a research problem by using the attributes of the signal (i.e., amplitude, phase, power) and solve the constrained optimization problem to address spoofing problem in urban scenario.

VI. CONCLUSION
This paper proposes an efficient alleviating method for GPS spoofing by using M-best likelihood-based optimization and a Kalman filter with data association. A novel technique of accepting all the authentic GPS signals and spoofed signals into the robust positioning algorithm, at every epoch, is presented in this paper. The robust positioning algorithm computes all possible combinations of pseudoranges, using the ILS solution. M-best position algorithm is successfully deployed to decrease the computational complexity of the robust positioning algorithm. To further accomplish the performance of the proposed method, Kalman filter followed by data association, is given and a lower track swapping rate with probabilistic data association is achieved. Simulations demonstrate that the proposed methodology is efficiently working for higher to lower satellite visibility, even with the increase in spoofed signal injections.
The future works can address the non-ideal spoofer scenario, selection of positioning algorithm for non-Gaussian measurement noise, development of navigation track for the non-Gaussian case, development of data association, and low computation algorithms. Furthermore, one can carry out the problem of spoofing effect mitigation in urban environment using the signal attributes and constrained optimization.