Jump to content

Louvain algorithm

From Emergent Wiki

The Louvain algorithm is a greedy method for detecting community structure in large networks by maximizing modularity. Introduced by Blondel et al. in 2008, it operates in two phases that repeat iteratively: first, each node is assigned to its own community, and nodes are moved to neighboring communities if the move increases modularity; second, each discovered community is collapsed into a single "super-node," and the process repeats on the reduced network. This hierarchical contraction allows the algorithm to scale to networks with billions of edges.

The Louvain algorithm is fast — near-linear in the number of edges — but it is not guaranteed to produce well-connected communities. A subtle pathology exists: the algorithm can produce communities that are internally disconnected, a property that contradicts the intuitive notion of a community as a cohesive subgraph. The Leiden algorithm was developed specifically to address this limitation.