A Correlation Algorithm for Geo-Location Position Measurements Mike Grabbe The Johns Hopkins University Applied Physics Laboratory Laurel, MD Memo Number FPD-M-11-0073 November 10, 2011 1 Introduction Most geo-location scenarios faced by surveillance systems involve the existence of multiple targets within the area of operation. As a result, each new sensor measurement must be correlated with a speci…c target before any target position estimate can be updated by the geo-location algorithm. Geo-location performance is typically degraded in a dense target environment due to the di¢ culty of correlating each measurement with the correct target, and of preventing the generation of numerous false or "ghost" targets. See reference [1] for more details. A batch processing algorithm that solves the correlation problem for stationary ground targets when the measurements are of Direction Finding (DF) angles was given in [2]. This paper presents a modi…cation of the algorithm that can be used when the measurements are of target position and uses a geo-location simulation example to illustrate each step. No assumption is made as to how the position measurements are generated. They could be the output of an active radar, an imaging system, or a passive geo-location system that processes measurements of DF angles, Time Di¤erence of Arrival, or Frequency Di¤erence of Arrival. The algorithm determines the cluster of measurements that maximizes the target position log-likelihood function when compared to all candidate clusters. The candidate clusters are those that pass a Mahalanobis distance [1] association criterion - an exhaustive search over all possible measurement combinations is not performed. Once the optimal cluster of measurements has been determined, a target position estimate is computed using the cluster, the cluster is removed from the set of all measurements, and the process is repeated. This continues until no additional clusters can be formed. 1 Distribution Statement A: Approved for Public Release; Distribution is Unlimited 2 Simulation Example R Matlab was used to simulate the correlation algorithm developed in this paper for the following geo-location scenario. An aircraft is receiving RF transmissions from multiple stationary ground target emitters within its area of operation. The number and positions of the targets are unknown. The received RF transmissions are used to compute target position measurements which are processed by the correlation algorithm to determine the …nal target position estimates. The values of the scenario parameters are given in the table below. Scenario Parameter number of targets number of target position measurements 3 3.1 Value 7 100 Sensor Measurements De…nitions Let xi be the r 1 true target position vector for i = 1; 2; : : : ; N , where N is the number of position measurements. Note that the number of unique values of xi will typically be much less than N . The target position x could be a 2 1 vector giving position in a plane tangent to the earth’s surface as described in [2], a 2 1 vector containing WGS84 longitude and geodetic latitude [3], or a 3 1 vector giving Cartesian position relative to the Earth Centered Earth Fixed coordinate frame. Let z i be a measurement of xi . We will assume that these measurements are independent and that the measurement errors are unbiased and Gaussian with known covariances. As a result, we have z i = xi + i (1) i N (0; Ri ) (2) where N represents a Gaussian distribution, i is the measurement error, and Ri is the r measurement error covariance matrix. From the above we have zi N (xi ; Ri ) r (3) and therefore that (z i xi )T Ri 1 (z i xi ) 2 (r) (4) where 2 (r) represents a chi-square distribution with r degrees of freedom. The sensor measurements processed by the correlation algorithm are the pairs (z i ; Ri ) for i = 1; 2; : : : ; N . 2 3.2 Simulation Example For each of the N = 100 target position measurements, a random draw was made to determine which of the 7 targets was transmitting a signal. For that target, a WGS84 position measurement was generated by processing simulated azimuth and elevation measurements using the algorithm described in [4]. The resulting position measurements and 95% con…dence error ellipses are shown in Figure 1 below. true position measured position 36 35.9 latitude (deg) 35.8 35.7 35.6 35.5 35.4 35.3 35.2 -117 -116.8 -116.6 -116.4 longitude (deg) -116.2 -116 Figure 1: True and Measured Target Positions 4 4.1 Step 1 Algorithm The clustering algorithm requires that each z be treated both as a position measurement with associated error covariance matrix R, and as a candidate cluster point. We will let z i represent a position measurement and z j represent a candidate cluster point, for i; j = 1; 2; : : : ; N . The …rst step of the algorithm is to determine the set of position measurements that can be associated with each candidate cluster point based on Mahalanobis distance. The Mahalanobis distance between measurement z i and candidate cluster point z j is mij = (z i z j )T Ri 1 (z i zj ) (5) Note from (4) that if z j is the true target position associated with z i , then mij has a 2 (r) distribution. This fact is the basis for the measurement association criterion. Our null hypothesis is that z j is the target position associated with z i . Let be the probability of a Type 1 error, i.e., the probability of rejecting the null hypothesis when it’s true. Let k be the critical value from a 2 (r) distribution such that Pr 2 (r) k = 1 (6) 3 The association criterion is that position measurement z i can be associated with candidate cluster point z j only if mij k. The set of indices of measurements that can be associated with z j is Sj = fi : mij kg (7) We will require that the number of elements in Sj be at least 3 in order for Sj to be a candidate cluster for measurement correlation. Two facts about (7) are worth noting. One is that each position measurement can typically be associated with numerous candidate cluster points. The other is that the elements in each set Sj are not necessarily unique: Sj1 and Sj2 may contain the same elements for j1 6= j2 . 4.2 Simulation Example The value of used was 0:05, which means that k used in (6) and (7) is the 95% critical value from a 2 (2) distribution. Of the 100 candidate cluster points, 96 produced a candidate cluster for measurement correlation. 5 5.1 Step 2 Algorithm The second step of the algorithm is to determine which of the candidate clusters gives the largest log-likelihood function value when the measurements in that cluster are combined to compute a target position estimate. Let Sj be a candidate cluster and let y be the stacked vector containing all z i such that i 2 Sj . We will assume that all such z i are associated with the same true target position x. Using (3) gives that the conditional probability density function for the measurements given the target position x is f (y j x) = Y i2Sj f (z i j x) = Y i2Sj 1 r=2 (2 ) jRi j 1=2 1 (z i 2 exp x)T Ri 1 (z i (8) x) The Maximum Likelihood Estimate of x is de…ned as x ^ = arg max f (y j x) = arg max ln (f (y j x)) = arg min x x x X (z i x)T Ri 1 (z i x) (9) i2Sj The value of the estimate is 2 x ^=4 X i2Sj 3 10 Ri 1 5 @ X i2Sj The associated estimation error covariance matrix is h P = E (x x ^) (x T x ^) i 1 Ri 1 z i A 2 =4 X i2Sj Ri (10) 3 15 1 (11) Because the measurement errors are assumed to be Gaussian, we have that x ^ N (x; P ) 4 (12) The log-likelihood function value associated with candidate cluster Sj is lj = ln (f (y j x ^)) (13) The cluster giving the largest log-likelihood function value is Sjmax , where jmax = arg max lj (14) j 5.2 Simulation Example Of the 96 candidate clusters, only 1 achieved the maximum log-likelihood function value and contained 22 position measurements. The optimal cluster is shown in Figure 2 below. optimal cluster 36 35.9 latitude (deg) 35.8 35.7 35.6 35.5 35.4 35.3 35.2 -117 -116.8 -116.6 -116.4 longitude (deg) -116.2 -116 Figure 2: Optimal Cluster of Position Measurements 6 6.1 Step 3 Algorithm The third step of the algorithm is to compute the target position estimate (10) and estimation error covariance matrix (11) using the optimal cluster, then remove the cluster from the set of all measurements. Note that the position estimate has already been computed as an intermediate step in determining the log-likelihood function value (13). 5 6.2 Simulation Example The target position estimate for the optimal cluster and the 95% con…dence error ellipse are shown in Figure 3. The 22 measurements in the optimal cluster have been removed. estimated position 36 35.9 latitude (deg) 35.8 35.7 35.6 35.5 35.4 35.3 35.2 -117 -116.8 -116.6 -116.4 longitude (deg) -116.2 -116 Figure 3: Target Position Estimate and Error Ellipse for Optimal Cluster 7 7.1 Remaining Steps Algorithm The remaining steps of the algorithm involve repeating steps 1-3 above until no additional measurement clusters are formed. 7.2 Simulation Example The …nal target position estimates and 95% con…dence error ellipses are shown in Figures 4 and 5. Note that 3 position measurements were not assigned to a cluster and that the center error ellipse did not contain the true target position. 6 estimated position 36 35.9 latitude (deg) 35.8 35.7 35.6 35.5 35.4 35.3 35.2 -117 -116.8 -116.6 -116.4 longitude (deg) -116.2 -116 Figure 4: Final Measurement Correlation and Geo-Location Results true position estimated position 35.9 35.85 35.8 latitude (deg) 35.75 35.7 35.65 35.6 35.55 35.5 35.45 -116.8 -116.7 -116.6 -116.5 longitude (deg) -116.4 -116.3 -116.2 Figure 5: Final Target Position Estimates and Error Ellipses 7 8 References [1] Bar-Shalom, Y., P.K. Willett, and X. Tian, Tracking and Data Fusion, A Handbook of Algorithms, YBS Publishing, 2011. [2] Grabbe, M.T., “A Measurement Correlation Algorithm for Line-of-Bearing Geo-Location”, Johns Hopkins APL Memo GVW-0-11U-002, July 2011. [3] NIMA Technical Report TR8350.2, Department of Defense World Geodetic System 1984, Its De…nition and Relationships With Local Geodetic Systems, 3 rd Ed., January 2000. [4] Grabbe, M.T. and B.M. Hamschin, “Geo-Location Using Direction Finding Angles”, Johns Hopkins APL Technical Digest, (in press). 8