Track estimation with binary derivative observations
Abstract
We focus in this paper in the estimation of a target trajectory defined by whether a time constant parameter in a simple stochastic process or a random walk with binary observations. The binary observation comes from binary derivative sensors, that is, the target is getting closer or moving away. Such a binary obervation has a time property that will be used to ensure the quality of a maxlikelihood estimation, through single index model or classification for the constant velocity movement. In the second part of this paper we present a new algorithm for target tracking within a binary sensor network when the target trajectory is assumed to be modeled by a random walk. For a given target, this algorithm provides an estimation of its velocity and its position. The greatest improvements are made through a position correction and velocity analysis.
I Introduction
Sensor networks are systems made of many small and simple sensors deployed over an area in an attempt to sense events of interest within that particular area. In general, the sensors have limited capacities in terms of say range, precision, etc. The ultimate information level for a sensor is a binary one, referring to its output. However, it is important to make a distinction according to the nature of this binary information. Actually, it can be related to a information (nondetection or detection) or to relative motion information. For example, if the sensors are getting sound levels, instead of using the real sound level (which may cause confusion between loud near objects and quieter close objects), the sensor may simply report whether the Doppler frequency is suddenly changing, which can be easily translated in whether the target is getting closer or moving away. Moreover, lowpower sensors with limited computation and communication capabilities can only perform binary detection. We could also cite video sensors, with the intuitive reasoning: the target is getting closer if its size is increasing. The need to use that kind of sensor networks leads to the development of a model for target tracking in binary sensor networks.
We consider a sensor network, made with sensors (e.g. video),with (known) positions. Each sensor can only gives us a binary information [2], i.e. whether the targetsensor distance is decreasing () or increasing (). This ”choice” can result from severe communication requirements or from the difficulties from fusing inhomogeneous data. Even if many important works deal with proximity sensors [7], [6], we decide here to focus on the binary information [2]. Here, the aim is to estimate the parameters defining the target trajectory. Even if our methods can be rather easily extended to more complex models of target motion, we decide to focus here on a constant velocity movement. Actually, this framework is sufficiently general to present the main problems we have to face, as well as the foundations of the methods we have to develop for dealing with these binary data. See fig. 1 for an example.
In a first time, the observability requirements are considered. Then, we turn toward the development of specific estimation methods. Especially, the new concept of the velocity plane is introduced as an exhaustive representation of the spatiotemporal sequence of binary data. It is then used both in a separationoriented framework (SVM) and in a projection pursuit regression (PPR) one. The corresponding methods are carefully presented and analyzed.
In the following part we release the assumption of (piecewise) constant velocity motion, and we try to follow both position and velocity in real time. In particular, it is shown that it is the trajectory ”diversity” which renders this possible.
Obviously, tracking a diffusive Markovian target widely differs from the (batch) estimation of deterministic parameters. However, both problems present strong similarities. Indeed, the geometrical properties remains the same at each instant. Once the target motion model has been introduced, the most important properties we used to perform the tracking are presented. Then, the method which allows us to perform adapted corrections for tracking the target is presented. It is the main contribution of this part of the paper.
Simulation results illustrate the behavior of the estimators, as well as the performances of the tracking algorithm. We conclude on further works about the tracking in binary sensor networks.
Ii Binary Sensor Network Observability Properties
Let us denote a sensor whose position is represented by the the vector Similarly, the vector represents the position vector of the target at the timeperiod . Let us denote the (timevarying) distance from sensor to the target at time . Then, we have that:
(1) 
where is the instantaneous target velocity. We thus have the following lemma.
Lemma 1.
Let (resp. ) a sensor whose the target distance is decreasing (resp. increasing) at the timeperiod , then we have:
(2) 
If we restrict to binary motion information, we consider that the output of a sensor (at time ) is or according to the distance is decreasing or increasing, so that we have:
(3) 
Let us denote the subset of sensor whose output is and the subset of sensors whose output is , i.e. and and and their convex hulls, then we have [2]:
Proposition 1.
and .
Proof: The proof is quite simple is reproduced here only for the sake of completeness. First assume that , this means that there exists an element of , lying in . Let be this element (and its associated position), then we have ():
(4) 
Thus a contradiction which shows that . For the second part, we have simply to assume that ( ), which yields:
(5) 
which is clearly a contradiction, idem if .
So, and being two disjoint convex subsets, we know that there exists an hyperplane (here a line) separating them. Then, let be a generic sensor, we can write , so that:
(6) 
This means that the line spanned by the vector separates and . Without considering the translation and considering again the basis , we have :
(7) 
Thus in the basis , the line passing by the point and whose direction is given by is separating and . We have now to turn toward the indistinguishability conditions for two trajectories. Two trajectories are said indistinguishable if they induce the same outputs from the sensor network. We have then the following property [2].
Proposition 2.
Assume that the sensor network is dense, then two target trajectories (say and ) are indistinguishable iff the following conditions hold true:
(8) 
Proof: First, we shall consider the implications of the indistinguishability. Actually, the two trajectories are indistinguishable iff the following condition holds:
(9) 
We then choose (i.e. and both belongs to the line separating and ) and consider the following decomposition of the vector:
so that we have:
(10) 
Now, it is always possible to choose a scalar of the same sign than . So, we conclude that the scalar is necessarily equal to zero. Thus , if the trajectories and are indistinguishable we have necessarily:
Furthermore, the scalar is necessarily positive (see eq. 9). Then, the lemma 1 inequalities yield:
(11) 
Choosing once again , we deduce from eq. 11 the second part of prop. 2, i.e. . Considering now the distance between the two indistinguishable trajectories, we have () :
(12) 
so that we have .
Reciprocally, assume that the two conditions and hold true , are the two trajectories then indistinguishable? It is sufficient to remark that:
(13) 
Since the scalar is positive this ends the proof.
Let us now consider the practical applications of the above general results.
Rectilinear and uniform motion
legbyleg trajectory
Consider now a legbyleg trajectory modeling. For a leg one, we have for two indistinguishable trajectories:
(15) 
where is the velocity of the trajectory on the th leg and is the epoch of maneuver. Furthermore, we can assume that . Considering the implications of prop. 2 both for and for , we know that if the trajectories are indistinguishable we must have:
(16) 
So, our objective is now to prove that we have also . Considering prop. 2, we thus have the following system of equations :
(17) 
Now, on the st leg we have also (see prop. 2 for ), so that eqs 17a,b yield:
(18) 
This means that and are both orthogonal to the same vector (), so they are collinear, and we straightforwardly deduce from eq. 18 that . Finally, it has thus been proved that and this reasoning can be extended to any leg number. The observability requirements having been considered, we turn now toward the development of the algorithmic approaches. Let us first introduce the following functional.
Iii The stairwise functional
Our fist aim is to estimate the target velocity, within a batch processing framework. We assume that binary ( sensors are uniformly distributed on the field of interest (see fig. 2).
Each sensor will be coupled with a counter, that will be increased by a unity each timeperiod the sensor gives us a , an will keep its value each time the sensor gives us a . Then, at the end of the trajectory, each sensor has a entire value representing the number of periods the target was approaching. Within a given batch, the outputs of the sensor counters can be represented by a stairwise functional (see fig. 3).
Then, once this stair is built, we can define what we call the velocity plane. This plane is the tangent plane of the stairwise functional, which means that its direction gives the direction of the stair, while its angle gives the slope. The direction of the plane gives us the target heading, while the target speed is given by:
(19) 
Thus, estimating the velocity is equivalent to estimating the velocity plane parameters. Mathematical justifications are then presented. The target moves with a constant velocity . Considering the results of section V, its starting position is given by the following equation:
(20) 
This means that at each time period , the possible positions define a (moving) straight line, whose direction is . Let us consider now the scalar product , then we have:
(21) 
This is clearly constant, which means that the surface is a plane. The conclusion follows: the stairwise plane is an exhaustive information for the velocity vector. We provide in the next section two solutions to estimate the velocity plane from the observed data, and give some asymptotic results about the estimation.
Iv Statistical Methods to Estimate the Velocity Plane
We showed that estimating the velocity plane allows us to estimate the velocity vector. Wile there exists several methods to do that, we shall focus on two of them.
Iva The Support Vector Machine (SVM) approach [3]
As seen previously, the problem we have to face is to optimally separate the two classes of sensors (i.e. the and ). So, we can use the general framework of SVM, widely used in the classification context. The set of labeled patterns ( and sensor positions) is said to be linearly separable if there exists a vector and a scalar such that the following inequalities hold true:
(22) 
Let (: normal vector) be this optimal separation plane. and define the margin () as the distance of the closest point to , then it is easily seen that . Thus, maximizing the margin lead to consider the following problem:
(23) 
Denoting the vector of Lagrange multipliers, dualization of eq. 23 leads to consider again a quadratic problem, but with more explicit constraints [3], i.e. :
(24) 
where is a vector made of and is the dimensional vector of labels, and is the Gram matrix:
(25) 
The dualized problem can be efficiently solved by classical quadratic programming methods. The lessperfect case consider the case when data cannot be separated without errors and lead to replace the constraints of eq. 23 by the following ones:
(26) 
Consider now a multiperiod extension of the previous analysis. Let us restrict first to a twoperiod analysis, we shall consider two separating hyperplanes (say ) defined by:
(27) 
It is also assumed that these two separating planes are associated with time periods and , known. It is easily seen that the margin for the separating plane is , while for the plane it is . Thus, the problem we have to solve reads:
(28) 
At a first glance, this problem appears as very complicated. But, without restricting generality, we can assume that . This means that . Making the changes and then leads to consider the classical problem:
(29) 
Let be the (unique) solution of eq. 29, then a straightforward calculation yields the distance between the two separating planes, i.e.:
Finally, we deduce that the estimated velocity vector is given by:
(30) 
The previous analysis can be easily extended to an arbitrary number of periods, as long as the target trajectory remains rectilinear. Another definite advantage is that it can be easily extended to multitarget tracking.
IvA1 3dSvm
We can also mix the SVM ideas with that of section III. Indeed, instead of focusing on a 2D dataset, we can consider a 3dimensional dataset (sensor coordinates and values of the sensor counters). The second 3D dataset is the same, but the value of the counter is increased with unity. So, the separation plane is 2D, and will be as closed to the velocity plane as the sensor number can allow. See fig. 4 for a more explicit understanding.
The results of the SVM estimation of the velocity plane are discussed in the Simulation Results section.
IvB Projection Pursuit Regression
The projection pursuit methods have first been introduced by Friedman and Tuckey [4]. Then, they have been developed for regression with the projection pursuit regression (PPR) by Friedman and Stuetzle [5]. PPR is mainly a nonparametric method to estimate a regression, with however a certain particularity. Indeed, instead of estimating a function such as , where and are known, and assuming to follow a certain law, PPR estimates g such as . The first step of the algorithm is to estimate the direction , and then . In our specific case, will represent the direction of the target, and will give us the value of the velocity.
IvB1 Modeling
Let be the value of the th sensor counter. are the sensor coordinates. If is the value of the counter i at the end of the track, and the probability to have the right decision, we then have (: binomial):
(31) 
Assuming in a first time that , the two parameters we would like to estimate are the parameter and the function.
IvB2 The PPR method in the network context
We have some additional constraints on . First of all, it only takes integer values. Then, it is an increasing function (because ). The optimization problem we have to solve is the following:
(32) 
where is calculated in a quite special way. First, we define a non parametric estimation of a function f, via:
(33) 
Then, we sort into a vector from the smallest to the biggest. After which we define via:
(34) 
Sometimes, due to the integer value of the estimated function, we have to deal with many possible values of . Then, in this case, we choose the mean value of . Due to the specific behavior of our target and our modeling, we know in addition that the general form of n (say ) is given by:
(35) 
The next step is then to estimate . Such an estimation is given by the following optimization program:
(36) 
IvB3 Convergence
We will study if the estimation is good with an infinite number of sensors. Assuming we have an infinite number of sensors in a closed space, this means that each point of the space gives us an information . We then will have the exact parameters of the stairwise functional. To that aim, we will show in the following paragraph that the probability of having a sensor arbitrary close to the limits of each stair steps is . We assume that the sensor positions are randomly distributed, following an uniform law. Then, being fixed:
(37) 
If the velocity vector is denoted with , then:
(38) 
where only depends on and , which means that they are deterministic, and independent from . It is quite obvious that represents the smaller limit of a step, when represents its higher limit. Then, considering the velocity plane, and both belong to the plane. Denote , then:
where we note . We know that:
(40) 
Then, we have the following probability calculations:
Given the above equation, is smaller than one, which means that converges to as increases to infinity. Thus, we have finally:
(41) 
ending the proof.
V Nonlinear trajectory estimation
Va Target Motion Model
The target is assumed to evolve with a Markov motion, given by:
(42) 
for where is a gaussian distribution with mean and variance . The starting position is assumed to be unknown.
VB Sensor Measurement Model and Analysis
At each time period, each sensor gives us a information, meaning that the target is getting closer or moving away. Given all the sensors reports at the timeperiod , we can easily define a space where the target is assumed to be at this timeperiod. This is the fundamental uncertainty we have at , and the area of this domain is, of course, directly related to the network parameters (sensor number, network geometry, etc.).
VC Velocity Estimation
We can estimate the direction of the target based on the simple information given by the sensors. Obviously, that estimator will only be precise if the number of sensors is significantly great. To perform that estimation, we can use several methods, such as the Projection Pursuit Regression Method, or the Support Vector Machine Method. The SVM method chosen for our algorithm as a most common method, and is presented in the next paragraphs.
VC1 The effect of target acceleration
To illustrate the effect of velocity change for estimating the target position, let us consider a very simple example. Assume that the target motion is uniformly accelerated, i.e. :
(43) 
We have now to deal with the following question: Is the target trajectory fully observable? To that aim, we first recall the following result. Considering a dense binary network, two target trajectories are said indistinguishable iff they provide the same (binary) information which is equivalent to the following conditions:
(44) 
Expliciting the second condition of eq 44, with the target motion model 43, we obtain that the following condition holds ():
(45) 
Thus, is a zero polynomial, which means that all its coefficients are zero. For the coefficients we obtain the condition . Similarly with the , we obtain . Subtracting these two equalities yield , or .
Quite similarly, we obtain the equality and the last equality:
(46) 
Assuming that the couple spans the sensor space then we deduce that . So, it has been shown that it was the target acceleration which render the problem fully observable. This reasoning can be extended to a wide variety of target modeling.
VD Tracking algorithm
The main issue with the SVM estimation is that it only provides us the general direction of the target within a deterministic framework. Moreover, it is highly desirable to develop a reliable algorithm for target tracking (velocity and position). To solve this problem, we build a twostep algorithm. In the first step, we perform a correction through the estimated unitary velocity vector at each timeperiod , called . Then, in a second time, we perform a correction through the orthogonalestimated (unitary) velocity vector, also at each timeperiod, called . These two corrections give us a better estimation of both the velocity and the position of the target. We refer to fig. 5 for the presentation of the rationale of the two correction factors.
VD1 The factor
To build that correction factor, we started with a very simple assumption. At each period , the sensors provide binary motion information. Thanks to the first part of this article, we know that the target is in the (special) set lying between the two samesignsensors set. Then, starting from the previous estimated position of the target, we move the estimated target through the estimated velocity vector direction until it stands in that special set. We now define this operator in a mathematical way:
Let the estimated normalized velocity vector at time .
Moreover, let (respectively ) the coordinates of the sensors () giving a (respectively a ) at time .
We sort (respectively ). Then, following a very simple geometrical reasoning, we note that should be between and . To ensure that property, we define the following correction factor:
(47) 
To calculate this factor, we consider the projection equality:
(48) 
which means that the projection of the corrected value is equal to the mean value of the projection. Geometrically, this means that the position of the target is estimated to be in the center of the special set defined by the sensors. The value of the correction factor (see eq. 47) is then straightforwardly deduced from eq. 48. Similarly, the target position is updated via:
(49) 
Here the correction factor has been calculated via the average value of the projection. This is an arbitrary choice and we can consider the lower or the upper bound of the projection with no significant difference on the results of the algorithm.
Obviously, if the estimation of the position is not very good, the estimated velocity value (clearly based on ) will be quite different from the real value of the velocity. The next correction factor is based on the assumption that the target velocity changes are upper and lower bounded.
VD2 The correction factor
We assume that the velocity of the target has bounded acceleration. Then, if the velocity estimated at a certain time is too different from the velocity estimated at time , this means that the estimated position of the target is far from the right one. Then, in that precise case, we consider an orthogonal correction, through .
For that deterministic algorithm we decided to perform a very simple modeling of the velocity. Indeed, we take as a right value for the velocity the simple mean of the previous values of the estimated velocity (). We calculate in addition the variance (), and the factor can be nonzero iff the estimated value of the velocity at time is not in the interval given by . We then look for such that:
(50) 
The previous equation needs some explanation. Given that is the estimated target position at time , we would like to correct the value to be closer to the right position. The only way we can deal with it, is to correct the estimated value of the velocity. is the previous calculated correction. If the difference between that estimation and the value is too important, we try to reduce that difference with a translation of the positions at time periods and . As we want the positions to stay in the special set defined by the sensors, the direction of that translation is given by for the position at time , and for the position at time .
Performing straightforward calculation, leads to consider the following correction factor:
(51) 
Obviously, as we could expect when presenting the method, if the target motion is rectilinear and uniform , no correction factor can be calculated. Then, the final estimated position is given by:
(52) 
VD3 The final correction step
Noticeably the most important step of the algorithm, i.e. the correction factor, is based on the estimation of the velocity change. Indeed, the best the estimation of the velocity is, the best we can estimate the position. Then, our aim is to perform a better analysis of the target motion. Considering that from time to time, the estimation of the position increases in quality, a promising way should be to perform a feedback of the newest corrector to the oldest position estimation. We denote the updated estimated position of the target at time . Then, according to the previous paragraph, the estimated position is updated via:
(53) 
With this new estimator we will be able to perform a better analysis of the target motion (position and velocity).
VD4 The final algorithm
With the definition of the correction factors, the theoretical part of the algorithm is finished. Then, it is presented as follows, at time period :

Get the binary information of each sensor, and then the target position set.

Estimate the velocity direction at time via a SVM method

Perform the calculation, and add that correction to the estimated velocity at time . The timeposition is then updated.

Check if the estimated velocity at time is too different from the modeled value, and in this case, calculate .

Update the position at time , and in this case, the velocity at time with the correction .
Step 2 and 3 can be inverted with no damage in the process.
This is the main part of the algorithm. However, there is no mention in that enumeration of the initialization. There are two main state vectors that have to be initialized. The position and the velocity. The position is assumed to be unknown, but thanks to the sensors, we can have a space where the target is assumed to be at first. We use here a uniform law for the initialization, given that we have no further information about where the target can start.
The initialization of the velocity is not far from that solution. Indeed, with the binary information, we can provide a convenient estimate of the velocity direction. Even if we don’t have a precise idea of the speed value, we can then start the algorithm.
Vi Simulation Results
Via Constant Velocity movement
We shall now investigate the previous developments via simulations. The first figure (fig.6) will show the stair built by the previously explained method (: fixed). The position of the sensors are considered random, following a uniform law on the surveillance set.
To evaluate the performance of our methods, we decided to calculate the mean square error of the two estimated parameters, which are the velocity value and the velocity direction. Fig. 7 shows the two MSEs values for both direction and velocity values, assuming the sensor number is growing from to , and the velocity vector is the vector ().
Providing 2000 simulations, the MSEs seems to be unstable. However, the two parameter estimation methods leads to a very different conclusion. In the case of the direction estimation, the PPR method works highly better than the SVM method, and seems quite stable as the sensor number grows. On the other side, the SVM method is more erratic.One possible explanation is that the PPR method has been first developed for the particular case of direction estimation, while the SVM method is more focused on the margins maximization, which means in our case a simultaneous estimation of both parameters.
The conclusions we can make on the velocity value estimation are rather opposite. The MSE becomes reasonable only for the SVM method, and for a number of sensors up to 60. Indeed, we have a error on a velocity value estimation for a theoretical value of . As erratic as the SVM’s MSE was in the direction estimation, it was however less erratic than the result we have for the PPR value.
One answer to the MSE erratic value for the PPR could be to find a best way to estimate the velocity value. Indeed, in our case, we choose for estimating functional a sum of indicators functions. However, it is not clear that this optimization gives a single minimum solution. There could be a finest functional that could lead to a most robust optimization solution, and this would be the subject of future works.
ViB Random walk
We will present in that section the results of the tracking algorithm. We consider here that the target starts from the position and that its initial velocity vector is the vector. The number of sensors is equal to , in a quite wide space (300mx300m). The variance of the target motion is not very important, and the tracking duration is seconds.
One simulation is presented in figure 8. In red is represented the real target trajectory, quite diffusive, and in green the estimated successive positions. The initialization is not very bad because the number of sensors is quite important, which means the uniform set is not too large. After the first step, the estimation seems to hang the real trajectory, and follows the target well (less than meter error). However, when the target turns right, we loose some precision, mainly because the correction factors seemed to be “lost”. The reason for that behavior is that the SVM method provides us a bad estimation of the velocity vector. Then, the algorithm provides a correction in a bad direction, which moves away from the real trajectory. During a few seconds, the estimation works quite bad, before hanging again the target direction, and then performing a quite good estimation of the velocity. Unfortunately, there is no evidence in that example that increasing indefinitely the tracking duration results in an estimated position closer and closer to the real target position.
This is precisely the aim of the two next figures in 9. The first one shows the mean square error of the estimated position of the target through the trajectory. The total time is seconds, and we can see an amazing and remarkable decrease of that MSE in the first seconds. It seems however that there is a limit to that decrease. Indeed, the MSE will not converge to a zero value, even if we could perform a longtime tracking. Clearly, the limitation is due to the binary information at first, and certainly to the number of sensors in a second time. Some further work could certainly exhibits a strong link between the number of sensors and the MSE of the position.
In the same way, the velocity estimation has some acceptable MSE through the tracking process. Despite the clearly strong decrease at the beginning, the curve then stands to an acceptable but non zero value. The effect is more obvious than in the position case, surely because of the velocity modelling we make in the algorithm, which forces the velocity estimation to very bad evolution. A clue could be to perform a most sophisticated modelling of the velocity, but given the binary information, this won’t be easy. This is another work in progress for the evolution of our algorithm.
Vii Conclusion
Viia Cvm
In this paper, we chose to focus on the use of the at the level of information processing for a sensor network. Though this information is rather poor, it has been shown that it can provide very interesting results about the target velocity estimation. The theoretical aspects of our methods have been thoroughly investigated, and it has been shown that the PPR method leads to the right velocity plane if the number of sensors increase to infinity. The feasibility of the new concept (”velocity plane”) for estimating the target trajectory parameters has been put in evidence. The proposed methods seem to be sufficiently general and versatile to explore numerous extensions like: target tracking and dealing with multiple targets within the same binary context.
ViiB Random walk
A new method for tracking both position and velocity of a moving target via binary data has been developed. Though the instantaneous data are poorly informative, our algorithm takes benefit of the network extent and density via specific spatiotemporal analysis. This is remarkable since the assumptions we made about target motion are not restrictive. Noticeably also, our algorithm is quite fast and reliable.
Furthermore, it is clear that performance can be greatly improved if we can consider that the acquisition frequency is (far) greater than the maneuver frequency. In particular, we can mix the present method with the one we developed in [1].
However, some important questions remain. The first one concerns the velocity modeling. We focused on this paper on the adaptability of the different correction factors, but we didn’t pay much attention to that modeling, which can definitely improve the estimation quality. Moreover, our tracking algorithm is basically deterministic even if the target motion modeling is basically probabilistic.
Thus, it should be worth to calculate the first correction factor () via a likelihood, such that does not always stays in the mean of the special set. Moreover, that likelihood should be related to all the sources of sensor uncertainty. In addition, the present algorithm gives a slow response to sudden target maneuver. A remedy should be to incorporate a stochastic modeling of such event in our algorithm.
The second correction factor () may also be improved via a stochastic approach. Instead of considering a correction only related to the estimated velocity estimated, we could immerse this correction within a stochastic framework involving both and . These observations are part of our next work on that very constrained but also quite exciting tracking framework. The last important point is multiple target tracking. Even if our work in this area is quite preliminary, it is our strong belief that our spatiotemporal separation based algorithm should be the natural way to overcome the association problems.
References
 [1] A. Ickowicz, J.P. Le Cadre, A new method for target trajectory estimation within a binary sensor network. Proc. of the 10th European Conference on Computer Vision: Multicamera and Multimodal Sensor Fusion Algorithms and Applications Workshop, Oct 2008.
 [2] J. Aslam, Z. Butler, F. Constantin, V. Crespi, G. Cybenko, D. Rus, Tracking a moving object with a binary sensor network. Proc. of the 1st international Conference on Embedded Networked Sensor Systems, Nov 2005, pp. 150–161.
 [3] C. Cortes, V. Vapnik, SupportVector Networks. Machine Learning, 20, 1995, pp. 273–297.
 [4] J.H. Friedman and J. H. Tuckey, A Projection Pursuit Algorithm for Exploratory Data Analysis. IEEE Trans. Comput. 23, 1974, pp. 881–889.
 [5] J. H. Friedman and W. Stuetzle, Projection Pursuit Regression. J. Amer. Stat. Soc., 76, 1981, pp. 817–823.
 [6] L. Lazos, R. Poovendran and J.A. Ritcey , Probabilistic Detection of Mobile Targets in Heterogeneous Sensor Networks. Proc. of the 6th IPSN, Apr. 2007.
 [7] X. Wang and B. Moran , Multitarget Tracking Using Virtual Measurements of Binary Sensor Networks. Proc. of the 9th Int. Conf. on Information Fusion, Jul. 2006.