This repository contains the content for a minitutorial for the 2023 SIAM Conference on Applications of Dynamical Systems (DS23). If you're planning to attend the minitutorial, please see the instructions below for some setup that will help get us up and running faster.
- Part I Information: Mon May 15, 1:20-3:20PM
- Part II Information: Mon May 15 4:45-6:45PM
- Both sessions in Lloyd Center Ballroom - 1st Level
Contributors to this minitutorial are:
Persistent homology, the flagship method of topological data analysis (TDA), can be used to provide a quantitative summary of the shape of data. There is now extensive work using the following pipeline. Start with a realization of a dynamical system, perhaps after reconstruction from time series data. Treat this data as a discrete metric space, and construct a filtration of a simplicial complex that encodes information about the shape. Then, use persistent homology to determine when structures appear and disappear in this filtration, which can in turn be used as input to tools such as machine learning models.
This mini-tutorial will cover the basics of each piece of the aforementioned pipeline, as well as show more recently studied modifications that show a great deal of promise for future analysis of dynamical systems with TDA. This tutorial will be run using active learning, with participants coding examples in python in provided Jupyter notebooks, making extensive use of the open-source package teaspoon.
- Welcome Remarks and Introduction (5 minutes)
- Slides
- Presenter: Firas Khasawneh & Liz Munch
- Simplicial complexes & Homology (30 min)
- Slides
- Jupyter notebook
- Presenter: Liz Munch
- Persistent homology (30 min)
- Slides
- Jupyter notebook
- Presenter: Liz Munch
- Persistence Pipelines: Rips & Images (30 min)
- Slides
- Jupyter notebook
- Presenter: Firas Khasawneh
- Distances on persistence diagrams & Vectorization (10 min)
- Slides
- Presenter: Danielle Barnes
- Session 1 Wrap up (5 minutes)
- Slides
- Presenter: Firas Khasawneh & Liz Munch
- Welcome Remarks and Introduction (5 min)
- Slides
- Presenter: Firas Khasawneh & Liz Munch
- Embedding of Time series (40 min)
- Slides
- Jupyter notebook
- Presenter: Max Chumley
- Graph representations of time series (30 min)
- Slides
- Jupyter notebook
- Presenter: Max Chumley
- Crocker plots (20 min)
- Slides
- Jupyter notebook
- Presenter: Sunia Tanweer
- Identifying P-bifurcations in Stochastic Systems (10 min)
- Slides
- Jupyter notebook
- Presenter: Sunia Tanweer
- Session 2 Wrap up (5 min)
- Slides
- Presenter: Firas Khasawneh & Liz Munch
This minitutorial will be run in an active learning style. We will present basic introductions to the concepts followed by time to try out examples provided in the Jupyter notebooks in this GitHub repository. We highly recommend that you bring a laptop to the workshop. If at all possible, we also recommend following the below instructions in advance in case of issues. We will have two ways to access the content during the workshop itself:
- Locally installed on your machine. You will need to clone the repository and get the code installed in advance. Unfortunately we cannot provide much in the way of install help due to the size and nature of the workshop. So, if local install doesn't work, we have provided.....
- Remote servers where you will be able to access all the material during the workshop. Please note that these servers will only be active during the workshop itself.
Note that the remote version will require a GitHub account, so we recommend making one in advance in case of issues, even if planning to run the code locally.
To install teaspoon locally, please follow the directions provided in Getting Started. There are two system dependencies:
- cmake and
- boost for Unix or boost for Windows.
While we make every effort to ensure compatibility across operating systems, we cannot guarantee you will not encounter install issues.
In addition to teaspoon, RISE
and giotto-tda
are required for use of the slide decks and specific portions of the minitutorial. Once system dependencies are installed, to install the required python packages you should be able to run:
pip install teaspoon
pip install RISE
pip install giotto-tda
You will want to clone this repository to be of use in your local machine. We list two options below for cloning the repo.
The first option to clone the repository is via GitHub Desktop, which is available for Windows and macOS. After installing the app, go to File>Clone Repository, click the URL tab, and enter the repository's address. Choose where the local path for the repository, and hit Clone.
Assuming you already have ssh setup for GitHub (see here if you need additional directions) the repository can be cloned with the following command.
git clone git@github.com:TeaspoonTDA/2023-SIAM-DS-TDA-Minitutorial.git
To connect remotely, you will need to setup a GitHub account and then at the time of the workshop, connect to a remote server. Then all code and workbooks will be run directly via web browser.
Please follow the GitHub # instructions.
Note: These links and instructions will not be updated until the minitutorial begins.
To run your computations on a provided Jupyter Server, login by choosing one of the URL's below as instructed:
You must use the same URL to login for the full minitutorial since these are specific servers where your work will be located. At the end of the conference, you will also need to download your work as the servers will not be available after the conference ends.
We are grateful to the following agencies for their support of this project.
- The Air Force Office of Scientific Research under Award FA9550-22-1-0007.
- The National Science Foundation under awards CCF-2106578, CCF-1907591, and CCF-2142713.
- Michigan State University
- The Society for Industrial and Applied Mathematics