Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

RANDU

Numerical Algorithm

RANDU is an obsolete method for generating random numbers that was used mainly in the 1960s and 1970s. It is a linear congruential generator of the Park-Miller type, defined by multiplying the previous value by 65539 and reducing the result modulo 2 to the power 31, starting from an odd seed. It yields pseudorandom integers uniformly distributed over the range from 0 to 2 to the power 31 minus 1, which programs often scaled to fractions between 0 and 1. The multiplier and modulus were chosen for computational convenience on 32-bit integer hardware, where the arithmetic could be done quickly with bitwise operations, not for statistical quality. It is known as IBM's RANDU and was carefully reimplemented on the 32-bit IBM System/360, and it is now regarded as one of the most ill-conceived random number generators ever designed. Donald Knuth called it truly horrible. It fails the spectral test badly in more than two dimensions, because points built from consecutive outputs fall on only 15 parallel planes in three dimensions. Because of its wide use in the early 1970s, many scientific results from that period are viewed with suspicion.

Connections

In Field

Source RANDU (Wikipedia)
Sources
RANDU (Wikipedia)
  • In Field: Computational Science, Lead
    RANDU is an obsolete method for generating random numbers used primarily in the 1960s and 1970s.
  • In Group: Statistical and Randomness Testing, Lead
    It is a linear congruential generator (LCG)
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.