XORSHIFT*2は、 George Marsagria によって開発された疑似乱数生成器です。 XORSHIFT-ADD(XSadd)は 松本眞と斎藤睦夫によって XORSHIFT にささやかな改良を加えて開発されました。 XORSHIFT-ADD は128ビットの内部状態空間と2128-1の周期を 持ち、 TestU01 の bigcrush test を通ります。
XORSHIFT-ADD は XORWOW*2 より優れた疑似乱数生成器となることを目標に開発されました。 より小さく、より速く、そして統計的検定でよりよい成績を収めるように。 XORSHIFT-ADD は TinyMT と比較してもより小さく速くなっています。
XORSHIFT-ADD には以下の特徴があります。
このプログラムは2014年2月15日に一般に公開されました。 公開されたばかりなので、いくつかバグがあるかも知れません。 バグ報告、その他ご意見などありましたら、saito アットマーク manieth.com および m-mat アットマーク math.sci.hiroshima-u.ac.jp までメールしてください。
version | archive | changes |
---|---|---|
1.2 | GitHub XSaddからダウンロードしてください。 | 浮動小数点数への変換バグの修正。このバグは重大です。バージョン1.1では、 xsadd_float()とxsadd_double()は1.0を返すことがあり、 xsadd_floatOC() は0.0を返すことがありました。 (2015/4/24) |
1.1 |
XSadd-src-1.1.zip XSadd-src-1.1.tar.gz |
周期保証関数のバグ修正。これによって出力列が変わる可能性があります。 (2014/3/24) このバージョンには重大なバグがあります。 xsadd_float()とxsadd_double()は1.0を返すことがあり、 xsadd_floatOC() は0.0を返すことがあります。バージョン1.2を使って下さい。 (2015/4/24) |
1.0 |
XSadd-src-1.0.zip XSadd-src-1.0.tar.gz |
初期リリース(2014/2/15) |
ダウンロードがうまくいかない時は、こちら のページからやってみてください。
MTと同様に、TinyMT は商用利用を含むどんな目的にも自由に使用することができます。 詳細については、LICENSE.txt を見てください。 これは MIT ライセンスです。
メルセンヌ・ツイスタのページへ。
TinyMTのページへ。
MTGPのページへ。
*1 この研究は日本学術振興会科学研究費の補助を受けています。 No. 23244002, 24654019.
*2 Marsaglia, George. "Xorshift rngs." Journal of Statistical Software 8.14 (2003): 1-6.