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.