Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computing Persistent Homology

Similar presentations

Presentation on theme: "Computing Persistent Homology"— Presentation transcript:

1 Computing Persistent Homology
Afra Zomorodian and Gunnar Carlsson

2 Motivation Persistence complexes arise naturally whenever one is attempting to study topological invariants of a space computationally. Given a complex K, we are interested in it’s kth homology and it’s persistence. Computers are needed to handle high dimensional spaces. This presentation will demonstrate an algorithm for computing persistent homology over a field.

3 Filtered Complex Persistence Complex
A filtration of a complex K is a nested sequence of subcomplexes, ∅ = K0 ⊆ K1 ⊆ K2 ⊆ ⊆ Km = K. Persistence Complex A filtered simplicial complex, along with its associated chain and boundary maps.

4 Boundary Operator

5 Cycles and Boundaries A chain is a cycle when its boundary is zero
The cycles form a subgroup Zk(К) of chain group Ck(К), which is the kernel of boundary operator: Zk(К) =ker(∂k) The elements in Im(∂k+1) are called boundaries. The k-boundary group of К is the set of boundaries of (k+1)-chains in К, i.e. Its the Image of the (k+1)- chain group Bk(К)= Im(∂k+1)

6 Cycles and Boundaries

7 Homology A certain general procedure used to associate Modules with a Topological Space The kth homology Module is Also depicts the “holes” in the shape created by the Complex K.

8 Modules Module over a ring is a generalization of the notion of vector space, wherein the corresponding scalars are allowed to lie in an arbitrary ring. r(x + y) = rx + ry (r + s)x = rx + sx (rs)x = r(sx) 1Rx = x if R has multiplicative identity 1R

9 Standard matrix representation (1)
The boundary operator performs the following manipulation on the vertices of k-simplices in K Which can be written in the form of a matrix with entries {-1,0,1}.

10 Standard matrix representation (2)
has columns and rows representing the number k and k-1 simplices in K. The null space (Kernel) of corresponds to . The Range space corresponds to Linear operations on the matrix rows cause basis change in

11 Standard matrix representation (3)
The reduction algorithm transforms into its diagonal form with the elementary operations: The above mentioned operators also work on columns that correspond to a base change in .

12 Algorithm – Methodology
The homology of a Complex K is a vector space of rank=β. The standard method for computing homology is the reduction algorithm for the representing matrix Exploring the properties of the Matrices will allow us to deduct the properties of the topological space.

13 Algorithm – principles
The oriented k-simplices form the standard basis for the kth complex in the chain C. Matrix representation reduction. Matrix rank  Betti numbers

14 Example of a basis The two solid 1-cycles form a basis for the first homology class of the torus. The two solid 1-cycles form a basis for the first homology class of the torus

15 Diagonal form (1) After reduction we get the following form of the matrix M, now called :

16 The basis spans the kernel Z, whereas spans the range B.
Diagonal form (2) The basis spans the kernel Z, whereas spans the range B.

17 Example (1)

18 Example (2) Matrix representation of .
This is the matrix that takes us from 1-simplices to 0-simplices (vertices) in K.

19 The reduced representation for , where:
Example (3) The reduced representation for , where:

20 Algorithm downsides We need to simplify the process
The reduction algorithm requires elementary operations, where m is the number of simplices in K. The entries of the intermediate matrices may become extremely large while maintaining exact values (requires long integer storage word). We need to simplify the process

21 Homology of Filtration
Given a filtered complex, the ith complex has associated boundary operators , matrices , and groups for all i, k ≥0. i is called the filtration index.

22 Persistence assuming a k-cycle z, created at time i with the arrival of simplex σ into the complex. The homology class of this cycle, [z], is an element of arrival of simplex τ at time j ≥ I, merges [z] with an older class, turning a cycle z’ in [z] into a boundary. Rank of homology group decreases.

23 P Interval A P-interval is an ordered pair (i, j) with 0 ≤ i < j ∈ Z∞ = Z ∪ {+∞}. Describes the the appearance time of a simplex, i, and the disappear time j-1. The P interval is the lifetime (j-i-1) of this class in the filtration.

24 Persistent Homology The p-persistent kth homology group of is
By increasing p sufficiently we “kill” short-term changes – the noise. Over-increasing p will cover the attributes of the space.

25 Persistence Complex Moving to the right increases filtration index.
Moving down decreases dimensions

26 Algorithm over fields Simplify the standard reduction algorithm by using “The Persistence Module”. We compute the P-intervals directly over the field without computing the Persistence Module.

27 Mid-conclusion Add 3.3 from the paper.

28 Example’ (1) is the basis for Compute over .
Persistence Module corresponds to Definition: is the basis for

29 Example’ (2) Algorithm: We start from the trivial case of using the standard basis to represent . Extract the matrix rep. to

30 Degrees of simplices in the filtration. Where:
Example’ (3) Degrees of simplices in the filtration. Where:

31 We bring the Matrix to column echelon form using Gaussian elimination.
Example’ (4) We bring the Matrix to column echelon form using Gaussian elimination.

32 Algorithm Lemma 4.1 (Echelon Form) The pivots in column echelon form are the same as the diagonal elements in normal form. Moreover, the degree of the basis elements on pivot rows is the same in both forms. Let be the column-echelon form for ∂k relative to bases {ej} and for Ck and Zk−1, respectively.

33 Meaning If row i has pivot then it contributes a P- interval of to .
otherwise, the interval is In our case giving an interval of (1,2) to the description of H0.

34 Example’ (5) Next, we wish to find the k+1 matrix using the
The base we computed for , since: As we perform the column opertors on to get it to echelon form, we perform the same operators on rows in which causes rows to zero out.

35 Example’ (6) Since the corresponding rows even out, we might as well erase them manualy and replace the wors with the basis of :

36 Conclusions from example
Matrix in Echelon form gives us all the information we need. Next dimension matrix is partly eliminated by column operators from the current dimension. There is no need for row operators There is no need for matrix representation

37 Data structure From now on we work with an array T with a slot for each simplex. we compute homology in all dimensions incrementally and concurrently.

38 The algorithm stores the list of P-intervals for Hk in Lk.
COMPUTE INTERVALS (K) The algorithm stores the list of P-intervals for Hk in Lk.

39 COMPUTE INTERVALS (K) New simplex is passed through “RPR” routine to check whether its boundary d corresponds to zero ( ) or pivot. If “zero” – we mark so corresponding row doesn’t get eliminated in k+1. If is a pivot, we look for the pivot value (maxindex(d)). We store index j and chain d representing the column in T[i]. We then perform another pass through the filtration in search of infinite P-intervals: marked simplices whose slot is empty.

40 REMOVE PIVOT ROWS If T[i] is non-empty, a pivot was already stored and we eliminate the row. Otherwise, we found a pivot

41 Algorithm - results For our example, the marked 0-simplices {a, b, c, d} and 1-simplices {ad, ac} generate P-intervals L0 = ={(0,∞), (0, 1), (1, 1), (1, 2)} and L1 = {(2, 5), (3, 4)}

42 Conclusion When a 0-simplex is created – H0 is incremented.
When a 1-simplex is created, either H1 is increased or H0 is decreased. Etc… each P-interval (i, j) describes a basis element for the homology vector spaces starting at time i (in which he joins ) until time j − 1. This basis element is a non-bounding k-cycle until filtration index j, till he joins .

43 L0 ={(0,∞), (0, 1), (1, 1), (1, 2)} L1 = {(2, 5), (3, 4)}
Conclusion L0 ={(0,∞), (0, 1), (1, 1), (1, 2)} L1 = {(2, 5), (3, 4)}

44 Multidimensional Filtration
COMPUTING MULTIDIMENSIONAL PERSISTENCE Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian

Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian

Download ppt "Computing Persistent Homology"

Similar presentations

Ads by Google