EDM Algorithms

Simplex : Nearest Neighbor Projection

Simplex is a nearest neighbor projection. It locates the knn nearest neighbors to the query point (location in the state-space from which a prediction is desired) within the library state-space. knn is typically set to E+1, where E is the system dimension. These knn points define an E+1 dimensional simplex in the state-space.

The prediction is computed as the average of the weighted state-space simplex projected Tp points ahead. Each neighbor is weighted proportional to their distance to the query point as described in Sugihara and May 1990.

Simplex is the most direct projection technique in the EDM package, operates with minimal assumptions, and is the core algorithm for the evaluation of embedding dimension EmbedDimension(), evaluation of temporal forecast predictability PredictInterval(), convergent cross mapping CCM(), and multiview embedding Multiview().

Video of Simplex prediction at varying library sizes

This video illustrates how denser state space representations with increasing number of library vectors improves Simplex prediction.


S-Map : Sequential Locally Weighted Global Linear Maps

S-Map extends the state-space prediction in Simplex from an average of the E+1 knn neighbors, to a linear regression fit to all neighbors, but localized with an exponential decay kernel as described in Sugihara 1994. The exponential localization function is F(θ) = exp(-θd/D), where d is the neighbor distance, D the mean distance and θ the localization parameter. This kernel weights neighbors close to the query point (neighbors in similar dynamical states) with higher weight than those further from it such that a local linear approximation to the nonlinear system can be reasonable. This localization ability allows one to identify an optimal local scale that best represents local dynamics. As a result, assessing predictability over a spectrum of localization parameters θ allows one to infer state-dependence, and thus nonlinearity of the dynamics. See PredictNonlinear().

Video of S-Map prediction at varying theta

This video illustrates S-Map predictions with increasing values (higher localization) of theta.


For a first-principles exploration of S-Map state-space localization, see the S-Map Notebook.

S-Map Interaction Coefficients

Another feature of S-Map is that for a properly fit model, the regression coefficients between variables have been shown to approximate the gradient (directional derivative) of variables along the manifold (Deyle et al. 2016). These Jacobians represent the time-varying interaction strengths between system variables.

CCM : Convergent Cross Mapping

One of the corollaries to the Generalized Takens Theorem is that it should be possible to cross predict or cross map between variables that are observed from the same system. Suppose that in some dynamical system involving variables X and Y, X causes Y. Since X and Y belong to the same dynamical system, their reconstructions (via embeddings) Mx, and My, also map to the same system.

The causal variable X leaves a signature on the affected variable Y, and consequently, the reconstructed states based on Y can be used to cross predict the values of X. CCM leverages this property to infer causality by predicting X using My's library of points (or vice versa for the other direction of causality), while assessing improvements in cross map predictability as larger and larger random samplings of My are used. If the prediction skill of X increases and saturates as the entire My is used, this provides evidence that X is casually influencing Y as described in Sugihara et al. 2012.