python蒙特卡洛算法模拟赌博模型
sklearn实战-乳腺癌细胞数据挖掘
https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share

蒙特卡洛与赌博模型
蒙特卡洛_赌博模型

来,先谈一部电影!
《决胜21点》讲述了几位数学天才少年凭才智大闹赌城拉斯维加斯的故事。举世闻名的麻省理工,堪称是莘莘学子、科学天才们向往的圣地。作为有幸能到这里读书的新生,本·坎贝尔(吉姆·斯特吉斯饰)自然也有他的过人之处。的确,坎贝尔超常的数学运算才能在他进入麻省理工没多久就开始崭露头角。学院里讲授数学理论课程的米基·罗萨(凯文·史派西饰)更是一眼就看中了小伙子,并对其光明的未来充满了信心。经过短暂的接触之后,罗萨教授将这位数学天才介绍给他精心培养的另外几位数学高才生认识,并邀其加入一个由罗萨领导,由吉尔(凯特·波茨沃斯饰)、费舍(雅各布·皮特斯饰)等数学天才共同组成的“特殊团队”,专攻赌场上风行的“21点”游戏。运用他们对于数学的尖端认识和运算,在经验丰富的罗萨教授的指导下,轻松应对“21点”游戏中可能出现的各种局面,最终确保高频率地取胜纪录。
诶?听上去貌似都有点道理!您觉得呢?手指继续动,跟我继续看下去……
下面我开始数学建模,然后用蒙特卡洛模拟历史上最常见的几种赌博模型。

一 symplebedding system
数学天才可以在赌场春风得意,但普通人没这么好运气。因为第一赌场要抽成,首先让你不利,在大数定理面前,赌博次数越多,输钱概率就越大。所以赌场安排好了规则后,通常只做一件事,就是让你不停赌博。只要堵得次数越多,大数定理对你越不利。况且赌场指定规则并非5:5平等,赌客赢钱概率不到50%,不利因素还不止一个。
下面我用Python建立蒙特卡洛模型,模拟大数定理(赌博次数越多,输钱概率就越大)
纵坐标表示手里赌博金额,横坐标是赌博次数
起始赌金10000元,这里有一百条曲线,代表一百个赌徒,赌博次数为100次时,大概有50条曲线在10000元以上,50条曲线在10000元以下。这表示赢钱和输钱的人差不多。

仍然一百个赌徒,赌博次数增加到一千次,大多数曲线走势低于10000元,表示破产的人多于赢钱的人。赌博次数少时,大数定理不明显。赌博次数多时大数定理开始发挥作用。
simple_bettor(10000,100,1000)

随着赌博次数增加到一万次,赌博人数达到一千人,可以看到大数法则体现,绝大多数人都破产。

二 doublebedding system
伏尔泰的情妇,夏特莱侯爵夫人是个数学家和物理学家。夏特莱出身贵族,受过良好的教育。1733年以后,她同当时杰出的学者伏尔泰*建立了联系。她又是牟培尔堆*的亲密朋友之一。当时赌博在欧洲盛行,贵族也不例外。伯爵夫人提出了double
bedding system,即双倍法,这次输了,下次赌注加一倍,如果赢了就可以把上次输的钱捞回来。不幸的是夏特莱侯爵夫人的双倍法输光了所有钱,发生了著名的与伏尔泰私奔事件。
(Chatelet, Gabrielle-Emilie Le
Tonnelier de Breteuil,Marchioness du)

我用蒙特卡洛模拟后,发现伯爵夫的双倍法破产,破产率很高,赢钱率也不如simple。

三 D'AlembertStrategy

达朗贝尔(1717~1783)法国著名的物理学家、数学家和天文学家。1717年11月17日生于巴黎,1783年10月29日卒于巴黎。一生研究了大量课题,完成了涉及多个科学领域的论文和专著,其中最著名的有八卷巨著《数学手册》、力学专著《动力学》、23卷的《文集》、《百科全书》的序言等等。他提出的达朗贝尔赌博模型比较保守,不容易输钱,不会像夏特莱侯爵夫人把大量钱输的精光。
经过模特卡洛模拟发现
优点:破产率几乎为0
缺点:赢钱率不高,64%左右,赢的钱不多,做多10%左右

四 LabouchereSystem
那么,我们能找到一个优秀赌博算法模型嘛,能赢很多钱,赢得概率又大?答案是有的,看了皇家赌场007电影知道,英国政府机构派007詹姆士邦德去赢恐怖分子的钱。英国政府可不愿意输钱,他们为007定制了一套高胜率的算法,数学上成为Labouchere System。

单次Labouchere模拟Labouchere System for Gambling Tested

总赌金和赢取目标金额比例是1/10,胜率就有百分之90



总结,今天我用蒙特卡洛模拟了历史上常见几种赌博模型,由于专业性较强,赌博模型只是简单介绍,以后有机会可详细阐述。
在真实的赌场上,赌客持久赢钱概率很低。
现在赌场都是高科技行业,拥有较多数学工程师和计算机工程师,赌客无时无刻都被赌场设计的模型算计。
因此去赌场寻欢作乐还行,赢小钱还可以,想赢很多钱,嗯,看你运气了,

python蒙特卡洛算法模拟赌博模型的更多相关文章
- python蒙特卡洛脚本模拟—挑战者号爆炸概率
		
python机器学习-乳腺癌细胞挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
 - [其他] 蒙特卡洛(Monte Carlo)模拟手把手教基于EXCEL与Crystal Ball的蒙特卡洛成本模拟过程实例:
		
http://www.cqt8.com/soft/html/723.html下载,官网下载 (转帖)1.定义: 蒙特卡洛(Monte Carlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数 ...
 - 利用Python中的mock库对Python代码进行模拟测试
		
这篇文章主要介绍了利用Python中的mock库对Python代码进行模拟测试,mock库自从Python3.3依赖成为了Python的内置库,本文也等于介绍了该库的用法,需要的朋友可以参考下 ...
 - 【转】利用Python中的mock库对Python代码进行模拟测试
		
出处 https://www.toptal.com/python/an-introduction-to-mocking-in-python http://www.oschina.net/transla ...
 - Metropolis 采样与蒙特卡洛算法
		
Metropolis 算法又叫 Metropolis 抽样,是模拟退火算法的基础,在早期的科学计算中蒙特卡洛方法(Monte Carlo)是对大量原子在给定温度下的平衡态的随机模拟,当蒙特卡洛算法计算 ...
 - 数学建模python matlab 编程(疾病传播模型)
		
例12:一只游船上有800(1000)人,一名游客不慎患传染病,12(10)小时后有3人发病,由于船上不能及时隔离,问经过60(30)小时,72小时,患此病的人数.(与人口模型和Logistic模型类 ...
 - Python基础算法综合:加减乘除四则运算方法
		
#!usr/bin/env python# -*- coding:utf-8 -*-#python的算法加减乘除用符号:+,-,*,/来表示#以下全是python2.x写法,3.x以上请在python ...
 - Python使用mechanize模拟浏览器
		
Python使用mechanize模拟浏览器 之前我使用自带的urllib2模拟浏览器去进行訪问网页等操作,非常多站点都会出错误,还会返回乱码.之后使用了 mechanize模拟浏览器,这些情况都没出 ...
 - xsank的快餐 » Python simhash算法解决字符串相似问题
		
xsank的快餐 » Python simhash算法解决字符串相似问题 Python simhash算法解决字符串相似问题
 
随机推荐
- Final发布 -----欢迎来怼团队
			
欢迎来怼项目小组—Final发布展示 一.小组成员 队长:田继平 成员:葛美义,王伟东,姜珊,邵朔,阚博文 ,李圆圆 二.文案+美工展示 链接:http://www.cnblogs.com/js201 ...
 - No.10_分数分配
			
C#队一共有7名成员,因此团队贡献分一共350分. 分配方式应当反映绝大部分组员的真实贡献情况,即由贡献决定分数. 另外保证一定的奖惩措施,充分调动组员的积极性,鞭策团队向前迈进. 对于团队贡献分数的 ...
 - 20135316王剑桥 linux第六周课实验笔记
			
6.存储器层次结构 6.1存储技术 1.如果你的程序需要的数据是存储在CPU寄存器中的,那么在执行期间,在零个周期内就能访问到它们.如果存储在高速缓冲中,需要1-10个周期.如果存储在主存中,需要50 ...
 - ThoughtWorks.QRCode类库
			
ThoughtWorks.QRCode一个二维码生成类库.
 - Week2-作业1 《构建之法》1、2、16章观后感
			
这几天阅读了<构建之法>中的几章,受益匪浅,刷新了很多我对软件工程的认知.这本书让我很惊喜,阅读起来不像其他书一样枯燥,有很多人物的设计,以及对话的形式,非常有趣. 第一章.概述 读完第一 ...
 - ADT图及图的实现及图的应用
			
图: 图中涉及的定义: 有向图: 顶点之间的相关连接具有方向性: 无向图: 顶点之间相关连接没有方向性: 完全图: 若G是无向图,则顶点数n和边数e满足:0<=e<=n(n-1)/2,当e ...
 - jquery-numberformatter插件
			
项目地址:https://code.google.com/p/jquery-numberformatter/ 非jquery版:https://github.com/andrewgp/jsNumber ...
 - 基于windowsphone7的控制ppt播放
			
最近突然想起了一个学长的一个利用手机控制ppt播放的一个创意,并想将其在windows phone7上实现一下. 经过几天的努力已经可以控制ppt的播放,暂停,上一张,下一张了,并且电脑会将当前ppt ...
 - vue之Mutations 理解
			
commit:提交可以在组件中使用 this.$store.commit('xxx') 提交 mutation,或者使用 mapMutations 辅助函数将组件中的 methods 映射为 stor ...
 - sqlserver实现树形结构递归查询(无限极分类)
			
SQL Server 2005开始,我们可以直接通过CTE来支持递归查询,CTE即公用表表达式 百度百科 公用表表达式(CTE),是一个在查询中定义的临时命名结果集将在from子句中使用它.每个CTE ...
 
			
		