EXAMPLE: RR FOR THE ISING MODEL 147
that P(X (b)=1|A, X(a)=−1)+P(X (b)=−1|A , X (a)=−1)=1, but P(X(b)=
1|A,X(a)=−1)+P(X(b)=−1|A,X(a)=−1) < 1for
β
> 0. What should be done
with the rest of the probability?
In this case, there is no valid unfrozen choice of X(b) to make, so the node b
should remain frozen at 1. But this comes at a cost: the only way that b could have
remained frozen is if X(a)=1. So by making this choice of keeping b frozen, a must
be refrozen at the value of 1.
So just as in the SSST for the random walk from the previous section, the RR al-
gorithm for the Ising model attempts to advance by unfreezing a node, but sometimes
must retreat by refreezing neighboring nodes.
This refreezing of neighboring nodes is bad, but it is not as bad as the general
acceptance/rejection approach, which throws away entirely the old sample whenever
rejection occurs. Here, some remnant of the sample can be kept, as only the neighbors
of the node are frozen. This process of keeping some of the sample is called recycling,
and this is the key to making this approach linear time for nontrivial values of
β
.
This approach can be broken down into the following seven pieces.
1. There is the set of configurations from which we are attempting to sample.
2. There is a set of frozen nodes whose label is fixed.
3. Conditioned on the labels of the frozen nodes, there exists a distribution on the
unfrozen nodes.
4. There is a target distribution over the set of configurations.
5. When all the nodes are unfrozen, the distribution on unfrozen nodes matches the
target distribution.
6. When all the nodes are frozen, it is easy to sample.
7. There is a method of moving from the current state and current set of frozen nodes
to a new state and set of frozen nodes such that the correct distribution on unfrozen
nodes is maintained.
Let x
∗
denote the set of frozen nodes in a graph, and consider the general problem
of how a frozen node v ∈ x
∗
should be attempted to be made unfrozen. For c ∈
{−1,1},let f
c
denote the number of frozen neighbors of v that have color c,andn
c
the number of unfrozen neighbors of v that have color c.
Suppose for concreteness that v is frozen at label 1. Then the factor for the weight
from edges adjacent to v whose other endpoint is not frozen is exp(n
1
β
).Whenv
is unfrozen, if v is unfrozen at 1, then the weight should gain an extra factor of
exp( f
1
β
), since all o f those f
1
edges would now move from an unfrozen node to a
frozen node.
If v is unfrozen at −1, then the weight should gain an extra factor of exp([ f
−1
+
n
−1
]
β
), but also a factor of exp(−n
1
β
), since those n
1
edges no longer contribute to
the weight. Hence
P(X(v)=1|X (x
∗
),n
1
,n
−1
, f
1
, f
−1
) ∝ exp(f
1
β
)
P(X(v)=−1|X(x
∗
),n
1
,n
−1
, f
1
, f
−1
) ∝ exp(( f
−1
+ n
−1
−n
1
)
β
).
To find the constant of proportionality, it is necessary to maximize exp( f
1
β
)+