Table of Contents
Fetching ...

Partitioning Sparse Graphs using the Second Eigenvector of their Graph Laplacian

David De Wit

TL;DR

This work addresses partitioning sparse graphs into two large connected banks separated by a small vertex set using the second eigenvector of the graph Laplacian $L$, enabling efficient divide-and-conquer strategies for large-scale problems. It combines spectral theory (via the eigenpair $(\lambda_2,\mathbf{v}_2)$) with a practical pipeline: form an edge separator $E_1$, derive a vertex bipartite graph $H=(A_1,B_1,E_1)$, and compute a minimum cover $S$ to obtain the vertex partition $(A,B)$ with a small separator $S$; this is then recursively applied to achieve a full hierarchical decomposition. The paper provides a complete C implementation (including decomp, graph generators, and utilities) and demonstrates results on various grid graphs, while also discussing issues like the Lanczos parameter $m$ and ghost eigenvalues that affect reliability. The combination of theory, implementation, and empirical testing advances the applicability of spectral partitioning to large sparse systems and lays groundwork for integrated hierarchical solvers via nested dissection and parallelism.

Abstract

Partitioning a graph into three pieces, with two of them large and connected, and the third a small ``separator'' set, is useful for improving the performance of a number of combinatorial algorithms. This is done using the second eigenvector of a matrix defined solely in terms of the incidence matrix, called the graph Laplacian. For sparse graphs, the eigenvector can be efficiently computed using the Lanczos algorithm. This graph partitioning algorithm is extended to provide a complete hierarchical subdivision of the graph. The method has been implemented and numerical results obtained both for simple test problems and for several grid graphs.

Partitioning Sparse Graphs using the Second Eigenvector of their Graph Laplacian

TL;DR

This work addresses partitioning sparse graphs into two large connected banks separated by a small vertex set using the second eigenvector of the graph Laplacian , enabling efficient divide-and-conquer strategies for large-scale problems. It combines spectral theory (via the eigenpair ) with a practical pipeline: form an edge separator , derive a vertex bipartite graph , and compute a minimum cover to obtain the vertex partition with a small separator ; this is then recursively applied to achieve a full hierarchical decomposition. The paper provides a complete C implementation (including decomp, graph generators, and utilities) and demonstrates results on various grid graphs, while also discussing issues like the Lanczos parameter and ghost eigenvalues that affect reliability. The combination of theory, implementation, and empirical testing advances the applicability of spectral partitioning to large sparse systems and lays groundwork for integrated hierarchical solvers via nested dissection and parallelism.

Abstract

Partitioning a graph into three pieces, with two of them large and connected, and the third a small ``separator'' set, is useful for improving the performance of a number of combinatorial algorithms. This is done using the second eigenvector of a matrix defined solely in terms of the incidence matrix, called the graph Laplacian. For sparse graphs, the eigenvector can be efficiently computed using the Lanczos algorithm. This graph partitioning algorithm is extended to provide a complete hierarchical subdivision of the graph. The method has been implemented and numerical results obtained both for simple test problems and for several grid graphs.

Paper Structure

This paper contains 38 sections, 15 theorems, 21 equations, 20 figures, 2 tables, 5 algorithms.

Key Result

Theorem 2.1

$A \in F_n$ is an M-Matrix iff all its eigenvalues have a non-negative real part.

Figures (20)

  • Figure 2: Idit.
  • Figure 3: The sparse graph Laplacian of Idit.
  • Figure 4: The eigenvalue spectrum of Idit.
  • Figure 5: The second eigenvector of Idit.
  • Figure 6: Moshe.
  • ...and 15 more figures

Theorems & Definitions (33)

  • Definition 2.1
  • Definition 2.2
  • Theorem 2.1
  • Theorem 2.2
  • Definition 2.3
  • Theorem 2.3
  • Theorem 2.4
  • Theorem 2.5
  • Definition 2.4
  • Theorem 2.6
  • ...and 23 more