Chapter 9
Advanced Acceptance/Rejection
Happiness can exist only in acceptance.
George Orwell
Chapter 2 presented the acceptance/rejection (AR) protocol, which runs into trou-
ble wh e n naively applied to permutation problems suc h as estimating the permanent
and h igh-dimensional Markov random field problems, such as sampling from the
Ising model. This is because typically the number of combinatorial objects in a set
grows exponentially in the dimension. In this chapter three ideas are introduced to
deal with this problem, sequential acceptance/rejection (SAR), partially recur sive ac-
ceptance/rejection (PRAR), and popping. Together with the ability to preprocess a
given problem instance, SAR gave the first perfect simulation algorithms for estimat-
ing the permanent that has provably polynomial time over a nontrivial subclass of
nonnegative matrices. PRAR allows the acceptance/rejection approach to be applied
to Markov random fields such as the Ising or autonormal model without involving
Markov chains in any way. Popping allows the p ieces of the sample that are blocking
acceptance to be pruned away, giving a perfect simulation algorithm for sampling
from the rooted trees of a graph.
9.1 Sequential a cceptance/rejection
Theoretically, AR can be used on any set where the set has an upper bound. For
instance, if A is a finite set with #A ≤ M,simplydrawU ∼ Unif([0,M]) until U ∈
(0,#A]. If the elements of #A are numbered, then return element U.
Unfortunately, numbering the elements of A is not always possible in practice,
especially when the upper bound is not given through a complex argument rather
than a simple assignment of number to object.
Sequential acceptance/rejection (SAR) can be employed when an upper bound
on the partition function can be shown using either induction o r strong induction.
For instance, suppose that the goal is to sample from an unnormalized density
on the set of permutations on n objects, so P(X =
σ
)=w(
σ
)/
∑
σ
∈S
n
w(
σ
),where
∑
σ
∈S
n
w(
σ
) is difficult to compute.
When X(1) is assigned, the remaining components X(2),...,X(n) form a permu-
tation of the elements {1, 2,...,n}{X(1)}. A problem where assigning one com-
ponent leaves a subset of objects of the same type is called self-reducible, and this
161