Efficient Algorithms for Finding Maximum and Maximal Cliques and Their Applications

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10167)

Abstract

The problem of finding a maximum clique or enumerating all maximal cliques is very important and has been explored in several excellent survey papers. Here, we focus our attention on the step-by-step examination of a series of branch-and-bound depth-first search algorithms: Basics, MCQ, MCR, MCS, and MCT. Subsequently, as with the depth-first search as above, we present our algorithm, CLIQUES, for enumerating all maximal cliques. Finally, we describe some of the applications of the algorithms and their variants in bioinformatics, data mining, and other fields.

References

  1. 1.
    Akutsu, T., Hayashida, M., Bahadur, D.K.C., Tomita, E., Suzuki, J., Horimoto, K.: Dynamic programming and clique based approaches for protein threading with profiles and constraints. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. E89–A, 1215–1222 (2006)CrossRefGoogle Scholar
  2. 2.
    Andrade, D.V., Resende, M.G.C., Werneck, R.F.: Fast local search for the maximum independent set problem. J. Heuristics 18, 525–547 (2012)CrossRefGoogle Scholar
  3. 3.
    Bahadur, D.K.C., Akutsu, T., Tomita, E., Seki, T., Fujiyama, A.: Point matching under non-uniform distortions and protein side chain packing based on an efficient maximum clique algorithm. Genome Inf. 13, 143–152 (2002)Google Scholar
  4. 4.
    Bahadur, D.K.C., Tomita, E., Suzuki, J., Akutsu, T.: Protein side-chain packing problem: a maximum edge-weight clique algorithmic approach. J. Bioinform. Comput. Biol. 3, 103–126 (2005)CrossRefGoogle Scholar
  5. 5.
    Bahadur, D.K.C., Tomita, E., Suzuki, J., Horimoto, K., Akutsu, T.: Protein threading with profiles and distance constraints using clique based algorithms. J. Bioinform. Comput. Biol. 4, 19–42 (2006)CrossRefGoogle Scholar
  6. 6.
    Batsyn, M., Goldengorin, B., Maslov, E., Pardalos, P.M.: Improvements to MCS algorithm for the maximum clique problem. J. Comb. Optim. 27, 397–416 (2014)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Bomze, I.M., Budinich, M., Pardalos, P.M., Pelillo, M.: The maximum clique problem. In: Du, D.-Z., Pardalos, P.M. (eds.) Handbook of Combinatorial Optimization, Supplement vol. A, pp. 1–74. Kluwer Academic Publishers (1999)Google Scholar
  8. 8.
    Bron, C., Kerbosch, J.: Algorithm 457, finding all cliques of an undirected graph. Commun. ACM 16, 575–577 (1973)CrossRefMATHGoogle Scholar
  9. 9.
    Brown, J.B., Bahadur, D.K.C., Tomita, E., Akutsu, T.: Multiple methods for protein side chain packing using maximum weight cliques. Genome Inf. 17, 3–12 (2006)Google Scholar
  10. 10.
    Butenko, S., Wilhelm, W.E.: Clique-detection models in computational biochemistry and genomics - invited review-. Eur. J. Oper. Res. 173, 1–17 (2006)CrossRefMATHGoogle Scholar
  11. 11.
    Carraghan, R., Pardalos, P.M.: An exact algorithm for the maximum clique problem. Oper. Res. Lett. 9, 375–382 (1990)CrossRefMATHGoogle Scholar
  12. 12.
    Eppstein, D., Löffler, M., Strash, D.: Listing all maximal cliques in large sparse real-world graphs. J. Exp. Algorithmics 18, 3.1:1–3.1:21 (2013)CrossRefGoogle Scholar
  13. 13.
    Fujii, T., Tomita, E.: On efficient algorithms for finding a maximum clique. Technical report IECE, AL81-113, pp. 25–34 (1982)Google Scholar
  14. 14.
    Fukagawa, D., Tamura, T., Takasu, A., Tomita, E., Akutsu, T.: A clique-based method for the edit distance between unordered trees and its application to analysis of glycan structure. BMC Bioinform. 12(S–1), S:13 (2011)CrossRefGoogle Scholar
  15. 15.
    Hatta, T., Tomita, E., Ito, H., Wakatsuki, M.: An improved branch-and-bound algorithm for finding a maximum clique. In: Proceedings of the Summer LA Symposium, no. 9, pp. 1–8 (2015)Google Scholar
  16. 16.
    Hotta, K., Tomita, E., Takahashi, H.: A view-invariant human face detection method based on maximum cliques. Trans. IPSJ 44(SIG14(TOM9)), 57–70 (2003)Google Scholar
  17. 17.
    Johnson, D.S., Trick, M.A. (eds.): Cliques, Coloring, and Satisfiability. DIMACS Series in Discrete Mathematics and Theoretical Computer Science, vol. 26. American Mathematical Society (1996)Google Scholar
  18. 18.
    Karp, R.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W. (eds.) Comlexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972)CrossRefGoogle Scholar
  19. 19.
    Katayama, K., Hamamoto, A., Narihisa, H.: An effective local search for the maximum clique problem. Inf. Process. Lett. 95, 503–511 (2005)MathSciNetCrossRefMATHGoogle Scholar
  20. 20.
    Kobayashi, S., Kondo, T., Okuda, K., Tomita, E.: Extracting globally structure free sequences by local structure freeness. In: Chen, J., Reif, J. (eds.) Proceedings of Ninth International Meeting on DNA Based Computers, p. 206 (2003)Google Scholar
  21. 21.
    Kohata, Y., Nishijima, T., Tomita, E., Fujihashi, C., Takahashi, H.: Efficient algorithms for finding a maximum clique. Technical report IEICE, COM89-113, pp. 1–8 (1990)Google Scholar
  22. 22.
    Konc, J., Janežič, D.: An improved branch and bound algorithm for the maximum clique problem. MATCH Commun. Math. Comput. Chem. 58, 569–590 (2007)MathSciNetMATHGoogle Scholar
  23. 23.
    Li, C.M., Quan, Z.: Combining graph structure exploitation and propositional reasoning for the maximum clique problem. In: Proceedings of IEEE ICTAI, pp. 344–351 (2010)Google Scholar
  24. 24.
    Makino, K., Uno, T.: New algorithms for enumerating all maximal cliques. In: Hagerup, T., Katajainen, J. (eds.) SWAT 2004. LNCS, vol. 3111, pp. 260–272. Springer, Heidelberg (2004). doi:10.1007/978-3-540-27810-8_23 CrossRefGoogle Scholar
  25. 25.
    Maslov, E., Batsyn, M., Pardalos, P.M.: Speeding up branch and bound algorithms for solving the maximum clique problem. J. Glob. Optim. 59, 1–21 (2014)MathSciNetCrossRefMATHGoogle Scholar
  26. 26.
    Matsunaga, T., Yonemori, C., Tomita, E., Muramatsu, M.: Clique-based data mining for related genes in a biomedical database. BMC Bioinform. 10, 205 (2009)CrossRefGoogle Scholar
  27. 27.
    Moon, J.W., Moser, L.: On cliques in graphs. Israel J. Math. 3, 23–28 (1965)MathSciNetCrossRefMATHGoogle Scholar
  28. 28.
    Mori, T., Tamura, T., Fukagawa, D., Takasu, A., Tomita, E., Akutsu, T.: A clique-based method using dynamic programming for computing edit distance between unordered trees. J. Comput. Biol. 19, 1089–1104 (2012)MathSciNetCrossRefGoogle Scholar
  29. 29.
    Nagai, M., Tabuchi, T., Tomita, E., Takahashi, H.: An experimental evaluation of some algorithms for finding a maximum clique. In: Conference Records of the National Convention of IEICE 1988, p. D-348 (1988)Google Scholar
  30. 30.
    Nakui, Y., Nishino, T., Tomita, E., Nakamura, T.: On the minimization of the quantum circuit depth based on a maximum clique with maximum vertex weight. Technical report RIMS, 1325, Kyoto University, pp. 45–50 (2003)Google Scholar
  31. 31.
    Okubo, Y., Haraguchi, M., Tomita, E.: Structural change pattern mining based on constrained maximal k-plex search. In: Ganascia, J.-G., Lenca, P., Petit, J.-M. (eds.) DS 2012. LNCS (LNAI), vol. 7569, pp. 284–298. Springer, Heidelberg (2012). doi:10.1007/978-3-642-33492-4_23 CrossRefGoogle Scholar
  32. 32.
    Okubo, Y., Haraguchi, M., Tomita, E.: Relational change pattern mining based on modularity difference. In: Ramanna, S., Lingras, P., Sombattheera, C., Krishna, A. (eds.) MIWAI 2013. LNCS (LNAI), vol. 8271, pp. 187–198. Springer, Heidelberg (2013). doi:10.1007/978-3-642-44949-9_18 CrossRefGoogle Scholar
  33. 33.
    Okubo, Y., Haraguchi, M., Tomita, E.: Enumerating maximal isolated cliques based on vertex-dependent connection lower bound. In: Perner, P. (ed.) MLDM 2016. LNCS (LNAI), vol. 9729, pp. 569–583. Springer, Heidelberg (2016)CrossRefGoogle Scholar
  34. 34.
    Pardalos, P.M., Xue, J.: The maximum clique problem. J. Glob. Optim. 4, 301–328 (1994)MathSciNetCrossRefMATHGoogle Scholar
  35. 35.
    Pattillo, J., Youssef, N., Butenko, S.: Clique relaxation models in social network analysis. In: Thai, M.T., Pardalos, P.M. (eds.) Handbook of Optimization in Complex Networks: Communication and Social Networks. Springer Optimization and Its Applications, vol. 58, pp. 143–162. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  36. 36.
    Segundo, P.S., Nikolaev, A., Batsyn, M.: Infra-chromatic bound for exact maximum clique search. Comput. Oper. Res. 64, 293–303 (2015)MathSciNetCrossRefMATHGoogle Scholar
  37. 37.
    Shindo, M., Tomita, E., Maruyama, Y.: An efficient algorithm for finding a maximum clique. Technical report IECE, CAS86-5, pp. 33–40 (1986)Google Scholar
  38. 38.
    Shindo, M., Tomita, E.: A simple algorithm for finding a maximum clique and its worst-case time complexity. Syst. Comput. Jpn. 21, 1–13 (1990). WileyMathSciNetCrossRefGoogle Scholar
  39. 39.
    Sutani, Y., Higashi, T., Tomita, E., Takahashi, S., Nakatani, H.: A faster branch-and-bound algorithm for finding a maximum clique. Technical report IPSJ, 2006-AL-108, pp. 79–86 (2006)Google Scholar
  40. 40.
    Tarjan, R.E., Trojanowski, A.E.: Finding a maximum independent set. SIAM J. Comput. 6(3), 537–546 (1977)MathSciNetCrossRefMATHGoogle Scholar
  41. 41.
    Tomita, E., Yamada, M.: An algorithm for finding a maximum complete subgraph. In: Conference Records of the National Convention of IECE 1978, p. 8 (1978)Google Scholar
  42. 42.
    Tomita, E., Tanaka, A., Takahashi, H.: The worst-case time complexity for finding all the cliques. Technical report, University of Electro-Communications, UEC-TR-C5(2) (1988). (Reference [238] in [34], Reference [308] in [7]). http://id.nii.ac.jp/1438/00001898/
  43. 43.
    Tomita, E., Kohata, Y., Takahashi, H.: A simple algorithm for finding a maximum clique. Technical report, University of Electro-Communications, UEC-TR-C5(1) (1988). (Reference [239] in [34], Reference [309] in [7]). http://id.nii.ac.jp/1438/00001899/
  44. 44.
    Tomita, E., Mitsuma, S., Takahashi, H.: Two algorithms for finding a near-maximum clique. Technical report, University of Electro-Communications, UEC-TR-C1 (1988). (Reference [240] in [34], Reference [310] in [7]). http://id.nii.ac.jp/1438/00001900/
  45. 45.
    Tomita, E., Seki, T.: An efficient branch-and-bound algorithm for finding a maximum clique. In: Calude, C.S., Dinneen, M.J., Vajnovszki, V. (eds.) DMTCS 2003. LNCS, vol. 2731, pp. 278–289. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  46. 46.
    Tomita, E., Tanaka, A., Takahashi, H.: The worst-case time complexity for generating all maximal cliques and computational experiments. Theoret. Comput. Sci. 363, 28–42 (2006). (Special Issue on COCOON 2004)MathSciNetCrossRefMATHGoogle Scholar
  47. 47.
    Tomita, E., Kameda, T.: An efficient branch-and-bound algorithm for finding a maximum clique with computational experiments. J. Glob. Optim. 37, 95–111 (2007). J. Glob. Optim. 44, 311 (2009)MathSciNetCrossRefMATHGoogle Scholar
  48. 48.
    Tomita, E., Sutani, Y., Higashi, T., Takahashi, S., Wakatsuki, M.: A simple and faster branch-and-bound algorithm for finding a maximum clique. In: Rahman, M.S., Fujita, S. (eds.) WALCOM 2010. LNCS, vol. 5942, pp. 191–203. Springer, Heidelberg (2010). doi:10.1007/978-3-642-11440-3_18 CrossRefGoogle Scholar
  49. 49.
    Tomita, E., Akutsu, T., Matsunaga, T.: Efficient algorithms for finding maximum and maximal cliques: Effective tools for bioinformatics. In: Laskovski, A.N. (ed.) Biomedical Engineering, Trends in Electronics, Communications and Software, pp. 625–640. InTech, Rijeka (2011). http://cdn.intechopen.com/pdfs-wm/12929.pdf Google Scholar
  50. 50.
    Tomita, E., Sutani, Y., Higashi, T., Wakatsuki, M.: A simple and faster branch-and-bound algorithm for finding a maximum clique with computational experiments. IEICE Trans. Inf. Syst. E96–D, 1286–1298 (2013). http://id.nii.ac.jp/1438/00000287/ CrossRefMATHGoogle Scholar
  51. 51.
    Tomita, E.: Clique enumeration. In: Kao, M.-Y. (ed.) Encyclopedia of Algorithms, 2nd edn, pp. 313–317. Springer, Heidelberg (2016)Google Scholar
  52. 52.
    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: Zhu, D., Bereg, S. (eds.) FAW 2016. LNCS, vol. 9711, pp. 215–226. Springer, Heidelberg (2016)CrossRefGoogle Scholar
  53. 53.
    Tsukiyama, S., Ide, M., Ariyoshi, H., Shirakawa, I.: A new algorithm for generating all the maximal independent sets. SIAM J. Comput. 6, 505–517 (1977)MathSciNetCrossRefMATHGoogle Scholar
  54. 54.
    Wu, Q., Hao, J.K.: A review on algorithms for maximum clique problems - invited review-. Eur. J. Oper. Res. 242, 693–709 (2015)CrossRefMATHGoogle Scholar
  55. 55.
    Yonemori, C., Matsunaga, T., Sekine, J., Tomita, E.: A structural analysis of enterprise relationship using cliques. DBSJ J. 7, 55–60 (2009)Google Scholar
  56. 56.
    Zhai, H., Haraguchi, M., Okubo, Y., Tomita, E.: Enumerating maximal clique sets with pseudo-clique constraint. In: Japkowicz, N., Matwin, S. (eds.) DS 2015. LNCS (LNAI), vol. 9356, pp. 324–339. Springer, Heidelberg (2015). doi:10.1007/978-3-319-24282-8_28 CrossRefGoogle Scholar
  57. 57.
    Zhai, H., Haraguchi, M., Okubo, Y., Tomita, E.: A fast and complete algorithm for enumerating pseudo-cliques in large graphs. Int. J. Data Sci. Anal. 2, 145–158 (2016). SpringerCrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.The Advanced Algorithms Research LaboratoryThe University of Electro-CommunicationsChofuJapan

Personalised recommendations