spqr method
play

SPQR Method: a new linear-time exact sampler of combinatorial - PowerPoint PPT Presentation

SPQR Method: a new linear-time exact sampler of combinatorial structures Andrea Sportiello CNRS | LIPN, Universit e Paris Nord, Villetaneuse work in collaboration with Fr ed erique Bassino Al ea 2014 CIRM, Luminy, 21st March 2014 1


  1. SPQR Method: a new linear-time exact sampler of combinatorial structures Andrea Sportiello CNRS | LIPN, Universit´ e Paris Nord, Villetaneuse work in collaboration with Fr´ ed´ erique Bassino Al´ ea 2014 CIRM, Luminy, 21st March 2014 1 0.5 � 1 � 0.5 0.5 1 � 0.5 � 1 Andrea Sportiello The SPQR Method for exact sampling

  2. Algorithms is coding Complex analysis is only for the analysis of algorithms (and, in fact, only the very fine structure of it) If I’m happy with rough estimates and heuristic performance analysis, I can just live without Andrea Sportiello The SPQR Method for exact sampling

  3. FALSE! Algorithms is coding Complex analysis is only for the analysis of algorithms (and, in fact, only the very fine structure of it) If I’m happy with rough estimates and heuristic performance analysis, I can just live without Andrea Sportiello The SPQR Method for exact sampling

  4. FALSE! Algorithms is coding Complex analysis is only for the analysis of algorithms (and, in fact, only the very fine structure of it) If I’m happy with rough estimates and heuristic performance analysis, I can just live without A first example: in the Boltzmann method you need complex analysis in the preprocessing, for finding “the value of the oracle” Andrea Sportiello The SPQR Method for exact sampling

  5. FALSE! Algorithms is coding Complex analysis is only for the analysis of algorithms (and, in fact, only the very fine structure of it) If I’m happy with rough estimates and heuristic performance analysis, I can just live without A first example: in the Boltzmann method you need complex analysis in the preprocessing, for finding “the value of the oracle” In this talk you see a more striking example: complex analysis is used all the time along the core part of the algorithm Andrea Sportiello The SPQR Method for exact sampling

  6. FALSE! Algorithms is coding Complex analysis is only for the analysis of algorithms (and, in fact, only the very fine structure of it) If I’m happy with rough estimates and heuristic performance analysis, I can just live without A first example: in the Boltzmann method you need complex analysis in the preprocessing, for finding “the value of the oracle” In this talk you see a more striking example: complex analysis is used all the time along the core part of the algorithm Moral: if complex analysis “knows the truth” on the asymptotics of your random structures, (and it’s the only one who knows), no surprise that algorithms not using it have worse performances. . . Andrea Sportiello The SPQR Method for exact sampling

  7. Part 1 An introduction to Exact Sampling (with a zest of Statistical Mechanics) Andrea Sportiello The SPQR Method for exact sampling

  8. Part 1 An introduction to Exact Sampling (with a zest of Statistical Mechanics) Andrea Sportiello The SPQR Method for exact sampling

  9. Exact sampling Our goal today is the exact sampling of large random combinatorial structures. Large: “size n ”. We want to do that fast. In many cases, it is obvious that you can do that in T ( n ) ∼ exp( α n ) or T ( n ) ∼ exp( α n ln n ). And you are much happier with a polynomial algorithm, T ( n ) ∼ n γ . This is what happens, for example, with Coupling From The Past of Propp and Wilson (used e.g. for the Potts Model), or with Wilson’s cycle-popping algorithm for Uniform Spanning Trees. However, if the problem is easy, we want to do that really fast: in quasi-linear time T ( n ) ∼ n · (ln n ) γ . Andrea Sportiello The SPQR Method for exact sampling

  10. A prototype of easy problem What do we mean by “if the problem is easy” ? A typical example of an easy problem is directed walks. Let’s do that in D = 2, just to be definite. You have some “nice” functions h x , y , v x , y : N 2 → R + , and you want to sample paths ω : (0 , 0) → ( n − m , m ), according to the unnormalised measure � � µ ( ω ) = v x , y h x , y → ↑ ( x , y ) • • ( x , y ) Examples: • directed walks (binomials): h x , y = v x , y = 1. • directed walks weighted with their area ( q -binomials): h x , y = q y ; v x , y = 1. • P ( n , m ) ≡ partitions of [ n ] into m parts (Stirling of 2nd kind): h x , y = y ; v x , y = 1. Andrea Sportiello The SPQR Method for exact sampling

  11. A prototype of easy problem What do we mean by “if the problem is easy” ? A typical example of an easy problem is directed walks. Let’s do that in D = 2, just to be definite. You have some “nice” functions h x , y , v x , y : N 2 → R + , and you want to sample paths ω : (0 , 0) → ( n − m , m ), according to the unnormalised measure � � µ ( ω ) = v x , y h x , y → ↑ ( x , y ) • • ( x , y ) Examples: • directed walks (binomials): h x , y = v x , y = 1. • directed walks weighted with their area ( q -binomials): h x , y = q y ; v x , y = 1. • P ( n , m ) ≡ partitions of [ n ] into m parts (Stirling of 2nd kind): h x , y = y ; v x , y = 1. Andrea Sportiello The SPQR Method for exact sampling

  12. A prototype of easy problem What do we mean by “if the problem is easy” ? A typical example of an easy problem is directed walks. Let’s do that in D = 2, just to be definite. You have some “nice” functions h x , y , v x , y : N 2 → R + , and you want to sample paths ω : (0 , 0) → ( n − m , m ), according to the unnormalised measure � � µ ( ω ) = v x , y h x , y → ↑ ( x , y ) • • ( x , y ) Examples: • directed walks (binomials): h x , y = v x , y = 1. ✔ • directed walks weighted with their area ( q -binomials): ✔ h x , y = q y ; v x , y = 1. • P ( n , m ) ≡ partitions of [ n ] into m parts (Stirling of 2nd kind): ✘ h x , y = y ; v x , y = 1. Andrea Sportiello The SPQR Method for exact sampling

  13. A prototype of easy problem Why this problem must be easy? Because its asymptotics is given by calculus of variations in 1D: At scales 1 ≪ ℓ ≪ n , a typical path looks like a random walk, with some drift, diffu- sion constant and ver- 1 ≪ ℓ ≪ n tical offset. (here ( n , m ) = (500 , 267), h x , y = (1 . 03) y , v x , y = x ) Andrea Sportiello The SPQR Method for exact sampling

  14. A prototype of easy problem Why this problem must be easy? Because its asymptotics is given by calculus of variations in 1D: � x + y 2 , y − x 2 ) = 1 Call U 2 ln( v x , y − 1 / h x − 1 , y ) � x + y 2 , y − x 2 ) = 1 Call V 2 ln( v x , y − 1 · h x − 1 , y ) Call s ( x ) = − 1+ x 2 ln 1+ x − 1 − x 2 ln 1 − x 2 2 (Shannon entropy of a binary stream with probabilities 1 ± x 2 ) Then the limit profile φ ( t ) maximizes the functional � 1 � � s ( φ ′ ( t )) + λφ ′ ( t ) + φ ′ ( t ) U ( t , φ ( t )) + V ( t , φ ( t )) S λ [ φ ] = d t 0 with λ determined by the constraint E ( φ (1)) = 2 m − n . n � � ( n − 2 m ) λ + nS [ φ ∗ ] + o ( n ) Finally, Z n , m = exp . Andrea Sportiello The SPQR Method for exact sampling

  15. A digression on Random Minimal Automata Why shall we care of (inhomogeneous) directed random walks? Because sometimes they are in bijection with more interesting objects Andrea Sportiello The SPQR Method for exact sampling

  16. A digression on Random Minimal Automata In our case, directed paths with h x , y = y can be interpreted as paths ω , × a choice Y ( x ) ∈ { 1 , . . . , y ( x ) } per horizontal step. Pairs ( ω, Y ) are in bijection with π ∈ P ( n , m ), i.e. partitions of [ n ] into m non-empty blocks. Andrea Sportiello The SPQR Method for exact sampling

  17. A digression on Random Minimal Automata In our case, directed paths with h x , y = y can be interpreted as paths ω , × a choice Y ( x ) ∈ { 1 , . . . , y ( x ) } per horizontal step. Pairs ( ω, Y ) are in bijection with π ∈ P ( n , m ), i.e. partitions of [ n ] into m non-empty blocks. Andrea Sportiello The SPQR Method for exact sampling

  18. A digression on Random Minimal Automata In our case, directed paths with h x , y = y can be interpreted as paths ω , × a choice Y ( x ) ∈ { 1 , . . . , y ( x ) } per horizontal step. Pairs ( ω, Y ) are in bijection with π ∈ P ( n , m ), i.e. partitions of [ n ] into m non-empty blocks. Andrea Sportiello The SPQR Method for exact sampling

  19. A digression on Random Minimal Automata In our case, directed paths with h x , y = y can be interpreted as paths ω , × a choice Y ( x ) ∈ { 1 , . . . , y ( x ) } per horizontal step. Pairs ( ω, Y ) are in bijection with π ∈ P ( n , m ), i.e. partitions of [ n ] into m non-empty blocks. For n = km + 1, a O (1) subset of this set (those which are “ k -Dyck”) is in bijection with accessible deterministic complete automata (ADCA), with m states and alphabet of size k . Andrea Sportiello The SPQR Method for exact sampling

  20. A digression on Random Minimal Automata A O (1) fraction of P ( km + 1 , m ) ( k -Dyck partitions) is in bijection with ADCA’s, on m states and alphabet of size k . Andrea Sportiello The SPQR Method for exact sampling

  21. A digression on Random Minimal Automata 9 8 7 6 5 4 3 2 1 ε 1 a 1 b 1 c 2 a 2 b 2 c 3 a 3 b 3 c 4 a 4 b 4 c 5 a 5 b 5 c 6 a 6 b 6 c 7 a 7 b 7 c 8 a 8 b 8 c 9 a 9 b 9 c A O (1) fraction of P ( km + 1 , m ) ( k -Dyck partitions) is in bijection with ADCA’s, on m states and alphabet of size k . 4 2 7 ε 1 5 9 3 8 6 Andrea Sportiello The SPQR Method for exact sampling

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend