skip to main content
research-article

Betweenness centrality: algorithms and implementations

Published:23 February 2013Publication History
Skip Abstract Section

Abstract

Betweenness centrality is an important metric in the study of social networks, and several algorithms for computing this metric exist in the literature. This paper makes three contributions. First, we show that the problem of computing betweenness centrality can be formulated abstractly in terms of a small set of operators that update the graph. Second, we show that existing parallel algorithms for computing betweenness centrality can be viewed as implementations of different schedules for these operators, permitting all these algorithms to be formulated in a single framework. Third, we derive a new asynchronous parallel algorithm for betweenness centrality that (i) works seamlessly for both weighted and unweighted graphs, (ii) can be applied to large graphs, and (iii) is able to extract large amounts of parallelism. We implemented this algorithm and compared it against a number of publicly available implementations of previous algorithms on two different multicore architectures. Our results show that the new algorithm is the best performing one in most cases, particularly for large graphs and large thread counts, and is always competitive against other algorithms.

References

  1. Galois system. http://iss.ices.utexas.edu/?p=projects/galois.Google ScholarGoogle Scholar
  2. 9th DIMACS Implementation Challenge. http://www.dis.uniroma1.it/~challenge9/download.shtml, 2009.Google ScholarGoogle Scholar
  3. D. Bader., J. Gilbert, J. Kepner, and K. Madduri. Hpcs scalable synthetic compact applications graph analysis (SSCA2) benchmark v2.2, 2007. http://www.graphanalysis.org/benchmark/.Google ScholarGoogle Scholar
  4. D. A. Bader, S. Kintali, K. Madduri, and M. Mihail. Approximating betweenness centrality. In WAW, Berlin, Heidelberg, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. D. A. Bader and K. Madduri. Parallel algorithms for evaluating centrality indices in real-world networks. In ICPP, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. G. Blelloch, J. Fineman, P. Gibbons, and H. Simhadri. Scheduling irregular parallel computations on hierarchical caches. In SPAA, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. R. D. Blumofe, C. F. Joerg, B. C. Kuszmaul, C. E. Leiserson, K. H. Randall, and Y. Zhou. Cilk: An efficient multithreaded runtime system. In PPOPP, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R. D. Blumofe and C. E. Leiserson. Scheduling multithreaded computations by work stealing. Journal of the ACM, 46(5), 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. U. Brandes. A faster algorithm for betweenness centrality. Journal of Mathematical Sociology, 25, 2001.Google ScholarGoogle Scholar
  10. U. Brandes and C. Pich. Centrality Estimation in Large Networks. International Journal of Birfucation and Chaos, 17(7), 2007.Google ScholarGoogle Scholar
  11. N. Bulkley and M. V. Alstyne. Does e-mail make white collar workers more productive? Technical report, University of Michigan, 2004.Google ScholarGoogle Scholar
  12. A. Buluc and J. Gilbert. The combinatorial BLAS: design, implementation, and applications. Int. Journal of High Perf. Computing Applications, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Chakrabarti, Y. Zhan, and C. Faloutsos. R-MAT: A recursive model for graph mining. In In SIAM Data Mining, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  14. R. Chowdhury, F. Silvestri, B. Blakeley, and V. Ramachandran. Oblivious algorithms for multicores and network of processors. In IPDPS, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  15. T. Coffman, S. Greenblatt, and S. Marcus. Graph-based technologies for intelligence analysis. Commun. ACM, 47, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. G. Cong and K. Makarychev. Optimizing large-scale graph analysis on a multi-threaded, multi-core platform. In IPDPS, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. Del Sol, H. Fujihashi, and P. O'Meara. Topology of small-world networks of protein--protein complex structures. Bioinformatics, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. D. Ediger, K. Jiang, J. Riedy, D. A. Bader, and C. Corley. Massive social network analysis: Mining twitter for social good. In ICPP, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. N. Edmonds, T. Hoefler, and A. Lumsdaine. A space-efficient parallel algorithm for computing betweenness centrality in distributed memory. In HiPC, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  20. L. C. Freeman. A set of measures of centrality based on betweenness. 1977.Google ScholarGoogle Scholar
  21. R. Geisberger, P. Sanders, and D. Schultes. Better approximation of betweenness centrality. In ALENEX, 2008.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Girvan and M. E. J. Newman. Community structure in social and biological networks. Proceedings of the National Academy of Sciences, 99(12), 2002.Google ScholarGoogle ScholarCross RefCross Ref
  23. R. Guimer`a, S. Mossa, A. Turtschi, and L. A. N. Amaral. The worldwide air transportation network: Anomalous centrality, community structure, and cities' global roles. NAS, 102(22), 2005.Google ScholarGoogle Scholar
  24. M. Hassaan, M. Burtscher, and K. Pingali. Ordered vs unordered: a comparison of parallelism and work-efficiency in irregular algorithms. In PPOPP, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. H. Jeong, S. P. Mason, A. L. Barabasi, and Z. N. Oltvai. Lethality and centrality in protein networks. Nature, 411, May 2001.Google ScholarGoogle Scholar
  26. S. Jin, Z. Huang, Y. Chen, D. G. Chavarr1a-Miranda, J. Feo, and P. C. Wong. A novel application of parallel betweenness centrality to power grid contingency analysis. In IPDPS, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  27. V. Krebs. Mapping networks of terrorist cells. Connections, 2002.Google ScholarGoogle Scholar
  28. F. Liljeros, C. Edling, L. Amaral, H. Stanley, and Y. Aberg. The web of human sexual contacts. Nature, 411, 2001.Google ScholarGoogle Scholar
  29. K. Madduri, D. Ediger, K. Jiang, D. A. Bader, and D. G. Chavarramiranda. A faster parallel algorithm and efficient multithreaded implementations for evaluating betweenness centrality on massive datasets. In IPDS, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. U. Meyer and P. Sanders. Delta-stepping: A parallel single source shortest path algorithm. In ESA, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. D. Nguyen and K. Pingali. Synthesizing concurrent schedulers for irregular algorithms. In ASPLOS, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. G. Palla, I. J. Farkas, P. Pollner, I. Derenyi, and T. Vicsek. Fundamental statistical features and self-similar properties of tagged networks. New Journal of Physics, 10, 2008. http://cfinder.org/wiki/?n=Main.Data#toc2.Google ScholarGoogle Scholar
  33. R. Pearce, M. Gokhale, and N. Amato. Multithreaded asynchronous graph traversal for in-memory and semi-external memory. In SC, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. K. Pingali, D. Nguyen, M. Kulkarni, M. Burtscher, M. A. Hassaan, R. Kaleem, T. Lee, A. Lenharth, R. Manevich, M. Mendez-Lojo, D. Prountzos, and X. Sui. The TAO of parallelism in algorithms. In PLDI, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. D. Prountzos and K. Pingali. Betweenness centrality: Algorithms and implementations. Technical Report TR-13-31, UT Austin, Jan 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Z. Shi and B. Zhang. Fast network centrality analysis using gpus. BMC Bioinformatics, 2011.Google ScholarGoogle ScholarCross RefCross Ref
  37. J. G. Siek. and a. A. L. L.Q. Lee. The Boost Graph Library: User Guide and Reference Manual (C++ In-Depth Series). Addison-Wesley Professional, 2001.Google ScholarGoogle Scholar
  38. G. Tan, V. C. Sreedhar, and G. R. Gao. Analysis and performance results of computing betweenness centrality on ibm cyclops64. J. Supercomput., 56, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. G. Tan, D. Tu, and N. Sun. A parallel algorithm for computing betweenness centrality. In ICPP, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. J. Yang and Y. Chen. Fast computing betweenness centrality with virtual nodes on large sparse networks. PLoS ONE, 6(7), 2011.Google ScholarGoogle Scholar
  41. Q. Yang and S. Lonardi. A parallel algorithm for clustering proteinprotein interaction networks. Comp. Systems Bioinformatics, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Betweenness centrality: algorithms and implementations

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM SIGPLAN Notices
          ACM SIGPLAN Notices  Volume 48, Issue 8
          PPoPP '13
          August 2013
          309 pages
          ISSN:0362-1340
          EISSN:1558-1160
          DOI:10.1145/2517327
          Issue’s Table of Contents
          • cover image ACM Conferences
            PPoPP '13: Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming
            February 2013
            332 pages
            ISBN:9781450319225
            DOI:10.1145/2442516

          Copyright © 2013 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 23 February 2013

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader