WELL Random number generator, WELL 랜덤 함수 소스 코드
WELL Random number generator
lfsr04.pdf, F. Panneton, P. L'Ecuyer and M. Matsumoto, "Improved Long-Period Generators Based on Linear Recurrences Modulo 2", submitted to ACM TOMS.
Abstract:
Fast uniform random number generators with extremely long periods have been defined and implemented based on linear recurrences modulo 2. The twisted GFSR and the Mersenne twister are famous recent examples. Besides the period length, the statistical quality of these generators is usually assessed via their equidistribution properties. The huge-period generators proposed so far are not quite optimal in that respect. In this paper, we propose new generators, with better equidistribution and “bit-mixing” properties for equivalent period length and speed. Approximately half of the coefficients of the characteristic polynomial of these generators are nonzero. The state of our new generators evolves in a more chaotic way than for the Mersenne twister. We illustrate how this can reduce the impact of persistent dependencies among successive output values, which can be observed in certain parts of the period of gigantic generators such as the Mersenne twister.
Keywords: Random number generation, linear feedback shift register, GFSR linear recurrence modulo 2, Mersenne twister.
Code in C:
- WELL512a.c, (.h)
- WELL1024a.c, (.h)
- WELL19937a.c, (.h)
- WELL44497a.c , (.h)
http://www.iro.umontreal.ca/~panneton/WELLRNG.html
'C' 카테고리의 다른 글
C 프로그래밍 가이드 (TCP School) (0) | 2022.06.06 |
---|---|
Ubuntu, C 언어 컴파일 (gcc) (0) | 2022.05.13 |
C 언어 동영상 강의 (입문부터 게임 개발까지) (0) | 2021.06.08 |
C 언어 scanf 함수에서 공백 포함된 문장 입력받기 (0) | 2021.04.30 |
C 언어, 한글 초성 분리 (0) | 2021.02.16 |