一、引言
在上期中,我们介绍了LCG和逆变换法,了解了区间上的均匀分布,多点分布以及一些简单分布函数的生成。本期我们将把情况推向更为一般的情况,讲介绍正态分布的生成,以及舍选法生成一般概率分布函数的分布。
二、正态分布
对于正态分布 的概率密度和分布函数:
直接计算上述积分是不太容易的,因此利用在概率论中学习过的计算方法,我们考虑二维正态分布,这个二维的正态分布的分布函数如下:
考虑极坐标变换:
可以得到:
受此启发, 就得到了Box-Muller变换原理:
做变换:
其中:
我们设 ,可以反解出:
因此我们只需生成两个均匀分布:, 就可以得到以及:
这样就生成了一维正态分布,事实上可以看成二维正态分布的一个切片。
所以我们利用这种方法其实是得到了一个二维正态分布:
、
三、舍选法
1、舍选法介绍
舍选法的直观理解如下:
我们在这个区域上生成均匀分布,之后只保留其中中的点,这样我们就生成了以为概率密度的分布。
那么为什么上面的这个“去掉一个部分”的操作可以保证分布还是均匀的呢?换句话说围成的区域中的点对于 应该还是均匀的,这样才可以保证生成的是以为概率密度的分布。下面的定理保证了这一点:
Thm 3,1
2、舍选法的操作过程
Step 1:生成均匀分布
生成区间上的均匀分布
Step 2: 做出取舍
3.如何选取“覆盖”函数
事实上,选取均匀分布作为概率密度函数的覆盖是有局限性的。比如像指数分布的概率密度函数或者下图所示概率密度函数就没法完全覆盖住,因为会涉及到
对于这种情况,我们一般选取rescaled Cauchy function(类似上图中的红线),这是一个关于 对称,并且最高点在 处取到 :
事实上,我们可以调整的大小,使这个函数处处比要大,即可以很好的覆盖住,具体的证明这里就不详细证明了。
而上述的生成我们很容易利用逆变换法生成:
这样我们只需要生成 就可以得到 所覆盖区域下的分布,在利用舍取法就可以筛选出以 为概率密度的分布。
四、结语
到此我们就讲了从特殊到一般的随机数生成方法,希望可以对大家有所启发。如果有别的方法没有提及的也可以分享给我!感谢大家看到这里,在这里祝各位中秋快乐!如果有不严谨以及错误的地方欢迎各位大佬指出!
标签:第二期,7D%,均匀分布,生成,5C%,随机数,舍选法,正态分布,科普 From: https://blog.csdn.net/weixin_63470844/article/details/142317926