next up previous

7 Summary and Recommendations

We have illustrated through example applications the implementation of various random number generators. We have concerned ourselves much more with issues of portability and quality than with efficiency, as our observations have been that generating random numbers is not very consumptive of CPU resources, except in a narrow range of circumstances. Our observations have led us to conclude that, now, due to more powerful computers, more sophisticated physical models are employed. This results in codes which do more work per random trial than in the past.

Although this is not a formal treatment, we have been able to infer that there exist good random number generators for 32 bit machines. The portable generator recommended by Park and Miller [47] appears to be particularly suitable for ``ordinary'' problems. At very large scale, this random number generator's period of (over 2 billion) may be too short.

Using lagged Fibonacci generators shows great promise, and is now undergoing thorough testing --- particularly in terms of correlations of sequences. It appears particularly suitable for generating many streams of independent random numbers in parallel. The interested reader should ``stay tuned'' for further developments. Moreover, we believe these generators are now sufficiently mature that we recommend them for inclusion in existing applications. The quality of the random sequences are at least as good as those generated using LCGs, with the only drawback being the requirement for greater storage. In cases requiring many parallel generators, this can be a factor.