A major contributor to this article appears to have a close connection with its subject. It may require cleanup to comply with Wikipedia's content policies, particularly neutral point of view. Please discuss further on the talk page. (April 2016) (Learn how and when to remove this message)
MIXMAX generator
Classpseudorandom number generator
Data structureArray
Worst-case performanceO(n)
Best-case performanceO(n)
Average performanceO(n)
Worst-case space complexityO(n)
OptimalYes

The MIXMAX generator is a family of pseudorandom number generators (PRNG) and is based on Anosov C-systems (Anosov diffeomorphism) and Kolmogorov K-systems (Kolmogorov automorphism). It was introduced in a 1986 preprint by G. Savvidy and N. Ter-Arutyunyan-Savvidy and published in 1991.[1]

A fast implementation in C/C++ of the generator was developed by Konstantin Savvidy.[2] It is genuine 64-bit generator. The period of the generator is and the Kolmogorov entropy is for the matrix size .[3] That generator occupies less than 2 kb, and if a smaller generator state is required, a N = 17 version with less than 200 bytes memory requirement also exists.

The generator works on most 64-bit systems, including 64-bit Linux flavors and Intel Mac. It has also been tested on PPC and ARM architectures. The latest version also runs on 32-bit systems and on Windows. The generator is equally usable with C++ programs,[4] has been chosen as the default generator in CLHEP[5] for use in Geant4[6] and there exists a ROOT interface [7] and a PYTHIA interface. [8] It has been recently tested extensively on very wide variety of platforms, as part of the CLHEP/Geant4 release. EU-funded MIXMAX project [9]

An analysis by L’Ecuyer, Wambergue and Bourceret,[10] see also,[11] showed that MIXMAX generators has a lattice structure when the produced random numbers are considered in n - dimensional space larger than the dimension N of the matrix generator, and only in that high dimensions n > N they lie on a set of parallel hyperplanes and determined the maximum distance between the covering hyperplanes.

References

  1. ^ Savvidy, G.K; Ter-Arutyunyan-Savvidy, N.G (1991). "On the Monte Carlo simulation of physical systems". Journal of Computational Physics. 97 (2): 566. Bibcode:1991JCoPh..97..566S. doi:10.1016/0021-9991(91)90015-D.
  2. ^ Savvidy, K. (2015). "The MIXMAX Random Number Generator". Computer Physics Communications. 196: 161–165. arXiv:1403.5355. Bibcode:2015CoPhC.196..161S. doi:10.1016/j.cpc.2015.06.003. S2CID 16908633.
  3. ^ Savvidy, K.; Savvidy, G. (2015). "Spectrum and Entropy of C-systems MIXMAX Random Number Generator". Chaos, Solitons and Fractals. 91: 33–38. arXiv:1510.06274. Bibcode:2016CSF....91...33S. doi:10.1016/j.chaos.2016.05.003. S2CID 119291387.
  4. ^ "boost". proj-www.boost.org.
  5. ^ "CLHEP". proj-clhep.web.cern.ch.
  6. ^ "Geant4". proj-clhep.web.cern.ch. 15 December 2022.
  7. ^ "ROOT - ROOT::Math::MixMaxEngine Class". root.cern.ch. Retrieved 2016-04-09.
  8. ^ "PYTHIA - PYTHIA::Random::MixMaxRndm class". thep.lu.se. Retrieved 2022-01-01.
  9. ^ "Fastest random number generator could cut energy bills". commission.europa.eu/index_en.
  10. ^ L’Ecuyer, Pierre; Wambergue, Paul; Bourceret, Erwan (September 22, 2017). "Spectral Analysis of the MIXMAX Random Number Generators" (PDF).
  11. ^ Martirosyan, N.; Savvidy, K.; Savvidy, G. (Nov 19, 2018). "Spectral Test of the MIXMAX Random Number Generator". Chaos, Solitons and Fractals. 118: 242–248. arXiv:1806.05243. doi:10.1016/j.chaos.2018.11.024. S2CID 51687163.