用Python实现蒙特卡罗模拟的详细教程( 四 )


总之,每1美元的赌注,0.02美元去的会被庄家赢走 。相比之下,轮盘赌的最低庄家边缘为2.5% 。因此,我们确信,你将有更好的机会赢得我们想象中的游戏轮盘赌 。
Python 实现:1.导入所需的库:

用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 38: Importing the required libraries for our casino problem.
 
2.初始化
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 39: Placing bets for odds and even numbers.
 
3. 主函数:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 40: Applying the Monte Carlo Methodology to our casino problem.
 
4. 最终输出:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 41: Calculating and displaying the final values.
 
5. 运行 1000 次迭代:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 42: Running our function 1000 times.
 
6. 投注数量 = 5:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 43: Data visualization of results when the number of bets equals five.
 
7. 投注数量 = 10:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 44: Data visualization of results when the number of bets equals ten.
 
8. 投注数量 = 1000:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 45: Data visualization of results when the number of bets equals 1000.
 
9. 投注数量 = 5000:
用Python实现蒙特卡罗模拟的详细教程

文章插图
【用Python实现蒙特卡罗模拟的详细教程】> Figure 46: Data visualization of results when the number of bets equals 5000.
 
10. 投注数量 = 10000:
用Python实现蒙特卡罗模拟的详细教程

文章插图
> Figure 47: Data visualization of results when the number of bets equals 10000.
从上面的实验中,我们可以看到,如果玩家在这些游戏上下注较少,他们有更好的盈利机会 。在某些情况下,我们得到负数,这意味着玩家失去了所有的钱和累积的债务,而不是盈利 。
请记住,这些百分比是我们的模拟游戏,他们可以修改 。
结论:与任何预测模型一样,仿真将只像我们估计得一样好 。重要的是要记住,蒙特卡罗模拟只代表概率,而不是确定性 。然而,蒙特卡罗模拟可以是一个有价值的工具,当预测一个未知的未来 。
详细介绍我们的神经网络教程,详细介绍 Python 代码和数学
免责声明:本文所表达的观点是作者的观点,并不代表卡内基梅隆大学的观点 。这些著作并不打算成为最终产品,而是反映当前思维,同时成为讨论和改进的催化剂 。
引用:[1] 概率问题报价,21 电影,https://www.imdb.com/title/tt0478087/characters/nm0000228#quotes
[2] 乔治-路易斯·勒克莱克,布冯伯爵,维基百科,https://en.wikipedia.org/wiki/Georges-Louis_Leclerc,_Comte_de_Buffon
[3] 布冯投针问题,维基百科,https://en.wikipedia.org/wiki/Buffon%27s_needle_problem
 
(本文翻译自Towards AI Team的文章《Monte Carlo Simulation An In-depth Tutorial with Python》,参考:https://medium.com/towards-artificial-intelligence/monte-carlo-simulation-an-in-depth-tutorial-with-python-bcf6eb7856c8)




推荐阅读