What is the randomization power in rand function.? For example UNIX drand48 can generate a randomization of 2^48 (~10^14).

 Réponse acceptée

Walter Roberson
Walter Roberson le 18 Oct 2013

0 votes

2^53 different possibilities.
You should also be caring about how long the period is (that is, the time until the sequence repeats.) It is on the order of 2^11000 for the default randomization routine.

4 commentaires

Sandeep Ganji
Sandeep Ganji le 18 Oct 2013
Thank you for the quick reply. Does using the rng('shuffle') improves the randomness?
Shashank Prasanna
Shashank Prasanna le 18 Oct 2013
rng('shuffle') just resets the seed of the RNG based on the current time on your machine. Doesn't do anything to the algorithm itself.
Walter Roberson
Walter Roberson le 18 Oct 2013
Modifié(e) : Walter Roberson le 18 Oct 2013
If your thought is to periodically have your program use rng('shuffle') in order to "improve the randomness", then interestingly it can be shown that this will reduce the randomness, because the times used as input to the shuffling will end up being correlated.
If you need "cryptographic strength" randomness, then you need to use special routines for that purpose that are "hardened" to reduce leakage of information about the internal state of the generator.
Sandeep Ganji
Sandeep Ganji le 18 Oct 2013
Thank you. I will consider shifting to a more robust random number generator.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Random Number Generation dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by