Gen-Drive 采用生成(扩散)模型来取代传统范式中的预测规划模型。关键的区别在于,自车智体并非与场景隔绝;相反,它被视为一个不可分割的部分,所有智体的行为都相互依赖。为了利用这个生成模型进行规划,设计一个场景评估(奖励)模型。该模型使用精选的成对人类偏好数据集进行训练,使其能够直接对生成的场景(规划)进行评分,并促进选择最佳和符合上下文的决策。此外,利用奖励模型来微调扩散生成过程,使其朝着生成高回报规划的方向发展。RL 微调步骤可以提高整体规划性能并减少大量采样的需要。其 NN 架构如下所示:
场景生成器
对于当前时间步的初始驾驶场景,考虑 N 个目标(包括自车)和 M 个地图元素,跟踪这些目标在 T/h 个时间步内的历史轨迹。编码器的当前场景输入包括目标轨迹 O 和地图折线 M ,其中 N/p 是航路点的数量,D/o 和 D/p 是每个点的维度特征。
编码器
。当前场景输入最初通过时间轴自注意 Transformer 层对目标轨迹进行编码,得到 Oe,并通过具有最大池化的 MLP 对地图数据进行编码,得到 Me 。它们被连接起来形成初始编码。采用以查询为中心的 Transformer 编码器 [10]、[16]、[21] 来融合场景元素的特征并生成综合场景条件编码 C 。
降噪器
。扩散过程在所有感兴趣目标 N/a 的联合动作空间 a 中进行,动作由加速度和偏航角速度组成。噪声直接添加到动作序列中。给定噪声输入 a/k ,其中 k 是噪声水平,T/f 是未来的时间步长,以及场景条件 C,用具有自注意和交叉注意层的降噪 Transformer 来预测降噪动作序列 ˆa/0。对于自车智体,提供了额外的路线信息,并使用了额外的交叉注意层来建模自车-路线关系。
生成
。未来场景(联合目标动作)从随机高斯噪声 a/K ∼ N (0, I) 开始生成,其中 K 是扩散步骤的总数。随后,每个扩散步骤 k 从转换动态中进行采样 [36]–[38]。
通过迭代反转扩散步骤,获得最终的去噪联合动作输出 a/0。随后,使用动力学模型 f 将目标动作转换为状态 x/0 = f(a/0),从而导出状态。该状态包含目标的 x/y 坐标、航向和速度。
场景评估器
场景评估器将扩散生成器生成的 S 个未来场景作为输入,这些场景可以通过从一批高斯噪声中启动来并行生成。这些生成场景的结构为 S ,评估器的另一个输入是矢量图 M。这些未来场景使用以查询为中心的 Transformer 编码器进行编码,类似于历史场景的编码,从而得到场景特征表示 Se 。随后,用从场景编码 Se 中提取的自车智体未来或规划编码 Ae 作为查询,并使用 Transformer 解码器中的场景编码作为K和 V,得出未来场景以规划为中心的特征 A 。请注意,Transformer 解码器会分别关注每个场景中 (Na + M) 个元素。在该特征张量上附加两个 MLP 头,分别重建自车智体的规划轨迹并输出不同生成场景(规划轨迹)的分数。自我规划重建头作为辅助任务添加,以增强稳定性和有效性。
训练基扩散模型
基扩散模型经过训练,可以在各种噪声水平和场景条件下从带噪声的关节轨迹输入中恢复干净的轨迹。在每个训练步骤中,都会采样噪声水平 k 和高斯噪声来扰乱原始动作轨迹。由于该模型预测场景级关节轨迹,因此所有目标轨迹都会受到相同噪声水平的影响。