Scaling Up Maximal k-plex Enumeration

by   Qiangqiang Dai, et al.

Finding all maximal k-plexes on networks is a fundamental research problem in graph analysis due to many important applications, such as community detection, biological graph analysis, and so on. A k-plex is a subgraph in which every vertex is adjacent to all but at most k vertices within the subgraph. In this paper, we study the problem of enumerating all large maximal k-plexes of a graph and develop several new and efficient techniques to solve the problem. Specifically, we first propose several novel upper-bounding techniques to prune unnecessary computations during the enumeration procedure. We show that the proposed upper bounds can be computed in linear time. Then, we develop a new branch-and-bound algorithm with a carefully-designed pivot re-selection strategy to enumerate all k-plexes, which outputs all k-plexes in O(n^2γ_k^n) time theoretically, where n is the number of vertices of the graph and γ_k is strictly smaller than 2. In addition, a parallel version of the proposed algorithm is further developed to scale up to process large real-world graphs. Finally, extensive experimental results show that the proposed sequential algorithm can achieve up to 2× to 100× speedup over the state-of-the-art sequential algorithms on most benchmark graphs. The results also demonstrate the high scalability of the proposed parallel algorithm. For example, on a large real-world graph with more than 200 million edges, our parallel algorithm can finish the computation within two minutes, while the state-of-the-art parallel algorithm cannot terminate within 24 hours.


page 1

page 2

page 3

page 4


Listing Maximal k-Plexes in Large Real-World Graphs

Listing dense subgraphs in large graphs plays a key task in varieties of...

Fairness-aware Maximal Biclique Enumeration on Bipartite Graphs

Maximal biclique enumeration is a fundamental problem in bipartite graph...

Fast Maximal Quasi-clique Enumeration: A Pruning and Branching Co-Design Approach

Mining cohesive subgraphs from a graph is a fundamental problem in graph...

Shared-Memory Parallel Maximal Clique Enumeration from Static and Dynamic Graphs

Maximal Clique Enumeration (MCE) is a fundamental graph mining problem, ...

Maximum k-Biplex Search on Bipartite Graphs: A Symmetric-BK Branching Approach

Enumerating maximal k-biplexes (MBPs) of a bipartite graph has been used...

Parallel, Portable Algorithms for Distance-2 Maximal Independent Set and Graph Coarsening

Given a graph, finding the distance-2 maximal independent set (MIS-2) of...

Hierarchical Agglomerative Graph Clustering in Poly-Logarithmic Depth

Obtaining scalable algorithms for hierarchical agglomerative clustering ...

Please sign up or login with your details

Forgot password? Click here to reset