anthony@utcsstat.UUCP (Anthony Ayiomamitis) (08/01/85)
I am looking for references to papers describing how one may generate random deviates from various distributions (for example, normal, Poisson) using a uniform random number generator. As many of you may know, micro- computers have built-in random number generators. However, these only produce deviates which are uniform and in the range [0,1]. Thus, one must use some "trick" to get deviates from other distributions. -- {allegra,ihnp4,linus,decvax}!utzoo!utcsstat!anthony {ihnp4|decvax|utzoo|utcsrgv}!utcs!utzoo!utcsstat!anthony
gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) (08/04/85)
> I am looking for references to papers describing how one may generate > random deviates from various distributions ... See Donald Knuth: The Art of Computer Programming, Vol II -- Seminumerical Algorithms.
norman@lasspvax.UUCP (Norman Ramsey) (08/05/85)
In article <2238@utcsstat.UUCP> anthony@utcsstat.UUCP (Anthony Ayiomamitis) writes: > > I am looking for references to papers describing how one may generate >random deviates from various distributions (for example, normal, Poisson) >using a uniform random number generator. As many of you may know, micro- >computers have built-in random number generators. However, these only >produce deviates which are uniform and in the range [0,1]. Thus, one must >use some "trick" to get deviates from other distributions. This is real easy. I assume you have a probability density function on [-infinity, infinity] that you want to duplicate. What you do is integrate this up to yield an integral probability distribution P(x). This is a monotonic function of x and is zero at - infinity and one at infinity. You can think of it as the probability of a random variable's being less than x. Anyway you have this beautiful monotonic thing with a range of [0,1], so you just invert it, and voila! you have your uniform-to-whatever conversion function. It's a theorem. -- Norman Ramsey ARPA: norman@lasspvax -- or -- norman%lasspvax@cu-arpa.cs.cornell.edu UUCP: {ihnp4,allegra,...}!cornell!lasspvax!norman BITNET: (in desperation only) ZSYJARTJ at CORNELLA Never eat anything with a shelf life of more than ten years
jrrt@mtuxo.UUCP (r.mitchell) (08/06/85)
I may be out of line here, but if a "deviate" is the same thing as a "realization" (that is, if you want functions that map random variables with a U[0,1] distribution to variables with other distribution functions, and if you don't mind a book, instead of a paper, as the reference, try SIMULATION MODELING AND ANALYSIS by Law and Kelton (McGraw-Hill, 1982). Chapter 7, "Generating Random Variables," includes a theoretial as well as practical discussion on generating Exponential, m-Erlnag, Gamma, Weibull, Normal, Chi-square, Student's t, F, Lognormal, Beta, Triangular, Bernoulli, Discrete Uniform, Binomial, Geometric, Negative Binomial, Poisson, and Empirical/Arbitrary distributions from a U[0,1] distribution. Apologies if I've misunderstood your request. Rob Mitchell {allegra,ihnp4}!mtuxo!jrrt Es un entreverado loco, lleno de lucidos intervalos. (He is a muddled fool, full of lucid intervals. *Don Quixote*)
keithd@cadovax.UUCP (Keith Doyle) (08/06/85)
> > I am looking for references to papers describing how one may generate > random deviates from various distributions (for example, normal, Poisson) > using a uniform random number generator. As many of you may know, micro- > computers have built-in random number generators. However, these only > produce deviates which are uniform and in the range [0,1]. Thus, one must > use some "trick" to get deviates from other distributions. > > -- > > {allegra,ihnp4,linus,decvax}!utzoo!utcsstat!anthony > {ihnp4|decvax|utzoo|utcsrgv}!utcs!utzoo!utcsstat!anthony I'd like to hear about this too. Keith Doyle # {ucbvax,ihnp4,decvax}!trwrb!cadovax!keithd
cline@aero.ARPA (Ken Cline ) (08/06/85)
In article <761@cadovax.UUCP> keithd@cadovax.UUCP (Keith Doyle) writes: >> >> I am looking for references to papers describing how one may generate >> random deviates from various distributions (for example, normal, Poisson) >> using a uniform random number generator... >> >> {allegra,ihnp4,linus,decvax}!utzoo!utcsstat!anthony >> {ihnp4|decvax|utzoo|utcsrgv}!utcs!utzoo!utcsstat!anthony > >I'd like to hear about this too. > >Keith Doyle ># {ucbvax,ihnp4,decvax}!trwrb!cadovax!keithd Since there seems to be sufficient interest, I'll reply to the net... Section 3.4.1 of The Art of Computer Programming, Vol. II, by Knuth contains a section on numerical distributions. This is such an excellent book (and so widely available) that I feel comfortable recommending, even though I am no expert on this topic. Knuth mentions "Non-Uniform Random Numbers" by J. H. Ahrens and U. Dieter, which was "forthcoming" in 1981, as another reference. Ken Cline Cline@Aerospace
jrm@wdl1.UUCP (08/08/85)
If you get answers to your question regarding generation of random distributions, I would be interested in seeing them Jim McGowan jrm@ford-wdl1