计算定积分
数学实验
实验序号, 日期,2011 年 6 月 28 日 班级 09B 姓名 郭世伟 学号 094080106 实验 用Monte-Carlo
计算定积分(随机投点法和平均值法)
x11名称 e,1x JdxJedx,,, 12,,,01e,1
问题的背景,
不少统计问题,如计算概率,各阶矩等,最后都归结为定积分的近似计算问题(特别是高维积分).这一方法是求解数学物理,
技术及经济管理近似的数值常用方法.
实验目的,
1. 学习和掌握Excel的有关命令.
2. 进一歩理解大数定律.
3. 掌握随机模拟的思路.
4. 比较两种方法的精度.(n=100,1000,10000)
实验原理与数学模型,
(1) 随机投点法
设
1
sfxdx,(),0
fx()0()1,,fx其中在[0,1]上连续,且有.
(,)XYXY和设服从[0,1;0,1]上的均匀分布,则可知服从[0,1]上的均匀分布,XY和且独立.因为
fx()11
pPYfXdydxfxdxs,,,,,(())(),,,000
AYfx,,(())所以,定积分的值就是事件的概率p.这样,根据大数定律,我们可s
以用频率来近似概率. 具体做法如下:先产生2上均匀的随机数:n个[0,1]xxxyyy,,,;,,,.然后对对数据(,记录满足nxy), 1212nnii
yfx,()ii的次数,最后的估计值,即 ks
k s,n
注:为了计算一般的定积分,我们可以这样来解决.设
b
sfxdx,(),a
MfxL,,()其中有界,不妨设. 令 fxab()[,]在
xabay,,,() 则有
b11()ba, sfxdxfabaybadyMLfabayLLdy,,,,,,,,,,,()(())()()[(())],,,ML,a00
11()ba, ,,,,,,,()[(())]()MLfabayLdyLbady,,ML,00
11fabayL(()),,,fabayL(()),,, 令,,,,,()()()MLbadyLbasdy,1,,ML,ML,00我们只要求即可. s1
(2) 平均值法
设
1
sfxdx,(),0
fx()其中在[0,1]上连续.
YfX,()X 设服从[0,1]上的均匀分布,则的数学期望为
1
EfXfxdxs(())(),,,0
fX()fX()所以估计的值就是估计的数学期望的值.由辛钦大数定律,可以用的观s
fX()察值的平均值去估计的数学期望.具体做法如下:先产生上均匀的随机n个[0,1]
n1sfx,()数:.然后对每个计算,最后的估计值,即 xxx,,,fx()xs,i12niini,1
实验所用软件及版本,
主要内容(要点):
(1)用随机投点法和平均值法计算定积分:
x11e,1x JdxJedx,,, 12,,,01e,1
(2)比较两种方法的精度.(n=100,1000,10000.对每一个n重复做5次)
实验过程,,含解决方法和基本步骤,主要程序清单及异常情况记录等,
x1e,1问题1(随机投点法):估计定积分 Jdx,,1,0e,1
xe,1fx(), 令 当. 010()1,,,,xfx时,有
e,1
(1)从主菜单中选择【工具|数据
】,在【数据分析】对话框中滚动列
框,选择“随机数发生器”选项,如图9,1
图9,1
(2)重重两次可得100对随机数,作变换,然后进行比较,如zfx,()yz,iiii
k图9,2,最后进行数数,得. ks,,,42,0.42.n
图9,2
1,,,121y1ee,x,,11估计定积分 Jedx,2()2,,,eedye2,,1,,1ee,0
1,,,121yee,下面我们估计,从上面不难得到,所以 s,0.49sdy,22,,1ee,0
,,11 ,3.039. Jeese,,,2()222
x1e,1Jdx,.问题2(平均值法):估计定积分 1,0e,1
xe,1fx(),令 .
e,1
n1Jfx,()由上表可以算得:,0.401 ,1ini,1
1x估计定积分 Jedx,2,,1
1J1xX2因为,,,,,).所以我们首先产生 edxEeXU,~(11,,122
(,1,1)的均匀随机数.其它类似. 如图9,3.
所以,. J,,21.172.34,2
从上述结果可以看出,误差较大,必须加大容量.
实验结果与实验总结(体会),
第一次n=100
k= s= J=
41 0.41 2.663089
第二次n=1000
k= s= J=
443 0.443 2.818215
第三次n=10000
k= s= J=
4220 0.422 2.719498
进一步讨论或展望: 做了试验后我发现投点法和平均值法求的积分值很相近,而做一次是不够的,我们需要多次做后才能发现这个规律,而这个也是检验我们实验是否做着正确的依据。
当做同一n值的多次试验时,只要我们改动其中的随机变量的值,也就是用随机变量发生器重新产生一组数据我们就可以得到一组新的数据,这就会很方便,这是因为Excel2003的优越性,一旦公式写好后只要改变相应值就会引其结果的变化,这在以后我们的学习中会有很大帮助。
教师评语与成绩,