Finding maximum cliques in large networks is a challenging combinatorial problem with many real-world applications. We present a fast algorithm to achieve the exact solution for the maximum clique problem in large sparse networks based on efficient graph decomposition. A bunch of effective techniques is being used to greatly prune the graph and a novel concept called Complete-Upper-Bound-Induced Subgraph (CUBIS) is proposed to ensure that the structures with the potential to form the maximum clique are retained in the process of graph decomposition. Our algorithm first pre-prunes peripheral nodes, subsequently, one or two small-scale CUBISs are constructed guided by the core number and current maximum clique size. Bron-Kerbosch search is performed on each CUBIS to find the maximum clique. Experiments on 50 empirical networks with a scale of up to 20 million show the CUBIS scales are largely independent of the original network scale. This enables an approximately linear runtime, making our algorithm amenable for large networks. Our work provides a new framework for effectively solving maximum clique problems on massive sparse graphs, which not only makes the graph scale no longer the bottleneck but also shows some light on solving other clique-related problems.
翻译:在大规模网络中寻找最大团是一个具有挑战性的组合问题,在现实世界中有着广泛的应用。我们提出了一种基于高效图分解的快速算法,用于大规模稀疏网络中最大团问题的精确求解。该算法采用了一系列高效剪枝技术,并提出了一种名为完全上界诱导子图(CUBIS)的新概念,以确保在图的分解过程中保留可能形成最大团的结构。我们的算法首先对边缘节点进行预剪枝,随后根据核心数和当前最大团大小构建一个或两个小规模的CUBIS。在每个CUBIS上执行Bron-Kerbosch搜索以找到最大团。在50个规模高达2000万节点的实证网络上的实验表明,CUBIS的规模在很大程度上与原网络规模无关。这使得算法运行时间近似线性,从而适用于大规模网络。我们的工作为在巨型稀疏图中有效求解最大团问题提供了新框架,不仅使图规模不再成为瓶颈,也为解决其他团相关问题提供了启示。