Table of Contents
Fetching ...

Boltzmann sampling and optimal exact-size sampling for directed acyclic graphs

Wojciech Gabryelski, Zbigniew Gołȩbiewski, Martin Pépin

TL;DR

This work addresses uniform random generation of labelled directed acyclic graphs (DAGs) by extending the graphic Boltzmann framework to digraphs. It develops two complementary Boltzmann samplers based on root-layering and a peeling decomposition, enabling efficient and scalable DAG generation. A key achievement is an asymptotically optimal exact-size sampler that uses $\frac{n^2}{2}+o(n^2)$ random bits on average with no preprocessing, and a memory-access profile compatible with a single pass over the adjacency structure. Together, these approaches yield substantial speed-ups over prior methods and provide practical tools for large-scale random DAG generation.

Abstract

We propose two efficient algorithms for generating uniform random directed acyclic graphs, including an asymptotically optimal exact-size sampler that performs $\frac{n^2}{2} + o(n^2)$ operations and requests to a random generator. This was achieved by extending the Boltzmann model for graphical generating functions and by using various decompositions of directed acyclic graphs. The presented samplers improve upon the state-of-the-art algorithms in terms of theoretical complexity and offer a significant speed-up in practice.

Boltzmann sampling and optimal exact-size sampling for directed acyclic graphs

TL;DR

This work addresses uniform random generation of labelled directed acyclic graphs (DAGs) by extending the graphic Boltzmann framework to digraphs. It develops two complementary Boltzmann samplers based on root-layering and a peeling decomposition, enabling efficient and scalable DAG generation. A key achievement is an asymptotically optimal exact-size sampler that uses random bits on average with no preprocessing, and a memory-access profile compatible with a single pass over the adjacency structure. Together, these approaches yield substantial speed-ups over prior methods and provide practical tools for large-scale random DAG generation.

Abstract

We propose two efficient algorithms for generating uniform random directed acyclic graphs, including an asymptotically optimal exact-size sampler that performs operations and requests to a random generator. This was achieved by extending the Boltzmann model for graphical generating functions and by using various decompositions of directed acyclic graphs. The presented samplers improve upon the state-of-the-art algorithms in terms of theoretical complexity and offer a significant speed-up in practice.
Paper Structure (12 sections, 10 theorems, 14 equations, 3 figures, 3 algorithms)

This paper contains 12 sections, 10 theorems, 14 equations, 3 figures, 3 algorithms.

Key Result

Theorem 4

Given a directed acyclic graph $G=(V,E)$, let $(V_1,\dotsc,V_k)$ be the root-layering of the graph $G$. Then $(V_1,\dotsc,V_k)$ is the only tuple $(U_1,\dotsc,U_l)$ of non-empty disjoint sets summing up to $V$ that satisfies Furthermore, for given disjoint sets of vertices $V_1,\dotsc,V_k$ such that $V=V_1\cup\ldots\cup V_k$, and any set of edges $E\subseteq V\times V$, if the graph $G=(V,E)$ sat

Figures (3)

  • Figure 1: Illustration of the arrow product: the two graphs are drawn for some classes of digraphs $\mathcal{A}$ and $\mathcal{B}$ and the grey dotted edges are a possible set of edges from the $\mathcal{A}$ component to the $\mathcal{B}$ component introduced by the arrow product. Labels are omitted for the sake of clarity.
  • Figure 2: A labelled DAG with $6$ vertices and its root-layering on the right. Here the layers are $\{1\}$, $\{3, 5\}$, $\{2, 6\}$, and $\{4\}$.
  • Figure 3: The "peeling" recursive decomposition of directed acyclic graphs. The labels are omitted. The marked source is the black vertex with the $v$ label. Among the edges going from left to right, those starting from the marked source and going to a source of the graph on the right are always present and are depicted in thick orange, while all others are optional (depending on the initial DAG) and are depicted by thinner grey lines.

Theorems & Definitions (14)

  • Definition 1
  • Definition 2: Graphic Boltzmann model
  • Definition 3
  • Theorem 4
  • Lemma 5
  • Lemma 6: Probability distribution of sources
  • Lemma 7: Transition matrix
  • Lemma 8: Probability distribution of edges
  • Lemma 9: Correctness of Algorithm \ref{['algo:boltz:root_layering']}
  • Lemma 10: Complexity of Algorithm \ref{['algo:boltz:root_layering']}
  • ...and 4 more