cs 6170: computational topology, spring 2019 lecture 04

17
CS 6170: Computational Topology, Spring 2019 Lecture 04 Topological Data Analysis for Data Scientists Dr. Bei Wang School of Computing Scientific Computing and Imaging Institute (SCI) University of Utah www.sci.utah.edu/ ~ beiwang [email protected] Jan 17, 2019

Upload: others

Post on 21-Apr-2022

3 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CS 6170: Computational Topology, Spring 2019 Lecture 04

CS 6170: Computational Topology, Spring 2019Lecture 04

Topological Data Analysis for Data Scientists

Dr. Bei Wang

School of ComputingScientific Computing and Imaging Institute (SCI)

University of Utahwww.sci.utah.edu/~beiwang

[email protected]

Jan 17, 2019

Page 2: CS 6170: Computational Topology, Spring 2019 Lecture 04

Union-Find (Disjoint Set Data Structure)

Book Chapter A.I.

Page 3: CS 6170: Computational Topology, Spring 2019 Lecture 04

Union and find for large network connectivity

Union command: connect two objects

Find query: used to decide if there is a path connecting two objects.

https://www.cs.princeton.edu/~rs/AlgsDS07/01UnionFind.pdf

Page 4: CS 6170: Computational Topology, Spring 2019 Lecture 04

Store a tree in a linear array

Store two trees in a single linear array using arbitrary ordering of the nodes.

Edelsbrunner and Harer (2010)[Page 7]

Page 5: CS 6170: Computational Topology, Spring 2019 Lecture 04

Store a tree in a linear array: quiz

Can you recover three trees (disjoint sets) from the following linear array?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

https://www2.cs.duke.edu/courses/fall06/cps296.1/Lectures/sec-I-1.pdf

Page 6: CS 6170: Computational Topology, Spring 2019 Lecture 04

MakeSet

https://en.wikipedia.org/wiki/Disjoint-set_data_structure

Page 7: CS 6170: Computational Topology, Spring 2019 Lecture 04

Find

Edelsbrunner and Harer (2010)[Page 7]

Page 8: CS 6170: Computational Topology, Spring 2019 Lecture 04

Find

Exercise: Find(9) = ?

Edelsbrunner and Harer (2010)[Page 7]

Page 9: CS 6170: Computational Topology, Spring 2019 Lecture 04

Find via path compression

Edelsbrunner and Harer (2010)[Page 8]

Page 10: CS 6170: Computational Topology, Spring 2019 Lecture 04

Union and Union by size

Edelsbrunner and Harer (2010)[Page 8]

Page 11: CS 6170: Computational Topology, Spring 2019 Lecture 04

Union by size

Exercise: Union(8, 4) = ?

https://en.wikipedia.org/wiki/Disjoint-set_data_structure

Page 12: CS 6170: Computational Topology, Spring 2019 Lecture 04

Simplicial Complexes

Book Chapter A.III

Page 13: CS 6170: Computational Topology, Spring 2019 Lecture 04

Simplex

0-simplex is a vertex, 1-simplex is an edge, 2-simplex is a triangle, 3-simplex isa tetrahedron, a 4-simplex is a 5-cell....

Page 14: CS 6170: Computational Topology, Spring 2019 Lecture 04

Simplices

Definition (Simplex)

A k-simplex is the convex hull of k + 1 affinity independent points,σ = conv{u0, u1, ..., uk}.

Let u0, u1, ..., uk ∈ Rd

A point x =∑k

I=0 λiui is an affine combination of the ui if the λi ∈ Rsum to 1. It is a convex combination if all λi ≥ 0.

The k + 1 points are affinely independent iff the k-vectors ui − u0 arelinearly independent (for 1 ≤ i ≤ k).

A convex hull is the smallest convex set that contains the points.

A convex hull is the set of convex combinations.

Page 15: CS 6170: Computational Topology, Spring 2019 Lecture 04

Simplicial complexes

A face τ of σ is the convex hull of a non-empty subset of the ui,denoted as, τ ≤ σ.

σ is the coface of τ .

A face is proper, i.e., τ < σ, if the subset is not the entire set.

Definition (Simplicial Complex)

A simplicial complex is a finite collection of simplicies K such thatσ ∈ K and τ ≤ σ implies τ ∈ K, and σ, σ0 ∈ K implies σ ∩ σ0 iseither empty or a face of both.

Page 16: CS 6170: Computational Topology, Spring 2019 Lecture 04

Cech complexes and Vietoris-Rips complexes

Book Chapter A.III

Demo:

http://www.sci.utah.edu/~tsodergren/prob_net_vis_working/

Page 17: CS 6170: Computational Topology, Spring 2019 Lecture 04

References I

Edelsbrunner, H. and Harer, J. (2010). Computational Topology: AnIntroduction. American Mathematical Society, Providence, RI, USA.