Map Window Cycle Window
12.2 Algorithm for Z
2 Having described the three-dimensional data, we now begin examining the persistence algorithm over Z 2 coefficients. While the algorithm has O m 3 running time, we show that it is extremely fast in practice.12.2.1 Timings
We only time and present the portion of the software that is directly related to computing persistence. In particular, we do not time the construction of the Delaunay complex or the α-shape filtration. All timings in this section were done on a Sun Ultra-10 with a 440 MHz UltraSPARC IIi processor and 256 megabyte RAM, running Solaris 8. Table 12.5 distinguishes four steps in the computation: marking simplices as positive or negative, and adding k-cycles for k = 0, 1, 2. Recall that the computation of persistence can be accelerated for k = 0, 2 by using a union-find data structure. As the times show, this im- provement subsumes adding 0- and 2-cycles in the marking process, shrinking Fig. 12.4. Miscellaneous data used. the time for these to steps to essentially nothing. Figure 12.5 graphs the total time for the persistence algorithm, with and without the union-find speedup, against the number of simplices in a filtration. The graph shows that the com- putation time is essentially linear in the number of simplices in the filtration. This is substantially faster than the cubic dependence proved in Section 7.2.3. Of course, we need to distinguish worst-case analysis from average running time. After accelerating with union-find, the slowest portion of the algorithm adds 1-cycles, which is still O m 3 in the worst case.12.2.2 Statistics
The cubic upper bound in Section 7.2.3 followed from the observation that the k -cycle created by σ i goes through fewer than p i collisions, and the length of its list built up during these collisions is less than k +2p i . We may explain the linear running time in Figure 12.5 by showing that the average number of col-Parts
» Spaces Topology for Computing
» New Results Topology for Computing
» Organization Topology for Computing
» Sets and Functions Topological Spaces
» Manifolds Topology for Computing
» Geometric Definition Simplicial Complexes
» Abstract Definition Simplicial Complexes
» Filtrations and Signatures Simplicial Complexes
» Manifold Sweeps Topology for Computing
» Binary Operations Groups Introduction to Groups
» Subgroups and Cosets Introduction to Groups
» Structure-Relating Maps Characterizing Groups
» Cyclic Groups Characterizing Groups
» Finitely Generated Abelian Groups
» Factor Groups Characterizing Groups
» Free Abelian Groups Advanced Structures
» Rings, Fields, Integral Domains, and Principal Ideal Domains
» Modules, Vector Spaces, and Gradings
» Structure Theorem Advanced Structures
» The Fundamental Group Justification
» Chains and Cycles Homology Groups
» Simplicial Homology Homology Groups
» Understanding Homology Homology Groups
» The Euler-Poincaré Formula Homology Groups
» Arbitrary Coefficients Topology for Computing
» Tangent Spaces Topology for Computing
» Derivatives and Morse Functions
» Critical Points Stable and Unstable Manifolds
» Morse-Smale Complex Topology for Computing
» Quasi Morse-Smale Complex Hierarchical Morse-Smale Complexes
» Piece-Wise Linear Artifacts Hierarchical Morse-Smale Complexes
» Filtration Hierarchical Morse-Smale Complexes
» Hierarchy Hierarchical Morse-Smale Complexes
» Knots and Links The Linking Number
» Marking Algorithm Topology for Computing
» Abstract Algorithm Algorithm for Z
» Cycle Search Algorithm for Z
» Canonization Algorithm for Z
» Reduction Algorithm for Fields
» Derivation Algorithm for Fields
» Algorithm Algorithm for Fields
» Algorithm for PIDs Topology for Computing
» Approach and Goals Motivation
» Persistent Betti Number Algorithm
» Lazy Migration Reordering Algorithms
» Topology Maps Topology for Computing
» Complex with Junctions The Quasi Morse-Smale Complex Algorithm
» Extending Paths The Quasi Morse-Smale Complex Algorithm
» Handle Slide Local Transformations
» Steepest Ascent Local Transformations
» Motivation Algorithm Topology for Computing
» Component Tree Enumeration Algorithm
» Methodology Topology for Computing
» Libraries and Packages Organization
» Surfaces Miscellaneous Three-Dimensional Data
» Implementation Algorithm for Fields
» Framework and Data Algorithm for Fields
» Field Coefficients Algorithm for Fields
» Higher Dimensions Algorithm for Fields
» A Case Study Timings and Statistics
» Implementation The Linking Number Algorithm
» Timings and Statistics The Linking Number Algorithm
» Topological Feature Detection Computational Structural Biology
» Knotting Computational Structural Biology
» Structure Determination Computational Structural Biology
» Hierarchical Clustering Topology for Computing
» Terrain Simplification Denoising Density Functions
» Iso-Surface Denoising Denoising Density Functions
» Time-Varying Data Denoising Density Functions
» Medial Axis Simplification Denoising Density Functions
» Surface Reconstruction Topology for Computing
Show more