一辆轿车和两只山羊问题解析(概率)

一辆轿车和两只山羊问题解析(概率)

 

有些看似简单的问题,其实不简单,甚至让人感到反直觉。需要耐心细致的分析对比思考。

 

   “玛丽莲问题”(也称为三扇门问题、蒙提霍尔问题)问题如下:台上有三个门,一个后边有汽车,其余后边是山羊。主持人让你任意选择其一。然后他打开其余两个门中的一个,你看到是山羊。这时,他给你机会让你可以重选,也就是你可以换选另一个剩下的门。那么,你换不换?

  玛丽莲的答案是应该换,但是很多读者不同意。玛丽莲在下一期专栏给出一个事件列表说明她的道理,但反对声更多更大了。在几千封读者来信中,反对者达九成。其中有全国健康机构的统计学家,国防情报中心的副主任,甚至著名的美籍匈牙利数学家保罗.埃尔笛希(Paul Erdos)也是反对者之一。 

   涉及到概率的问题,如果想解释得通俗易懂,让非专业人士也能很容易明白,那就不适合引入太多的专业术语和概念。为了方便大家的理解,我的回答不会涉及任何特别专业的词汇。

我们换种说法,先玩三个游戏:

游戏1.有三个盒子,一个盒子里有钻石,其它两个什么都没有。你先选了一个盒子,放在你的书包里。主持人把另外两个放在他的书包里。这时候问你,要不要用你的书包换主持人的书包?

分析:你的书包只有一个盒子,主持人的书包有两个,很显然,主持人的书包里有钻石的可能性更大。所以应该选择换!

游戏2.有三个盒子,一个盒子里有钻石,其它两个什么都没有。你先选了一个盒子,放在你的书包里。主持人把另外两个放在他的书包里。然后主持人从他的书包里扔掉一个没有钻石的盒子。这时候问你,要不要用你的书包换主持人的书包?

分析:主持人从他的书包里扔掉一个没有钻石的盒子,这个行为并不会改变书包里有钻石的概率。所以既然游戏1要换,那么游戏2同样要换。

游戏3.有三个盒子,一个盒子里有钻石,其它两个什么都没有。你先选了一个盒子。然后主持人从另外两个盒子中扔掉一个没有钻石的盒子。这时候问你,要不要用你的盒子换剩下的那个盒子?

分析:游戏2相对于游戏3,唯一的不同是增加了“书包”这个概念,但其实有没有把盒子装入书包,并不会对结论产生影响,本质上游戏3和游戏2是同一个游戏。所以游戏3同样要换。

而游戏3就是题目中所描述的蒙提霍尔问题。因此结论只有一个字:换。

 

再换一种图示方法:

 

  1991年2月17日,玛丽莲为此题目作了第三期专栏。她最后是这样说服大家的:假如当主持人打开那个有山羊的门后,有外星人忽然来到台上选。他在能选的两个门中任选一个,有车的概率确实都50%。但你不是刚到,你有优势,因为主持人帮助过你了,他为你在其余两个门中作了预选。你换了后,概率就由三分之一提高到三分之二了。然而,事情远远没有结束。接下来的十几年里,“玛丽莲问题”在全球掀起了讨论热潮,相关网站就有数十个,很多网站还给出了测试程序。在国内,你可以在任何论坛或BBS找到关于“玛丽莲问题 ”的帖子,网友们吵得面红耳赤,不亦乐乎。不过总的来说,无论国内还是国外,都是赞同玛丽莲的人多。也就是说就大部分人认为换门后得到车的概率是2/3,所以应该换。他们编写的程序也确实证明了这一点。

 但是,仍有一部分人坚持认为,换不换无所谓,概率都是1/2。为什么貌似简单的“玛丽莲问题”会产生这么多的争论呢?因为——  

  事实上,换不换取决于:主持人是随机选的呢?还是故意打开有羊的门呢?(1)如果主持人是随机选的,那么他和你的地位是等同的(都是随机选,先选后选无所谓),你们两个选到车的概率都是1/3,另一扇门后有车的概率也是1/3,所以换不换无所谓。(2)如果主持人是故意打开有羊的门,那么他选到车的概率当然是0,而你选到车的概率还是1/3,这样另一扇门后有车的概率就是2/3,所以应该换。这就是“2/3派”得势的理由。

    问题的症结在于:你作重新选择并不是随机选择,外星人做的选择是随机选择,两者的概率计算是不一样。

    必须是随机选择,才能说概率不因人的选择而改变。争论不休都是忘了概率的定义。

 

附录、如何理解概率的定义

首先应该明确在数学上概率是用公理化的形式定义的。各种教科书中出现的“概率统计定义”,“古典概率定义”,“几何概率定义”都是一些描述性的说法。教师不应该过分地去揣摩,探究那里的用语,而应理解其实质。概率的概念笼统说并不难,但若深入到理论或哲学中去讨论,问题就有一大堆,不是中学(甚至也不是大学)数学课程需要讨论的。

在这里,谈谈对数学上“定义”的一些看法。我们不想谈数学中给出定义的必要性,它的作用和意义。每一个数学老师对此都清楚。我们想谈的是相反的一面,也是我们认为有些问题的地方,即过分地追求定义,过分地探究书中的词语,而忽略了对整体精神的把握。

对任何一个概念的定义,都需要用到一些词语。而严格说,这些词语仍需要定义。定义这些词语又需要用到另外一些词语。因此,这是一个无限上推、无法完成的任务,除非在某一处停下来。换句话说,必须有一些不加定义的词语,以此为出发点来讨论问题。提出这一点,是希望人们不要迷信定义。有人以为凡是没定义的都是不严格的,只有给出了定义才严格。这种看法是不全面的。其次,有些定义即使有,对许多人来说也是不必要的。大多数科学家并不需要了解实数的理论(实数的严格定义),大多数数学家也不需要掌握用皮亚诺公理给出的自然数定义。严格表述尽管重要,但数学中最重要的活力来自于它的问题,思想,来自人们的探索,猜想,分析。

概率的统计定义通常可以这样叙述:在相同的条件下做大量的重复试验,一个事件出现的次数k和总的试验次数n之比,称为这个事件在这n次试验中出现的频率。当试验次数n很大时,频率将“稳定”在一个常数附近。n越大,频率偏离这个常数大的可能性越小。这个常数称为该事件的概率。

我们要清楚上述定义只是描述性的。事实上它有循环定义之嫌。因为定义中出现了“可能性”。这指的就是概率(类似地在古典概率定义中通常出现“等可能性”)。你可以设法避免这类词出现,但其本质的意义无法避免。有些人去探讨“试验”等词的定义。事实上,“做一次试验”并不难理解。如,扔一个硬币,摸三个红球,取十个产品,等等。个别复杂的试验也不难向学生解释。把“做一次试验”定义为“条件实现一次”,反而更难让人理解。什么叫“条件”?什么叫“实现”?这显然是不恰当的。何况“试验”根本不是数学中的名词。

对这个定义应该从整体上把握,重要的是掌握以下几点:

(1)我们所讨论的现象是可以做“重复试验”的。并非所有不确定现象都是概率论研究的对象。例如,某某人今天脸色不好是否不高兴,等等。这类问题没有重复试验的意义,属于人们的主观猜测与愿望。尽管人们有时也说:“十有八九他不高兴”,“我认为拉登活着的可能性只有百分之十”。这被称为主观概率。对主观概率的研究并非没有意义,但这不是概率论研究的对象。概率论描述的是可以重复试验的模型。另外,结果的随机性不同于结果未知。比如,至今人们还不知道哥德巴赫猜想是否成立,但这没有任何随机性。“重复试验”是指条件相同下的试验,严格说在现实中两次试验条件完全相同是不可能的,这里给出的是数学模型,至于现实中哪些问题能用这个数学模型来近似描述,这是另一个问题。

(2)频率和概率的关系。频率是随机的,是这n次试验中的频率。换另外n次试验一般说频率将不同,而概率是一个客观存在的常数。

 

Python模拟解决三门问题

通过程序模拟三门问题,并重复进行大量测试,统计换门与不换门的情况下,赢得汽车的概率。

#检测若输入的模拟次数不是整数,提示重新输入
while True:
     try:
         total = input("请输入模拟次数:")
         total=int(total)
         break   #若输入的正确,则退出,错误执行except下面代码
     except:
         print('您输入的内容不规范,请重新输入:')
#根据你输入的保存在total中次数,重复进行大量测试,统计换门与不换门赢得汽车的概率
a=b=c=d=e=f=0.00
x=0
from random import randint
list=["sheep1","sheep2","car"]
tuple=("yes","no")
while x!=total:
   t=randint(0,2)
   i=randint(0,1)
   if list[t]=="car":
        if tuple[i]=="yes":
         a+=1
        else:
         b+=1
   elif list[t]=="sheep1":
        if tuple[i]=="yes":
           c+=1
        else:
           d+=1
   elif list[t]=="sheep2":
        if tuple[i]=="yes":
           e+=1
        else:
           f+=1
   x+=1
print("总次数为%d"%(total))
print("换%d" %(a+c+e),"不换%d" %(b+d+f))
print("不换赢的概率为%.2f%%"%(b/(c+b+e)*100))
print("换赢的概率为%.2f%%"%((c+e)/(c+b+e)*100))

运行之,参见下图:

由模拟结果可以看出,换门赢的概率大约是不换赢的概率的2倍,所以换门能增加参赛者赢得汽车的概率。

 

猜你喜欢

转载自blog.csdn.net/cnds123/article/details/114950775