Pyrgg: Python Random Graph Generator

Summary

Pyrgg is an easy-to-use synthetic random graph generator written in Python which supports various graph file formats including DIMACS .gr files. Pyrgg has the ability to generate graphs of different sizes and is designed to provide input files for broad range of graph-based research applications, including but not limited to testing, benchmarking and performance-analysis of graph processing frameworks. (Zhong and He 2012; Chakrabarti, Zhan, and Faloutsos 2004)
Pyrgg target audiences are computer scientists who study graph algorithms and graph processing frameworks.

Graph Specifications :

  • Weighted
  • Signed
  • Self Loop
  • Parallel Arc
  • Sparse
  • Dense

Supported Formats:

  • DIMACS(.gr)
  • CSV(.csv)
  • JSON(.json)
  • YAML(.yaml)
  • Weighted Edge List(.wel)
  • ASP(.lp)
  • Trivial Graph Format(.tgf)
  • UCINET DL Format(.dl)
  • Pickle(.p)

See README.md from the Pyrgg repository for further details

website : pyrgg.shaghighi.ir

Pyrgg Logo

Pyrgg Logo

References

Chakrabarti, Deepayan, Yiping Zhan, and Christos Faloutsos. 2004. “R-MAT: A Recursive Model for Graph Mining.” In Proceedings of the 2004 SIAM International Conference on Data Mining, 442–46. Society for Industrial; Applied Mathematics. doi:10.1137/1.9781611972740.43.

Zhong, Jianlong, and Bingsheng He. 2012. “An Overview of Medusa.” ACM SIGPLAN Notices 47 (8). Association for Computing Machinery (ACM): 283. doi:10.1145/2370036.2145855.