HyperAIHyperAI

Command Palette

Search for a command to run...

基于强化学习与对手位姿估计的自主超车轨迹优化

Matej Rene Cihlar Luka Šiktar Branimir Ćaran Marko Švaco

摘要

车辆超车是自动驾驶汽车中最复杂的驾驶操作之一。为实现最优的自主超车,驾驶系统依赖多传感器融合技术,以保障轨迹优化的安全性并提升超车效率。本文提出了一种面向多智能体自主赛车环境的强化学习机制,该机制基于 LiDAR 与深度图像数据,实现了超车轨迹的优化。所开发的强化学习智能体利用预生成的赛车线数据及传感器输入,计算实现最优超车所需的转向角与线速度。系统中,LiDAR 结合二维检测算法,深度相机则采用基于 YOLO 的目标检测算法,用于识别待超越车辆及其位姿。进一步地,系统通过无迹卡尔曼滤波(UKF)融合 LiDAR 与深度相机的检测数据,从而提升赛车场景下对对手位姿的估计精度,并优化超车轨迹。实验结果表明,所提算法在仿真与真实世界实验中均成功完成了超车操作,其位姿估计的均方根误差(RMSE)在 x 和 y 方向分别为 0.0816 米和 0.0531 米。

一句话总结

萨格勒布大学的研究人员提出了一种基于 PPO 的多智能体强化学习框架,用于优化赛车场景中的自主超车。该系统通过无迹卡尔曼滤波融合 LiDAR 和 YOLOv8 深度数据,实现鲁棒的对手位姿估计,并在 F1TENTH 平台上成功完成了真实世界的超车操作,超越了单智能体的局限性。

主要贡献

  • 本文提出了一种基于 PPO 的强化学习智能体,该智能体在将预生成的赛车线数据与实时传感器输入相结合的多智能体赛车环境中,计算最优超车所需的转向和速度。
  • 实现了一种传感器融合系统,结合 2D LiDAR 检测与基于 YOLOv8 的深度相机数据,并采用无迹卡尔曼滤波生成鲁棒的对手位姿估计,以用于轨迹规划。
  • 在真实 F1TENTH 平台上的实验验证表明,该系统在仿真和物理测试中均成功实现了超车操作,在 (x, y) 坐标下的位姿估计均方根误差(RMSE)为 (0.0816, 0.0531) 米。

引言

多智能体赛车环境中的自主超车需要在动态对抗条件下平衡速度与安全性,这对轨迹优化提出了精确要求。以往的方法通常依赖遵循静态赛车线的单智能体强化学习,或仅依赖仿真而缺乏真实世界验证;同时,现有的传感器融合方法尚未完全适应自主赛车这一高风险场景。作者利用了一个经 PPO 训练的强化学习智能体,该智能体融合了通过无迹卡尔曼滤波处理的 2D LiDAR 和深度相机数据,以获取实时的对手位姿估计。该系统使车辆能够计算用于超车操作的最优转向和速度指令,团队在真实 F1TENTH 平台上成功验证了该系统,且位姿估计误差较低。

Top Figure

方法

所提出的系统集成了两个主要组件:基于传感器融合的位姿估计和专为超车操作设计的强化学习算法。物理实现依赖于配备 Jetson Xavier NX 计算机进行处理的 F1TENTH 平台。传感器输入由 Hokuyo 2D LiDAR 和 Intel RealSense D435 深度相机提供。最终的硬件配置如下图所示。

对手位姿估计是相对于 RL 智能体利用机载传感器进行的。LiDAR 数据通过聚类和矩形拟合进行目标检测,并根据上一时间步的估计值选择最可能的对手聚类。同时,深度相机利用 RGB 和深度数据。对于 RGB 处理,YOLOv8 目标检测模型用于识别对手车辆的边界框。距离估计利用边界框高度,通过倒数函数计算。

distance=abheight+b+cdistance = \frac { a } { b \cdot \mathrm{height} + b } + cdistance=bheight+ba+c

该方程中的参数是通过实验确定的。由于对手始终从侧面被观测,高度变化主要与距离相关而非朝向,因此该方法依然有效。偏航角利用阿克曼转向模型进行近似。深度数据从边界框中心像素位置提取,并添加平均偏移量以考虑对手车上的测量点。这些测量值通过无迹卡尔曼滤波(UKF)进行融合。UKF 状态向量定义为 [x,y,vx,vy][x, y, v_x, v_y][x,y,vx,vy],采用恒速模型。由于传感器以不同的发布速率和格式运行,滤波器在每次测量时进行更新,并应用静态变换以处理传感器坐标系。

对于决策过程,作者实现了一种多智能体强化学习(MARL)算法来学习超车操作。选择近端策略优化(PPO)算法,通过截断损失函数确保训练稳定性。

LCLIP(θ)=E^t[min(rt(θ)A^t,clip(rt(θ),1ϵ,1+ϵ)A^t)]L ^ { C L I P } ( \theta ) = \widehat { \mathbb { E } } _ { t } [ \operatorname* { m i n } ( r _ { t } ( \theta ) \widehat { A } _ { t } , \mathrm { c l i p } ( r _ { t } ( \theta ) , 1 - \epsilon , 1 + \epsilon ) \widehat { A } _ { t } ) ]LCLIP(θ)=Et[min(rt(θ)At,clip(rt(θ),1ϵ,1+ϵ)At)]

其中,rt(θ)r_{t}(\theta)rt(θ) 表示新旧策略之间的概率比,A^t\hat{A}_{t}A^t 是时间步 ttt 的优势估计,ϵ\epsilonϵ 表示截断范围超参数。神经网络架构由一个全连接前馈网络组成,包含两个隐藏层,每层 256 个神经元,激活函数为 ReLU。输入层大小为 162,对应观测大小;输出层大小为 2,激活函数为 tanh。在多智能体设置中,对手的动作由相同的神经网络策略生成,两个智能体的数据均用于训练过程。

环境使用 F1TENTH gym 进行仿真,该仿真将车辆建模为简单的自行车模型,并通过 2D 占用栅格地图处理碰撞。仿真复现了真实世界的 LiDAR 传感器,每次扫描在 270 度范围内包含 1080 个点。观测空间包括智能体 LiDAR 数据、两辆车的里程计以及未来航点。为降低复杂度,每 10 个 LiDAR 点采样一次,最终得到 108 个点来描述周围障碍物。航点源自使用最小曲率方法生成的预计算赛车线。动作空间包含连续的转向角和线速度指令。转向角缩放至 ± 0.34 弧度,线速度范围为 0 到 3 米/秒。奖励信号是七个分量的加权和,包括速度、进度、超车状态、赛车线遵循度、避障、航向误差和平顺性。

实验

  • 利用 UKF 进行对手位姿估计,通过融合相机和 LiDAR 数据成功跟踪对手,提供了鲁棒的跟踪能力,防止 LiDAR 锁定错误物体,并能在传感器速率较慢的情况下实现 10 Hz 的连续更新。
  • UKF 在 y 方向上的表现优于单个传感器,尽管在 x 方向上不如单独使用 LiDAR 准确,且估计误差随距离增加而增大。
  • 部署在 F1TENTH 车辆上的真实世界 RL 智能体在与训练环境相似的条件下成功执行了无碰撞的超车操作,尽管真实世界的噪声和延迟放大了轨迹振荡。
  • 该智能体无法泛化到显著不同的赛道几何结构(如更小的环形赛道),突显了成功部署对训练条件的依赖性。

用 AI 构建 AI

从创意到上线——通过免费 AI 协同编码、开箱即用的环境和最优惠的 GPU 价格,加速您的 AI 开发。

AI 协同编码
开箱即用的 GPU
最优定价

HyperAI Newsletters

订阅我们的最新资讯
我们会在北京时间 每周一的上午九点 向您的邮箱投递本周内的最新更新
邮件发送服务由 MailChimp 提供