Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Jane Gao Joint work with Nick Wormald 15th January, 2016 27th June, 2016
Uniform generation of random regular graphs
Uniform generation of random regular graphs Jane Gao Joint work - - PowerPoint PPT Presentation
Section 1 Section 2 Section 3 Uniform generation of random regular graphs Jane Gao Joint work with Nick Wormald 15th January, 2016 27th June, 2016 Uniform generation of random regular graphs Section 1 Section 2 Section 3 Why? A
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ A classical TCS problem; ◮ Intimate connection with enumeration; ◮ Testing algorithms with random input; ◮ Coping with “big data”.
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Rejection algorithm ◮ Boltzmann sampler ◮ MCMC ◮ Coupling from the past ◮ Switching algorithm
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Tinhofer ’79 – non-uniform random generation. ◮ Rejection algorithm – uniform sampler for small d
◮ A. B´
◮ Bender and Canfield ’78; ◮ Bollob´
◮ MCMC – approximate sampler.
◮ Jerrum and Sinclair ’90 – for any d, FPTAS, but no explicit
◮ Cooper, Dyer and Greenhill ’07 – mixing time bounded by
◮ Greenhill ’15 – non-regular case, mixing time bounded by
◮ Switching algorithm – fast, uniform sampler.
◮ McKay and Wormald ’90 – for d = O(n1/3). ◮ Gao and Wormald ’15 (NEW) – for d = o(n1/2). Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Tinhofer ’79 – non-uniform random generation. ◮ Rejection algorithm – uniform sampler for small d
◮ A. B´
◮ Bender and Canfield ’78; ◮ Bollob´
◮ MCMC – approximate sampler.
◮ Jerrum and Sinclair ’90 – for any d, FPTAS, but no explicit
◮ Cooper, Dyer and Greenhill ’07 – mixing time bounded by
◮ Greenhill ’15 – non-regular case, mixing time bounded by
◮ Switching algorithm – fast, uniform sampler.
◮ McKay and Wormald ’90 – for d = O(n1/3). ◮ Gao and Wormald ’15 (NEW) – for d = o(n1/2). Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Tinhofer ’79 – non-uniform random generation. ◮ Rejection algorithm – uniform sampler for small d
◮ A. B´
◮ Bender and Canfield ’78; ◮ Bollob´
◮ MCMC – approximate sampler.
◮ Jerrum and Sinclair ’90 – for any d, FPTAS, but no explicit
◮ Cooper, Dyer and Greenhill ’07 – mixing time bounded by
◮ Greenhill ’15 – non-regular case, mixing time bounded by
◮ Switching algorithm – fast, uniform sampler.
◮ McKay and Wormald ’90 – for d = O(n1/3). ◮ Gao and Wormald ’15 (NEW) – for d = o(n1/2). Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Tinhofer ’79 – non-uniform random generation. ◮ Rejection algorithm – uniform sampler for small d
◮ A. B´
◮ Bender and Canfield ’78; ◮ Bollob´
◮ MCMC – approximate sampler.
◮ Jerrum and Sinclair ’90 – for any d, FPTAS, but no explicit
◮ Cooper, Dyer and Greenhill ’07 – mixing time bounded by
◮ Greenhill ’15 – non-regular case, mixing time bounded by
◮ Switching algorithm – fast, uniform sampler.
◮ McKay and Wormald ’90 – for d = O(n1/3). ◮ Gao and Wormald ’15 (NEW) – for d = o(n1/2). Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Tinhofer ’79 – non-uniform random generation. ◮ Rejection algorithm – uniform sampler for small d
◮ A. B´
◮ Bender and Canfield ’78; ◮ Bollob´
◮ MCMC – approximate sampler.
◮ Jerrum and Sinclair ’90 – for any d, FPTAS, but no explicit
◮ Cooper, Dyer and Greenhill ’07 – mixing time bounded by
◮ Greenhill ’15 – non-regular case, mixing time bounded by
◮ Switching algorithm – fast, uniform sampler.
◮ McKay and Wormald ’90 – for d = O(n1/3). ◮ Gao and Wormald ’15 (NEW) – for d = o(n1/2). Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Other methods – asymptotic approximate sampler.
◮ Steger and Wormald ’99 – for d = n1/28; ◮ Kim and Vu ’06 – for d ≤ n1/3−ǫ; ◮ Bayati, Kim and Saberi ’10 – for d ≤ n1/2−ǫ; ◮ Zhao ’13 – for d = o(n1/3).
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Other methods – asymptotic approximate sampler.
◮ Steger and Wormald ’99 – for d = n1/28; ◮ Kim and Vu ’06 – for d ≤ n1/3−ǫ; ◮ Bayati, Kim and Saberi ’10 – for d ≤ n1/2−ǫ; ◮ Zhao ’13 – for d = o(n1/3).
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ If P is uniformly distributed in Si, is P′ uniformly distributed
◮ No. ◮ Because
◮ The number (N(P)) of ways to perform a switching to P ∈ Si
◮ The number (N′(P′)) of ways to reach P′ ∈ Si−1 via a
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ If P is uniformly distributed in Si, is P′ uniformly distributed
◮ No. ◮ Because
◮ The number (N(P)) of ways to perform a switching to P ∈ Si
◮ The number (N′(P′)) of ways to reach P′ ∈ Si−1 via a
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ If P is uniformly distributed in Si, is P′ uniformly distributed
◮ No. ◮ Because
◮ The number (N(P)) of ways to perform a switching to P ∈ Si
◮ The number (N′(P′)) of ways to reach P′ ∈ Si−1 via a
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Use rejection to enforce uniformity of P′ ∈ Si−1. ◮ Once a random switching (P, P′) is chosen.
◮ perform an f-rejection to equalise the probability of a switching
◮ perform a b-rejection to equalise the probability that P′ is
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Use rejection to enforce uniformity of P′ ∈ Si−1. ◮ Once a random switching (P, P′) is chosen.
◮ perform an f-rejection to equalise the probability of a switching
◮ perform a b-rejection to equalise the probability that P′ is
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Inductively, the final pairing P′ is uniformly distributed in S0,
◮ P′ represents a uniformly random d-regular graph. ◮ The probability of a rejection is away from 1 if d = O(n1/3).
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Inductively, the final pairing P′ is uniformly distributed in S0,
◮ P′ represents a uniformly random d-regular graph. ◮ The probability of a rejection is away from 1 if d = O(n1/3).
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Inductively, the final pairing P′ is uniformly distributed in S0,
◮ P′ represents a uniformly random d-regular graph. ◮ The probability of a rejection is away from 1 if d = O(n1/3).
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ variation of N(P) is too big for P ∈ Si, causing big f-rejection
◮ variation of N′(P′) is too big for P ∈ Si−1, causing big
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ variation of N(P) is too big for P ∈ Si, causing big f-rejection
◮ variation of N′(P′) is too big for P ∈ Si−1, causing big
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ variation of N(P) is too big for P ∈ Si, causing big f-rejection
◮ variation of N′(P′) is too big for P ∈ Si−1, causing big
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Each switching is associated with a type τ ∈ T and a class
◮ The Markov chain among (Si)i≥0 cycles; ◮ The algorithm needs to decide which type of switchings to be
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Each switching is associated with a type τ ∈ T and a class
◮ The Markov chain among (Si)i≥0 cycles; ◮ The algorithm needs to decide which type of switchings to be
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Each switching is associated with a type τ ∈ T and a class
◮ The Markov chain among (Si)i≥0 cycles; ◮ The algorithm needs to decide which type of switchings to be
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Each switching is associated with a type τ ∈ T and a class
◮ The Markov chain among (Si)i≥0 cycles; ◮ The algorithm needs to decide which type of switchings to be
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ We no longer equalise the transition probabilities out of or
◮ This equalisation is done within each switching class α ∈ A. ◮ For each P ∈ Si, the algorithm probabilistically determines
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ We no longer equalise the transition probabilities out of or
◮ This equalisation is done within each switching class α ∈ A. ◮ For each P ∈ Si, the algorithm probabilistically determines
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ We no longer equalise the transition probabilities out of or
◮ This equalisation is done within each switching class α ∈ A. ◮ For each P ∈ Si, the algorithm probabilistically determines
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ We no longer equalise the transition probabilities out of or
◮ This equalisation is done within each switching class α ∈ A. ◮ For each P ∈ Si, the algorithm probabilistically determines
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
τ ρτ(i),
α(P′′)}/N′ α(P′);
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ The algorithm is defined after we fix all parameters ρτ(i),
◮ These probabilities are designed to equalise the expected
◮ Thereby we deduce a system of equations that ρτ(i) must
◮ We describe an efficient scheme to find a desirable solution to
◮ done!
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
Uniform generation of random regular graphs
Section 1 Section 2 Section 3
◮ Larger d. ◮ General degree sequences. ◮ Heavily-tailed degree sequences such as power-law sequences. ◮ New switchings.
Uniform generation of random regular graphs