首页 >后端开发 >Python教程 >使用 Streamlit 模拟 Monty Hall 问题

使用 Streamlit 模拟 Monty Hall 问题

Susan Sarandon
Susan Sarandon原创
2024-10-21 06:14:30634浏览

蒙蒂霍尔问题是一个经典的概率难题,引起了数学家和普通思想家的兴趣。它呈现了一个场景,参赛者必须选择三扇门中的一扇,其中一扇门后面是一辆汽车(奖品),而另外两扇门则藏着山羊。参赛者做出初步选择后,知道每扇门后面是什么的主持人打开剩下的一扇门,露出一只山羊。然后参赛者可以选择是坚持原来的选择还是切换到另一扇未打开的门?

Simulating the Monty Hall problem using Streamlit

虽然直觉表明开关门不会对赢得汽车的概率产生影响(通过开关或保留成功的概率为 1/2),但事实是开关门会导致大约 2/3 (67%) 成功的机会,而保留原来的门只会导致大约 1/3 (33%) 成功的机会。

切换方法后成功的几率 (N-1/N),其中 N 代表门的数量。对于较大的 N 值,切换成功的概率 P(S) 约为 1(几乎确定)。我在学校的数学博览会上遇到了这个问题,从那时起我就对它着迷。我创建了这个模拟器来可视化问题并证明换门是有益的。

使用的库和工具

  • GUI 的 Streamlit
  • Altair 用于交互式折线图
  • 用于记录每次迭代结果的 Pandas
  • Huggingface 托管空间

查看演示:

https://huggingface.co/spaces/0xarnav/MontyHall

您可以更改门数和迭代次数以查看概率如何变化。例如,在 10 扇门时,切换后成功的概率约为 90%。这个模拟证明了一个令人惊讶的结论:换门通常会带来更高的获胜机会。

参考

封面图片的 UC Analytics

以上是使用 Streamlit 模拟 Monty Hall 问题的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn