In discrete-event simulation, most university textbooks (e.g., Law & Kelton, Banks etc.) state that for generating variates for each random variable (e.g., interarrival time, service time etc.) in the simulation model (e.g., using the inverse transform method and a uniformly random variate), we should use a different sequence of pseudo-random numbers for each random variable. I guess that requirement is to ensure the randomness of the generated numbers, since pseudo-random number generators are periodic, i.e., the same random number will occur again after a specific period (that is, after a period, the sequence repeats itself). Therefore, using a different sequence of random numbers for each random variable/purpose, it reduces the chance that a particular random number will be used more than once for the generation of the variate of the particular random variable.

However, since recent pseudo-random number generators, such as Mersenne Twister, have really long periods (e.g., Mersenne Twister has a period of 2^19937 – 1), I believe that the requirement for using different random number sequences, one per random variable, is no longer required. In a modern simulation model with a great number of random variables, this would be impractical and the use of modern pseudo-random number generators such as Mersenne Twister, ensure long periods. Thus the same sequence of random numbers can be used for generating variates for all of the random variables in the simulation model, even for long simulation runs. Of course for each independent replication (i.e., each simulation run) a different seed and thus a different sequence should be used.

I would love to have your thoughts on this matter, do you agree/disagree?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.