Social Media and Communication: Probabilistic Models and Algorithms
APM_51058_EP · Year 1 · Period 2
Contents
- Introduction and overview
- 0. Background: probability and graphs
- 1. Random graphs: Erdős–Rényi
- 2. Prescribed degrees, small worlds, scale-free
- 3. Epidemic processes on graphs
- 4. Rumors, push-pull and influence
- 5. Large-scale distributed systems
- 6. The stochastic block model
- 7. Community detection and applications
- 8. Hands-on: networkx simulations
- 9. Course research notes (Massoulié, Inria)
- Exercises
- Projects and assessment
- References
Introduction and overview
| Module | Social Media and Communication: Probabilistic Models and Algorithms — official title (last published sheet — SynapseS 2025-2026 catalog): “Réseaux sociaux et de communication : modèles et algorithmes probabilistes” |
| Code | APM_51058_EP |
| Team and workload | Instructor: Laurent Massoulié (Inria) · 36 h in person · 4.5 ECTS (program data; the 2025-2026 sheet indicates 5 ECTS for the engineering curriculum) · a probabilistic theory of social networks: random graphs, epidemics and rumors, stochastic block models, and the distributed algorithms that run the platforms — the course where statistical physics meets networks. |
| Period | Course unit absent from the 2026-2027 catalog (neither in the LLGA 1 – S2 track nor in the Ingénieur Polytechnicien catalog); last occurrence: Fall semester — period 2 (X-3A-P2), from 06/01/2026 to 19/03/2026 · X3A ME1 slot |
| Language | Official 2025-2026 description: “cours dispensé en anglais” (course taught in English); 2025-2026 occurrence: French (contradiction of the official sheet, flagged) |
| Assessment | (2025-2026 sheet) Written final exam of 3 hours, all documents allowed; oral resit possible at the end of the year; numerical grade out of 20; course unit earned if final grade ≥ 10. LLGA modalities: not communicated. |
| Status in the program | Notes kept for reference Not in the LLGA 2026–2027 list: the course unit is absent from the 2026–2027 SynapseS catalogue (last publication: 2025–2026), so it is in no LLGA list; these notes are kept for reference. |
Audience: a graphs / social-product engineer who wants generative models, not only metrics. Empirical first: “small world” seen everywhere for lack of a null model; a simulated epidemic that explodes if \beta is mis-set — then we name Erdős–Rényi, scale-free, SBM, cascades.
Statistical physics of networks ↔︎ influence / community algorithms.
What you will be able to do
- Handle the major random graph models — Erdős–Rényi, prescribed degrees, small worlds, scale-free — and their emergent properties.
- Analyze epidemic processes spreading on a graph.
- Study rumor spreading (push-pull) and influence mechanisms.
- Understand the stochastic block model as a generative model of communities, and use it to detect them.
- Connect these models to the large-scale distributed systems that run the platforms.
- Simulate random graphs and processes with networkx, and confront simulations with real data.
Official objectives and syllabus (2026-2027 catalog)
Course unit absent from the 2026-2027 catalog. The last published sheet (SynapseS 2025-2026) has no “Learning objectives” section: official objectives not communicated.
Its official description presents the course as a toolkit for apprehending networks in the broad sense — from the communication networks underlying the Internet to social networks, online or not — along three axes: models of the systems and phenomena of interest, algorithmic methods for their control (ideally decentralized), and mathematical tools for the analysis of behavior and performance.
Official reference: L. Massoulié, “Réseaux : contrôle distribué et phénomènes émergents”, 2016. No prerequisites are listed on the sheet. The detailed syllabus below is that of the 2025-2026 sheet.
| Official theme (2025-2026 detailed syllabus) | Section of this module |
|---|---|
| 1. Distributed random access control of a channel (Aloha protocols), discrete-time Markov chains, ergodicity, Foster-Lyapunov criterion | Missing — neither access protocols nor Markov-chain theory are developed; ch. 0 only recalls the random walk P = D^{-1}A and its stationary distribution. |
| 2. Stabilizing scheduling policies (routers, wireless networks), stability region, generalized switch, back-pressure | Missing. |
| 3. Resource allocation, fairness criteria, congestion control, TCP as a gradient algorithm, Lagrangian duality | Partial: ch. 5 (TCP-AIMD seen as decentralized optimization). |
| 4. Epidemic phenomena: SI model, Galton-Watson process, SIR epidemic, Erdős–Rényi graphs and giant component, Chernoff inequality | ch. 1 (Erdős–Rényi) and ch. 3 (epidemics on graphs). |
| 5. Community detection: stochastic block graph, spectral methods, spectrum perturbation | ch. 6 (stochastic block model) and ch. 7 (community detection). |
| 6. Particular topologies: Barabási-Albert, power law, navigable networks, small world, Azuma-Hoeffding inequality | ch. 2 (prescribed degrees, small worlds, scale-free). |
| 7. Continuous-time queues: Poisson process, Markov jump processes, Erlang model | Missing. |
| 8. Queueing networks: Jackson networks, transfers in the Internet, priority networks | Missing. |
| 9. SI and SIS epidemic models | ch. 3 (epidemic processes on graphs). |
Complement to the official syllabus Ch. 4 (push-pull rumors and influence) and ch. 8 (networkx simulations) are not part of the published official detailed syllabus (2025-2026 sheet): they are deepenings of this material. Conversely, official themes 1, 2, 7 and 8 (random access, stabilizing scheduling, queues) are not developed in it: these materials do not replace the official syllabus.
Where this course fits in the program
A former period 2 option of M1, not carried over into the 2026–2027 catalogue: these notes are kept for reference, and the last official sheet (2025–2026) lists no prerequisites. The module builds on the two P1 refreshers: Refresher in Statistics for probabilistic calculus and Refresher in Computer Science for graphs, both reactivated in chapter 0.
It is not a prerequisite of any LLGA course. Graph Machine and Deep Learning for Generative AI, in the same period, teaches Erdős–Rényi and the SBM itself (its ch. 9); read alongside it, this module adds the probabilistic side of those models (thresholds, detectability). It is also useful background for Advanced Graph Neural Networks (M2), where these structures meet deep learning.
Course outline
- Background: probability and graphs — the two languages of the module, put back in hand before any use.
- Random graphs: Erdős–Rényi — the founding model and its threshold phenomena.
- Prescribed degrees, small worlds, scale-free — bringing the models closer to real networks, and measuring what each one misses.
- Epidemic processes on graphs — how a spread depends on the structure of the graph that carries it.
- Rumors, push-pull and influence — the dissemination protocols and the influence questions that follow.
- Large-scale distributed systems — what these models say about the systems that run the platforms.
- The stochastic block model — communities that are generated by a model, and therefore detectable.
- Community detection and applications — the algorithms that exploit the SBM and their uses.
- Hands-on: networkx simulations — going from theorems to numerical experiments (the three labs run alongside chapters 2, 3 and 6).
- Course research notes (Massoulié, Inria) — the team’s papers, read with the tools of the module.
- Exercises — threshold computations, spreads, and detections to carry out yourself.
- References — the founding papers of each chapter.
Session plan
36 h in class = 12 sessions of 3 h. The volume is the 36 h in person given in the module’s fiche; the course unit is absent from the 2026–2027 SynapseS catalogue (last published sheet: 2025–2026), and no sheet publishes a session-by-session programme, so the split below is our proposal for covering these notes in that time. Level 1 = foundations (reviews, definitions, first worked examples), 2 = core models and theorems, 3 = advanced material (sharp thresholds proved in recent research, open debates); the level never goes down from one session to the next.
| Session | Hours | Level | Content | Practice |
|---|---|---|---|---|
| 1 | 3 h | 1 | ch. 0 Background: random graphs, branching processes, first and second moment methods | warm-up: extinction of a Galton–Watson process by simulation |
| 2 | 3 h | 1 | ch. 1 Erdős–Rényi: degrees, giant component (Proposition 1.2, Theorem 1.3) | Ex. 1, 2 |
| 3 | 3 h | 2 | ch. 1 Connectivity, diameter, triangle threshold (Theorems 1.4–1.6) | Ex. 7 |
| 4 | 3 h | 2 | ch. 2 Configuration model, small worlds, preferential attachment; ch. 8 Lab 1 | Ex. 3, 8 |
| 5 | 3 h | 2 | ch. 3 SIR and SIS, branching and spectral thresholds (Theorems 3.2–3.3) | Ex. 9 |
| 6 | 3 h | 2 | ch. 3 Percolation coupling, vanishing threshold on scale-free graphs (Theorems 3.4–3.5); ch. 8 Lab 2 | Ex. 4 |
| 7 | 3 h | 2 | ch. 4 Push, pull and push-pull rumor spreading (Theorem 4.2) | Ex. 5 |
| 8 | 3 h | 2 | ch. 4 Influence maximization, submodularity, greedy (Theorem 4.4) | Ex. 10 |
| 9 | 3 h | 2 | ch. 5 Distributed systems: power of two choices, caching, proportional fairness | Ex. 6 |
| 10 | 3 h | 2 | ch. 6 The SBM: definition, recovery regimes, Kesten–Stigum threshold (6.1–6.3) | Ex. 11 (spectra of A and B on small graphs) |
| 11 | 3 h | 3 | ch. 6 Non-backtracking matrix and spectrum, likelihood and EM (6.4–6.6); ch. 8 Lab 3 | Ex. 11 |
| 12 | 3 h | 3 | ch. 7 Community detection: modularity versus SBM inference, applications | lab: Louvain versus SBM on the same graph (Lab protocol, item 3) |
Self-study, outside the 36 h (about 3 h in total): ch. 9 Course research notes (Massoulié, Inria) — five research axes and their founding papers (≈ 3 h, with Ex. 12).
How to study this module
- Work through chapter 0 in full: discrete probability and graph vocabulary are needed from the very first theorem.
- Simulate early and often: a random graph model is better understood plotted than stated — the networkx chapter is made for that.
- For each model, ask yourself which real property it captures and which one it misses: that is the question that structures the module.
- Plot the distributions (degrees, component sizes) instead of relying on averages.
- Connect epidemics and rumors to platform news: the same models describe widely publicized phenomena.
- Cross-reference with the Graph ML module of the same period: the SBM returns there as the foundation of learning on graphs.
The module in the LLGA master Networks are, along with text, the master’s great structured data source: here they are treated as random processes, which prepares both for the M2 GNNs and for a critical reading of the platforms. The targeted skills — generative graph models, spreading, distributed systems — are at the heart of online platform jobs and of an active research field, at the crossroads of randomness and large-scale networks.
0. Background: probability and graphs
The module’s guiding thread: a social network is a random graph (who follows whom?), traversed by stochastic processes (what spreads, and how fast?). The two mathematical pillars are therefore discrete probability — distributions, moments, convergence — and graph theory. This chapter puts back in place the definitions and the three basic tools: the first and second moment methods, branching processes, and random walks.
L3 review — probabilistic toolbox (cf. Refresher Statistics module)
- Standard distributions (ch. 3): binomial \mathrm{Bin}(n, p) with expectation np; Poisson \mathrm{Pois}(c) with \mathbb{P}(X = k) = e^{-c} c^k / k!, variance = mean; exponential with parameter \lambda, memoryless — the waiting time of Poisson processes.
- Convergence and concentration (ch. 4): weak law of large numbers, CLT, Markov’s inequality \mathbb{P}(X \geq a) \leq \mathbb{E}[X]/a and Chebyshev’s; this is the machinery behind the thresholds of ch. 1.
- Estimation (ch. 5): maximum likelihood, bias, consistency — it will be used on the SBM (ch. 6) and on power laws (ch. 2).
- Testing (ch. 6): hypothesis testing, type I/II errors — the detection threshold of ch. 6 is exactly the boundary below which no test tells the SBM from Erdős–Rényi with both error probabilities tending to 0.
L3 review — graph toolbox (cf. Graph ML module, ch. 0)
- Vocabulary: G = (V, E), degrees d_v, neighbors \mathcal{N}(v), adjacency matrix A, paths, connected components, diameter, clustering coefficient c_v = \frac{2\,|\text{edges in } \mathcal{N}(v)|}{d_v(d_v - 1)}.
- Spectrum (Graph ML module, ch. 4): eigenvalues of A, spectral radius \rho(A) = largest eigenvalue in absolute value (connected graph: simple, positive, Perron–Frobenius vector with strictly positive coordinates).
- Random walks (Graph ML module, ch. 3): P = D^{-1}A, stationary distribution \pi_v = d_v / 2m, mixing time — the underpinning of rumor protocols (ch. 4) and distributed algorithms (ch. 5).
- Graph algorithms (Refresher CS module, ch. 7): BFS/DFS in O(n + m), connected components — the basic building block of the simulations in ch. 8.
Definition 0.1 — Random graph A random graph is a random variable taking values in the set of graphs (simple, undirected, unless stated otherwise) on a fixed set of n vertices. Two equivalent specifications dominate: by measure (a distribution over the 2^{\binom{n}{2}} possible graphs) or by generative procedure (a randomized algorithm that builds the graph edge by edge, or vertex by vertex). Chapters 1, 2 and 6 give the three canonical generative models: Erdős–Rényi, configuration/Barabási–Albert, and the stochastic block model.
Definition 0.2 — Branching process (Galton–Watson) Starting from one initial individual, each individual has an i.i.d. random offspring with distribution (p_k), of mean m = \sum_k k\, p_k. If Z_t denotes the size of generation t: \mathbb{E}[Z_t] = m^t. The process dies out almost surely if m \leq 1 and survives with strictly positive probability if m > 1.
The extinction probability q is the smallest solution in [0,1] of s = G(s), where G is the generating function of the offspring; the survival probability is 1 - q.
This is the universal tool for “early stages of processes”: giant component (ch. 1), epidemic (ch. 3), rumor spreading (ch. 4).
Proposition 0.3 — First moment method For any nonnegative integer random variable X: \mathbb{P}(X \geq 1) \leq \mathbb{E}[X] \quad \text{(Markov)}. Consequently, if \mathbb{E}[X_n] \to 0 then X_n = 0 with probability tending to 1.
And if \mathrm{Var}(X_n) = o(\mathbb{E}[X_n]^2) with \mathbb{E}[X_n] \to \infty, then X_n > 0 with probability tending to 1 (second moment, via Chebyshev): \mathbb{P}(X_n = 0) \leq \mathbb{P}(|X_n - \mathbb{E}X_n| \geq \mathbb{E}X_n) \leq \mathrm{Var}(X_n)/\mathbb{E}[X_n]^2 \to 0. All of ch. 1 rests on this pair.
Independent note This module is the probabilistic counterpart of the Graph ML module (M1 P2), which is its algorithmic and learning counterpart. Graph ML asks “given this graph, what should we predict?”; here we ask “where does this graph come from, and what can be said about its processes?”.
The two converge in ch. 6: the stochastic block model is both the reference generative model and the theoretical framework of spectral clustering (Machine Learning module, ch. 7; Graph ML module, ch. 4). Chapter 9 presents the work of L. Massoulié (Inria); ch. 8 connects to simulations, and the bridge to M2 goes through positional encodings (Advanced GNN module, ch. 4) — where the same spectra return.
1. Random graphs: Erdős–Rényi
Concrete scene: a “community” detected in a network turns out to be a mere density artifact. To tell structure from chance, one needs a model of a graph with no structure at all; this chapter sets up that model, G(n,p), and its threshold phenomena.
What breaks No null model; over-interpreting a hub; confusing structural correlation with social causation.
The G(n, p) model of Gilbert–Erdős–Rényi is the primitive atom: n vertices, each pair connected independently with probability p. It has no structure — and that is precisely what makes it the touchstone: a phenomenon observed on a real network is “significant” only if it is improbable under G(n, p) at the same size and density (this is the role of the null model in modularity, ch. 7).
Definition 1.1 — The two Erdős–Rényi models G(n, p): each of the \binom{n}{2} edges is present independently with probability p. G(n, m): a uniform choice among graphs with exactly m edges.
For m \approx p \binom{n}{2}, the two are interchangeable to within o(m) edges (we will move from one to the other without notice). Immediate expectations: \mathbb{E}[|E|] = p \binom{n}{2}, \qquad \mathbb{E}[\text{deg}(v)] = (n-1) p =: d \quad (\text{mean degree}).
Proposition 1.2 — Degree distribution: binomial, then Poisson In G(n, p), the degree D_v follows the law \mathrm{Bin}(n-1, p).
In the sparse regime p = c/n (mean degree c constant), D_v converges in law to \mathrm{Pois}(c): \binom{n-1}{k} \Big( \frac{c}{n} \Big)^k \Big( 1 - \frac{c}{n} \Big)^{n-1-k} \xrightarrow[n \to \infty]{} e^{-c}\, \frac{c^k}{k!}.
Proof. First factor: \binom{n-1}{k} \sim \frac{(n-1)^k}{k!}, and (n-1)^k (c/n)^k \to c^k.
Second: (1 - c/n)^{n-1-k} = \exp\big( (n - 1 - k) \ln(1 - c/n) \big) = \exp\big( -(n-1-k) (c/n + O(1/n^2)) \big) \to e^{-c}, since k is fixed and (n-1-k)/n \to 1. ∎
Theorem 1.3 (emergence of the giant component, p = c/n) Let C_1 be the largest connected component of G(n, c/n).
if c < 1: |C_1| = O(\log n) with high probability; all components are trees or “trees plus one edge” (at the critical point c = 1, |C_1| is of order n^{2/3});
if c > 1: |C_1| = \rho\, n + o(n) with high probability, where \rho \in (0, 1] is the unique solution of
Key result — size of the giant component \rho = 1 - e^{-c\rho}.
All other components have size O(\log n).
We call c = 1 the percolation threshold — the most famous phase transition of networks.
Proof. (Sketch by exploration and branching.) Let us explore the component of a vertex v by queue (BFS): each discovered vertex presents X not-yet-seen neighbors, where X \sim \mathrm{Bin}(n - O(\text{seen}), c/n) \approx \mathrm{Pois}(c), and these laws remain nearly independent as long as the exploration stays small compared to n.
The component of v therefore behaves like a Galton–Watson process of mean c (Definition 0.2):
- almost-sure extinction if c \leq 1: components O(\log n) when c < 1; in the critical regime c = 1 the largest one has size of order n^{2/3} (outside the syllabus);
- survival with probability \rho if c > 1, where \rho is the survival probability of the branching: \rho = 1 - G(1 - \rho) with G the generating function of \mathrm{Pois}(c), that is, \rho = 1 - e^{-c\rho}.
The fraction of vertices in “infinite” components equals \rho — this is the relative size of C_1. ∎
Theorem 1.4 (connectivity threshold) — proved in sketch form For p = (\ln n + \omega(1))/n (i.e. np = \ln n + \omega(1)), G(n, p) is connected with probability tending to 1. For p = (\ln n - \omega(1))/n, it is disconnected with probability tending to 1. More precisely, for p = (\ln n + t)/n with t fixed: \mathbb{P}(G(n,p) \text{ connected}) \longrightarrow \exp\big( -e^{-t} \big).
The connectivity threshold coincides with the threshold for the disappearance of isolated vertices: at the moment the last isolated vertex disappears, the graph becomes connected.
Proof. (Sketch, first and second moments — cf. Proposition 0.3.) Let X be the number of isolated vertices: \mathbb{E}[X] = n (1 - p)^{n-1} = n \exp\big( (n-1)\ln(1 - p) \big) \approx n\, e^{-np} = e^{-t} \quad \text{for } np = \ln n + t.
Regime np = \ln n - \omega(1) (so t = -\omega(1), \mathbb{E}[X] = e^{-t} \to \infty): an isolated vertex exists. The events “v isolated” are not independent, but nearly: two given vertices are both isolated with probability exactly \mathbb{P}(u, v \text{ both isolated}) = (1-p)^{2(n-1)-1}. Summing over the pairs gives \mathrm{Var}(X) = \mathbb{E}[X] + \mathbb{E}[X]^2\, \frac{p - 1/n}{1 - p}, so the covariances contribute only O(p\,\mathbb{E}[X]^2) = O(\mathbb{E}[X]^2 \log n / n). Chebyshev gives \mathbb{P}(X = 0) \leq \mathrm{Var}(X)/\mathbb{E}[X]^2 \to 0 : an isolated vertex exists, the graph is not connected.
Regime np = \ln n + \omega(1) (\mathbb{E}[X] \to 0): no more isolated vertices. By Markov, \mathbb{P}(X \geq 1) \leq \mathbb{E}[X] \to 0. It remains to see that “no isolated vertex” \Rightarrow “connected” with high probability, again by a first moment.
- A disconnected graph without isolated vertices has a component of size s with 2 \leq s \leq n/2.
- Such a component contains a spanning tree (s^{s-2} possible trees by Cayley’s formula, each needing its s - 1 edges) and sends no edge to the other n - s vertices. Hence \mathbb{P}(\text{such a component exists}) \leq \sum_{s=2}^{n/2} \binom{n}{s} s^{s-2} p^{s-1} (1-p)^{s(n-s)}.
- With \binom{n}{s} \leq (en/s)^s and (1-p)^{s(n-s)} \leq e^{-ps(n-s)}, the term of index s is at most \frac{1}{p s^2} \big( e\, np\, e^{-p(n-s)} \big)^s .
- Since np \geq \ln n, the base is O(\ln n / n) for bounded s and O(\ln n / \sqrt n) up to s = n/2, while 1/p \leq n / \ln n.
- Hence the term s = 2 is O(\ln n / n) and the sum over s \geq 3 is O((\ln n)^2 / \sqrt n). Both tend to 0: a single component remains.
The limit \exp(-e^{-t}) is the classical Gumbel law of extremes — the first isolated vertex to disappear is an extreme event. ∎
Proposition 1.5 — Diameter in the dense regime If np \geq \ln n \cdot \omega(1) (in particular np = n^{a}, a > 0), the diameter of G(n, p) equals \mathrm{diam} = (1 + o(1)) \frac{\ln n}{\ln (np)} with high probability.
Intuition: the neighborhood of a vertex grows like (np)^r after r BFS steps (each new vertex brings \approx np neighbors), and covers n vertices when (np)^r \approx n.
For p = c/n, c > 1, the giant component has diameter \Theta(\log n) and typical distances \frac{\log n}{\log c} — the “six degrees of separation” phenomenon (ch. 2).
Theorem 1.6 (thresholds for subgraph appearance — triangles) For p = o(1/n): G(n,p) contains no triangle with probability tending to 1. For p = \omega(1/n): it contains at least one with probability tending to 1.
More generally (Erdős–Rényi 1960), for H strictly balanced, the threshold for the appearance of a copy of H is n^{-1/m(H)}, where m(H) = \max_{J \subseteq H} e_J / v_J (maximum density of a subgraph); for the triangle m = 1, for K_4, m = 3/2.
Proof. (First moment, in full.) Let T be the number of triangles: \mathbb{E}[T] = \binom{n}{3} p^3 \sim \frac{(np)^3}{6}. If np \to 0, then \mathbb{E}[T] \to 0 and Markov concludes: \mathbb{P}(T \geq 1) \to 0.
(Second moment, sketch.) If np \to \infty, we compute \mathrm{Var}(T) = \sum_{T_1, T_2} \big( \mathbb{P}(T_1 \wedge T_2) - p^6 \big). Pairs of triangles that are disjoint or share a vertex are independent or nearly so: their contribution is zero, or \binom{n}{3}\binom{n}{2} p^5 = O(\mathbb{E}[T] \cdot n^2 p^2 / np) \ldots ; only pairs sharing an edge contribute, in the amount \binom{n}{3} O(n) p^5 = o(\mathbb{E}[T]^2) as soon as np \to \infty.
Chebyshev concludes: T \geq 1 with probability tending to 1. Exercise 7 asks for the complete computation. ∎
| Regime of p | Structure of G(n,p) | Network analogy |
|---|---|---|
| p = c/n, c < 1 | components O(\log n), tree-like | fragmented graph, subcritical |
| p = 1/n | critical: component of size n^{2/3}, spread out | percolation point |
| p = c/n, c > 1 | giant of size \rho n, diameter \Theta(\log n) | network connected in practice |
| p = (\ln n + c)/n | connectivity: \mathbb{P} \to e^{-e^{-c}} | no more isolated vertices |
| np = n^{a}, 0 < a < 1 | diameter \approx \ln n / \ln(np) | extreme “small world” |
What G(n,p) cannot do Three systematic gaps with real social networks, which motivate ch. 2:
- real degrees are heterogeneous (heavy tails), not Poisson;
- real clustering is high (my friends know each other), whereas in G(n,c/n) the clustering coefficient equals p = c/n \to 0;
- real networks grow (edges do not all appear at the same time).
But to test a heuristic, generate a null, or calibrate a threshold, G(n,p) remains the first reflex — it is also the generator of the labs (Graph ML module, ch. 9).
2. Prescribed degrees, small worlds, scale-free
Real networks have hubs and many triangles, two features G(n,p) cannot produce. This chapter builds three models that add them one at a time — imposed degrees, local clustering with a few shortcuts, growth by preferential attachment — and checks what each one gains.
Definition 2.1 — Configuration model (Bollobás; Molloy–Reed) Take a degree sequence d_1, \dots, d_n with even sum 2m. The configuration model attaches d_i half-edges (stubs) to vertex i, then pairs the 2m half-edges uniformly at random ((2m - 1)!! possible pairings).
The result is a multigraph: loops and multiple edges are possible, O(1) on average when the d_i remain o(\sqrt n); in practice one erases them. The point: the degree distribution is imposed — it can be fitted to a real network — while everything else remains “maximally random”.
Theorem 2.2 (Molloy–Reed criterion, statement) Let D be the degree distribution (empirical limit p_k = \frac{1}{n}|\{i : d_i = k\}|). The configuration graph admits a giant component of strictly positive fraction if and only if
Key result — Molloy–Reed criterion \sum_{k} k (k - 2)\, p_k > 0 \qquad \Longleftrightarrow \qquad \mathbb{E}[D^2] > 2\, \mathbb{E}[D].
The heuristic: when exploring the component of a vertex, each traversed edge leads to a new vertex whose excess degree follows the biased distribution \tilde p_k = \frac{(k+1) p_{k+1}}{\mathbb{E}[D]} (size bias: an edge arrives more often at a high-degree vertex). The exploration branching has mean \frac{\mathbb{E}[D(D-1)]}{\mathbb{E}[D]}, and the threshold is this mean crossing above 1.
This same \frac{\mathbb{E}[D(D-1)]}{\mathbb{E}[D]} will be the R_0 of epidemics on graphs with heterogeneous degrees (ch. 3).
Example 2.3 — Power law: p_k \sim C k^{-\gamma} For \gamma \in (2, 3) (the regime of real social networks — Twitter, the web, collaborations): \mathbb{E}[D] is finite but \mathbb{E}[D^2] diverges — criterion 2.2 is widely positive: robust giant component. Cascading consequences (ch. 3): epidemic threshold tending to 0, robustness to random failures but fragility to targeted attacks on hubs. For \gamma > 3, everything is finite and the world becomes Poissonian again to first approximation.
Definition 2.4 — Watts–Strogatz small world (1998) Start from a ring of n vertices, each connected to its K nearest neighbors (a highly clustered, very “wide” graph: diameter \Theta(n/K)).
Each edge is rewired independently with probability \beta, to a uniform destination (no duplicates). The model interpolates: \beta = 0 gives the “circle” world, \beta = 1 gives a graph close to Erdős–Rényi.
The spectacular result of Watts and Strogatz: as soon as \beta \approx 0.01, the diameter drops to \Theta(\log n) while the clustering coefficient stays close to its \beta = 0 value — the two quantities become decoupled. This is the formalization of Milgram’s experiments (1967): very local networks, crossed via a few random links — “six degrees of separation”.
Kleinberg (2000) shows the sharp condition for such a network to be navigable (finding a short path in a decentralized way, without a global map): the distribution of shortcut links must scale as r^{-2} — exactly what social networks rebuild.
Theorem 2.5 — Barabási–Albert: preferential attachment produces p_k \sim k^{-3} (master equation) The model: vertices are added one at a time; vertex t arrives with m edges, each connected to an existing vertex i with probability \Pi(i) = d_i(t) / \sum_j d_j(t) — “the rich get richer” (Matthew effect). Then the degree distribution converges to p_k \;\sim\; \frac{2 m^2}{k^{3}} \qquad (k \geq m), with an exponent independent of m.
Proof. (Continuous method — the master equation sketched.) Let d_i(t) denote the degree of vertex i (arrived at time t_i) at time t, with \sum_j d_j(t) = 2mt. The master equation reads, in unit time steps, \mathbb{E}[d_i(t+1) - d_i(t)] = m \cdot \frac{d_i(t)}{2 m t}, hence the differential equation \frac{\partial d_i}{\partial t} = \frac{d_i}{2t}, with solution d_i(t) = m \Big( \frac{t}{t_i} \Big)^{1/2}. Old vertices (t_i small) are thus proportionally richer — exactly the heterogeneity missing from Erdős–Rényi.
Now for the distribution: for k \geq m, \mathbb{P}(d_i(t) < k) = \mathbb{P}\Big( t_i > \frac{m^2 t}{k^2} \Big) = 1 - \frac{m^2 t}{k^2 (t - m)} \approx 1 - \frac{m^2}{k^2}, using that the arrival time t_i is (asymptotically) uniform on [0, t]. Differentiating: p_k = -\frac{\mathrm{d}}{\mathrm{d} k} \Big( 1 - \frac{m^2}{k^2} \Big) \Big/ 1 = \frac{2 m^2}{k^3}, exponent \gamma = 3, natural cutoff k_{\max} \sim \sqrt n (the degree of the oldest vertex d_1(n) = m \sqrt n). ∎
Estimating an exponent — the pitfall Regressing \log p_k against \log k on a log-log plot is biased (noisy tails, empty bins); the reference is Clauset, Shalizi and Newman (SIAM Review 2009): Hill estimator on the threshold k_{\min} chosen by a KS test, then a likelihood-ratio test against the log-normal/exponential alternative (Refresher Statistics module, ch. 6). Many published “power laws” do not survive this protocol.
| Model | Degree distribution | Clustering | Diameter | Key idea |
|---|---|---|---|---|
| Erdős–Rényi G(n, c/n) | Poisson(c) | \approx c/n \to 0 | \Theta(\log n) if c > 1 | no structure — null model |
| Configuration | imposed (p_k) | low | depends on p_k | exact control of degrees |
| Watts–Strogatz | concentrated around K | high | \Theta(\log n) | clustering/diameter decoupling |
| Barabási–Albert | \sim k^{-3} | low | \Theta(\log n / \log\log n) | growth + preferential attachment |
3. Epidemic processes on graphs
A meme, a virus, a rumor: the same mathematics. The canonical model is the SIR epidemic (Susceptible → Infectious → Recovered) or its relapse version SIS, posed no longer on a homogeneous population but on a contact graph. The central question: is there a threshold below which the epidemic dies out quickly — and what does this threshold become when the graph is heterogeneous?
Definition 3.1 — SIR and SIS on a graph Each vertex is in a state; the infection and recovery clocks are independent exponentials:
- SIR: an infectious vertex transmits the infection to each healthy neighbor at rate \beta, and recovers at rate \delta (permanent immunity). Key parameter: the ratio \tau = \beta / \delta.
- SIS: same transmission, but the vertex becomes susceptible again at rate \delta — the epidemic can become endemic (survive indefinitely).
- Discrete-time version (used in the labs): each edge uv with u infected transmits at each step with probability p = 1 - e^{-\beta}, each infected vertex recovers with probability 1 - e^{-\delta}.
On a homogeneous population (perfect mixing, no graph), the classical SIR gives the basic reproduction number R_0 = \beta S_0 / \delta and the threshold R_0 > 1 — this is the model of epidemiology courses; the graph replaces the mass term S_0.
Theorem 3.2 — Branching approximation: the threshold on G(n, c/n) On G(n, c/n) with a single initial infective, if c\,\frac{\beta}{\beta+\delta} \leq 1, the epidemic reaches o(n) vertices. If c\,\frac{\beta}{\beta+\delta} > 1, it reaches a strictly positive fraction of the vertices with strictly positive probability (a “massive” epidemic). In that case the final fraction is the relative size of the giant component of G(n, cT/n), where T = \frac{\beta}{\beta+\delta} is the transmissibility (cf. Theorem 3.4).
With \tau = \beta/\delta, \frac{\beta}{\beta+\delta} = \frac{\tau}{1+\tau} \approx \tau when \tau is small, so the threshold is often written c\tau \approx 1.
Proof. (Sketch.) On an edge (u, v) with u infected, the infection of v is an exponential race against the recovery of u.
Given the infectious period R \sim \mathrm{Exp}(\delta) of u, it wins with probability 1 - e^{-\beta R}; averaged over R, with probability T = \frac{\beta}{\beta + \delta}.
The races on the edges out of u share the same R, so they are independent only given R. Each infective therefore has, to first approximation (no collisions — the targets are all distinct), a mixed Poisson offspring \mathrm{Pois}\big( c\,(1 - e^{-\beta R}) \big), \qquad R \sim \mathrm{Exp}(\delta), which is exactly \mathrm{Pois}(cT) only when the infectious period is fixed (as in Lab 2). Its mean is R_0^{\text{graph}} = c\, \frac{\beta}{\beta + \delta} = \frac{c \tau}{1 + \tau}, threshold R_0^{\text{graph}} = 1, i.e. \tau = \frac{1}{c - 1}, close to c\tau = 1 when c is large.
The subcritical branching extinguishes the epidemic after O(\log n) infectives; the supercritical one survives with positive probability, and then grows until it has seen a positive fraction of the n vertices. ∎
Theorem 3.3 (Ganesh, Massoulié, Towsley, INFOCOM 2005) — the spectral threshold of SIS For SIS on a fixed graph G with adjacency matrix A, spectral radius \rho(A):
- if \beta / \delta < 1 / \rho(A): the epidemic dies out in O(\log n) time with probability tending to 1 (fast extinction);
- conversely, as soon as \beta/\delta exceeds 1/\rho(A) by a factor depending on the geometry of the graph, the survival time is exponential in n: the epidemic becomes endemic. Later works (Chakrabarti et al., 2008) identify 1/\rho(A) as the threshold of the mean-field approximation: the epidemic threshold of a network is spectral.
Proof. (Proof of (i), sketch — spectral supermartingale.) Let u be the Perron–Frobenius vector of A (u > 0, A u = \rho u) and \Phi_t = \sum_i u_i x_i(t), where x_i(t) \in \{0, 1\} is the infection indicator.
Each infective i recovers at rate \delta, a drift -\delta u_i, and infects each neighbor j at rate \beta, a drift +\beta u_j.
Writing x for the state vector: \frac{\mathrm{d}}{\mathrm{d}t} \mathbb{E}[\Phi_t \mid x] \;\leq\; \sum_i x_i \big( -\delta u_i + \beta \sum_{j \sim i} u_j \big) = \big( \beta \rho(A) - \delta \big) \sum_i x_i u_i = \big( \beta \rho - \delta \big)\, \mathbb{E}[\Phi_t \mid x]. If \beta \rho < \delta, then \mathbb{E}[\Phi_t] \leq \Phi_0\, e^{-(\delta - \beta \rho) t}. Since \Phi_t = 0 as soon as the epidemic is extinct and \Phi_t \geq (\min_i u_i) \cdot \mathbf{1}_{\{\text{at least one infective}\}}, we get \mathbb{P}(\text{not extinct at } t) \;\leq\; \frac{\Phi_0}{\min_i u_i}\; e^{-(\delta - \beta \rho) t}. The prefactor is not polynomial in general: Perron entries can be exponentially small in n (a clique with a long pendant path), and the bound then only gives a time O(n).
Ganesh, Massoulié and Towsley avoid it by bounding the whole vector of infection probabilities instead of one projection.
- The same drift computation, coordinate by coordinate, gives componentwise \frac{\mathrm{d}}{\mathrm{d}t}\mathbb{E}[x(t)] \leq (\beta A - \delta I)\,\mathbb{E}[x(t)].
- The matrix \beta A - \delta I has nonnegative off-diagonal entries, so the comparison principle for linear ODEs gives \mathbb{E}[x(t)] \leq e^{(\beta A - \delta I)t}\, x(0).
- A is symmetric, so this matrix exponential has operator norm e^{-(\delta - \beta\rho)t}; with Cauchy–Schwarz, \mathbb{P}(\text{not extinct at } t) \leq \sum_i \mathbb{E}[x_i(t)] \leq \sqrt n\, e^{-(\delta - \beta\rho)t} \|x(0)\|_2 \leq n\, e^{-(\delta - \beta \rho) t}.
At t = (\ln n + s)/(\delta - \beta\rho) this is e^{-s}: extinction in O(\log n). ∎
Theorem 3.4 — Final SIR = percolation: the final size is a giant component Take SIR on G(n, c/n) with a fixed infectious period (the Reed–Frost model, as in Lab 2). Each edge then transmits, if it is ever tested, with the same probability T, independently of the other edges. The final size of the epidemic started from a random vertex has the same law as the size of that vertex’s connected component in the percolated graph G(n, cT/n), where each edge is kept with probability T.
In particular: massive epidemic \iff giant component of the percolated graph — Theorem 1.3 applies again with parameter cT, and the final fraction of the infected population is \rho solving \rho = 1 - e^{-c T \rho}.
For the exponential infectious periods of Definition 3.1, with T = \frac{\beta}{\beta+\delta}, the edges leaving the same infective share its recovery clock and are positively correlated: \mathbb{P}(\text{two given edges out of } u \text{ both open}) = \frac{2\beta^2}{(\beta+\delta)(2\beta+\delta)} > T^2 . The threshold cT = 1 and the final fraction \rho of a massive epidemic are unchanged, but the probability that a massive epidemic occurs is smaller than \rho (Kenah–Robins 2007). For c = 4 and T = 1/2 it is about 0.64, against \rho \approx 0.80.
Proof. (Coupling.) Draw everything in advance: for each vertex u its infectious period R_u, and for each oriented edge u \to v a transmission clock E_{uv} \sim \mathrm{Exp}(\beta). Declare u \to v open if E_{uv} < R_u.
The strong Markov property of the process then shows that the final set of infectives is exactly the set of vertices reachable from the origin along open oriented edges.
- With a fixed period R_u \equiv r, the oriented edges are open independently with probability T = 1 - e^{-\beta r}, and reachability along them has the law of the component in bond percolation with parameter T. This is the classic epidemic \leftrightarrow percolation bridge (Grassberger 1983; Newman 2002).
- With random periods, the edges out of u share R_u, hence the correlation above. The edges into a vertex v come from distinct infectives and stay independent, so the attack rate keeps the equation of \rho. The outbreak probability is the survival probability of the mixed Poisson branching of Theorem 3.2, which is smaller by Jensen’s inequality. ∎
Theorem 3.5 (Pastor-Satorras–Vespignani, 2001; Newman, 2002) — vanishing threshold on scale-free networks On a configuration graph whose degree distribution is p_k \sim C k^{-\gamma}:
- SIR (bond percolation on the configuration graph, Newman 2002): a massive epidemic occurs if and only if the transmissibility T = \frac{\beta}{\beta+\delta} exceeds T_c = \frac{\mathbb{E}[D]}{\mathbb{E}[D(D-1)]}, the reciprocal of the R_0 of Theorem 2.2;
- SIS (heterogeneous mean-field approximation of Pastor-Satorras and Vespignani): the threshold on \tau = \beta/\delta is \tau_c = \frac{\mathbb{E}[D]}{\mathbb{E}[D^2]};
- if 2 < \gamma \leq 3, \mathbb{E}[D^2] diverges with n: T_c \to 0 and \tau_c \to 0 — every contagion becomes epidemic on an infinite scale-free network.
Engineering reading: vaccinating at random does not change the divergence; targeting hubs (“acquaintance” or degree-based vaccination) reintroduces a positive threshold. This is the quantitative argument behind the moderation of very high-audience accounts on platforms (and behind targeted vaccination strategies).
From model to data: R_0 in practice Estimating \beta, \delta or R_0 from cascade data (retweet timestamps) is done by maximum likelihood on the infection times, often with a Hawkes process: a point process whose intensity \lambda(t) = \mu + \sum_{t_i < t} \phi(t - t_i) jumps at each event (each retweet raises the rate of further retweets) and then decays with the kernel \phi.
Its branching ratio \int \phi plays the role of R_0: the cascade dies out if it is below 1. The parameters \mu and \phi are fitted by maximum likelihood (Refresher Statistics module, ch. 5; Rizoiu et al., 2017, for a tutorial on social media), with bootstrap confidence intervals (same module, ch. 4–6).
Lab 2 of ch. 8 runs the reverse experiment: simulate, measure the final size, and check the thresholds 3.2 and 3.5 on ER vs Barabási–Albert.
4. Rumors, push-pull and influence
Spreading information to n machines without a directory or a coordinator: the gossip protocol is the elegant solution — each node calls a random neighbor every round. It is the building block of rumors (Karp et al. 2000), of distributed aggregation (ch. 5) and the distant ancestor of blockchain blocks disseminated by “flooding”. The quantitative question: how many rounds until everyone is informed?
Definition 4.1 — Push, pull, push-pull protocols (telephone call model) Discrete time; at each round, each node chooses an interlocutor uniformly at random among the other n - 1 (complete graph):
- push: informed nodes call to transmit;
- pull: uninformed nodes call to ask;
- push-pull: both at once — the call transmits as soon as either side knows.
Theorem 4.2 (Karp, Schindelhauer, Shenker, Vöcking, FOCS 2000) On the complete graph K_n, the push protocol informs all n nodes in \log_2 n + \ln n + O(1) \quad \text{rounds with high probability} (Frieze–Grimmett 1985; Pittel 1987), and the push-pull protocol in \log_3 n + O(\log \log n) \quad \text{rounds,} while a variant with an age-based stopping rule sends only O(n \log \log n) messages in total (Karp et al.).
Proof. (Sketch in three phases — where the constants come from.) Let k_t be the number of informed nodes and s_t = n - k_t the ignorant ones.
Doubling (k \leq n/2): the term \log_2 n. Each informed node pushes to a uniform target; the probability of hitting an uninformed node is 1 - k_t/n, close to 1 while k_t = o(n), and collisions between two pushes are rare, so k_{t+1} \approx 2k_t : the informed set doubles at each round, hence \log_2 n + O(1) rounds to go from 1 to n/2.
At k_t = n/2 the ratio is still about 2 - e^{-1/2} \approx 1.39, so the stretch from \varepsilon n to n/2 takes O(1) rounds; the deviation from the expectation is controlled by a supermartingale.
Exponential decay of ignorance (k \geq n/2): the term \ln n. An ignorant node survives a push round if none of the k_t informed nodes has called it: \mathbb{P}(\text{survival}) = (1 - \frac{1}{n})^{k_t} \approx e^{-k_t/n}. When k_t = n - s_t \approx n, each ignorant node survives with probability \approx e^{-1} per round: s_t decays geometrically with ratio \approx e^{-1}.
It takes \ln n rounds to go from \Theta(n) ignorants down to the last ones — the signature of the coupon collector.
Drawing coupons uniformly among n types, collecting them all takes n H_n \approx n \ln n draws, where H_n = 1 + 1/2 + \dots + 1/n (Mitzenmacher–Upfal, Probability and Computing, ch. 2). Here each round makes about n calls, so covering all n vertices takes about \ln n rounds.
The role of pull. Pull changes both phases. At the start, each informed node pushes once and is called on average once by an ignorant node, so k roughly triples per round: \log_3 n rounds instead of \log_2 n.
At the end, an ignorant node stays ignorant only if nobody pushes to it and its own call fails: probability \approx e^{-1} \cdot s_t/n, so the ignorant fraction is roughly squared at each round, s_{t+1}/n \lesssim (s_t/n)^2, and the last phase lasts O(\log \log n) rounds instead of \ln n. The technical difficulty of the paper — beyond this sketch — is controlling the deviations of all phases simultaneously.
∎
General graphs, and communication costs On a connected graph of maximum degree \Delta and diameter D, push informs everyone in O(\Delta (D + \log n)) rounds with high probability (Feige, Peleg, Raghavan, Upfal, 1990) — the information must cross the bottlenecks; on the random graphs of ch. 1–2 above the connectivity threshold, \Theta(\log n) rounds suffice.
Karp et al. also show that push-pull can be made message-efficient — O(n \log \log n) transmissions with an age-based stopping rule, whereas plain push sends of the order of n \log n — hence its use in peer-to-peer systems (ch. 5). Modern variants (pull with lists of new messages, protocols of Doerr et al.) achieve the same speed with robustness to failures.
Definition 4.3 — Influence maximization (Kempe, Kleinberg, Tardos, 2003) Independent cascade (IC) model: each edge (u,v) is “active” independently with probability p_{uv}; content starting from set S propagates along active edges (once per edge). The influence function is \sigma(S) = \mathbb{E}[|R(S)|], the expected size of the set reachable from S.
Problem: choose S of cardinality \leq k maximizing \sigma(S) — what “seeding” budget for a viral campaign? (The linear threshold model — each vertex activates when the sum of weights of active neighbors exceeds a random threshold — is the classic alternative, with the same complexity.)
Theorem 4.4 — \sigma is submodular, and greedy is (1 - 1/e)-optimal
- \sigma is monotone (S \subseteq T \Rightarrow \sigma(S) \leq \sigma(T)) and submodular — marginal returns decrease: for S \subseteq T, \sigma(S \cup \{v\}) - \sigma(S) \geq \sigma(T \cup \{v\}) - \sigma(T);
- the greedy algorithm (iteratively add the vertex of maximal marginal gain) returns S_g such that \sigma(S_g) \;\geq\; \Big( 1 - \frac{1}{e} \Big) \sigma(S^\ast), where S^\ast is the optimum (Nemhauser–Wolsey–Fisher bound, 1978);
- the exact optimization problem is NP-hard (reduction from Set Cover); achieving (1 - 1/e + \varepsilon) for any \varepsilon > 0 is NP-hard as well.
Proof. Submodularity (live-edge coupling). Draw in advance, once and for all, the “live/dead” state of each edge (coupling of Theorem 3.4); in this world, R(S) is the set of vertices reachable from S in the live subgraph, and reachability is clearly monotone and submodular.
Indeed, take a vertex w reachable from S \cup \{v\} but not from S.
Every live path from S \cup \{v\} to w then goes through v, so w is reachable from \{v\}; hence R(S \cup \{v\}) = R(S) \cup R(\{v\}), and the marginal gain |R(S \cup \{v\}) \setminus R(S)| = |R(\{v\}) \setminus R(S)| can only shrink when S grows to T \supseteq S. Taking the expectation over the live-edge worlds preserves the inequality. \square
Greedy. Let S_i be the greedy set after i steps. By monotonicity, then submodularity, \sigma(S^\ast) \leq \sigma(S_i \cup S^\ast) \leq \sigma(S_i) + \sum_{v \in S^\ast} \big(\sigma(S_i \cup \{v\}) - \sigma(S_i)\big) \leq \sigma(S_i) + k\,\big(\sigma(S_{i+1}) - \sigma(S_i)\big), since greedy adds the vertex of largest marginal gain. Rearranged: \sigma(S^\ast) - \sigma(S_{i+1}) \leq (1 - 1/k)\big(\sigma(S^\ast) - \sigma(S_i)\big). Iterating k times from \sigma(\emptyset) = 0 gives \sigma(S^\ast) - \sigma(S_g) \leq (1 - 1/k)^k \sigma(S^\ast) \leq e^{-1} \sigma(S^\ast). ∎
From theory to the platform Monte-Carlo estimators of \sigma are costly (10,000 simulations per candidate); the CELF trick (Leskovec et al., 2007) divides the cost by ~700 by exploiting the decrease of marginal gains to evaluate lazily. Applications: viral marketing (choice of seeders), early detection of contagions (sensors), vaccination (ch. 3). The dark symmetry: the same algorithms optimize disinformation — hence the ongoing research on inoculation (pre-bunking, “curative” bots) and models of competition between cascades.
5. Large-scale distributed systems
Behind every feed: millions of requests per second, caches everywhere, load balancers. These systems consume exactly the same mathematics as the previous chapters — balls into bins, Poisson processes, random walks — and part of the advances come from the French school (Massoulié, ch. 9). This chapter gives its three building blocks: load balancing, caching, and resource sharing.
Theorem 5.1 — Balls into bins: the power of two choices Throw n balls independently into n bins uniformly: the maximum load is \frac{\ln n}{\ln \ln n}\big( 1 + o(1) \big) with high probability (Azar, Broder, Karlin, Upfal, 1999; Mitzenmacher, 2001). If each ball chooses two bins at random and goes to the less loaded one, the maximum load drops to
Key result — the power of two choices \frac{\ln \ln n}{\ln 2} + O(1) \approx \log_2 \log_2 n + O(1).
This is an exponential gain for twice the information.
Proof. (Sketch — density differential equations, the mean-field method.) Let u_j(t) be the fraction of bins of load at least j after t balls.
One choice: a ball lands on a bin of load j-1 with probability u_{j-1} - u_j (first time at level j), so \frac{\mathrm{d} u_j}{\mathrm{d} t} \approx u_{j-1} - u_j . Hence, after t = 1 unit of time (n balls), u_j \approx 1/j! — and 1/j! falls to 1/n (a single bin) for j \approx \frac{\ln n}{\ln \ln n}.
Two choices: the ball rises to level j only if both sampled bins are at least j - 1: \frac{\mathrm{d} u_j}{\mathrm{d} t} \approx u_{j-1}^2 - u_j^2 ; so u_j \lesssim u_{j-1}^2: the fraction is squared at each level.
Starting from a level j_0 where u_{j_0} \leq 1/2, after k more levels u_{j_0 + k} \leq 2^{-2^{k}}, which falls below 1/n as soon as 2^{k} \geq \log_2 n, i.e. k \geq \log_2 \log_2 n. ∎
From the model to the data center The “supermarket” model (queues + choice of the least loaded) is the modeling of load balancers: at load \rho < 1, the typical waiting delay goes from \Theta\big(\frac{1}{1 - \rho}\big) (one choice) to \Theta\big(\log \frac{1}{1 - \rho}\big) (two choices) — the tail behavior changes scale (Mitzenmacher; the JOIN-IDLE-QUEUE regime handles giant systems, the “power-of-d choices” variant with d > 2). The same idea serves hash tables (cuckoo hashing); the book by Mitzenmacher and Upfal covers it all.
Definition 5.2 — Caching: LRU, LFU, and the hierarchy of contents A cache of capacity k stores k objects; requests arrive according to a process (ideally Poisson), object i with probability \lambda_i (popularity, typically power law — ch. 2); a hit if the object is in the cache, a miss otherwise (cost: fetching it from further away).
Classical policies:
- LRU (evict the least recently used — Che’s approximation: the “characteristic time” t_C gives \mathbb{P}(\text{hit}) = 1 - e^{-\lambda_i t_C});
- LFU (evict the least frequently requested);
- random and FIFO.
Structural result: against an online adversary, LRU is k-competitive — its cost is at most k times that of the offline optimum (Sleator–Tarjan); under i.i.d. popularities, Che’s approximation makes it analytic. The distributed question: who caches what, when users serve one another — work of the team in ch. 9.
5.3 — Bandwidth sharing and \alpha-fairness (Kelly 1997; Kelly–Maulloo–Tan 1998; Massoulié–Roberts 1999–2002) Flows share links; x_r is the rate of flow r, and the capacity constraints read H x \leq c, with H_{\ell r} = 1 when flow r crosses link \ell.
The \alpha-fair allocation maximizes \sum_r \frac{x_r^{1 - \alpha}}{1 - \alpha}; \alpha = 1 (limit) gives proportional fairness \max \sum_r \log x_r, \alpha = 2 gives minimum potential delay fairness, and \alpha \to \infty gives max-min.
- Kelly (1997) and Kelly, Maulloo and Tan (1998) introduced proportional fairness and showed that decentralized rate-control algorithms, in which each source reacts to congestion prices fed back by its links, converge to the proportionally fair point. Lagrangian duality is the bridge between protocol mechanics and convex optimization: “congestion control does decentralized optimization without knowing it”.
- Massoulié and Roberts (INFOCOM 1999; IEEE/ACM ToN 2002) introduced minimum-potential-delay fairness and showed that window-based or randomized rate schemes can realize max-min, proportional or minimum-potential-delay fairness. TCP-like AIMD corresponds approximately to \alpha = 2 (with weights that depend on the round-trip time), not to proportional fairness.
This framework founded a whole literature on the stability of networks that carry elastic traffic.
Gossip and distributed learning — the modern bridge The push-pull protocols of ch. 4 also compute aggregates: the mean of a field of values by random-walk iterations (asymptotic consensus), approximate quantiles, distinct counting (HyperLogLog). The revival: asynchronous SGD on graphs — workers exchange gradients via gossip instead of a central server; convergence guarantees depend on the spectral gap of the communication graph (recent work of the team, ch. 9). For an LLGA master: federated learning is a constrained gossip protocol — the module’s theory applies to it directly.
6. The stochastic block model
Communities: groups of vertices better connected within themselves than between each other. The stochastic block model (SBM) is its canonical generative model — the equivalent, for graphs, of Gaussians for point clouds. It makes it possible to ask the right questions: when is the block structure detectable? Which algorithm achieves it? The answers involve exact thresholds — two of which are due to the module’s instructor (ch. 9).
Definition 6.1 — SBM Parameters: n vertices, q blocks, proportions (\pi_1, \dots, \pi_q), connectivity matrix P = (p_{ab}) \in [0, 1]^{q \times q} (not the random-walk matrix of ch. 0; Graph ML ch. 9 writes it B, a letter kept here for the non-backtracking matrix of Definition 6.4).
Generation: each vertex receives a block \sigma(v) \sim \pi independently; each pair (u, v) is connected with probability p_{\sigma(u)\sigma(v)}, independently.
The textbook case of “two symmetric blocks”: q = 2, \pi = (1/2, 1/2), p_{\mathrm{in}} = a/n, p_{\mathrm{out}} = b/n (two communities of mean degree \frac{a+b}{2}, all the more separated as a > b). The SBM with heterogeneous degrees within blocks (DC-SBM, Karrer–Newman 2011) corrects the bias “hubs become blocks”.
Definition 6.2 — The three difficulty regimes An estimate \hat\sigma, computed from the graph alone, is scored by its accuracy up to a relabelling of the blocks, the maximum running over the q! permutations s of the labels: \mathrm{acc}(\hat\sigma, \sigma) = \max_{s} \frac{1}{n}\, \#\{v : \hat\sigma(v) = s(\sigma(v))\}. When the q blocks have equal proportions, a guess that ignores the graph scores 1/q + o(1). With unequal proportions, Abbe (2018, Sec. 2) averages the accuracy block by block instead, which brings the chance level back to 1/q. Each requirement below must hold with probability tending to 1 as n \to \infty.
- Detection, or weak recovery (sparse, degrees O(1)): for some fixed \varepsilon > 0, \mathrm{acc}(\hat\sigma, \sigma) \geq \frac{1}{q} + \varepsilon . With equal proportions, this says that the overlap (\mathrm{acc} - 1/q)/(1 - 1/q) of Decelle et al. (2011) stays bounded away from 0. For two balanced blocks: at least a fraction 1/2 + \varepsilon of the vertices is correct after the best swap of the two labels, and the overlap is 2\,\mathrm{acc} - 1. The realistic regime for large networks.
- Partial recovery: \mathrm{acc}(\hat\sigma, \sigma) \geq \alpha for a prescribed accuracy \alpha \in (1/q, 1), so \alpha > 1/2 for two blocks; detection only asks for some \alpha above 1/q. Its limit case, an error fraction \to 0, is almost exact recovery (weak consistency) — the terminology of Abbe (2018).
- Exact recovery (dense, degrees \Theta(\log n)): \mathrm{acc}(\hat\sigma, \sigma) = 1, the whole partition up to relabelling. For two symmetric blocks with p_{\mathrm{in}} = a \log n/n, p_{\mathrm{out}} = b \log n / n: the exact threshold is \sqrt a - \sqrt b > \sqrt 2 (Abbe, Bandeira, Hall; Mossel, Neeman, Sly): above it, the maximum likelihood — NP-hard in general — is achievable there by semidefinite relaxation.
Theorem 6.3 — Kesten–Stigum and detection thresholds (statements) For two symmetric blocks (a, b)/n:
- Impossibility below KS. If (a - b)^2 \leq 2(a + b), no estimator achieves detection in the sense of Definition 6.2: given the graph, even whether two fixed vertices share a block cannot be guessed better than chance. Conjectured by Decelle, Krzakala, Moore, Zdeborová (2011); proved by Mossel, Neeman, Sly, who include the equality case. Strictly below the threshold, the model is even “contiguous” to Erdős–Rényi of degree \frac{a+b}{2}: no test tells the two apart with both error probabilities tending to 0.
- Feasibility above. If (a-b)^2 > 2(a+b), detection is possible in polynomial time — this is Massoulié’s theorem (STOC 2014, ch. 9), obtained independently by Mossel, Neeman, Sly. Random graphs there satisfy the weak Ramanujan property, and a spectral estimate built on the matrix of self-avoiding path counts has an overlap 2\,\mathrm{acc} - 1 converging in probability to some r > 0. The non-backtracking algorithm comes later (Bordenave–Lelarge–Massoulié, Theorem 6.5).
The quantity \frac{(a-b)^2}{2(a+b)} plays the role of a signal-to-noise ratio; the threshold is where information survives the spectral noise of the degree.
Definition 6.4 — The non-backtracking (Hashimoto) matrix Index the oriented edges (u \to v) of the graph (there are 2m of them). The non-backtracking matrix B \in \{0,1\}^{2m \times 2m} is defined by B_{(u \to v),\, (v \to w)} = \mathbf{1}\{ w \neq u \}, \qquad 0 \text{ otherwise: a path that does not retrace its steps.} B encodes non-backtracking walks: the power B^r counts walks without U-turns of length r.
Connection with the course: it is the companion operator of the adjacency A, insensitive to the “degree noise” that pollutes A — a walk without U-turns cannot go back and forth on a hub.
Theorem 6.5 (Bordenave, Lelarge, Massoulié, FOCS 2015 / Ann. Probab. 2018) — non-backtracking spectrum of the SBM For the SBM (a, b)/n and its extension to q blocks, with high probability:
- the spectrum of B consists of a bulk contained in the disk of radius \sqrt{d} (where d is the mean degree), plus real eigenvalues carrying information;
- an informative eigenvalue escapes the bulk (|\lambda| > \sqrt d) if and only if the Kesten–Stigum threshold is crossed;
- consequently, the non-backtracking spectral algorithm — compute the leading eigenvectors of B, run k-means on them — detects the blocks all the way down to the Kesten–Stigum threshold; the same matrix proves that random graphs are asymptotically “non-regular Ramanujan”.
Why A fails where B succeeds: in the sparse regime (degrees O(1)), the highest degree is \Theta(\frac{\log n}{\log \log n}), and a star of degree \Delta alone has eigenvalue \sqrt{\Delta}.
Hubs therefore create parasitic eigenvalues of order \sqrt{\log n / \log\log n}, which grow past the O(1) signal eigenvalues; the operator B precisely cancels the contribution of these local back-and-forths. This is the theoretical answer to the practical problem of spectral clustering on sparse networks with hubs (Graph ML module, ch. 4; Machine Learning module, ch. 7).
Example 6.6 — MLE and the EM connection Write the log-likelihood of the SBM for a candidate partition \sigma (latent blocks unknown): \ell(\sigma, P) = \sum_{r \leq s} \Big[ m_{rs}(\sigma) \log p_{rs} + \big(N_{rs}(\sigma) - m_{rs}(\sigma)\big) \log(1 - p_{rs}) \Big], where m_{rs}(\sigma) counts the edges between blocks r and s and N_{rs}(\sigma) the pairs of vertices between them; the MLE is the partition (with its P) maximizing \ell — a combinatorial problem (discretization of cuts).
Variational EM (Machine Learning module, ch. 7) approaches this MLE: E step — block responsibilities; M step — re-estimation of P and \pi; spectral initialization (6.5) to escape saddle points. This is the pipeline of the graph-tool / sbm libraries.
7. Community detection and applications
The SBM says when communities can be detected; practitioners also need an algorithm that runs on millions of vertices without knowing the model. This chapter presents the most used one, modularity maximization, compares it with SBM inference, and reviews what community structure is used for.
Definition 7.1 — Modularity (Newman–Girvan, 2004) For a partition \mathcal{C} of a graph G with m edges, modularity compares the observed internal density with that expected under the configuration model (ch. 2) — the null model “same degrees, edges at random”:
Key result — modularity Q(\mathcal{C}) = \sum_{C \in \mathcal{C}} \Big( \frac{e_C}{m} - \Big( \frac{d_C}{2m} \Big)^2 \Big).
Here e_C counts the internal edges of block C and d_C the sum of the degrees of its vertices. Maximizing Q = finding the partition most “over-connected” relative to the null.
This is the objective function of Louvain (Blondel et al., 2008) — the industrial reference algorithm, O(m) per pass, deployed in networkx, Neo4j, Gephi.
Modularity vs SBM — the great debate
- Resolution limit (Fortunato–Barthélemy, 2007): Q cannot see communities smaller than roughly \sqrt{m/2} edges — merging small modules increases modularity. Bayesian SBM inference has a much weaker limit: about \sqrt n blocks for the flat SBM (Peixoto, 2013), raised to about n / \log n by the nested SBM (Peixoto, 2014).
- Sparse overfitting: in the O(1) degree regime, maximizing Q finds communities even in pure Erdős–Rényi — the bias of modularity on sparse graphs is well documented (Peixoto; Newman); Bayesian inference of the SBM penalizes complexity and resists.
- Two philosophies: modularity is descriptive (an objective heuristic, no model); the SBM is generative (a model, hence tests, thresholds, intervals — ch. 6). In practice: Louvain/Leiden for scale, SBM for statistics.
- The lesson of Leskovec et al. (2009): in large real graphs, “natural” communities are small (up to ~100 vertices) and drowned in a dense core without structure — it is core-periphery, not partitioning, that dominates at large scale.
7.2 — Applications: virality, alignment, privacy
- Virality. Predicting the final size of a cascade (retweets, shares): early features (depth, width, timing of the first shares — Cheng et al., WWW 2016) and Hawkes models; the connection to the course: a massive cascade \Leftrightarrow percolated giant component (3.4), and the block structure modulates \sigma(S) (4.3-4.4) — spreading between two communities costs the b edges, spreading inside benefits from the a edges.
- Graph alignment and privacy. Re-identifying users across two platforms (anonymized): the correlated graph alignment problem — partial recovery guarantees by Hall and Massoulié (ch. 9). GDPR reading: “anonymizing” a social graph is mathematically fragile; pseudonymization is not anonymization.
- Echo chambers. The homophilous SBM (a > b) is the minimal model of polarization; recommendation policies (Graph ML module, ch. 6 — link prediction) that optimize engagement decrease b and deepen polarization — a quantitative bridge between algorithm and society.
- Anomaly detection. Blocks = normal behaviors; misclassified vertices (low likelihood under a fitted SBM) are the bot/spam candidates — the individual log-likelihood of Example 6.6 serves as a score.
8. Hands-on: networkx simulations
The theorems of chapters 1 to 6 all predict a number — a giant-component fraction, an epidemic threshold, a detection accuracy. The three labs below check these predictions by simulation; each one is meant to be run right after the chapter it illustrates (Lab 1 after ch. 2, Lab 2 after ch. 3, Lab 3 after ch. 6).
# Lab 1 -- Erdos-Renyi vs Barabasi-Albert: degree laws and giant component
import numpy as np, networkx as nx
rng = np.random.default_rng(0)
G_er = nx.gnp_random_graph(2000, 6/2000, seed=1) # c = 6
G_ba = nx.barabasi_albert_graph(2000, 3, seed=1) # m = 3, mean degree 6
for name, G in (("ER", G_er), ("BA", G_ba)):
ccs = sorted((len(c) for c in nx.connected_components(G)), reverse=True)
degs = [d for _, d in G.degree()]
print(f"{name}: largest component {ccs[0]/G.number_of_nodes():.4f}"
f" | max degree {max(degs)} | clustering {nx.average_clustering(G):.4f}")
# expected (theorems 1.3 + 2.5): ER ~ 0.997 = the rho of 1.3 (rho = 1 - exp(-6 rho)),
# max degree ~ 15; BA = 1.0 (connected by construction), max degree of the order
# of m sqrt(n) ~ 134 (this run: ER 0.9965 and 15; BA 1.0000 and 115)# Lab 2 -- discrete-time SIR: does the threshold depend on the degree law?
def sir(G, p, patient0):
"""Discrete SIR: infection p per edge per step, recovery in 1 step.
Returns the final size of the epidemic."""
inf, seen = {patient0}, {patient0}
while inf:
new = set()
for u in inf:
new |= {v for v in G[u] if v not in seen and rng.random() < p}
seen |= new
inf = new
return len(seen)
def outbreak(G, p, trials=200):
n = G.number_of_nodes()
sizes = [sir(G, p, int(rng.integers(n))) for _ in range(trials)]
return np.mean(sizes) / n # final fraction of the population
for tau in (0.1, 0.15, 0.2, 0.25, 0.3, 0.5, 1.0): # tau = beta/delta; recovery in 1 step,
p = 1 - np.exp(-tau) # infection per edge per step
print(f"tau={tau:4.2f} ER {outbreak(G_er, p):.3f} BA {outbreak(G_ba, p):.3f}")
# ER threshold: c p = 1, i.e. p = 1/6, tau ~ 0.18. Theorem 3.5 predicts a lower
# threshold for BA (E[D]/E[D(D-1)] ~ 0.074 on this graph): at tau = 0.2 a run gives
# BA ~ 0.15 against ER ~ 0.03. From tau ~ 0.3 the ER curve is at or above: heterogeneity
# lowers the threshold but also the final size, since the many degree-3 vertices of
# BA are harder to reach. Plot both curves and locate the two takeoffs.# Lab 3 -- SBM: spectral detection (adjacency in dense, non-backtracking in sparse)
from scipy.sparse.linalg import eigsh
sizes, p_in, p_out = [500, 500], 0.10, 0.02
G = nx.stochastic_block_model(sizes, [[p_in, p_out], [p_out, p_in]], seed=3)
A = nx.to_scipy_sparse_array(G).astype(float)
truth = np.concatenate([np.zeros(sizes[0]), np.ones(sizes[1])])
w, V = eigsh(A, k=2, which="LA") # eigsh returns eigenvalues in ASCENDING order
v2 = V[:, np.argsort(w)[-2]] # 2nd largest eigenvalue (column 1 = Perron vector)
hat = (v2 > np.median(v2)).astype(int)
acc = max(np.mean(hat == truth), np.mean(hat != truth))
print("accuracy (adjacency, dense):", round(acc, 3)) # expected ~ 1.0
# in the sparse regime (p_in = 8/n, p_out = 2/n): build the non-backtracking matrix B
# (rows/columns = oriented edges; B[(u,v),(v,w)] = 1 if w != u), extract its
# first 2 real eigenvectors and run k-means -- cf. theorem 6.5 and
# exercise 11. Adjacency degrades first, since hub eigenvalues compete with the
# signal (over 10 seeds: accuracy about 0.77 for A against 0.83 for B).Lab protocol (guidelines)
- Reproducibility: fix the seeds, report mean ± standard deviation over 200 repetitions (Refresher Statistics module, ch. 4-6); plot curves with bootstrap confidence bands.
- Check the theories: each lab has an expected value (giant size, takeoff threshold, accuracy): a systematic gap = bug or misreading of the regime — the report must decide.
- Go further: replace k-means with networkx’s Louvain (nx.community.louvain_communities) and compare modularity vs SBM on the same data (ch. 7); try Watts–Strogatz (diameter vs clustering as a function of \beta, ch. 2).
9. Course research notes (Massoulié, Inria)
The module is taught by Laurent Massoulié, Inria senior researcher (Dragon team, Inria Paris center; he headed the joint Microsoft Research–Inria center and teaches at École Polytechnique). His career covers exactly the syllabus: epidemics and networks, rumors, stochastic block model, and distributed systems (caching, load balancing, decentralized optimization). Five axes, with the founding papers to read as a project (exercise 12).
9.1 — Epidemics and topology (Ganesh, Massoulié, Towsley, INFOCOM 2005) The Effect of Network Topology on the Spread of Epidemics (> 1,000 citations) founded epidemic control through structure: Theorem 3.3 of the module is its core — fast extinction as soon as \beta/\delta < 1/\rho(A), proved via the spectral supermartingale we sketched, and long survival in the supercritical regime. Legacy: the entire literature on spectral epidemic thresholds (NIMFA, targeted vaccination), and malware/worm slowdown policies. Position in the course: it is the quantitative answer to “does the shape of the network change the epidemic?” — yes, spectrally.
9.2 — The SBM detection threshold (Massoulié, STOC 2014) Community Detection Thresholds and the Weak Ramanujan Property. Result: above the Kesten–Stigum threshold, the matrix B^{(\ell)} that counts self-avoiding paths of length \ell, of order \log n, has the weak Ramanujan property. Apart from its informative eigenvalues, its eigenvalues are at most the square root of its spectral radius, up to a factor n^{\varepsilon}, as on a Ramanujan graph. A spectral algorithm on B^{(\ell)} then detects communities down to the information threshold.
This is the first proof of the conjecture of Decelle et al. on the feasibility side (independently of Mossel–Neeman–Sly), and the feasibility half of Theorem 6.3 of the module. Legacy: the founding slab of detection down to the threshold, extended by 9.3.
9.3 — The non-backtracking spectrum (Bordenave, Lelarge, Massoulié, FOCS 2015 / Ann. Probab. 2018) Non-backtracking Spectrum of Random Graphs: Community Detection and Non-regular Ramanujan Graphs. Theorem 6.5 of the module: the spectrum of the non-backtracking matrix of an SBM is confined in a disk of radius \sqrt d — bulk — except for the informative eigenvalues, which escape it exactly at the Kesten–Stigum threshold.
Double payoff: (i) the “eigenvectors of B + k-means” algorithm detects down to the threshold (in practice: it is the one of Lab 3, ch. 8); (ii) random graphs (even irregular ones) are asymptotically Ramanujan — a pure graph theory result that closes an open question.
It is also the theoretical justification of non-backtracking operators in learning on graphs (Graph ML, 9.2, where they reach the SBM detection threshold).
9.4 — Distributed systems: caching, balancing, bandwidth Three works connected to ch. 5:
- Bandwidth sharing — Massoulié, Roberts (INFOCOM 1999; IEEE/ACM ToN 2002): minimum-potential-delay fairness, and window-based or randomized rate schemes that realize max-min, proportional or minimum-potential-delay fairness (5.3; proportional fairness itself is due to Kelly). TCP-like AIMD sits close to \alpha = 2.
- Distributed caching over heterogeneous mobile networks — Ioannidis, Massoulié, Chaintreau (SIGMETRICS 2010; Queueing Systems 2012): users cache contents and exchange them when they meet; which decentralized policy maximizes throughput? The model is that of the epidemics of ch. 3 — a usable rumor to save bandwidth.
- Bipartite graph structures for efficient balancing of heterogeneous loads — Leconte, Lelarge, Massoulié (ACM, 2012): balancing heterogeneous loads as a matching on a random bipartite graph — the bridge between power-of-two-choices (5.1) and graph structures (ch. 2).
9.5 — Today: graph alignment and distributed learning
- Graph alignment — Hall, Massoulié, Partial Recovery in the Graph Alignment Problem (Operations Research 71(1), 2023): two correlated graphs (two platforms), can we recover the vertex correspondence? Partial recovery guarantees depending on sparsity and correlation — the theory of de-anonymization (ch. 7), with the privacy limit that goes with it.
- Asynchronous SGD on graphs — Even, Koloskova, Massoulié, Asynchronous SGD on Graphs (AISTATS 2024): a unified framework for decentralized and federated optimization via gossip — chapter 5 of the module projected onto today’s federated learning.
- Collective exploration — Cosson, Massoulié, Collective Tree Exploration via Potential Function Method (ITCS 2024): cooperating robots explore an unknown tree — distributed algorithms viewed through online analysis.
Guiding thread (for the exam) A single pattern runs through the whole body of work: take a system (network, platform, swarm), model it by a random process on a graph, identify a spectral or branching threshold, and derive from it a decentralized algorithm with guarantees. This is exactly the backbone of chapters 1 to 7 of this module — teaching one’s own research field.
Exercises
★ From binomial to Poisson. Complete the proof of Proposition 1.2 by controlling the error terms: show that (1 - c/n)^{n-1-k} = e^{-c}\big(1 + O(1/n)\big) for fixed k (logarithm expansion); show that the variance of \mathrm{Bin}(n-1, c/n) converges to c (Refresher Statistics module, ch. 3).
★ Giant component. Solve \rho = 1 - e^{-c\rho} numerically for c = 1.5, 2, 4, 10 and check by simulation (nx.gnp_random_graph, 10 repetitions); show the uniqueness of the solution in (0, 1) for c > 1 (study f(\rho) = \rho - 1 + e^{-c\rho}).
★ Watts–Strogatz. Simulate the diameter and average clustering of the rewired ring for \beta \in \{10^{-4}, \dots, 1\} (log scale); reproduce the original figure; explain why \Theta(\beta n K) rewired “long” links in total, that is only \Theta(\beta K) per vertex, suffice to drop the diameter from \Theta(n/K) to \Theta(\log n) while clustering barely moves.
★ Transmission-recovery race. In continuous SIR, show that on an infected edge, transmission beats recovery with probability \frac{\beta}{\beta + \delta} (independent exponential races — minimum distribution), and recompute R_0^{\text{graph}} of Theorem 3.2. Then show, by conditioning on the infectious period, that two edges leaving the same infective are both open with probability \frac{2\beta^2}{(\beta+\delta)(2\beta+\delta)}, which exceeds T^2: why does the exact coupling of Theorem 3.4 need a fixed infectious period?
★ Push-pull. Show that pull alone does start from a single informed node: each of the n-1 ignorant nodes calls it with probability 1/(n-1), so one node is informed per round on average, and a round informs nobody with probability about e^{-1}.
Write the exact recursions \mathbb{E}[k_{t+1} \mid k_t] for push alone and for pull alone. Check that both growth ratios are close to 2 while k_t = o(n), and that the push ratio is still 2 - e^{-1/2} \approx 1.39 at k_t = n/2 (Theorem 4.2).
★ Power of two choices. Simulate n balls into n bins (one choice vs two); plot max load vs n on a log scale and check the two asymptotics \frac{\ln n}{\ln \ln n} and \frac{\ln \ln n}{\ln 2} (Theorem 5.1); discuss the information cost (the bin must know its load) and the passage to the dynamic model (queue arrivals/departures).
★★ Triangle threshold. Complete the second moment of Theorem 1.6: compute \mathbb{E}[T(T-1)] by separating pairs of triangles that are disjoint, share a vertex, share an edge; deduce \mathrm{Var}(T) = o(\mathbb{E}[T]^2) when np \to \infty. What happens for K_4 (threshold n^{-2/3})?
★★ Preferential attachment. Redo the master equation of Theorem 2.5 with the rule \Pi(i) \propto d_i + \alpha (attachment with newborns): show p_k \sim k^{-\gamma} with \gamma = 3 + \alpha/m (set up the differential equation and differentiate as in the proof).
★★ Spectral threshold. Complete the proof of Theorem 3.3(i): justify the equality \sum_i x_i \sum_{j \sim i} u_j = \rho \sum_i x_i u_i (use (A u)_i = \rho u_i component by component); where do we use u > 0 (Perron–Frobenius) in the step \Phi_t \geq (\min_i u_i)\mathbf{1}_{\{\text{not extinct}\}} \ ?
On a clique of size K with a pendant path of length L, show that \min_i u_i decays geometrically in L, so this route gives no O(\log n) bound. Then prove the componentwise bound \mathbb{E}[x(t)] \leq e^{(\beta A - \delta I)t} x(0) and deduce \mathbb{P}(\text{not extinct at } t) \leq n\, e^{-(\delta - \beta\rho)t}.
★★ Submodularity. Prove the submodularity of reachability via the live-edge coupling of Theorem 4.4; show that the (1 - 1/e) bound is attained by the set-cover example; implement the CELF greedy algorithm on an SBM (1000 vertices) and compare with 20 random seeders.
★★★ Non-backtracking. For a path with n vertices, compute the spectrum of A and of B (tridiagonality); for a d-regular graph, show that \rho(B) = d - 1 (walks without U-turns on a local tree).
Implement sparse B (scipy.sparse) on an SBM with q = 2 blocks and check the Kesten–Stigum criterion of Theorem 6.3 by scanning (a, b) at fixed mean degree: plot the overlap 2\,\mathrm{acc} - 1 of Definition 6.2, which should stay near 0 below the threshold and become positive above it, up to finite-size blurring.
★★★ Paper. Choose a paper from ch. 9 (Ganesh–Massoulié–Towsley 2005; Massoulié 2014; Bordenave–Lelarge–Massoulié 2015; Hall–Massoulié 2023; Even–Koloskova–Massoulié 2024), read it and present it in 10 minutes: model, main theorem, proof idea, algorithm, numerical results, limitations. Grid: one figure re-explained, one experiment reproduced in a lab, one open question.
Projects and assessment
Official assessment (last published sheet, SynapseS 2025–2026): “Written final exam of 3 hours, all documents allowed; oral resit possible at the end of the year; numerical grade out of 20; course unit earned if final grade ≥ 10.” The unit is absent from the 2026–2027 catalogue and from the LLGA lists (notes kept for reference), so no LLGA modality applies. Everything below is a proposal sized for a 36 h course: solo subjects of 15–20 h, group subjects of 25–30 h per member, a written exam in the format of the sheet, and a rubric for the projects.
The projects exercise mainly two master objectives: O4 (graph-structured data: random graphs, epidemics and communities measured on real and synthetic networks) and O2 (generative modelling theory: Erdős–Rényi, the configuration model and the SBM as generative models with sharp thresholds). The knowledge-graph subject adds O5 (Graph × LLM) through Graph ML, and the alignment subject adds O8 (privacy of pseudonymized graphs). All of them train O7: every prediction of a theorem is checked against a simulation with error bars.
Solo projects
- [Solo · ≈ 20 h] Detectability at the Kesten–Stigum threshold: adjacency, non-backtracking and Bethe Hessian. Where does each spectral operator start to recover two planted communities in a sparse graph, and what do hubs change?
- Implement: two balanced blocks with mean degree d = (a+b)/2 = 3 and n = 20{,}000, scanning the signal-to-noise ratio \lambda = (a-b)^2 / (2(a+b)) from 0.5 to 3; then a degree-corrected variant with a few planted hubs. Score each method by the overlap 2\,\mathrm{acc} - 1, maximized over the swap of the labels.
- Operators: the adjacency A (Lab 3), the normalized Laplacian, the non-backtracking matrix B (Definition 6.4) and the Bethe Hessian H(r) = (r^2 - 1)I - rA + D at r = \sqrt{d}.
- Hint: away from \pm 1, B has the same eigenvalues as the 2n \times 2n matrix below, which is much cheaper to build (Ihara–Bass): \begin{pmatrix} 0 & D - I \\ -I & A \end{pmatrix}.
- Paper study: Krzakala, Moore, Mossel, Neeman, Sly, Zdeborová and Zhang, “Spectral redemption in clustering sparse networks”, PNAS 110(52), 2013; Saade, Krzakala and Zdeborová, “Spectral clustering of graphs with the Bethe Hessian”, NeurIPS 2014.
- Optional link: a two-layer GCN of Graph ML, ch. 5, given 1 % of the labels, to see how far a few labels move the threshold.
- Deliverables: code, 4–6 page report built around the overlap-versus-\lambda figure, 10-minute talk. Chapters: ch. 6, 8 (Lab 3) and Ex. 11.
- Success criterion: over 10 seeds, the overlaps of B and of the Bethe Hessian stay near 0 for \lambda < 1 and become clearly positive above it (test runs at \lambda = 1.2 give about 0.3 for B).
- Adjacency: without hubs it lags only near the threshold (below 0.1 at \lambda = 1.2) and catches up by \lambda = 3. With a few planted hubs it fails at every \lambda while B and the Bethe Hessian still detect; the report shows the localized eigenvectors responsible.
- [Solo · ≈ 20 h] Power law or not? Auditing scale-free claims. Which degree tails of real networks survive a rigorous power-law test, and what does each model of ch. 2 reproduce of them?
- Data: six SNAP networks of different kinds: ego-Facebook, ca-AstroPh (collaborations), email-Enron, soc-Epinions1, web-Stanford and roadNet-PA (a road network, as a negative control).
- Implement: the protocol of Clauset, Shalizi and Newman (SIAM Review 51, 2009): discrete maximum-likelihood exponent, k_{\min} chosen by the Kolmogorov–Smirnov distance, goodness-of-fit p-value by semi-parametric bootstrap, and likelihood-ratio tests against log-normal, exponential and truncated power-law tails (the
powerlawpackage is allowed, once checked against your own code). - Compare: clustering, effective diameter and degree tail of each network with fitted Barabási–Albert, configuration (degree-preserving rewiring) and Watts–Strogatz models — the table at the end of ch. 2.
- Paper study: Broido and Clauset, “Scale-free networks are rare”, Nature Communications 10, 1017, 2019 — place your six verdicts in their categories.
- Deliverables: code, 4-page report with one verdict table, 10-minute talk. Chapters: ch. 0, 2, 8 (Lab 1).
- Success criterion: on 100 synthetic samples of 10,000 values from a discrete power law with exponent 2.5, the estimated exponent is within 0.05 of the truth in at least 95 of them, and the bootstrap p-value exceeds 0.1 in about 90 % of the samples tested, as it should under the true model.
- On log-normal samples, the report says how often the likelihood ratio is significant, and in which direction. Every real verdict comes with its p-value and the sign and significance of each likelihood ratio.
- [Solo · ≈ 15 h] Random infectious periods: outbreak probability versus attack rate. At equal transmissibility T, how do the probability of a massive SIR epidemic on G(n, c/n) and its final size depend on the law of the infectious period? A paper study of Kenah and Robins, “Second look at the spread of epidemics on networks”, Physical Review E 76, 2007.
- Implement: the directed coupling of the proof of Theorem 3.4 (one infectious period per vertex, one clock per oriented edge) for fixed, exponential and gamma infectious periods with the same T.
- Predict: the attack rate from \rho = 1 - e^{-cT\rho}, and the outbreak probability 1 - q from the mixed Poisson branching of Theorem 3.2, solved numerically: q = \mathbb{E}\big[ \exp\big( -c\,(1 - e^{-\beta R})(1 - q) \big) \big].
- Prove: the pair probability of Theorem 3.4 and, by Jensen’s inequality, that the outbreak probability is at most \rho.
- Deliverables: code, 4-page report, 10-minute talk. Chapters: ch. 0, 1, 3 and Ex. 4.
- Success criterion: for c = 4 and T = 1/2, over 1,000 runs at n = 10^4, the measured attack rate is within 0.01 of \rho \approx 0.80 for every law, and each outbreak probability matches its prediction within two binomial standard errors, about 0.03 at 1,000 runs (the predictions are about 0.80 for a fixed period and 0.64 for an exponential one).
Group projects
- [Group of 3 · ≈ 30 h each] Cascades on a real social graph: thresholds, immunization and seeding. Do the thresholds of ch. 3 predict when a simulated contagion takes off on a real follower graph, and which interventions move them?
- Data: the SNAP “Higgs Twitter” dataset (De Domenico, Lima, Mougel and Musolesi, “The anatomy of a scientific rumor”, Scientific Reports 3, 2013): the follower graph of about 456,000 users, with the timestamped retweets, mentions and replies around the July 2012 announcement of the Higgs boson. Work on a k-core that fits in memory.
- Thresholds: the spectral bound 1/\rho(A), a sufficient condition for SIR to stay small (Draief, Ganesh and Massoulié, Annals of Applied Probability 18(2), 2008), against the configuration value T_c = \mathbb{E}[D] / \mathbb{E}[D(D-1)] of Theorem 3.5.
- Implement: configuration and DC-SBM null models with the same degrees (graph-tool); discrete SIR and independent-cascade simulators; random, degree-targeted and acquaintance immunization (Cohen, Havlin and ben-Avraham, Physical Review Letters 91, 2003); CELF greedy seeding against the top-degree heuristic (Theorem 4.4).
- Split of work: A: graph, null models and thresholds; B: simulators and immunization; C: seeding, a Hawkes fit of the real retweet times (branching ratio as an empirical R_0, ch. 3 note) and the evaluation.
- Deliverables: repository, 6-page report, 15-minute talk. Chapters: ch. 2, 3, 4, 6, 8.
- Success criterion: on the configuration null, the simulated SIR takeoff matches T_c within 10 % at two graph sizes; on the real graph, the report says which predicted threshold is closer and why (clustering, communities); every immunization and seeding curve has error bars over 20 runs.
- [Group of 3 · ≈ 30 h each] Modularity versus SBM inference on an LLM-built knowledge graph. When an LLM turns paragraphs into an entity graph, are the communities found by modularity real structure, resolution-limit artefacts or the noise of a sparse graph, and which partition gives the better GraphRAG summaries?
- Data: the paragraphs of about 1,000 questions of 2WikiMultiHopQA (Ho, Duong Nguyen, Sugawara and Aizawa, COLING 2020), whose gold evidence triples score the extraction; an open 7–8B instruct model (for example Qwen2.5-7B-Instruct) on a free GPU tier, with spaCy NER plus co-occurrence as a cheap baseline.
- Implement: the extraction to a knowledge graph; Louvain and Leiden over a range of resolutions; graph-tool’s flat and nested SBM (Peixoto, 2014); the same partitions on degree-preserving rewired copies (ch. 7 note, items 1–2).
- Measure: modularity and description length on the real and rewired graphs; NMI against a reference grouping (the entities of each question’s evidence); exact match of community-summary retrieval (Edge et al., “From local to global: a Graph RAG approach to query-focused summarization”, 2024) against BM25.
- Split of work: A: extraction and knowledge-graph quality; B: partitions and null models; C: summaries and question answering.
- Links: Graph ML, ch. 0, 9 and 10 (Louvain, the SBM, GraphRAG worked in 10.4), and the Year 1 capstone Y1.1, which reuses this knowledge graph.
- Deliverables: repository, 6-page report, 15-minute talk. Chapters: ch. 6, 7, 8.
- Success criterion: triple precision is measured against the gold triples; on the rewired copies, Louvain’s modularity and the number of blocks chosen by the SBM are both reported, so the spurious-community effect is quantified; the two partitions are compared on 200 questions with a paired bootstrap.
- [Group of 2 · ≈ 25 h each] De-anonymizing correlated graphs. How much correlation, and how many seeds, does an attacker need to re-identify the users of a pseudonymized social graph? A paper study of Hall and Massoulié, “Partial recovery in the graph alignment problem”, Operations Research 71(1), 2023 (ch. 9.5).
- Implement: correlated Erdős–Rényi pairs (a parent G(n, p), two copies that keep each edge with probability s, the second one relabelled at random) and correlated SBM pairs; seeded percolation matching (Yartseva and Grossglauser, COSN 2013); a seedless spectral aligner, GRAMPA (Fan, Mao, Wu and Xu, ICML 2020).
- Real graph: SNAP ego-Facebook (McAuley and Leskovec, NeurIPS 2012), split into two noisy copies in the same way.
- Optional link: fused Gromov–Wasserstein alignment from Optimal Transport, ch. 5, as a third aligner.
- Split of work: A: generators, seeded matching and the recovery map against s and the mean degree; B: spectral and transport aligners, the real-graph study, and a one-page note on what pseudonymization under the GDPR does and does not protect (ch. 7.2, graph alignment and privacy).
- Deliverables: repository, 5-page report, 15-minute talk. Chapters: ch. 1, 7, 9.
- Success criterion: the recovery map shows a sharp transition, placed against the exact-recovery threshold n p s^2 \approx \ln n (Cullina and Kiyavash, SIGMETRICS 2016) and the partial-recovery conditions of Hall and Massoulié; on ego-Facebook, the report gives the number of seeds needed to re-identify half of the users at s = 0.8, with error bars over 10 splits.
Written exam (proposal)
Three hours, all documents allowed (the format of the 2025–2026 sheet), no calculator needed; four independent questions. Use the values e^{-1/2} \approx 0.61, \quad e^{-1.6} \approx 0.20, \quad \ln 2 \approx 0.69, \quad \ln 3 \approx 1.10, \quad \ln(10^6) \approx 13.8, \quad \log_2(10^6) \approx 19.9, \quad \ln\ln(10^6) \approx 2.63.
Question (5 points). Two symmetric blocks, with p_{\mathrm{in}} = a/n and p_{\mathrm{out}} = b/n. (a) Define detection, partial recovery and exact recovery, and say in which degree regime each is the relevant question. (b) State the Kesten–Stigum condition and decide whether detection is possible for (a, b) = (5, 1) and (4, 2). (c) Explain why spectral clustering on A fails at bounded degrees, and what the non-backtracking matrix changes.
Expected:
- Definition 6.2, all with probability tending to 1 and up to the swap of the two labels: detection = an accuracy of at least 1/2 + \varepsilon for some fixed \varepsilon > 0 (an overlap bounded away from 0), at bounded degrees; partial recovery = an accuracy of at least a prescribed \alpha \in (1/2, 1); exact recovery = the whole partition, at degrees \Theta(\log n), with threshold \sqrt a - \sqrt b > \sqrt 2 in the \log n / n scaling.
- Detection is possible iff (a-b)^2 > 2(a+b) (Theorem 6.3): 16 > 12, so yes for (5, 1); 4 \leq 12, so no for (4, 2), where no estimator reaches an accuracy of 1/2 + \varepsilon with probability tending to 1.
- The highest degree is \Theta(\log n / \log\log n), and a star of degree \Delta has eigenvalue \sqrt\Delta, which exceeds the signal eigenvalue (a-b)/2; the top eigenvectors localize on hubs. B forbids immediate returns: its bulk lies in the disk of radius \sqrt d, and an informative eigenvalue escapes it exactly above the threshold (Theorem 6.5).
Question (6 points). SIR with a fixed infectious period and transmissibility T. (a) On G(n, 4/n) with T = 1/2, is a massive epidemic possible? Compute its final fraction to two decimals and the probability that it occurs. What changes for exponential infectious periods with the same T?
A fraction v of the vertices, chosen uniformly at random, is vaccinated before the outbreak: find the critical v.
On a configuration graph where half of the vertices have degree 2 and half degree 8, compute T_c and compare it with an Erdős–Rényi graph of the same mean degree.
Expected:
- cT = 2 > 1: yes (Theorem 3.4). Iterating \rho = 1 - e^{-2\rho} from 0.8 gives 0.798, then 0.797, so \rho \approx 0.80. With a fixed period the outbreak probability is the survival probability of a \mathrm{Pois}(2) branching, which solves the same equation: about 0.80. With exponential periods the threshold and \rho are unchanged, but the offspring is mixed Poisson and the outbreak probability drops (about 0.64).
- The unvaccinated vertices form G(n(1-v), c/n), of mean degree c(1-v); the threshold c(1-v)T = 1 gives v_c = 1 - 1/(cT) = 1/2.
- \mathbb{E}[D] = 5 and \mathbb{E}[D(D-1)] = (2 + 56)/2 = 29, so T_c = 5/29 \approx 0.17. For G(n, 5/n), \mathbb{E}[D(D-1)] = 25 and T_c = 0.20: degree heterogeneity lowers the threshold (Theorem 3.5).
Question (5 points). Let X be the number of isolated vertices of G(n, p). (a) Prove that \mathrm{Var}(X) = \mathbb{E}[X] + \mathbb{E}[X]^2\, \frac{p - 1/n}{1 - p}.
- Deduce that if np = \ln n - t_n with t_n \to \infty, then G(n, p) has an isolated vertex with high probability. (c) Show that if np = \ln n + t_n there is none with high probability, and say why this does not yet prove connectivity.
Expected:
- Write X as a sum of indicators: \mathbb{E}[X] = n(1-p)^{n-1}, and two distinct vertices are both isolated with probability (1-p)^{2n-3}, since they share one potential edge. Then \mathrm{Var}(X) = \mathbb{E}[X] + n(n-1)(1-p)^{2n-3} - \mathbb{E}[X]^2, and factoring \mathbb{E}[X]^2 gives the formula.
- Here p \to 0 and \mathbb{E}[X] = e^{t_n + o(1)} \to \infty, so \mathrm{Var}(X) / \mathbb{E}[X]^2 \to 0, and Chebyshev (Proposition 0.3) gives \mathbb{P}(X = 0) \to 0.
- \mathbb{E}[X] \approx e^{-t_n} \to 0 and Markov concludes. A disconnected graph may have no isolated vertex: one must still exclude components of every size from 2 to n/2, by the spanning-tree first moment of Theorem 1.4.
Question (4 points). Orders of magnitude for n = 10^6. (a) Write \mathbb{E}[k_{t+1} \mid k_t] for push on K_n and evaluate the growth ratio k_{t+1}/k_t when k_t = o(n) and when k_t = n/2. (b) Give the leading terms of the number of rounds of push and of push-pull (Theorem 4.2). (c) Give the leading terms of the maximum load with one and with two choices (Theorem 5.1), and say what the second choice buys.
Expected:
- An ignorant node stays ignorant if none of the k_t informed nodes calls it, so \mathbb{E}[k_{t+1} \mid k_t] = k_t + (n - k_t)\Big( 1 - \big(1 - \tfrac{1}{n-1}\big)^{k_t} \Big). The ratio tends to 2 when k_t = o(n), and is about 2 - e^{-1/2} \approx 1.39 at n/2.
- Push: \log_2 n + \ln n \approx 19.9 + 13.8 \approx 34 rounds. Push-pull: \log_3 n \approx 12.6 rounds, plus O(\log\log n), a few rounds.
- One choice: \ln n / \ln\ln n \approx 13.8 / 2.63 \approx 5.3. Two choices: \ln\ln n / \ln 2 \approx 3.8, plus O(1). The gain is modest at 10^6 but exponential in the asymptotics, for one extra probe per ball.
Total: 5 + 6 + 5 + 4 = 20 points.
Grading rubric (proposal)
| Criterion | Weight | What earns the marks |
|---|---|---|
| Correctness of proofs and derivations | 25 % | Statements and regimes are exact (thresholds, c < 1 versus c = 1, independence assumptions); proofs are complete or their gaps are named |
| Theory against simulation | 25 % | Every predicted number (threshold, final fraction, overlap, recovery rate) is checked by simulation with error bars over seeds; gaps are explained (finite size, wrong regime, bug) |
| Experimental design and null models | 15 % | A null model with the same degrees is used before any structure is claimed; parameter scans cover both sides of each threshold |
| Data and papers | 10 % | Datasets, versions and preprocessing are cited precisely; the paper’s main claim is reproduced or its limits are shown |
| Report and talk | 15 % | Clear figures, assumptions stated next to each conclusion, negative results reported, time limit respected |
| Reproducibility and teamwork | 10 % | One command reruns the results from fixed seeds; for groups, a visible split of the work |
References
- M. E. J. Newman, Networks, 2nd edition, Oxford University Press, 2018 — the module’s textbook: chapters on random graphs, epidemics, communities.
- R. van der Hofstad, Random Graphs and Complex Networks, Vol. 1, Cambridge University Press, 2017 — free on arXiv: the rigorous reference for ch. 1 (thresholds, Gumbel, percolation).
- B. Bollobás, Random Graphs, 2nd edition, Cambridge University Press, 2001 — the classic; the 1959-60 results of Erdős and Rényi put in shape.
- P. Erdős, A. Rényi, On Random Graphs I, Publicationes Mathematicae Debrecen 6, 1959 — the founding paper (connectivity threshold).
- D. Easley, J. Kleinberg, Networks, Crowds, and Markets, Cambridge University Press, 2010 — free online: the economics/society reading (small-world, network effects).
- M. O. Jackson, Social and Economic Networks, Princeton University Press, 2008 — the social sciences viewpoint.
- M. Molloy, B. Reed, A Critical Point for Random Graphs with a Given Degree Sequence, Random Structures & Algorithms 6, 1995 — the configuration model (ch. 2).
- D. J. Watts, S. H. Strogatz, Collective Dynamics of ‘Small-World’ Networks, Nature 393, 1998 — the small world (ch. 2).
- A.-L. Barabási, R. Albert, Emergence of Scaling in Random Networks, Science 286, 1999 — preferential attachment (Theorem 2.5).
- A. Clauset, C. R. Shalizi, M. E. J. Newman, Power-law Distributions in Empirical Data, SIAM Review 51, 2009 — the estimation protocol for power laws.
- R. Pastor-Satorras, A. Vespignani, Epidemic Spreading in Scale-Free Networks, Physical Review Letters 86, 2001 — the vanishing threshold (Theorem 3.5).
- R. Pastor-Satorras, C. Castellano, P. Van Mieghem, A. Vespignani, Epidemic Processes in Complex Networks, Reviews of Modern Physics 87, 2015 — the big survey of epidemics on graphs.
- A. Ganesh, L. Massoulié, D. Towsley, The Effect of Network Topology on the Spread of Epidemics, IEEE INFOCOM 2005 — the spectral threshold (Theorem 3.3; team, ch. 9.1).
- R. Karp, C. Schindelhauer, S. Shenker, B. Vöcking, Randomized Rumor Spreading, FOCS 2000 — push-pull (Theorem 4.2).
- B. Pittel, On Spreading a Rumor, SIAM Journal on Applied Mathematics 47, 1987 — the \log_2 n + \ln n of push (Theorem 4.2).
- U. Feige, D. Peleg, P. Raghavan, E. Upfal, Randomized Broadcast in Networks, Random Structures & Algorithms 1, 1990 — push on general graphs (ch. 4).
- D. Kempe, J. Kleinberg, É. Tardos, Maximizing the Spread of Influence through a Social Network, KDD 2003 — influence maximization (Theorem 4.4).
- G. L. Nemhauser, L. A. Wolsey, M. L. Fisher, An Analysis of Approximations for Maximizing Submodular Set Functions—I, Mathematical Programming 14, 1978 — the 1 - 1/e bound.
- M. E. J. Newman, Spread of Epidemic Disease on Networks, Physical Review E 66, 016128, 2002 — SIR as bond percolation on the configuration model (Theorems 3.4–3.5).
- E. Kenah, J. M. Robins, Second Look at the Spread of Epidemics on Networks, Physical Review E 76, 036113, 2007 — random infectious periods and directed percolation (Theorem 3.4).
- M.-A. Rizoiu, Y. Lee, S. Mishra, L. Xie, A Tutorial on Hawkes Processes for Events in Social Media, 2017 — Hawkes models of cascades (ch. 3 note).
- P. W. Holland, K. B. Laskey, S. Leinhardt, Stochastic Blockmodels: First Steps, Social Networks 5, 1983 — the birth of the SBM.
- B. Karrer, M. E. J. Newman, Stochastic Blockmodels and Community Structure in Networks, Physical Review E 83, 2011 — the DC-SBM.
- A. Decelle, F. Krzakala, C. Moore, L. Zdeborová, Inference and Phase Transitions in the Detection of Modules in Sparse Networks, Physical Review Letters 107, 2011 — the threshold conjecture (ch. 6).
- L. Massoulié, Community Detection Thresholds and the Weak Ramanujan Property, STOC 2014 — the feasibility threshold (Theorem 6.3; team, ch. 9.2).
- C. Bordenave, M. Lelarge, L. Massoulié, Non-backtracking Spectrum of Random Graphs: Community Detection and Non-regular Ramanujan Graphs, FOCS 2015; Annals of Probability 46(1), 2018 — the non-backtracking spectrum (Theorem 6.5; team, ch. 9.3).
- E. Abbe, Community Detection and Stochastic Block Models: Recent Developments, JMLR 18(177), 2018 — the big SBM survey.
- M. Girvan, M. E. J. Newman, Community Structure in Social and Biological Networks, PNAS 99, 2002 — the edge-betweenness divisive algorithm; modularity itself comes two years later (next entry).
- M. E. J. Newman, M. Girvan, Finding and Evaluating Community Structure in Networks, Physical Review E 69, 026113, 2004 — modularity (Definition 7.1).
- V. D. Blondel, J.-L. Guillaume, R. Lambiotte, E. Lefebvre, Fast Unfolding of Communities in Large Networks, Journal of Statistical Mechanics, 2008 — Louvain.
- S. Fortunato, M. Barthélemy, Resolution Limit in Community Detection, PNAS 104, 2007 — the resolution limit.
- T. P. Peixoto, Parsimonious Module Inference in Large Networks, Physical Review Letters 110, 148701, 2013; Hierarchical Block Structures and High-Resolution Model Selection in Large Networks, Physical Review X 4, 011047, 2014 — Bayesian and nested SBM inference (ch. 7).
- J. Leskovec, K. J. Lang, A. Dasgupta, M. W. Mahoney, Community Structure in Large Networks: Natural Cluster Sizes and the Absence of Large Well-Defined Clusters, Internet Mathematics 6, 2009.
- Y. Azar, A. Z. Broder, A. R. Karlin, E. Upfal, Balanced Allocations, SIAM Journal on Computing 29(1), 1999 — power of two choices (Theorem 5.1).
- M. Mitzenmacher, A. Richa, R. Sitaraman, The Power of Two Random Choices: A Survey of Techniques and Results, 2001 — the synthesis.
- M. Mitzenmacher, E. Upfal, Probability and Computing, 2nd edition, Cambridge University Press, 2017 — the coupon collector (ch. 2), Chernoff bounds (ch. 4), balls into bins and random graphs (ch. 5).
- F. Kelly, Charging and Rate Control for Elastic Traffic, European Transactions on Telecommunications 8(1), 1997 — proportional fairness (5.3).
- F. P. Kelly, A. K. Maulloo, D. K. H. Tan, Rate Control for Communication Networks: Shadow Prices, Proportional Fairness and Stability, Journal of the Operational Research Society 49(3), 1998 — decentralized convergence to proportional fairness (5.3).
- L. Massoulié, J. Roberts, Bandwidth Sharing: Objectives and Algorithms, INFOCOM 1999; IEEE/ACM Transactions on Networking 10(3), 2002 — minimum-potential-delay fairness and the realization of \alpha-fair sharing (5.3; team, ch. 9.4).
- S. Ioannidis, L. Massoulié, A. Chaintreau, Distributed Caching over Heterogeneous Mobile Networks, SIGMETRICS 2010; Queueing Systems 72, 2012 — decentralized caching (team, ch. 9.4).
- G. Hall, L. Massoulié, Partial Recovery in the Graph Alignment Problem, Operations Research 71(1), 2023 — graph alignment (team, ch. 9.5).
- M. Even, A. Koloskova, L. Massoulié, Asynchronous SGD on Graphs: A Unified Framework for Asynchronous Decentralized and Federated Optimization, AISTATS 2024 — distributed learning (team, ch. 9.5).
- R. Cosson, L. Massoulié, Collective Tree Exploration via Potential Function Method, ITCS 2024 — collective exploration (team, ch. 9.5).
- Tools: networkx (the lab simulations); graph-tool (Bayesian SBM); EoN (epidemics).