Graph-tool

Graph-tool
Developer(s) Tiago de Paula Peixoto
Stable release 2.12 / 6 November 2015 (2015-11-06)
Written in Python, C++
Operating system Cross-platform
Type Software library
License GPL
Website graph-tool.skewed.de

graph-tool is a Python module for manipulation and statistical analysis of graphs (a.k.a. networks). The core data structures and algorithms of graph-tool are implemented in C++, making extensive use of metaprogramming, based heavily on the Boost Graph Library. This type of approach can confer a level of performance which is comparable (both in memory usage and computation time) to that of a pure C++ library, which can be several orders of magnitude better than pure Python.[1]

Furthermore, many algorithms are implemented in parallel using OpenMP, which provides increased performance on multi-core architectures.

Features

Suitabilty

Graph-tool can be used to work with very large graphs in a variety of contexts, including simulation of cellular tissue,[2] data mining,[3][4] analysis of social networks,[5][6] analysis of P2P systems,[7] large-scale modeling of agent-based systems,[8] study of academic Genealogy trees,[9] theoretical assessment and modeling of network clustering,[10] large-scale call graph analysis,[11][12] and analysis of the brain's Connectome.[13]

References

  1. Graph-tool performance comparison, Graph-tool
  2. Bruno Monier et al, "Apico-basal forces exerted by apoptotic cells drive epithelium folding", Nature, 2015
  3. Ma, Shuai, et al. "Distributed graph pattern matching." Proceedings of the 21st international conference on World Wide Web. ACM, 2012.
  4. Ma, Shuai, et al. "Capturing topology in graph pattern matching." Proceedings of the VLDB Endowment 5.4 (2011): 310-321.
  5. Janssen, E., M. A. T. T. Hurshman, and N. A. U. Z. E. R. Kalyaniwalla. "Model selection for social networks using graphlets." Internet Mathematics (2012).
  6. Asadi, Hirad Cyrus. Design and implementation of a middleware for data analysis of social networks. Diss. M Sc thesis report, KTH School of Computer Science and Communication, Stockholm, Sweden, 2007.
  7. Teresniak, Sven, et al. "Information-Retrieval in einem P2P-Netz mit Small-World-Eigenschaften Simulation und Evaluation des SemPIR-Modells."
  8. Hamacher, Kay, and Stefan Katzenbeisser. "Public security: simulations need to replace conventional wisdom." Proceedings of the 2011 workshop on New security paradigms workshop. ACM, 2011.
  9. Miyahara, Edson Kiyohiro, Jesus P. Mena-Chalco, and Roberto M. Cesar-Jr. "Genealogia Acadêmica Lattes."
  10. Abdo, Alexandre H., and A. P. S. de Moura. "Clustering as a measure of the local topology of networks." arXiv preprint physics/0605235 (2006).
  11. Narayan, Ganesh, K. Gopinath, and V. Sridhar. "Structure and interpretation of computer programs." Theoretical Aspects of Software Engineering, 2008. TASE'08. 2nd IFIP/IEEE International Symposium on. IEEE, 2008.
  12. Campos, José Creissac, et al. "GUIsurfer: A Reverse Engineering Framework for User Interface Software."
  13. Gerhard, Stephan, et al. "The connectome viewer toolkit: an open source framework to manage, analyze, and visualize connectomes." Frontiers in neuroinformatics 5 (2011).

External links

This article is issued from Wikipedia - version of the Sunday, January 31, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.