两种随机数生成方法

您所在的位置:网站首页 随机数法抽取原则 两种随机数生成方法

两种随机数生成方法

2024-06-12 12:37| 来源: 网络整理| 查看: 265

两种随机数生成方法——反函数法和舍选法

我们知道,对于均匀分布的随机数,我们可以使用随机数生成器类似的方法生成均匀分布的随机数。包括线性同余发生器,FSR发生器等。对于非均匀分布的随机数,对于连续型随机变量,如果我们知道该分布的密度函数,则可以使用反函数法和舍选法生成随机数。

反函数法生成随机数

反函数法生成随机数的原理如下: 在这里插入图片描述 具体步骤如下: 1.使用随机数发生器等方法生成均匀分布随机数 2.求解Fx的反函数 3.带入生成的均匀分布随机数,则生成分布函数为Fx的随机数 例:生成柯西分布随机数 柯西分布分布函数是 F ( x ) = 1 2 + 1 π a r c t a n ( x ) F(x) = \frac{1}{2}+\frac{1}{{\pi}}arctan(x) F(x)=21​+π1​arctan(x)

n = 1e5 x = runif(n) res = tan(pi*(x-1/2))

反函数法缺点:一些函数的反函数表示不出来,此时反函数法就无法使用。

舍选法生成随机数

舍选法的原理: 在这里插入图片描述 解释:使用一个简单区域包含目标区区域,然后在这个简单区域上使用均匀分布生成随机数,再对随机数进行判断,是否落在目标区域内。 例子:使用舍选法生成正态分布随机数 目标密度: p ( x ) = ( 2 π ) − 1 / 2 e x p ( − x 2 2 ) p(x) = (2{\pi})^{-1/2}exp(-\frac{x^2}{2}) p(x)=(2π)−1/2exp(−2x2​) 试投密度: f ( x ) = 1 π ( 1 + x 2 ) f(x) = \frac{1}{{\pi(1+x^2)}} f(x)=π(1+x2)1​

#3 c = 2 z = rep(NA,1e3); i = 1 while(i z[i] = x_new; i = i+1 } } z hist(z,prob = T,ylim=c(0,1))

在这里插入图片描述 其中,c的最优值是 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3