False nearest neighbors (FNN)
Compute false nearest neighbours to find the proper embedding dimension for phase space reconstruction
The false nearest neigbours procedure is a method to obtain the optimum embedding
dimension for phase space reconstruction.
By checking the neighbourhood of points embedded in projection manifolds of increasing dimension, the algorithm eliminates 'false neighbours': This means that points apparently lying close together due to projection are separated in higher embedding dimensions.
A natural criterion for catching embedding errors is that the increase
in distance between two neighboured points is large when going from
dimension d to d+1. We state this criterion by designating as a
false nearest neighbour any neighbour for which the following is valid:
Here t and are the times corresponding to the neighbour and
the reference point, respectively.
denotes the distance in phase space with embedding dimension
d, and is the tolerance threshold.
However, this criterion by itself is not sufficient for determining a
proper embedding dimension. A problem turns out if a point is a
nearest neighbour of another without necessarily being close to it.
Therefore the number of false nearest neighbours will again
increase at higher dimensions. To handle this problem, a further criterion
is implemented: the loneliness criterion. It is represented by the
loneliness tolerance threshold.
The output produced by the function is the percentual amount of FNN
versus increasing embedding dimension and has a monotonic decreasing graph.
The optimum embedding dimension usually can be found near the crossing of
the 30 % threshold.
Parameters of "False nearest neighbors (FNN)" are:
- delay of coordinates tau (number of samples), needed for phase space reconstruction
- maximum embedding dimension m : The percentage of false nearest neighbours will be computed from embedding dimension 1 up to this maximum embedding dimension
- distance tolerance rtol - This is a threshold for the embedding
criterion (see above). The choice of rtol 10 will usually identify the FNN clearly. Very high values of rtol will result in an underestimation of the number of FNN. Very low values for rtol will identify too many false nearest neighbours, in particular when the points on the attractor become sparse
- loneliness tolerance atol - This is a threshold for the second
criterion (see above). A choice of atol 2 will be good in most
cases. Very high or low values of atol have the same effects as
described above for rtol
Note that since this function operates on a 'pure' time series, the scale and the shift of the given signal do not affect the result.
The detected number of FNN is increased in case of a noisy signal.
This fact should be taken into account when using the FNN algorithm.
y = FNN(x,tau,m,rtol,atol);
int tau, m;
float rtol, atol;
Mutual information, Correlation integral,
Correlation dimension, Recurrence plot.
Kennel et al. , Liebert et al.