# Measuring Connectivity with Graph Laplacian Eigenvalues

# Measuring Connectivity with Graph Laplacian Eigenvalues

### Spectral graph theory, looking at the eigenvalues of the graph Laplacian, can tell us not just whether a graph is connected, but also how well it’s connected.

Join the DZone community and get the full member experience.

Join For FreeIf a graph can be split into two components with no links between them, that’s probably easy to see. It’s also unlikely unless there’s a good reason for it. The less obvious and more common case is a graph that can **almost** be split into two components.

The graph Laplacian is the matrix *L* = *D* – *A* where *D* is the diagonal matrix whose entries are the degrees of each node and *A* is the adjacency matrix. The smallest eigenvalue of *L*, λ_{1}, is always 0. (Why? See footnote [1].) The second smallest eigenvalue λ_{2} tells you about the connectivity of the graph. If the graph has two disconnected components, λ_{2} = 0. And if λ_{2} is **small**, this suggests the graph is **nearly** disconnected, that it has two components that are not very connected to each other. In other words, the second eigenvalue gives you a sort of **continuous measure of how well a graph is connected**.

To illustrate this, we’ll start with a disconnected graph and see what happens to λ_{2} as we add edges connecting its components.

The first two eigenvalues of *L* are zero as expected. (Actually, when I computed them numerically, I got values around 10^{-15}, about 15 orders of magnitude smaller than the next eigenvalue, so the first two eigenvalues are zero to the limits of floating point precision.)

Next, we add an edge between nodes 4 and 9 to form a weak link between the two clusters.

In this graph, the second eigenvalue λ_{2} jumps to 0.2144.

If we connect nodes 3 and 8 instead of 4 and 8, we create a stronger link between the components since nodes 3 and 8 have more connections in their respective components. Now λ_{2} becomes 0.2788.

Finally, if we add both, connecting nodes 4 and 9 and nodes 3 and 8, λ_{2} increases to 0.4989.

**Related post**: Graph Laplacian and other matrices associated with a graph

* * *

[1] To see why the smallest eigenvalue is always 0, note that *v* = (1, 1, 1, …, 1) is an eigenvector for 0. Multiplying the *i*th row of *D* by *v* picks out the degree of node *i*. Multiplying the *i*th row of *A* by *v* sums that row, which is also the degree of node *i*.

Published at DZone with permission of John Cook , DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

## {{ parent.title || parent.header.title}}

{{ parent.tldr }}

## {{ parent.linkDescription }}

{{ parent.urlSource.name }}