Series · ODE Foundations · Chapter 10

常微分方程(十):分岔理论

为什么湖泊会突然从清澈变浑浊?为什么股市会毫无预兆地崩盘?分岔理论是研究系统'质变'的数学工具——而所有质变其实只有几种标准形式。

湖泊清澈了几十年,却在一个夏天突然变浑。电网平稳运行,几秒之内级联崩溃。一根细长的钢柱在递增载荷下笔直挺立、笔直挺立、笔直挺立——然后突然弯折。

这些都不是预测的失败,而是动力系统在严格按照分岔理论的剧本演出:当某个参数缓慢穿越临界值时,相空间的拓扑结构突然重排,原本不可能的状态变得不可避免。本章的任务是把这些"重排"分类。结果出乎意料——它们只有可数的几种范式,看清之后你就会在世界各处都认出它们。

本章要点

  • 分岔的精确定义:为什么必须用拓扑而非数量来定义
  • 四种余维-1 范式:鞍-结点、跨临界、超临界叉型、亚临界叉型
  • Hopf 分岔:一对复特征值穿越虚轴时极限环的诞生
  • 为什么亚临界分岔是"灾难性的"(跳跃 + 滞后),而超临界分岔是温和的
  • 全局分岔初识:同宿轨、SNIC,以及它们如何打开通往混沌的大门
  • 余维普适性:为什么大自然反复使用同一套范式

前置知识:第 7-8 章的稳定性理论与相平面分析;第 9 章的混沌词汇。


1. 什么是分岔?

“Bifurcation”(拉丁文 furca = 叉子)一词由庞加莱在 1885 年前后提出。直觉是几何性的:把单参数系统$\dot{x}=f(x,\mu)$的长期行为想象成依赖于$\mu$的连续画面。对于大多数$\mu$值,小扰动只会让画面整体平移而不改变本质形状——平衡点的个数、稳定性、极限环数量都不变。这样的$\mu$称为结构稳定的。

分岔是反例:在$\mu_c$处,画面在任意小扰动下都发生不连续的形状变化。新平衡点凭空出现,两个平衡点碰撞湮灭,稳定焦点蜕变为极限环,周期解的周期翻倍。

变化是定性的,不是定量的。水管缓慢变窄不算分岔;水管突然爆裂——那才是

一个有用的心智模型

把$f(x,\mu)$想象成依赖$\mu$的势能景观:平衡点是导数为零的位置,稳定性由二阶导决定。$\mu$滑动时景观连续变形;但当某个山头被夷为鞍点、再翻转成谷地的瞬间,那一刻就是分岔。两次分岔之间,景观只是被推来推去而已。


2. 四种余维-1 范式

分岔理论的奇迹:在任意单参数分岔附近,动力学(在光滑坐标变换下)局部等价于以下四个标准方程之一。这些就是范式(normal forms)。

四种余维-1 范式分岔图全景。
四种余维-1 分岔在同一张图中。蓝色实线 = 稳定,红色虚线 = 不稳定,绿色带 = 极限环振幅。在单参数 ODE 中遇到的每一个分岔,局部都是这四种之一。

为什么叫"余维-1"? 因为每一种都需要恰好调节一个参数才会发生。要让两种同时发生需要调节两个参数,依此类推。当你转动一个旋钮时,能够普遍遇到的就是余维-1 事件。

2.1 鞍-结点分岔(fold / 折叠)

范式:$\dot{x} = \mu - x^2.$令$\dot{x}=0$得$x^* = \pm\sqrt{\mu}$。所以:

$\mu$范围平衡点
$\mu < 0$没有
$\mu = 0$一个(半稳定,在$x=0$)
$\mu > 0$两个:$+\sqrt{\mu}$稳定,$-\sqrt{\mu}$不稳定

线性化$f_x = -2x$立即给出稳定性:$+\sqrt{\mu}$处$f_x<0$(稳定),$-\sqrt{\mu}$处$f_x>0$(不稳定)。两个平衡点随$\mu$穿越 0 而成对诞生

鞍-结点分岔:左为相函数,右为带流向的分岔图。
左:抛物线$\mu - x^2$随$\mu$增大向上平移,零点(即平衡点)在折叠点$\mu=0$处诞生。右:分岔图。灰色区域根本没有任何平衡点——某种状态根本不存在。

应用案例

  • 激光器:低于阈值泵浦电流,唯一稳态是"无光";高于阈值时出现相干发射态。
  • 神经元(I 类):低于刺激电流的最低限(rheobase),静息态是唯一平衡点;超过后静息态与一个鞍点碰撞消失,神经元开始放电。
  • 湖泊从清变浑:清水平衡随营养盐负荷穿越临界点而在折叠分岔中消失。

折叠的标志是湮灭前的双稳态:临界值前两个平衡点共存,临界值后一个都没有。系统必须跑去别处,往往以剧烈的方式。

2.2 跨临界分岔

范式:$\dot{x} = \mu x - x^2.$两个平衡点恒存在:$x^*=0$和$x^*=\mu$。它们从不消失——只是在$\mu=0$处穿越时交换稳定性

$\mu$范围$x^*=0$$x^*=\mu$
$\mu < 0$稳定不稳定
$\mu > 0$不稳定稳定

这是当系统因对称性或定义本身保留了一个"平凡"平衡点($x=0$)时所出现的分岔。

跨临界分岔:轨迹收敛到当前稳定的那条分支。
左:$\mu=-0.8$时轨迹收敛到 0;$\mu=+0.8$时收敛到$\mu$。右:两条分支构成"X"形,在交点处稳定性互换。

应用

  • 流行病学:无病平衡点恒存在。当基本再生数$R_0$穿越 1(这就是分岔参数),它把稳定性让给地方性流行平衡点——正好是跨临界分岔。
  • 种群动力学:灭绝态总是平衡点;环境质量参数穿越阈值时,灭绝态把稳定性让给共存态。

2.3 超临界叉型分岔

范式:$\dot{x} = \mu x - x^3.$平衡点恒为$x^*=0$,且当$\mu>0$时多出$x^*=\pm\sqrt{\mu}$。平凡分支失稳,同时两个对称稳定分支诞生。

这是普适的对称破缺分岔。方程在$x \to -x$下不变,所以新平衡点必成对出现。临界前系统位于对称解,临界后必须在两个等价的非对称解中"任选其一"。

2.4 亚临界叉型分岔(危险的那一种)

范式:$\dot{x} = \mu x + x^3.$平凡分支失稳时没有附近的稳定分支接住系统:$\mu<0$时$x^*=0$稳定,并有两条不稳定分支$\pm\sqrt{-\mu}$;$\mu>0$时只剩不稳定的平凡分支。轨迹会冲向无穷。

实际系统中高阶项最终会重新稳定一切:加入$-x^5$项给出经典滞后模型$\dot{x} = \mu x + x^3 - x^5,$它在$-\tfrac14 \le \mu \le 0$区间内同时存在大幅稳定分支和平凡稳定态。准静态地缓慢提升$\mu$将复现著名的滞后回路:$\mu$从下方穿越 0 时系统突然跳到大振幅,而要让它跳回来必须把$\mu$拉到$-\tfrac14$以下。

叉型分岔:左为温和的超临界叉型,右为带滞后回路的危险亚临界叉型。
左:超临界叉型。新分支从零连续生长,温和、可逆。右:被$-x^5$稳定的亚临界叉型。紫色箭头标出$\mu=0$处的灾难性向上跳跃和$\mu=-\tfrac14$处的延迟向下跳跃。双稳窗口的宽度就是滞后回路。

为什么这事关重大

  • 欧拉屈曲:受压细长柱发生超临界叉型分岔——临界载荷下小幅可逆地往左或往右弯。
  • 薄壳骤崩(圆柱壳的 von Karman 屈曲):叉型是亚临界的。壳保持笔直、笔直、然后地一下坍塌成大变形构型。这就是航空工程师用 3-10 倍安全系数计算屈曲载荷的原因。
  • 铁磁体过 Curie 点:超临界叉型,磁化强度从零连续生长。
  • 气候转换:冰期-间冰期跃迁常被建模为温度-反照率系统的亚临界叉型(或折叠)。滞后窗口意味着——一旦"翻转",仅仅把 CO$_2$恢复到原值是不能让系统恢复的。

总结表

分岔范式现象“软"还是"硬”?
鞍-结点$\dot{x}=\mu-x^2$平衡点成对生灭硬(状态消失)
跨临界$\dot{x}=\mu x-x^2$两条分支交换稳定性
超临界叉型$\dot{x}=\mu x-x^3$对称分裂,分支从 0 生长
亚临界叉型$\dot{x}=\mu x+x^3$对称分裂向外扩张;跳跃 + 滞后

3. Hopf 分岔:焦点孕育出环

上述均为标量分岔。第一个真正的二维分岔是 Hopf(更确切叫 Andronov-Hopf)——它使振荡得以诞生

极坐标范式:$\dot{r} = \mu r - r^3, \qquad \dot{\theta} = \omega.$径向方程正是超临界叉型。所以:

-$\mu \le 0$:唯一吸引子是$r=0$(稳定焦点)。 -$\mu > 0$:原点变为不稳定焦点,半径$r=\sqrt{\mu}$的稳定极限环包围原点。

直角坐标形式:$\dot{x} = \mu x - \omega y - x(x^2+y^2),$$\dot{y} = \omega x + \mu y - y(x^2+y^2).$原点处 Jacobi 矩阵$\bigl(\begin{smallmatrix}\mu & -\omega \\ \omega & \mu\end{smallmatrix}\bigr)$,特征值$\lambda = \mu \pm i\omega$。当$\mu$从下方穿越 0 时,复共轭对横截穿越虚轴——这就是 Hopf 条件

Hopf 分岔:分岔前、临界、分岔后的相图,加上极限环振幅的三维抛物面。
上排:$\mu=-0.4$时轨迹螺旋收敛于原点;$\mu=0$时悬而不决;$\mu=+0.4$时收敛到半径$\sqrt{0.4}\approx 0.63$的极限环。下:极限环族构成向右开口的抛物面$r=\sqrt{\mu}$。

Hopf 定理(Hopf 1942):设$\mathbf{x}_0$是$\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x},\mu)$在$\mu=\mu_c$处的平衡点,Jacobi 矩阵有复对$\lambda(\mu)=\alpha(\mu)\pm i\beta(\mu)$满足

1.$\alpha(\mu_c)=0$(在虚轴上) 2.$\beta(\mu_c)\ne 0$(确为复数) 3.$\alpha'(\mu_c)\ne 0$(横截穿越,非仅相切)

并设三次 Lyapunov 系数$\ell_1 \ne 0$。则一族周期轨从$\mathbf{x}_0$在$\mu_c$处涌出,周期约为$2\pi/\beta(\mu_c)$。当$\ell_1 < 0$时极限环稳定(超临界 Hopf);$\ell_1 > 0$时不稳定(亚临界 Hopf)。

亚临界 Hopf 是亚临界叉型的"环"版本:临界前毫无征兆,临界时把系统直接抛到一个远处吸引子。飞机机翼颤振的突然出现、心律失常的突发、激光的模式跳变——都是教科书级亚临界 Hopf。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import numpy as np
from scipy.integrate import odeint

def hopf(s, t, mu, omega=1.0):
    x, y = s
    r2 = x*x + y*y
    return [mu*x - omega*y - x*r2,
            omega*x + mu*y - y*r2]

t = np.linspace(0, 60, 6000)
sol = odeint(hopf, [0.05, 0.05], t, args=(0.4,))
# 轨迹螺旋向外,最终落在极限环 r = sqrt(0.4) ~ 0.632 上

4. 余维与普适性

分岔的余维$k$是指通用情况下需要调节几个独立参数才能遇到。余维-1 事件在参数空间中填满曲线;余维-2 事件出现在两条这样的曲线相交的孤立点上。

常见余维-2 分岔:

  • 尖点(cusp):两条鞍-结点曲线相切相遇。展开式$\dot{x} = \mu_1 + \mu_2 x - x^3$是经典的尖点突变,包含被两条鞍-结点曲线包围的滞后区。
  • Bogdanov-Takens(BT):双重零特征值。展开式中鞍-结点、Hopf、同宿三种曲线交于一点。如果在参数图中看到 Hopf 曲线和折叠曲线相互靠近,请到交点处寻找 BT。
  • Bautin(广义 Hopf):第一 Lyapunov 系数过零的点,标记超临界 Hopf 与亚临界 Hopf 的分界。极限环在此发生"鞍-结点-环"折叠。

这些分类之所以存在,深层原因是中心流形定理 + 范式方法:在余维-$k$分岔附近只有少数几个变量(中心方向)携带慢动力学,其余被它们"奴役";多项式坐标变换后慢动力学化简为普适范式。这就是分岔理论得以"完结"的原因——它几乎是元素周期表。


5. 全局分岔:远离平衡点的拓扑变化

局部分岔在单点附近重排相空间。全局分岔大尺度地重排,通常通过重连不变流形。

同宿分岔

从鞍点不稳定流形出发、沿稳定流形回到同一鞍点的轨迹称为同宿轨。它仅在孤立参数值上存在(余维-1)。在同宿分岔附近,邻近的周期轨周期任意长——轨道在鞍点附近"爬行"的时间无限长。普适标度律:$T \sim -\log|\mu - \mu_c|$。

Shilnikov 定理:到鞍-焦点的同宿环(特征值比满足适当条件)暗示其邻域内存在可数无穷多周期的周期轨——也就是混沌

异宿分岔

同样的思路,但轨迹连接不同的鞍点。异宿环可产生缓慢振荡,每个鞍点附近有近乎"停滞"的长阶段。它是神经回路中"无赢家竞争"的标准模型。

SNIC(不变圆上的鞍-结点)

发生在闭不变曲线上的鞍-结点分岔。临界前曲线被鞍-结点对切断;临界后这对湮灭,曲线恢复为极限环。极限环以无限周期诞生(系统在原平衡点位置爬行),周期标度律为$T \sim 1/\sqrt{\mu_c - \mu}$。SNIC 是神经元从静息到放电的第二种标准路径(I 类兴奋性),也是 El Niño 振子模型的关键机制。


6. 通往混沌之路:周期倍化

极限环本身也会分岔。最著名的路径是周期倍化级联:周期$T$的稳定环失稳,孕育出周期$2T$的稳定环;后者再倍化为$4T$,$8T$,$16T$,在某个有限参数值处累积,越过该点动力学进入混沌。

Mitchell Feigenbaum(1978)发现:相邻倍化间隔$\Delta_n = \mu_n - \mu_{n-1}$以普适比率几何收缩$\delta = \lim_{n \to \infty} \frac{\Delta_n}{\Delta_{n+1}} = 4.6692016\ldots$与具体系统无关,只要系统具有光滑二次极大值。同一个常数支配滴水、Rayleigh-Bénard 对流、电子电路中的周期倍化。

最简玩具模型是 Logistic 映射$x_{n+1} = r x_n(1 - x_n)$:

$r$范围行为
$0 < r < 1$灭绝:$x \to 0$
$1 < r < 3$$1 - 1/r$处稳定不动点
$3 \le r < 3.449$周期 2
$3.449 \le r < 3.544$周期 4
$\vdots$周期 8, 16, 32, …
$r > 3.5699$混沌(夹杂周期窗)

Sharkovsky 定理(1964)和著名推论"周期 3 蕴含混沌"(Li-Yorke 1975)完成了故事:任何含周期-3 轨的连续区间映射都含有所有周期的轨道,以及不可数多条非周期轨。

更深入的混沌讨论见 第 9 章


7. 数值检测与延拓

实际中我们极少有解析范式,只有向量场$\mathbf{f}(\mathbf{x},\mu)$。延拓方法是标准工具:

  1. 追踪平衡分支:从已知平衡点出发,对$\mathbf{f}(\mathbf{x},\mu)=0$用 Newton 法递增$\mu$。伪弧长延拓用弧长而非$\mu$参数化分支以处理折叠(让算法能"拐弯")。
  2. 沿分支监视 Jacobi 特征值:实特征值穿越 0 标记鞍-结点/跨临界/叉型(靠对称性和二阶系数区分);复对穿越虚轴标记 Hopf。
  3. 分支切换:在检测到的分岔处用范式系数计算新分支的切方向。

工业级工具:AUTO-07p(金标准,Fortran/C)、MATCONT(MATLAB)、PyDSToolBifurcationKit.jl。研究级分岔分析基本必备这些;自己写延拓算法工程量极大且容易出错。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import numpy as np
from scipy.linalg import eigvals

def detect_bifurcations(f, fx, x_branch, mu_grid):
    """沿平衡分支追踪特征值穿越事件。"""
    events = []
    prev = None
    for mu, x in zip(mu_grid, x_branch):
        eigs = eigvals(fx(x, mu))
        if prev is not None:
            # 实特征值穿越 -> 折叠/跨临界/叉型
            for a, b in zip(np.sort(prev.real), np.sort(eigs.real)):
                if a * b < 0 and abs(a.imag) + abs(b.imag) < 1e-8:
                    events.append({'kind': 'real_crossing', 'mu': mu})
            # 复对穿越 -> Hopf
            prev_pair = prev[np.iscomplex(prev)]
            curr_pair = eigs[np.iscomplex(eigs)]
            if prev_pair.size and curr_pair.size:
                if prev_pair[0].real * curr_pair[0].real < 0:
                    events.append({'kind': 'hopf', 'mu': mu,
                                   'omega': abs(curr_pair[0].imag)})
        prev = eigs
    return events

8. 这一切意味着什么

分岔理论最深层的信息是:光滑的因可以产生突变的果,但只通过少数几种规范机制。当怀疑系统正在逼近临界点时,可以问几个具体的诊断问题:

  • 将至的是哪种分岔? 方差增大、扰动后恢复变慢(临界减速)暗示折叠或叉型;振荡幅度增大暗示 Hopf。
  • 超临界还是亚临界? 如果接近临界时呈双稳态,那就是亚临界——分岔后跳跃幅度大,且可能不可逆。
  • 是否存在滞后? 如果是,不要假设把参数反向就能恢复原状。
  • 有早期预警信号吗? 折叠分岔在$\mu \to \mu_c$时小扰动恢复率以普适标度$\sim |\mu-\mu_c|^{1/2}$衰减为零。这一指标已在生态、气候、流行病学中用于预报临界跃迁。

分类很小,现象遍地。


习题

  1. 不完美叉型。证明$\dot{x} = h + \mu x - x^3$在$(\mu, h)$平面有一条鞍-结点曲线在原点尖点相遇。画出$h>0$、$h=0$、$h<0$三种情形的分岔图。
  2. $\dot{x} = \mu - x - e^{-x}$的分岔。由$\mu = x + e^{-x}$隐式求出全部平衡点;证明在$\mu_c=1, x_c=0$处有鞍-结点分岔,并判别各分支稳定性。
  3. Logistic 倍化数值实验。计算 Logistic 映射的倍化参数$r_n$至$n=6$,用$\delta_n := (r_n-r_{n-1})/(r_{n+1}-r_n)$估计 Feigenbaum 常数。
  4. 捕食者-被捕食者中的 Hopf。对$\dot{x} = x(1-x) - \tfrac{xy}{a+x},\;\dot{y} = -dy + \tfrac{xy}{a+x}$,找出共存平衡点发生 Hopf 的参数组合,并数值判断超/亚临界。
  5. 带$x^5$饱和的亚临界叉型。对$\dot{x} = \mu x + x^3 - x^5$推导鞍-结点折叠位置$\mu = -1/4$及由此产生的滞后区间。绘出准静态升降$\mu$时的滞后回路。

参考文献

  • Strogatz, S. H. (2015). Nonlinear Dynamics and Chaos, 2nd ed. Westview / CRC. 入门首选。
  • Kuznetsov, Y. A. (2004). Elements of Applied Bifurcation Theory, 3rd ed. Springer. 余维-1、-2 范式权威参考。
  • Guckenheimer, J. & Holmes, P. (1983). Nonlinear Oscillations, Dynamical Systems, and Bifurcations of Vector Fields. Springer.
  • May, R. M. (1976). “Simple mathematical models with very complicated dynamics.” Nature 261, 459-467.
  • Scheffer, M. et al. (2009). “Early-warning signals for critical transitions.” Nature 461, 53-59.

系列导航

上一章第 9 章:混沌理论与洛伦兹系统
当前第十章:分岔理论
下一章第 11 章:数值方法

Liked this piece?

Follow on GitHub for the next one — usually one a week.

GitHub