使用python解决三门问题(Monty Hall Problem)实验

问题描述
奖品随机分布在3扇门后,客户随机选择其中一扇,主持人打开另外两扇中任意没有奖品的一扇,问客户选择以下哪种策略赢面更大:
1.坚持原来的选择
2.改选剩下的那扇未打开的门

问题分析
1.如果从主持人的视角来看,无论客户随机打开哪一扇门概率都是1/2。
2.从客户的角度看问题,因为自己先选定一扇门,那主持人肯定不会打开有奖品的那扇门,排除了注册人打开有奖品的那扇门的概率,那么概率就发生了微妙的平衡。

数学推导过程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用python解决三门问题(Monty Hall Problem)实验_第1张图片
使用python解决三门问题(Monty Hall Problem)实验_第2张图片
也就是说,不改变门的情况下中奖概率为1/3,改变门的情况下中奖概率为2/3。
使用python解决三门问题(Monty Hall Problem)实验_第3张图片
那么我们用一段简单的代码来演示一下:

import random
s1,s2=0,0
#运行10万次
for i in range(1,100000):
    #定义三个门,0为无,1为有
    date=[0,0,0]
    #随机放入一个奖品
    date[random.randint(0,2)]=1
    #a是你选定的
    a=random.randint(0,2)
    #b是主持人为你打开的空门
    b=random.randint(0,2)
    #主持人不能动你的门和有奖品的门
    while a==b or date[b]==1:
        b=random.randint(0,2)
    #中将次数累加
    if date[a]==1:
        s1+=1
    else:
        s2+=1
print("不换中奖概率{0},换中奖概率{1}".format(s1/(s1+s2),s2/(s1+s2)))

运行结果:
使用python解决三门问题(Monty Hall Problem)实验_第4张图片
由此可以验证我们上述推导正确。
为什么答案会选择换,主要原因还是在主持人,主持人不会直接打开有奖品的那扇门,也就是说,如果你蒙对了,他会随机开一扇空的门。如果你蒙错了,他只能开空的那扇门,那么剩下那扇门一定有奖品。那么你第一次蒙对概率大还是蒙错概率大,当然是蒙错概率大,那么换门意味着获奖概率大。

你可能感兴趣的:(Python,概率论)