# Forsythe’s algorithm

May 8, 2010
By

(This article was first published on Xi'an's Og » R, and kindly contributed to R-bloggers)

In connection with the Bernoulli factory post of last week, Richard Brent arXived a short historical note recalling George Forsythe’s algorithm for simulating variables with density $exp{-G(x)}$ when $0le G(x)le 1$ (the extension to any upper bound is straightforward). The idea is to avoid computing the exponential function by simulating uniforms $u_i$ until

$G(x) ge u_1 ldots ge u_{n-1} le u_n$

since the probability of this event is

$dfrac{G(x)^{n-1}}{(n-1)!} - dfrac{G(x)^{n}}{n!}$

its expectation is $exp{G(x)}$ and the probability that n is even is $exp{-G(x)}$. This turns into a generation method if the support of G is bounded. In relation with the Bernoulli factory problem, I think this has potential applications in that, when the function G(x) is replaced with an unbiased estimator the subsequent steps remain valid. This approach would indeed involve computing one single value of G(x), but this is also the case with Latuszyński et al.’s and our solutions… So I am uncertain as to whether or not this has practical implications. (Brent mentions normal simulation but this is more history than methodology.)

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

Tags: , , , , , , , ,