----- Messaggio originale -----
> Da: Rob Weir

> 
> 
> But would the earlier implementation also pass that same test?
> 
> Two test suites specifically for pseudo random number generators are:
> 
> Dieharder:  http://www.phy.duke.edu/~rgb/General/dieharder.php
> 
> and
> 
> this test from NIST:  http://csrc.nist.gov/groups/ST/toolkit/rng/index.html
> 
>>  The algorithm is known to pass some very strict statistical tests though.
>> 

Indeed I was referring to those two tests. Our new implementation
should pass them.

My simple understanding of the testing is that you usually don't embed the
test in a speadsheet: most testers will generate a sequence of, let's say
1 million numbers and pass them through the tests.

> 
> And that is an important thing, that we are starting with an algorithm
> that is already well known.  But any given implementation, due to
> subtleties of the implementation details, might not do as well as
> theory.  We see that with crypto all the time.

One thing that must be clear is that we don't generate crypto-grade
random numbers, that's far more complex than what I intended to
do. I was rather more concerned on the "Portable" part of PRNG:
it is critical that the RAND() function in Calc doesn't depend on
libc's rand() and it's a shame on whomever design the original
implementation. The algorithm we are using is not really very fast
or has a longest period it just solves a bug ;).


>   So it might be worth
> encouraging some more rigorous testing here.  In fact, maybe your blog
> post can help recruit some volunteers?   Say that we take our numeric
> algorithms very seriously, we're looking for the best.  This shows in
> our use of COIN-MP solver code, but also in our new PRNG.  We
> encourage anyone who wants to help to put our code through rigorous
> tests and help us find any problems, etc.
>

That is certainly welcome. I hope Andrea is taking notes.


We probably should implement Mersenne twister but with some tweaks
for the seeding, I just haven't seen the need to spend time on it. :)

cheers,

Pedro.

Reply via email to