seminar algorithms jorge corderokbuchin/.../slides/simplicialcomplexesforcloudsof… · 4 cech...
TRANSCRIPT
-
Simplicial complexes associated with cloud pointsSeminar algorithms
Jorge Cordero
Eindhoven University of Technology
8 May 2018
-
Outline
1 Motivation
2 Recap
3 Nerves
4 Čech complex
5 Vietoris-Rips complex
6 Delaunay complex
7 Alpha complexes
-
Topological data analysis
Data can be complex in terms of size or features.
Sometimes, data has shape.
-
Topological data analysis
Topological data analysis (TDA) help us to understand the structure(shape) of data.
Application:
Find coverage in networks of sensors
Understand protein interactions
Credit card fraud detection
-
Simplex
σ is an n-simplex spanned by n + 1 affinely independent points in P ∈ Rn.
A 0-simplex is a point
A 1-simplex is a line
A 2-simplex is a triangle
A 3-simplex is a tetrahedron
-
Simplicial complex
A simplicial complex K in Rn is a collection of simplices in Rn such that:
Every face of a simplex of K is in K
Every pair of distinct simplices of K has a disjoint interior
The intersection of two distinct simplices of K is a face of each ofthem
-
ASC and Homotopy
An abstract simplicial complex is a collection of finite non-empty subsetsof S.
If A ⊆ S , each non-empty subset B ⊆ A is also in S .
For our purposes, we can think of homotopy equivalent spaces (X ' Y) asspaces that can be deformed continuously one into another.
-
ASC and Homotopy
An abstract simplicial complex is a collection of finite non-empty subsetsof S.
If A ⊆ S , each non-empty subset B ⊆ A is also in S .
For our purposes, we can think of homotopy equivalent spaces (X ' Y) asspaces that can be deformed continuously one into another.
-
Simplicial representation
Our goal is to compute a simplicial representation of a set of points toapply topological tools for data analysis.
-
Nerves
We can use the nerve of a finite collection of sets S to create an abstractsimplicial complex.
The nerve of S consists of all non-empty subcollections whose sets have anon-empty common intersection,
NrvS = {X ⊆ S |⋂
X 6= ∅}.
-
Nerves
We can use the nerve of a finite collection of sets S to create an abstractsimplicial complex.
The nerve of S consists of all non-empty subcollections whose sets have anon-empty common intersection,
NrvS = {X ⊆ S |⋂
X 6= ∅}.
-
Nerves
From⋂X 6= ∅ and Y ⊆ X =⇒
⋂Y 6= ∅, it follows that NrvS is always
an abstract simplicial complex.
We represent the nerve as an abstract simplicial complex,
NrvS = {R,B,P,G , {R,B}, {B,P}, {P,G}, {G ,R}}.
-
Nerves
The topological space of S = {R,G ,B,Y } is a disk with three holes.
NrvS has the homotopy type of a sphere.
Hence, the homotopy types for NrvS and |S | are different.
-
Nerves
We want to compute a nerve that resembles the structure inherent to theset of points.
Nerve theorem
Let S be a finite collection of closed, convex sets in Euclidean space.Then, the nerve of S and the union of the sets in S have the samehomotopy type.
-
Nerves
We want to compute a nerve that resembles the structure inherent to theset of points.
Nerve theorem
Let S be a finite collection of closed, convex sets in Euclidean space.Then, the nerve of S and the union of the sets in S have the samehomotopy type.
-
Closed ball
A closed ball with center x and radius r is defined by,
Bx(r) = x + rBd = {y ∈ Rd | ||y − x || ≤ r}
-
Čech complex
Let’s construct a simplicial complex from a set of points.
-
Čech complex
Let’s construct a simplicial complex from a set of points.
-
Čech complex
Let’s construct a simplicial complex from a set of points.
-
Čech complex
Let’s construct a simplicial complex from a set of points.
-
Čech complex
Let S be a finite set of points in Rd .
The Čech complex of S and r is given by,
Č ech(r) = {σ ⊆ S |∩Bx(r) 6= ∅}
The Čech complex is equivalent to the nerve of the collection of balls.
-
Čech complex
Čech complexes for different values of r
-
Čech complex
Čech complexes for different values of r
-
Čech complex
Some properties of the Čech complex:
When ri ≤ rj , Č ech(ri ) ⊆ Č ech(rj).
Č ech(r) of a set S of points in Rd can always be represented as anabstract simplicial complex.
Computing the complex takes an exponential time in the size of S .
-
Čech complex
Some properties of the Čech complex:
When ri ≤ rj , Č ech(ri ) ⊆ Č ech(rj).Č ech(r) of a set S of points in Rd can always be represented as anabstract simplicial complex.
Computing the complex takes an exponential time in the size of S .
-
Čech complex
Some properties of the Čech complex:
When ri ≤ rj , Č ech(ri ) ⊆ Č ech(rj).Č ech(r) of a set S of points in Rd can always be represented as anabstract simplicial complex.
Computing the complex takes an exponential time in the size of S .
-
Vietoris-Rips complex
The Vietoris-Rips VR complex of S and r consists of all subsets ofdiameter at most 2r ,
VR(r) = {σ ⊆ S |diamσ ≤ 2r}.
The diameter of σ is the supremum of all pairwise distances betweenpoints in σ.
-
Comparing Čech and Vietoris-Rips complex
Čech complex
Vietoris-Rips complex
-
Vietoris-Rips
Notice that Č ech(r) ⊆ VR(r) but Č ech(r) 6' VR(r).
For appropriate values of ra and rb, we have VR(ra) ⊆ Č ech(rb).
Vietoris-Rips Lemma
Let S be a finite set of points in some Euclidean space and r ≥ 0. Itfollows that VR(r) ⊆ Č ech(
√2r).
-
Vietoris-Rips
Properties of VR complexes:
VR complexes avoid the intersection test used in Čech.
VR complexes also take exponential time to compute.
VR complexes might not have a geometric representation in theunderlying space of S.
-
Vietoris-Rips
Properties of VR complexes:
VR complexes avoid the intersection test used in Čech.
VR complexes also take exponential time to compute.
VR complexes might not have a geometric representation in theunderlying space of S.
-
Vietoris-Rips
Properties of VR complexes:
VR complexes avoid the intersection test used in Čech.
VR complexes also take exponential time to compute.
VR complexes might not have a geometric representation in theunderlying space of S.
-
Voronoi diagram
What if we want the simplicial complex to have a geometricrepresentation?.
Delaunay complexes can be used for this task.
To explore Delaunay complexes, we first introduce the Voronoi diagram.
-
Voronoi diagram
Consider a finite set of points S = {v1, v2, ..., vn} in Rd :
The Voronoi cell of vi ∈ S is the set of points in Rd closest to vi ,
Vvi = {x ∈ Rd | ||x − vi || ≤ ||x − vj ||, ∀vj ∈ S}.
Together, the Voronoi cells of all points vi cover the entire space.
-
Voronoi diagram
For a set of points in a plane:
Encode proximity information useful for answering point queries.
Can be computed in time O(nlogn) using Fortune’s algorithm.
It uses O(n) space.
-
Voronoi diagram
For a set of points in a plane:
Encode proximity information useful for answering point queries.
Can be computed in time O(nlogn) using Fortune’s algorithm.
It uses O(n) space.
-
Voronoi diagram
For a set of points in a plane:
Encode proximity information useful for answering point queries.
Can be computed in time O(nlogn) using Fortune’s algorithm.
It uses O(n) space.
-
Delaunay complex
The Delaunay complex of a finite set of points S ⊆ Rd is equivalent to thenerve of the Voronoi diagram,
Delaunay(S) = {σ ⊆ S |⋂ui∈σ
Vui 6= ∅}.
-
Delaunay complex
The Delaunay complex seems to always create triangles in R2.
Is this always the case?
No, unless the set of points is in general position.
-
Delaunay complex
The Delaunay complex seems to always create triangles in R2.
Is this always the case?
No, unless the set of points is in general position.
-
Delaunay complex
The Delaunay complex seems to always create triangles in R2.
Is this always the case?
No, unless the set of points is in general position.
-
Delaunay complex
A set of points S is in general position if not d + 2 points lie on a common(d − 1)-sphere.
For a finite set of points S ∈ Rd , assuming general position, the geometricrealization of a Delaunay complex fits in Rd .
-
Delaunay complex
For a set of points in the plane:
It can be computed from the Voronoi diagram.
It takes expected O(nlogn) time.
It uses O(n) space.
-
Alpha complexes
Let S be a finite set of points in Rd and r ≥ 0.
Let Ru(r) = Bu(r) ∩ Vu, with Vu being the Voronoi cell of u.
The alpha complex is defined as
Alpha(r) = {σ ⊆ S |⋂u∈σ
Ru(r) 6= ∅}.
-
Delaunay filtration
Different values of r to create different alpha complexes.
-
Delaunay filtration
Eventually, we obtain the Delaunay complex.
-
Delaunay filtration
The filtration of Km = Delaunay is represented as,
∅ = K0 ⊆ ... ⊆ Ki ⊆ ... ⊆ Km.
Ki corresponds to the i-th alpha complex from the sequence of differentalpha complexes obtained by varying r .
-
Summary
The nerve of a set of points S allows us to compute simplicialcomplexes.
Čech complexes and Vietoris-Rips complexes allows us to constructabstract simplicial complexes from S .
The Delaunay triangulation allows to create simplicial complexes withgeometric realizations.
The alpha complex can be seen as a filtered version of the Delaunaycomplex.
-
Summary
The nerve of a set of points S allows us to compute simplicialcomplexes.
Čech complexes and Vietoris-Rips complexes allows us to constructabstract simplicial complexes from S .
The Delaunay triangulation allows to create simplicial complexes withgeometric realizations.
The alpha complex can be seen as a filtered version of the Delaunaycomplex.
-
Summary
The nerve of a set of points S allows us to compute simplicialcomplexes.
Čech complexes and Vietoris-Rips complexes allows us to constructabstract simplicial complexes from S .
The Delaunay triangulation allows to create simplicial complexes withgeometric realizations.
The alpha complex can be seen as a filtered version of the Delaunaycomplex.
-
Summary
The nerve of a set of points S allows us to compute simplicialcomplexes.
Čech complexes and Vietoris-Rips complexes allows us to constructabstract simplicial complexes from S .
The Delaunay triangulation allows to create simplicial complexes withgeometric realizations.
The alpha complex can be seen as a filtered version of the Delaunaycomplex.
-
Sources
H. Edelsbrunner, J. L. Harer, Computational topology. Anintroduction. American Mathematical Society, Providence, RI, 2010.
Mark de Berg, Otfried Cheong, Marc van Kreveld, and MarkOvermars. 2008. Computational Geometry: Algorithms andApplications (3rd ed.).
Lecture notes and videos on Computational Topology. Lectures 11,12, and 13.
Topological data analysis of genes
Čech and Vietoris-Rips complex
Persistent homology
http://www.math.wsu.edu/faculty/bkrishna/FilesMath574/S16/LecNotes/welcome.htmlhttps://www.ayasdi.com/blog/topology/shape-genome-going-beyond-double-helix-topological-data-analysis/https://jeremykun.com/2015/08/06/cech-vietoris-rips-complex/https://www.youtube.com/watch?annotation_id=annotation_405791327&feature=iv&src_vid=h0bnG1Wavag&v=2PSqWBIrn90
-
Images
https://mathematica.stackexchange.com/questions/61021/
triangulated-mesh-from-voronoi-diagram
https:
//www.researchgate.net/figure/Delaunay-Triangulation_fig3_44897706
http://www.pnas.org/content/pnas/113/26/7035/F10.large.jpg
http://www.ugc.edu.hk/minisite/rgc_newsletter/rgcnews18/eng/05.htm
http://www.pnas.org/content/pnas/113/26/7035/F10.large.jpg
http://www.dei.unipd.it/~schenato/pics/SensorNetwork.jpg
https://www.johndcook.com/persistent_homology.png
https:
//upload.wikimedia.org/wikipedia/commons/thumb/5/50/Simplicial_
complex_example.svg/532px-Simplicial_complex_example.svg.png
https://s3.amazonaws.com/cdn.ayasdi.com/wp-content/uploads/2017/05/
09112616/srep43845-f2.jpg
https://mathematica.stackexchange.com/questions/61021/triangulated-mesh-from-voronoi-diagramhttps://mathematica.stackexchange.com/questions/61021/triangulated-mesh-from-voronoi-diagramhttps://www.researchgate.net/figure/Delaunay-Triangulation_fig3_44897706https://www.researchgate.net/figure/Delaunay-Triangulation_fig3_44897706http://www.pnas.org/content/pnas/113/26/7035/F10.large.jpg http://www.ugc.edu.hk/minisite/rgc_newsletter/rgcnews18/eng/05.htmhttp://www.pnas.org/content/pnas/113/26/7035/F10.large.jpghttp://www.dei.unipd.it/~schenato/pics/SensorNetwork.jpghttps://www.johndcook.com/persistent_homology.pnghttps://upload.wikimedia.org/wikipedia/commons/thumb/5/50/Simplicial_complex_example.svg/532px-Simplicial_complex_example.svg.pnghttps://upload.wikimedia.org/wikipedia/commons/thumb/5/50/Simplicial_complex_example.svg/532px-Simplicial_complex_example.svg.pnghttps://upload.wikimedia.org/wikipedia/commons/thumb/5/50/Simplicial_complex_example.svg/532px-Simplicial_complex_example.svg.pnghttps://s3.amazonaws.com/cdn.ayasdi.com/wp-content/uploads/2017/05/09112616/srep43845-f2.jpghttps://s3.amazonaws.com/cdn.ayasdi.com/wp-content/uploads/2017/05/09112616/srep43845-f2.jpg
MotivationRecapNervesCech complexVietoris-Rips complexDelaunay complexAlpha complexes