Title: Sampling Binary Contingency Tables with a Greedy Start
1Sampling Binary Contingency Tables with a Greedy
Start
- Ivona Bezáková
- (U. Chicago)
- Nayantara Bhatnagar
- Eric Vigoda
- (Georgia Tech)
2Darwins Finches
A Field Guide to the Birds of Galapagos Taken
from http//www.rit.edu/rhrsbi/
3Sampling Binary Contingency Tables
- Problem 1 Given row sums r1 rn and column sums
c1 cm, generate a random 0-1 matrix with these
marginals. - Equivalently
r1 r2 r3
c1 c2 c3
cn
rn
Generate a random bipartite graph with a given
degree sequence.
4Previous Work
- Jerrum, Sinclair 90,
- Kannan, Tetali, Vempala 97
- Regular degree sequences.
- Cooper, Dyer, Greenhill 05
- Regular degree sequences.
- General graphs (non-bipartite).
- Jerrum, Sinclair, Vigoda 01
- All degree sequences.
- By reduction to permanent.
- Quadratic blowup in instance size.
- O(n14) algorithm using
- Bezáková, tefankovic, Vazirani, Vigoda 06.
- Our Results
- All degree sequences.
- Direct algorithm.
- O(n11) worst case.
5Binary Contingency Tables with Cell Bounds
- Problem 2 Given a bipartite graph G, and a
degree sequence r1 rn, c1 cm generate a
random subgraph with these degrees.
1 2 1 1 1
2 1
1 1
3
2
- Special cases
- G is Kn,m Binary Contingency Tables.
- G is arbitrary, ri cj 1 Permanent.
Main Result An FPAUS to generate a random
subgraph of G with the desired degree sequence.
6A Simple Markov Chain Jerrum, Sinclair
Perfect tables P
Near-Perfect tables N (u,v)
u
v
7A Simple Markov Chain
Perfect table
Pick e ? E u.a.r from current graph, delete it.
8A Simple Markov Chain
Near-perfect table
Pick (x,y) ? E U (u,v). If (x,y) (u,v), add it.
9A Simple Markov Chain
Near-Perfect table
Pick (x,y) ? E U (u,v).
u
y
u
v
x
v
u
y
v
x
10Reweighting the Chain
- P set of perfect tables.
- N set of near-perfect tables.
- Simple Markov Chain
- Stationary distribution uniform on P ?N
- JS Mixes rapidly if N poly(n).P .
- Problem What if N gtgt P ?
- Reweighted Markov Chain
- For G?P, w(G) 1.
- For G?N (u,v), w(G)
- Define transitions s.t. p(G) a w(G).
- In the stationary dist, p( P ) p(N (u,v)).
- So we end at a perfect table w.p 1/(n2 1).
11Annealing for MatchingsJerrum, Sinclair, Vigoda
For matching M, let ?(M) ? of non-edges of
H. Let ?(P ) ? ?(M) for M ? P Let ?(N
(u,v)) ? ?(M) for M ? N (u,v)
12Annealing for Matchings
- ?(P ) is a polynomial in ?.
- Changing ? by tiny amount changes ?(P ) by at
most constant factor. - Boost approx. factor by sampling.
- Faster annealing by BSVV 06.
13Annealing for Matchings
Computing ?(P ) for ? 1 - 1/n Let Pi
matchings in Kn.n with i edges from Hc. ?(P )
P0 ?P1 ?2P2 ?nPn Hence ?(P ) changes by
at most e. The factor e can be improved by
sampling.
14Annealing for Binary Contingency Tables
? 1
?
? 0
At ? 1, ?(P ) P and ?(N (u,v)) N (u,v)
At ? 0, ?(P ) 1 and ?(N (u,v )) 1 or 0.
Need non-zero approx. for ?(N (u,v )) at ? gt 0.
There is a starting graph, GREEDY, for which low
degree coefficients of ?(N (u,v )) are gt 0.
15The Greedy Graph
- Constructing GREEDY
- Sort both sides by increasing degree.
- Repeat
- Match the highest deg. vertex v from left to
d(v) highest vertices from right. - Sort the right by residual degree, break ties
by previous round.
1 1 3 3
2 2 2 2
2 1 1 1
1 1 0 0
1 1 3 0
1 1 0 0
0 0 0 0
0 0 0 0
- Characterization Given degree sequence is
feasible iff the algorithm succeeds. - Tie-break rule is defined inductively.
16The Greedy Start
- Lemma If there is a near-perfect graph with
holes at u and v, there is an alternating path of
length at most 5 from u to v in GREEDY.
? Non-zero approx. for ?( N (u,v)) at ? 0.
u
v
17The Greedy Start
- Lemma If there is a near-perfect graph with
holes at u and v, there is an alternating path of
length at most 5 from u to v in GREEDY.
? Non-zero approx. for ?( N (u,v)) at ? 0.
u
v
Greedy algorithm with arbitrary tie-breaking.
18The Greedy Start
- Lemma If there is a near-perfect graph with
holes at u and v, there is an alternating path
from u to v in GREEDY of length at most 5.
u
u
v
v
Recall that
?(P ) ? ?edges of H not in G
H?P
1 ?H H ? Gc 1 ?2 H H ?
Gc 2 ?3()
?(N(u,v) ) H H?Gc 0
?H H?Gc 1 ?2() ?3()
By lemma, one of first 3 terms is non-zero.
Computing these terms gives an approx.
19Tables with Cell Bounds
To generate subgraphs of a given graph G
Input graph G
Degrees r1 r2 r3 1 c1 c2 c3 1
First Phase
GREEDY(r,c)
GREEDY G
Second Phase
G
GREEDY G