From octave-sources-request at bevo dot che dot wisc dot edu Mon Aug 23 20:03:19 1999 Subject: octave-mt: A very fast RNG with a period of 10^6000 From: Dirk Eddelbuettel To: octave-sources at bevo dot che dot wisc dot edu Date: Mon, 23 Aug 1999 21:03:15 -0400 (EDT) --FmeXoqDBBh Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit [ The README below is an ascii copy of the web page at http://rosebud.sps.queensu.ca/~edd/code/octave-mt/html and the tar.gz is attached. I had posted a previous version a few weeks ago. This version has better documentation and slightly improved code. -edd ] --FmeXoqDBBh Content-Type: application/octet-stream Content-Description: octave-mt.tar.gz Content-Disposition: attachment; filename="octave-mt.tar.gz" Content-Transfer-Encoding: base64 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 --FmeXoqDBBh Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Octave module for the Mersenne Twister MT19337 RNG =20 Overview The file [1]randmt.cc provides three new commands for GNU Octave:randmt to generate U(0,1) random numbers, randmtn to generate= N(0,1) random numbers, and randmtseed to set the seed of the generator. =20 The actual ANSI C implementation of the RNG is provided by the file [2]cokus.c (also included in the tarball), written by Shawn Cokus. This is an improved implementation of the very long period, fast, an= d memory-efficient Mersenne Twister Random Number Generator by Makoto Matsumoto and Takuji Nishimura. This random number generator uses a twisted generalized feedback shift-register algorithm which has a Mersenne prime period of 2^19937 - 1, or about 10^6000, and is equi-distributed in 623 dimensions. It has passed the `DIEHARD' statistical tests by Marsaglia, but is also extremely fast and efficient in terms of memory usage. The code has been tested on 32bi= t (i386) and 64bit (alpha) versions of Linux. =20 Beyond the actual MT implementation by Shawn Cokus, one routine from= the RANDLIB library (Brown, Lovato, Russell, Venier, 1997, available= at [3]MDACC) was used to tranform uniform into standard normal deviates. This is the Ahrens and Dieter (1973) algorithm. I have simply combined the pieces, and provided simple C++ wrappers so that= Octave can access this code. Also included are a Makefile, and a simple Octave script to time the MT RNG against Octave's default RNG= from RANDLIB. =20 Provided mkoctfile is in your PATH, you can just type make to build the Octave modules randmt.oct, randmtn.oct, and randmtseed.oct. The `compare_rngs.m' Octave script can be used to time this RNG against the default RNG. =20 This package is released under the GNU GPL just like Octave, the MT and RANDLIB. =20 [4]Download code. =20 Speed comparison To give a rough idea of the speed improvement, consider the followin= g simple [5]program which times Octave's standard RNG, and the Mersenn= e Twister. (comparison chart) =20 Reference This RNG is fully documented at [6]the Mersenne Twister RNG page, an= d the following paper provides the technical details: at Article{Matsumoto_Nishimura98, author =3D {Makoto Matsumoto and Takuji Nishimura}, title =3D {Mersenne Twister: A 623-dimensionally equidistributed uniform pseudorandom number generator}, journal =3D {ACM Transactions on Modeling and Computer Simulation}, year =3D 1998, volume =3D 8, number =3D 1, pages =3D {3-30}, note =3D {Code and information available at \url{http://www.math.keio.ac.jp/matumoto/emt.html}} } _________________________________________________________________ =20 [7]Dirk Eddelb=FCttel Last modified: Mon Aug 23 20:22:53 EDT 1999 References 1. http://rosebud.sps.queensu.ca/~edd/code/octave-mt/randmt.cc.txt 2. http://rosebud.sps.queensu.ca/~edd/code/octave-mt/cokus.c.txt 3. ftp://odin.mdacc.tmc.edu/pub/source/ 4. http://rosebud.sps.queensu.ca/~edd/code/octave-mt/octave-mt.tar.g= z 5. http://rosebud.sps.queensu.ca/~edd/code/octave-mt/compare_rngs.m.= txt 6. http://www.math.keio.ac.jp/~matumoto/emt.html 7. http://rosebud.sps.queensu.ca/~edd --=20 According to the latest figures, 43% of all statistics are totally wort= hless. --FmeXoqDBBh--