Technical noteLinear algebraic representation for topological structures
Graphical abstract
Introduction
Present-day computational problems in science and technology must deal with increasingly complex geometric information and applications. The complexity of geometric information stems from a dramatic increase in size, diversity, and complexity of geometric data: point clouds, boundary meshes, NURBs representations, finite element meshes, CT scans, and so on. The complexity of applications is apparent in increasingly complicated semantics, usually expressed in terms of incidences and relations involving geometric data: large-scale assemblies, topology of microstructure, image segmentation, multi-physics simulation, to name a few. Emerging applications require the convergence of shape synthesis and analysis from computer graphics, computer imaging, and computer-aided geometric design, with discrete meshing of domains used for physical simulations. The goals of unification, scalability, and massively parallel distributed computing call for rethinking of the foundations of geometric and topological computing.
The evolution of 3D geometric representations can be generally understood in terms of graph-based data structures representing one of several possible cell complexes partitioning either the boundary or the interior of the represented model. A variety of assumptions about cell complexes and graph representations make standardization difficult, complicate the issues of data exchange and transfer, and lead to the proliferation of incompatible algorithms. Graph-based structures are difficult to parallelize: e.g. boundary representation algorithms are dominated by graph searching algorithms (boundary traversals) that tend to force serial processing. In short, the specialized data structures based on cell complexes, that have driven the evolutionary development of the field, are no longer adequate for dealing with the emerging challenges and opportunities in geometric computing.
We observe that all types of cell complexes and functions over cell complexes are properly represented by a (co)chain complex, that captures all combinatorial relationships of interest in solid and physical modeling formally and unambiguously. Based on classical results from algebraic topology techniques, we show that a (co)chain complex and all associated combinatorial operations are readily represented using standard techniques from linear algebra, giving rise to a Linear Algebraic Representation (LAR) scheme. In this paper, we focus specifically on mod 2 (co)chain complexes because they are sufficient for many solid modeling applications [1]. In particular, we describe a fully implemented LAR data structure and algorithms using compressed sparse row (CSR) matrices that introduce no computational overhead and are asymptotically as efficient as (and usually better than) many other popular topological data structures. Our presentation will focus on chain complexes and operations. The extension to cochain complexes is straightforward because the two are isomorphic. For example, it is well known that boundary and coboundary matrices are transposes of each other.
The literature on representation schemes in solid modeling started with the foundational paper [1], where a mathematical framework for the important aspects of computer representations of solids was introduced. The ground-breaking paper [2] had previously supplied the first but already efficient boundary representation scheme. It also introduced Euler operators, elementary operations for step-wise building well-formed polyhedra, using atomic software actions satisfying the Euler–Poincaré formula at each stage.
The Quad-Edge data structure, providing efficient primitives for planar subdivisions and Voronoi diagrams, was proposed in [3], and is still largely used in computational geometry algorithms and in geometric libraries. Variations of the radial-edge non-manifold representation by [4] have been embodied in almost every commercial CAD system that uses a non-manifold boundary representation. The Cell–Tuple structure [5] was introduced as a simple, uniform representation of finite and regular CW-complexes over subdivided -manifolds.
More general set-theoretic and topological operators were provided by [6] to represent inhomogeneous objects, building upon the Selective Geometric Complex (SGC), a superset of CW-complexes allowing for cells non homeomorphic to open balls, proposed to handle dimension-independent models of point sets with internal structures and incomplete boundaries. A dimension-independent generalization of simplicial schemes, and various operators and algorithms were discussed by [7]. The foundational ideas underlying these and other representations are reviewed in [8], pointing out that solid modeling was conceived as a universal technology for developing engineering languages and systems with guaranteed geometric validity.
Despite the tremendous amount of research done and the progress made, most modern industrial systems still follow the basic approach established twenty years ago, centered on boundary representations, graphs, and non-manifold data structures represented using complex and inefficient (usually redundant) pointer structures. Computations in such systems, without preprocessing, usually rely on sequential “traversal” (graph or boundary) algorithms that depend on specific pointer structures, and do not readily scale. For example, handling large 3D unstructured meshes becomes problematic, but the situation is much more challenging for other higher-dimensional topological structures.
More recently, the geometric and physical modeling fields started moving towards computing with functions defined over more general cellular decompositions [9], [10] and direct integration between geometry and physics [11], [12], [13], [14]. These latest developments provided the motivation for the present paper; in particular, we will draw heavily on the ideas, concepts, and definitions in [12] and [13] to propose a new linear-algebraic approach to representing and computing with topological structures.
Section snippets
Summary
In this section we introduce the Linear Algebraic Representation (LAR) scheme. The aim is to provide a representation that supports all topological constructions and queries that arise in typical cellular decomposition of space (mesh, image, boundary, etc.). Formally, LAR relies on standard definitions [15], [16]: in the mod 2 cellular complexes used here, -chains are sets of -cells; the standard basis of the -linear space of -chains is provided by singletons of -cells; each -cell is
Mappings and algorithms
In this section, we show that common topological operations and queries on CSR represented LAR structures, including incidence, boundary, star, and product of spaces, reduce to a sequence of SpMV operations that are asymptotically linear and, with a few exceptions, output sensitive.
LAR examples
Some elementary examples aim to show the simple computations in the LAR scheme. A non-trivial extraction of complex topological models from 3D image data follows. FV and EV give a CSR rep of the binary matrices and .
Conclusions
In this paper we introduced LAR, a simple linear algebraic representation for cellular complexes, using a CSR (Compressed Sparse Row) form for characteristic matrices of linear spaces of (co)chains. LAR allows us to efficiently compute and query any model topology through sparse matrix algebra, and supports all topological incidence structures, including enumerative (images), decompositive (meshes) and boundary (CAD) representations. LAR is dimension-independent, not restricted to regular
Acknowledgments
The research of Vadim Shapiro was supported by the National Science Foundation grants CMMI-0856778 and CMMI-1029553. The research of Alberto Paoluzzi and Antonio DiCarlo was supported by a POC grant 2012/13 by SOGEI, the ICT company of the Italian Ministry of Economy and Finance.
References (19)
Solid modeling
Representations for rigid solids: theory, methods, and systems
ACM Computing Surveys
(1980)- et al.
Primitives for the manipulation of general subdivisions and the computation of Voronoi
ACM Transactions on Graphics
(1985) The radial edge structure: a topological representation for non-manifold geometric modelling
Representing geometric structures in dimensions: topology and order
- et al.
SGC: a dimension-independent model for pointsets with internal structures and incomplete boundaries
- et al.
Dimension-independent modeling with simplicial complexes
ACM Transactions on Graphics
(1993) - et al.
Compact combinatorial maps in 3D
Graphical Models
(2012)