座位问题
设想一个房间中有 10 把椅子, 现在有 6 个人准备随机地在房间中选择一把椅子落座。已知有 4 把椅子在前排, 求前排椅子被坐满的概率。
方法一:排列视角
一种思路是将这个问题看成是一个排列问题, 即考虑每个人落座的顺序。那么样本空间的大小(Total number of outcomes)为:
$$ {}_{10}P_{6} $$下面只要计算在所有这些情况中, 满足"前排 4 把椅子被坐满"这一条件的排列数即可。
可以认为有 3 个步骤:
- 从 6 个人中随机抽取 4 个人, 有 \(\binom{6}{4}\) 种可能。
- 将这 4 个人安排到前排的 4 把椅子上, 共有 \(4!\) 种排列。
- 待这 4 个人选定之后, 剩下的 2 个人从剩下的 6 把椅子中随机选择 2 个落座, 共有 \({}_{6}P_{2}\) 种排列。
根据乘法原理, 满足条件的排列总数为:
$$ \binom{6}{4}\times 4!\times {}_{6}P_{2} = {}_{6}P_{4}\times {}_{6}P_{2} $$概率为两者相除:
$$ \frac{{}_{6}P_{4}\times {}_{6}P_{2}}{{}_{10}P_{6}} = \frac{\frac{6!}{2!}\times\frac{6!}{4!}}{\frac{10!}{4!}} = \frac{6\times 5\times 4\times 3}{10\times 9\times 8\times 7} = \frac{1}{14} $$方法二:组合视角
从另一个视角来看, 还有更简单的办法。不管怎么选, 结果都是从 10 把椅子中选出 6 把被占据, 因此样本空间的大小为 \(\binom{10}{6}\)。
那么这其中有多少种情况包括了前排的 4 把椅子呢?既然前面的 4 把椅子必然被选出, 那么只需要从剩下的 6 把中再选出 2 把即可, 也就是 \(\binom{6}{2}\)。
概率为:
$$ \frac{\binom{6}{2}}{\binom{10}{6}} $$由于在计算样本空间时就没有考虑顺序问题, 因此在计算事件数时也无需考虑落座时的顺序。
使用 Python 验证两次计算是否一致:
Show/Hide the code
| |
方法一: 0.07142857142857142
方法二: 0.07142857142857142
分组问题
设想, 现在要将 4 个人平均地分为 {A, B} 两组。共有多少种分法?
有标签分组(分配问题)
由于是分组, 小组内部的顺序不重要。假如 4 个人是 a, b, c, d, 那么 {{a, b}, {c, d}} 和 {{b, a}, {d, c}} 是同一种分组。
但是, 这里小组之间的顺序是重要的(有标签), 因为我们明确区分了 A 组和 B 组。因此 A={a, b}, B={c, d} 和 A={c, d}, B={a, b} 是不同的分法。
从 4 个人中随机抽取 2 人分到 A 组, 那么剩下的人自然就组成了 B 组, 共有 \(\binom{4}{2}\) 种分法。
无标签分组(平均分组问题)
如果不区分小组标签呢?也就是说现在是"无标签"地分组, 那么 {{a, b}, {c, d}} 和 {{c, d}, {a, b}} 就是完全相同的分组方式。
此时分组数量显然会减少。由于 {A, B} 和 {B, A} 对应同一种分组, 导致了重复。当不考虑 \(k\) 个组的顺序时, 数量需要除以 \(k!\)。在本例中, 有 2 个大小相同的组, 因此最终结果为:
另一种思路是先计算所有人全排列有多少种可能, 再逐渐加入限制(消序)。
- 4 个人全排列:\(4!\)
- 消除第 1 组内部顺序:除以 \(2!\)
- 消除第 2 组内部顺序:除以 \(2!\)
- 消除组与组之间的顺序:除以 \(2!\)
最终结果为:
$$ \frac{4!}{2!\times 2!\times 2!} $$验证两种方法的结果:
Show/Hide the code
| |
方法一: 3.0
方法二: 3.0
混合分组(局部平均)
如果是人数不等的分组, 通常无需考虑小组之间的排序。但如果存在部分小组人数相同的情况, 则仍需去除这些相同大小小组之间的顺序。
例如, 将 5 个人无标签地分为 3 组, 人数为 {2, 2, 1}。
- 先从 5 人中选 1 人独立成组(大小为 1 的组只有 1 个, 无需消序):\(\binom{5}{1}\)。
- 再将剩下的 4 人平均分成两个 2 人组(大小为 2 的组有 2 个, 需要消序):\(\frac{\binom{4}{2}}{2!}\)。
最终将 2 个步骤相乘:
$$ \binom{5}{1} \times \frac{\binom{4}{2}}{2!} $$Show/Hide the code
| |
15.0