Prime modulus multiplicative linear congruential generator: Difference between revisions

From SklogWiki
Jump to navigation Jump to search
mNo edit summary
Line 1: Line 1:
:<math>y_{n+1}\equiv ay_n + b~~~(\mod ~m),</math>
:<math>y_{n+1}\equiv ay_n + b~~~(\mod ~m),</math>


Line 20: Line 19:


==References==
==References==
#[http://dx.doi.org/10.1145/365696.365712 D. W. Hutchinson, "A New Uniform Pesudorandom Number Generator", Communications of the ACM, '''9''' pp. 432-433 (1966)]
#[http://dx.doi.org/
#[http://dx.doi.org/10.1145/769800.769827 G. Marsaglia, "Seeds for Random Number Generators",Communications of the ACM, '''46''' pp. 90-93 (2003)]
#[http://dx.doi.org/
#[http://dx.doi.org/
#[CACM_1966_09_0432]
#[CACM_1966_09_0432]
#[IBM_1969_02_0136]
#[IBM_1969_02_0136]

Revision as of 15:06, 2 March 2007

The parameter should be prime and as large as possible without causing a numerical overflow on the computer that it is running on. For example, for a 32-bit (31 bit + 1 sign bit) word size then the logical choice of is the Mersenne prime

,

with (a positive primitive root of see Ref.s 1 and 2), and . With these parameters one is able to generate a series of pseudo-random numbers from one seed value. For an interesting discussion on how to choose an initial seed value see Ref. 3. For a list of other values of and see Ref.4 and for its use on 64-bit computers see Ref. 5.

References

  1. D. W. Hutchinson, "A New Uniform Pesudorandom Number Generator", Communications of the ACM, 9 pp. 432-433 (1966)
  2. [http://dx.doi.org/
  3. G. Marsaglia, "Seeds for Random Number Generators",Communications of the ACM, 46 pp. 90-93 (2003)
  4. [http://dx.doi.org/
  5. [http://dx.doi.org/


  1. [CACM_1966_09_0432]
  2. [IBM_1969_02_0136]
  3. [CACM_2003_46_0090]
  4. [MC_1999_68_249]
  5. [CPC_1997_103_0103]