Comment semer correctement un mersenne twister RNG?
-
28-10-2019 - |
Question
Ce n'est en fait pas aussi simple que je le pensais.
En l'absence d'un RNG matériel, quel est le meilleur moyen de semer un Mersenne Twister?
Ou devrais-je dire, quel est un moyen acceptable de semer un Mersenne Twister RNG qui est utilisé pour générer des UUID?
La solution
Il y a une belle discussion sur les générateurs de nombres pseudo-aléatoires ici , y comprisune section sur l'ensemencement correct des PRNG (voir règle 3), qui utilise md5sum
et /dev/random
ou /dev/urandom
pour générer des graines.
Cela inclut également un certain nombre d'alogrithmes PRNG qui sont beaucoup plus faciles à coder (<10 lignes de code) que le MT mais qui sont sans doute tout aussi bons (longues périodes et réussissant tous les tests de Dieharder pour le caractère aléatoire).
/ p>