自动驾驶轨迹预测中的对抗样本

Motivation

轨迹预测攻击的两点不同:①攻击后的预测轨迹符合物理规律。(约束速度和加速度)②攻击时目标方程的确定(将不同的度量方法的误差作为优化目标)

轨迹攻击示意图-欺骗换道

图中AV车是被攻击的对象,其轨迹预测模型将对其他车OV的轨迹产生错误的预判,如上图中将直行预测为变道,使得AV车做出错误的决策。

Problem Formulation

轨迹预测符号表示

时间序列示意图

$s_{t_1:t_2}^i=\left{s_{t_1}^i,\ldots,s_{t_2}^i\right}$表示物体$i$在时间$t_1$到时间$t_2$间的状态变化序列

$H_t=\left{H_t^i=s_{t-L_I+1:t}^i\mid i\in\left[1,N\right]\right}$表示历史轨迹状态(即为输入)

$F_t=\left{F_t^i=s_{t+1:t+L_O}^i\mid i\in\left[1,N\right]\right}$表示真实未来轨迹(即为真实值)

$P_t=\left{P_t^i=s_{t+1:t+L_O}^i\mid i\in\left[1,N\right]\right}$表示预测未来轨迹(即为预测值)

误差度量方法

  1. 平均位移误差(Average displacement error,ADE)
  2. 最后位移误差(Final displacement error,FDE)
  3. 平均前/后/左/右侧位移误差

总共六种误差度量方法 以下误差计算方法: \(D\left(t,n,R\right)=\frac{1}{L_O}\sum_{\alpha=t+1}^{t+L_O}\left(p_\alpha^n-s_\alpha^n\right)^T\cdot R\left(s_{\alpha+1}^n,s_\alpha^n\right)\)

其中 $p$ 和 $s$ 表示为预测和实际未来位置信息。 $R(·) $生成特定方向的单位向量。

对抗样本生成

对抗扰动

单帧和多帧攻击示意图

对抗扰动:通过在正常轨迹上添加扰动,从而影响预测轨迹的空间坐标和计算空间位置的关键参数,例如速度 单帧攻击:只根据 $L_I$ 长度的历史进行攻击 多帧攻击:根据 $(L_I,L_I+1,…,L_I+L_P−1) $这总数为 $L_P$ 次的多次攻击

评价函数

\[L\left(n,f\right)=-\frac{1}{L_P}\sum_{\alpha=L_I}^{L_I+L_P-1}f\left(P_\alpha^n,F_\alpha^n\right)\]

其中$f$表示为六种误差度量方法的计算函数。

扰动约束

为了使生成的扰动符合现实的物理规律,且不做出危险的驾驶行为,需要对扰动生成进行约束。

约束1:为现实的物理属性设定边界:遍历测试数据集中的所有轨迹计算速度、横/纵向加速度、横/纵向加速度的导数这三个参数的均值 $μ$ 和方差 $σ$ 。将生成扰动的这三个参数控制在$μ±3 σ$ 范围内

约束2:轨迹位置的扰动边界:将最大偏差设置为1米,数据集中城市车道宽度为3.7米,汽车宽度为1.7米。将最大偏差设置为1米,汽车将不会驶向另外一条车道。

目标函数

扰动,目标车辆的历史轨迹,扰动约束函数

\[max\theta\mathrm{\ s.t.\ }C\left(H^n+\theta\Delta\right)\land0\le\theta\le1\]

在保证$0\le\theta\le1$且生成的扰动$H^n+\theta\Delta$满足扰动约束函数$C$ 。计算最大的$θ$。

防御方法

  • 数据增强:在训练数据集中添加经过扰动的数据,不过不采用对抗训练。
  • 平滑轨迹:在训练和测试阶段使用轨迹平滑。由于不稳定的速度和加速度是扰动的关键,通过平滑轨迹可以一定程度缓解这种不稳定。
  • 推理阶段扰动检测和平滑:通过SVM和计算对抗样本的均值方差等方法判断是否为扰动轨迹。

个人感悟

  • 本文的创新点在于对抗样本+轨迹预测。
  • 虽然方法不新,但是结合全新的方向,还是有可能发顶会的。



Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • 自动驾驶关于对抗攻击的鲁棒性研究
  • 雕刻字自动排样算法
  • 触觉信息采集
  • FSR402压力传感器Unity演示
  • PyTorch Geometric(PyG) 库的安装