How to generate REAL random numbers with some random and pseudo random

I'm doing (with Java) a really straightforward simulator (Queueing Systems.) that requires several random numbers (greater than $10^5$).

I recognize that Java Random class would certainly offer me all the random numbers I require, and also they pass all the examination I'm doing, yet. they are quasi - random! I do not like it.

I recognize that random number web site offers actual random numbers from climatic sound (or something like that) yet it restricts the download. Specifically you can not download and install greater than 10000numbers with one HTTP demand.

So the inquiry is: exists a means to create greater than $X$ random numbers with $X$ random numbers and also boundless () pseudo - random?

2022-06-07 14:36:35
Source Share
Answers: 2

I recognize your problems, nonetheless: As Yuval currently mentioned, there is no warranty that numbers from loud real life systems are "better" for your application that the numbers created from a pseudo - random number generator.

IID random variables are a mathematical idealization. Streamlining a little, for every single actual physical system and also every random number generator there is an analytical examination that will certainly disclose that the created numbers are not IID. The "bad" random number generators are those where such an examination is currently recognized, the "good" ones are those where such an examination is not recognized. Specifically, every pseudo - random number generator will certainly create numbers with some sort of relationship. The inquiry is, if the created artefacts will certainly generate incorrect outcomes when your application consumes them. In this feeling, all random number generators are "bad", yet when it come to a details application, some will certainly generate artefacts and also some will certainly not. In technique, it is frequently not feasible to establish which random number algorithms will certainly generate artefacts for an offered application, and also which will not. So, the most effective suggestions that I can offer you is

1) Use random number generators just that pass the common analytical examinations. Do not make use of executions that you do not recognize.

For examinations for random number generators see as an example


2) Run your application with at the very least 2 various random number generators.

"Different" methods certainly various algorithms, except instance 2 various straight harmony generators. This will certainly offer you an excellent remote possibility that the outcomes that you get aren't artefacts of your random number generator.

Some literary works:

  • William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery: Numerical Recipes, The Art of Scientific Computing (3rd version, phase 7)

  • James E. Gentle: Random Number Generation and also Monte Carlo Methods (Springer, 2nd version)

2022-06-07 16:25:44

There is definitely no factor to make use of "real" random numbers. In addition, those "real" random numbers might be even worse that pseudorandom ones. As an example, it can take place that for some physical factors, the "real" random little bits are a little manipulated or have mild relationships. That can be dealt with making use of a "randomness extractor" yet after that, why not simply make use of the very same strategies without all the problem?

There are undoubtedly some factors not to choose pseudorandomness, yet none use in your instance. As an example, you do not mind that your numbers are deterministic. You uncommitted if they are cryptographically safe and secure. And also you would certainly desire all your experiments to be reproducible (though that is still feasible under your "real" version).

Regarding your concrete last inquiry, yes, it is feasible to make use of outdoors "real" random little bits to affect a cryptographic version creating random numbers. You can possibly locate some approaches in the literary works (do not attempt to design anything on your own, though). Simply maintain it mind that as opposed to concentrating on the simulation itself, this will certainly transform your emphasis to something which, in my mind, is entirely fraudulent.

2022-06-07 15:04:34