Welche Algorithmen werden in modernen und qualitativ hochwertigen Zufallszahlengeneratoren verwendet?
Welche Algorithmen werden in modernen und qualitativ hochwertigen Zufallszahlengeneratoren verwendet?
Antworten:
In R sind die Standardeinstellungen für die Zufallszahlengenerierung:
Sie können dies leicht überprüfen, nämlich.
> RNGkind()
[1] "Mersenne-Twister" "Inversion"
Es ist möglich, den Standardgenerator auf andere PRNGs wie Super-Duper, Wichmann-Hill, Marsaglia-Multicarry oder sogar ein vom Benutzer bereitgestelltes PRNG umzustellen. Weitere Informationen finden Sie im RNGkind. Ich musste das Standard-PRNG nie ändern.
Die C GSL- Bibliothek verwendet standardmäßig auch den Mersenne-Twister .
Der Mersenne Twister ist einer, den ich bisher gesehen habe.
Das von George Marsaglia entworfene Xorshift PNG. Seine Periode (2 ^ 128-1) ist viel kürzer als die des Mersenne-Twister, aber der Algorithmus ist sehr einfach zu implementieren und eignet sich für die Parallelisierung. Funktioniert gut auf vielen Kernarchitekturen wie DSP-Chips und Nvidias Tesla.
Unter http://prng.di.unimi.it/ finden Sie eine Auswahl mehrerer Zufallszahlengeneratoren, die mit TestU01 getestet wurden, der modernen Testsuite für Pseudozufallszahlengeneratoren, die eingefleischte und dieharder ersetzten. Sie können auswählen und auswählen.