Partitioning Complex Networks via Size-Constrained Clustering

  • Henning Meyerhenke
  • Peter Sanders
  • Christian Schulz
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8504)

Abstract

The most commonly used method to tackle the graph partitioning problem in practice is the multilevel approach. During a coarsening phase, a multilevel graph partitioning algorithm reduces the graph size by iteratively contracting nodes and edges until the graph is small enough to be partitioned by some other algorithm. A partition of the input graph is then constructed by successively transferring the solution to the next finer graph and applying a local search algorithm to improve the current solution.

In this paper, we describe a novel approach to partition graphs effectively especially if the networks have a highly irregular structure. More precisely, our algorithm provides graph coarsening by iteratively contracting size-constrained clusterings that are computed using a label propagation algorithm. The same algorithm that provides the size-constrained clusterings can also be used during uncoarsening as a fast and simple local search algorithm.

Depending on the algorithm’s configuration, we are able to compute partitions of very high quality outperforming all competitors, or partitions that are comparable to the best competitor in terms of quality, hMetis, while being nearly an order of magnitude faster on average. The fastest configuration partitions the largest graph available to us with 3.3 billion edges using a single machine in about ten minutes while cutting less than half of the edges than the fastest competitor, kMetis.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abou-Rjeili, A., Karypis, G.: Multilevel Algorithms for Partitioning Power-Law Graphs. In: Proc. of 20th Int. Parallel and Distributed Processing Symp. (2006)Google Scholar
  2. 2.
    Bader, D.A., Meyerhenke, H., Sanders, P., Schulz, C., Kappes, A., Wagner, D.: Benchmarking for Graph Clustering and Partitioning. In: Encyclopedia of Social Network Analysis and Mining (to appear)Google Scholar
  3. 3.
    Bichot, C., Siarry, P. (eds.): Graph Partitioning. Wiley (2011)Google Scholar
  4. 4.
    Bui, T.N., Jones, C.: Finding Good Approximate Vertex and Edge Partitions is NP-Hard. Information Processing Letters 42(3), 153–159 (1992)CrossRefMATHMathSciNetGoogle Scholar
  5. 5.
    Buluç, A., Meyerhenke, H., Safro, I., Sanders, P., Schulz, C.: Recent Advances in Graph Partitioning. In: Algorithm Engineering – Selected Topics, ArXiv:1311.3144 (to appear, 2014)Google Scholar
  6. 6.
    Chevalier, C., Safro, I.: Comparison of Coarsening Schemes for Multilevel Graph Partitioning. In: Stützle, T. (ed.) LION 3. LNCS, vol. 5851, pp. 191–205. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Costa, L.F., Oliveira Jr., O.N., Travieso, G., Rodrigues, F.A., Boas, P.R.V., Antiqueira, L., Viana, M.P., Rocha, L.E.C.: Analyzing and Modeling Real-World Phenomena with Complex Networks: A Survey of Applications. Adv. in Physics 60(3), 329–412 (2011)CrossRefGoogle Scholar
  8. 8.
    Diekmann, R., Preis, R., Schlimbach, F., Walshaw, C.: Shape-optimized Mesh Partitioning and Load Balancing for Parallel Adaptive FEM. Par. Computing 26(12), 1555–1581 (2000)CrossRefMATHGoogle Scholar
  9. 9.
    Garey, M.R., Johnson, D.S., Stockmeyer, L.: Some Simplified NP-Complete Problems. In: Proc. of the 6th ACM Symp. on Theory of Computing, STOC 1974, pp. 47–63. ACM (1974)Google Scholar
  10. 10.
    Hendrickson, B., Kolda, T.G.: Graph Partitioning Models for Parallel Computing. Parallel Computing 26(12), 1519–1534 (2000)CrossRefMATHMathSciNetGoogle Scholar
  11. 11.
    Holtgrewe, M., Sanders, P., Schulz, C.: Engineering a Scalable High Quality Graph Partitioner. In: Proc. of the 24th Int. Parallal and Distributed Processing Symp., pp. 1–12 (2010)Google Scholar
  12. 12.
    Karypis, G., Kumar, V.: A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs. SIAM J. on Scientific Computing 20(1), 359–392 (1998)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Karypis, G., Kumar, V.: Multilevel k-Way Hypergraph Partitioning. In: Proc. of the 36th ACM/IEEE Design Automation Conference, pp. 343–348. ACM (1999)Google Scholar
  14. 14.
    University of Milano Laboratory of Web Algorithms. Datasets, http://law.dsi.unimi.it/datasets.php
  15. 15.
    Leskovec, J.: Stanford Network Analysis Package (SNAP), http://snap.stanford.edu/index.html
  16. 16.
    Meyerhenke, H., Monien, B., Schamberger, S.: Accelerating Shape Optimizing Load Balancing for Parallel FEM Simulations by Algebraic Multigrid. In: Proc. of 20th Int. Parallel and Distributed Processing Symp. (2006)Google Scholar
  17. 17.
    Meyerhenke, H., Sanders, P., Schulz, C.: Partitioning Complex Networks via Size-Constrained Clustering. Technical Report arxiv:1402.3281 (2014)Google Scholar
  18. 18.
    Ovelgönne, M.: Distributed Community Detection in Web-Scale Networks. In: 2013 Int. Conf. on Advances in Social Networks Analysis and Mining, pp. 66–73 (2013)Google Scholar
  19. 19.
    Ovelgönne, M., Geyer-Schulz, A.: An Ensemble Learning Strategy for Graph Clustering. In: Graph Partitioning and Graph Clustering. Contemporary Mathematics. AMS and DIMACS, vol. (588) (2013)Google Scholar
  20. 20.
    Pellegrinim, F.: Scotch Home Page, http://wwwlabri.fr/pelegrin/scotch.
  21. 21.
    Raghavan, U.N., Albert, R., Kumara, S.: Near Linear Time Algorithm to Detect Community Structures in Large-Scale Networks. Physical Review E 76(3) (2007)Google Scholar
  22. 22.
    Safro, I., Sanders, P., Schulz, C.: Advanced Coarsening Schemes for Graph Partitioning. In: Klasing, R. (ed.) SEA 2012. LNCS, vol. 7276, pp. 369–380. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  23. 23.
    Sanders, P., Schulz, C.: KaHIP – Karlsruhe High Qualtity Partitioning Homepage, http://algo2.iti.kit.edu/documents/kahip/index.html
  24. 24.
    Sanders, P., Schulz, C.: Engineering Multilevel Graph Partitioning Algorithms. In: Demetrescu, C., Halldórsson, M.M. (eds.) ESA 2011. LNCS, vol. 6942, pp. 469–480. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  25. 25.
    Sanders, P., Schulz, C.: Think Locally, Act Globally: Highly Balanced Graph Partitioning. In: Bonifaci, V., Demetrescu, C., Marchetti-Spaccamela, A. (eds.) SEA 2013. LNCS, vol. 7933, pp. 164–175. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  26. 26.
    Schulz, C.: High Quality Graph Partititioning. PhD thesis, KIT (2013)Google Scholar
  27. 27.
    Staudt, C.L., Meyerhenke, H.: Engineering High-Performance Community Detection Heuristics for Massive Graphs. In: Proc. 42nd Conf. on Parallel Processing (ICPP 2013) (2013)Google Scholar
  28. 28.
    Ugander, J., Backstrom, L.: Balanced Label Propagation for Partitioning Massive Graphs. In: 6’th Int. Conf. on Web Search and Data Mining (WSDM 2013), pp. 507–516. ACM (2013)Google Scholar
  29. 29.
    Walshaw, C.: Multilevel Refinement for Combinatorial Optimisation Problems. Annals of Operations Research 131(1), 325–372 (2004)CrossRefMATHMathSciNetGoogle Scholar
  30. 30.
    Walshaw, C., Cross, M.: Mesh Partitioning: A Multilevel Balancing and Refinement Algorithm. SIAM J. on Scientific Computing 22(1), 63–80 (2000)CrossRefMATHMathSciNetGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Henning Meyerhenke
    • 1
  • Peter Sanders
    • 1
  • Christian Schulz
    • 1
  1. 1.Karlsruhe Institute of Technology (KIT)KarlsruheGermany

Personalised recommendations