Loading [MathJax]/jax/output/HTML-CSS/jax.js

Thursday, May 19, 2016

Persistent homology (an example)

Here we follow the article "Persistent homology - a Survey," by Herbert Edelsbrunner and John Harer, published in 2008 in "Surveys on discrete and computational geometry," Volume 453.

Consider the sphere, which has known homology groups. Consider a slightly bent embedding of the sphere in R3, call it M, as in the diagram below (imagine it as a hollow blob, whose outline is drawn below). Let f:MR be the height function, measuring the distance from a point in M to a plane just below M, coming out of the page. Then we have some critical values t0,t1,t2,t3, as indicated below. Note we have embedded the shape so that no two critical points of f have the same value.
This is remniscent of Morse theory. Set Mi=f1[0,ti] and bi=dim(Hi) the ith Betti number. Then we may easily calculate the Betti numbers of the Mj, as in the table below.
M0M1M2M3Mb012111b100000b200011
Definition: In the context above, suppose that there is some p and j>i such that:
  • bp(Mi)=bp(Mi1)+1,
  • bp(Mj)=bp(Mj1)1, and
  •  the generator of Hp introduced at ti is the same generator of Hp that disappears at tj.
Then (i,j) (or (ti,tj)) is called a persistence pair and the persistence of (i,j) is ji (or f(j)f(i)).

For i not in a persistence pair, we say that i represents an essential cycle, or that the persistence of i is infinite. In the example considered, the only persistence pair is (1,2). This may be presented in a persistence diagram, with the indices of critical points on both axes, and the persistence measured as a vertical distance.
If we put a simplicial complex structure on M, we may also calculate the homology (and persistence pairs, although they may be different than the ones found above). To make calculations easier, we instead describe a CW structure on our embedded sphere M (with Xi the i-skeleton, and the ordering of the i-cells as indicated). The results will be the same as for a simplicial complex structure.
This gives one 0-cell, two 1-cells, and three 2-cells (with the obvious gluings), allowing us to construct the chain groups Cp as well as maps between them. The map dp:CpCp1 as a matrix has size dim(Cp1)×dim(Cp), and has entry (i,j) equal to the number of times, counting multiplicity, that the ith (p1)-cell is a face of the jth p-cell. Calculations are done in Z/2Z.
d2 : C2C1is[101011]d1 : C1C0is[00]
The Betti numbers are then bp=dim(Cp)rk(dp)rk(dp+1). From above, it is immediate that rk(d1)=0, rk(d2)=2, and rk(dp)=0 for all other p. This tells us that
b0=dim(C0)rk(d0)rk(d1)=100=1,b1=dim(C1)rk(d1)rk(d2)=202=0,b2=dim(C2)rk(d2)rk(d3)=320=1,
as expected. To find the persistence pairs, we introduce a filtration on the simplices (equivalently, on the cells) by always having the faces of a cell precede the cell, as well as lower-dimensional cells preceding higher-dimensional cells. Using the same ordering as described above, consider the following filtration:
K0={},K1={e01},K2={e01,e11,e12},K3={e01,e11,e12,e21,e22,e23},
so =K0K1K2K3=M. This gives an ordering on all the cells of M, namely
σ1=e01, σ2=e11, σ3=e12, σ4=e21, σ5=e22, σ6=e23.
Construct the boundary matrix D, with the (i,j) entry of D equal to the number of times, counting multiplicity, modulo 2, that σi is a codimension 1 face of σj. In the case of our example sphere, we get the matrix
D=[000000000101000011000000000000000000]    [000000000100000010000000000000000000]
in its reduced form (call it ˜D). With respect to the matrix ˜D, define the following numbers:
low(j)=the row number of the lowest non-zero entry in column j,zero(p)=the number of zero columns that correspond to p-simplices,one(p)=the number of 1s in rows that correspond to p-simplices.
We calculate all the relevant values of these expressions to be as below.
low(1)=0zero(0)=1one(0)=0low(2)=0zero(1)=2one(1)=2low(3)=0zero(2)=1one(2)=0low(4)=2low(5)=3low(6)=0
For persistence, we have
  • if low(j)=i0, then (i,j) is a persistence pair, 
  • if low(j)=0 and there is no k such that low(k)=j, then j is an essential cycle.
For our sphere example, we get two persistence pairs (2,4) and (3,5), and two essential cycles 1 and 6. Note that this is different from the persistence pairs found by the height function f:MR earlier (but there are still two essential cycles), because there we were comparing the homologies Hp(Mj), but here we are comparing Hp(K). The persistence diagram is as below.
As an added feature, from the numbers above we may calculate the homology and relative homology groups. Construct the relative chain groups Cp(M,K)=Cp(M)/Cp(K) and set zero(p,) to be zero(p) for the lower right submatrix of ˜D corresponding to the cells in MK (and similarly for one(p,)). We find these numbers for the bent sphere to be as below.
zero(0,0)=1zero(0,1)=0zero(0,2)=0zero(0,3)=0zero(1,0)=2zero(1,1)=2zero(1,2)=0zero(1,3)=0zero(2,0)=1zero(2,1)=1zero(2,2)=1zero(2,3)=0one(0,0)=0one(0,1)=0one(0,2)=0one(0,3)=0one(1,0)=2one(1,1)=2one(1,2)=0one(1,3)=0one(2,0)=0one(2,1)=0one(2,2)=0one(2,3)=0
Note that zero(p,0)=zero(p) and one(p,0)=one(p), as well as zero(p,3)=one(p,3)=0. The above numbers are useful in calculating
dim(Hp(M))=zero(p)one(p),dim(Hp(M,K))=zero(p,)one(p,).

References: Edelsbrunner and Harer (Persistent homology - a Survey)

No comments:

Post a Comment