You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Mersenne twister sucks, the seed space we use is tiny, and the /ad hack/ seed management we do makes it even more ridiculous by seeding separate MT instances with sequential integers. All of it, including all uses of boost random and numpy.random, should be replaced by a ChaCha-based PRNG with 256-bit seeds and small states.
Fortunately, most of the work to identify sources of nondeterminism has been done, and some seed parameter is passed in explicitly to every routine that makes random choices, so fixing this is a matter of macheteing your way through the mess you can see, rather than scrutinizing the whole code base to guess where it might be nondeterministic.
The text was updated successfully, but these errors were encountered:
The Mersenne twister sucks, the seed space we use is tiny, and the /ad hack/ seed management we do makes it even more ridiculous by seeding separate MT instances with sequential integers. All of it, including all uses of boost random and
numpy.random
, should be replaced by a ChaCha-based PRNG with 256-bit seeds and small states.Fortunately, most of the work to identify sources of nondeterminism has been done, and some seed parameter is passed in explicitly to every routine that makes random choices, so fixing this is a matter of macheteing your way through the mess you can see, rather than scrutinizing the whole code base to guess where it might be nondeterministic.
The text was updated successfully, but these errors were encountered: