Transcript
Page 1: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Markov-chain Monte Carlo algorithms forstudying cycle spaces, with some

applications to graph colouring

Tim Garoni

Department of Mathematics and StatisticsUniversity of Melbourne (?)

April 20, 2011Monash Discrete Maths Seminar

Page 2: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Collaborators/References

1. Qingquan Liu, Youjin Deng, TGLoop models in three dimensions,in preparation.

2. Qingquan Liu, Youjin Deng, TG, and Jesús SalasIrreducible Markov-chain Monte Carlo algorithm for zero-temperature Pottsantiferromagnets,in preparation.

3. Qingquan Liu, Youjin Deng, and TG,Worm Monte Carlo study of the honeycomb-lattice loop model,Nucl. Phys. B 846, 283-315 (2011).

4. Wei Zhang, TG, and Youjin Deng,A worm algorithm for the fully-packed loop model,Nucl. Phys. B 814, 461-484 (2009).

5. Youjin Deng, TG, and Alan D. Sokal,Dynamic Critical Behavior of the Worm Algorithm for the Ising Model,Phys. Rev. Lett. 99, 110601 (2007).

Page 3: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms

Page 4: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models

Page 5: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method

Page 6: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models

Page 7: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

Page 8: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature

Page 9: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm

Page 10: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm◮ (Non)-irreducibility of WSK algorithm at zero temperature

Page 11: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm◮ (Non)-irreducibility of WSK algorithm at zero temperature◮ Using worm algorithm instead

Page 12: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

Page 13: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3

Page 14: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds

Page 15: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

Page 16: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

Page 17: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

◮ If G is large its infeasible to calculate ZG,n,x =∑

A∈C(G) nc(A) x |A|

Page 18: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

◮ If G is large its infeasible to calculate ZG,n,x =∑

A∈C(G) nc(A) x |A|

◮ So how can we sample from φG,n,x(·)?

Page 19: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

Page 20: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

Page 21: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π

Page 22: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

Page 23: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity

Page 24: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S

Page 25: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S◮ If P is irreducible it has a unique stationary distribution π

Page 26: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S◮ If P is irreducible it has a unique stationary distribution π

Theorem (Ergodic Theorem)If P is irreducible with stationary distribution π then for any initialdistribution

1N

N∑

n=1

f (Xn) −−−−→N→∞

s∈S

π(s) f (s) a.s.

Page 27: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π

Page 28: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

Page 29: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)

Page 30: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)

Page 31: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

Page 32: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

Page 33: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case

Page 34: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

Page 35: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is

Page 36: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random

Page 37: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random

Page 38: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

Page 39: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

Page 40: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

◮ Local moves from S → S easy to construct

Page 41: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious

Page 42: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)

Page 43: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)

Page 44: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

Page 45: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)

Page 46: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

Page 47: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

Page 48: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 49: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 50: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 51: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 52: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 53: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 54: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

◮ Use Metropolis to construct Pn,x in detailed balance with

πn,x(A,u, v) ∝ nc(A) x |A|

Page 55: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

Page 56: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V

Page 57: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

Page 58: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

◮ Only observe Pn,x chain when u = v

Page 59: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

◮ Only observe Pn,x chain when u = v

◮ Get new chain, Pn,x , in detailed balance with πn,x

Page 60: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

Page 61: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

S

Σ

Page 62: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

S

Σ

Page 63: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

◮ Transition matrix is

(P)ss′ := (P)ss′ +

∞∑

n=0

s0,s1,...,sn∈Σ

(P)ss0

n∏

l=1

(P)sl−1sl (P)sns′

S

Σ

Page 64: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

◮ Transition matrix is

(P)ss′ := (P)ss′ +

∞∑

n=0

s0,s1,...,sn∈Σ

(P)ss0

n∏

l=1

(P)sl−1sl (P)sns′

S

Σ

◮ P is in detailed balance with

πs =πs∑

s′∈Σ πs′

, s ∈ Σ

Page 65: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

S

Σ

Page 66: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

Page 67: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

Page 68: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

◮ P ′ is in detailed balance with

π′s =

{πs s ∈ Σ

(1 − (P)ss)πs s ∈ Σ

Page 69: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

◮ P ′ is in detailed balance with

π′s =

{πs s ∈ Σ

(1 − (P)ss)πs s ∈ Σ

◮ P ′ is in detailed balance with π′s = πs = πs∑

s′∈Σ πs′, s ∈ Σ

Page 70: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

Page 71: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

Page 72: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)

Page 73: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching

Page 74: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles

Page 75: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings

Page 76: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model

Page 77: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

Page 78: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞

Page 79: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞◮ Rejection-free algorithm remains valid

Page 80: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞◮ Rejection-free algorithm remains valid

◮ n = 1 similar to Jerrum & Sinclair’s perfect matching algorithm

Page 81: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

Page 82: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

Page 83: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

Page 84: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

Page 85: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

Page 86: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

Page 87: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

Page 88: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 89: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 90: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 91: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 92: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 93: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 94: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 95: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 96: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 97: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 98: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)

Page 99: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

Page 100: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

◮ Pn is in detailed balance with φn(A) ∝ nc(A)

Page 101: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

◮ Pn is in detailed balance with φn(A) ∝ nc(A)

◮ Pn is irreducible

Page 102: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducible

Page 103: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

Page 104: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

◮ If u 6= v then Pn always lets us to do the following:

Page 105: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u

Page 106: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′ w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u

Page 107: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′ w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

Page 108: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

Page 109: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 110: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 111: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 112: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 113: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 114: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 115: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 116: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 117: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 118: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)

Page 119: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge

Page 120: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge

Page 121: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge◮ Add vacant B-edge and start again

Page 122: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge◮ Add vacant B-edge and start again

Page 123: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ V

Page 124: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

v v ′

Page 125: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

Page 126: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

Page 127: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 128: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 129: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 130: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 131: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 132: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 133: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 134: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 135: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 136: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 137: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 138: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 139: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 140: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

◮ But each edge is traversed (flipped) exactly twice so A′′ = A

Page 141: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

Page 142: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

Page 143: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

Page 144: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green

Page 145: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green

Page 146: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

Page 147: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

Page 148: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

Page 149: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

◮ Cycle must be even◮ alternates green, red, . . . , green, red

Page 150: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

◮ Cycle must be even◮ alternates green, red, . . . , green, red

◮ v u . . . t w is the desired path

Page 151: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

Page 152: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic

Page 153: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings

Page 154: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

Page 155: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

◮ Wang-Swendsen-Kotecký (WSK)◮ Extension of SW to treat antiferromagnetic Potts

Page 156: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

◮ Wang-Swendsen-Kotecký (WSK)◮ Extension of SW to treat antiferromagnetic Potts

◮ WSK at T = 0 equivalent to “Kempe changes”◮ Each cluster is a Kempe chain

Page 157: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

Page 158: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

Page 159: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithmµ = ν =

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

Page 160: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithmµ = ν =

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}

Page 161: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}

Page 162: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

Page 163: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

Page 164: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 165: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 166: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 167: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rigorous results for WSK algorithm

◮ Irreducible on all graphs when T > 0◮ Irreducible on all graphs G when T = 0 and q ≥ ∆(G) + 1◮ Irreducible on all bipartite graphs when T = 0◮ Non-irreducible at T = 0:

◮ q = 4 on triangular lattice (on torus) (Mohar & Salas 2009)◮ q = 3 on kagome lattice (on torus) (Mohar & Salas 2010)

Page 168: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rigorous results for WSK algorithm

◮ Irreducible on all graphs when T > 0◮ Irreducible on all graphs G when T = 0 and q ≥ ∆(G) + 1◮ Irreducible on all bipartite graphs when T = 0◮ Non-irreducible at T = 0:

◮ q = 4 on triangular lattice (on torus) (Mohar & Salas 2009)◮ q = 3 on kagome lattice (on torus) (Mohar & Salas 2010)

◮ Worm algorithm for honeycomb-lattice fully-packed loop modelcan be used to simulate both these models

Page 169: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

Page 170: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

Page 171: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

Page 172: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

Page 173: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice

Page 174: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice

Page 175: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)

Page 176: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)

Page 177: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)◮ Both models display critical phenomena

Page 178: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)◮ Both models display critical phenomena◮ Wang-Swendsen-Kotecký algorithm proved non-irreducible

Page 179: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

Page 180: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +

Page 181: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +

Page 182: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

Page 183: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

Page 184: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

Page 185: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

Page 186: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0

Page 187: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0◮ Single-spin-flip algorithms non-irreducible at T = 0

Page 188: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0◮ Single-spin-flip algorithms non-irreducible at T = 0◮ Tailor-made cluster algorithms non-irreducible at T = 0

Page 189: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Summary

◮ Worm algorithms provide a simple way to simulatehoneycomb-lattice loop models

◮ Proven valid for all n, x > 0, including x = +∞

◮ For n = 1,2 also provide provably irreducible algorithms forcertain critical antiferromagnetic models

◮ Cluster algorithms fail for these models

Page 190: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 191: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 192: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 193: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Structure of the defect clusterPartition R(G) according to structure of defect cluster

R = E ∪ T ∪ D ∪Θ

b b

b

u,v

(A,u, v) ∈ E

Cycle

b b

b

bb

uv

(A,u, v) ∈ D

Dumbbell

b b

b

bb

uv

(A,u, v) ∈ T

Tadpole

b b

b

b

b

u

v

(A,u, v) ∈ Θ

Theta graph

Page 194: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Worm algorithm for fully-packed loop model

◮ Transition matrix:

Pn[(A,u, v) → (A△uu′,u′, v)] = Pn[(A, v ,u) → (A△uu′, v ,u′)]

=

1/2 (A,u, v) ∈ E ,

1/2 (A,u, v) ∈ T ,

1/6 (A,u, v) ∈ Θ,

n/2(n + 2) (A,u, v) ∈ D and uu′ is a bridge,1/2(n + 2) (A,u, v) ∈ D and uu′ is not a bridge.

◮ Stationary distribution:

πn(A,u, v) =nc(A)

Zn

1/3 (A,u, v) ∈ E ,

1/3 (A,u, v) ∈ T ,

(n + 2)/3n (A,u, v) ∈ D,

1/n (A,u, v) ∈ Θ.

Page 195: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:

Page 196: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

Page 197: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

Page 198: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

Page 199: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

◮ Simultaneous Breadth-First-Search (BFS) much simpler◮ Polynomial-time with small (known) exponent (k -arm)

Page 200: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

◮ Simultaneous Breadth-First-Search (BFS) much simpler◮ Polynomial-time with small (known) exponent (k -arm)

◮ If n > 1 the “colouring method” avoids the issue entirely

Page 201: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G

Page 202: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model

Page 203: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model◮ Loop model corresponds to

W (C) =

{n x |E(C)| C is a cycle or isolated vertex0 otherwise

Page 204: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model◮ Loop model corresponds to

W (C) =

{n x |E(C)| C is a cycle or isolated vertex0 otherwise

◮ Simulate PW by introducing auxiliary vertex variables (colours)◮ Like SW, choose bonds conditioned on colours & vice versa

Page 205: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

Page 206: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

Page 207: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

Page 208: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

Page 209: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate

Page 210: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)

Page 211: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)

Page 212: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)

Page 213: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)◮ Get algorithms for q > 1 FK and n > 1 loop models

Page 214: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)◮ Get algorithms for q > 1 FK and n > 1 loop models

◮ No connectivity-checking needed

Page 215: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

SW for antiferromagnetic Ising

SW for antiferromagnetic Ising model on finite graph G = (V ,E)

P(σ,n) ∝∏

ij∈E

[(1 − p) δωij ,0 + p(1 − δσi ,σj )δωij ,1]

Page 216: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

Page 217: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring

Page 218: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring

Page 219: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

Page 220: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

◮ Union of red and vacant edges= spin domain for σ

Page 221: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

− − − −− − − −

− − − −− − − −

− − − −− − − −

− − − −

+ + ++ +

+ + ++ +

+ + ++ +

+ + +◮ Union of red and vacant edges

= spin domain for σ

Page 222: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ

Page 223: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations

Page 224: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations◮ −− = 1, −+ = 2, +− = 3, ++ = 4

Page 225: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations◮ −− = 1, −+ = 2, +− = 3, ++ = 4

Page 226: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

Page 227: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

Page 228: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

Page 229: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

Page 230: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

◮ Define the autocorrelation function

ρX (t) :=〈XsXs+t〉π − 〈X 〉2

π

varπ(X )

Page 231: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

◮ Define the autocorrelation function

ρX (t) :=〈XsXs+t〉π − 〈X 〉2

π

varπ(X )◮ Stationary process – start “in equilibrium”

Page 232: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

Page 233: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

◮ If X̂ is the sample mean of {Xt}Tt=1 then we have

var(X̂ ) ∼ 2 τint,Xvar(X )

T, T → ∞

Page 234: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

◮ If X̂ is the sample mean of {Xt}Tt=1 then we have

var(X̂ ) ∼ 2 τint,Xvar(X )

T, T → ∞

◮ 1 “effectively independent” observation every 2 τint,X steps

Page 235: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

Page 236: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

Page 237: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

◮ Start the chain with arbitrary distribution α

◮ Distribution at time t is αP t

Page 238: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

◮ Start the chain with arbitrary distribution α

◮ Distribution at time t is αP t

LemmaαP t tends to π with rate bounded by e−t/τexp

Page 239: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

Page 240: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

◮ More precisely, we have a family of exponents:zexp, and zint,X for each observable X .

Page 241: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

◮ More precisely, we have a family of exponents:zexp, and zint,X for each observable X .

◮ Different algorithms for the same model can have very different z◮ E.g. d = 2 Ising model

◮ Glauber (Metropolis) algorithm z ≈ 2◮ Swendsen-Wang algorithm z ≈ 0.2


Top Related