Abstract
We consider the maintenance of the set of all maximal cliques in a dynamic graph that is changing through the addition or deletion of edges. We present nearly tight bounds on the magnitude of change in the set of maximal cliques when edges are added to the graph, as well as the first change-sensitive algorithm for incremental clique maintenance under edge additions, whose runtime is proportional to the magnitude of the change in the set of maximal cliques, when the number of edges added is small. Our algorithm can also be applied to the decremental case, when edges are deleted from the graph. We present experimental results showing these algorithms are efficient in practice and are faster than prior work by two to three orders of magnitude.
Similar content being viewed by others
References
Angel, A., Koudas, N., Sarkas, N., Srivastava, D., Svendsen, M., Tirthapura, S.: Dense subgraph maintenance under streaming edge weight updates for real-time story identification. VLDB J. 23, 1–25 (2013)
Avis, D., Fukuda, K.: Reverse search for enumeration. Discrete Appl. Math. 65, 21–46 (1993)
Bahmani, B., Kumar, R., Vassilvitskii, S.: Densest subgraph in streaming and mapreduce. VLDB 5(5), 454–465 (2012)
Bron, C., Kerbosch, J.: Algorithm 457: finding all cliques of an undirected graph. Commun. ACM 16(9), 575–577 (1973)
Chakrabarti, D., Zhan, Y., Faloutsos, C.: R-mat: a recursive model for graph mining. In: Proceedings of the 2004 SIAM International Conference on Data Mining, pp. 442–446. SIAM (2004)
Chateau, A., Riou, P., Rivals, E.: Approximate common intervals in multiple genome comparison. In: 2011 IEEE International Conference on Bioinformatics and Biomedicine (BIBM), pp. 131–134. IEEE (2011)
Cheng, J., Ke, Y., Fu, A.W.-C., Yu, J.X., Zhu, L.: Finding maximal cliques in massive networks. TODS 36(4), 21 (2011)
Chiba, N., Nishizeki, T.: Arboricity and subgraph listing algorithms. SIAM J. Comput. 14, 210–223 (1985)
Das, A., Sanei-Mehri, S.-V., Tirthapura, S.: Shared-memory parallel maximal clique enumeration. ArXiv preprint arXiv:1807.09417 (2018)
Das, A., Tirthapura, S.: A change-sensitive algorithm for maintaining maximal bicliques in a dynamic bipartite graph. CoRR. arXiv:abs/1707.08272 (2017)
Driskell, A.C., Ané, C., Burleigh, J.G., McMahon, M.M., O’Meara, B.C., Sanderson, M.J.: Prospects for building the tree of life from large sequence databases. Science 306(5699), 1172–1174 (2004)
Duan, D., Li, Y., Li, R., Lu, Z.: Incremental k-clique clustering in dynamic social networks. Artif. Intell. Rev. 38, 1–19 (2012)
Eppstein, D., Löffler, M., Strash, D.: Listing all maximal cliques in sparse graphs in near-optimal time. In: ISAAC, pp. 403–414 (2010)
Eppstein, D., Strash, D.: Listing all maximal cliques in large sparse real-world graphs. In: Pardalos, P., Rebennack, S. (eds.) Experimental Algorithms, LNCS, vol. 6630, pp. 364–375. Springer, Berlin (2011)
Erds, P., Rényi, A.: On the evolution of random graphs. Publ. Math. Inst. Hung. Acad. Sci 5, 17–61 (1960)
Fan, W., Hu, C., Tian, C.: Incremental graph computations: doable and undoable. In: Proceedings of the 2017 ACM International Conference on Management of Data, pp. 155–169. ACM (2017)
Galbrun, E., Gionis, A., Tatti, N.: Overlapping community detection in labeled graphs. Data Min. Knowl. Discov. 28(5–6), 1586–1610 (2014)
Gibson, D., Kumar, R., Tomkins, A.: Discovering large dense subgraphs in massive graphs. In: VLDB, pp. 721–732 (2005)
Hanneman, R.A., Riddle, M.: Introduction to Social Network Methods. http://faculty.ucr.edu/~hanneman/nettext/. Textbook on the web
Huang, X., Cheng, H., Qin, L., Tian, W., Yu. J.X.: Querying k-truss community in large and dynamic graphs. In: SIGMOD, pp. 1311–1322 (2014)
Hung, S.-C., Araujo, M., Faloutsos, C.: Distributed community detection on edge-labeled graphs using spark. In: 12th International Workshop on Mining and Learning with Graphs (MLG), vol. 113 (2016)
Hussain, M.M.-U., Wang, A., Trajcevski, G.: Co-maxrs: continuous maximizing range-sum query. Sciences 305, 110–129 (2015)
Java, A., Song, X., Finin, T., Tseng, B.L.: Why we twitter: an analysis of a microblogging community. In: WebKDD/SNA-KDD, pp. 118–138 (2007)
Johnson, D.S., Yannakakis, M., Papadimitriou, C.H.: On generating all maximal independent sets. Inf. Process. Lett. 27(3), 119–123 (1988)
Koch, I.: Enumerating all connected maximal common subgraphs in two graphs. Theor. Comput. Sci. 250(1), 1–30 (2001)
Kose, F., Weckwerth, W., Linke, T., Fiehn, O.: Visualizing plant metabolomic correlation networks using clique-metabolite matrices. Bioinformatics 17(12), 1198–1208 (2001)
Kumar, R., Raghavan, P., Rajagopalan, S., Tomkins, A.: Trawling the web for emerging cyber-communities. Comput. Netw. 31(11), 1481–1493 (1999)
Lehmann, S., Schwartz, M., Hansen, L.K.: Biclique communities. Phys. Rev. E 78, 016108 (2008)
Leskovec, J., Krevl, A.: SNAP datasets: stanford large network dataset collection. http://snap.stanford.edu/data (2014)
Li, R., Yu, J.X., Mao, R.: Efficient core maintenance in large dynamic graphs. TKDE 26(10), 2453–2465 (2014)
Lo, D., Surian, D., Zhang, K., Lim, E.-P.: Mining direct antagonistic communities in explicit trust networks. In: CIKM, pp. 1013–1018 (2011)
Makino, K., Uno, T.: New algorithms for enumerating all maximal cliques. In: SWAT, pp. 260–272 (2004)
McGregor, A., Tench, D., Vorotnikova, S., Vu, H.T.: Densest subgraph in dynamic graph streams. In: MFCS, pp. 472–482 (2015)
Moon, J.W., Moser, L.: On cliques in graphs. Isr. J. Math. 3(1), 23–28 (1965)
Mukherjee, A.P., Tirthapura, S.: Enumerating maximal bicliques from a large graph using mapreduce. IEEE Trans. Serv. Comput. 10(5), 771–784 (2017)
Mukherjee, A.P., Xu, P., Tirthapura, S.: Enumeration of maximal cliques from an uncertain graph. IEEE Trans. Knowl. Data Eng. 29(3), 543–555 (2017)
Ottosen, T.J., Vomlel, J.: Honour thy neighbour: clique maintenance in dynamic graphs. In: PGM, pp. 201–208 (2010)
Rome, J.E., Haralick, R.M.: Towards a formal concept analysis approach to exploring communities on the world wide web. In: Ganter, B., Wille, R. (eds.) Formal Concept Analysis, LNCS, vol. 3403, pp. 33–48. Springer, Berlin (2005)
Sanderson, M.J., Driskell, A.C., Ree, R.H., Eulenstein, O., Langley, S.: Obtaining maximal concatenated phylogenetic data sets from large sequence databases. Mol. Biol. Evol. 20(7), 1036–1042 (2003)
Sariyüce, A.E., Gedik, B., Jacques-Silva, G., Wu, K., Çatalyürek, Ü.V.: Streaming algorithms for k-core decomposition. PVLDB 6(6), 433–444 (2013)
Simsiri, N., Tangwongsan, K., Tirthapura, S., Wu, K.-L.: Work-efficient parallel union-find with applications to incremental graph connectivity. In: European Conference on Parallel Processing, pp. 561–573. Springer (2016)
Stix, V.: Finding all maximal cliques in dynamic graphs. Comput. Optim. Appl. 27(2), 173–186 (2004)
Sun, S., Wang, Y., Liao, W., Wang, W.: Mining maximal cliques on dynamic graphs efficiently by local strategies. In: 2017 IEEE 33rd International Conference on Data Engineering (ICDE), pp. 115–118. IEEE (2017)
Svendsen, M., Mukherjee, A.P., Tirthapura, S.: Mining maximal cliques from a large graph using mapreduce: tackling highly uneven subproblem sizes. J. Parallel Distrib. Comput. 79–80, 104–114 (2015)
Thorup, M.: Decremental dynamic connectivity. J. Algorithms 33(2), 229–243 (1999)
Tomita, E., Kameda, T.: An efficient branch-and-bound algorithm for finding a maximum clique with computational experiments. J. Glob. Optim. 44(2), 311 (2009)
Tomita, E., Sutani, Y., Higashi, T., Takahashi, S., Wakatsuki, M.: A simple and faster branch-and-bound algorithm for finding a maximum clique. In: Proceedings of the WALCOM: Algorithms and Computation, 4th International Workshop, WALCOM 2010, Dhaka, Bangladesh, February 10–12, 2010, pp. 191–203 (2010)
Tomita, E., Tanaka, A., Takahashi, H.: The worst-case time complexity for generating all maximal cliques and computational experiments. Theor. Comput. Sci. 363(1), 28–42 (2006)
Tomita, E., Yoshida, K., Hatta, T., Nagao, A., Ito, H., Wakatsuki, M.: A much faster branch-and-bound algorithm for finding a maximum clique. In: Proceedings of the Frontiers in Algorithmics, 10th International Workshop, FAW 2016, Qingdao, China, June 30–July 2, 2016, pp. 215–226 (2016)
Tsukiyama, S., Ide, M., Ariyoshi, H., Shirakawa, I.: A new algorithm for generating all the maximal independent sets. SIAM J. Comput. 6(3), 505–517 (1977)
Wulff-Nilsen, C.: Faster deterministic fully-dynamic graph connectivity. In: Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 1757–1769. SIAM (2013)
Yan, C., Burleigh, J.G., Eulenstein, O.: Identifying optimal incomplete phylogenetic data sets from sequence databases. Mol. phylogenetics Evol. 35(3), 528–535 (2005)
Acknowledgements
AD and ST were supported in part by NSF Grants 1527541, 1725702, and 1632116.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Das, A., Svendsen, M. & Tirthapura, S. Incremental maintenance of maximal cliques in a dynamic graph. The VLDB Journal 28, 351–375 (2019). https://doi.org/10.1007/s00778-019-00540-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00778-019-00540-5