模拟三门问题(Monty Hall Problem)

因为最近很无聊,所以我们开始靠研究写代码来充当精神鸦片...

闲的淡疼.gif


好吧,其实这是一个python的小练习。内容么,与“羊"和“车”有关(不会开着车给你送羊)...这个练习就是著名的三门问题(Monty Hall Problem)


原题是这样的:

假设你参加了一个奖金真人秀节目,你一路过关斩将进入了最后环节。主持人告诉你现在有三扇门,其中两扇门背后是羊,一扇门背后是汽车(大奖)。如果你挑中了背后有汽车的那扇门,那么你就能把大奖开回家。但如果你挑中了背后有羊的门,那么很抱歉,你就只能空手而归了。你决定挑战下,于是随便指了一扇门,主持人在剩下的两扇门里打开了一扇,这扇门背后是羊。此时主持人问你 “你要不要考虑换一下哪?”那么请问你该换还是不该换?


题目到这里就结束了。你开动脑筋一想:剩下两个门,一个羊一个汽车,各是50%的可能性,那我换不换有什么区别吗?主持人一定是诈我的。“不换!” 你说。于是主持人把门打开了,你看到门后是...

惊喜.gif

如果去网上搜索下“三门问题”,会发现至今仍然不断有新的争论产生。比如,果壳网曾经有一个十几页的帖子辩论三门问题的正确解,有人用排列组合,有人用贝叶斯等等各种方法来解释这个问题,还有人认为根据主持人是否知道汽车的位置解会不一样...

正确答案是你应该坚决果断的要求换! 说实话,一开始我是没想明白的,直到某天看到一个网友说了一句很直觉的话,既没有用到统计学理论,也没有复杂的概率计算,然后豁然开朗了(最后再说这位网友是怎么说的,因为这不是本文的重点^-^)。

本文的重点是我们既然已经知道了三门问题的解,本着求真的科学态度就需要用实证来检验下这个解到底对不对。于是用py写了下面这段代码,正好当做练习:

这段练习代码模拟了玩50000次三门问题游戏,并且都选择“换”的结果。可视化以后图形如下:

可以看到如果选择换,有33238次真的选到了有汽车的门,约等于66%的概率。还可以不运行代码里面的change_choice方法来实验下不换的情况,红蓝直方图的高度就会相反。即不换只有34%的概率赢得汽车...

再来说回那位网友到底是怎么说的吧。这个问题搞脑筋的地方在于概率里事件的独立和非独立性。在本例中你的第一次选择,它与第二次选择并不互相独立(反例是抛硬币10000次,计算正反面的概率)。由于一开始羊有两只,汽车有一辆,所以第一次被你选中的那扇门其实有66%的概率是羊。大概率情况下换的结果都会好过不换!可见人的第一直觉有时候真的不是那么可靠。

三门问题-百度百科

薛定饿了么-劳斯莱斯和羊和羊:一个“选择”的大道理……

你可能感兴趣的:(模拟三门问题(Monty Hall Problem))