47
On probability... “I think you’re begging the question,” said Haydock, “and I can see looming ahead one of those terrible exercises in probability where six men have white hats and six men have black hats and you have to work it out by mathematics how likely it is that the hats will get mixed up and in what proportion. If you start thinking about things like that, you would go round the bend. Let me assure you of that!” The Mirror Crack’d Agatha Christie Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 1 / 42

Swapped at birth - Faster Monte Carlo methods for point ......“I think you’re begging the question,” said Haydock, “and I can see looming ahead one of those terrible exercises

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • On probability...

    “I think you’re begging the question,” said Haydock, “and I can seelooming ahead one of those terrible exercises in probability where sixmen have white hats and six men have black hats and you have towork it out by mathematics how likely it is that the hats will get mixedup and in what proportion. If you start thinking about things like that,you would go round the bend. Let me assure you of that!”

    The Mirror Crack’dAgatha Christie

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 1 / 42

  • Swapped at birthFaster Monte Carlo methods for point processes

    Mark Huber

    Department of Mathematics and Institute of Statistics and Decision SciencesDuke University

    April 13, 2007

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 2 / 42

  • Outline

    1 The ProblemSpatial point processesThe Hard Core Gas Model

    2 Birth Death ChainsUsing Markov chainsStandard Birth Death ApproachWhy it’s good to swap at birth

    3 Perfect SamplingDominated Coupling From the PastdCFTP with standard chainsdCFTP with the swap

    4 Results

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 3 / 42

  • Spatial point processes

    The idea:Begin with grid where each cell on or offProbability proportional to size of cellTake limit as cells get small

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 4 / 42

  • Coarse Grid

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 5 / 42

  • Better Grid

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 6 / 42

  • Even better Grid

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 7 / 42

  • Limit: Spatial Poisson process

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 8 / 42

  • Number of points is Poisson

    Let N = the number of points in area

    N ∼ Poisson(µ),µ = λ · area of region

    P(N = i) = e−µµi

    i!, i ∈ {0, 1, 2, . . .}

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 9 / 42

  • Generating from a Poisson point process

    Two-step process:

    1 Generate N ∼ Poisson(µ)2 Generate X1, X2, . . . , XN independently uniformly from region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 10 / 42

  • The Hard Core Gas Model

    Point processes used to model gasesEach point center of hard core of moleculeThat the core is hard means cannot overlap:

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 11 / 42

  • Densities for Poisson point processes

    Formally, use densities to exact constraintsLet n(x) denote number of points in a configuration

    Hard Core:

    fhardcore(x) ∝{

    1 d(x(i), x(j)) > R for all i , j ∈ {1, . . . , n(x)}0 otherwise

    Soft Core (Strauss Point Process)

    fsoftcore(x) ∝ γv(x)

    v(x) = number of pairs {i , j} with d(x(i), x(j)) ≤ R

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 12 / 42

  • Normalizing densities

    What makes these problems difficult?Note ∝ in density descriptionsNeed to multiply by constant to make probability densityCalled the normalizing constant

    Key fact: finding normalizing constant NP-complete problem

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 13 / 42

  • Outline

    1 The ProblemSpatial point processesThe Hard Core Gas Model

    2 Birth Death ChainsUsing Markov chainsStandard Birth Death ApproachWhy it’s good to swap at birth

    3 Perfect SamplingDominated Coupling From the PastdCFTP with standard chainsdCFTP with the swap

    4 Results

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 14 / 42

  • Birth Death Chains

    For everything there is a seasonAnd a time for every matter under heaven:A time to be born, and time to die;

    Ecclesiastes

    Birth Death chains evolve the configuration through timePoints in process are born and then later on, die

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 15 / 42

  • Why do this?

    For same reason shuffle a deck of cards:Small random changes accumulate over timeResult in the global state being random

    Markov chainsNext step only depends on current configurationUnder mild conditions, state eventually “becomes random”

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 16 / 42

  • Exponential random variables

    Say X ∼ Exp(λ)(read as: X has the exponential distribution with rate parameter λ)if for t ≥ 0,

    P(X ∈ [t , t + ∆t ] ≈ λe−λt∆t .

    Limit as ∆t → 0:P(X ∈ dt) = λe−λt dt

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 17 / 42

  • Birth times

    Let X1, X2, . . . be iid mboxExp(λ) with rate µ = λ · area of regionThen Xi is time between birth i and i + 1

    X1 X2 X3 X4

    time

    Called a Poisson process

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 18 / 42

  • Points are born...

    Run time forwardAt a birth event, add a point uniformly in region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 19 / 42

  • Points are born...

    Run time forwardAt a birth event, add a point uniformly in region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 19 / 42

  • Points are born...

    Run time forwardAt a birth event, add a point uniformly in region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 19 / 42

  • Points are born...

    Run time forwardAt a birth event, add a point uniformly in region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 19 / 42

  • Points are born...

    Run time forwardAt a birth event, add a point uniformly in region

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 19 / 42

  • Death: who needs it?

    In this world nothing can be said to be certain, except death and taxesBenjamin Franklin

    When each point is born, roll Di ∼ mboxExp(1)Then Di is the time until the point dies, removed from state

    D1

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 20 / 42

  • Why use birth-death chains

    The point of birth-death chains:Used for problems with densities with unknown normalizingconstantsPreston [3] worked out detailsDo not always accept births

    Hard Core Model:Always accept deathOnly accept birth if does not cause conflict

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 21 / 42

  • Example of rejected birth

    New point (in blue) is rejectedToo close to existing points

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 22 / 42

  • Example of accepted birth

    New point (in blue) is accepted an added to configurationToo close to existing points

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 23 / 42

  • Example of death

    Deaths are always accepted

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 24 / 42

  • New move swap

    When blocked by exactly one point, “swap” with blocking point:

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 25 / 42

  • Some details

    Things to consider:Does swapping give correct distribution?Does it improve performance in a theoretical way?Does the swap move generalize?

    Preprint: Huber [2]Can set up probability of swapping to give correct distributionDoes work faster than original chainUse perfect sampling techniques to show faster

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 26 / 42

  • Some details

    Things to consider:Does swapping give correct distribution?Does it improve performance in a theoretical way?Does the swap move generalize?

    Preprint: Huber [2]Can set up probability of swapping to give correct distributionDoes work faster than original chainUse perfect sampling techniques to show faster

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 26 / 42

  • Outline

    1 The ProblemSpatial point processesThe Hard Core Gas Model

    2 Birth Death ChainsUsing Markov chainsStandard Birth Death ApproachWhy it’s good to swap at birth

    3 Perfect SamplingDominated Coupling From the PastdCFTP with standard chainsdCFTP with the swap

    4 Results

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 27 / 42

  • Perfect Sampling

    “Practice makes perfect, but nobody’s perfect, so why practice?”

    Problem with Markov chainsHow long should they be run?Perfect sampling algorithms share good properties of Markovchains......but terminate in finite time (with probability 1)

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 28 / 42

  • One dimensional Poisson process

    time

    space

    0

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 29 / 42

  • Dominated Coupling From the Past

    Kendall and Møller [1] ideaSay we don’t know if a point should be in the set or notIf it dies, great!If point born within range before it dies, bad

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 30 / 42

  • Dominated Coupling From the Past (part 2)

    Start at fixed time in the past with some unknownsRun forward up until time 0If no “?” points, quit, return sampleOtherwise go farther back in time and begin again

    TheoremThis actually works!

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 31 / 42

  • Example where “?” go away

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 32 / 42

  • Example where “?” do not go away

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 33 / 42

  • How to update “?”

    Notation:

    L = { points definitely in process}U = L ∪ { ? points}

    Note that L ⊆ U and when L = U there are no ? points.

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 34 / 42

  • Pseudocode for updating “?”

    Updates for regular birth-death chain

    Hard-core bounding process updateInput: move, M, L, U, Output: L,U1) If move = death of point w2) Let L← L− w , let U ← U − w3) Else (move = birth of point v )4) Let NU ← {w ∈ U : ρ(w , v) ≤ R}5) Let NL ← {w ∈ L : ρ(w , v) ≤ R}6) Execute one of the following cases:7) Case I: |NU | = |NL| = 0, let L← L + v , let U ← U + v8) Case II: |NU | ≥ 1,, |NL| = 0, let U ← U + v

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 35 / 42

  • When are you guaranteed good performance?

    Theorem (Huber [2])Suppose that N events are generated backwards in time and then runforward to get UN(0) and LN(0). Let B(v , R) denote the area withindistance R of v ∈ S, let r = supv∈S λ · B(v , R), and suppose µ ≥ 4.If µr < 1, then for the chain without the swap move

    P(UN(0) 6= LN(0)) ≤ 2µ exp(−N(1− µr)/(10µ). (1)

    CorollaryRunning time of dCFTP is Θ(µ ln µ) for λ small.

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 36 / 42

  • Pseudocode for updating “?” with swap

    Updates for regular birth-death chain

    Hard-core bounding process updateInput: move, M, L, U, Output: L,U

    1) If move = death of point w2) Let L← L− w , let U ← U − w3) Else (move = birth of point v )4) Let NU ← {w ∈ U : ρ(w , v) ≤ R}5) Let NL ← {w ∈ L : ρ(w , v) ≤ R}6) Execute one of the following cases:7) Case I: |NU | = |NL| = 0, let L← L + v , let U ← U + v8) Case II: |NU | = 1, let L← L + v − NL, let U ← U + v − NU9) Case III:|NU | > 1, |NL| = 0 let U ← U + v

    10) Case IV: |NU | > 1, |NL| = 1, let L← L− NL, U ← U + v + NL11) Case V: |NU | > 1, |NL| > 1 (do nothing)

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 37 / 42

  • When are you guaranteed good performance?

    Theorem (Huber [2])Suppose that N events are generated backwards in time and then runforward to get UN(0) and LN(0). Let B(v , R) denote the area withindistance R of v ∈ S, let r = supv∈S λ · B(v , R), and suppose µ ≥ 4.If µr < 2, then for the chain where a swap is executed with probability1/4,

    P(UN(0) 6= LN(0)) ≤ 2µ exp(−N(1− .5βr)/(30µ). (2)

    CorollaryRunning time of dCFTP is Θ(µ ln µ) for λ twice as large as without theswap.

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 38 / 42

  • Running time results

    20 30 40 50 60 700

    1000

    2000

    3000

    4000

    5000

    λ

    Ave

    rage

    num

    ber

    of e

    vent

    s pe

    r sa

    mpl

    eRunning time of dCFTP for hard core gas model

    no swapswap

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 39 / 42

  • Outline

    1 The ProblemSpatial point processesThe Hard Core Gas Model

    2 Birth Death ChainsUsing Markov chainsStandard Birth Death ApproachWhy it’s good to swap at birth

    3 Perfect SamplingDominated Coupling From the PastdCFTP with standard chainsdCFTP with the swap

    4 Results

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 40 / 42

  • Conclusions

    What is known:Swap move easy to add to point processesAlso can be used in dCFTP to get perfect sampling algorithmResults in about a 4-fold speedup for hard-core gas model

    Future work:Running time comparison for Strauss processExperiment better than theory–can theory be improved?

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 41 / 42

  • References

    W.S. Kendall and J. Møller.Perfect simulation using dominating processes on ordered spaces, with application tolocally stable point processes.Adv. Appl. Prob., 32:844–865, 2000.

    M. L. Huber.Spaital Birth-Death-Swap Chainspreprint, 2007

    C.J. Preston.Spatial birth-and-death processes.Bull. Inst. Int. Stat., 46(2):371–391, 1977.

    Mark Huber (Duke University) Swap moves for spatial point processes Graduate/Faculty Seminar 42 / 42

    The ProblemSpatial point processesThe Hard Core Gas Model

    Birth Death ChainsUsing Markov chainsStandard Birth Death ApproachWhy it's good to swap at birth

    Perfect SamplingDominated Coupling From the PastdCFTP with standard chainsdCFTP with the swap

    Results