上一章把概率的基本规则写清楚了:事件可以取并集、交集和补集,互斥事件的概率能够相加。不过,规则本身并不会告诉我们,一组人恰好有两人同生日的概率是多少,或者抽查一批产品时为什么有时用排列、有时用组合。我们还需要把这些问题翻译成一个能够计算的样本空间。
你可能已经很熟悉“有利情况数除以全部情况数”这句话。这一章要追问的是:这里的一种“情况”,到底是什么?为什么每一种情况可以占一样大的分量? 很多计数题算到最后才发现分母不对,问题其实早在第一行就发生了:把顺序不同的结果合在了一起,却忘了合并之后的结果可能不再等可能。
我们会从这个最容易忽略的地方出发,再逐步得到排列、组合、不放回抽样和生日问题。这样做以后,公式就有了来处:分母是在数哪些结果,分子是在挑哪些结果,为什么要乘,为什么能除,每一步都能说清楚。
先把熟悉的公式从公理推出来。假设有限样本空间 一共有 个样本点,而且每个点的概率都是同一个数 。全部样本点互不重叠,合起来正是 ,所以有限可加性给出
于是 。如果事件 包含 个样本点,它的概率就是 个 相加:
这不是一条适用于所有概率问题的定义,而是有限样本空间里,每个样本点等可能时,由概率公理推出的计算公式。如果有的点概率大、有的点概率小,数点就不能代替加概率。
把两枚骰子分别叫作甲骰和乙骰,记录有序对 。在两枚骰子公平、投掷结果独立的模型里, 个有序点数对各占 。这里“独立”暂时理解为知道甲骰的结果不改变乙骰的各点数概率;后面会给出正式定义。
现在求点数和为 的概率。符合要求的完整记录是
一共五个,所以概率为 。如果我们只写下“点数和是 ”,虽然同样能描述所关心的结果,却不能把这十一个数按 平分。和为 只接收了 这一个原始结果;和为 接收了六个,得到的概率自然不同。
这件事也解释了一个看似矛盾的问题:样本空间是不是必须记录所有细节?不必。只记录点数和也完全可以建立概率模型,但必须给各个和分配正确的概率。把结果记录得更粗,不会自动把概率变得更均匀。 后面研究随机变量时,我们还会反复遇到这种“把很多原始结果归到同一个数”的操作。
有两枚公平硬币,是否一定能把“正正、正反、反正、反反”各赋予 ?还不能。设第二枚硬币总是跟第一枚同面,那么单看每枚,正反仍然各占一半,但实际只会出现正正和反反,各占 。
因此,计算多次试验的等可能序列时,通常需要“每次均匀,并且各次独立”这样的机制说明。题目中一个含糊的“随机”,也不等于“在我们刚选定的样本空间上均匀”。概率模型的假设要落到具体操作上,例如“每次都从剩下的球中等概率选一个”。
计数只能告诉我们结果有多少种,不能替我们决定每种结果有多大概率。先说明随机选择的机制,再检查正在计数的对象是否等可能;这一步省掉了,后面的阶乘即使全部算对,也可能得到错误的概率。
现在暂时不谈概率,只解决“有多少种结果”。一个四位验证码允许用 到 ,可以以 开头,也可以重复。第一个位置十种,第二个位置仍然十种,接下来一样,因此共有 个验证码。
为什么能够相乘?你可以把前两位画成一棵树:第一层十条分支,每条分支下面又长出十条,共有一百条走到第二层末端的路径。再增加一个位置,每条已有路径又各接十种可能。乘法原理数的是这种完整路径:如果第一步有 种选择,而且无论之前怎么选,第 步都恰有 种选择,那么总数为
这里不要求“后一步可选的是同一批对象”,只要求同一阶段的可选数量一致。若验证码要求数字互不相同,选完 后和选完 后,剩下的数字集合不一样,但都剩九个,所以仍然可以得到
再加一条“首位不能是零”,第一位就只剩九种。第二位还是九种,因为零虽然不能出现在第一位,却能出现在第二位。答案因此是
如果写成 ,就把零从所有位置里都删掉了。这种错误很常见:把只属于某个位置的限制,误用到所有位置。
从数字 中组成一个两位整数,要求没有重复且能被 整除。个位只能是 ,十位可选 ,所以是三种。这个例子很简单,但它提醒我们:先安排限制最强的位置,通常比从左到右硬套公式更省事。
再看一个真正需要分支的例子:用 组成没有重复数字的两位偶数。若个位为 ,十位有三种;若个位为 ,十位不能是 或 ,只有两种。两类不会重叠,全部答案为 ,即 。
加法原理的条件就在这里:分类必须互斥,并且没有漏掉结果。对互斥的有限集合 ,
如果分类重叠,就要减掉重复计数的部分。例如两类结果满足
这正是上一章事件加法公式在“数点”上的对应版本。
乘法原理也不要求各阶段的随机选择独立。它首先是一条关于数量的结论。比如不放回抽球,各次结果之间有关联,但完整序列仍然可以用“第一次数量乘以第二次数量”来数。把计数乘法和独立事件的概率乘法分清楚,后面学习条件概率会轻松许多。
假设有八名同学,要选出组长、记录员和汇报人,每人最多担任一个职位。选组长有八种,选定组长以后记录员有七种,再选汇报人有六种,因此共有 种安排。
这类结果是一串有角色、有位置的记录。从 个不同对象中选 个,不重复且保留顺序,排列数记为 :
当 时,这就是把所有对象排一遍,得到 。我们约定 ,也约定空乘积等于 :什么都不选,仍然有且只有一种空记录。于是 ,边界情形不用额外改公式。
如果题目改成“只选三名同学组成小组,不分角色”,甲乙丙、甲丙乙、乙甲丙等六种记录实际上指向同一小组。对任意一个三人小组,内部都恰好有 种排列,所以把 除以 ,得到 个小组。
一般地,把每个有序的 人记录变成无序集合,每一个集合都恰好对应 个有序记录。因此组合数为
读作“从 个中选 个”。这里的除法依赖于一个很具体的事实:每一类的重复次数相同。它不是“题目不看顺序,所以随手除一个阶乘”。

用字母 A、A、B 组成长度为三的字符串,一共有 AAB、ABA、BAA 三种。若先把两张 A 临时标成 ,三个不同标签有 种排列;但交换两个 A 的标签并不会改变最终字符串,所以每个字符串被算了 次。结果为 。
更一般地,总长度为 ,其中第 类对象出现 次,且 ,不同字符串数是
这个公式以后还会用于计算“某类结果出现几次”的概率。眼下先记住它的理由:同类对象互换不产生新记录,不同类对象互换通常会。
从 人中选 人,等价于决定哪 人不入选,因此
再固定一个人,叫作小林。所有 人小组可分成“不含小林”和“含小林”两类。前者从其他 人中选 人,后者只需再选 人,所以
这就是组合数相邻两项相加得到下一行对应项的原因。你当然可以用阶乘通分验证,但分类计数直接解释了等号为什么成立。我们通常还约定:整数 或 时,,因为这种选法根本不存在;而 。
排列和组合的差别来自“是否记录顺序”;另一个独立的问题是“能否重复选到同一个对象”。把这两个问题合在一起,就得到下面四种计数。
这里 、 均为整数;不允许重复时还需要 ,否则方案数为零。表里说的是结果数量。它没有保证四行里的结果,在某个具体随机机制下都等可能。
从三种水果中买五个,只关心苹果、梨、桃分别买多少。设数量为 ,则
把五个名额写成五颗星,再用两根隔板切成三段。比如“星星、隔板、隔板、星星星”表示 ;两根隔板相邻,表示中间一种水果买了零个。隔板出现在开头或结尾,也分别对应第一种或最后一种数量为零。
任何一个数量向量都恰好对应这样一串星与隔板;反过来,每串记录也能唯一读出三个数量。这种一一对应保证既不漏数也不重数。总共七个位置,只需选择哪两个放隔板,所以有 种买法。
一般地, 颗星加上 根隔板,总位置数为 ,因此非负整数解的个数为
如果要求每种至少买一个,就先给每种留出一个,令 。剩下的数量满足 ,所以当 时有
种方案;当 时则没有方案。若某种水果还有“最多两个”的限制,普通隔板公式就不再直接适用,需要扣掉违反上限的解,或者按该种数量分类。
盒中只有标着 A、B 的两张卡。独立抽两次,每次等概率抽一张并放回。完整序列有 AA、AB、BA、BB 四种,各占 。
忽略顺序后只剩三种数量结果:两个 A、一 A 一 B、两个 B。三种结果的概率依次为 ,不是各占 。中间那类接收了 AB、BA 两个序列,两端各只接收一个。
这也直接解释了为什么“有序有放回的 除以 ”通常不是无序有放回的数量:AA 的排列只有一个,AB 的排列有两个,各类被重复的次数不一样,不能统一除重。
若每次独立、均匀地从 种对象中抽取一个,一共抽 次,那么给定数量向量 的概率实际为
分母 是所有等可能序列数,分子是该数量向量对应的序列数。不同向量的分子不同,所以概率也不同。如果另外设计一个机制,在所有数量向量中均匀选一个,那么它们才各占 ;这是另一种随机机制。
“无序、有放回”的组合公式能回答有多少种多重集合,不能直接回答连续均匀抽取时每个多重集合有多大概率。记录方式相同,不代表产生记录的机制相同。
计数器适合用小参数核对四个公式。先取 :四种计数应分别是 。然后回到三个对象独立抽两次的过程,想一想为什么六个无序可重复结果没有相同概率。能解释清楚这个区别,比只记住四个答案更有用。
再用两个字母把这个陷阱看清楚:每次独立、等概率地抽到 A 或 B,抽完放回,共抽两次。若最后只记录 A 出现几次,四条等可能的有序记录就被合并成三类,中间那一类会接住两条记录。

刚才忽略顺序导致了不等可能,那么扑克牌为什么又能按无序手牌来数?区别就在于每个粗记录对应的细记录数量是否一样。
设总体中有 个可区分对象,每次从剩下的对象中等概率取一个,共取 个,不放回。一个指定有序序列的概率为
每个大小为 的子集都恰好有 个抽取顺序,因此这个子集的概率为
所以无序子集确实等可能。不放回使每个样本都由 个不同对象构成,所有样本内部的顺序数都一样。 这正是无序计数在这里合法、在前面的有放回反例里不合法的原因。
“球可区分”也需要稍作解释。八个红球和十二个白球即使外观相同,仍是二十个物理对象,可以在脑中给它们编号。均匀抽球先作用在这二十个对象上,然后我们只读取颜色。不能因为只关心颜色,就把“零个红球、一个红球、两个红球……”当成等可能结果。
从十人中等概率选三人,求指定的小林入选的概率。用无序小组计数,小林已经占一个名额,另外两人从其余九人中选:
用有序的三人记录也可以。小林可在三个位置中的任意一个,其余两个位置从剩余九人中依次选,所以
两种方法都对,因为各自的分子分母保持了一致。若分子写 ,分母却写 ,就把一个按无序计数的事件除以一个按有序计数的总体,少算了每组对应的六个顺序。
设一副标准扑克牌有 张,其中 张是 A。充分随机洗牌后抽五张,所有五张手牌等可能。若问“恰好两张 A”,必须同时满足两件事:四张 A 中选两张,另外三张全部来自 张非 A。于是
这里分子不能写成 。因为选出的两张 A 之外还剩两张 A,若允许其余三张从剩余五十张随便选,就可能抽到第三张、第四张 A,违背“恰好”。而且含三张或四张 A 的手牌会随着“先指定哪两张 A”被重复数入。
如果改问“至少一张 A”,正面当然可以分成恰好一张、两张、三张、四张。四类互斥,概率可以相加:
但补集只有一种描述:“五张全不是 A”。所以更短的写法是
补集不是另一个神秘技巧,它只是利用上一章已经证明的 ,把不好数的集合换成好数的集合。
从十人中等概率选五人,其中包括甲和乙。求至少选中甲乙之一的概率。“选中甲”和“选中乙”会在“两人都选中”时重叠,所以直接算 会多算。
用容斥,符合条件的小组数为
用补集,则是全部小组减去“甲乙都没入选”的小组数:
两者都是 ,除以总数 得到 。把同一题用两种方法算通,是检查计数是否重叠的一个好办法。
前面的扑克牌例子可以换成质检、问卷抽样或班级组队。它们的结构相同:有限总体分成两类,均匀不放回抽取固定数量,关心其中一类抽到了几个。
设总体有 个对象,其中 个带有我们关心的特征,另有 个没有。均匀选出大小为 的子集。用 表示样本中带特征的对象数。我们以后会正式定义“随机变量”;现在可以先把 看作一个记录规则:输入一个抽样结果,输出其中的特征数量。
通常把带特征的一类叫作“成功”,但这个词只是分类名称。质检时把次品叫成功,并不是说次品是一件好事。
总共有 个等可能样本。要让 ,先从 个成功对象里选 个,再从 个其他对象里选 个。这两组选法合起来唯一确定一个样本,因此
这就是超几何概率公式。参数 均为整数,满足 、。 的范围要由实际能抽出的数量决定:成功对象不能多于 ,不能多于样本量 ;非成功对象只有 个,因此至少有 个名额必须由成功对象补足。综合得到
比如总体十个,其中八个属于目标类,抽五个。最多只有两个非目标对象,所以至少抽到三个目标对象。此时 只可能是 ,绝不是从 到 都可能。支持范围也是公式的一部分,不能等计算完才补一句。
设十二个零件中有三个次品,均匀不放回抽取四个。抽到的次品数 可以是 。总样本数为 ,逐项计数得到:
四行样本数之和是 ,因此概率总和为 。至少查出一个次品的概率为 ,约为 。这里的“至少”可以直接把后三行加起来,也可以用补集,结果一致。
这还给了我们一个组合恒等式。所有大小为 的样本,按成功对象数 分成互斥且完整的各类,因此
求和只遍历可能的整数 ,或者用超范围组合数为零的约定。超几何公式的各项相加为一,并非巧合;它来自对同一个样本空间的完整分类。
探索器里的彩色小球用于表示总体比例,显示数量可能经过缩放,不必逐个数小球;精确数量以 和 为准。把参数设为 ,核对上表四个概率。再把 增加到 :既然已经把总体全部抽出来,目标数量只能等于 ,图中就应只剩 这一处有概率。这是检查模型边界最直接的方法。
同样从十二个零件中抽四次,如果每次检查后放回并重新均匀抽取,各次是否抽到次品独立,每次成功概率都是 。一个指定的“次品、合格品、合格品、合格品”序列概率为 ;唯一的次品可以出现在四个位置,因此恰好一次成功的概率是 。
推广到 次独立试验,每次成功概率同为 ,恰好 次成功就有
组合数选择成功出现的位置,后面的幂给出其中每个指定序列的概率。这就是以后要系统讨论的二项模型。这里先做比较:不放回抽样时,若第一次已拿走一个次品,剩余次品比例会变成 ;若第一次拿走合格品,剩余比例则是 。后续概率会随已知结果改变,不能继续按独立的 连乘。
每个抽取位置单独看,抽到次品的概率仍然可以相同;问题在于各位置并不独立。因此,“每次成功概率相同”本身不足以得到二项公式。
当样本量 固定,而总体越来越大,成功比例 趋近某个 ,取走少量对象对总体比例的影响越来越小,超几何概率会趋近相应二项概率。有限总体下它们通常仍不相等;尤其抽走总体的一大部分时,不能只因为“总体看起来很大”就忽略不放回的影响。
现在回到一个常常让直觉吃惊的问题:一屋子人中,至少有两个人生日相同的概率多大?为了把结构讲清楚,先明确简化模型:一年按 天计算,忽略闰日;每个人生日在这 天上均匀分布,而且人与人之间独立。
把屋里 个人编号,一个样本点就是按编号写出的 个生日组成的序列。完整样本空间有 个等可能点。这里顺序是“这个生日属于哪一个人”,即使不在意进屋顺序,仍不能把不同人的生日分配混为一谈。
“至少两人同生日”可以是只有一对,可以是两对,还可以是三人一起同生日。如果对每一对同生日分别计数后直接相加,某些样本会被算很多次。
补集“所有人的生日都不同”更容易。第一人任意,第二人要避开一天,第三人要避开已占的两天。只要前面生日都不同,第 人就还有 天可选。因此当 时,
于是
时用空乘积等于 的约定,碰撞概率为零; 时同样为零。当 时,由于人数超过可用日期数,至少有两人同生日,概率直接是 。不能继续把乘积硬写到负因子。
代入 ,至少两人同生日的概率约为 ;代入 ,约为 。跨过一半的门槛,只需要二十三人。这个结论完全来自我们刚才写出的模型和有限计数,不需要用大量实验才能成立。
在二十三人中,任意两人都可以碰上,共有 对。而如果指定其中的你,问“其余二十二人有没有人与你同生日”,只有二十二个人可以与你匹配,其概率是
这两个概率差很多,因为前一个事件也包括与你无关的其他人彼此同生日。我们常把“至少某一对”误听成“至少有一个人和我匹配”,直觉于是低估了重复的机会。
不过, 对也不能理解成 次相互独立的比较。若甲乙同生日、乙丙同生日,那么甲丙必然同生日。把每一对的碰撞概率 直接加起来,会重复计算具有多次碰撞的结果。 可以给出并事件的上界,但通常不是精确概率。
把一年天数推广为 个等可能位置。无碰撞概率仍然是 。当每个 都较小时,利用 在 附近约等于 ,可得到
指数变换后,
若让近似概率等于一半,就得到 。这说明门槛大致在 的量级,而不是 的量级。这个近似来自对数展开,累计遗漏项的量级约为 ;当这个量不小时,就应回到精确乘积,不能只看某一个因子似乎接近一。
模拟器左上角的日期格是示意装饰,不是某一组人实际抽取的生日记录;模拟结果应读取“模拟估计”和命中组数。先把人数设在二十二和二十三附近,比较理论概率与模拟频率。一次模拟里有没有同生日只会给出“有”或“没有”;重复很多组人以后,发生碰撞的组数占比才是频率。有限次频率可能高于或低于理论值,增加模拟次数也不会让误差每一步都下降。后面的大数定律会解释这种频率为什么具有长期稳定性。
现实生日可能不均匀,家庭成员等人群也可能存在相关性。我们得到的数值对应的是明确的独立均匀模型。随机编号和散列碰撞可以使用相同的数学结构,但同样要先检查“均匀”和“独立”是否适用。
现在做一个稍微综合的题:某班十二人,其中五人会使用统计软件。在所有四人小组中均匀选一个,求组内至少一人会使用软件的概率。
先别急着搜索哪个公式带着 。一次结果是一个四人集合,学生可区分,不重复选人,不记录角色。题目还明确了所有四人小组等可能,因此分母是 ,数量比可以使用。
目标事件是“至少一人会使用”。它的补集是“四人都不会使用”;不会使用的人有七个,所以补集有 个。于是
这个结果较大也有直觉依据:会使用软件的人接近全班一半,而我们要选四个人,“全部避开这五人”才是较苛刻的情况。若算出了大于一或负数,模型或计算必然有问题;即使结果在零和一之间,也仍然需要核对分子分母是否数同一类对象。
如果题目改成“先随机选一个宿舍,再从该宿舍随机选四人”,那么全班所有四人小组就不再等可能,甚至有些小组根本不会出现。表面上仍然是“随机选四人”,分母却不能照旧写 。决定概率的是具体的随机过程,不是句子里有没有“随机”两个字。
用 到 组成四位验证码,允许以零开头。求全部验证码数,以及四位互不相同的验证码数。若改成四位正整数且四位互不相同,数量又是多少?
从十本不同的书中选四本带走,必须包含指定的一本。共有多少种选法?如果还要给选出的四本书排一个阅读顺序,共有多少种安排?
从 A、B、C 三张卡中独立、有放回地等概率抽三次。若只记录每张卡出现的次数,有多少种数量向量?“每张恰好出现一次”和“三次都是 A”的概率分别是多少?
盒中有八个红球、十二个白球,每次均匀抽一个,不放回,直到抽出五个。恰有两个红球的概率怎样写?如果改为抽出十八个,红球数的可能范围是什么?
从十二名学生中均匀选四人,其中五人会使用统计软件。求恰好两人会使用软件和至少一人会使用软件的概率,并说明为什么“至少一人”的计数不能写成 。
十个人的生日独立且均匀分布在三百六十五天。写出至少两人同生日的概率,再写出“至少有一人的生日与指定的第一个人相同”的概率。
独立投掷两枚公平骰子,求点数和至少为十的概率。
从六种口味中买四个冰淇淋球,只关心每种口味买了几个,允许重复。共有多少种买法?如果要求每种口味至少一个,是否还能沿用同一个公式?
做完这些题,计数公式应该已经能连成一个过程:先确定完整结果怎样产生,再决定保留什么记录;检查这些记录是否等可能,然后把事件拆成互斥的类,或者转去数补集。
但还有一种变化,我们这章一直没有正式处理:结果产生的规则没有变,只是你提前知道了一部分信息。 例如已知抽到的四人中至少一人会使用软件,再问恰好两人会使用的概率;或者已知两枚骰子的点数和至少为十,再问有没有一枚掷出了六。原来的计数仍然有用,但我们比较的范围变了。下一章的条件概率,就是把这种“知道以后,应该在哪一批结果里重新算比例”写成严格的规则。
| 无序 | 允许 | 各种对象分别出现几次 |
这里首先是计数题。如果再假设从全部四位验证码中均匀抽一个,四位不同的概率才是 ;若随机机制改为均匀选四位正整数,就应换用相应分母 。
每张恰好一次对应 个顺序,所以概率是 。三次都是 A 只对应 AAA,概率是 。这两个数量向量概率不同,因此不能用十个数量向量作为等可能样本点。
抽十八个时,白球最多十二个,因此红球至少六个;红球总数八个,因此最多八个。支持范围是 ,且取整数。把公式中的 从零机械列到十八,会给出许多根本不可能的情况。
至少一人的概率用补集得到
表达式 先指定一名会使用软件的人,再任取三人。若最终小组含两名会使用者,同一组会因先指定的人不同被数两次;含三名时被数三次。重复次数不固定,因此也不能统一除以某个整数补救。
第二个事件包含在第一个事件里,但第一个事件还允许其余九人彼此相同而都不同于第一个人,因此两个概率不相等。
不能因为和共有十一种、其中三种满足条件,就写成 。压缩后的点数和不等可能,仍要按它们接收的原始点数对计算概率。