Period Length of the random numbers generated by rand() and randn()
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sofie Brammer
el 8 de Mayo de 2023
Comentada: Sofie Brammer
el 8 de Mayo de 2023
Hello,
from what I understand, (uniform) random number generators will produce numbers that at some point will repeat.
Is this always the case? Is it possible to read somewhere how long this period length is for the uniform number generator rand()?
And does randn() use rand()? Is there a way to see how randn() is coded?
What I actually would like to know is the Period Length of randn(), if the output of this is actually repeating after a while.
Thank you very much for your help! :)
Greetings
Sofie
0 comentarios
Respuesta aceptada
Steven Lord
el 8 de Mayo de 2023
See the "Choosing a Random Number Generator" section on this documentation page for a brief description of each of the available random number generators in MATLAB and their approximate periods.
We do not distribute the source code for either rand or randn.
Más respuestas (1)
Jonas
el 8 de Mayo de 2023
Editada: Jonas
el 8 de Mayo de 2023
don't confuse yourself, random number do not have a period length, but what you actually mean may be the rate e.g. after which a number may appear again. this is not deterministic, but you can measure e.g. the mean number of lements after which a specific number appears again:
short example with numbers 1 to 100
numberOfPossibilities=100;
data=randi(numberOfPossibilities,1e6,1);
for nr=1:numberOfPossibilities
where=find(data==nr);
spacings=diff(where);
meanSpacing(nr,1)=mean(spacings);
end
disp(meanSpacing')
as you can see, this number is near the number of possible integer values
but the output almost never repeats itself if there are enough ouput values possible. E.g. if you have 1000 possible outputs and a sequence of 1e6 values, the probability of an exact repetition is (1/1000)^(1e6)
note again: random numbers are random, if you have uniform distribution, the probability of a specific number is always the the same, regardless if you have drawn a number for the first time or for the 1000th time.
1 comentario
Ver también
Categorías
Más información sobre Random Number Generation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!