两个村子
寓言
老林深处有两个村子,隔一道浅溪,相互照面。
西岸的叫蘑菇村。村人少,靠山吃山,靠雨吃雨,只要天气不闹脾气,蘑菇会自己冒出来。家家户户把木箱子往山阴里一摆,几个月便满了筐。这一族人丁兴旺得快,若无人管束,怕是要把整片山都占满。
东岸的叫狐狸村。村人瘦小,靠山吃不到东西,只好吃蘑菇。村子历史短,据说第一只母狐是某年饥荒时从更远的北岭迁来的。狐狸并非生来就会捕猎——它们的小崽要在三年里跟着母辈学:哪里是蘑菇的成熟区,哪里要蹲守。蘑菇多时,狐狸吃得滚圆,繁衍也快;蘑菇少时,它们三三两两饿死,窝里空了一半。
两村之间有条不成文的规矩:没人越界管对方。可谁都明白,狐狸村的存在,就是蘑菇村的一种节拍器——若没有它们,蘑菇村就要把整片山吞掉。
春天。
这一年的春天来得湿。山阴的木头箱子里冒出一片一片灰白色的菌伞,到了三月,蘑菇村的粮仓快溢出来。家家户户把吃不完的蘑菇翻晒成干,等着冬天。村口的小广场上,常能听见笑声。
东岸看得见那景象。老猎手们绕着溪转了一圈,点点头:今年是好年。
到了夏初,狐狸们开始越溪过来。原本只是散兵游勇,三五成群;短短两个月,队伍就拉成一条线。
夏天走完时,蘑菇村的粮仓瘦了一圈。原本推车晒干的小伙子,现在得跑更远的山阴去找新的菌窝。村里的老人围坐一起,摇头说:今年的秋粮,要少两成。
秋天。
狐狸村家家吃不完,连母崽都能分到整朵蘑菇。这一族人丁暴涨,新挖的窝把溪边的土坡都钻成了蜂窝。
到了秋末,山阴里已一片萧条。蘑菇村派人去翻箱子,箱底是空的。
冬天。
大雪落下来。
狐狸村突然发现,原本堆在院子里的蘑菇垛飞速见底。母崽先被饿死一批;接着是年老的猎手——它们追不上活物,自己也变不成食物。一个月里,村口的广场上呜呜的哭声没停过。
到了腊月,溪东只剩往日三分之一的人丁。
又过了一季。
山阴里,木头箱子没人翻,无人看管的菌种反而有了喘息。开春的第一场雨后,蘑菇悄悄从箱角冒出来,一朵,两朵,十朵。春天还没过半,蘑菇村又开始满山翠白。
东岸的狐狸村,靠雪地里的松子和去年埋下的干蘑菇撑过了最难的日子。开春之后,它们又看见对岸的粮仓开始涨。老猎手披上破皮袄,跨过浅溪……
林外有个老猎人,常年在山顶搭棚子过夜。他看着这一切,看了二十年。
他一开始以为是两村的族长在管。他去过蘑菇村,劝他们少生;去过狐狸村,劝它们捕得慢一些。两边都笑着点头,等他走后又照旧。
第二十年,老猎人终于看懂——他看不懂的,从来不是哪个村,而是两村之间那条看不见的丝线。蘑菇多时,狐狸必多;狐狸多时,蘑菇必少;蘑菇少时,狐狸必少;狐狸少时,蘑菇再多。
两村都没有过错。它们各自走自己的路,可脚下的地是同一块。
老猎人在棚子里翻了个身,对徒弟说:
"凡看见两个东西彼此起伏、彼此消长的,别去查谁对谁错,先去看那条把它们系在一起的线。"
概念解释
洛特卡-沃尔泰拉方程(Lotka-Volterra equations)是一对耦合的一阶非线性常微分方程,由 Alfred J. Lotka(1925)和 Vito Volterra(1926)独立提出,描述捕食者与猎物种群数量随时间的周期性振荡。它是生态学中最早的数学种群动力学模型之一,也是 Kolmogorov 种群模型框架下的最简情形。
- 猎物在没有捕食者时按指数增长;捕食者没有猎物时按指数衰减
- 两族耦合后形成稳定的封闭轨道(极限环),周期与振幅由初始条件决定
- 经典实证案例:加拿大猞猁与雪兔毛皮数据、亚得里亚海鲨鱼与食用鱼渔获数据
寓言 ↔ 概念对照表
| 寓言元素 | 对应概念 |
|---|---|
| 蘑菇村 | 猎物种群 x |
| 狐狸村 | 捕食者种群 y |
| 山阴木箱里雨水一浇就冒出来的菌伞 | 猎物自然增长率 αx |
| 蘑菇被吃的速度与两岸人数同时相关 | 捕食项 βxy(相遇率驱动) |
| 狐狸吃得滚圆、人丁暴涨 | 捕食者增长项 δxy |
| 冬天狐狸母崽先饿死、老猎手跟不上 | 捕食者自然死亡率 γy |
| 蘑菇先涨、狐狸后涨,蘑菇先跌、狐狸后跌 | 1/4 周期的相位滞后 |
| 山顶棚子里看了二十年的老猎人 | 对耦合系统的外部观察者 |
核心公式
$$ \frac{dx}{dt} = \alpha x - \beta x y $$
$$ \frac{dy}{dt} = \delta x y - \gamma y $$
其中 x 为猎物数量,y 为捕食者数量,α、β、γ、δ 均为正常数。该系统存在非平凡平衡点 $(x^*, y^*) = (\gamma / \delta, \alpha / \beta)$,在该点附近的线性化给出周期 $T \approx 2\pi / \sqrt{\alpha\gamma}$。
关键要点
- Lotka 与 Volterra 独立提出:Lotka 1925 年从化学自催化反应出发得到同一方程;Volterra 1926 年为回应亚得里亚海渔获数据中鲨鱼-食用鱼的反相振荡而构建同一模型
- 相空间中的闭合轨道:与可线性化的简谐振动不同,洛特卡-沃尔泰拉系统的周期解无法用初等三角函数精确表达,必须数值积分
- 捕食者相位滞后 1/4 周期:当猎物达到极大值时,捕食者增速最快;当捕食者达到极大值时,猎物衰减最快
- 原点是不稳定鞍点:零平衡点处雅可比矩阵的特征值异号,微小扰动即可把系统推出灭绝状态
- 生态学实证对应:Hudson's Bay Company 1847-1935 年的猞猁-雪兔毛皮记录呈现约 9-10 年的周期性,与模型预测定性吻合
- 模型局限:忽略了密度依赖、空间结构、时滞与年龄结构;后续 Rosenzweig-MacArthur 模型引入 logistic 饱和修正
参考文献
- Lotka, A. J. (1925). Elements of Physical Biology. Williams & Wilkins.
- Volterra, V. (1926). Variazioni e fluttuazioni del numero d'individui in specie animali conviventi. Mem. R. Accad. Naz. dei Lincei, 2, 31-113.
- 维基百科. Lotka–Volterra equations. https://en.wikipedia.org/wiki/Lotka%E2%80%93Volterra_equations
- 百度百科. 洛特卡-沃尔泰拉方程. https://baike.baidu.com/item/%E6%B4%9B%E7%89%B9%E5%8D%A1-%E6%B2%83%E5%B0%94%E6%B3%B0%E6%8B%89%E6%96%B9%E7%A8%8B/9822007
- 集智百科. Lotka–Volterra 方程式. https://wiki.swarma.org/index.php/Lotka%E2%80%93Volterra%E6%96%B9%E7%A8%8B%E5%BC%8F
- Mc-stan.org. Predator-Prey Population Dynamics: the Lotka-Volterra model in Stan. https://mc-stan.org/learn-stan/case-studies/lotka-volterra-predator-prey.html
- 维基百科. 洛特卡-沃爾泰拉方程式. https://zh.wikipedia.org/wiki/%E6%B4%9B%E7%89%B9%E5%8D%A1-%E6%B2%83%E7%88%BE%E6%B3%B0%E6%8B%89%E6%96%B9%E7%A8%8B