# Patent

## Title
Time varying adaptive clutter filter and clutter residue sensor

## Abstract

Target tracking basic sensors are used alone or in multi-sensor combination for multi-target surveillance systems. Optimal assignment of targets to pseudo sensor combinations of single basic sensor groups or to sensor groups formed of a plurality of basic sensors is provided subject to given constraints on basic sensor capacity for a given definition of optimal. The approach taken here is to determine the predicted gain in information content of a track i after it is updated with data from pseudo sensor i for all pairs i,j. This information content is then used to predict without making actual observations by using the properties of the Kalman covariance matrix. Assignments of tracks to pseudo sensors are then made on a continuing basis so that the total information gain is maximized. This is achieved by imposing unique constraints on the pseudo sensors and then calculation maximized information gain using linear programming methods.

## Background
This invention relates to multi-sensor, multi-target radar surveillance systems and in particular to the optimal assignment of targets to sensors in such systems.

The problem of allocating of multiple sensors for the surveillance of multiple targets advanced in radar systems are formidable. The sensors are often of different types and are usually located on different platforms while the surveillance is confined to a particular Volume of Interest (VOI). Target ranking, spatial and temporal coverage, conversion of assignments into sensor control commands, immunity to countermeasures, emission control, cueing and handoff, event prediction, and the ability of sensors to observe targets are among the many complicated aspects of the problem. Prior allocation methods were often ad hoc and sub-optimal.

The mathematical foundations of the invention are shown in equations 1-5 below. Let X be a discrete parameter space with a finite number of parameters. The most general way of describing any state of information on X is by defining a probability measure of .mu. that extends over X. The most familiar case is when .mu. is a probability for a given state of information and f(x) is its corresponding probability density function. Thus for any A X, where A is equal to, or is in, the set X, we have ##EQU1##

The probability density function f(x) is said to represent the state of information. Each track process is described by a Kalman filter. It is a property of the Kalman filter that one can, a priori, calculate the updated covariance matrix for the target, if it is assumed that a selected sensor will be used to observe or track the state vector. The form of the uncertainty of the components of the state vector x is selected as a gaussian multi-variate distribution. The form of the density function f(x; m,P) is then given by (-1/2[x-m].sup.T P.sup.-1 [x-m])                          (2)

where m is the mean vector of the state and P is the covariance matrix. The mean vector m is the most probable value of the state and the covariance matrix P is a symmetric matrix whose diagonal elements are the variances of the components of the state vector. In order to evaluate the efficacy of assigning a sensor to a target, we choose to use the predicted information content of the state vector as a comparative measure of how to make the best assignment.

The relative information content I(f,.lambda.) of a probability density function f(x) with respect to the (normalized) non-informative probability density .lambda.(x) is given by: (.function.(x)/.lambda.(x))(3)

and is simply called the information content of f(x). When the logarithm is to the base 2, the unit of information is termed a bit; if the base is e=2.71828 . . . , the unit is the nep or neper; and when the base is 10 the unit is the digit. It is known that I(f,.lambda.) is invariant under a change of variables that is one-to-one and onto (called bijective). It is also known that .lambda. is a uniform probability density if the coordinate system is Cartesian.

If sensors are assigned to observe the state vector x, then the new updated covariance matrix will be called P.sub.1, while the updated covariance matrix if the state vector is not observed will be called P.sub.o. The density function for the one step ahead (i.e., one calculation cycle) state vector if the track is observed by a sensor is f.sub.i (x;m.sub.1,P.sub.1). The density function for the one step ahead updated state vector if the track is not observed by a sensor is f.sub.o (x;m,P.sub.o). When the information gain in the one step ahead state vector for a track T is the difference in the information content if the track is observed minus the information content if the track is not observed. This "gain" in information can be denoted by G where

The notation for the gain in assigning sensor i to track j is obtained by subscripting the gain as G.sub.ij. If the density functions are Gaussian, we can then evaluate I in closed form, and, therefore, also G to obtain for the gain in information content, the expression ##EQU2## where the notation .vertline.P.vertline. stands for the determinant of P and the unit is the neper.

The use of Kalman filters to obtain preferred sensor-to-target assignments in a generic surveillance context is known. Jeffrey M. Nash's article in Proceedings of the IEEE Conference on Decision and Control, 1997 entitled "Optimal Allocation of Tracking Resources" discusses an approach to the general problem. The Nash paper utilizes pseudo sensors in addition to the original independent sensors in which the pseudo sensors are provided for all possible sensor combinations. The Kalman filter is utilized to provide the covariance matrices P.sub.1 and P.sub.0 which are used in G to calculate the gains in information content which can then be presented in an augmented sensor target assignment array in which the targets 1-n are aligned in a row across the top of the array, and the sensors 1-m are aligned in a column on the left side of the array. Thus there will be formed n.times.m cells in the array, and a maximum information gain and associated sensor to target assignment will be calculated by a digital computer using a linear programming algorithm on a step-by-step basis. The assignment thus obtained is the optimal assignment in the sense of maximum gain of information.

Allocation of multiple sensor as single basic sensor "pseudo sensors" or as collections of basic sensors to form additional pseudo sensors to multiple targets is achieved for a radar surveillance system by determining the predicted gain in information content of a track i after it is updated with data from pseudo sensor j for all pairs of tracks and pseudo sensors i,j. This information content is predicted by using a Kalman covariance matrix data for each target track. The particular assignment of tracks to pseudo sensors that maximizes the total information gain subject to the constraints on basic sensor capacities is generated by a software process that implements the mathematical technique of linear programming.

FIG. 1 is a schematic block diagram of a system in accordance with the present invention, and

FIG. 2 is a block diagram of the process of optimization by which information gain is obtained with the invention.

The invention will be described with reference to a surveillance problem in which there are s pseudo sensors and t targets or tracks. In the assignment of a pseudo sensor to a target we assume that each pseudo sensor is described by a Kalman filter covariance matrix which provides the errors the basic sensors make in measuring various features related to a target's state vector.

FIG. 1 is a block diagram of a representative embodiment of the present invention in which five targets T.sub.1 -T.sub.5 are the targets that are to be tracked. The system uses three independent basic, or actual, sensors S.sub.1 -S.sub.3. In addition to the three basic sensors, four other sensor groups are formed S.sub.4 -S.sub.7. Three of these sensor groups, S.sub.4, S.sub.5 and S.sub.6, are formed by utilizing the various combinations of the basic sensors S.sub.1, S.sub.2 and S.sub.3 taken two at a time. The seventh sensor group is then formed with a combination of all three sensors S.sub.1 -S.sub.3. There are then seven possible sensor groups to target tracks assignments that may be formed since a sensor group may consist of only a single basic sensor. Each group of sensors, whether formed of a single sensor or a plurality of sensors, may be called either a "pseudo sensor" or a "sensor" in this document, where the context will make the meaning or the term apparent. Each track has a Kalman filter assigned to it in the described embodiment. These gain serials are then utilized by a digital computer C which receives the information from the Kalman filters K.sub.1 -K.sub.5 and utilizes a software program to implement mathematical linear programming in a manner which will maximize the information gain on a continuing step-by-step basis. In this manner the assignment of pseudo sensors to targets is resolved in the most efficient tracking procedure on a substantially real-time basis. The results of the computer are utilized by the pseudo sensor target assignment controller A to update the pseudo sensor combinations on a step-by-step updated basis and to provide the results to the sensor control B. FIG. 1 is only a schematic and it is to be realized that all of the pseudo sensors are coupled to suitable known antenna or antenna arrays so that any of the pseudo sensors may track any of the targets which are in their fields of view.

FIG. 2 illustrates the process in which the method of optimizing the allocation of sensors to targets in radar surveillance systems in which the present invention is employed. In systems in which multiple pseudo sensors are allocated to multiple targets, the available basic sensors, the capacity of each basic sensor and the capability of the basic sensors for producing errors must first be determined, and this information must be supplied to the data processing resources of the system, as indicated in step 10. This information is derived from information obtained from the basic sensors, such as the fields of view and the accuracies indicated in step 12.

Once this information is known, data received from the basic sensors are combined by implementation of equation 8 to form additional "pseudo sensors," as indicated in step 14. A process of constructing and attempting to optimize pseudo sensors was described by J. M. Nash in the article "Optimal Allocation of Tracking Resources," Proceedings of IEEE Conference on Decision and Control, 1977, pp 1177-1180. The method of step 14 allows for the combination of basic sensors which is assigned to a single target by considering that the combination of basic sensors is a single pseudo sensor which is assigned to the target. The number of "sensors" employed is thus increased from S to 2.sup.s -1.

Once the optimal pseudo sensor to target assignment is obtained, it can be employed to observe the various targets returned tracks if the Kalman filter for each target is then employed to update the filter, based on the observation. Following updating of the Kalman filter, information is utilized to compute predicted track errors and positions. There are constraints, however, on the assignment of pseudo sensors. One of the most important constraints is the maximum tracking capacity of the basic sensors. Given a specified time interval, some sensors can observe a certain volume of space and also track a specified number of targets. They cannot exceed this maximum tracking capacity in the specified time period. If the maximum tracking capacity is known for each of the basic sensors, then this must be accounted for when the pseudo sensors are assigned. Prior work in this area did not achieve the desired optimization because it did not adequately address the pseudo-sensor constraints.

The process of this invention relies on information gain that is obtained by the assignment of the pseudo sensors as calculated by use of the equation 5 in step 16. The optimization method of step 18 of this invention then assigns pseudo sensors to targets in such a way that the one step-ahead gain in information content of the track set is maximized. To do this, the one step ahead predicted gain in information content G.sub.ij, of a track j after it is updated with covariance data from pseudo sensor i is determined for all pairs i, j. This can be formulated as a linear programming problem with suitable constraints, where the constraints are handled as follows.

Let the basic sensors be numbered from 1 to s. Let the pseudo sensors be numbered from s+1 up to 2.sup.s-1. For each basic sensor k, let J(k) be the set of integers consisting of k and the integer numbers of the pseudo sensors which contain sensor k in their combination. There will be 2.sup.s-1 integers in each set J(k). These sets J(k) will appear in the constraints that are given for the linear programming formulation to our optimal assignment problem.

We can now state the linear programming problem. It is to: ##EQU3## where C is the maximum relative gain in a cycle, and equation 6 is subject to the following constraints which are generated from the pseudo sensor assignments. The first constraints are: ##EQU4##

These constraints require that the quantity on the left side of the equation is equal to 0 or 1. In other words, each of the columns of the pseudo sensor target matrix of Table I can only have a single "1", or it may have all "0" states, where "1" means a pseudo sensor is assigned and means no pseudo sensor is assigned. Also, the solution must satisfy: ##EQU5## where .tau..sub.k is the maximum tracking capacity of the basic sensor k.

This constraint means that the row designator of the matrix is determined by the J(k) set for a given pseudo sensor k for the second summation while the column designator of the matrix varies from 1 to 0's for the first summation.

Equation 6 in the present invention provides a maximized information gain function which is based upon the evaluation of equation 5 by the digital computer. This maximized gain function is different from the "sensor cost" function of the Nash article. The double integrated function of equation 6 does have some similarities to the double integrated function of the Nash article in that the state vector X.sub.ij is utilized and the G.sub.ij replaces the "c" (from the sensor cost function) of the Nash article. The constraints which are imposed in the evaluation of the linear program represented in equations 7, 8 and 9 are entirely different from those used by Nash, however. The result is a substantially improved sensor and target optimization system.

The linear programming problem of equation 6 under the constraints of equation 7, 8 and 9 may be evaluated by standard linear programming methods. Illustrations of a three basic sensor, five-target example problem using a linear programming method implemented with a commercial program called Mathematica.TM. which is available from Wolfram Research are shown in the Appendix. This implementation incorporates the Kalman filter P, Q and R variances associated with track, sensor and process noise variances.

The implementation of the evaluation of equation 6 can be better understood by reference to the following Table I. ______________________________________ T1           T2     T3         T4   T5 ______________________________________ S.sub.1 X.sub.11   X.sub.12 X.sub.13 X.sub.14 X.sub.15 S.sub.2 X.sub.21   X.sub.22 X.sub.23 X.sub.24 X.sub.25 S.sub.3 X.sub.31   X.sub.32 X.sub.33 X.sub.34 X.sub.35 S.sub.4 X.sub.41   X.sub.42 X.sub.43 X.sub.44 X.sub.45 S.sub.5 X.sub.51   X.sub.52 X.sub.53 X.sub.54 X.sub.55 S.sub.6 X.sub.61   X.sub.62 X.sub.63 X.sub.64 X.sub.65 S.sub.7 X.sub.71   X.sub.72 X.sub.73 X.sub.74 X.sub.75 ______________________________________

In this table S.sub.1, S.sub.2 and S.sub.3 are the basic sensors (and hence also are pseudo sensors), and S.sub.4, S.sub.5 and S.sub.7 are additional pseudo-sensors. T.sub.1, T.sub.2, T.sub.3, T.sub.4 and T.sub.5 are targets. The values X.sub.11, X.sub.12, X.sub.13, etc., represent the corresponding state vector value X.sub.ij of the table where i represents the pseudo sensor number and j represents the target number.

With this implementation, the constraint equation 7 for j=1 becomes: ##EQU6##

This means that either all of the X.sub.11, X.sub.21, X.sub.31, X.sub.41, X.sub.51, X.sub.61, X.sub.71 values are 0, or only one of these values is 1 and the rest are 0. A 0 value means a pseudo sensor is not assigned to a corresponding target, while a 1 value means that it is assigned to the corresponding target. The constraint of equations 8 and 0 may be evaluated, as shown by the example for J(2) where J(2)={2, 4, 6, 7}] as follows. In this evaluation the basic sensor 2 may be used alone to form pseudo sensor 2 or in combination with other sensors to form the pseudo sensors 4, 6 and 7. For this example then: ##EQU7## where 2 is a physical constraint that means the number of targets that pseudo sensor 2 can track is a maximum of 2 targets.

Equation (7) fixes each j and sums over the pseudo sensors. The fact that this is constrained to be less than or equal to "1" means that only one or none of the pseudo sensors will be assigned to target j. Equation (6) sums the G.sub.ij values for which there is a pseudo sensor assigned because the x.sub.ij values are "0" or "1" if the .tau..sub.k are integers. Equation (8), by virtue of the sets J(k), insures that the number of targets tracked by the assigned pseudo sensors does not exceed the maximum tracking capacity of a basic sensor k. If there are more targets than the total tracking capacity, then Equation (7) allows some targets do not have pseudo sensors assigned to them.

Following the determination optimal assignment of pseudo sensors to tracks, assignment is made in step 20. The assignment of tracks in step 20 allows updating of the Kalman filter in step 22 in accordance with known processing steps. After updating of the Kalman filter, predicted track errors and positions, the information gain is calculated for each sensor target cell of the matrix by known means by the computer in step 24. The process continues on a real-time basis, as information from the sensors continues to be provided to the system. Each time through the loop (i.e., each new calculation cycle) a new assignment of pseudo sensors to targets may be accomplished.

Examples of optimization. Some simple examples will illustrate the concept. They are based on three basic sensors and five targets.

With three basic sensors, s=3, and 2.sup.s-1 =7. Let S1, S2, S3, S4, S5, S6, and S7 be the designations of all of the pseudo sensors with S4={S1,S2}, S5={S1,S3}, S6={S2,S3}, and S7-{S1,S2,S3}. The integer sets J(k) then contain 2.sup.3-1 =4 integers and are then: J(1)={1,4,5,7}, J(2)={2,4,6,7}, J(3)={3,5,6,7}.

Example 1

Information gains are calculated according to a model in which the five targets are one-dimensional state vectors with initial P, Q, R covariance matrices for Kalman filters (actually variances) given by

the covariance matrices (variances) of the three sensors are

and the covariance matrices (variances) of the target process noises are

The updated target covariance matrix (variance) is 1/P(new;j,i)=1/(P(old;j)+Q(j))+1/R(i) if target j is to be observed by sensor i, and P(new;j,0)=P(old;j)+Q(j) if the target is not going to be observed. The information gains achievable by assigning pseudo sensor i to target j are then (it will not alter the solution if we suppress the multiplier 1/2) ##EQU8##

In all the cases covered, the integer sets J(k) used in equation (8) are as in Example 1. The solutions may be obtained by using linear programming and the Mathematica.TM. software program, which is illustrated in the Appendix. (Note in the Appendix that the term "sensor" is used instead of the term "pseudo sensor" to represent a group of basic sensors, as well as the basic sensors.) The optimal assignments are indicated in boldface type.

Case 1. The maximum tracking capacities are 2 for S1, 1 for S2, and 1 for S3. The information gain matrix is derived from Table II. ______________________________________ T1        T2        T3     T4      T5     .tau.i ______________________________________ S1   1.099 ##STR1##  1.050 1.050 ##STR2## 2 S2 ##STR3## 2.015     2.015 2.015   2.015  1 S3   0.773    0.734     0.734 ##STR4## 0.734  1 S4   2.303    2.236     2.236 2.236   2.236 S5   1.427    1.371     1.371 1.371   1.371 S6   2.216    2.150     2.150 2.150   2.150 S7   2.413    2.346     2.346 2.346   2.346 ______________________________________

A count shows the maximum tracking constraints are met. The information gain for this optimal assignment is 4.913 nepers. The new P-vector (in general this would be a set of covariance matrices) is P={0.0764, 0.2275, 0.65, 0.65, 0.65}. The small t column is not part of the pseudo sensor/target array. It is used to indicate the maximum number of targets a given sensor on the same row can track.

Case 2. If more tracking capacity is allowed than there are targets, e.g., the maximum tracking capacities are 2 each for S1, S2, and S3, then the information gain matrix is derived from Table III. ______________________________________ T1        T2       T3       T4     T5     .tau. ______________________________________ S1   1.099    1.050    1.050  1.050 ##STR5## 2 S2 ##STR6## 2.015    2.015 ##STR7## 2.015  2 S3   0.773 ##STR8## 0.734  0.734  0.734  2 S4   2.303    2.236    2.236  2.236  2.236 S5   1.427    1.371 ##STR9## 1.371  1.371 S6   2.216    2.150    2.150  2.150  2.150 S7   2.413    2.346    2.346  2.346  2.346 ______________________________________

Again, it is clear that the maximum tracking capacity constraints are met. The information gain for this case is 7.249 nepers. The resulting value of the P-vector is P={0.0875, 0.3120, 0.1650, 0.0867, 0.2275}.

When track probabilities are known, you can let p(T) be the probability of track T at step k. In a multi-hypothesis algorithm, this is the sum of the hypothesis probabilities of all the hypotheses containing the track. Let f(x;T) be the density function of track T when, as used above, track probabilities were not considered. Then the probability density f(x,;T) of track T taking track probability into consideration is the product of f and P:

The information content of a track T is then T)/.lambda.]=.intg.dxp(T).function.(x;T) ln p(T)+.intg.d xp(T).function.(x;t) ln [.intg.(x;T)/.lambda.].           (15)

The gain in information in the probability case is then ##EQU9##

In this example, equation (12) is used to compute the entries of the gain matrix. The maximum tracking capacities are 2 for S1, 1 for S2 and 1 for S3. The track probabilities used are

The gain matrix is derived from Table IV. ______________________________________ T1        T2       T3       T4     T5     .tau. ______________________________________ S1   0.890 ##STR10## ##STR11## 0.493  0.241  2 S2 ##STR12## 1.531    1.471  0.947  0.463  1 S3   0.626    0.558    0.536 ##STR13## 0.169  1 S4   1.865    1.699    1.632  1.051  0.514 S5   1.156    1.042    1.001  0.645  0.315 S6   1.795    1.634    1.569  1.010  0.494 S7   1.954    1.783    1.712  1.102  0.540 ______________________________________

Comparing this with Example 2, Case 1, we see that T5 did not receive a pseudo sensor assignment in the present example, but T3 was assigned instead. The difference was caused by the low probability of track five and the resultant lowered gain terms. The new P-vector is P=0 . . . 0.0875, 0.2275, 0.312, 0.65. The information gain is 3.953 nepers. ##SPC1##

## Claims

1. A sensing system for optimizing the allocation of sensors to targets that are being tracked by the system on a continuing basis comprising, pseudo sensor group is formed by each basic sensor and by each possible combination of said basic sensors, target which is dependent on state vector data being tracked for predicting track errors and the position of its associated target, said Kalman filter for receiving available basic sensor data, basic sensor capacity data and basic sensor error input data target state vector data and Kalman filter covariance matrix data, gain of said system for each pseudo sensor and target assignment on a continuing basis as a function of the ratio of the covariance matrix data of each associated Kalman filter when state vector data of the associated target is observed to the covariance matrix data of each associated Kalman filter when state vector of the associated target is not observed, maximize the relative information gain in a calculation cycle in which the state vectors and the gain values for each possible combination of said sensors and said targets are calculated, namely: ##EQU10## where C is relative gain, G.sub.ij is the information gain of a track j and sensor i, and X.sub.ij is the state vector for each track j and sensor i, and said second software code imposes the first constraint, ##EQU11## where S is the number of basic sensors and 2.sup.s -1=.tau., and to the second constraint ##EQU12## where .tau..sub.k is the maximum tracking capacity of the basic sensor k, i  J(k) means i is a subset of J(k), and J(k) represents the set of all pseudo sensors that include the basic sensor k, and pseudo sensors formed of one or more basic sensors on a continuing basis after each information gain calculation which is coupled to said computer and to said pseudo sensors for recombining said sensors with said targets in response to the maximization value, c, of said relative gain that is obtained after each information gain calculation.