随机算法 (Spring 2013)/Mixing Time and Coupling: Difference between revisions
imported>Etone No edit summary |
imported>Etone |
||
(9 intermediate revisions by the same user not shown) | |||
Line 42: | Line 42: | ||
Both the formal proofs of the monotonicity of <math>\Delta_x(t)</math> and the above proposition uses the coupling technique and is postponed to next section. | Both the formal proofs of the monotonicity of <math>\Delta_x(t)</math> and the above proposition uses the coupling technique and is postponed to next section. | ||
=Coupling of Two Distributions= | =Coupling= | ||
We will discuss how to bound the mixing time by coupling two Markov chains. Before that, we will first formally introduce the coupling of two probability distributions. | |||
==Coupling of Two Distributions== | |||
Coupling is a powerful proof technique in probability theory. It allows us to compare two unrelated variables (or processes) by forcing them to share some randomness. | Coupling is a powerful proof technique in probability theory. It allows us to compare two unrelated variables (or processes) by forcing them to share some randomness. | ||
{{Theorem|Definition (coupling)| | {{Theorem|Definition (coupling)| | ||
Line 110: | Line 113: | ||
Let <math>X_0=x</math> and <math>Y_0</math> follow the stationary distribution <math>\pi</math>. Two chains <math>X_0,X_1,X_2,\ldots</math> and <math>Y_0,Y_1,Y_2,\ldots</math> can be defined by the initial distributions <math>X_0</math> and <math>Y_0</math>. The distributions of <math>X_t</math> and <math>Y_t</math> are <math>p_x^{(t)}</math> and <math>\pi</math>, respectively. | Let <math>X_0=x</math> and <math>Y_0</math> follow the stationary distribution <math>\pi</math>. Two chains <math>X_0,X_1,X_2,\ldots</math> and <math>Y_0,Y_1,Y_2,\ldots</math> can be defined by the initial distributions <math>X_0</math> and <math>Y_0</math>. The distributions of <math>X_t</math> and <math>Y_t</math> are <math>p_x^{(t)}</math> and <math>\pi</math>, respectively. | ||
For any fixed <math>t</math>, we can couple <math>X_t</math> and <math>Y_t</math> such that <math>\Pr[ | For any fixed <math>t</math>, we can couple <math>X_t</math> and <math>Y_t</math> such that <math>\Pr[X_t\neq Y_t]=\|p_x^{(t)}-\pi\|_{TV}=\Delta_x(t)</math>. Due to the Coupling Lemma, such coupling exists. We then define a coupling between <math>X_{t+1}</math> and <math>Y_{t+1}</math> as follows. | ||
* If <math>X_t=Y_t</math>, then <math>X_{t+1}=Y_{t+1}</math> following the transition matrix of the Markov chain. | * If <math>X_t=Y_t</math>, then <math>X_{t+1}=Y_{t+1}</math> following the transition matrix of the Markov chain. | ||
* Otherwise, do the transitions <math>X_t\rightarrow X_{t+1}</math> and <math>Y_t\rightarrow Y_{t+1}</math> independently, following the transitin matrix. | * Otherwise, do the transitions <math>X_t\rightarrow X_{t+1}</math> and <math>Y_t\rightarrow Y_{t+1}</math> independently, following the transitin matrix. | ||
Line 124: | Line 127: | ||
}} | }} | ||
=Rapid Mixing by Coupling= | ==Rapid Mixing by Coupling== | ||
Consider an ergodic (irreducible and aperiodic) Markov chain on state space <math>\Omega</math>. We want to upper bound its mixing time. The coupling technique for bounding the mixing time can be sumerized as follows: | Consider an ergodic (irreducible and aperiodic) Markov chain on finite state space <math>\Omega</math>. We want to upper bound its mixing time. The coupling technique for bounding the mixing time can be sumerized as follows: | ||
:Consider two random walks starting at state <math>x</math> and <math>y</math> in <math>\Omega</math>. Each individual walk follows the transition rule of the original Markov chain. But the two random walks may be "''coupled''" in some way, that is, may be correlated with each other. A key observation is that for any such coupling, it always holds that | :Consider two random walks starting at state <math>x</math> and <math>y</math> in <math>\Omega</math>. Each individual walk follows the transition rule of the original Markov chain. But the two random walks may be "''coupled''" in some way, that is, may be correlated with each other. A key observation is that for any such coupling, it always holds that | ||
::<math>\Delta(t) | ::<math>\Delta(t) | ||
Line 196: | Line 199: | ||
:<math>\begin{align} | :<math>\begin{align} | ||
\Pr[X_{t+\tau}\neq Y_{t+\tau}\mid X_t=u,Y_t=v] | \Pr[X_{t+\tau}\neq Y_{t+\tau}\mid X_t=u,Y_t=v] | ||
&=\|p_u^{( | &=\|p_u^{(\tau)}-p_v^{(\tau)}\|_{TV}\ | ||
&\le \|p_u^{(\tau)}-\pi\|_{TV}+\|p_v^{(\tau)}-\pi\|_{TV}\ | &\le \|p_u^{(\tau)}-\pi\|_{TV}+\|p_v^{(\tau)}-\pi\|_{TV}\ | ||
&= \Delta_u(\tau)+\Delta_v(\tau)\ | &= \Delta_u(\tau)+\Delta_v(\tau)\ | ||
Line 221: | Line 224: | ||
}} | }} | ||
=Random Walk on the Hypercube= | ==Application: Random Walk on the Hypercube== | ||
A <math>n</math>-dimensional [http://en.wikipedia.org/wiki/Hypercube '''hypercube'''] is a graph on vertex set <math>\{0,1\}^n</math>. For any <math>x,y\in\{0,1\}^n</math>, there is an edge between <math>x</math> and <math>y</math> if <math>x</math> and <math>y</math> differ at exact one coordinate (the hamming distance between <math>x</math> and <math>y</math> is 1). | A <math>n</math>-dimensional [http://en.wikipedia.org/wiki/Hypercube '''hypercube'''] is a graph on vertex set <math>\{0,1\}^n</math>. For any <math>x,y\in\{0,1\}^n</math>, there is an edge between <math>x</math> and <math>y</math> if <math>x</math> and <math>y</math> differ at exact one coordinate (the hamming distance between <math>x</math> and <math>y</math> is 1). | ||
Line 254: | Line 257: | ||
Note that the number of states (vertices in the <math>n</math>-dimensional hypercube) is <math>2^n</math>. Therefore, the mixing time is exponentially small compared to the size of the state space. | Note that the number of states (vertices in the <math>n</math>-dimensional hypercube) is <math>2^n</math>. Therefore, the mixing time is exponentially small compared to the size of the state space. | ||
=Card Shuffling= | |||
We consider the Markov chain of shuffling a deck of cards, and prove the rapid mixing of the chain by coupling. | |||
==Riffle Shuffle== | |||
The following is the Gilbert-Shannon-Reeds model of riffle shuffle introduced by Gilbert and Shannon in 1955 and independently by Reeds in 1985. | |||
{{Theorem| Riffle Shuffle (Gilbert-Shannon 1955; Reeds 1985)| | |||
:Given a deck of <math>n</math> cards, at each round, do as follows. | |||
# Split the original deck into two decks according to the binomial distribution <math>\mathrm{Bin}(n,1/2)</math>. | |||
#: Cut off the first <math>k</math> cards with probability <math>\frac{{n\choose k}}{2^n}</math>, put into the left deck, and put the rest <math>n-k</math> cards into the right deck. | |||
# Drop cards in sequence, where the next card comes from one of the two decks with probability proportional to the size of the deck at that time. | |||
#: Suppose at a step there are <math>L</math> cards in the left deck and <math>R</math> cards in the right deck. A card is dropped from left with probability <math>\frac{L}{L+R}</math>, and from right otherwise. | |||
}} | |||
The second step actually samples a uniform interleaving of left and right deck. The magician and mathematician Diaconis in 1988 found evidence showing that this mathematical model reasonably approximate the riffle shuffling acted by human. | |||
The above model is equivalent to the following model of inverse riffle shuffle. | |||
{{Theorem|Inverse Riffle Shuffle| | |||
# Label each card with a bit from <math>\{0,1\}</math> uniformly and independently at random. | |||
# Place all cards labeled with 0 above all cards labeled with 1, keeping the cards with the same label in the same the relative order as before. | |||
}} | |||
The process of inverse riffle shuffle is depicted as follows. | |||
:[[image:Riffle.png|800px]] | |||
For each card, the random bits used for labeling the card compose a binary code <math>x</math>, with the <math>t</math>-th bit (from lower to higher radix) <math>x_t</math> being the random bit chosen in round <math>t</math> to label the card. | |||
{{Theorem|Lemma| | |||
:After every round of the inverse riffle shuffle, the cards are sorted in non-decreasing order of their corresponding binary codes. | |||
}} | |||
{{Proof| | |||
By induction. After the first round, all <math>0</math> are above all <math>1</math>s. Assume that the hypothesis is true for the first <math>t-1</math> rounds. After the <math>t</math>-th round, all cards with the highest coordinate <math>x_t=0</math> are above all cards with <math>x_t=1</math>, and by the definition of inverse riffle shuffle, cards with the same highest bit <math>x_t</math> are kept in the same relative order as they are after the <math>(t-1)</math>-th round of the shuffling, which due to the hypothesis, means that the cards with the same highest bit <math>x_t</math> are sorted in the non-decreasing order of <math>x_{t-1}x_{t-2}\cdots x_1</math>. By the definition of binary representation, all cards are sorted. | |||
}} | |||
==Rapid Mixing of Riffle Shuffle by Coupling== | |||
{{Theorem|Theorem| | |||
:The mixing time of inverse riffle shuffle of a deck of <math>n</math> cards is <math>\tau_{\mathrm{mix}}=O(\log n)</math>. | |||
}} | |||
Consider two instance of shuffling, started with two decks, each in an arbitrary order. We couple the two shuffling processes by coupling their random choices of labelings: | |||
* In each round, we label the same cards (same content, not the same order) in the two decks with the same random bit. | |||
Formally, for each <math>i\in[n]</math>, we uniformly and independently choose a random <math>b_i\in\{0,1\}</math> as the label of the card <math>i</math> in each of the two decks in that round. It is easy to see that, each of the two shuffling processes viewed individually follows exactly the rules of inverse riffle shuffle. | |||
{{Theorem|Lemma| | |||
:With the above coupling rule, started with arbitrary two decks of cards, the two decks are the same once all cards in the first (or the second) deck have distinct labels. | |||
}} | |||
{{Proof| | |||
By the definition of the coupling rule, any two identical cards in the two decks always have the same label, since in every round they choose the same random bit. And we have shown that after each round, the labels are sorted in non-decreasing order. Thus, we can conclude: | |||
* after each round, the sequences of the labels of the two decks are identical (and sorted in non-decreasing order). | |||
Therefore, when all cards in the first deck have distinct labels, the second deck have the same set of distinct labels, and the cards are sorted increasingly in their labels in the respective decks. Since any two identical cards have the same labels, the cards in the two decks must be in the same order. | |||
}} | |||
We denote by <math>T</math> the random variable representing the time that in an inverse riffle shuffle, all cards in the deck have distinct labels. Due to the coupling lemma for Markov chains, | |||
:<math>\Delta(t)\le\Pr[T\ge t]</math>. | |||
This bound can be deduced from the birthday problem. After <math>t</math> round, each of the <math>n</math> cards is randomly assigned one of the <math>2^t</math> possible labels. We know that for some <math>2^t=O(n^2)</math>, i.e. <math>t=2\log n+O(1)</math>, the probability that no two cards have the same label is <math>>1-1/2\mathrm{e}</math>, i.e. <math>\Delta(t)<1/2\mathrm{e}</math>, thus | |||
:<math>\tau_{\mathrm{mix}}\le 2\log n+O(1)</math>. | |||
Note that the state space is the set of all permutations, which is of size <math>n!</math>, whose logarithm is still as large as <math>\log (n!)=O(n\ln n)</math> due to Stirling's approximation. Thus the riffle shuffle is mixing extremely fast. | |||
This estimation of mixing time is fairly tight. For the case that <math>n=52</math>, the real mixing rate is as follows. | |||
:{|border="2" cellspacing="4" cellpadding="3" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse;empty-cells:show;" | |||
|- | |||
|<math>t</math>||1||2||3||4||5||6||7||8||9 | |||
|- | |||
|<math>\Delta(t)</math>||1.000|| 1.000|| 1.000|| 1.000|| 0.924|| 0.614|| 0.334|| 0.167|| 0.003 | |||
|} | |||
=Graph Colorings= | |||
A '''proper coloring''' of a graph <math>G(V,E)</math> is a mapping <math>f:V\rightarrow[q]</math> for some integer <math>q</math>, satisfying that <math>f(u)\neq f(v)</math> for all <math>uv\in E</math>. | |||
We consider the problem of sampling a uniformly random proper coloring of a given graph. We will later see that this is useful for counting the number of proper colorings of a given graph, which is a fundamental combinatorial problem, having important applications in statistic physics. | |||
Let's first consider the decision version of the problem. That is, given as input a graph <math>G(V,E)</math>, decide whether there exists a proper <math>q</math>-coloring of <math>G</math>. Denote by <math>\Delta</math> the maximum degree of <math>G</math>. | |||
* If <math>q\ge \Delta+1</math>, there always exists a proper coloring. Moreover, the proper coloring can be found by a simple greedy algorithm. | |||
* If <math>q=\Delta</math>, <math>G</math> has a proper coloring unless it contains a <math>(\Delta+1)</math>-clique or it is an odd cycle. ([http://en.wikipedia.org/wiki/Brooks'_theorem Brooks Theorem]) | |||
* If <math>q<\Delta</math>, the problem is NP-hard. | |||
Sampling a random coloring is at least as hard as deciding its existence, so we don't expect to solve the sampling problem when <math>q<\Delta</math>. The decision problem for the case <math>q=\Delta</math> is also nontrivial. Thus people are interested only in the case when <math>q\ge \Delta+1</math>. | |||
The following is a natural Markov chain for sampling proper colorings. | |||
{{Theorem|Markov Chain for Graph Coloring <math>\mathcal{M}_c</math>| | |||
:Start with a proper coloring of <math>G(V,E)</math>. At each step: | |||
# Pick a vertex <math>v\in V</math> and a color <math>c\in[q]</math> uniformly at random. | |||
# Change the color of <math>v</math> to <math>c</math> if the resulting coloring is proper; do nothing if otherwise. | |||
}} | |||
For a fixed graph <math>G(V,E)</math>, the state space of the above Markov chain is the set of all proper colorings of <math>G</math> with <math>q</math> colors. | |||
{{Theorem|Lemma| | |||
The followings hold for <math>\mathcal{M}_c</math>. | |||
# Aperiodic. | |||
# The transition matrix is symmetric. | |||
# Irreducible if <math>q\ge \Delta+2</math>. | |||
}} | |||
The followings are the two most important conjectures regarding the problem. | |||
{{Theorem|Conjecture| | |||
#<math>\mathcal{M}_c</math> has mixing time <math>O(n\ln n)</math> whenever <math>q\ge\Delta+2</math>. | |||
# Random sampling of proper graph colorings can be done in polynomial time whenever <math>q\ge\Delta+1</math>. | |||
}} | |||
These two conjectures are still open. People approach them by relax the requirement for the number of colors <math>q</math>. Intuitively, the larger the <math>q</math> is, the more freedom we have, the less dependency are there between non-adjacent vertices. | |||
==Rapid mixing of the case <math>q> 4\Delta</math>== | |||
We couple the two copies of <math>\mathcal{M}_c</math>, <math>X_t</math> and <math>Y_t</math>, by the following coupling rule: | |||
* At each step, let <math>X_t</math> and <math>Y_t</math> choose the same vertex <math>v</math> and same color <math>c</math>. | |||
Note that by this coupling, it is possible that <math>v</math> is recolored to <math>c</math> in both chains, in one of the two chains, or in no chain. We may separate these cases by looking at the Hamming distance between two colorings. | |||
Let <math>d(X_t,Y_t)</math> be the number of vertices whose colors in <math>X_t</math> and <math>Y_t</math> disagree. For each step, for any choice of vertex <math>v</math> and color <math>c</math>, there are three possible cases: | |||
* '''"Good move"''' (<math>d(X_t,Y_t)</math> decreases by 1): <math>X_t</math> disagree with <math>Y_t</math> at <math>v</math>, and <math>c</math> is not used in the colors of <math>v</math> in both <math>X_t</math> and <math>Y_t</math>. | |||
* '''"Bad move"''' (<math>d(X_t,Y_t)</math> increases by 1): | |||
* '''"Neutral move"''' (<math>d(X_t,Y_t)</math> is unchanged): |
Latest revision as of 13:52, 31 July 2013
Mixing Time
The mixing time of a Markov chain gives the rate at which a Markov chain converges to the stationary distribution. To rigorously define this notion, we need a way of measuring the closeness between two distributions.
Total Variation Distance
In probability theory, the total variation distance measures the difference between two probability distributions.
Definition (total variation distance) - Let
and be two probability distributions over the same finite state space , the total variation distance between and is defined as ,
- where
is the -norm of vectors.
- Let
It can be verified (left as an exercise) that
,
thus the total variation distance can be equivalently defined as
.
So the total variation distance between two distributions gives an upper bound on the difference between the probabilities of the same event according to the two distributions.
Mixing Time
Definition (mixing time) - Let
be the stationary of the chain, and be the distribution after steps when the initial state is . is the distance to stationary distribution after steps, started at state . is the maximum distance to stationary distribution after steps. is the time until the total variation distance to the stationary distribution, started at the initial state , reaches . is the time until the total variation distance to the stationary distribution, started at the worst possible initial state, reaches .
- Let
We note that
Definition (mixing time) - The mixing time
of a Markov chain is .
- The mixing time
The mixing time is the time until the total variation distance to the stationary distribution, starting from the worst possible initial state
Proposition for any integer . .
So the distance to stationary distribution
Both the formal proofs of the monotonicity of
Coupling
We will discuss how to bound the mixing time by coupling two Markov chains. Before that, we will first formally introduce the coupling of two probability distributions.
Coupling of Two Distributions
Coupling is a powerful proof technique in probability theory. It allows us to compare two unrelated variables (or processes) by forcing them to share some randomness.
Definition (coupling) - Let
and be two probability distributions over . A probability distribution over is said to be a coupling if its marginal distributions are and ; that is
- Let
The interesting case is when
Lemma (coupling lemma) - Let
and be two probability distributions over .
- For any coupling
of and , it holds that . - There exists a coupling
of and such that .
- Let
Proof. - 1.
Suppose
follows the distribution over . Due to the definition of coupling,Then for any
, , thusTherefore,
- 2.
We can couple
and so that for each , with probability . The remaining follows as above.
The proof is depicted by the following figure, where the curves are the probability density functions for the two distributions
Monotonicity of
Consider a Markov chain on state space
We will show that
Proposition is non-decreasing in .
Proof. Let
and follow the stationary distribution . Two chains and can be defined by the initial distributions and . The distributions of and are and , respectively.For any fixed
, we can couple and such that . Due to the Coupling Lemma, such coupling exists. We then define a coupling between and as follows.- If
, then following the transition matrix of the Markov chain. - Otherwise, do the transitions
and independently, following the transitin matrix.
It is easy to see that the marginal distributions of
and both follow the original Markov chain, andIn conclusion, it holds that
where the first inequality is due to the easy direction of the Coupling Lemma.
- If
Rapid Mixing by Coupling
Consider an ergodic (irreducible and aperiodic) Markov chain on finite state space
- Consider two random walks starting at state
and in . Each individual walk follows the transition rule of the original Markov chain. But the two random walks may be "coupled" in some way, that is, may be correlated with each other. A key observation is that for any such coupling, it always holds that - where we recall that
.
Definition (coupling of Markov chain) - A coupling of a Markov chain with state space
and transition matrix , is a Markov chain with state space , satisfying
- each of
and viewed in isolation is a faithful copy of the original Markov chain, i.e. ;
- once
and reaches the same state, they make identical moves ever since, i.e. if .
- A coupling of a Markov chain with state space
Lemma (coupling lemma for Markov chains) - Let
be a coupling of a Markov chain with state space . Then for is bounded by .
- Let
Proof. Due to the coupling lemma (for probability distributions),
where
are distributions of the Markov chain at time , started at states .Therefore,
Corollary - Let
be a coupling of a Markov chain with state space . Then for is bounded as follows: .
- Let
Geometric convergence
Consider a Markov chain on state space
; ; ; ; .
We prove that
Proposition for any integer . .
Proof. - 1.
We denote that
. We construct a coupling of the Markov chain as follows. Suppose for some integer .- If
then for . - For the case that
for some , we couple the and so that . Due to the Coupling Lemma, such coupling does exist.
For any
that ,Thus
by the law of total probability. Therefore, for any ,Then by induction,
and this holds for any
. By the Coupling Lemma for Markov chains, this means .- 2.
By the definition of
, the inequality is straightforwardly implied by (1).
Application: Random Walk on the Hypercube
A
We use coupling to bound the mixing time of the following simple random walk on a hypercube.
Random Walk on Hypercube - At each step, for the current state
:
- with probability
, do nothing; - else, pick a coordinate
uniformly at random and flip the bit (change to ).
- At each step, for the current state
This is a lazy uniform random walk in an
Random Walk on Hypercube - At each step, for the current state
:
- pick a coordinate
uniformly at random and a bit uniformly at random; - let
.
- At each step, for the current state
It is easy to see the two random walks are the same. The second form hint us to couple the random choice of
- At each step,
and choose the same (uniformly random) coordinate and the same (uniformly random) bit .
Obviously the two individual random walks are both faithful copies of the original walk.
For arbitrary
Thus for any
which implies that
.
So the random walk achieves a polynomially small variation distance
Note that the number of states (vertices in the
Card Shuffling
We consider the Markov chain of shuffling a deck of cards, and prove the rapid mixing of the chain by coupling.
Riffle Shuffle
The following is the Gilbert-Shannon-Reeds model of riffle shuffle introduced by Gilbert and Shannon in 1955 and independently by Reeds in 1985.
Riffle Shuffle (Gilbert-Shannon 1955; Reeds 1985) - Given a deck of
cards, at each round, do as follows.
- Split the original deck into two decks according to the binomial distribution
.- Cut off the first
cards with probability , put into the left deck, and put the rest cards into the right deck.
- Cut off the first
- Drop cards in sequence, where the next card comes from one of the two decks with probability proportional to the size of the deck at that time.
- Suppose at a step there are
cards in the left deck and cards in the right deck. A card is dropped from left with probability , and from right otherwise.
- Suppose at a step there are
- Given a deck of
The second step actually samples a uniform interleaving of left and right deck. The magician and mathematician Diaconis in 1988 found evidence showing that this mathematical model reasonably approximate the riffle shuffling acted by human.
The above model is equivalent to the following model of inverse riffle shuffle.
Inverse Riffle Shuffle - Label each card with a bit from
uniformly and independently at random. - Place all cards labeled with 0 above all cards labeled with 1, keeping the cards with the same label in the same the relative order as before.
- Label each card with a bit from
The process of inverse riffle shuffle is depicted as follows.
For each card, the random bits used for labeling the card compose a binary code
Lemma - After every round of the inverse riffle shuffle, the cards are sorted in non-decreasing order of their corresponding binary codes.
Proof. By induction. After the first round, all
are above all s. Assume that the hypothesis is true for the first rounds. After the -th round, all cards with the highest coordinate are above all cards with , and by the definition of inverse riffle shuffle, cards with the same highest bit are kept in the same relative order as they are after the -th round of the shuffling, which due to the hypothesis, means that the cards with the same highest bit are sorted in the non-decreasing order of . By the definition of binary representation, all cards are sorted.
Rapid Mixing of Riffle Shuffle by Coupling
Theorem - The mixing time of inverse riffle shuffle of a deck of
cards is .
- The mixing time of inverse riffle shuffle of a deck of
Consider two instance of shuffling, started with two decks, each in an arbitrary order. We couple the two shuffling processes by coupling their random choices of labelings:
- In each round, we label the same cards (same content, not the same order) in the two decks with the same random bit.
Formally, for each
Lemma - With the above coupling rule, started with arbitrary two decks of cards, the two decks are the same once all cards in the first (or the second) deck have distinct labels.
Proof. By the definition of the coupling rule, any two identical cards in the two decks always have the same label, since in every round they choose the same random bit. And we have shown that after each round, the labels are sorted in non-decreasing order. Thus, we can conclude:
- after each round, the sequences of the labels of the two decks are identical (and sorted in non-decreasing order).
Therefore, when all cards in the first deck have distinct labels, the second deck have the same set of distinct labels, and the cards are sorted increasingly in their labels in the respective decks. Since any two identical cards have the same labels, the cards in the two decks must be in the same order.
We denote by
.
This bound can be deduced from the birthday problem. After
.
Note that the state space is the set of all permutations, which is of size
This estimation of mixing time is fairly tight. For the case that
1 2 3 4 5 6 7 8 9 1.000 1.000 1.000 1.000 0.924 0.614 0.334 0.167 0.003
Graph Colorings
A proper coloring of a graph
We consider the problem of sampling a uniformly random proper coloring of a given graph. We will later see that this is useful for counting the number of proper colorings of a given graph, which is a fundamental combinatorial problem, having important applications in statistic physics.
Let's first consider the decision version of the problem. That is, given as input a graph
- If
, there always exists a proper coloring. Moreover, the proper coloring can be found by a simple greedy algorithm. - If
, has a proper coloring unless it contains a -clique or it is an odd cycle. (Brooks Theorem) - If
, the problem is NP-hard.
Sampling a random coloring is at least as hard as deciding its existence, so we don't expect to solve the sampling problem when
The following is a natural Markov chain for sampling proper colorings.
Markov Chain for Graph Coloring - Start with a proper coloring of
. At each step:
- Pick a vertex
and a color uniformly at random. - Change the color of
to if the resulting coloring is proper; do nothing if otherwise.
- Start with a proper coloring of
For a fixed graph
Lemma The followings hold for
.- Aperiodic.
- The transition matrix is symmetric.
- Irreducible if
.
The followings are the two most important conjectures regarding the problem.
Conjecture has mixing time whenever .- Random sampling of proper graph colorings can be done in polynomial time whenever
.
These two conjectures are still open. People approach them by relax the requirement for the number of colors
Rapid mixing of the case
We couple the two copies of
- At each step, let
and choose the same vertex and same color .
Note that by this coupling, it is possible that
Let
- "Good move" (
decreases by 1): disagree with at , and is not used in the colors of in both and . - "Bad move" (
increases by 1): - "Neutral move" (
is unchanged):