我想知道 JavaScript 函数 Math.random
是否使用正态分布而非均匀分布。
如果不是,我该如何获得使用正态分布的数字?在互联网上没有找到一个清晰的算法来生成随机正态分布的数字。
我想重建一台 Schmidt 机器(德国物理学家)。该机器会产生0或1的随机数,并且它们必须服从正态分布,以便我可以将它们作为高斯钟形曲线绘制出来。
例如,随机函数生成120个数(0或1),这些数值的平均值(均值)必须接近60。
我想知道 JavaScript 函数 Math.random
是否使用正态分布而非均匀分布。
如果不是,我该如何获得使用正态分布的数字?在互联网上没有找到一个清晰的算法来生成随机正态分布的数字。
我想重建一台 Schmidt 机器(德国物理学家)。该机器会产生0或1的随机数,并且它们必须服从正态分布,以便我可以将它们作为高斯钟形曲线绘制出来。
例如,随机函数生成120个数(0或1),这些数值的平均值(均值)必须接近60。
//This is what I use for a Normal-ish distribution random function.
function normal_random(){
var pos = [ Math.random(), Math.random() ];
while ( Math.sin( pos[0] * Math.PI ) > pos[1] ){
pos = [ Math.random(), Math.random() ];
}
return pos[0];
};
此函数返回介于0和1之间的值。通常返回接近0.5的值。