本页目录

前沿 II · 安全约束控制

核对于 2026-07 | 证据地位:理论框架【实】(有严格证明);在复杂真实系统上的可扩展性【争】。 上一页留下一个问题:学习型控制灵活但无保证,传统控制有保证但不够灵活。能否两者兼得? 这正是近十年控制理论最活跃的方向——在保留性能的同时,给出可证明的安全保证。它也是控制学科对当前 AI 浪潮最独特的贡献。

学习层:把自适应巡航的 nominal 动作投影到 CBF 可行集

1. 具体工程谜题:前车固定制动时,怎样尽量保留巡航性能又不穿过安全边界?

用纵向 toy 模型表示本车与前车的间距 \(d\)、本车速度 \(v\)、前车速度 \(v_{lead}\)。设静态安全距离为 \(d_0\)、时间车头时距为 \(T\),定义

\[ h=d-d_0-Tv. \]

前车以固定制动加速度逐步减速,nominal 控制器仍想根据间距和相对速度加速或减速。过滤器需要回答:CBF 不等式对本车加速度是上界还是下界;执行器界与 CBF 约束是否有交集;以及一个离散、可能失配的 toy 仿真能承诺到什么程度。

预测门,必须先作答:

  1. \(\dot h=(v_{lead}-v)-Ta\) 与 \(\dot h+\alpha h\ge0\) 对 \(a\) 给出什么方向的界?
  2. 安全过滤器应选择离 nominal 最近的可行动作,还是固定输出 0?
  3. 离散 toy 中观察到 \(h\ge0\),能否对任意模型失配直接宣称绝对安全?

2. 正式模型:相对阶 1 的 CBF 上界和投影

由

\[ \dot h=(v_{lead}-v)-Ta, \]

得到

\[ \dot h+\alpha h\ge0 \quad\Longleftrightarrow\quad a\le a_{CBF}^{max}:=\frac{v_{lead}-v+\alpha h}{T}, \]

其中 \(T>0,\alpha>0\)。本实验的执行器集合为 \(a\in[-4,2]\ \mathrm{m/s^2}\);先把 nominal 动作截到执行器界,再求

\[ a_{safe}=\operatorname{proj}_{[-4,\,\min(2,a_{CBF}^{max})]}(a_{nom}). \]

因此 \(a_{CBF}^{max}\ge-4\) 才有非空可行集。加速度直接出现在 \(\dot h\),所以这个 toy barrier 的相对阶为 1,不需要二阶 CBF 的额外动态扩张。

3. 动手实验:把 gap、speed、h 和动作修正放进同一张 ledger

先提交三项预测,再调初始间距/速度、\(d_0,T,\alpha\)、前车固定制动、nominal 增益、仿真时长和步长。图上画间距与安全间距、本车/前车速度、\(h\) 以及 nominal/CBF 上界/safe 加速度;ledger 逐步列 \(d,v,h,a_{nom},a_{CBF}^{max},a_{safe}\) 和可行性。观察 safe action 开始偏离 nominal 的时刻,以及步长变大、初始 \(h\) 变小或制动变强时可行性如何消失。

JavaScript 失效时的静态 fallback:默认取

\[ d_0=8\ \mathrm m,\quad T=1.5\ \mathrm s,\quad \alpha=0.6, \quad d(0)=45\ \mathrm m,\quad v(0)=18\ \mathrm{m/s},\quad v_{lead}(0)=20\ \mathrm{m/s}, \]

前车固定制动为 \(2\ \mathrm{m/s^2}\),执行器为 \([-4,2]\ \mathrm{m/s^2}\),\(\Delta t=0.1\ \mathrm s\),仿真 10 s。初始 \(h=10.000\ \mathrm m\),末端 \(h=0.050\ \mathrm m\),最小 gap 为 \(12.741\ \mathrm m\);不可行步数和违反 CBF 步数均为 0,safe action 与截断 nominal 不同的步数为 72。

\(k\) \(t\) (s) gap (m) \(v\) (m/s) \(h\) (m) nominal (m/s²) \(a_{CBF}^{max}\) (m/s²) safe (m/s²) feasible
0 0.0 45.000 18.000 10.000 2.000 5.333 2.000 yes
1 0.1 45.200 18.200 9.900 1.828 5.027 1.828 yes
2 0.2 45.360 18.383 9.786 1.661 4.726 1.661 yes
40 4.0 34.802 16.517 2.028 -1.563 -2.200 -2.200 yes
60 6.0 26.363 11.850 0.588 -1.469 -2.331 -2.331 yes
80 8.0 19.195 7.350 0.171 -1.319 -2.165 -2.165 yes
100 10.0 12.741 3.127 0.050 -1.245 -2.065 -2.065 yes

该表是固定前车制动、前向 Euler、无延迟测量的确定性 toy 账本;它不是对真实交通参与者或执行器失配的安全证明。

4. 误区与模型边界

  • CBF 上界方向不能凭直觉改写:因为 \(-Ta\) 出现在 \(\dot h\),\(T>0\) 时更大的加速度会降低 \(h\),所以条件给出上界。
  • 可行性是单独的证据:若 \(\min(a_{max},a_{CBF}^{max})<a_{min}\),当前模型下没有同时满足执行器和 CBF 的动作;投影器不能凭空创造可行性。
  • 离散时间不是连续时间的自动拷贝:前向 Euler 的步长、采样/执行延迟、量化和制动变化会改变实际 \(h\);需要离散 CBF 裕度或采样间验证。
  • 模型失配会穿透形式保证:真实加速度响应、坡度、轮胎附着、传感器偏差和前车非合作行为都可能破坏 \(\dot h\) 模型;应加入扰动边界、鲁棒约束、紧急制动和人工接管。
  • 相对阶依赖建模:本 toy 直接把加速度当输入,故相对阶为 1;若输入是 jerk、执行器有一阶动态,必须重建 barrier 条件。

迁移问题:如果实车只能控制 jerk,且雷达距离有 ±0.5 m 偏差、执行器有 150 ms 延迟,你会如何重写 barrier、可行域和离散裕度?请把 nominal 性能、形式安全证据、失配边界和失效时的最小风险动作分开报告。

一、把"安全"形式化

第十四页讲的功能安全是工程流程层面的;本页讲的是数学层面的:把"安全"写成状态空间中的一个条件,并在模型、输入可行性和状态测量等假设下证明系统不会违反它。

安全集:定义一个允许的状态集合 \(\mathcal{C}\)(如"温度低于 80°C"、"机械臂不进入人所在区域"、"电池 SOC 在 10%–90% 之间")。

安全 = 前向不变性(forward invariance):

若初始状态在 \(\mathcal{C}\) 内,则在所有未来时刻都保持在 \(\mathcal{C}\) 内。

安全与稳定性关注不同性质,不能一般地排序:安全约束关注从允许集合出发的全程前向不变性;稳定性关注平衡点附近的有界、收敛或渐近行为。一个系统可以稳定但暂时越过安全边界,也可以保持在安全集合内却不收敛到某个平衡点;工程上必须分别写清两类证据。

二、控制屏障函数(CBF)

核心思想(与 Lyapunov 函数形成教学上的镜像/类比,而非严格数学对偶):

定义 \(\mathcal{C} = \{x : h(x)\ge0\}\),CBF 条件为:

\[\sup_{u\in\mathcal U} \left[\dot{h}(x,u)\right] \ge -\alpha\big(h(x)\big)\]

\(\alpha\) 是一个 K 类函数。直觉:当状态接近边界(\(h\to0\))时,允许的"下降速度"必须趋于零——越靠近边界,越必须减速。就像开车接近悬崖时必须减速一样。

关键的工程价值:CBF 可以作为一个"安全过滤器"。设任意标称控制器(PID、MPC、甚至神经网络策略)给出 \(u_{nom}\),求解一个小的二次规划:

\[u^* = \arg\min_{u\in\mathcal U} \|u - u_{nom}\|^2 \quad \text{s.t.}\quad \dot{h}(x,u) \ge -\alpha(h(x))\]

含义:尽可能执行标称控制器想做的事,只在必要时做最小修正以保证安全。

这个结构极具吸引力:

这正是上一页那个困境的一个漂亮回答。

三、可达性分析

另一条路线:直接计算可达集。

Hamilton–Jacobi 可达性给出严格的解,且天然处理对抗性扰动(把扰动当作对手,做微分博弈)——这是最严格的安全保证:即使扰动以最坏方式出现,也能保证安全。

代价是维数灾难:需在状态空间网格上解 PDE,实际可行的维数通常很低(约 5–6 维以内)。近似方法(多面体/椭球/zonotope 传播、学习值函数、分解为低维子问题)是主要的扩展手段。

四、其他框架

五、真实的困难

必须诚实标注这些方法的限制:

① 都依赖模型。 CBF 条件、可达集计算都需要动力学模型。模型错了,保证就是虚假的。 补救是鲁棒版本(考虑模型误差界),但需要知道误差界——而这本身很难确定。

② 构造屏障函数很难。 与 Lyapunov 函数一样,没有通用构造法。对简单约束(距离、限值)容易,对复杂任务("安全地穿过人群")则困难。近年有用学习来构造 CBF 的工作,但这又回到"学出来的东西需要验证"的循环。

③ 保守性。 严格保证往往过于保守,导致系统畏首畏尾、性能低下。这是第十六页鲁棒控制老问题的重现。

④ 可扩展性。 高维系统、多智能体、混合离散连续系统仍是挑战。

⑤ 感知不确定性没有被涵盖。 CBF 假定状态已知。在真实机器人上,"人在哪里"来自感知系统,而感知会出错——当前多数安全保证建立在"状态估计正确"这个未被保证的前提上。这是从理论到实际最大的缺口之一,也是当前活跃的研究方向。

六、为什么这个方向重要

它代表了控制学科对当前技术趋势的独特回应:

AI 提供能力,控制提供保证。

这也回应了本课反复出现的主题:成熟工程学科的标志之一,是知道自己保证了什么、没保证什么(第五页水床效应、第十四页量化风险、第十六页鲁棒边界)。在一个"演示驱动"的时代,能诚实地陈述保证的边界,是一种稀缺的专业素养。

七、要点


下一页:本线最后一站,也最贴近你的问题——这个行业的产业形态、当前的技术前沿,以及本硕博的实际去向。