全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
8079 9
2011-02-09
现在我需要自己编一个能生成正态随机数的函数。
目前也是对MATLAB初学阶段,一些问题困扰着我,请高手指点一下。
就我目前的理解,根据蒙特卡罗,随机数的生成应该是采取几个步骤:
1、找到相应的密度函数
2、根据密度函数找到相应的原函数
3、求出原函数的反函数,再用matlab描述出,即得所需随机数。

但就正态分布而言,其密度是已知的,但是其原函数及其反函数是很难求出的,那么如何编写生成正态随机数的函数呢?

再者,金融里经常假设股票是服从几何布朗运动,其价格服从对数正态分布,
为维纳过程(即标准布朗运动),那么可以认定它是数值范围在[0,1]内的正态分布吗?或者说,用matlab实现时,它能用标准的正态分布随机数表示吗?

希望有人能指点一下,先谢了!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-2-9 01:43:36
(1) 正态随机数
If I were you I would try like below:
  • Use rand() to generate uniformly distributed pseudorandom numbers in  [0,1]
  • Then use norminv() to get the normal pseudorandom numbers - Is this what you need?
(2) 布朗运动
为什么不可以用标准的正态分布随机数表示呢?可以的,但它的数值范围不是在[0,1]而是任意实数,对吧。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-9 09:09:33
关键在于所有的概率分布取值在0-1之间,所以只要找到0-1之间的均匀分布 其他的就都很号计算了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-9 17:32:53
如果布朗运动用标准的正态分布,就可以将其均值与方差固定,不用求解。如果不能用正态分布表示,我目前还没找到相关的文献来说明,在金融价格中的这种布朗运动的均值方差如何决定,一般是按嗓音来处理。

对于正态随机数的生成,我不太理解。
gnipgnop 的意思是,先生成均匀分布的随机数,再norminv() 函数生成正态随机数吗?

我现在的思路是,先生成halton这样的低差异随机数,再由halton序列生成正态随机数。halton序列我已经得到了。但是正态随机数的生成存在一定的问题。

我对norminv() 函数不态熟悉,大概查了一下它的用法:
x=NORMINV(probability,mean,standard_dev)  其中:
Probability   正态分布的概率值。
Mean   分布的算术平均值。
Standard_dev   分布的标准偏差。
x返回指定平均值和标准偏差的正态累积分布函数的反函数。
按照随机数生成的原理,结果应该是正态分布数  
但是在这里面,均值=0,方差=1,但其概率值该如何得到?特别是如果用这个函数那么我的halton序列就没有用了,算法优势也就得不到体现了。

能否给我一个生成正态分布随机数的源程序?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-10 00:03:14
刚看到一些关于正态随机数的生成,说是用中心极限定理实现。具体似乎是:
(1)从计算机中产生U(0,1)均匀分布的随机数30个(当然,也可以是任意个,m越大越好,主要是符合中心极限定理的条件),记为u1,u2,...,u30;由于E(ui)=1/2,D(ui)=1/12(i=1,2,...,30)根据中心极限定理,可以认为近似服从均值为Σ=ui(其中i=1,2,...,30)近似服从均值为1/2*30=15,方差为1/12*30=2.5的正态分布。
(2)计算:v=(u1+u2+...+u30-15)/(2.5)1/2,由中心极限定理,它可以看作是来自标准正态分布N(0,1)的一个随机数;
(3)变换:x=μ+σv,由正态分布的性质可知,它可以看作是来自正态分布N(μ,σ*σ)的一个随机数。
但在第一步里:E(ui)=1/2,D(ui)=1/12(i=1,2,...,30)是如何得到的? 而且这个过程似乎是由30个均匀分布的随机数生成一个标准正态随机数吧?那这样,前期的均匀随机数得生成太多了吧。
那不能由n个均匀分布的随机数生成n个标准正态随机数吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-10 00:39:15
3# liuxin9023

看到版主你也有研究过正态随机数的生成原理,不晓得你对我上面的描述认同否。还有能提供生成正态随机数的原代友不能?谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群