kEDM
kEDM (Kokkos-EDM) is a high-performance implementation of the Empirical
Dynamical Modeling (EDM)
framework. The goal of kEDM is to provide an optimized and parallelized
implementation of EDM algorithms for high-end CPUs and GPUs, while ensuring
compatibility with the original reference implementation
(cppEDM).
Following EDM algorithms are currently implemented in kEDM:
- Simplex projection [1]
- Sequential Locally Weighted Global Linear Maps (S-Map) [2]
- Convergent Cross Mapping (CCM) [3]
Installation
CPU (Linux and macOS)
pip3 install kedm
NVIDIA GPU (CUDA 11.2 or later)
pip3 install kedm-11x
NVIDIA GPU (CUDA 12.0 or later)
pip3 install kedm-12x
Citing
Please cite the following papers if you find kEDM useful:
- Keichi Takahashi, Kohei Ichikawa, Joseph Park, Gerald M. Pao, “Scalable Empirical Dynamic Modeling
with Parallel Computing and Approximate k-NN Search,” IEEE Access, vol. 11, pp. 68171–68183,
Jun. 2023. 10.1109/ACCESS.2023.3289836
- Keichi Takahashi, Wassapon Watanakeesuntorn, Kohei Ichikawa, Joseph Park,
Ryousei Takano, Jason Haga, George Sugihara, Gerald M. Pao, "kEDM: A
Performance-portable Implementation of Empirical Dynamical Modeling," Practice
& Experience in Advanced Research Computing (PEARC 2021), Jul. 2021.
10.1145/3437359.3465571
References
- George Sugihara, Robert May, "Nonlinear forecasting as a way of
distinguishing chaos from measurement error in time series," Nature, vol.
344, pp. 734–741, 1990. 10.1038/344734a0
- George Sugihara, "Nonlinear forecasting for the classification of natural
time series. Philosophical Transactions," Physical Sciences and Engineering,
vol. 348, no. 1688, pp. 477–495, 1994.
10.1098/rsta.1994.0106
- George Sugihara, Robert May, Hao Ye, Chih-hao Hsieh, Ethan Deyle, Michael
Fogarty, Stephan Munch, "Detecting Causality in Complex Ecosystems,"
Science, vol. 338, pp. 496–500, 2012.
10.1126/science.1227079