想象你正驾驶一辆汽车穿过一片浓雾弥漫的森林。你的目标是尽可能快速且平稳地抵达目的地,但绝不能撞到任何一棵树。
在机器人和自动驾驶领域,这就是安全关键控制(Safety-Critical Control)所面临的挑战。计算机需要在每一瞬间决定该做什么(转向、加速或刹车),以在确保安全的同时保持高效。
本文介绍了一种让计算机进行此类思考的新方法,称为MPC-MCI。为了理解其独特之处,让我们对比一下“旧方法”与“新方法”。
旧方法:过度保护的守护者
想象你的汽车配备了一个安全系统,它像一个极度焦虑的守护者。这个守护者确切地知道树木的位置(即“不安全区域”)。为了绝对确保你不会撞到树,守护者在树木周围画出了一个巨大的、不可见的泡泡。
- 规则:“你只被允许在这个泡泡内行驶。如果你甚至产生走出这个泡泡的念头,我就会猛踩刹车。”
- 问题:这个泡泡通常比实际的树木大得多。它迫使汽车远离树木,即使完全安全地靠近行驶也是可行的。这被称为**“保守”**。虽然安全,但这会让汽车行驶得缓慢且笨拙,无法走捷径或在狭窄空间内灵活穿行。
- 技术术语:在论文中,这被称为“已知安全集”(Xsafe)。旧方法(如 NMPC-DCBF)迫使汽车在旅程的每一步都必须停留在这个狭小的安全泡泡内。
新方法:战略导航员
本文的作者提出了一种更智能的方法。与其让一个在每一步都惊慌失措的守护者,不如想象一位战略导航员。
- 规则:“只要你当前没有撞到树,你就可以自由行驶。但是,我需要知道在接下来的几秒钟结束时,你会处于一个肯定能安全停车或转向的位置。”
- 神奇之处:导航员允许汽车更靠近树木行驶(甚至进入旧守护者认为危险的区域),因为它只在计划的终点检查“安全保证”,而不是在每一刻都进行检查。
- 技术术语:这就是“最大可控不变集”(Xsafe∗)。它是一张更大、更准确的地图,标示了汽车实际上可以在不撞车的情况下行驶的区域。新方法(MPC-MCI)使用“终端约束”,意味着它只强制汽车在其预测的最后一步落在安全区域内。
类比:走钢丝者
想象一位走钢丝者正在穿越峡谷。
- 旧方法:走钢丝者被告知:“你必须在每一步都保持在中心线 5 英尺的范围内。”这很安全,但会让行走变得僵硬且缓慢。他们无法利用平衡感来倾斜身体以完成转弯。
- 新方法:走钢丝者被告知:“你可以随意倾斜和摇摆,只要你知道当你到达对岸时,你会稳稳地站在坚实的地面上。”这允许走钢丝者更加动态、快速且高效,同时仍能保证他们不会跌落。
论文的实际发现
作者们不仅仅是理论推导;他们在“独轮车”(一种像自行车一样移动的机器人,因其难以横向移动而颇具挑战性)的计算机模拟中进行了测试。
- 更多的活动空间:他们发现,新方法允许机器人从更多位置出发而不发生碰撞。在他们的测试中,机器人“卡住”(找不到安全路径)的位置数量减少了1.7 到 2.7 倍。
- 随时间提升:随着给予机器人更多的思考时间(更长的“预测视界”),新方法在寻找路径方面表现得越来越好。而旧方法并没有变得更好;它依然被困在其保守的泡泡中。
- “不可能”的路径:他们创造了一个场景,机器人必须遵循一条穿过旧方法“危险区”内部的路径。旧方法拒绝前往那里。而新方法成功导航了该路径,因为它意识到机器人仍能在最后安全恢复。
为何这很重要(根据论文所述)
论文声称,这种方法更少保守(限制更少),同时仍然可证明是安全的。
- 安全性:它保证机器人永远不会撞上障碍物。
- 效率:它允许机器人采取更直接、更快、更平滑的路径。
- 速度:由于数学结构经过特定设计,计算机能更快地解决问题,这对于实时驾驶至关重要。
简而言之,论文指出:“不要在障碍物周围画出一个巨大且吓人的泡泡。相反,只需确保机器人知道如何在终点安全着陆。这让机器人能够行驶得更好、更快,并更靠近边缘,而实际上不会发生碰撞。”
技术摘要:最大可控不变-MPC
问题陈述
安全关键控制系统通常依赖控制障碍函数(CBF)来强制执行约束。然而,为高阶系统构建最小保守性的 CBF 在计算上是不可行的。因此,标准方法往往导致过于保守的安全集(Xsafe),将系统限制在真实最大可控不变安全集(Xsafe∗)的一个子集内。这种保守性降低了系统的最优性和可行性,特别是在复杂导航任务中,系统必须在已知不安全区域(Xavoid)的边界附近运行。现有的集成 CBF 的模型预测控制(MPC)公式要么依赖短视的几何约束,要么需要松弛变量和衰减率调节,要么施加多步准 CBF 约束,往往无法提供关于随着预测时域增加而减少保守性或扩大可达集的形式保证。
方法论
作者提出了一种新颖的 MPC 公式,称为MPC-MCI(带有最大可控不变约束的模型预测控制),该公式将瞬态安全与终端不变性解耦,从而在保持形式安全保证的同时减少保守性。
公式化:优化问题在预测时域 N 上最小化标准成本函数,受限于:
- 瞬态约束:强制符号距离函数 d(x) 在所有步骤 k∈{0,…,N−1} 中为非负(d(xt+k)≥0)。这确保系统在预测时域内永远不会进入已知不安全集 Xavoid。
- 终端约束:仅在终端状态上施加单步控制障碍函数约束(h(xt+N)≥0)。这将终端状态锚定在已知安全集 Xsafe 内,而该集合是最大可控不变集 Xsafe∗ 的一个子集。
理论保证:
- 递归可行性:作者提供了一个构造性证明,表明如果问题在 t=0 时可行,则它在所有 t>0 时保持可行。该证明依赖于 Xsafe 是控制不变的事实;因此,一旦达到终端状态,就存在有效的控制序列使系统无限期地保持在 Xsafe 内。
- 安全性:证明了闭环轨迹保持在 Xsafe∗(X∖Xavoid 的最大可控不变子集)内,即使轨迹暂时进入 CBF 值为负(h<0)但符号距离仍为正(d≥0)的区域,也能确保安全。
- 可达性增强:通过可达性分析,论文证明 MPC-MCI 的单步可达集随着预测时域 N 的增加而单调扩展。相比之下,先前方法(特别是 NMPC-DCBF)的可达集无论时域长度如何都保持静态。
计算效率:可行性证明的构造性质允许对非线性优化进行热启动。优化器使用先前计算出的轨迹(附加恢复控制策略)作为初始猜测。这显著减少了计算时间,同时不牺牲可行性保证。
主要贡献
- 优化框架:开发了一种递归可行的 MPC 框架,通过将系统保持在最大可控不变安全子集内来保证安全性,解决了先前工作 [3, 4] 中的局限性。
- 减少保守性:该方法仅需初始可行性即可保证未来安全,允许系统在保守的 Xsafe 之外的区域运行(即 Xsafe∗∖Xsafe 内),前提是这些区域在几何上是安全的(d≥0)。
- 简化约束:与使用两步准 CBF [7] 或带有衰减率的松弛变量 [4] 的方法不同,MPC-MCI 仅施加单个终端 CBF 约束和沿时域的距离约束,消除了对参数调节(例如 γ)或辅助约束函数的需求。
- 构造性证明:论文提供了递归可行性的构造性证明,使得热启动成为可能,从而大幅加快了计算速度。
- 可达性分析:形式化地证明了可行集和可达集随着预测时域的增加而扩展,这是先前 NMPC-DCBF 公式中未保证的属性。
结果
所提出的方法通过在带有圆形障碍物的二维非完整单轮系统上的仿真进行了验证。
- 可行性增强:与 NMPC-DCBF 方法相比,不可行初始状态的数量减少了1.74 到 2.73 倍。具体而言,在高速情况下,不可行点从 5,560 个下降到 2,034 个。
- 时域依赖性:随着预测时域 N 的增加(从 2 到 21),MPC-MCI 的可行状态比例单调增加(例如,在案例 1 中从 0.74 增加到 0.84),而 NMPC-DCBF 的可行比例保持不变。
- 轨迹跟踪:系统成功跟踪了一条完全位于 CBF“不安全”区域(h<0)但在几何上安全(d≥0)的参考轨迹。保守的 NMPC-DCBF 未能跟踪该轨迹,要么严重偏离,要么移动过慢。
意义
论文声称,将安全性锚定在终端状态,而不是在整个时域上强制执行 CBF 约束,是一种恢复因保守 CBF 设计而丢失的最优性的原则性方法。通过利用符号距离函数进行瞬态安全,并仅将 CBF 用于终端不变性,MPC-MCI 公式实现了一个可证明安全的控制器,该控制器允许轨迹进入“未知安全”区域(Xsafe∗∖Xsafe)。这种方法消除了对松弛变量、衰减率调节或复杂多步约束的需求,为非线性系统的安全关键控制提供了一种计算高效且保守性更低的替代方案。
每周获取最佳 electrical engineering 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。