ScanLab is happy to share DynamicRandomGraphs: A Python package for the generation of scalable temporal random graphs, by Yanir Marmor and Alex Abbey.
RandomDynamicGraph is a Python package that implements the algorithm from [1] for generating large-scale dynamic temporal random graphs. The package focuses on massive data generation; it uses efficient math calculations, writes to file instead of in-memory when datasets are too large, and supports multi-processing.
Background: Large-scale real-world interaction systems, such as social, technological, and biological networks, are dynamic structures that change with time. There is an increased interest in studying the dynamics and temporal evolution of these systems. One of the ways is by modeling these systems using dynamic temporal networks.
Models for studying networks are primarily static. Lately, the work in [1] offered a natural generalization to the Erdős–Rényi static network model, where one assumes that continuous-time Markov processes govern the appearance and disappearance of edges. Thus, the fundamental unit of analysis is the entire history of the network. Edges appear and disappear by making transitions from present to absent or vice versa at certain rates. For example, in temporal random networks, the rate depends on the required probability of having an edge between any two nodes (vertices).
The package has many usages, including in epidemiology. Temporal modeling is fundamental in the research and understanding of virality and epidemics: airborne diseases spread over networks of contacts between individuals that change in time, and ideas dynamically spread over social networks.
Example of a temporal network with 10000 snapshots (time windows) in time generated with RandomDynamicGraph with stationary density.
[1] Zhang, Xiao, Cristopher Moore, and Mark EJ Newman. "Random graph models for dynamic networks." The European Physical Journal B 90.10 (2017): 1-14.
This is an exciting development for anyone working with dynamic temporal networks! The release of DynamicRandomGraphs by ScanLab provides a powerful tool for generating large-scale temporal random graphs, which are crucial for studying the dynamics of real-world interaction bitlife systems. The emphasis on efficiency and scalability, especially with the ability to handle massive datasets and support multi-processing, makes this package a valuable resource for researchers and practitioners alike.