本节摘要:漂变是抽样噪声成为进化力量的过程:任何世代更替本质上都是从亲代基因库抽样,群体越小噪声越大。本节给出漂变的两个定量结果——固定概率等于当前频率、特征时间与群体规模成正比;再讲基因流如何用迁移率换算成"每代几个移民"并对抗群体分化;最后用岛屿模型模拟三者博弈。
北美洲由少数个体建群的现象(founder effect,奠基者效应)提供了大量案例:一个罕见等位恰好坐在开船的十几个人里,几代后整座岛上都是它。这里没有任何适合度差异,纯粹是抽样把运气固化成了基因构成。漂变的数学骨架只有一句话:子代基因库 = 从亲代库中有放回抽 2N 个球。
"有效群体规模 N_e"还要再打折:性比失衡、世代重叠、历史上的瓶颈,都会让 N_e 远小于普查数。人类的全球 N_e 估计常在万级,而非八十亿——因为大家长期生活在地方分化的小群体里。
import random def drift_variance(N=50, p0=0.5, reps=200, gens=100, seed=0): """重复模拟同一初始条件,看终点频率的散布""" rng = random.Random(seed) endpoints = [] for _ in range(reps): p = p0 for _ in range(gens): p = sum(rng.random() < p for _ in range(2 * N)) / (2 * N) endpoints.append(p) var = sum((e - p0) ** 2 for e in endpoints) / reps fixed = sum(e in (0.0, 1.0) for e in endpoints) / reps return var, fixed for N in (10, 50, 250): var, fx = drift_variance(N) print(f"N={N:>3}: 终点频率方差 {var:.3f}, 100代内固定+丢失比例 {fx:.0%}")
N = 10 时绝大多数重复已在 100 代内走向 0 或 1;N = 250 则仍聚在 0.5 附近。方差近似随 1/N 增长——小群体不是"稍微多漂一点",而是数量级地快。
迁移的直接标度是每代移民数 Nm:Nm 远大于 1 时,两群体被拉向同质化;Nm 小于约 1 时,分化可以积累。注意决定性的是移民的绝对数目而非比例——两个各 10 万的群体间每年交换 50 个个体,Nm = 50,足以抹平中等强度的分化。
import random def island_model(n_pops=6, N=60, m=0.02, p0s=None, gens=80, seed=1): """岛屿模型:各岛频率独立漂变,同时接受比例 m 的移民""" rng = random.Random(seed) p0s = p0s or [rng.random() for _ in range(n_pops)] p = list(p0s) for _ in range(gens): new = [] for i in range(n_pops): # 本岛抽样 + 全体库按 m 换血(泛基因流简化) migrant_pool = rng.random() < m draw_p = sum(p) / n_pops if migrant_pool else p[i] new.append(sum(rng.random() < draw_p for _ in range(2 * N)) / (2 * N)) p = new spread = max(p) - min(p) return p, spread for m in (0.0, 0.02, 0.1): p, spread = island_model(m=m, seed=1) print(f"m={m}: 各岛频率 {[round(x,2) for x in p]} 极差 {spread:.2f}")
m = 0 时各岛在漂变下各自分化(极差大);m = 0.02(Nm = 1.2)分化被明显压制;m = 0.1 时六岛几乎同质。对照真实数据时,研究者正是用群体间的 F_ST(分化指数)反推历史上的 Nm——狼群隔离保护、渔场种群管理,用的都是这套换算。
⚠️ 常见坑:把"基因流维持多样性"误解为必然好事。对本地适应而言,基因流是"基因污染":从温和气候源源涌入的等位会冲淡寒冷地区群体刚积累的抗寒变异,这是保护生物学划定迁移走廊时必须权衡的双刃剑。

变式一:在漂变模拟中给 A 一个微弱优势 s=0.02,N 分别取 20 与 2000,比较"选择能否兑现"的差别。小群体里 s=0.02 的信号几乎被噪声淹没,有利等位多数照样丢失;大群体里它稳步走向固定。判据是乘积 4Ns:远大于 1 时选择有效,远小于 1 时漂变主导——这是种群遗传学最重要的单一经验法则,值得用手感而非记忆持有。
变式二:把岛屿模型改成"阶梯迁移"(每岛只与相邻岛交换),分化不再全局均匀而是随地理距离递增——隔离距离模型(isolation by distance),陆地物种的基因流大多长这样。用模拟输出的各岛频率算两两 F_ST 与距离的相关性,就复现了景观遗传学的标准分析。
变式三:瓶颈实验——让 N 从 1000 骤降到 10 维持 5 代再恢复,观察杂合度与等位数的不同命运:杂合度下降约与 1/2N 每代成比例地缓慢损失,而稀有等位在瓶颈中成批直接消失。多样性这两个测度对瓶颈的敏感度不同,这正是评估物种历史瓶颈时要用多指标的原因。