![]() |
Randomness
I have a copy of the third edition of Numerical Recipes and I would like to find all full period triples for the 64bit Xorshift method that pass the diehard tests. I would also like details of what the diehard tests are and either information regarding ready to use implementations (in either C, C++ or Fortran) of it that are out there or sufficient information to implement the die hard tests myself. I am also interested in what other tests I can do (such as the spectral test mentioned in Numerical Recipes) and information on either ready to use implementations of them or on how to implement them.
Would please someone point me in the right direction? |
[quote=ShiningArcanine;133243]I have a copy of the third edition of Numerical Recipes and I would like to find all full period triples for the 64bit Xorshift method that pass the diehard tests. I would also like details of what the diehard tests are and either information regarding ready to use implementations (in either C, C++ or Fortran) of it that are out there or sufficient information to implement the die hard tests myself. I am also interested in what other tests I can do (such as the spectral test mentioned in Numerical Recipes) and information on either ready to use implementations of them or on how to implement them.
Would please someone point me in the right direction?[/quote] You can find a lot of great info and links on the topic of randomness at [url]http://www.random.org[/url] (as well as an interface to a true random number generator that can work with automated clients)--maybe it will have what you're looking for? |
[QUOTE=ShiningArcanine;133243]I have a copy of the third edition of Numerical Recipes and I would like to find all full period triples for the 64bit Xorshift method that pass the diehard tests. I would also like details of what the diehard tests are and either information regarding ready to use implementations (in either C, C++ or Fortran) of it that are out there or sufficient information to implement the die hard tests myself. I am also interested in what other tests I can do (such as the spectral test mentioned in Numerical Recipes) and information on either ready to use implementations of them or on how to implement them.
Would please someone point me in the right direction?[/QUOTE]I suggest that you start by reading Knuth. Although it's dated, it's an excellent introduction to the topic of (pseudo)random numbers. Paul |
[QUOTE=ShiningArcanine;133243]I have a copy of the third edition of Numerical Recipes and I would like to find all full period triples for the 64bit Xorshift method that pass the diehard tests. I would also like details of what the diehard tests are and either information regarding ready to use implementations (in either C, C++ or Fortran) of it that are out there or sufficient information to implement the die hard tests myself. I am also interested in what other tests I can do (such as the spectral test mentioned in Numerical Recipes) and information on either ready to use implementations of them or on how to implement them.
Would please someone point me in the right direction?[/QUOTE] [url="http://en.wikipedia.org/wiki/Diehard_tests"]Didn't look very hard, eh?[/url] |
[QUOTE=Anonymous;133245]You can find a lot of great info and links on the topic of randomness at [url]http://www.random.org[/url] (as well as an interface to a true random number generator that can work with automated clients)--maybe it will have what you're looking for?[/QUOTE]
I looked at that website and I cannot find any information or links on anything other than its own random number generator. I need pseudo-random numbers so that the numbers can be reproduced for debugging purposes, so a real random number generator is not very useful to me. Not to mention, that I will need something on the order of 1E17 random numbers at a time, which I doubt that site would be able to provide. [QUOTE=xilman;133251]I suggest that you start by reading Knuth. Although it's dated, it's an excellent introduction to the topic of (pseudo)random numbers. Paul[/QUOTE] Thanks. I looked at the table of contents on Amazon and its pseudo-random number chapter seems to contain useful information. [QUOTE=jasonp;133270][url="http://en.wikipedia.org/wiki/Diehard_tests"]Didn't look very hard, eh?[/url][/QUOTE] Regardless of the difficulty of implementing them, I need to implement them to check the results of a pseudo-random number generator I produced using constants from Numerical Recipes. What I really need are the technical details of how they work, so that I can implement them and I find the information at wikipedia to be lacking detail. |
[quote=ShiningArcanine;133310]I need pseudo-random numbers so that the numbers can be reproduced for debugging purposes, so a real random number generator is not very useful to me.[/quote]
I hear [URL="http://nvd.nist.gov/nvd.cfm?cvename=CVE-2008-0166"]Debian's OpenSSL package[/URL] would work for this. :popcorn: |
:missingteeth:
|
I've been using the open source ISAAC RNG package to generate 64-bit pseudorandom numbers - added a bit of simple manual tweaking to take 64-bit integer outputs and use those to generate pseudorandom doubles in a desired interval. It's allegedly best-of-breed and the code is decently small, though I suspect somewhat more intricate than the NR algorithms.
Like all RNGs that are implemented with application-debuggabiity in mind, it provides for use of an initial seed which can be nonrandomly chosen so as to give "reproducibly random" outputs. |
I am working on a replacement for an existing random number generator, which is why I am interested in how to generate constants and do statistical tests. A third party random number generation package will not be suitable for this. These numbers need not be to the level of randomness necessary for cryptography, yet they must be random enough that they do not have any statistically discernible pattern. I already have a composite generator working, using constants from Numerical Recipes, but I presently have no way of doing statistical tests on its output to verify that it statistically random.
|
But you are already familiar with the Diehard statistical tests, yes? Just search for "Diehard test" to find the information and the code.
|
Inspired by this thread I downloaded dieharder, a test suite for random number generators. Perhaps this is useful to you?. [url]http://www.phy.duke.edu/~rgb/General/dieharder.php[/url]
|
| All times are UTC. The time now is 09:56. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.