Adapting the Bron–Kerbosch algorithm for enumerating maximal cliques in temporal graphs
- 251 Downloads
Dynamics of interactions play an increasingly important role in the analysis of complex networks. A modeling framework to capture this is temporal graphs which consist of a set of vertices (entities in the network) and a set of time-stamped binary interactions between the vertices. We focus on enumerating Δ-cliques, an extension of the concept of cliques to temporal graphs: for a given time period Δ, a Δ-clique in a temporal graph is a set of vertices and a time interval such that all vertices interact with each other at least after every Δ time steps within the time interval. Viard, Latapy, and Magnien (ASONAM 2015, TCS 2016) proposed a greedy algorithm for enumerating all maximal Δ-cliques in temporal graphs. In contrast to this approach, we adapt the Bron–Kerbosch algorithm—an efficient, recursive backtracking algorithm which enumerates all maximal cliques in static graphs—to the temporal setting. We obtain encouraging results both in theory (concerning worst-case running time analysis based on the parameter “Δ-slice degeneracy” of the underlying graph) as well as in practice with experiments on real-world data. The latter culminates in an improvement for most interesting Δ-values concerning running time in comparison with the algorithm of Viard, Latapy, and Magnien.
KeywordsData science Time-varying networks Δ-clique Community detection Degeneracy Fixed-parameter tractability Experimental analysis
Anne-Sophie Himmel, Hendrik Molter and Manuel Sorge were partially supported by DFG, Project DAPA (NI 369/12). Manuel Sorge gratefully acknowledges support by the People Programme (Marie Curie Actions) of the European Union’s Seventh Framework Programme (FP7/2007–2013) under REA grant Agreement Number 631163.11 and by the Israel Science Foundation (Grant No. 551145/14). We are grateful to two anonymous SNAM reviewers whose feedback helped to significantly improve the presentation and to eliminate some bugs and inconsistencies.
- Erlebach T, Hoffmann M, Kammer F (2015) On temporal graph exploration. In: Proceedings of the 42nd International Colloquium on Automata, Languages, and Programming (ICALP 2015), Springer, LNCS, vol 9134, pp 444–455Google Scholar
- Goerke R (2011) Email network of KIT informatics. http://i11www.iti.uni-karlsruhe.de/en/projects/spp1307/emaildata
- Hagberg AA, Schult DA, Swart PJ (2008) Exploring network structure, dynamics, and function using NetworkX. In: Proceedings of the 7th Python in Science Conference (SciPy 2008), pp 11–15Google Scholar
- Himmel AS (2016) Enumerating maximal cliques in temporal graphs. Bachelorthesis, TU Berlin, URL http://fpt.akt.tu-berlin.de/publications/theses/BA-anne-sophie-himmel.pdf, bachelor thesis
- Kleinberg J, Tardos É (2006) Algorithm Design. Pearson Education, LondonGoogle Scholar
- Leskovec J, Kleinberg J, Faloutsos C (2005) Graphs over time: densification laws, shrinking diameters and possible explanations. In: Proceedings of the eleventh ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ACM, pp 177–187Google Scholar
- Viard J, Latapy M, Magnien C (2015) Revealing contact patterns among high-school students using maximal cliques in link streams. In: Proceedings of the 2015 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining, ACM, pp 1517–1522Google Scholar