On sampling and approximate counting

64
On sampling and approximate counting Mark Jerrum Queen Mary, University of London Coll` ege de France, 9th January 2018 Mark Jerrum (Queen Mary) On sampling and approximate counting Coll` ege de France, 9/1/2018 1 / 27

Transcript of On sampling and approximate counting

Page 1: On sampling and approximate counting

On sampling and approximate counting

Mark Jerrum

Queen Mary, University of London

College de France, 9th January 2018

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 1 / 27

Page 2: On sampling and approximate counting

Example 1: Matchings (monomer-dimer)

Instance: a graph G = (V, E).

A matching is a collection M ⊆ E of vertex-disjoint edges.

π(M) = λ|M|/Zmatch, where Zmatch = Zmatch(G, λ) =∑M

λ|M|.

Task: Sample from π, efficiently.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 2 / 27

Page 3: On sampling and approximate counting

Example 2: Independent sets (hard-core gas)

Instance: a graph G = (V, E).

An independent set is a subset S ⊆ V of non-adjacent vertices.

π(S) = λ|S|/ZIS, where ZIS = ZIS(G, λ) =∑S

λ|S|.

Task: As before.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 3 / 27

Page 4: On sampling and approximate counting

Estimating the partition function

A related computational task is estimating the partition functionsZmatch(G, λ) and ZIS(G, λ) for a specified graph G and activity λ,within specified relative error.

MetatheoremSampling combinatorial structures and estimating the associatedpartition function are of equivalent computational difficulty.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 4 / 27

Page 5: On sampling and approximate counting

Estimating the partition function

A related computational task is estimating the partition functionsZmatch(G, λ) and ZIS(G, λ) for a specified graph G and activity λ,within specified relative error.

MetatheoremSampling combinatorial structures and estimating the associatedpartition function are of equivalent computational difficulty.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 4 / 27

Page 6: On sampling and approximate counting

Computational complexity

Viewpoint: A computational problem istractable if it can be solved in a number ofsteps that scales as a polynomial in the size ofthe instance (e.g., number of vertices).The study of counting problems was initiatedby Leslie Valiant.

Leslie Valiant

Exact evaluation of the partition function is intractable(#P-complete) in both examples.

Sampling configurations is tractable in one example andintractable in the other.

Estimation of the partition function is tractable in one exampleand intractable in the other.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 5 / 27

Page 7: On sampling and approximate counting

Approach 1: Rejection sampling (Dart throwing)

All subsets of E

Matchings

Until success:I Choose M ⊆ E uniformly at random.I If M is a matching, output M.

Correct distribution (for λ = 1), but exponential running time.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 6 / 27

Page 8: On sampling and approximate counting

Approach 2: Markov chain Monte Carlo (MCMC)

M := ∅.Repeat for sufficiently many steps:

I Choose e ∈ E uniformly at random, and let M ′ :=M⊕ e.I If M ′ is a matching then M :=M ′; otherwise, do nothing.

Return M.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 7 / 27

Page 9: On sampling and approximate counting

Mixing time

The trial just described defines thetransition probabilities P of a Markov chainon state space

Ω = All matchings in G.

This Markov chain converges to astationary distribution π that is uniformon Ω. Andrei A. Markov

We are interested in the mixing time τ of the Markov chain, i.e., thetime to convergence to near stationarity.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 8 / 27

Page 10: On sampling and approximate counting

Canonical paths/Multi-commodity flow

For every pair of states x, y ∈ Ω, define a canonical path γxy from x

to y using valid transitions of the MC.“Congestion constant” ρ:∑

γxy3(z,z ′)

π(x)π(y) |γxy| 6 ρπ(z)P(z, z′), ∀z, z ′.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 9 / 27

Page 11: On sampling and approximate counting

Canonical paths/Multi-commodity flow

For every pair of states x, y ∈ Ω, define a canonical path γxy from x

to y using valid transitions of the MC.“Congestion constant” ρ:∑

γxy3(z,z ′)

π(x)π(y) |γxy| 6 ρπ(z)P(z, z′), ∀z, z ′.

“flow” through a transition

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 9 / 27

Page 12: On sampling and approximate counting

Canonical paths/Multi-commodity flow

For every pair of states x, y ∈ Ω, define a canonical path γxy from x

to y using valid transitions of the MC.“Congestion constant” ρ:∑

γxy3(z,z ′)

π(x)π(y) |γxy| 6 ρπ(z)P(z, z′), ∀z, z ′.

“flow” through a transition capacity of the transition

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 9 / 27

Page 13: On sampling and approximate counting

Canonical paths/Multi-commodity flow

For every pair of states x, y ∈ Ω, define a canonical path γxy from x

to y using valid transitions of the MC.“Congestion constant” ρ:∑

γxy3(z,z ′)

π(x)π(y) |γxy| 6 ρπ(z)P(z, z′), ∀z, z ′.

Theorem (Diaconis, Stroock;Sinclair)

τ = O(ρ logπ−1min).

Alistair Sinclair

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 9 / 27

Page 14: On sampling and approximate counting

Low congestion implies no “bottleneck”

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 10 / 27

Page 15: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 16: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 17: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 18: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 19: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 20: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 21: On sampling and approximate counting

Richer set of transitions

Convenient to augment existing “add” and “delete” transitions witha “slide”:

[Broder, 1986; J. & Sinclair, 1988]

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 11 / 27

Page 22: On sampling and approximate counting

Canonical paths for matchings

To get from the blue matching. . .

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 12 / 27

Page 23: On sampling and approximate counting

Canonical paths for matchings

. . . to the red matching. . .

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 12 / 27

Page 24: On sampling and approximate counting

Canonical paths for matchings

. . . first superimpose red and blue (symmetric difference). . .

and then “unwind” each component (path or cycle).

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 12 / 27

Page 25: On sampling and approximate counting

“Unwinding” a cycle

The cycle:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 26: On sampling and approximate counting

“Unwinding” a cycle

Initial matching:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 27: On sampling and approximate counting

“Unwinding” a cycle

After 1 step:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 28: On sampling and approximate counting

“Unwinding” a cycle

After 2 steps:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 29: On sampling and approximate counting

“Unwinding” a cycle

After 3 steps:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 30: On sampling and approximate counting

“Unwinding” a cycle

After 4 steps (final matching):

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 13 / 27

Page 31: On sampling and approximate counting

Encoding a canonical path through a transition

A transition:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 14 / 27

Page 32: On sampling and approximate counting

Encoding a canonical path through a transition

An encoding (matching):

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 14 / 27

Page 33: On sampling and approximate counting

Encoding a canonical path through a transition

Superposition reveals the initial and final matching:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 14 / 27

Page 34: On sampling and approximate counting

Encoding a canonical path through a transition

Superposition reveals the initial and final matching:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 14 / 27

Page 35: On sampling and approximate counting

Encoding a canonical path through a transition

Superposition reveals the initial and final matching:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 14 / 27

Page 36: On sampling and approximate counting

Calculating the congestion

The encoding argument shows that the number of canonical pathspassing through a given transition is roughly equal to the size of thestate space.

Pursuing the calculation in more detail yields:

Theorem (J. & Sinclair)

ρ = O(nmλ2), where n = |V |, m = |E| and λ = maxλ, 1.

Corollary

τ = O(nm2λ2).

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 15 / 27

Page 37: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 38: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 39: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 40: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 41: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 42: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 43: On sampling and approximate counting

Return to independent sets

Consider an analogous set of transitions.

E.g., [Luby and Vigoda, Bubley and Dyer].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 16 / 27

Page 44: On sampling and approximate counting

Clustering at higher activities

The diamonds are the vertices in the independent set; the colourred/blue indicates parity.

At high enough λ there is a bias towards red or blue. (E.g., red“islands” in a blue “sea”.) This leads to a constriction in thestate space.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 17 / 27

Page 45: On sampling and approximate counting

Example 3: sampling from a convex body

[Dyer, Frieze & Kannan, 1991], [Lovasz & Simonovits, 1997].

K

Initial point

"Ball walk"

Exploit the geometry directly (c.f. Cheeger inequality).

Mixing is rapid, provided K ⊆ Rn is not “long and thin”, specifically,τ = poly(n, diamK).

Technically, surprisingly hard!

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 18 / 27

Page 46: On sampling and approximate counting

Some other successes

Proper colourings of a bounded degree graph, a.k.a.antiferromagnetic Potts model [Various].

Partition function of the Ferromagnetic Ising model [J. andSinclair].

Bases of a “balanced” matroid [Feder and Mihail].

Linear extensions of a partial order. [Khachiyan and Karzanov],[Bubley and Dyer].

Feasible solutions to an instance of the knapsack problem[Morris and Sinclair].

Perfect matchings in a bipartite graph [J., Sinclair and Vigoda].

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 19 / 27

Page 47: On sampling and approximate counting

A renaissance

MCMC was to a close approximation the only game in town.That situation has changed in the last ten years with a rapidexpansion of techniques. Can be explored in the context of theindependent sets model.Started with Weitz [2006] who exploited decay of correlations toproduce a deterministic algorithm. Uses O(logn) depth explorationsfrom a vertex v to estimate the probability that v is in a randomindependent set.

Theorem (Weitz, 2006)

If λ < λc(d) then there is an FPRAS for ZIS(λ) on graphs ofmaximum degree d.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 20 / 27

Page 48: On sampling and approximate counting

A renaissance (continued)

Here λc(d) is the location of the phase transition (unique versusmultiple Gibbs measures) in an infinite regular tree of degree d. Thisresult prompts the daring conjecture that the phase transition in theusual physical sense coincides with a phase transition forcomputational tractability. Indeed:

Theorem (Sly, 2010; Galanis, Ge, Stefankovic, Vigoda andYang, 2012; Sly and Sun, 2012)

If λ > λc(d) then ZIS(λ) is NP-hard to approximate, even for graphsof maximum degree d.

So, remarkably, for graphs of bounded degree d, the critical valueλc(d) is also the boundary between computational tractability andintractability.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 21 / 27

Page 49: On sampling and approximate counting

A renaissance (continued)

Another significant line of attack was introduced by Barvinok, andtaken forward by Patel and Regts.

The idea is to consider a Taylor expansion of logZ about some pointwhere the partition function is easy to evaluate. Then byenumerating small substructures, one can estimate the first fewcoefficients in the expansion. This in turn gives a good estimate forZ at a hard-to-evaluate point.

For this to work we need there to be no zeros in the neighbourhoodin which we are performing the Taylor expansion.

Zeros of the partition function Z are associated with phasetransitions: another connection to the physics of spin systems!

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 22 / 27

Page 50: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

A further recent approach is to efficient sampling is Partial rejectionsampling [J. & Guo, 2017]:

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 23 / 27

Page 51: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 52: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

→ 1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 53: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

→ 2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 54: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

→ 3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 55: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

→ 4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 56: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

→ 4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 57: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

→ 2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 58: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

→ 3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 59: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

→ 4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 60: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

→ 4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 61: On sampling and approximate counting

Independent sets by Partial Rejection Sampling

1. Randomize each vertex (in/out).Consider the connected componentsinduced by the in-vertices.

2. Let Bad be the set of vertices inconnected components of size atleast 2.

3. Resample = Bad ∪ ∂Bad.

4. Resample variables in set Resample.Check independence.

When the algorithm stops, it yields a uniform independent set.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 24 / 27

Page 62: On sampling and approximate counting

Unblocking sets

The key property of the set Resample is that it is unblocking underthe current assignment σ to the variables.

DefinitionA set U of variables is unblocking under σ if σ[U] determines thetruth value of all clauses that share variables with U (and not justthe clauses containing only variables from U

The resampling set from the independent set example wasunblocking.

In applications we also require that U is “adapted” to σ.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 25 / 27

Page 63: On sampling and approximate counting

Partial rejection sampling

Algorithm 1 Partial Rejection Sampling

PRS(V,Φ) // Φ is a formula on variable set VSample, from the product distribution, an assignment σ to the vari-ables in Vwhile Bad(σ) 6= ∅ doS←

⋃var(C) : C ∈ Bad(σ)

Resample all variables in U = Resample(S;σ)end while

Note 1. The procedure Resample must not probe variables outside ofU while computing U. This is the condition of being adapted.

Note 2. A previous approach to rejection sampling that tries topreserve randomness is the “Randomness Recycler” of Fill and Huber.

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 26 / 27

Page 64: On sampling and approximate counting

A selection of open problems

Is there a polynomial-time algorithm for sampling perfectmatchings in a general graph?

Is there an algorithm for sampling perfect matchings in abipartite graph that is efficient in practice?

Is there a polynomial-time algorithm for sampling contingencytables?

Can one sample proper colourings efficiently when q > (1+ ε)d?(q is the number of colours and d the maximum degree.)

Is the bases-exchange walk rapidly mixing for all matroids?

Mark Jerrum (Queen Mary) On sampling and approximate counting College de France, 9/1/2018 27 / 27