将 Mersenne Twister 转换为双精度浮点数
数值分析
2020-03-13 v4 数值分析
统计计算
摘要
32 位 Mersenne Twister 生成器 MT19937 是一种广泛使用的随机数生成器。为了生成位长大于 32 位的数,特别是在将其转换为 IEEE 754 格式中 区间内的 53 位双精度浮点数时,典型的实现是将两个连续的 32 位整数拼接并除以 的幂。在这种情况下,32 位 MT19937 是在主要使用 32 位输出值的假设下,针对其等分布性质(即具有 位精度的等分布维数)进行优化的,因此与直接使用 32 位输出相比,这种拼接有时会降低等分布维数。在本文中,我们通过研究高维输出位之间的隐藏 线性关系来分析此类现象。因此,我们报告指出,具有特定滞后集的 MT19937 未能通过多项统计检验,如重叠碰撞检验、矩阵秩检验和汉明独立性检验。
引用
@article{arxiv.1708.06018,
title = {Conversion of Mersenne Twister to double-precision floating-point numbers},
author = {Shin Harase},
journal= {arXiv preprint arXiv:1708.06018},
year = {2020}
}