The ACO Seminar (2019–2020)
Abstract:
Cliques are important structures in network science that have been used in numerous applications including spam detection, graph analysis, graph modeling, community detection among others. Obtaining the counts of \(k\)-cliques in real-world graphs with millions of nodes and edges is a challenging problem due to combinatorial explosion. Essentially, as \(k\) increases, the number of \(k\)-cliques goes up exponentially. Existing techniques are (typically) able to count \(k\)-cliques for only upto \(k=5\).
In this work, we present two algorithms for obtaining \(k\)-clique counts that improve the state of the art, both in theory and in practice. Our first method is a randomized algorithm that gives a \((1+\epsilon)\)-approximation for the number of \(k\)-cliques in a graph. Its running time is proportional to the size of an object called the Turán Shadow, which, for real-world graphs is found to be small. In practice, this algorithm works well for \(k \leqslant 10\) and gives orders of magnitude improvement over existing methods. This paper won the Best Paper Award at WWW, 2017.
Our second, and somewhat surprising result, is a simple but powerful algorithm called Pivoter that gives the exact \(k\)-clique counts for all \(k\) and runs in \(O(3^{n/3})\) time in the worst case. It uses a classic technique called pivoting that drastically cuts down the search space for cliques and builds a structure called the Succinct Clique Tree from which global and local (per-vertex and per-edge) \(k\)-clique counts can be easily read off. In practice, the algorithm is orders of magnitude faster than even other parallel algorithms and makes clique counting feasible for a number of graphs for which clique counting was infeasible before. This paper won the Best Paper Award at WSDM, 2020.
Joint work with C. Seshadhri.
Back to the ACO home page Back to the ACO Seminar schedule