Tuesday, January 16, 2007

Random number generation using a 256-state cellular automaton

For a research project at SCSU I developed a 256-state cellular automaton that serves as a random number generator. It's faster than the GNU Scientific Library RNGs I tested (taus, gfsr4, mt19937, and ranlxd1) and scores very well on the Diehard tests.

It's fast because the algorithm is basically an array lookup with pointer value updates.

Alas, there is no proof about cycles or such, but the statistical results so far are very good.

Source code and results are here:


http://home.southernct.edu/~pasqualonia1/ca/report.html