|
Boost : |
From: Tiago de Paula Peixoto (tiago_at_[hidden])
Date: 2005-01-24 18:37:16
Hi.
The Mersenne Twister RNG was updated by the original author in 2002,
because of a small problem in the seeding procedure, which was that the
most significant bit of the seed was not well reflected to the state
vector. Read
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/MT2002/emt19937ar.html
for more details.
The version implemented in Boost is the original 1998 one, which
contains the problem. The attached patch implements the new seeding
procedure, which uses something different than the linear congruential
RNG to initialize the state vector. I haven't identified the new
procedure to match any generator already implemented in Boost, so I just
wrote it there (please correct me if I'm wrong).
I have compared the output to the official implementation output, and
it's identical.
If the patch is OK, could it be applied?
Thanks.
-- Tiago de Paula Peixoto <tiago_at_[hidden]>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk