为了求解参赛者更换选择之后赢得汽车的概率, 这里引入两个随机事件: A=一开始选中汽车 B=更换选择后选中汽车 根据全概率公式可求得参赛者更换选择之后赢 得汽车的概率为 =P0P8到0+团P1)-写X0+号x1- 2 参赛者更换选择后赢得汽车的概率增大了,从最 初的1/3变为2/3了,显然参赛者应该更换自己的 选择
• 为了求解参赛者更换选择之后赢得汽车的概率, 这里引入两个随机事件: • A= 一开始选中汽车 B=更换选择后选中汽车 根据全概率公式可求得参赛者更换选择之后赢 得汽车的概率为 参赛者更换选择后赢得汽车的概率增大了,从最 初的1/3变为2/3了,显然参赛者应该更换自己的 选择。 1 2 2 ( ) ( ) ( | ) ( ) ( | ) 0 1 3 3 3 P B P A P B A P A P B A
随机模拟方法求解 设两只羊的编号分别为1和2,汽车的编号为3 现在从数字1、2、3中随机选取一个数字,若 开始选中1或2,则更换选择后选中3, 即赢得汽 车;若一开始选中3,则更换选择后选中1或2, 即得不到汽车。 将这样的试验重复进行n次,记录一开始选中1 或2的次数m(即更换选择后赢得汽车的次数) 从而可以确定更换选择后赢得汽车的频率m/n。 由大数定律可知当试验次数n增大时,频率m/n 趋近于更换选择后赢得汽车的概率
随机模拟方法求解 • 设两只羊的编号分别为1和2,汽车的编号为3。 • 现在从数字1、2、3中随机选取一个数字,若一 开始选中1或2,则更换选择后选中3,即赢得汽 车;若一开始选中3,则更换选择后选中1或2, 即得不到汽车。 • 将这样的试验重复进行n次,记录一开始选中1 或2的次数m(即更换选择后赢得汽车的次数), 从而可以确定更换选择后赢得汽车的频率m/n。 由大数定律可知当试验次数n增大时,频率m/n 趋近于更换选择后赢得汽车的概率
MATLAB程序代码如下: function p SheepAndCar(n) %p=SheepAndCar(n),利用蒙特卡洛方法求解蒙提霍尔问题,求参赛 者更换选择之后 %赢得汽车的概率p。 这里的n是正整数标量或向量,表示随机抽样的次数。 for i 1:length(n) x randsample(3,n(i),'true'); %随机抽样 p(0)=sum(x~=3)/n(0)片 %概率的模拟值 end
MATLAB程序代码如下: • function p = SheepAndCar(n) % p = SheepAndCar(n), 利用蒙特卡洛方法求解蒙提霍尔问题,求参赛 者更换选择之后 % 赢得汽车的概率p。这里的n是正整数标量或向量,表示随机抽样的次数。 • • for i = 1:length(n) • x = randsample(3,n(i),’true’); %随机抽样 • p(i) = sum(x~=3)/n(i); %概率的模拟值 • end
SheepAndCar函数代码的注释部分给 出了该函数的调用格式 下面调用SheepAndCar函数,针对不同的n,求参 赛者更换选择之后赢得汽车的概率的模拟值 >>P= SheepAndCar(C10,100,1000,10000,100000]) %求概率模拟值向量 0.70000.66000.66500.66000.66630.6666 由以上结果可以看到,随着随机抽样次数 的增大,所求概率的模拟值逐渐趋近于理 论值2/3
• SheepAndCar 函数代码的注释部分给 出了该函数的调用格式。 • 下面调用SheepAndCar函数,针对不同的n,求参 赛者更换选择之后赢得汽车的概率的模拟值 • >> p = SheepAndCar([10,100,1000,10000,100000]) %求概率模拟值向量 • p = • 0.7000 0.6600 0.6650 0.6600 0.6663 0.6666 • 由以上结果可以看到,随着随机抽样次数 的增大,所求概率的模拟值逐渐趋近于理 论值2/3
CASE2.抽球问题 一 袋子中有n个球,从中有放回地抽取 m(n≤m)次,求袋子中的每个球都能 被抽到的概率。这个问题也可以描述为 m(n≤m)个球随机地落到n个盒子中, 求每个盒子中都有球的概率
CASE2. 抽球问题 • 一袋子中有n个球,从中有放回地抽取 m(n≤m)次,求袋子中的每个球都能 被抽到的概率。这个问题也可以描述为 m(n≤m)个球随机地落到n个盒子中, 求每个盒子中都有球的概率