论文总结
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∣iRL,mRL)\pi_\theta(\mathbf{a}|\mathbf{i}_\mathbf{RL},\mathbf{m}_\mathbf{RL})πθ(a∣iRL,mRL)、value network Vϕ(iRL,mRL)V_{\phi}(\mathbf{i}_{\mathrm{RL}},\mathbf{m}_{\mathrm{RL}})Vϕ(iRL,mRL)。其中policy network将BEV图像 iRL\mathbf{i}_\text{RL}iRL和度量值
mRL\mathbf{m}_{RL}mRL映射为动作的分布 a\mathbf aa。而value network将其映射为状态价值。 - 输入表征:如下图,输入为BEV语义分割图像iRL∈[0,1]W×H×C\mathbf{i}_{\mathrm{RL}} \in [0,1]^{W\times H\times C}iRL∈[0,1]W×H×C(使用CARLA中的真实环境信息渲染而成),和度量值mRL∈R6\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]^2a∈[−1,1]2)。
- 训练:使用近端策略优化(PPO)结合裁剪来训练策略网络πθ\pi_\thetaπθ和价值网络VϕV_\phiVϕ。通过πθ\pi_\thetaπθ在CARLA中收集训练数据:τ={(iRL,k,mRL,k,ak,rk)k=0T,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}。其中zzz是一幕数据的结束事件。
- 价值网络去近似一幕数据总的回报
- 策略网络则通过θk+1=argmaxθEτ∼τθk[Lppo+Lent+Lexp]\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]更新。
- 其中Lppo\mathcal{L}_\mathrm{ppo}Lppo是使用广义优势估计来估计具有优势的裁剪策略梯度损失。
- Lent\mathcal{L}_\mathrm{ent}Lent是通常用于鼓励Agent探索的最大熵损失:Lent=−λent⋅H(πθ(⋅∣iRL,mRL))\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))。
- Lexp\mathcal L_\text{exp}Lexp是Lent\mathcal{L}_{\mathrm{ent}}Lent的广义形式,使Agent的探索更加合理:Lexp=λexp⋅1{T−Nz+1,...,T}(k)⋅KL(πθ(⋅∣iRL,k,mRL,k)∥pz)\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是指示函数,zzz是一幕数据结束的事件(包含碰撞、闯红灯/标志、路线偏离 和被阻塞)。其中Nz=100,∀z∈ZN_z=100,\forall z\in\mathcal{Z}Nz=100,∀z∈Z。
- 如果zzz与碰撞或闯红灯/标志有关,便对加速施加 pz=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思想):LK=KL(π^∥π)\mathcal{L}_\mathrm{K}=\mathrm{KL}(\hat{\pi}\|\pi)LK=KL(π^∥π),即IL模型策略 π^\widehat{\pi}π 和RL expert模型策略 π\piπ 之间的KL散度。
- Feature Loss。特征匹配是在网络之间传递知识的有效方法。Roach的潜在特征 jRL\textbf{j}_{\text{RL}}jRL是一个紧凑的表示,它包含了驾驶的基本信息,且具有很强的鲁棒性:LF=λF⋅∥jRL−jIL∥2\mathcal{L}_\mathrm{F}=\lambda_\mathrm{F}\cdot\|\mathbf{j}_\mathrm{RL}-\mathbf{j}_\mathrm{IL}\|^2LF=λF⋅∥jRL−jIL∥2。
- Value Loss。增加一个模型的预测任务,即预测当前的状态价值。LV=λV⋅(v^−v)2\mathcal{L}_\mathrm{V}=\lambda_\mathrm{V}\cdot(\hat{v}-v)^2LV=λV⋅(v^−v)2。
hrm{V}\cdot(\hat{v}-v)^2$。