我敢肯定,大多数阅读此书的人都遇到了生日概率问题:
给定一组n个人,至少两个人有相同生日的概率是多少?答案由公式给出

该公式很简单,因为它假设生日在一年中的所有365天均等分布,根据某些研究,这是不正确的。它也忽略leap年。但是,出于我们的目的,该公式可以正常工作。让我们一起玩吧!
令人惊讶的是,只有23个人,至少一场比赛的概率约为0.5073。如果有40个人,则概率约为0.8912,而有60个人,则概率约为0.9941。该公式的图显示在此处:

对于我们的小例子,假装我是一位教授短期课程的老师。在上课的第一天,我问学生们是否愿意跟着下注。如果至少有一场生日比赛,班上的每个人都必须给我$ 1。如果没有,我给每个人1美元。一年结束时我平均会得到多少钱?答案很容易计算出来,并且取决于班级中的学生人数,以及我一年中教授的班级数量。年末的平均金额为

其中n是班上的人数,Prob是上式的概率,班级是我这一年教的班数。我对年度金额的标准差也很感兴趣,如下所示:

其中,平均值是第一个公式给出的平均值。提示,方差(x)= E(x ^ 2)-E(x)^ 2。请注意,这两个公式仅在每年教的班数相同且每个班级的学生人数相同时才适用。如果“类别”是一个随机变量(可以逐年更改),则公式是不同的,尤其是标准差。因此,为简单起见,我们假设每个班级的n相同,每年班级的数量相同。
我想估计每年金额等于或小于$ 0的可能性。我可以使用JMP探查器和仿真器去做这个。此外,我可以使用模拟器来研究n和Classs的不同组合对概率的影响。我创建了一个包含所有这些公式的JMP文件,准备进行分析。它称为BirthdayModel.jmp,可以从以下位置下载JMP的文件交换。
我们要模拟的列称为总计。模拟器不仅允许您将分布放置在模型输入上,而且还允许您向模拟的响应值中添加随机噪声。我可以将年度金额的标准差输入模拟器。只需指定金额,如下所示:

但是,有一个问题。此功能仅允许您为响应中的可变性输入一个值。在我们的示例中,年度金额的标准偏差随n和Classs的变化而变化。那么,我该怎么办?查看总计的公式:
平均值+正常*标准差
其中,“均值”是年平均金额的公式,“标准差”是年平均金额的标准差的公式。它包括一个称为“正常”的因素。当我使用模拟器时,我将使该因子具有正态(0,1)分布。因此,得出的Total的模拟值将具有正确的标准偏差,并且该标准偏差将随着n或Classes的变化而变化。就是我想要的!同样,这将强制Total(对于给定的n和Class)的采样分布为正态。根据我所做的其他模拟,只要n在10到40之间,这是一个合理的近似值。
运行数据表附带的“ Profiler”脚本。这将启动Profiler和Simulator。经济条件不确定,因此我无法准确预测n和Classs。相反,我可以模拟n和Classes的各种组合。因此,我使泊松变量均值为35。如前所述,正态是正态(0,1)分布。但是类呢?我想我每月可以教1到2堂课,相当于每年最少12堂,最多24堂。但是,我该如何模拟呢?我使用的是Expression功能,该功能本质上是JSL代码。我使用的表达式会创建12个随机变量(每个随机变量均为1或2),然后将这12个变量求和以得出年份中模拟的班级数量。
将规格下限添加为0,然后运行模拟器以得到类似于以下内容的结果:

结合n和Classes中的不确定性,到年底,我平均将获得393美元,低于$ 0的机会为3.7%。我应该玩那个游戏吗?
如果我忽略n和Class中的不确定性,会发生什么?将变量更改为固定并设置n = 35和Classes = 18。

小于$ 0的机会下降至0.03%。但是忽略不确定性并不是好的风险管理政策,因此我坚持第一个结果。
这个例子并不像我想要的那样完整。如前所述,该方法不会为每个类选择新的类大小。每年为每个班级分配相同的班级规模。为了更接近现实,我需要使用JSL。数据表包含一个名为“生日脚本”的附加脚本。在运行脚本之前,将脚本内容复制到脚本窗口并关闭数据表。该脚本为每个班级选择一个随机的班级大小,并允许每年更改班级数量。您要做的只是提供您想要的n和班级的平均值。结果是模拟年度金额的直方图。
在另一个不同但又相似的音符上,我最近了解到,我在这里工作的另外两个人与我生日相同。我的地板上有37个人。您可能会想,“哇,这令人惊讶!这不会经常发生。”您可能会问:“在37个人中,至少有3个人有相同的生日的概率是多少?”我之前给的公式是至少2个人有相同的生日,所以它不起作用。我搜索了Internet,但找不到至少3个人的任何公式。但是,不用担心,我使用JSL模拟了它。对于一组37个人,至少三个人有相同的生日的概率约为0.053。我的公司有大约11,200名员工,大约302个小组,共37个。因此,使用p = 0.053和n = 302的二项分布,我预测302个组中的9-23个中至少有三个人的生日相同。我用来估计概率的JSL代码附在数据表上,称为“至少3”。
毕竟,发生在我地板上的事情可能并不那么令人惊讶。