uniform sampling through the lov sz local lemma
play

Uniform Sampling through the Lovsz Local Lemma Heng Guo Berkeley, - PowerPoint PPT Presentation

Uniform Sampling through the Lovsz Local Lemma Heng Guo Berkeley, Jun 06 2017 Queen Mary, University of London 1 Draft: arxiv.org/abs/1611.01647 2 Joint with Mark Jerrum (QMUL) and Jingcheng Liu (Berkeley) A tale of two algorithms (Moser


  1. Dependency Graph V corresponds to events; 9 Dependency graph G = ( V , E ) : ( i , j ) ̸∈ E ⇒ A i and A j are independent. (In the variable framework, var ( A i ) ∩ var ( A j ) = ∅ .) Then ∆ is the maximum degree in G . ( ∆ : max # of dependent events of A i ) LLL condition: ep ∆ ⩽ 1.

  2. Dependency Graph V corresponds to events; 9 Dependency graph G = ( V , E ) : ( i , j ) ̸∈ E ⇒ A i and A j are independent. (In the variable framework, var ( A i ) ∩ var ( A j ) = ∅ .) Then ∆ is the maximum degree in G . ( ∆ : max # of dependent events of A i ) LLL condition: ep ∆ ⩽ 1.

  3. Extremal instances We call an instance extremal: • Extremal instances minimize the probability of solutions (given the same dependency graph). [Shearer 85] • Moser-Tardos is the slowest on extremal instances. Theorem (G., Jerrum, Liu 17) For extremal instances, Moser-Tardos is uniform. 10 if any two “bad” events A i and A j are either independent or disjoint. • Slowest for searching, best for sampling.

  4. Extremal instances We call an instance extremal: the same dependency graph). [Shearer 85] • Moser-Tardos is the slowest on extremal instances. Theorem (G., Jerrum, Liu 17) For extremal instances, Moser-Tardos is uniform. 10 if any two “bad” events A i and A j are either independent or disjoint. • Extremal instances minimize the probability of solutions (given • Slowest for searching, best for sampling.

  5. Extremal instances We call an instance extremal: the same dependency graph). [Shearer 85] • Moser-Tardos is the slowest on extremal instances. • Slowest for searching, best for sampling. Theorem (G., Jerrum, Liu 17) For extremal instances, Moser-Tardos is uniform. 10 if any two “bad” events A i and A j are either independent or disjoint. • Extremal instances minimize the probability of solutions (given

  6. Extremal instances We call an instance extremal: the same dependency graph). [Shearer 85] • Moser-Tardos is the slowest on extremal instances. Theorem (G., Jerrum, Liu 17) For extremal instances, Moser-Tardos is uniform. 10 if any two “bad” events A i and A j are either independent or disjoint. • Extremal instances minimize the probability of solutions (given • Slowest for searching, best for sampling.

  7. Extremal instances We call an instance extremal: the same dependency graph). [Shearer 85] • Moser-Tardos is the slowest on extremal instances. Theorem (G., Jerrum, Liu 17) For extremal instances, Moser-Tardos is uniform. 10 if any two “bad” events A i and A j are either independent or disjoint. • Extremal instances minimize the probability of solutions (given • Slowest for searching, best for sampling.

  8. Extremal instances Wilson’s setup is extremal: If two cycles share a vertex (dependent) and they both occur (over- lapping), then these two cycles must be the same by following the arrow! Other extremal instances: • Sink-free orientations [Bubley, Dyer 97] [Cohn, Pemantle, Propp 02] Reintroduced to show distributed LLL lower bound [Brandt, Fischer, Hirvonen, Keller, Lempiäinen, Rybicki, Suomela, Uitto 16] • Extremal CNF formulas (dependent clauses contain opposite literals) 11

  9. Extremal instances Wilson’s setup is extremal: If two cycles share a vertex (dependent) and they both occur (over- lapping), then these two cycles must be the same by following the arrow! Other extremal instances: • Sink-free orientations [Bubley, Dyer 97] [Cohn, Pemantle, Propp 02] Reintroduced to show distributed LLL lower bound [Brandt, Fischer, Hirvonen, Keller, Lempiäinen, Rybicki, Suomela, Uitto 16] • Extremal CNF formulas (dependent clauses contain opposite literals) 11

  10. Extremal instances Wilson’s setup is extremal: If two cycles share a vertex (dependent) and they both occur (over- lapping), then these two cycles must be the same by following the arrow! Other extremal instances: • Sink-free orientations [Bubley, Dyer 97] [Cohn, Pemantle, Propp 02] Reintroduced to show distributed LLL lower bound [Brandt, Fischer, Hirvonen, Keller, Lempiäinen, Rybicki, Suomela, Uitto 16] • Extremal CNF formulas (dependent clauses contain opposite literals) 11

  11. Extremal instances Wilson’s setup is extremal: If two cycles share a vertex (dependent) and they both occur (over- lapping), then these two cycles must be the same by following the arrow! Other extremal instances: • Sink-free orientations [Bubley, Dyer 97] [Cohn, Pemantle, Propp 02] Reintroduced to show distributed LLL lower bound [Brandt, Fischer, Hirvonen, Keller, Lempiäinen, Rybicki, Suomela, Uitto 16] • Extremal CNF formulas (dependent clauses contain opposite literals) 11

  12. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  13. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  14. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  15. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  16. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  17. Resampling table X 4 When we need to resample, draw the next value in the stack. X 1 X 2 X 3 12 Associate an infinite stack X i , 0 , X i , 1 , . . . to each random variable X i . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  18. Change the future, not the past For extremal instances, replacing a perfect assignment with another and . leading to and , there is a bijection between trajectories For any output X 1 0 X 2 1 X 3 2 X 4 1 A 2 A 1 X 1 X 2 X 3 X 4 13 one will not change the resampling history! . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  19. Change the future, not the past For extremal instances, replacing a perfect assignment with another and . leading to and , there is a bijection between trajectories For any output X 1 0 X 2 1 X 3 2 X 4 1 A 2 A 1 X 1 X 2 X 3 X 4 13 one will not change the resampling history! . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4

  20. Change the future, not the past For extremal instances, replacing a perfect assignment with another and . leading to and , there is a bijection between trajectories For any output A 2 A 1 X 1 X 2 X 3 X 4 13 one will not change the resampling history! X ′ . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 1 , 0 X ′ . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 2 , 1 X ′ . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 3 , 2 X ′ . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4 4 , 1

  21. Change the future, not the past For extremal instances, replacing a perfect assignment with another A 2 A 1 X 1 X 2 X 3 X 4 13 one will not change the resampling history! X ′ . . . X 1 , 0 X 1 , 1 X 1 , 2 X 1 , 3 X 1 , 4 1 , 0 X ′ . . . X 2 , 0 X 2 , 1 X 2 , 2 X 2 , 3 X 2 , 4 2 , 1 X ′ . . . X 3 , 0 X 3 , 1 X 3 , 2 X 3 , 3 X 3 , 4 3 , 2 X ′ . . . X 4 , 0 X 4 , 1 X 4 , 2 X 4 , 3 X 4 , 4 4 , 1 For any output σ and τ , there is a bijection between trajectories leading to σ and τ .

  22. Running time of Moser-Tardos . # perfect assignments q i m Thus, Theorem (Kolipaka, Szegedy 11) For extremal instances: m q i 14 ∑ Under Shearer’s condition, E T ⩽ q ∅ i = 1 (Shearer’s condition: q S ⩾ 0 for all S ⊆ V , where q S is the independence polynomial on G \ Γ + ( S ) with weight − p i .) q ∅ is the prob. of perfect assignments (no A i holds); q i is the prob. of assignments such that only A i holds. ∑ = # near-perfect assignments q ∅ i = 1

  23. Running time of Moser-Tardos . # perfect assignments q i m Thus, Theorem (Kolipaka, Szegedy 11) For extremal instances: m q i 14 ∑ Under Shearer’s condition, E T ⩽ q ∅ i = 1 (Shearer’s condition: q S ⩾ 0 for all S ⊆ V , where q S is the independence polynomial on G \ Γ + ( S ) with weight − p i .) q ∅ is the prob. of perfect assignments (no A i holds); q i is the prob. of assignments such that only A i holds. ∑ = # near-perfect assignments q ∅ i = 1

  24. Running time on extremal instances Theorem (G., Jerrum, Liu 17) 2. The expected number of “popped sinks” for sink-free orientations is 1. The expected number of “popped cycles” in Wilson’s algorithm is at New consequences: # perfect assignments 15 m q i Under Shearer’s condition, for extremal instances, ∑ E T = = # near-perfect assignments . q ∅ i = 1 In other words, Moser-Tardos on extremal instances is slowest. most mn . linear in n if the graph is d -regular where d ⩾ 3.

  25. Approximating the independence polynomial? For positive weighted independent sets, Weitz (2006) works up to the Vigoda, Yin 16] When p satisfies Shearer’s condition with constant slack in G , we can [Harvey, Srivastava, Vondrak 16] [Patel, Regts, 16] 16 uniqueness threshold, with running time n O ( log ∆ ) . The MCMC approach runs in time � O ( n 2 ) for a smaller region. [Efthymiou, Hayes, Štefankovič, approximate q ∅ ( G , − p ) in time n O ( log ∆ ) . Is there an algorithm that doesn’t have ∆ in the exponent?

  26. Approximating the independence polynomial? For positive weighted independent sets, Weitz (2006) works up to the Vigoda, Yin 16] When p satisfies Shearer’s condition with constant slack in G , we can [Harvey, Srivastava, Vondrak 16] [Patel, Regts, 16] 16 uniqueness threshold, with running time n O ( log ∆ ) . The MCMC approach runs in time � O ( n 2 ) for a smaller region. [Efthymiou, Hayes, Štefankovič, approximate q ∅ ( G , − p ) in time n O ( log ∆ ) . Is there an algorithm that doesn’t have ∆ in the exponent?

  27. Approximating the independence polynomial? For positive weighted independent sets, Weitz (2006) works up to the Vigoda, Yin 16] When p satisfies Shearer’s condition with constant slack in G , we can [Harvey, Srivastava, Vondrak 16] [Patel, Regts, 16] 16 uniqueness threshold, with running time n O ( log ∆ ) . The MCMC approach runs in time � O ( n 2 ) for a smaller region. [Efthymiou, Hayes, Štefankovič, approximate q ∅ ( G , − p ) in time n O ( log ∆ ) . Is there an algorithm that doesn’t have ∆ in the exponent?

  28. Approximating the independence polynomial? Given G and p , if there are x j ’s and events A i ’s so that: • G is the dependency graph; then we could use the uniform sampler (Moser-Tardos) to estimate 1 Unfortunately, gaps exist between “abstract” and “variable” versions of the local lemma. [Kolipaka, Szegedy 11] [He, Li, Liu, Wang, Xia 17] This approach does not work near Shearer’s threshold. The situation is similar to the positive weight case, but for a different reason. 17 Extremal: Pr ( perfect assignment ) = q ∅ ( G , − p ) . • Pr ( A i ) = p i ; • A i ’s are extremal, q ∅ . With constant slack, Moser-Tardos runs in expected O ( n ) time. A simple construction exists if p i ⩽ 2 − d i (in contrast to Shearer’s threshold ≈ e ∆ ).

  29. Approximating the independence polynomial? Given G and p , if there are x j ’s and events A i ’s so that: • G is the dependency graph; then we could use the uniform sampler (Moser-Tardos) to estimate 1 Unfortunately, gaps exist between “abstract” and “variable” versions of the local lemma. [Kolipaka, Szegedy 11] [He, Li, Liu, Wang, Xia 17] This approach does not work near Shearer’s threshold. The situation is similar to the positive weight case, but for a different reason. 17 Extremal: Pr ( perfect assignment ) = q ∅ ( G , − p ) . • Pr ( A i ) = p i ; • A i ’s are extremal, q ∅ . With constant slack, Moser-Tardos runs in expected O ( n ) time. A simple construction exists if p i ⩽ 2 − d i (in contrast to Shearer’s threshold ≈ e ∆ ).

  30. Approximating the independence polynomial? Given G and p , if there are x j ’s and events A i ’s so that: • G is the dependency graph; then we could use the uniform sampler (Moser-Tardos) to estimate 1 Unfortunately, gaps exist between “abstract” and “variable” versions of the local lemma. [Kolipaka, Szegedy 11] [He, Li, Liu, Wang, Xia 17] This approach does not work near Shearer’s threshold. The situation is similar to the positive weight case, but for a different reason. 17 Extremal: Pr ( perfect assignment ) = q ∅ ( G , − p ) . • Pr ( A i ) = p i ; • A i ’s are extremal, q ∅ . With constant slack, Moser-Tardos runs in expected O ( n ) time. A simple construction exists if p i ⩽ 2 − d i (in contrast to Shearer’s threshold ≈ e ∆ ).

  31. ple all vertices along all cycles. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 2. While there is a “small” cycle, resam- 3. Output. When this process stops, there is no small cycle and what is left 18

  32. 2. While there is a “small” cycle, resam- ple all vertices along all cycles. is a Hamiltonian cycle. What else can we sample? from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 1. For each v , assign a random arrow

  33. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  34. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  35. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  36. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  37. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  38. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left 18 → 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  39. is a Hamiltonian cycle. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. When this process stops, there is no small cycle and what is left 18 2. While there is a “small” cycle, resam- ple all vertices along all cycles. → 3. Output.

  40. What else can we sample? 1. For each v , assign a random arrow from v to one of its neighbours. 3. Output. When this process stops, there is no small cycle and what is left is a Hamiltonian cycle. 18 2. While there is a “small” cycle, resam- ple all vertices along all cycles.

  41. Can we sample Hamiltonian cycles efficiently? # perfect assignments . Unfortunately, this ratio is exponentially large in a complete graph. [Dyer, Frieze, Jerrum 98]: dense among all 2-factors, which can be approximately sampled. Open: Is there an efficient and exact sampler for Hamiltonian cycles in some interesting graph families? 19 Recall that E T = # near-perfect assignments In our setting, a near-perfect assignment is a uni-cyclic arrow set. In dense graphs ( δ = ( 1 / 2 + ε ) n ), Hamiltonian cycles are sufficiently

  42. Can we sample Hamiltonian cycles efficiently? # perfect assignments . Unfortunately, this ratio is exponentially large in a complete graph. [Dyer, Frieze, Jerrum 98]: dense among all 2-factors, which can be approximately sampled. Open: Is there an efficient and exact sampler for Hamiltonian cycles in some interesting graph families? 19 Recall that E T = # near-perfect assignments In our setting, a near-perfect assignment is a uni-cyclic arrow set. In dense graphs ( δ = ( 1 / 2 + ε ) n ), Hamiltonian cycles are sufficiently

  43. Can we sample Hamiltonian cycles efficiently? # perfect assignments . Unfortunately, this ratio is exponentially large in a complete graph. [Dyer, Frieze, Jerrum 98]: dense among all 2-factors, which can be approximately sampled. Open: Is there an efficient and exact sampler for Hamiltonian cycles in some interesting graph families? 19 Recall that E T = # near-perfect assignments In our setting, a near-perfect assignment is a uni-cyclic arrow set. In dense graphs ( δ = ( 1 / 2 + ε ) n ), Hamiltonian cycles are sufficiently

  44. Beyond Extremal Instances

  45. Partial Rejection Sampling Inspired by [Moser, Tardos 10], we found a new uniform sampler. Partial Rejection Sampling [G., Jerrum, Liu 17]: 20 1. Initialize σ — randomize all variables independently. 2. While σ is not perfect: choose an appropriate subset of events, Resample ( σ ) ; re-randomize all variables in Resample ( σ ) . For extremal instances, Resample ( σ ) is simply Bad ( σ ) . How to choose Resample ( σ ) to guarantee uniformity?

  46. Partial Rejection Sampling Inspired by [Moser, Tardos 10], we found a new uniform sampler. Partial Rejection Sampling [G., Jerrum, Liu 17]: 20 1. Initialize σ — randomize all variables independently. 2. While σ is not perfect: choose an appropriate subset of events, Resample ( σ ) ; re-randomize all variables in Resample ( σ ) . For extremal instances, Resample ( σ ) is simply Bad ( σ ) . How to choose Resample ( σ ) to guarantee uniformity?

  47. Partial Rejection Sampling Inspired by [Moser, Tardos 10], we found a new uniform sampler. Partial Rejection Sampling [G., Jerrum, Liu 17]: 20 1. Initialize σ — randomize all variables independently. 2. While σ is not perfect: choose an appropriate subset of events, Resample ( σ ) ; re-randomize all variables in Resample ( σ ) . For extremal instances, Resample ( σ ) is simply Bad ( σ ) . How to choose Resample ( σ ) to guarantee uniformity?

  48. Partial Rejection Sampling Inspired by [Moser, Tardos 10], we found a new uniform sampler. Partial Rejection Sampling [G., Jerrum, Liu 17]: 20 1. Initialize σ — randomize all variables independently. 2. While σ is not perfect: choose an appropriate subset of events, Resample ( σ ) ; re-randomize all variables in Resample ( σ ) . For extremal instances, Resample ( σ ) is simply Bad ( σ ) . How to choose Resample ( σ ) to guarantee uniformity?

  49. What set to resample? resampled variables. (only need to worry about events intersecting both S and S .) Examples: The set of all variables is unblocking. 21 Let T be the stopping time and R = R 1 , . . . , R T be the set sequence of Goal: conditioned on R , all perfect assignments are reachable. Unblocking: under an assignment σ , a subset S of variables is unblocking , if all events intersecting S are determined by σ | S . For independent sets, S is unblocking if ∂ S are all unoccupied.

  50. What set to resample? resampled variables. (only need to worry about events intersecting both S and S .) Examples: The set of all variables is unblocking. 21 Let T be the stopping time and R = R 1 , . . . , R T be the set sequence of Goal: conditioned on R , all perfect assignments are reachable. Unblocking: under an assignment σ , a subset S of variables is unblocking , if all events intersecting S are determined by σ | S . For independent sets, S is unblocking if ∂ S are all unoccupied.

  51. What set to resample? resampled variables. (only need to worry about events intersecting both S and S .) Examples: The set of all variables is unblocking. 21 Let T be the stopping time and R = R 1 , . . . , R T be the set sequence of Goal: conditioned on R , all perfect assignments are reachable. Unblocking: under an assignment σ , a subset S of variables is unblocking , if all events intersecting S are determined by σ | S . For independent sets, S is unblocking if ∂ S are all unoccupied.

  52. What set to resample? resampled variables. (only need to worry about events intersecting both S and S .) Examples: The set of all variables is unblocking. 21 Let T be the stopping time and R = R 1 , . . . , R T be the set sequence of Goal: conditioned on R , all perfect assignments are reachable. Unblocking: under an assignment σ , a subset S of variables is unblocking , if all events intersecting S are determined by σ | S . For independent sets, S is unblocking if ∂ S are all unoccupied.

  53. Resampling set Bad Res In the worst case we may resample all variables. 22 Given an assignment σ , we want Resample ( σ ) to satisfy: 1. Resample ( σ ) contains Bad ( σ ) ; 2. Resample ( σ ) is unblocking; 3. What is revealed has to be resampled. σ Resample ( σ ) can be found by a breadth-first search.

  54. Resampling set Bad Res In the worst case we may resample all variables. 22 Given an assignment σ , we want Resample ( σ ) to satisfy: 1. Resample ( σ ) contains Bad ( σ ) ; 2. Resample ( σ ) is unblocking; 3. What is revealed has to be resampled. σ Resample ( σ ) can be found by a breadth-first search.

  55. Resampling set 3. What is revealed has to be resampled. Bad Res In the worst case we may resample all variables. 22 Given an assignment σ , we want Resample ( σ ) to satisfy: 1. Resample ( σ ) contains Bad ( σ ) ; 2. Resample ( σ ) is unblocking; σ Resample ( σ ) can be found by a breadth-first search.

  56. Resampling set Bad Res In the worst case we may resample all variables. 22 Given an assignment σ , we want Resample ( σ ) to satisfy: 1. Resample ( σ ) contains Bad ( σ ) ; 2. Resample ( σ ) is unblocking; 3. What is revealed has to be resampled. σ Resample ( σ ) can be found by a breadth-first search.

  57. Resampling set Bad Res In the worst case we may resample all variables. 22 Given an assignment σ , we want Resample ( σ ) to satisfy: 1. Resample ( σ ) contains Bad ( σ ) ; 2. Resample ( σ ) is unblocking; 3. What is revealed has to be resampled. σ Resample ( σ ) can be found by a breadth-first search.

  58. Partial Rejection Sampling vs Markov chains Markov chain is a random walk in the solution space. (The solution space has to be connected!) 23

  59. Partial Rejection Sampling vs Markov chains PRS is a local search on the whole space. 23 σ

  60. Partial Rejection Sampling vs Markov chains PRS is a local search on the whole space. (Connectivity is not an issue.) 23 σ

  61. Partial Rejection Sampling vs Markov chains PRS is a local search on the whole space. (Uniformity is guaranteed by the bijection.) 23 σ τ

  62. Partial Rejection Sampling Partial Rejection Sampling: Theorem (G., Jerrum, Liu 17) When PRS halts, its output is uniform. Some applications beyond extremal instances: • Weighted independent sets. • k -CNF formulas. 24 repeatedly resample the appropriately chosen Resample ( σ ) .

  63. Partial Rejection Sampling Partial Rejection Sampling: Theorem (G., Jerrum, Liu 17) When PRS halts, its output is uniform. Some applications beyond extremal instances: • Weighted independent sets. • k -CNF formulas. 24 repeatedly resample the appropriately chosen Resample ( σ ) .

  64. Partial Rejection Sampling Partial Rejection Sampling: Theorem (G., Jerrum, Liu 17) When PRS halts, its output is uniform. Some applications beyond extremal instances: • Weighted independent sets. • k -CNF formulas. 24 repeatedly resample the appropriately chosen Resample ( σ ) .

  65. Sampling independent sets 1. Randomize each vertex. 2. Let Bad be the set of vertices whose Check independence. When the algorithm stops, it is a uniform independent set. 25 connected component has size ⩾ 2. 3. Resample = Bad ∪ ∂ Bad . 4. Resample Resample .

  66. Sampling independent sets 2. Let Bad be the set of vertices whose Check independence. When the algorithm stops, it is a uniform independent set. 25 → 1. Randomize each vertex. connected component has size ⩾ 2. 3. Resample = Bad ∪ ∂ Bad . 4. Resample Resample .

  67. Sampling independent sets 1. Randomize each vertex. Check independence. When the algorithm stops, it is a uniform independent set. 25 → 2. Let Bad be the set of vertices whose connected component has size ⩾ 2. 3. Resample = Bad ∪ ∂ Bad . 4. Resample Resample .

  68. Sampling independent sets 1. Randomize each vertex. 2. Let Bad be the set of vertices whose Check independence. When the algorithm stops, it is a uniform independent set. 25 connected component has size ⩾ 2. → 3. Resample = Bad ∪ ∂ Bad . 4. Resample Resample .

  69. Sampling independent sets 1. Randomize each vertex. 2. Let Bad be the set of vertices whose Check independence. When the algorithm stops, it is a uniform independent set. 25 connected component has size ⩾ 2. 3. Resample = Bad ∪ ∂ Bad . → 4. Resample Resample .

  70. Sampling independent sets 1. Randomize each vertex. 2. Let Bad be the set of vertices whose Check independence. When the algorithm stops, it is a uniform independent set. 25 connected component has size ⩾ 2. 3. Resample = Bad ∪ ∂ Bad . → 4. Resample Resample .

Recommend


More recommend