论文总结
Zhang Z, Liniger A, Dai D, et al. End-to-end urban driving by imitating a reinforcement learning coach[C]//Proceedings of the IEEE/CVF international conference on computer vision. 2021: 15222-15232.
1 Summary
模仿学习中的expert如果由人手工设计,效果不佳。作者使用RL训练出一个expert(输入为BEV图像,输出为动作的Beta分布),在具有很好驾驶性能的同时,也能为IL模型提供更好的监督训练(KD思想)。
2 Model Architecture
2.1 RL Coach
- policy network
π
θ
(
a
∣
i
R
L
,
m
R
L
)
\pi_\theta(\mathbf{a}|\mathbf{i}_\mathbf{RL},\mathbf{m}_\mathbf{RL})
πθ(a∣iRL,mRL)、value network
V
ϕ
(
i
R
L
,
m
R
L
)
V_{\phi}(\mathbf{i}_{\mathrm{RL}},\mathbf{m}_{\mathrm{RL}})
Vϕ(iRL,mRL)。其中policy network将BEV图像
i
RL
\mathbf{i}_\text{RL}
iRL和度量值
m R L \mathbf{m}_{RL} mRL映射为动作的分布 a \mathbf a a。而value network将其映射为状态价值。 - 输入表征:如下图,输入为BEV语义分割图像
i
R
L
∈
[
0
,
1
]
W
×
H
×
C
\mathbf{i}_{\mathrm{RL}} \in [0,1]^{W\times H\times C}
iRL∈[0,1]W×H×C(使用CARLA中的真实环境信息渲染而成),和度量值
m
R
L
∈
R
6
\mathbf{m}_{\mathrm{RL}}\in\mathbb{R}^{6}
mRL∈R6,包含 steering, throttle, brake, gear, lateral and horizontal speed。
(a)表示可行驶区域;(b)表示期望路线;©表示车道线和道路边界;(d e)表示K张灰度图像组成的时间序列,其中自行车、行人和车辆被渲染为白色边界框;(f)表示交通信号灯和停止标识。
- 输出表征:输出动作的概率分布 B ( α , β ) \mathcal{B}(\alpha,\beta) B(α,β)(动作空间为 a ∈ [ − 1 , 1 ] 2 \textbf{a}\in[-1,1]^2 a∈[−1,1]2)。
- 训练:使用近端策略优化(PPO)结合裁剪来训练策略网络
π
θ
\pi_\theta
πθ和价值网络
V
ϕ
V_\phi
Vϕ。通过
π
θ
\pi_\theta
πθ在CARLA中收集训练数据:
τ
=
{
(
i
R
L
,
k
,
m
R
L
,
k
,
a
k
,
r
k
)
k
=
0
T
,
z
}
\tau=\{(\mathbf{i}_{\mathbf{RL},k},\mathbf{m}_{\mathbf{RL},k},\mathbf{a}_k,r_k)_{k=0}^T,z\}
τ={(iRL,k,mRL,k,ak,rk)k=0T,z}。其中
z
z
z是一幕数据的结束事件。
- 价值网络去近似一幕数据总的回报
- 策略网络则通过
θ
k
+
1
=
arg
max
θ
E
τ
∼
τ
θ
k
[
L
ppo
+
L
ent
+
L
exp
]
\theta_{k+1}=\arg\max\limits_{\theta}\operatorname*{E}_{\tau\sim\tau_{\theta_k}}\left[\mathcal{L}_{\text{ppo}}+\mathcal{L}_{\text{ent}}+\mathcal{L}_{\text{exp}}\right]
θk+1=argθmaxEτ∼τθk[Lppo+Lent+Lexp]更新。
- 其中 L p p o \mathcal{L}_\mathrm{ppo} Lppo是使用广义优势估计来估计具有优势的裁剪策略梯度损失。
- L e n t \mathcal{L}_\mathrm{ent} Lent是通常用于鼓励Agent探索的最大熵损失: L e n t = − λ e n t ⋅ H ( π θ ( ⋅ ∣ i R L , m R L ) ) \mathcal{L}_{\mathrm{ent}}=-\lambda_{\mathrm{ent}}\cdot\mathrm{H}\left(\pi_\theta(\cdot|\mathbf{i}_{\mathrm{RL}},\mathbf{m}_{\mathrm{RL}})\right) Lent=−λent⋅H(πθ(⋅∣iRL,mRL))。
-
L
exp
\mathcal L_\text{exp}
Lexp是
L
e
n
t
\mathcal{L}_{\mathrm{ent}}
Lent的广义形式,使Agent的探索更加合理:
L
e
x
p
=
λ
exp
⋅
1
{
T
−
N
z
+
1
,
.
.
.
,
T
}
(
k
)
⋅
K
L
(
π
θ
(
⋅
∣
i
R
L
,
k
,
m
R
L
,
k
)
∥
p
z
)
\begin{aligned} \mathcal{L}_{\mathrm{exp}}& =\lambda_{\exp}\cdot\mathbb{1}_{\{T-N_z+1,...,T\}}(k)\cdot\mathrm{KL}(\pi_\theta(\cdot|\mathbf{i}_{\mathrm{RL},k},\mathbf{m}_{\mathrm{RL},k})\parallel p_z)\end{aligned}
Lexp=λexp⋅1{T−Nz+1,...,T}(k)⋅KL(πθ(⋅∣iRL,k,mRL,k)∥pz)。
- 其中 1 \text{1} 1是指示函数, z z z是一幕数据结束的事件(包含碰撞、闯红灯/标志、路线偏离 和被阻塞)。其中 N z = 100 , ∀ z ∈ Z N_z=100,\forall z\in\mathcal{Z} Nz=100,∀z∈Z。
- 如果 z z z与碰撞或闯红灯/标志有关,便对加速施加 p z = B ( 1 , 2.5 ) p_z=\mathcal{B}(1,2.5) pz=B(1,2.5),以鼓励Roach 在转向不受影响的情况下减速。
- 相反,如果Agent意外停止,我们就使用 B ( 2.5 , 1 ) \mathcal{B}(2.5,1) B(2.5,1)。
2.2 IL Agents Supervised by Roach
- Action Distribution Loss。使用动作的概率分布损失,而非直接动作损失(Knowledge Distillation思想): L K = K L ( π ^ ∥ π ) \mathcal{L}_\mathrm{K}=\mathrm{KL}(\hat{\pi}\|\pi) LK=KL(π^∥π),即IL模型策略 π ^ \widehat{\pi} π 和RL expert模型策略 π \pi π 之间的KL散度。
- Feature Loss。特征匹配是在网络之间传递知识的有效方法。Roach的潜在特征 j RL \textbf{j}_{\text{RL}} jRL是一个紧凑的表示,它包含了驾驶的基本信息,且具有很强的鲁棒性: L F = λ F ⋅ ∥ j R L − j I L ∥ 2 \mathcal{L}_\mathrm{F}=\lambda_\mathrm{F}\cdot\|\mathbf{j}_\mathrm{RL}-\mathbf{j}_\mathrm{IL}\|^2 LF=λF⋅∥jRL−jIL∥2。
- Value Loss。增加一个模型的预测任务,即预测当前的状态价值。
L
V
=
λ
V
⋅
(
v
^
−
v
)
2
\mathcal{L}_\mathrm{V}=\lambda_\mathrm{V}\cdot(\hat{v}-v)^2
LV=λV⋅(v^−v)2。
hrm{V}\cdot(\hat{v}-v)^2$。