Nonlinear Time Series Analysis and Manifold Learning

Course Aim

The purpose of this course is to acquire the ability to analyze complex systems where the system is dynamic and therefore the natural observations of the system will be mainly time series. In the course we will learn how many unobserved variables we can infer, what the timescale of interaction is, whether they are causally related, and generate models that allow prediction of future behavior to have a fuller understanding of the studied system. The students will learn different techniques of empirical dynamic modeling (EDM) and how to apply these correctly.

Course Description

Over the last 50 years or so nonlinear dynamics and chaos has revolutionized our understanding of the complexity of the natural world. However, the vast majority of this understanding, has come from the study of toy models that captured the flavor of real problems but were not models of real systems. As such dynamical systems theory has become more an area of mathematics than natural experimental science. Much of this is because experiments were difficult to perform and we lived in a data limited world. Now with the advent of big data and increases in computing performance in the 3rd decade of the 21st century we are no longer data-limited and can take full advantage of the theory of dynamical systems for the analysis of observed data. This data science course is focused on the analysis of dynamical systems, mostly from nonlinear time series, to find hidden properties and causal relationships in complex systems. The course teaches the students what can practically be done using the intellectual framework of chaos theory and dynamical systems using a data driven approach to maximally extract information from time series and their mathematical properties hidden in the geometry of their embeddings.

Course Contents

week Topic Module exercises
1 Introduction to time series & prediction Autocorrelation; Prediction horizons; Linear models; Correlation/synchrony Exercises: Python/R Plotting of time series and their basic statistical properties
2 Takens theorem & Embeddings Simplex algorithm Exercises: Embedding dimension and time constant search
3 Non-linearity & noise S-MAP algorithm Exercises: S-MAP exercises
4 Denoising time series Hilbert-Huang transform, Fourier transform, Kalman filter Exercises: Hilbert-Huang transform, Fourier transform, Kalman filter
5 Causal inference Convergent crossmapping (CCM) Exercises: Convergent crossmapping
6 Scaling up and multivariate models CCM and multivariate models Exercises: BLOCK_LNLP & multivariate simplex
7 Dimensionality reduction PCA, UMAP, t-SNE, MDS, Isomap, PHATE, CC
8 Early warning signs of critical transitions and anomaly detection in streaming data
9 Student presentations
From the student presentation we will select the most promising dataset to analyze and work on a group project that should produce publishable data that will be jointly authored by the entire class.
10 - 12 Group project


Student will present a proposed data set and perform the analyses and present in class

Prerequisites or Prior Knowledge

Python and/or R programming, linear algebra, B49 Dynamical systems


Analysis of Observed Chaotic Data, Henry DI Abarbanel; Springer
Nonlinear Time Series Analysis, Holger Kantz & Thomas Schreiber; Cambridge


Alternate years course: AY2023

Research Specialties