G0 博弈规划总论:从单智能体最优到多智能体均衡¶
本章定位:这是博弈规划方向(Part-G)的**入口导览**,不是某个具体技术的知识点章。它的任务是在你深入 G1–G4 之前,先建立三样东西——全局地图(四章讲什么、为何这个顺序)、核心心智模型(从"最优控制"到"博弈均衡"的三大认知跨越)、技术全景(这个领域有哪些路线、各自的代表工作)。 读完本章你不会"学会"任何一个具体算法(那是 G1–G4 的事),但你会知道:博弈规划在解决什么根本问题、它和你已掌握的单智能体规控有何本质不同、整个方向的知识地图长什么样、该按什么路径学。
为什么需要一个总论:博弈规划是规控里认知门槛最高的方向之一——它要求你放弃"存在唯一最优解"这个根深蒂固的直觉,转而接受"只有均衡、且均衡可能不唯一/不存在/不稳定"。如果直接扎进 G1 的 HJI 方程或 G2 的 iLQGames,很容易陷入技术细节而错过全局——不知道"我为什么要学这个、它在整张图的哪个位置"。本章就是那张图。
这一方向回答的根本问题:当你的机器人不再面对"被动的障碍"(静态墙、随机噪声),而是面对"另一个有自己目标的决策者"(抢行的车、博弈的对手、协作的队友)时,怎么做决策?传统规控假设"他人是可预测的障碍物"——预测他人轨迹、当成约束绕开。但他人也在观察你、也在做最优决策、他们的行为会因你的行为而改变。把"他人"从障碍升级为决策者,就是博弈规划的全部出发点。
承上:你已经站在哪里¶
在跨入博弈之前,先盘点你大概率已经具备的能力——博弈规划不是凭空起步,它是你已掌握的单智能体规控的**自然延伸**,理解"从哪里来"能让"到哪里去"水到渠成。
按本专题的前置假设,进入 Part-G 的你应当已经走过这样一条路:v8 SLAM 主线(建图定位)+ Part 0 公共基础 + 至少一个方向增量。这意味着你手里已经有一套相当完整的**单智能体规控工具箱**:
| 你已掌握的工具 | 它解决的问题 | 它的隐含假设 |
|---|---|---|
| A* / RRT / 图搜索 | 静态环境下找一条可行/最短路径 | 环境已知且静止 |
| MPC / 轨迹优化 | 滚动时域下优化一段最优轨迹 | 动力学与代价已知,环境可预测 |
| LQR / iLQR | 线性(化)系统的最优反馈控制 | 单一代价函数,单一决策者 |
| CBF / 安全滤波 | 保证状态留在安全集内(不碰撞) | 障碍的运动已知或可预测 |
| 卡尔曼滤波 / 贝叶斯估计 | 从噪声观测估计状态 | 不确定性来自随机噪声 |
| (若学过)MPPI / 采样式 MPC | 不可微代价/黑箱动力学下的求解 | 仍是单智能体优化 |
这套工具箱有一个**共同的、贯穿始终的隐含假设**:世界上只有一个决策者——你。环境要么静止(墙),要么按已知规律运动(可预测的障碍),要么是随机的(噪声)。你的全部任务,是在这个"被动的"世界里求一个最优解。
本质洞察(单智能体规控的世界是"被动"的):回看上表的"隐含假设"列,会发现它们都指向同一件事——环境不会因为你的决策而策略性地改变。墙不会因为你靠近而移动,噪声不会因为你的动作而针对你,可预测的障碍也只是按自己的规律走、不理会你。 在这个被动世界里,"最优"是良定义的:你优化你的代价,世界不还手。这就是为什么单智能体规控可以追求"唯一最优解"。 一句话:你已掌握的所有规控工具,都建立在"环境是被动的、不会策略性回应你"这个假设上——而博弈规划要做的,恰恰是打破这个假设,处理"环境里有会回应你的决策者"的情形。 这是承上启下的关键接缝:你的工具没有过时,但它们的假设需要被推广。
哪些能力能直接迁移,哪些会失效? 这决定了你学 G1–G4 时的心态——不是推倒重来,而是有保留地推广。
- 能直接迁移的(求解机器):iLQR 的线性化-迭代框架、LQR 的 Riccati 递推、增广拉格朗日处理约束、CBF 的安全集思想、贝叶斯估计——这些"求解机器"在博弈里几乎原样复用,只是从"一个 agent 的优化"变成"多个 agent 耦合的优化"。G2 的 iLQGames 本质就是 iLQR 的多人版,G4 的 CBF+博弈就是 CBF 的多人版。你的求解技术是资产,不是包袱。
- 会失效的(世界观):"存在唯一最优解"(博弈里是均衡,可能不唯一/不存在)、"预测他人后当固定障碍绕开"(博弈里会 frozen robot)、"代价函数是我给定的"(博弈里对手代价未知、要推断)。这三个失效的直觉,正好对应下面要讲的三大认知跨越。你的世界观需要升级。
多视角理解(学博弈 = 旧工具 + 新世界观):可以把学习博弈规划理解成一次"软件升级"——底层的求解库(iLQR、Riccati、CBF、贝叶斯)保留并复用,但上层的世界观模块(什么是解、如何对待他人、代价从哪来)需要替换。 这解释了博弈规划"既熟悉又陌生"的体验:你会看到大量眼熟的数学(线性化、乘子法、安全集),但它们被组织在一个陌生的框架里(均衡而非最优、耦合而非独立、推断而非给定)。 一句话:别因为"看到熟悉的 iLQR/CBF"就以为博弈是旧知识的简单重复,也别因为"均衡/读心这些陌生概念"就以为要从零学起——正确的姿态是"用熟悉的求解工具,去实现陌生的博弈世界观"。 带着这个姿态,G1–G4 既不会让你轻敌,也不会让你畏难。
阅读前自测:你准备好进入博弈规划了吗¶
这不是某一章的前置测验,而是**整个博弈方向的入门自查**。博弈规划重度依赖最优控制、概率、以及(G4)CBF 基础。下面 5 题对应进入 Part-G 所需的关键储备,答不出 ≥ 2 题,建议先补相应前置再开始 G1。
- (最优控制基础) 写出一个有限时域最优控制问题的标准形式(代价泛函 + 动力学约束)。什么是值函数 \(V(x)\)?Bellman 最优性原理说了什么?为什么"动态规划"能把一个序贯决策问题分解成递归子问题?(→ 最优控制 / 动态规划基础)
- (LQR,G1–G2 的基石) 写出离散时间 LQR 的 Riccati 递推。为什么线性动力学 + 二次代价下,最优控制是状态的线性反馈 \(u=-Kx\)?Riccati 方程是怎么从 Bellman 方程推出来的?(→ LQR;理解 G2 的耦合 Riccati 必需)
- (博弈论入门) 什么是 Nash 均衡?为什么它定义为"无人能单方面偏离获益"而不是"所有人都最优"?举一个纯策略 Nash 不存在、但混合策略 Nash 存在的例子。(→ 博弈论基础)
- (概率与估计) 写出贝叶斯公式。什么是最大似然估计(MLE)?给定一组带噪声的观测,如何从中反推产生它们的参数?(→ 概率论 / 估计理论;理解 G3 逆博弈必需)
- (CBF,G4 的前置) 什么是控制屏障函数(CBF)?条件 \(\dot h+\alpha(h)\ge0\) 保证了什么?为什么对控制仿射系统,这个条件能写成关于控制的线性不等式、从而构成一个二次规划?(→ 不确定性规划 U2 / 安全控制;理解 G4 必需,可在读 G4 时补)
答案要点(自评用): 1. \(\min_u \int_0^T \ell(x,u)\,dt + \Phi(x_T)\) s.t. \(\dot x=f(x,u)\);\(V(x)\) 是从状态 \(x\) 出发的最优代价(cost-to-go);Bellman 最优性原理:最优策略的任意尾段对其子问题仍最优,故 \(V\) 满足递归 \(V(x)=\min_u[\ell+V(f(x,u))]\),把全局优化分解成逐步的局部优化。 2. \(P_k=Q+A^\top P_{k+1}A-A^\top P_{k+1}B(R+B^\top P_{k+1}B)^{-1}B^\top P_{k+1}A\),\(K_k=(R+B^\top P_{k+1}B)^{-1}B^\top P_{k+1}A\);二次代价的值函数是二次型 \(V=x^\top P x\),对 \(u\) 求极小得线性反馈;Riccati 正是把二次型值函数代入 Bellman 方程后对 \(P\) 的递推。 3. Nash 均衡:一个策略组合,其中每个玩家在他人策略固定时无法单方面改变自己策略而获益;不是"所有人最优"因为各人目标可能冲突(你的最优常以他人受损为代价);石头剪刀布无纯 Nash(任何确定出法都被克制),但有唯一混合 Nash(各 1/3)。 4. \(P(\theta\mid D)\propto P(D\mid\theta)P(\theta)\);MLE:\(\hat\theta=\arg\max_\theta P(D\mid\theta)\),选使观测最可能的参数;反推参数即对似然(或后验)做优化。 5. CBF:刻画安全集 \(\mathcal{C}=\{h\ge0\}\) 的标量函数,存在控制使 \(\dot h+\alpha(h)\ge0\) 则 \(\mathcal{C}\) 前向不变(进去就出不来);对 \(f=f_0+g\,u\),\(\dot h=\nabla h\cdot(f_0+gu)\) 关于 \(u\) 线性,故"\(\dot h+\alpha h\ge0\)"是 \(u\) 的线性不等式,配二次目标即 CBF-QP。 全部答得清楚 → 直接进 G1;第 1-2 题卡壳 → 先补最优控制/LQR(G1-G2 全程依赖);第 5 题卡壳 → 可在读 G4 前补 CBF;第 3-4 题卡壳 → 补博弈论/估计基础,否则 G3 会很吃力。
如何使用本专题¶
博弈规划方向(Part-G)由 **5 个文件**组成,它们各司其职、互相引用,建议这样使用:
| 文件 | 角色 | 怎么用 |
|---|---|---|
| G0 总论(本章) | 入口地图 | 最先读。建立全局视野和核心心智模型,知道每章在整张图的位置。不含具体算法,约 1 小时读完。 |
| G1 微分博弈与 HJI | 理论底座 | 提供"博弈的数学语言"——值函数、HJI 方程、可达性。偏理论,是 G2 的基础。 |
| G2 实时博弈求解器 | 工程核心 | 把 G1 的理论变成能跑的求解器(iLQGames/ALGAMES)。全方向最核心、最该精读。 |
| G3 逆博弈与预测-规划一体化 | 感知-规划桥梁 | 处理"对手目标未知"——从观测反推对手代价,把预测和规划统一。 |
| G4 安全证书与 MARL | 扩展层 | 连接经典博弈与学习——CBF+博弈的硬安全、势博弈、PSRO、OpenSpiel。 |
| 附录 综合对比 | 出口整合 | 最后读。四章数学本质对比、论文精读路线、开源项目速查、与其他方向的衔接。 |
推荐路径:G0(地图)→ G1(理论)→ G2(核心工程)→ G3(推断)→ G4(安全/学习)→ 附录(整合)。 时间紧张的路径:G0 → G2(在 G2 里补最少够用的 LQ 博弈基础,跳过 G1 的 HJI 深入)→ G3 → G4,附录速查。 只关心某个应用的路径:自驾交互 → 重点 G2+G3;无人机竞速 → 重点 G2;多机协调/swarm → 重点 G4 的势博弈+GCBF+;棋牌/策略 AI → 重点 G4 的 PSRO+OpenSpiel。
一个使用建议:每章末尾都有"✅ 自测检查点"和"练习"。读完一章先合上文档自测——博弈规划的概念很容易"读懂了但没真懂"(尤其"均衡选择是设计决策"这类反直觉点),自测能逼出你以为懂其实没懂的地方。
预计阅读时间¶
| 模式 | 时间 | 说明 |
|---|---|---|
| 精读本总论(建立完整心智模型 + 技术全景) | 1–1.5 小时 | 读完能画出整个方向的知识地图 |
| 速读本总论(抓三大认知跨越 + 路线图) | 20–30 分钟 | 抓住"为什么学、学什么、怎么学" |
| 整个 Part-G(G0–G4 + 附录,精读 + 全部实验) | 8–10 周(全职等效约 2–2.5 个月) | 完成"能建模多智能体博弈、实现 iLQGames 求解器、理解安全+学习交界"的完整能力 |
本总论本身是导览性质,不含可运行代码与论文精读——那些在 G1–G4。本章的"产出"是认知地图,不是某个技能。
本方向大纲¶
这一节是博弈规划方向(Part-G)的完整大纲——既给课程层面的纲要(这个专题在整个课程里的位置、四章的结构化安排),也给内容层面的细目录(每章的小节清单)。前者帮你规划学习,后者帮你定位查阅。
专题定位¶
博弈规划是"经典规控范式横切专题层"的**专题之一**(与不确定性规划、时空联合规划并列为三大核心横切专题),面向**已完成 v8 SLAM 主线 + Part 0 公共基础 + 至少一个方向增量**、希望系统掌握**多智能体交互式决策**的工程师。
| 大纲元信息 | 内容 |
|---|---|
| 章节编号 | G1–G4 共 4 章 + G0 总论 + 附录,约 8–10 周(全职等效约 2–2.5 个月) |
| 前置假设 | v8 主线 + Part 0 公共基础 + 至少一个方向增量;建议先修不确定性规划 U2(鲁棒 MPC / CBF),因为 G4 的 CBF+博弈需要 CBF 基础 |
| 数据基础 | 基于 2026 年深度调研——覆盖 8 条技术路线、22+ 篇代表性论文、10+ 个开源项目、完整 MARL 交界分析 |
| 退出能力 | 能把真实多智能体交互场景建模成博弈、实现 iLQGames 实时求解器、从行为推断对手意图、并加硬安全兜底 |
| 风格 | 沿用统一的**八段式**章节结构(动机→反面→理论→代码→陷阱→练习→小结→延伸) |
四章纲要表(课程层面)¶
每章标注**复用范围**(✅ 全方向共享 / ⚪ 部分方向共享 / ❌ 特定方向),便于后续其他方向复用本专题内容:
| 章 | 主题 | 周数 | 核心内容 | 关键论文/工具 | 复用范围 | 文件 |
|---|---|---|---|---|---|---|
| G0 | 总论(本章) | 0.5 | 三大认知跨越、技术全景、学习路径 | — | ✅ 全方向共享 | 10_博弈规划总论.md |
| G1 | 微分博弈与 HJI 可达性 | 2 | Isaacs 方程、HJI PDE、可达性、LQ 博弈耦合 Riccati | Basar-Olsder、Mitchell-Bayen-Tomlin、helperOC | ⚪ 理论基础(安全验证共用) | 20_微分博弈与HJI.md |
| G2 | 实时博弈求解器 | 3 | iLQGames、ALGAMES、SE-IBR、GFNE/DG-SQP | Fridovich-Keil、Le Cleac'h、ilqgames | ✅ 全方向核心(自驾/竞速/HRI 都需要) | 30_实时博弈求解器.md |
| G3 | 逆博弈、Level-k 与预测一体化 | 2 | 逆博弈、有界理性、GameFormer、预测即均衡 | Peters、Tian、Huang(GameFormer) | ⚪ 自驾/HRI(与预测交界最深) | 40_逆博弈与预测规划.md |
| G4 | 博弈安全证书与 MARL | 2 | CBF+博弈、势博弈、PSRO、OpenSpiel | Wang-Ames-Egerstedt、GCBF+、Lanctot(PSRO) | ⚪ 多机协调/MARL(连接经典与学习) | 50_安全证书与MARL.md |
| 附录 | 综合对比与速查 | 0.5 | 四章对比、选型决策、论文路线、项目速查 | — | ✅ 全方向共享 | 60_综合对比与附录.md |
各章小节细目录(内容层面)¶
下面是 G1–G4 每章的小节清单(含难度 ⭐ 标记,★ 标注本章最关键/核心论文小节),方便你定位具体知识点、或回头查阅:
G1 微分博弈理论与 HJI 可达性(8 节) - §1.1 从最优控制到微分博弈:为什么需要博弈视角 ⭐⭐ - §1.2 零和微分博弈与 Isaacs 方程 ⭐⭐⭐ - §1.3 HJI 偏微分方程与粘性解:值函数为什么不可微 ⭐⭐⭐ - §1.4 可达性分析:BRS、BRT 与 reach–avoid ⭐⭐⭐ - §1.5 水平集数值方法:WENO 与 TVD-RK ⭐⭐⭐ - §1.6 LQ 博弈与耦合 Riccati ⭐⭐⭐ ★ 本章最关键 - §1.7 维度诅咒与三条绕行路 ⭐⭐⭐ - §1.8 追逃经典问题:Homicidal Chauffeur 与 Air3D ⭐⭐
G2 实时博弈求解器:iLQGames / ALGAMES / SE-IBR(8 节) - §2.1 Nash 均衡 vs Stackelberg 均衡 ⭐⭐ - §2.2 开环 Nash vs 反馈 Nash ⭐⭐⭐ - §2.3 iLQGames 算法 ⭐⭐⭐ ★ 本章重心 - §2.4 ilqgames C++ 源码精读:lq_solver.cc ⭐⭐⭐ - §2.5 ALGAMES:硬约束的博弈求解器 ⭐⭐⭐ - §2.6 SE-IBR:灵敏度增强的迭代最佳响应 ⭐⭐⭐ - §2.7 GFNE 与 DG-SQP:理论统一与工业级求解 ⭐⭐⭐⭐ - §2.8 综合对比与选型 ⭐⭐
G3 逆博弈、Level-k 与预测-规划一体化(4 节) - §3.1 逆博弈的形式化:从行为反推代价 ⭐⭐⭐ ★ 本章地基 - §3.2 Level-k 与认知层级:给有界理性建模 ⭐⭐⭐ - §3.3 GameFormer:把 Level-k 嵌进 Transformer ⭐⭐⭐ ★ 核心论文 - §3.4 预测-规划一体化:"预测即均衡" ⭐⭐
G4 博弈安全证书与 MARL 交界(5 节) - §4.1 CBF + 博弈:多智能体安全证书 ⭐⭐⭐ ★ 本章地基 - §4.2 势博弈与多机器人:分布式协调何时收敛 ⭐⭐⭐ - §4.3 MARL 三主线与 PSRO:从自博弈中学出均衡 ⭐⭐⭐ ★ 核心论文 - §4.4 OpenSpiel 架构与自博弈:操作博弈的统一框架 ⭐⭐ - §4.5 综合对比与设计空间:四类方法如何选
本质洞察(大纲的"难度分布"暗示了学习重心):扫一眼细目录的 ⭐ 分布,能读出整个方向的重心在哪——这比平均用力更高效。 ⭐⭐⭐⭐ 只有一处(G2 §2.7 GFNE/DG-SQP,理论最深);带 ★ 的关键小节集中在 G1 §1.6(耦合 Riccati)、G2 §2.3(iLQGames)、G3 §3.1/§3.3(逆博弈/GameFormer)、G4 §4.1/§4.3(CBF+博弈/PSRO)——这六个 ★ 小节是整个方向的"承重墙"。 一句话:学 Part-G 时间有限,就优先攻六个带 ★ 的核心小节(耦合 Riccati、iLQGames、逆博弈、GameFormer、CBF+博弈、PSRO)——它们撑起整个方向的骨架,其余小节是围绕它们的铺垫与延伸。 大纲的难度标记不是装饰,是告诉你"劲该往哪使"的地图。
核心研究力量索引¶
本专题的科研脉络梳理自以下核心实验室/研究者的公开论文与开源代码,了解它们有助于你追踪某条技术路线的源头与最新进展:
| 实验室 / 组 | 代表人物 | 主要贡献方向 | 对应章节 |
|---|---|---|---|
| UC Berkeley HJReachability | Tomlin、Fridovich-Keil | HJI 可达性、iLQGames | G1, G2 |
| Stanford ILIAD | Sadigh、Dragan | 自驾交互博弈、人机协作 | G2, G3 |
| Stanford MSL | Schwager、Manchester | 多机协调、覆盖控制 | G2, G4 |
| Princeton | Fisac | 层级博弈、安全交互 | G2, G3 |
| UT Austin / TU Delft | Fridovich-Keil、Peters、Alonso-Mora | iLQGames、逆博弈 | G2, G3 |
| UC Berkeley MPC Lab | Borrelli、Zhu | DG-SQP、博弈 MPC | G2 |
| CMU REx Lab | Manchester、Le Cleac'h | ALGAMES、轨迹优化博弈 | G2 |
| Google DeepMind | Lanctot | OpenSpiel、PSRO | G4 |
| Georgia Tech | Egerstedt、Notomista | CBF+博弈、多机安全 | G4 |
| UMich | Tian、Vasudevan | Level-k、有界理性 | G3 |
| Waymo Research | Huang | GameFormer、预测-规划一体化 | G3 |
| Caltech AMBER | Ames | 控制屏障函数(CBF) | G4 |
| MIT REALM | Fan、Zhang | GCBF+、神经安全证书 | G4 |
三大认知跨越:从单智能体规控到博弈规控¶
这是整个总论的核心。博弈规划之所以难,不在数学(数学是 G1–G2 的事),而在它要求你完成三次**认知重构**——放弃三个在单智能体规控里根深蒂固、却在博弈里完全失效的直觉。如果你只记住本章一件事,就记这三大跨越。它们是你读 G1–G4 时反复要回到的"北极星"。
跨越一:从"最优"到"均衡"¶
单智能体的世界观:存在唯一最优。 你做过的所有规控——A*、RRT、MPC、LQR——都建立在一个隐含假设上:存在一个"最好"的解。\(\min_u J(x,u)\) 有一个(凸时唯一的)全局最优;你的全部工作是把它找出来。"最优"是一个**客观存在的、可比较的、唯一的**目标。
博弈的世界观:没有最优,只有均衡。 一旦有第二个决策者,"最优"这个词就失去了意义——因为"对我最优"取决于"对方怎么做",而对方怎么做又取决于"我怎么做"。这是一个循环,没有单方面的"最优"可言。博弈论给出的替代概念是 Nash 均衡:一个策略组合,其中**每个人在其他人策略固定时,都无法单方面改善自己**。注意这个定义的微妙——它不是"所有人都最优"(那通常不可能,因为目标冲突),而是"没人有动机单方面偏离"。
本质洞察(均衡是"稳定"不是"最好"):Nash 均衡刻画的是**稳定性**而非**最优性**。在均衡点,没人想动——但这不意味着这个点对任何人是"最好的",甚至不意味着它对集体是好的。 经典反例是囚徒困境:双方都坦白是唯一 Nash 均衡(各自单方面抵赖只会更糟),但双方都抵赖明明对两人都更好——均衡点恰恰是集体次优的。 一句话:"最优"问"什么解最好","均衡"问"什么状态没人想打破"——博弈规控求的是后者,这是与单智能体规控最根本的世界观差异。 接受"我能算出的是一个稳定点,不是一个最好的解",是进入博弈思维的第一步。
更难的部分:均衡可能不唯一、不存在、不稳定。 单智能体凸优化的最优解又唯一又一定存在,这惯坏了我们。博弈里三件事同时崩塌: - 不唯一:一个博弈可能有多个 Nash 均衡。两辆车在窄路相遇,"我让你先过"和"你让我先过"都是 Nash 均衡——博弈论本身**不告诉你该选哪个**。这就是"均衡选择问题",它是设计决策,不是数学结果。 - 不存在(纯策略下):石头剪刀布没有纯策略 Nash(任何确定出法都被克制)。只有允许"混合策略"(按概率出)才保证均衡存在(Nash 定理)。 - 不稳定:即使均衡存在,让玩家反复"对对方当前策略做最优响应"这个最自然的学习过程,也可能永远震荡不收敛(石头剪刀布的最佳响应就是无限循环)。
本质洞察(均衡选择是设计决策,不是数学结果):这是博弈规控最反直觉、也最实用的一点。当一个交互博弈有多个均衡时,博弈论数学不会告诉你该收敛到哪个——选哪个均衡是工程师必须注入的设计决策(通过初始化、正则、优先级、社会规范等)。 自驾里的"谁先过路口"、人机协作里的"谁主导",都是均衡选择。系统行为的好坏,很大程度上取决于你如何引导它选到"好的"均衡。 一句话:单智能体规控里你设计代价函数、然后数学给你唯一答案;博弈规控里你设计代价函数、数学给你一族均衡,你还得再设计一个"选哪个"的机制——多出来的这层设计,是博弈工程的核心难点,也是 G2 反复出现的"均衡选择"主题的根源。
这次跨越贯穿全方向:G1 用 HJI 刻画双人零和博弈的"博弈值"(零和博弈的均衡是唯一的,所以 G1 相对干净);G2 求一般和博弈的 Nash,立刻撞上均衡选择和不稳定问题;G4 的 MARL 把"均衡"推广到 CCE,并用各种机制(PSRO 的种群、CFR 的 no-regret)逼近它。
跨越二:从"预测-然后-规划"到"预测即均衡"¶
单智能体管线的标准做法:先预测,后规划。 面对动态环境,传统自驾/机器人管线是一条流水线:感知 → 预测(用一个 predictor 预测他人未来轨迹)→ 规划(把预测的轨迹当成移动障碍,规划一条避开它的路)。这条管线清晰、模块化、好工程化,是工业界的主流。
它的致命缺陷:frozen robot 问题。 这条管线有一个根本矛盾——它**预测他人轨迹时,没有考虑 ego(自己)的行为会影响他人**。但现实中他人会对你做出反应:你往前挪,对方会让;你停住,对方会抢。当 predictor 把他人预测成"不受你影响的固定轨迹"时,在密集交互场景(如汇入车流),predictor 会预测"他人会一直开、不会给你让路",于是规划器算出"我无法安全汇入、只能停下等待"——而你一停,按理对方该让了,但管线已经把你冻在那里了。这就是 frozen robot 问题:过度保守的预测导致机器人僵死,明明有交互空间却不敢动。
博弈的解法:预测和规划是同一件事。 博弈规划的核心洞察是——他人的"预测",就是博弈均衡中他人的最优响应。你不需要一个独立的 predictor 模块去"预测"他人,因为他人的行为本就是博弈的一部分:在均衡里,他人的策略是对你的策略的最优响应,而你的策略也是对他人的最优响应,两者**同时**求解。预测即均衡——预测不再是规划的前置输入,而是和规划在同一个博弈里联立解出。
本质洞察(耦合 vs 解耦:frozen robot 的病根):frozen robot 的病根,是把本该**耦合**的"预测"和"规划"人为**解耦**成了流水线两段。 解耦管线里,预测是"开环"的——它假设他人轨迹与 ego 无关,于是无法表达"他人会给我让路"这种依赖 ego 行为的响应。博弈把它们重新耦合:他人的轨迹是 ego 策略的函数,ego 的轨迹是他人策略的函数,互为因果、联立求解。 一句话:"先预测后规划"把交互双方的相互依赖切断了,于是只能假设最坏(他人不让),导致 frozen robot;"预测即均衡"恢复了这个相互依赖,于是能算出"我进则你让"的交互解——这是博弈规划相对传统管线最实际的价值。 这个跨越在 G3 最为核心(GameFormer 就是"预测+规划"一体化的代表),它把预测从一个独立模块,变成博弈均衡的一个分量。
跨越三:从"我的代价已知"到"对手的代价需推断"¶
单智能体:代价函数由你设计。 在单智能体规控里,代价函数 \(J(x,u)\) 是你作为设计者写下的——你想要快就加时间惩罚,想要省能耗就加控制惩罚。代价是**已知的输入**,优化是求解。
博弈:对手的代价是未知的。 博弈规划里,你的代价你知道,但**对手的代价 \(J_i\) 你不知道**——那辆抢行的车,它是急着赶时间(激进型)还是谨慎的新手(保守型)?它的代价函数权重你看不见。而要算博弈均衡,你**必须**知道所有玩家的代价(均衡是所有人代价的联合不动点)。这就引出一个单智能体里不存在的问题:从观测到的行为,反推对手的代价函数。这叫"逆博弈"(inverse game)或博弈版的逆强化学习(IRL)。
双层结构:先推断,再求均衡。 于是博弈规划的完整问题是一个双层结构:**外层**从对手的历史行为反推它的代价参数(逆博弈/MLE/贝叶斯推断),**内层**用推断出的代价求博弈均衡(正向博弈)。这比单智能体的"给定目标求最优"复杂一个量级——你得先"读心"(推断对手想要什么),再"应对"(求交互均衡)。
本质洞察(逆博弈 = 给机器装上"心智理论"):人类交互时本能地在做一件事——从对方的行为推测对方的意图(他踩刹车,说明他要让;他加速,说明他要抢)。心理学叫"心智理论"(Theory of Mind)。逆博弈就是这件事的数学化:代价函数是机器版的"意图",从行为反推代价就是机器版的"读心"。 这把博弈规划和认知科学、和大模型的 ToM 研究连了起来(G4 延伸阅读里的"ToM via LLMs")。 一句话:单智能体规控不需要读心(代价是你自己定的);博弈规控必须读心(对手的代价藏在它的行为里,要推断)——这层"推断他人意图"的能力,是交互智能区别于单体智能的标志,也是 G3 的全部主题。 Level-k 的递归信念("我以为你以为我以为……")正是把这种读心做到了多层。
多视角理解(三大跨越其实是同一件事的三个侧面):把三大跨越放在一起看,会发现它们指向同一个根本转变——从"世界是给定的"到"世界含有其他心智"。 跨越一(最优→均衡):因为世界里有别的决策者,"最优"才让位于"均衡"。 跨越二(预测后规划→预测即均衡):因为别的决策者会响应你,"预测"才必须和"规划"耦合。 跨越三(已知代价→推断代价):因为别的决策者有自己的、你看不见的目标,才需要"推断"。 一句话:三大跨越的共同根源,是承认"环境里的他人不是物体而是心智"——一旦接受这点,最优变均衡、预测变耦合、已知变推断,三个转变都是这个根本承认的必然推论。 这就是博弈规控的世界观:你不再是在一个被动的世界里求最优,而是在一个充满其他能动者的世界里,推断、博弈、达成均衡。
概念预备:你会反复遇到的几种"均衡"¶
跨越一说"博弈求的是均衡",但"均衡"不是一个单一概念——Part-G 里你会遇到好几种均衡,它们对应不同的交互结构。先在这里把它们一次性辨清,读 G1–G4 时遇到就不会混淆。不需要记住数学定义(那是各章的事),只需建立"它们分别刻画什么交互"的直觉。
| 均衡类型 | 刻画什么交互 | 直观理解 | 主要出现 |
|---|---|---|---|
| Nash 均衡 | 各方**同时**决策、地位对等 | 没人能单方面偏离而获益(路口对等的车互相博弈) | G1, G2, G4 |
| 广义 Nash 均衡(GNE) | 同时决策 + 共享约束(如不能撞) | Nash 均衡 + 各方可行域被共享约束耦合 | G2, G4(CBF-QP=GNE) |
| Stackelberg 均衡 | 有先后:leader 先动、follower 后应 | 领导者预判跟随者的反应再决策(主车影响人类司机) | G2-G3, G4(Stackelberg RL) |
| 反馈 Nash vs 开环 Nash | 是否随状态实时调整策略 | 反馈=每步看着当前状态决策;开环=一开始定好整条策略 | G1, G2 |
| 相关均衡(CCE) | 大博弈、需可计算的均衡 | 比 Nash 弱但多项式可算,n 人一般和博弈用它 | G4(PSRO/JPSRO) |
| 混合策略均衡 | 纯策略均衡不存在时 | 按概率随机出招(石头剪刀布的 1/3 均匀) | G1, G4(CFR/PSRO) |
系统性分类(均衡按"三个问题"区分):六种均衡看似繁杂,但只由三个问题区分开。 问题一:同时还是先后? 同时决策 → Nash 系(Nash/GNE/反馈 Nash);有先后 → Stackelberg。这是地位是否对等。 问题二:有没有共享约束? 无 → 普通 Nash;有(不能撞等) → 广义 Nash(GNE)。这是可行域是否耦合。 问题三:要精确 Nash 还是可计算的弱均衡? 小博弈求精确 Nash;大博弈(n 人一般和)退而求其次用相关均衡(CCE,可多项式计算)。这是精确性与可计算性的权衡。 一句话:辨别一个博弈该用哪种均衡,问三件事——同时还是先后(Nash vs Stackelberg)、有无共享约束(Nash vs GNE)、要精确还是要可算(Nash vs CCE)。 这三个问题就能在六种均衡里定位。Part-G 各章会在具体场景里反复用到它们:G1 的零和 Nash、G2 的反馈 Nash 与 GNE、G3 的 Stackelberg、G4 的 GNE 与 CCE——遇到时回这张表对一下,就不会混。
对比性思维(均衡 vs 最优:再次强调一个易混点):初学者最容易把"求均衡"误当成"求一个让所有人都满意的最优解"——这是错的。 均衡刻画的是"稳定"(没人想单方面偏离),不是"满意"(对所有人都好)。囚徒困境的 Nash 均衡(双方坦白)对两人都不是最好的,但它稳定——这恰恰说明均衡 ≠ 集体最优。 一句话:"均衡"回答"什么状态没人想打破",不回答"什么状态对大家最好"——这两个问题的答案常常不一致(囚徒困境就是经典的不一致),别把均衡浪漫化成"皆大欢喜的解"。 这是跨越一的反复强调,因为它实在太容易被旧直觉带偏。
一张"翻译词典":单智能体概念 ↔ 博弈对应概念¶
三大认知跨越是"为什么",这张表是"怎么对应"——它把你已熟悉的单智能体概念,逐一映射到博弈里的对应物。这是承上启下最实用的工具:读 G1–G4 遇到陌生的博弈概念时,回查这张表,从你已知的单智能体版找到锚点,能极大降低理解成本。建议读 G1 前先扫一遍,读各章时随时回查。
| 单智能体规控(你已知) | 博弈规控(对应概念) | 关键差异 | 出现章节 |
|---|---|---|---|
| 最优解 \(\min_u J\) | Nash 均衡 / GNE | 从"唯一最优"到"可能不唯一/不存在的稳定点" | 全部 |
| 值函数 \(V(x)\)(cost-to-go) | 博弈值(零和)/ 各玩家值函数 | 从一个值到多个耦合的值 | G1 |
| HJB 方程 | HJI 方程 | 多了一个对抗方的 min/max | G1 |
| 可行性 / 安全集 | 可达集 / 避免集 | 安全要考虑"对手会主动逼近危险" | G1, G4 |
| LQR Riccati 递推 | 耦合 Riccati(多个玩家的 Riccati 联立) | 从一个 Riccati 到块耦合 Riccati | G1, G2 |
| iLQR(迭代 LQ) | iLQGames(迭代 LQ 博弈) | LQ 子问题从单人变多人耦合 | G2 |
| 增广拉格朗日轨迹优化 | ALGAMES(约束博弈求解) | 从一个优化到耦合的多个优化(GNE) | G2 |
| 约束 \(g(x)\le0\) | 共享约束(shared constraint) | 一个约束同时绑定多个玩家 → GNE | G2, T 线 |
| 序贯凸优化 / SQP | DG-SQP / 灵敏度最佳响应 | 每轮要对"他人的响应"求灵敏度 | G2 |
| 代价函数(你给定) | 对手代价(未知,要推断) | 从"已知输入"到"待估参数" | G3 |
| 最大似然估计 / 贝叶斯估计 | 逆博弈 / 贝叶斯逆博弈 | 估计的"参数"是对手的代价函数 | G3 |
| 逆强化学习(IRL) | 逆博弈(博弈版 IRL) | 从"学单 agent 奖励"到"学博弈中各方代价" | G3 |
| 轨迹预测(独立模块) | 预测即均衡 | 预测不再独立,是博弈均衡的分量 | G3 |
| CBF / CBF-QP(单机安全) | CBF+博弈 / GCBF(多机安全证书) | min-norm QP 的解成为 GNE | G4 |
| 单 agent RL(DQN/PPO) | 多智能体 RL(CTDE/MAPPO/PSRO) | 环境非平稳(他人也在学) | G4 |
| 贪心 \(\max_a Q\)(Q-learning) | Nash 值(Nash-Q) | 用 stage game 的 Nash 替代 max | G4 |
| MPPI / 采样式 MPC | 博弈 MPPI / 多智能体采样 | 采样要覆盖多 agent 的联合动作 | G2(与 MPPI 线交叉) |
系统性分类(这张表按"求解机器 vs 世界观"分两类):表里的对应关系,其实可以归成两类,对应"承上"节讲的"能迁移的"和"会失效的"。 求解机器类(Riccati、iLQR、增广拉格朗日、SQP、贝叶斯估计、CBF-QP、MPPI):这些行的"关键差异"都是"从单人到多人耦合"——求解技术几乎原样复用,只是问题维度从一个 agent 变成多个耦合。这类你可以快速上手。 世界观类(最优解→均衡、代价已知→待推断、预测独立→预测即均衡):这些行的"关键差异"是概念性的范式转变——它们没有单智能体的直接对应,是博弈引入的全新东西。这类需要你真正完成认知跨越。 一句话:这张翻译词典的上半(求解机器)让你"快速复用旧技能",下半(世界观)提醒你"哪些是必须新建立的认知"——读 G1–G4 时,遇到求解机器类的概念可以轻松带过,遇到世界观类的概念则要慢下来、对照三大跨越细想。 区分这两类,是高效学完 Part-G 的关键。
路线图:四章的逻辑链¶
骨架里那张路线图给了"每章讲什么",但更重要的是**为什么是这个顺序**——每一章都在解决前一章遗留的问题。理解这条逻辑链,你就不会把 G1–G4 当成四个孤立专题,而看到一条层层递进的主线:理论 → 实时化 → 推断 → 安全与学习。
你现在的位置:单智能体规控(MPC/LQR/CBF)都假设"他人是可预测的障碍"
│
│ 缺口:没有"博弈"的数学语言——无法刻画"双方都在最优"
▼
┌─────────────────────────────────────────────┐
│ G1 微分博弈与 HJI:博弈的理论底座 │
│ 提供值函数、HJI 方程、可达性——博弈的语言 │
│ 遗留问题:HJI 维度诅咒,无法实时、无法多人 │
└─────────────────────────────────────────────┘
│ 缺口:理论方程算不动,机器人跑不起来
▼
┌─────────────────────────────────────────────┐
│ G2 实时博弈求解器:把理论变成 kHz 实时 │
│ iLQGames/ALGAMES——局部近似 + 实时求 Nash │
│ 遗留问题:要求"对手代价已知",但现实未知 │
└─────────────────────────────────────────────┘
│ 缺口:对手想要什么?代价函数从哪来?
▼
┌─────────────────────────────────────────────┐
│ G3 逆博弈与预测一体化:推断对手代价 │
│ 逆博弈/Level-k/GameFormer——从行为反推意图 │
│ 遗留问题:推断可能错,错了会碰撞;规模受限 │
└─────────────────────────────────────────────┘
│ 缺口:推断错了怎么兜底?上千 agent 怎么办?
▼
┌─────────────────────────────────────────────┐
│ G4 安全证书与 MARL:硬安全 + 大规模学习 │
│ CBF+博弈/势博弈/PSRO/OpenSpiel │
│ 连接经典博弈与学习,给推断错误兜底硬安全 │
└─────────────────────────────────────────────┘
G1 → G2:从"算不动的理论"到"实时求解"。 G1 的 HJI 方程是博弈的"麦克斯韦方程组"——理论上完备(给出全局博弈值和精确安全证书),但有维度诅咒:状态每多一维,计算量指数爆炸,三四维以上就算不动了,更别说多个 agent。G2 的任务是把 G1 的理论"实时化":用迭代 LQ 近似(iLQGames)或增广拉格朗日(ALGAMES),放弃全局最优、换取局部 Nash 的 kHz 级实时求解。G1 给精确但算不动,G2 给近似但跑得动——这是从 G1 到 G2 的核心权衡,也呼应单智能体规控里"HJB 精确 vs MPC 实用"的同一主题。
G2 → G3:从"已知对手代价"到"推断对手代价"。 G2 的求解器有一个隐含前提:所有玩家的代价函数都已知(均衡是所有人代价的联合不动点,不知道代价就算不了均衡)。但这正是跨越三的问题——对手的代价现实中是未知的。G3 的任务是补上这个前提:用逆博弈从对手的历史行为反推它的代价(外层),再喂给 G2 的求解器求均衡(内层)。同时 G3 用"预测即均衡"(跨越二)消除了 frozen robot。G2 假设你已读懂对手,G3 教你如何读懂对手。
G3 → G4:从"软安全"到"硬安全",从"少数 agent"到"大规模"。 G3 留下两个缺口。其一,推断可能错——逆博弈推断的代价不准、Level-k 估错层级,会让"基于均衡的规划"算出不安全的动作;G3 的安全是"软安全"(基于对手预测,预测错则失效)。其二,规模受限——G2/G3 的求解器在少数 agent 时漂亮,但几百上千 agent 时不可行。G4 同时补这两个缺口:用 CBF+博弈提供**硬安全**(不依赖对手模型正确性,无论对手怎么动都保证不碰),用 GCBF+/势博弈/PSRO 扩展到**大规模**多智能体,并连接到 MARL(从自博弈中学均衡)。G3 给"大多数时候安全 + 少数 agent",G4 给"可证明永不碰撞 + 上千 agent + 学习"。
本质洞察(四章是"同一个问题"的逐步现实化):把这条链倒过来看会更清楚——四章其实是"多智能体交互决策"这一个问题,在**逐步逼近现实约束**。 G1 在理想条件下(低维、双人、零和、代价已知)给出理论答案;G2 放松"算得动"(实时化);G3 放松"代价已知"(推断);G4 放松"模型一定对"(硬安全兜底)和"agent 少"(大规模)。 一句话:每一章都是在前一章的基础上,砍掉一个不现实的假设、补上一块现实的拼图——从黑板上的理论,一步步走到能上路、能读心、能兜底、能规模化的真实系统。 这就是为什么必须按 G1→G4 顺序学:每一章都依赖前一章建立的基础,跳过任何一环,后面的"为什么需要它"就失去了上下文。
一个贯穿全书的例子:无保护左转¶
抽象的章节逻辑容易记不住,给你一个具体的、贯穿四章的场景作锚点——自动驾驶的无保护左转(你的车要左转穿过对向直行车流,没有左转信号灯保护)。这是博弈规划最经典的试金石,它把四章的作用落到一个你能想象的画面上。读 G1–G4 时,可以反复回到这个场景问"这一章让我在左转里多做了什么"。
场景:你(ego)想左转,对向有一辆直行车(opponent)正驶来。你们的目标冲突——你想尽快转过去,它想保持速度直行。谁先过?这取决于双方的相互判断和试探。这正是一个交互博弈。
单智能体规控会怎么做(也是为什么不够):用 predictor 预测对向车轨迹 → 把它当移动障碍 → 规划一条避开它的左转路径。问题来了:predictor 预测"对向车会保持速度直行"(它不知道你的左转意图会让对向车减速礼让),于是规划器算出"我无法安全左转、只能一直等"——frozen robot。你的车僵在路口,明明对向车会让,但你不敢动。这就是引入博弈的动机。
四章如何逐步把这个左转做好:
| 章节 | 在左转场景里多做了什么 | 对应的能力 |
|---|---|---|
| G1 | 给出"左转博弈"的数学语言:把它建模成双方的微分博弈,用值函数刻画"在当前态势下我能否安全转过去",用可达性分析判断"哪些态势是绝对危险的(必须避免)" | 理论刻画 + 安全边界 |
| G2 | 把这个博弈**实时求解**:用 iLQGames 在每个控制周期算出双方的 Nash 均衡轨迹——"如果我加速抢,对方会怎么反应;如果我等,又会怎样",kHz 级实时,能真正跑在车上 | 实时算出交互均衡 |
| G3 | 解决"对向车到底想不想让":用逆博弈从对向车的减速/加速行为,反推它是激进型(要抢)还是保守型(会让);用"预测即均衡"消除 frozen robot——把对向车的反应作为博弈的一部分联立求解,于是能算出"我缓缓前探,对方见状减速,我顺势转过去"的交互解 | 推断对手意图 + 消除僵死 |
| G4 | 兜底"万一推断错了":如果 G3 误判了对向车意图(以为它会让、其实它要抢),CBF 安全层**强制刹停**,保证不碰撞——无论对向车实际怎么动,硬安全约束都不让碰撞发生 | 推断错误的硬安全兜底 |
本质洞察(一个左转场景,照见整个博弈方向):这个左转例子最有价值的地方,是它让你看到四章**不是四个独立技术,而是处理同一个交互的四个递进层次**。 G1 告诉你"这个交互在数学上是什么、什么是安全边界";G2 让你"能实时算出交互该怎么走";G3 让你"能读懂对方想干什么、并据此自然交互";G4 在你"读错了的时候保命"。 缺任何一层,左转都做不好:没 G1 没有理论保证,没 G2 算不动跑不了,没 G3 会 frozen robot 或误判,没 G4 一旦推断错就撞车。 一句话:把"无保护左转"这个场景记在心里,读每一章时问"它让我的左转能力前进了哪一步"——四章抽象的逻辑链,会在这个具体场景里变得可触摸。 这也是 Part-G 项目甲(自动驾驶交互博弈规划器)的雏形:它正是把 G2 求解 + G3 推断 + G4 安全层叠成一个完整的左转/汇入/路口交互系统。
读完 Part-G,你能做什么。 用左转场景作标尺,学完四章你应当能: - 把一个真实交互场景(左转、汇入、变道、人机协作)建模**成博弈(定义玩家、代价、约束)——来自 G1 的理论语言; - 搭一个**实时博弈求解器,在每个周期算出交互均衡,跑在仿真甚至实车上——来自 G2 的 iLQGames/ALGAMES; - 从对手行为**在线推断**它的意图/激进度,并用预测即均衡消除 frozen robot——来自 G3 的逆博弈/Level-k; - 给系统加一层**硬安全兜底**,让推断错误时也保证不碰撞,并把方法扩展到多车/swarm——来自 G4 的 CBF+博弈/GCBF+。 这四样能力叠起来,就是一个能处理多智能体交互的完整规划器——这是 Part-G 要带你抵达的终点。
八条技术路线全景¶
博弈规划不是单一技术,而是一个有 8 条主要技术路线的领域(本专题基于覆盖这 8 条路线、22+ 篇代表论文的调研)。这张全景图帮你看清"每个具体方法属于哪条路线、解决什么子问题",避免只见树木不见森林。
| 技术路线 | 核心思想 | 代表方法/工作 | 主要章节 |
|---|---|---|---|
| 微分博弈 / HJI 可达性 | 用 PDE 刻画连续时间博弈的值函数与安全集 | Isaacs、Basar-Olsder、HJI 可达性(Mitchell-Bayen-Tomlin) | G1 |
| 迭代 LQ 博弈求解 | 把非线性博弈局部线性化、迭代解 LQ 博弈 | iLQGames(Fridovich-Keil)、ILQGames.jl | G2 |
| 约束博弈求解 | 用增广拉格朗日/内点法处理博弈中的硬约束 | ALGAMES(Le Cleac'h)、DG-SQP、GFNE | G2 |
| 灵敏度最佳响应 | 迭代最佳响应 + 灵敏度,实车实时博弈 | SE-IBR(Wang、Spica),无人机竞速 | G2 |
| 逆博弈 / 可微博弈 | 从观测行为反推对手代价(博弈版 IRL) | Peters 逆博弈、可微博弈、MaxEnt 博弈(Mehr) | G3 |
| 有界理性 / Level-k | 用递归层级建模"人不是完全理性的" | Level-k(Tian/UMich)、贝叶斯逆博弈 | G3 |
| 预测-规划一体化 | 用神经网络端到端学"博弈+预测" | GameFormer(Huang/Waymo)、隐式博弈 | G3 |
| 博弈安全 + MARL | CBF+博弈的硬安全、势博弈、从自博弈学均衡 | GCBF+、势博弈、PSRO、OpenSpiel | G4 |
系统性分类(三个层次组织八条路线):八条路线可以按"解决什么层次的问题"归成三组。 理论层(微分博弈/HJI):回答"博弈的数学语言是什么"——值函数、均衡、安全集的严格定义。是地基,一条路线。 求解层(迭代 LQ、约束博弈、灵敏度最佳响应):回答"代价已知时怎么实时算出均衡"——三条路线都在攻"实时求解",区别在处理约束的方式(无约束 iLQ / 增广拉格朗日 / 最佳响应迭代)。 现实层(逆博弈、Level-k、预测一体化、安全+MARL):回答"如何应对现实的不完美"——对手代价未知(逆博弈)、对手非理性(Level-k)、预测与规划脱节(一体化)、模型可能错且规模大(安全+MARL)。 一句话:八条路线 = 一条理论地基 + 三条求解方法 + 四条现实应对——理论层定义问题,求解层在理想假设下解问题,现实层逐个砍掉理想假设。 你遇到任何一个博弈规划的具体方法,先问它属于哪一层、哪条路线,就能快速定位它在整张图的位置和它要解决的子问题。
多视角理解(博弈求解 ↔ 单智能体最优控制的同构):求解层那三条路线,其实都能在你已熟悉的单智能体最优控制里找到"同构的影子",这个对照能极大降低学习成本。 迭代 LQ 博弈(iLQGames)↔ 单智能体的 iLQR——都是"非线性问题局部线性化、迭代解 LQ 子问题",区别只在 LQ 子问题从"一个 Riccati"变成"耦合的多个 Riccati"。 约束博弈(ALGAMES)↔ 单智能体的增广拉格朗日轨迹优化——都是用乘子法处理硬约束,区别在原问题从"一个优化"变成"耦合的多个优化(GNE)"。 灵敏度最佳响应(SE-IBR)↔ 单智能体的序贯凸优化——都是迭代求解 + 灵敏度信息,区别在每轮要对"他人的响应"做灵敏度。 一句话:博弈求解器几乎都是单智能体最优控制求解器的"多人推广"——把"一个 agent 的优化"换成"多个 agent 耦合的优化(Nash/GNE)",求解机器(线性化、乘子法、灵敏度)大体不变。 所以学 G2 时,最快的路径是先回忆对应的单智能体方法(iLQR、增广拉格朗日),再看"多人耦合"带来了什么新东西(耦合 Riccati、共享约束、对手灵敏度)——站在已知上学未知。
博弈规划与其他方向的关系¶
博弈规划不是一座孤岛。它和规控的其他方向有深刻的、往往是数学层面的联系。理解这些联系,能让你把博弈规划放进整个规控知识体系,也能在跨方向迁移时事半功倍。
| 方向 | 与博弈规划的关系 | 在哪一章体现 |
|---|---|---|
| 不确定性规划 | 不确定性规划处理"世界模型不准/感知不完美"(噪声),博弈规划处理"他人是有目标的决策者"(策略)——两者正交但可组合。贝叶斯博弈 = 不完全信息博弈 ⊆ POMDP 的博弈版;CVaR 可嵌入博弈目标;CBF+博弈(G4)直接需要 U2 的 CBF 基础 | G3(贝叶斯博弈↔POMDP)、G4(CBF↔GNE) |
| 时空联合规划 | 时空走廊里多 agent 的共享碰撞约束 \(\|p_i(t)-p_j(t)\|\ge d\),本质就是 Rosen 1965 广义 Nash 均衡的"共享约束";CBS/MAPF 在博弈视角下是 multi-agent best response | G2(GNE 共享约束)、G4(势博弈↔覆盖) |
| 采样式 MPC(MPPI) | MPPI 提供不需要梯度的求解范式,可服务于博弈求解中"代价不可微/动力学黑箱"的场景——多智能体 MPPI → 博弈 MPPI | G2(采样式博弈求解) |
| 多机器人协作 | 博弈是多机协作的理论框架之一:非合作多机 = 博弈论框架;G4 的 MARL(CTDE/MAPPO/QMIX)正是多机协作线的核心;势博弈是分布式协调的基石 | G4(MARL、势博弈) |
| 交互预测一体化 | GameFormer 是"博弈+预测"一体化的代表;逆博弈是 IRL 的博弈版——博弈规划与预测、模仿学习深度交叉 | G3(GameFormer、逆博弈) |
| 强化学习 / 深度学习 | G4 的 MARL 建在 RL 基础上;GCBF+ 用 GNN、PSRO 用深度 RL 训练 oracle——博弈是连接经典控制与现代学习的桥 | G4(MARL、GCBF+、PSRO) |
本质洞察(博弈是规控的"交互层"通用语言):上表的规律是——博弈规划不是和其他方向并列的"第 N 个方向",而是横切所有涉及"多智能体交互"场景的通用语言层。 时空规划的共享约束、不确定性规划的贝叶斯博弈、多机协作的非合作协调、预测的一体化——只要场景里有"多个能动者相互影响",博弈就是描述它的自然语言。 一句话:当你的问题从"单个机器人 vs 环境"变成"多个决策者相互影响"时,无论你原来在哪个方向,都会进入博弈的领地——这就是为什么博弈规划被定位为"横切专题",它是规控里专门处理"交互"这一维度的工具箱。
进入博弈规划前,先校准几个常见认知误区¶
博弈规划的初学者常带着单智能体规控的直觉,踩中一些反复出现的认知误区。在 G1 之前先校准它们,能让你少走弯路。这些误区会在 G1–G4 的"陷阱"小节里以具体形式反复出现,这里先做总览预防。
误区一:以为博弈规划是要算出"最好的交互方案"。 校准:博弈规划算的是**均衡**(稳定点),不是"最好"(最优)。均衡可能集体次优(囚徒困境)、可能不唯一(需你选)。放弃"求最优"的执念,接受"求一个稳定且尽量好的均衡",是入门第一关。
误区二:以为对手会"完全理性"地按 Nash 均衡行动。 校准:真实的人(和很多 agent)是**有界理性**的——他们不做完美的 Nash 计算,而是做有限步的推理(Level-k)。假设对手完全理性,在和人交互时往往预测失准(G3 §3.2 的核心)。要给"对手没那么聪明"留余地。
误区三:以为"预测他人 + 避开"就够了,不需要博弈。 校准:这正是 frozen robot 的病根(跨越二)。在密集交互场景,"预测后避开"会过度保守、僵死;只有把预测和规划耦合成博弈(预测即均衡),才能算出"我进则你让"的交互解。
误区四:以为有了博弈求解器(如 iLQGames)就万事大吉。 校准:求解器只解决"代价已知时求均衡"。现实中对手代价未知(要 G3 推断)、推断可能错(要 G4 的 CBF 兜底)、均衡可能不唯一(要均衡选择机制)。求解器是核心,但不是全部——它两端各有一大块问题(推断、安全)。
误区五:以为博弈规划只对"对抗"场景有用(如竞速、对战)。 校准:博弈同样描述**合作**(势博弈、共享奖励的 MARL)和**混合**(自驾既竞争路权又合作避撞)场景。Nash 均衡、势博弈、CCE 覆盖了从纯对抗到纯合作的全谱。别把"博弈"窄化为"对抗"。
多视角理解(这些误区的共同根源:用单体直觉套交互问题):五个误区其实是同一个认知惯性的不同表现——把单智能体规控的直觉(有最优、对手是物体、预测够用、求解器万能、世界是对抗或不是)硬套到交互问题上。 校准它们的统一钥匙,就是前面的三大认知跨越:接受"均衡非最优"破误区一,接受"对手是有限理性的心智"破误区二和五,接受"预测即均衡"破误区三,接受"求解只是双层结构的内层"破误区四。 一句话:所有这些误区都源于还没完成三大认知跨越——一旦真正接受"环境里的他人是心智不是物体",这些误区会自然消解。 所以如果你发现自己反复踩这些坑,回到三大认知跨越重读,那才是病根。
启下:带着什么问题读每一章¶
总论的最后一项任务,是把你**送进** G1–G4。下面给每一章一份"读前预热"——进入时该带着什么问题、会获得什么能力、它兑现了哪个认知跨越、读完该能回答什么。把它当成每章的"导航卡片",读前看一眼,能让你在技术细节里始终知道"我在求什么"。
进入 G1(微分博弈与 HJI)前—— - 带着的问题:两个目标对立的决策者(追与逃、拦截与突防),怎么用数学刻画"双方都最优"的结果?什么是博弈的"值"?如何严格地说"这个状态对我是安全的"? - 会获得:博弈的理论语言——值函数、HJI 偏微分方程、可达集(哪些状态无论如何都会进入危险)。这是后面三章的数学地基。 - 兑现哪个跨越:跨越一(最优→均衡)的最纯粹形式。零和博弈的均衡是唯一的(一方所得即另一方所失),所以 G1 相对"干净"——先在最简单的博弈里建立"博弈值"的直觉,再去 G2 面对一般和博弈的均衡选择难题。 - 读完该能回答:HJI 方程和单智能体的 HJB 方程差在哪?为什么可达性分析能给出安全证书?为什么 HJI 有维度诅咒、三四维以上就算不动(这正是 G2 要解决的)? - 承上提示:HJI 是 HJB(你可能在最优控制里见过)的博弈推广——带着 HJB 的直觉进去,看"多了一个对抗的 min/max"带来什么。
进入 G2(实时博弈求解器)前—— - 带着的问题:G1 的理论方程算不动,怎么让博弈求解跑在真实机器人上(kHz 级)?多辆车在路口交互,如何实时算出它们的 Nash 均衡?硬约束(不能撞、速度上限)怎么处理? - 会获得:能落地的博弈求解器——iLQGames(迭代 LQ 博弈)、ALGAMES(增广拉格朗日处理约束)、SE-IBR(灵敏度最佳响应)。这是全方向**最核心、最该精读**的一章。 - 兑现哪个跨越:跨越一的工程化。一般和博弈的均衡可能不唯一、学习可能不收敛——G2 会让你第一次直面"均衡选择是设计决策"的实际后果。 - 读完该能回答:iLQGames 和 iLQR 的关系是什么(一个 Riccati vs 耦合 Riccati)?为什么博弈的均衡求解会不收敛、怎么缓解?给定一个交互场景,你能否搭出一个实时求解器? - 承上提示:G2 的求解器几乎都是你熟悉的单智能体方法(iLQR、增广拉格朗日、SQP)的"多人耦合版"——先回忆单智能体版,再看"耦合"带来的新东西。
进入 G3(逆博弈与预测-规划一体化)前—— - 带着的问题:G2 假设对手代价已知,但现实中那辆抢行的车,它到底想要什么?如何从对手的历史行为反推它的目标?如何避免"先预测后规划"导致的 frozen robot? - 会获得:推断对手意图的能力——逆博弈(从行为反推代价)、Level-k(建模有界理性)、GameFormer(端到端学"博弈+预测")。 - 兑现哪个跨越:跨越二(预测即均衡)和跨越三(推断代价)。这一章是两个跨越的主场——你会看到预测如何融进博弈、代价如何从行为里被反推出来。 - 读完该能回答:逆博弈和逆强化学习(IRL)什么关系?Level-k 的"层级"是什么意思、为什么人不是完全理性的?为什么"预测即均衡"能消除 frozen robot? - 承上提示:逆博弈的内核是你熟悉的 MLE/贝叶斯估计——只不过估计的"参数"是对手的代价函数。带着估计理论的直觉进去。
进入 G4(安全证书与 MARL)前—— - 带着的问题:G3 推断对手可能推断错,错了会撞车,怎么兜底?少数 agent 的求解器扩展不到上千个 swarm,怎么办?博弈和深度强化学习如何结合(AlphaStar、Pluribus 是怎么做的)? - 会获得:硬安全 + 大规模学习——CBF+博弈(不依赖对手模型的硬安全)、势博弈(分布式协调收敛)、PSRO/OpenSpiel(从自博弈学均衡)。 - 兑现哪个跨越:三大跨越的综合 + 延伸。它把"博弈"从少数 agent 的连续控制,推广到大规模、可学习、有硬安全保证的多智能体系统。 - 读完该能回答:CBF-QP 为什么等价于一个广义 Nash 均衡?势博弈为什么保证分布式学习收敛?PSRO 如何把 Double Oracle 推广到深度 RL?离散博弈(OpenSpiel)和连续博弈(iLQGames)如何分工? - 承上提示:G4 的 CBF+博弈直接用你在不确定性规划 U2 学的 CBF——带着 CBF 的安全集思想进去,看它如何与博弈缝合。
本质洞察(每章都是"带着上一章的遗留问题"进入的):把四张导航卡片连起来看,会发现一个递进模式——每一章的"带着的问题",恰好是上一章的"遗留缺口"。 G1 留下"算不动"→ G2 带着"如何实时化"进入;G2 留下"对手代价未知"→ G3 带着"如何推断"进入;G3 留下"推断会错、规模受限"→ G4 带着"如何兜底、如何规模化"进入。 一句话:学 Part-G 的正确节奏,是每读完一章就明确记下"它解决了什么、又留下了什么",那个'留下的'就是你带进下一章的问题——这条问题链,比任何章节目录都更能让四章在你脑中连成一体。 这也是为什么本总论反复强调逻辑链:博弈方向不是四个并列专题,而是一个问题被层层推进的连续故事。
入门推荐资源:进入 G1 前的"预热读物"¶
这里只给**入门级**的少数几个起点——帮你在正式啃 G1–G4 前先建立直觉、降低门槛。完整的论文精读路线(必读 10 篇 + 推荐 8 篇,配读法)和开源项目清单在**附录**里,本节不重复,只挑"最适合作为第一步"的资源,标注难度。
先建直觉的(★ 入门,读前预热): - 博弈论入门:任意一本《博弈论》入门教材的前几章(Nash 均衡、纯/混合策略、囚徒困境、零和博弈)——⭐ 入门。读它是为了让"均衡""最佳响应"这些词在读 G1 前就不陌生。若只想最快建立直觉,看一篇讲"囚徒困境与 Nash 均衡"的科普长文即可。 - 微分博弈的故事:Isaacs 追逃博弈(homicidal chauffeur / 杀手司机问题)的科普介绍——⭐ 入门。这个"司机追行人"的经典问题,是理解 G1 微分博弈最直观的入口,比直接看 HJI 方程友好得多。 - frozen robot 问题:Sadigh 等 2016(RSS)或任意一篇讲"自动驾驶为什么不能只预测后避让"的博客/讲座——⭐⭐ 初级。它把 G3 的核心动机讲成一个生动的故事,读完你会对"为什么需要博弈"有切身感受。
想先看代码跑起来的(★★ 初级,动手预热): - iLQGames.jl(Julia)——⭐⭐ 初级。它能 10 行跑一个 2-player 博弈,是"亲手看到博弈均衡长什么样"最快的方式。读 G2 前先跑通它,G2 的 iLQGames 就有了实感。 - OpenSpiel(Python 绑定)——⭐⭐ 初级。跑通它自带的石头剪刀布/Kuhn poker 例子,能直观理解"博弈""策略""均衡"在代码里如何表示。读 G4 前的好预热。
理解整个领域脉络的(★★★ 中级,建立全貌): - 博弈规划综述类文章:搜索 "game-theoretic planning autonomous driving survey" 或 "differential games robotics review"——⭐⭐⭐ 中级。读一篇综述能让你在钻进 G1–G4 细节前,先看到整个领域的地图(和本总论互补:本总论给认知框架,综述给文献全貌)。
本质洞察(入门资源的作用是"降低首次接触的陌生感"):上面这些资源都不是用来"学会"什么的——那是 G1–G4 的事。它们的唯一作用,是**让你在正式学习前,先和核心概念混个脸熟**。 博弈规划的劝退点,往往不是数学难,而是"一上来全是陌生词"(Nash 均衡、HJI、最佳响应、frozen robot)带来的陌生感。先用科普/故事/能跑的代码把这些词变得熟悉,正式学习时的认知负担会小得多。 一句话:进入 G1 前花一两天预热这些入门资源,不是浪费时间,而是用"低强度的熟悉"换"高强度学习时的低门槛"——尤其推荐先跑通 iLQGames.jl 看一眼博弈均衡的样子,那个直观印象会让 G2 的所有公式都有了依托。 预热与正式学习的分工,正如本总论(认知地图)与 G1–G4(具体内容)的分工。
小结:你现在该带着什么进入 G1¶
读完本总论,你应当带着这样一张"认知地图"进入 G1:
一个根本转变:从"单个机器人在被动世界里求最优",到"多个决策者在彼此影响的世界里达成均衡"。环境里的他人不是障碍物,是有自己目标的心智。
三大认知跨越(反复回到的北极星):(1) 从最优到均衡——求稳定点不是求最好,均衡选择是设计决策;(2) 从预测后规划到预测即均衡——把预测和规划耦合,消除 frozen robot;(3) 从已知代价到推断代价——博弈要先读心(推断对手意图)再应对。
一条逻辑链(四章为何这个顺序):G1 给理论语言(算不动)→ G2 实时化(要求代价已知)→ G3 推断对手代价(推断可能错、规模受限)→ G4 硬安全兜底 + 大规模学习。每章砍掉前一章一个不现实的假设。
一个全景:八条技术路线分三层——理论层(HJI)定义问题、求解层(iLQ/约束/SE-IBR)在理想假设下解问题、现实层(逆博弈/Level-k/一体化/安全+MARL)逐个应对现实不完美。
五个要避的误区:别求最优(求均衡)、别假设对手完全理性(有界理性)、别只预测后避开(要博弈耦合)、别以为求解器万能(两端有推断和安全)、别把博弈窄化为对抗(也含合作与混合)。
带着这张地图,G1 的 HJI 方程、G2 的 iLQGames、G3 的逆博弈、G4 的 CBF+博弈,就不再是孤立的技术,而是这张地图上各就各位的拼图。
下一步:进入 G1 微分博弈与 HJI 可达性——博弈的理论底座。它会把本总论"跨越一(最优→均衡)"具体化为双人零和博弈的数学:HJI 方程如何刻画博弈值、可达性如何给出安全证书。读 G1 时,记得反复回到本章的三大认知跨越——它们是你在技术细节里不迷路的北极星。
博弈规划总论完结。 本章不教任何具体算法,只给你一张进入博弈方向的认知地图:从单智能体最优到多智能体均衡的三大认知跨越、G1→G4 的逻辑链、八条技术路线的全景、以及五个要校准的认知误区。接下来的 G1–G4 会把这张地图上的每一块填充成可推导、可实现、可验证的具体内容;学完后的附录会把四章横向整合成对比与速查。现在,带着"环境里的他人是心智不是物体"这个根本认知,进入 G1。