๐น Motivation
Temporal graphs serve as a model for dynamic, scheduled systems which change over time โ from transportation and communication networks to epidemiological and financial systems. To study algorithms and phenomena on these graphs, we need ways to generate them systematically, realistically, and sometimes synthetically. This page provides an overview of methods for generating temporal graphs, including both data-driven and synthetic approaches.
For constructions of Temporal Graphs with very specific (theoretical) properties, refer to Temporal Graph Constructions.
๐น Types of Generators
There are two main philosophies for generating temporal graphs:
- Empirical (data-based): Extracted from real-world systems such as contact networks, mobility traces, or communication logs. These preserve structural and temporal patterns but offer limited control. There are several data bases.
- Synthetic (model-based): Constructed using formal rules or stochastic models, allowing flexibility in testing hypotheses, analyzing scalability, or isolating specific properties (e.g., periodicity or reachability constraints).
Both approaches serve complementary purposes in theory and application.
๐น Snapshot-Based vs Edge-Time Models
Temporal graphs can be generated using different representations:
- Snapshot-based: A sequence of static graphs $G_1, G_2, \ldots, G_T$ where each snapshot represents the active edges at that time step. These are common in empirical datasets.
- Edge-time model: Each edge is labeled with one or more timestamps or time intervals, resulting in a compact and flexible representation. This is often used for simulation and generative models.
Generators typically produce one of these two formats โ or allow conversion between them.
๐น Common Synthetic Models
Here are a few standard strategies for synthetic temporal graph generation:
- Random Edge Activation: Start from a static base graph and activate edges randomly over time (uniformly or according to a distribution).
- Edge-Independent Models: Each edge follows its own independent activation process (e.g., Poisson arrivals, periodic activation).