本节摘要:进化论在医院是管理手册,在农田是设计规范,在保护区是决策工具。本节把前八章的机制折成三个应用框架:病原体与肿瘤的"按进化管理"策略(剂量、联合、 Adaptive 策略),育种中的选择-多样性权衡,以及保护遗传学用 N_e、HWE 偏离诊断与遗传拯救干预小种群的作业流程。
一个肿瘤由数十亿细胞组成,携带各不相同的突变组合——它实质上是一个按第 3、4 章规律演化的克隆群体:变异供给(体细胞突变)、选择(治疗药物就是选择压力,与 6.1 的抗生素完全同构)、漂变(切除手术的瓶颈)。由此,肿瘤学的最大范式转变有了理论出处:最大耐受剂量消灭肿瘤,等于对耐药克隆做定向选择。相应的进化导向策略包括:适应性给药(adaptive therapy)——故意留一部分敏感细胞与耐药细胞竞争,让敏感者替你压制耐药者;以及按"进化根源"设计的联合方案。同样的算术也支持疫苗策略:覆盖价数足够高的疫苗才不给逃逸株留空档,而免疫抑制人群的长期感染是耐药/逃逸变异的孵化器。
import random def tumor_treat(strategy="MTD", days=180, N0=0.6, kill=0.5, cost_r=0.04, mu_r=1e-5, seed=0): """肿瘤负荷 0-1;耐药亚群频率 f;MTD=持续给药, ADAPT=负荷低于一半即停药""" rng = random.Random(seed) load, f = N0, 1e-4 traj = [] for d in range(days): on = True if strategy == "MTD" else load > 0.5 # 敏感细胞被药物压,耐药细胞付代价 if on: load *= (1 - kill * (1 - f)) load *= (1 + 0.25 * (1 - f) + 0.25 * (1 - cost_r) * f) # 耐药频率在给药时上升(选择),停药时回落(代价) s_sel = (kill if on else 0) - cost_r f = f + s_sel * f * (1 - f) + mu_r * (1 - f) f = min(max(f, 1e-9), 0.999) load = min(max(load + rng.gauss(0, 0.01), 0), 1.2) traj.append(load) return traj for st in ("MTD", "ADAPT"): t = tumor_treat(strategy=st) print(f"{st}: 180天后负荷 {t[-1]:.2f}, 期间峰值 {max(t):.2f}")
典型结果:MTD 曲线先大降后反弹(耐药克隆接管),ADAPT 曲线维持震荡不溃堤——控制而非歼灭,牺牲"治愈幻觉"换取"长期可控"。这与 6.1 的耐药代价管理是同一个数学骨架,只是把细菌换成了癌细胞。
人工选择是进化的加速档:现代玉米从大刍草般的祖先被改造成密集果穗,奶牛产奶量数十年翻倍。但选择方程的两面同样在账上:选择强度越大,遗传方差消耗越快,近交衰退风险越高(第 3 章的漂变公式在小有效群体里加倍凶猛)。现代育种的应对构成一门"管理遗传方差"的工程:轮回选择保留基础群体、分子标记辅助选择在幼苗期锁定目标等位(把选择从表型等待中解放)、基因组选择用全基因组效应估计缩短世代间隔;以及作物野生近缘种作为"预置变异库"(抗病基因的天然仓库)——这直接呼应第 7 章慈鲷的"杂交预置辐射原料":多样性是未来选择的燃料,不是库存成本。
小种群的三连击:近交抑郁(隐性有害等位纯合)、漂变洗掉多样性(4N 世代规则)、局部适应被基因流或固定漂变破坏。作业流程对应前几章的工具:
import random def genetic_rescue(N=40, inbred_fitness=0.55, rescue_g=20, intro_n=5, het_boost=0.25, gens=80, seed=0): """近交小种群在第20代引入外来个体后的适合度恢复""" rng = random.Random(seed) w = inbred_fitness; traj = [] for g in range(gens): if g == rescue_g: w += het_boost * intro_n / (N + intro_n) * 1.4 # 杂合度注入 # 适合度向均衡缓慢回复 + 噪声 w += (0.9 - w) * 0.03 w = min(max(w + rng.gauss(0, 0.01), 0.1), 1.0) traj.append(w) return traj t = genetic_rescue() print(f"引入前一年适合度 {t[18]:.2f} -> 引入十年后 {t[30]:.2f} -> 末段 {t[-1]:.2f}") print(f"种群平均适合度恢复幅度: {t[-1]-t[rescue_g if False else 19]:.2f}")
注入外来遗传变异后适合度爬升、再由选择清理有害等位——遗传救援本质上是把第 3 章基因流从"威胁"(第 3 章末尾的基因污染警告)切换成"资源":关键在于受体群体是"缺乏多样性"还是"已有本地适应"——前者该救,后者慎动。这也是保护决策里最常被简化掉的一个判断。
| 领域 | 问题 | 使用的原理 |
|---|---|---|
| 传染病 | 耐药管理 | 6.1 选择核算 + 耐药代价 |
| 肿瘤 | 治疗策略 | 竞争抑制 + 频率依赖 |
| 疫苗 | 逃逸管理 | 选择压覆盖 + 群体免疫 |
| 农业 | 育种与资源 | 选择响应 + 方差管理 |
| 保护 | 小种群抢救 | N_e、HWE、基因流 |
💡 关键直觉:所有进化应用的共同心法只有一句话——别问"怎么消灭变异",问"怎么管理变异的评分函数"。药物、猎枪、保护区边界都是评分函数的一部分;懂进化的人设计评分函数,不懂的人被评分函数设计。
全册到此收束。进化论给的最大遗产也许不是任何具体结论,而是一种提问方式:看到任何生物性状、疫情曲线、育种报表,先拆出变异、频率、选择与漂变四个变量——然后动手算。