4. 协同决策方法流程

多代理协同决策不是“把多个模型接在一起”这么简单。它本质上是一条从问题定义到可验证评估的工程流水线:先把驾驶任务抽象成可计算的问题,再设计状态与动作空间,用奖励函数刻画协同目标,选择适配的决策算法,最后用评估指标闭环验证。任何一环设计不当,都会导致“单车聪明、整体拥堵”或“训练收敛、实车失效”。本章按这条主线展开,并给出可落地的设计要点与常见误区。

一、问题建模:把驾驶协同翻译成数学对象

问题建模决定后续所有设计的边界。对驾驶智能体而言,核心是把多车交互场景抽象为多智能体决策问题,通常形式化为马尔可夫博弈或部分可观测随机博弈:

M = <N, S, {A_i}, P, {R_i}, O, γ>
N      : 代理数量(自车 + 周边车辆/行人/路侧单元)
S      : 全局状态空间
A_i    : 第 i 个代理的动作空间
P      : 状态转移概率 P(s' | s, a_1..a_N)
R_i    : 第 i 个代理的奖励函数
O      : 各代理的局部观测
γ      : 折扣因子

建模时需要明确三件事:代理边界(哪些实体参与决策、哪些作为环境)、协同目标(通行效率、安全性、舒适性、能耗的优先级)、信息结构(集中式、分布式还是混合式)。例如交叉口无保护左转场景,若把对向直行车视为环境而非代理,就会丢失博弈交互,导致策略过于激进。

建模阶段建议先写“场景契约”:参与方、观测范围、通信假设、决策频率(如 10 Hz)、安全约束。契约不清,后面所有参数都无从调优。

二、状态空间与动作空间设计

状态空间要同时满足可观测性与充分性。常用状态包括:自车运动学量(位置、速度、航向、加速度)、周边代理相对量(相对距离、相对速度、TTC)、道路结构(车道线、路口拓扑、信号相位)以及历史轨迹片段。动作空间则分为离散(车道保持、左转、右转、加速、减速)与连续(纵向加速度、前轮转角、期望速度)两类。

设计原则是:状态要“够用不冗余”,动作要“可执行且平滑”。若动作空间包含急打方向,策略容易学到不舒适甚至危险的解;若状态缺少 TTC 等风险量,代理无法预判冲突。下表给出典型设计对照:

设计维度常见选择协同影响
状态:自车运动位置、速度、航向、加速度决定个体可控性
状态:交互风险TTC、THW、相对距离决定避撞与让行判断
状态:道路与信号车道拓扑、信号相位、限速决定合规与路权
动作:纵向加速度或期望速度影响舒适与能耗
动作:横向曲率或转向角影响轨迹平滑与稳定
动作:高层意图让行/抢行/换道影响博弈协同

三、奖励函数设计:把“协同”写进回报

奖励函数是协同行为的指挥棒。多代理场景下,奖励通常由个体项与协同项组成:个体项包括到达目标、碰撞惩罚、舒适度惩罚;协同项包括全局通行效率、队列长度、冲突消解、礼让行为等。常见形式为加权和:

R_i = w1 * R_progress      # 前进效率
    + w2 * R_safety        # 碰撞/TTC 惩罚
    + w3 * R_comfort       # 加加速度、转向平滑
    + w4 * R_rule          # 限速、信号、路权
    + w5 * R_coop          # 协同让行、全局通行

权重不是拍脑袋定的。安全项通常设为大负值硬约束,效率与舒适做软权衡;协同项要避免“过度礼让导致死锁”。建议采用分层奖励:底层保安全,中层保合规与舒适,上层优化全局效率。若所有目标混在一个标量里,调参会变成“按下葫芦浮起瓢”。

误区:只给自车奖励、把其他车当环境。这样训练出的策略在交互密集场景中会表现出“自私震荡”,例如反复试探、逼停他人。协同项必须显式建模其他代理的收益或全局指标。

四、决策算法选择与评估指标

算法选择取决于问题结构:集中式可用联合动作空间搜索或集中训练分散执行(CTDE);分布式可用独立学习加通信;规则与学习混合则适合安全兜底。常见路线包括:多智能体强化学习(MADDPG、QMIX、MAPPO)、博弈搜索(MCTS、纳什均衡近似)、优化方法(MPC、滚动时域)以及行为树/状态机。工程上常采用“规则保底 + 学习优化”的混合架构。

评估指标必须与建模目标对齐,至少覆盖安全、效率、舒适、协同、鲁棒五个维度:

  • 安全:碰撞率、最小 TTC、危险暴露时长;
  • 效率:平均通行时间、延误、吞吐量;
  • 舒适:加速度/加加速度均值与峰值、转向抖动;
  • 协同:死锁率、让行成功率、全局队列长度;
  • 鲁棒:不同密度、不同通信丢包率下的性能衰减。

评估要分离线回放、闭环仿真与实车/硬件在环三层。离线指标好看不代表闭环稳定,闭环稳定也不代表实车可用。建议固定随机种子集与场景库,做消融实验,确认每个模块的边际贡献。

五、案例:无保护左转的协同决策流程

以城市交叉口无保护左转为例:问题建模为 3 代理博弈(自车、对向直行、横向来车);状态含相对距离、相对速度、TTC、信号相位;动作空间为纵向加速度与横向曲率;奖励中安全项权重最高,协同项奖励“在安全间隙内完成左转且不迫使对向车急刹”;算法采用 MAPPO 集中训练、分散执行,并用 MPC 做安全兜底;评估指标关注左转成功率、冲突次数、对向车减速度峰值。该流程可复用到匝道汇入、环岛通行等场景。

六、复盘:流程中最容易出错的三个点

  1. 建模过简:把交互方当环境,导致策略在密集场景失效;
  2. 奖励错配:协同项缺失或权重失衡,出现死锁或自私行为;
  3. 评估单一:只看成功率,不看安全与舒适,上线后暴露长尾风险。
一句话总结:问题建模定边界,状态动作定能力,奖励函数定行为,算法定上限,评估指标定可信度。五者必须形成闭环,协同决策才可工程化落地。
驾驶多代理协同决策方法流程 问题建模 → 状态/动作空间 → 奖励函数 → 算法选择 → 评估闭环 ① 问题建模 代理边界 / 协同目标 马尔可夫博弈 ② 状态空间 运动 / 风险 / 道路 可观测且充分 ③ 动作空间 纵向 / 横向 / 意图 可执行且平滑 ④ 奖励函数 安全 / 效率 / 协同 分层加权 ⑤ 决策算法选择 MADDPG / QMIX / MAPPO MPC / MCTS / 规则兜底 ⑥ 评估指标 安全 / 效率 / 舒适 协同 / 鲁棒 评估反馈:调参 / 重设奖励 / 修正建模 三层验证: 离线回放 闭环仿真 硬件在环 / 实车 关键指标:碰撞率 · 最小 TTC · 平均通行时间 · 加加速度 · 死锁率 · 通信丢包衰减

把上述流程固化为团队的设计检查单:每次新增场景,先确认代理边界与协同目标,再核对状态动作是否覆盖风险与合规,随后审查奖励权重是否分层,最后用三层评估验证。只有流程闭环,多代理协同决策才能从论文指标走向可交付的驾驶能力。